@font-face{font-family:DarPlex;src:url('../fonts/ibm-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:DarPlex;src:url('../fonts/ibm-medium.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:DarPlex;src:url('../fonts/ibm-semibold.woff2') format('woff2');font-weight:600;font-display:swap}@font-face{font-family:DarAmiri;src:url('../fonts/amiri-regular.woff2') format('woff2');font-weight:400;font-display:swap}:root{--font-plex:DarPlex;--font-editorial:DarAmiri}


:root {
  --background: #fbf9f5;
  --foreground: #29372f;
  --card: #fff;
  --card-foreground: #29372f;
  --popover: #fff;
  --popover-foreground: #29372f;
  --primary: #263c30;
  --primary-foreground: #fffdf7;
  --secondary: #eae4d8;
  --secondary-foreground: #26372f;
  --muted: #efebe3;
  --muted-foreground: #72766e;
  --accent: #ecefe7;
  --accent-foreground: #26372f;
  --destructive: #a33f35;
  --border: #e3e3d9;
  --input: #d7d9ce;
  --ring: #8e794a;
  --radius: 0.35rem;
  --gold: #a48a53;
  --ivory: #f5f1e8;
  --green: #263c30;
  --ink: #29372f;
  --font-sans: var(--font-plex);
}

* {
  box-sizing: border-box;
  border-color: var(--border);
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 150px;
}
body {
  margin: 0;
  background: var(--background);
  color: var(--ink);
  font-family: var(--font-plex), Arial, sans-serif;
  font-size: 16px;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
}
h1,
h2,
h3,
h4,
p,
figure {
  margin: 0;
}
h1,
h2,
h3,
h4 {
  font-weight: 500;
}
h1,
h2 {
  line-height: 1.4;
}
a {
  text-decoration: none;
  color: inherit;
}
button,
input,
select,
textarea {
  font: inherit;
}
button,
a,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}
button:not(:disabled),
[role="button"]:not(:disabled),
select {
  cursor: pointer;
}
button:disabled {
  cursor: default;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid #a48a53;
  outline-offset: 5px;
}
img {
  max-width: 100%;
}
em {
  font-style: normal;
  color: #847044;
}
.container {
  width: min(1240px, calc(100% - 96px));
  margin-inline: auto;
}
.section {
  padding-block: 80px;
}
.eyebrow {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.2px;
  color: #727758;
  display: inline-flex;
  gap: 8px;
  align-items: center;
}
.little-star {
  font-size: 14px;
  color: var(--gold);
}
.muted {
  color: var(--muted-foreground);
}
.small-note {
  font-size: 12px;
  color: #767b72;
  line-height: 1.9;
}
.primary-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  background: var(--green);
  color: #fffdf6;
  padding: 14px 26px;
  min-height: 50px;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid var(--green);
  border-radius: 3px;
  transition:
    background 0.2s,
    transform 0.2s;
}
.primary-link:hover {
  background: #3e5544;
  transform: translateY(-2px);
}
.text-link,
.section-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
}
.text-link {
  padding-block: 12px;
}
.text-link:hover,
.section-link:hover {
  color: #8c7445;
}
.section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 32px;
}
.section-heading h2 {
  font-family: var(--font-editorial), serif;
  font-size: 38px;
  margin-top: 7px;
}
.section-link {
  padding-bottom: 8px;
  border-bottom: 1px solid #bcc3b5;
}
.skip-link {
  position: fixed;
  top: -100px;
  right: 20px;
  background: var(--green);
  color: white;
  padding: 14px;
  z-index: 100;
}
.skip-link:focus {
  top: 10px;
}
.announcement {
  background: var(--green);
  color: #edeee5;
  font-size: 11px;
  height: 31px;
}
.announcement .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  gap: 10px;
}
.announcement span,
.announcement a {
  display: flex;
  align-items: center;
  gap: 8px;
}
.announcement a {
  color: #ded3b2;
}
.site-header {
  position: sticky;
  top: 0;
  background: rgba(251, 249, 245, 0.97);
  backdrop-filter: blur(16px);
  z-index: 30;
  box-shadow: 0 3px 16px #26372f04;
}
.header-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100px;
  gap: 52px;
}
.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.brand-original {
  width: 46px;
  height: 58px;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.brand strong {
  font-family: var(--font-editorial), serif;
  display: block;
  font-weight: 400;
  font-size: 33px;
  line-height: 1.2;
}
.brand small {
  display: block;
  font-size: 9px;
  letter-spacing: 0.7px;
  color: #7c816e;
  margin-top: 4px;
}
.header-brand {
  display: flex;
  align-items: center;
}
.header-search {
  display: flex;
  align-items: center;
  gap: 13px;
  max-width: 490px;
  flex: 1;
  background: #f0eee7;
  border: 1px solid #e8e7df;
  border-radius: 4px;
  padding: 0 15px;
  color: #78816f;
  height: 44px;
}
.header-search input {
  box-shadow: none !important;
  border: 0;
  background: transparent;
  height: 100%;
  padding: 0;
  font-size: 12px;
  outline: none !important;
  --tw-ring-shadow: none !important;
}
.header-search button {
  width: 29px;
  height: 29px;
}
.header-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.header-actions button[data-size="icon"],
.icon-link {
  width: 38px;
  height: 40px;
}
.icon-link {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-radius: 3px;
}
.icon-link:hover {
  background: var(--accent);
}
.dot-count {
  position: absolute;
  top: 0;
  right: 0;
  background: #927e4f;
  color: white;
  min-width: 16px;
  height: 16px;
  line-height: 16px;
  text-align: center;
  border-radius: 50%;
  font-size: 10px;
}
.action-divider {
  width: 1px;
  height: 25px;
  background: #dfdfd3;
  margin-inline: 6px;
}
.bag-button {
  font-size: 12px;
  gap: 9px !important;
  padding: 0 !important;
  height: 42px !important;
}
.bag-count {
  background: var(--green);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  font-size: 11px;
}
.nav-row {
  border-top: 1px solid #e9e7df;
  border-bottom: 1px solid #e4e4d9;
}
.nav-row .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 49px;
}
.nav-row nav {
  display: flex;
  gap: 30px;
  height: 100%;
  align-items: center;
  font-size: 12px;
}
.nav-row nav a {
  height: 100%;
  position: relative;
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.nav-row nav a:hover {
  color: var(--gold);
}
.nav-row nav .active:after {
  content: "";
  position: absolute;
  bottom: -1px;
  width: 100%;
  height: 2px;
  background: var(--green);
}
.nav-caption {
  font-size: 10px;
  color: #7b7f70;
  display: flex;
  align-items: center;
  gap: 12px;
}
.nav-caption span {
  color: var(--gold);
  font-size: 15px;
}
.mobile-menu {
  display: none !important;
}

.hero {
  background: #f1eee4;
  overflow: hidden;
  position: relative;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  min-height: 570px;
  gap: 20px;
}
.hero-copy {
  padding-block: 58px 50px;
  position: relative;
  z-index: 2;
}
.hero-kicker {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 11px;
  color: #6f765a;
  letter-spacing: 0.2px;
}
.hero-kicker > span {
  width: 22px;
  height: 1px;
  background: #9f905e;
}
.hero h1 {
  font-family: var(--font-editorial), serif;
  font-size: 65px;
  line-height: 1.3;
  letter-spacing: -1.2px;
  margin: 25px 0 19px;
}
.hero h1 em {
  color: #8e7c4e;
}
.hero-copy > p {
  font-size: 14px;
  color: #777c6e;
  line-height: 2.15;
}
.hero-ctas {
  display: flex;
  align-items: center;
  gap: 28px;
  margin-top: 28px;
}
.hero-secondary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
}
.hero-secondary:hover {
  color: var(--gold);
}
.hero-footnote {
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 10px;
  color: #858a7b;
  margin-top: 37px;
}
.mini-book {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d2d5c7;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  color: #6f795e;
}
.hero-scene {
  height: 570px;
  position: relative;
  direction: ltr;
}
.hero-arch {
  position: absolute;
  width: 400px;
  height: 515px;
  border: 1px solid #d7d7c3;
  border-radius: 220px 220px 0 0;
  bottom: 0;
  left: 60px;
  background: linear-gradient(180deg, #e6e4d3, #eae7da 70%);
  box-shadow:
    inset 0 0 0 15px #f1eee4,
    inset 0 0 0 16px #d4d6c3;
}
.hero-rosette {
  position: absolute;
  width: 180px;
  height: 180px;
  left: -70px;
  top: 60px;
  color: #a9ad8b;
  opacity: 0.32;
}
.scene-caption {
  position: absolute;
  top: 42px;
  left: 60px;
  color: #8c947b;
  letter-spacing: 1px;
  font-size: 9px;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.book-stage {
  position: absolute;
  top: 100px;
  left: 10px;
  right: -20px;
  height: 370px;
}
.scene-book {
  position: absolute;
  overflow: hidden;
  background: #e9e2d5;
  border-radius: 2px 5px 5px 2px;
  box-shadow:
    5px 10px 12px #44402c2b,
    12px 24px 28px #44402c24;
  transform-origin: bottom center;
}
.scene-book img {
  object-fit: cover;
}
.book-front {
  width: 225px;
  height: 312px;
  left: 145px;
  top: 24px;
  z-index: 3;
  box-shadow:
    3px 3px 0 #77704b,
    6px 3px 0 #e0dcca,
    8px 3px 0 #a1a08a,
    10px 20px 28px #4b493943;
}
.book-front img {
  width: 170% !important;
  max-width: none;
  height: 125% !important;
  inset: auto !important;
  top: -9% !important;
  left: -37% !important;
  object-fit: fill;
}
.book-spine {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #0002, transparent 4%, #fff2 5%, transparent 8%);
}
.back-one {
  width: 185px;
  height: 270px;
  left: 10px;
  top: 59px;
  transform: rotate(-16deg);
  z-index: 1;
}
.back-two {
  width: 182px;
  height: 268px;
  left: 335px;
  top: 67px;
  transform: rotate(14deg);
  z-index: 2;
}
.book-behind img {
  width: 175% !important;
  max-width: none;
  height: 128% !important;
  inset: auto !important;
  top: -10% !important;
  left: -38% !important;
  object-fit: fill;
}
.scene-orbit {
  position: absolute;
  width: 475px;
  height: 110px;
  border: 1px solid #b1b69a;
  border-radius: 50%;
  left: 20px;
  bottom: 8px;
  transform: rotate(-9deg);
  opacity: 0.5;
}
.scene-spark {
  position: absolute;
  color: #9a8753;
  z-index: 5;
}
.spark-one {
  right: -5px;
  top: 15px;
  font-size: 35px;
}
.spark-two {
  left: 90px;
  top: -5px;
  font-size: 31px;
}
.scene-stamp {
  position: absolute;
  bottom: 10px;
  right: 12px;
  width: 86px;
  height: 86px;
  border-radius: 50%;
  background: #263c30;
  color: #e1d5b3;
  z-index: 4;
  border: 5px solid #f1eee4;
  outline: 1px solid #788165;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transform: rotate(10deg);
}
.scene-stamp span {
  font-family: var(--font-editorial), serif;
  font-size: 23px;
  line-height: 1.3;
  direction: rtl;
}
.scene-stamp svg {
  width: 17px;
}
.hero-slider {
  position: absolute;
  bottom: 31px;
  left: 65px;
  right: 5px;
  direction: rtl;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #cbd0bd;
  padding-top: 15px;
  gap: 14px;
}
.hero-slider .eyebrow {
  font-size: 9px;
}
.hero-slider a {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 13px;
  margin-top: 4px;
}
.slider-controls {
  display: flex;
  align-items: center;
  direction: rtl;
}
.slider-controls > span {
  font-size: 11px;
  white-space: nowrap;
  color: #58634f;
}
.slider-controls i {
  font-style: normal;
  color: #aaa68c;
  margin-inline: 8px;
}
.slider-controls button {
  border: 1px solid #cbd0bd;
  border-radius: 50%;
  width: 29px !important;
  height: 29px !important;
  margin-inline: 10px;
}
.hero-bottom-line {
  border-top: 1px solid #dbdece;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 64px;
  font-size: 10px;
  color: #727b64;
  position: relative;
  background: #efeee3;
}
.hero-bottom-line i {
  font-style: normal;
  color: #a69769;
  font-size: 13px;
}
.categories-section {
  padding-bottom: 40px;
}
.category-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.category-card {
  height: 210px;
  position: relative;
  overflow: hidden;
  border-radius: 3px;
  padding: 23px 23px 20px;
  transition: transform 0.35s;
}
.category-card:hover {
  transform: translateY(-5px);
}
.category-number {
  position: absolute;
  top: 20px;
  right: 23px;
  color: #92977c;
  font-size: 11px;
}
.category-copy {
  position: absolute;
  bottom: 22px;
  right: 23px;
  z-index: 2;
}
.category-copy h3 {
  font-size: 17px;
}
.category-copy p {
  color: #777f6e;
  font-size: 10px;
  margin-top: 4px;
}
.category-arrow {
  position: absolute;
  bottom: 26px;
  left: 18px;
  width: 29px;
  height: 29px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #bfc6b5;
  border-radius: 50%;
  transition: background 0.2s;
}
.category-card:hover .category-arrow {
  background: #ffffff70;
}
.category-illustration {
  position: absolute;
  left: 25px;
  right: 65px;
  top: 12px;
  height: 118px;
  opacity: 0.65;
  color: #798064;
}
.category-illustration svg {
  position: absolute;
  width: 115px;
  height: 115px;
  left: 0;
  top: -10px;
}
.category-0 .category-illustration svg {
  width: 145px;
  height: 145px;
  left: -10px;
  top: -31px;
}
.thought-circle {
  width: 65px;
  height: 65px;
  background: #b9a27e;
  border-radius: 50%;
  position: absolute;
  right: 20px;
  top: 10px;
  opacity: 0.6;
}
.thought-arch {
  width: 80px;
  height: 100px;
  border: 1px solid #897556;
  border-radius: 70px 70px 0 0;
  position: absolute;
  left: 0;
  top: 10px;
  transform: rotate(-14deg);
}
.thought-arch:after {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px solid #897556;
  border-radius: 70px 70px 0 0;
}
.heritage-arch {
  width: 84px;
  height: 115px;
  border: 1px solid #7d8272;
  border-radius: 60px 60px 0 0;
  position: absolute;
  left: 3px;
  top: -5px;
  background: repeating-linear-gradient(
    0deg,
    transparent,
    transparent 14px,
    #a6aa9822 14px,
    #a6aa9822 15px
  );
}
.heritage-arch:after {
  content: "";
  position: absolute;
  inset: 14px 15px 0;
  border: 1px solid #7d8272;
  border-radius: 50px 50px 0 0;
}
.heritage-lines {
  position: absolute;
  width: 135px;
  height: 1px;
  background: #89917b;
  bottom: 8px;
  left: -15px;
  box-shadow: 0 7px #89917b44;
}
.learning-book {
  position: absolute;
  width: 74px;
  height: 93px;
  left: 36px;
  top: 6px;
  border: 1px solid #aa7967;
  transform: rotate(16deg);
  background: #c6a28b44;
  box-shadow:
    -5px 4px 0 #ece0d7,
    -6px 4px 0 #aa7967;
}
.learning-book:after {
  content: "";
  position: absolute;
  width: 40px;
  height: 30px;
  border-top: 1px solid #aa7967;
  border-bottom: 1px solid #aa7967;
  left: 15px;
  top: 32px;
}
.category-3 svg {
  left: -8px;
  top: 42px;
  width: 74px;
  height: 74px;
  color: #8e775a;
  transform: rotate(-25deg);
}
.taxonomy-note {
  font-size: 10px;
  color: #8a8d80;
  margin-top: 12px;
}
.featured-section {
  padding-top: 38px;
}
.book-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
}
.book-card {
  min-width: 0;
}
.book-art {
  aspect-ratio: 1/0.99;
  position: relative;
  background: color-mix(in srgb, var(--book-tint) 8%, #f3f0e9);
  border-radius: 3px;
  overflow: hidden;
}
.book-art-link {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.book-art-link > img {
  transition: transform 0.5s;
  object-fit: contain;
  padding: 19px 26px 9px;
  mix-blend-mode: multiply;
}
.book-card:hover .book-art-link > img {
  transform: scale(1.04) translateY(-3px);
}
.book-art-link > img.illustrated-cover {
  padding: 26px 45px 14px;
  filter: drop-shadow(-8px 9px 5px #26372f22);
  mix-blend-mode: normal;
}
.book-badge {
  position: absolute;
  top: 13px;
  right: 12px;
  font-size: 8px;
  color: #52634c;
  background: #fdfcf3e8;
  padding: 3px 7px;
  border-radius: 2px;
  pointer-events: none;
}
.book-badge.sample {
  color: #866d44;
}
.wish-button {
  position: absolute !important;
  top: 10px;
  left: 9px;
  background: #fffaf0bd;
  width: 29px !important;
  height: 29px !important;
  border-radius: 50% !important;
  color: #7f876e;
}
.saved {
  color: #a34e40 !important;
}
.art-open {
  position: absolute;
  bottom: 14px;
  left: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  background: #fffef5e8;
  border-radius: 50%;
  opacity: 0;
  transform: translateY(5px);
  transition:
    opacity 0.2s,
    transform 0.2s;
}
.book-card:hover .art-open {
  opacity: 1;
  transform: translateY(0);
}
.book-info {
  padding: 17px 0 0;
}
.book-category {
  font-size: 9px;
  color: #8d917e;
}
.book-info h3 {
  font-size: 17px;
  line-height: 1.6;
  margin-top: 4px;
}
.book-info h3 a:hover {
  color: #8c7442;
}
.book-author {
  font-size: 11px;
  color: #868a7b;
  margin-top: 4px;
  min-height: 22px;
}
.book-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 12px;
}
.book-prices {
  display: flex;
  align-items: center;
  gap: 11px;
  flex-wrap: wrap;
}
.book-prices strong {
  font-size: 14px;
  font-weight: 600;
}
.book-prices del {
  font-size: 10px;
  color: #a0a092;
}
.quick-add {
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  border-color: #c5cbbd !important;
  background: transparent !important;
}
.quick-add:hover {
  background: var(--green) !important;
  color: white !important;
}
.source-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 10px;
  color: #89917f;
  border-top: 1px solid #e4e6da;
  margin-top: 31px;
  padding-top: 16px;
}
.source-note > span {
  width: 5px;
  height: 5px;
  background: #8b977d;
  border-radius: 50%;
}
.editorial-band {
  background: #e9ecdf;
  border-top: 1px solid #dce1d1;
  border-bottom: 1px solid #dce1d1;
}
.editorial-inner {
  position: relative;
  display: flex;
  align-items: center;
  gap: 27px;
  min-height: 210px;
}
.editorial-index {
  font-size: 9px;
  color: #8c947c;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  margin-left: 20px;
}
.editorial-inner > svg {
  color: #8e9b7e;
  align-self: flex-start;
  margin-top: 42px;
}
.editorial-inner > p {
  font-family: var(--font-editorial);
  font-size: 29px;
  line-height: 1.7;
  z-index: 2;
}
.editorial-inner em {
  color: #6d795a;
}
.editorial-word {
  font-family: var(--font-editorial);
  font-size: 180px;
  line-height: 1;
  position: absolute;
  left: 195px;
  top: 12px;
  color: #d5dcc8;
  user-select: none;
}
.editorial-inner > a {
  margin-right: auto;
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 12px;
  z-index: 2;
}
.demo-inline {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  color: #94835d;
  font-size: 11px;
  border-bottom: 1px solid #e8e3d5;
  padding-bottom: 17px;
  margin-bottom: 25px;
}
.demo-inline svg {
  flex-shrink: 0;
  margin-top: 4px;
}
.new-books .book-art {
  aspect-ratio: 1/1.06;
}
.new-books .book-art img {
  padding: 28px 52px 18px;
}
.bestseller-section {
  background: #eef0e8;
  padding-block: 62px;
  border-block: 1px solid #e3e7dc;
}
.bestseller-inner {
  display: grid;
  grid-template-columns: 230px 1fr;
  gap: 65px;
}
.bestseller-copy h2 {
  font-family: var(--font-editorial);
  font-size: 48px;
  line-height: 1.3;
  margin-top: 12px;
}
.bestseller-copy h2 em {
  color: #8f7e53;
}
.bestseller-copy > p {
  font-size: 12px;
  color: #79816e;
  margin-top: 13px;
}
.bestseller-copy .ranking-note {
  font-size: 9px;
  max-width: 200px;
  color: #858b7c;
}
.bestseller-copy .text-link {
  margin-top: 12px;
  border-bottom: 1px solid #b9c4ae;
  font-size: 12px;
}
.ranked-books {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  align-items: center;
}
.ranked-book {
  position: relative;
  min-width: 0;
}
.rank {
  position: absolute;
  top: -4px;
  right: -10px;
  color: #c1cbb3;
  font-family: Georgia, serif;
  font-size: 65px;
  line-height: 1;
  font-style: italic;
}
.rank-cover {
  height: 198px;
  position: relative;
  margin: 0 12px 20px 0;
  z-index: 2;
}
.rank-cover img {
  object-fit: contain;
  mix-blend-mode: multiply;
  transition: transform 0.3s;
}
.ranked-book:hover img {
  transform: translateY(-5px);
}
.ranked-book .eyebrow {
  font-size: 9px;
}
.ranked-book h3 {
  font-size: 15px;
  margin-top: 5px;
}
.ranked-book > svg {
  position: absolute;
  left: 0;
  bottom: 4px;
  color: #899576;
}
.discovery-section {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 90px;
  align-items: center;
}
.discovery-copy h2 {
  font-family: var(--font-editorial);
  font-size: 48px;
  line-height: 1.25;
  margin: 14px 0;
}
.discovery-copy h2 br {
  display: none;
}
.discovery-copy > p {
  font-size: 13px;
  color: #858a7c;
}
.interest-buttons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 25px;
}
.interest-buttons button {
  border-radius: 40px;
  font-size: 11px;
  min-height: 35px;
  padding-inline: 16px;
}
.discovery-result {
  background: #f0ede4;
  border: 1px solid #e6e1d6;
  padding: 30px;
  position: relative;
  min-height: 230px;
  border-radius: 3px;
}
.discovery-icon {
  position: absolute;
  top: 25px;
  left: 26px;
  color: #9b8d68;
}
.recommendation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 14px;
}
.recommendation h3 {
  font-family: var(--font-editorial);
  font-size: 29px;
  line-height: 1.4;
}
.recommendation p {
  font-size: 11px;
  color: #808673;
  margin-top: 8px;
}
.recommendation a {
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
}
.recommend-cover {
  width: 145px;
  height: 150px;
  position: relative;
  flex-shrink: 0;
}
.recommend-cover img {
  object-fit: contain;
  mix-blend-mode: multiply;
}
.about-preview {
  background: #f1eee4;
  overflow: hidden;
}
.about-preview-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 120px;
  align-items: center;
  padding-block: 55px;
}
.about-art {
  height: 320px;
  background: #263c30;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border-radius: 180px 180px 3px 3px;
}
.about-art > svg {
  width: 400px;
  height: 400px;
  position: absolute;
  color: #a39d7059;
  top: -17px;
  right: 0;
}
.about-art > span {
  position: relative;
  color: #e3d8b9;
  font-family: var(--font-editorial);
  font-size: 135px;
  line-height: 1.2;
}
.about-art > small {
  font-size: 10px;
  color: #c5cbb7;
  position: relative;
  margin-top: 18px;
}
.about-preview-copy h2 {
  font-family: var(--font-editorial);
  font-size: 42px;
  margin-top: 15px;
}
.about-preview-copy p {
  font-size: 13px;
  color: #808575;
  max-width: 370px;
  margin: 20px 0 27px;
  line-height: 2.2;
}
.review-section {
  display: grid;
  grid-template-columns: 0.8fr 1.4fr;
  gap: 95px;
  align-items: center;
}
.review-section h2 {
  font-family: var(--font-editorial);
  font-size: 39px;
  line-height: 1.4;
  margin-top: 10px;
}
.review-section > div > p {
  font-size: 11px;
  color: #878d7d;
  margin-top: 15px;
}
.review-card {
  border: 1px solid #e1e3d7;
  background: #f7f6ef;
  padding: 35px 37px 20px;
  position: relative;
}
.review-quote {
  color: #a8b097;
}
.review-card blockquote {
  font-family: var(--font-editorial);
  font-size: 24px;
  line-height: 1.8;
  margin: 12px 0 27px;
}
.review-card figcaption {
  display: flex;
  align-items: center;
  gap: 12px;
  border-top: 1px solid #e0e4d7;
  padding-top: 20px;
}
.review-avatar {
  width: 37px;
  height: 37px;
  background: #e2e6d6;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #69735c;
}
.review-card figcaption strong {
  font-size: 12px;
  display: block;
  font-weight: 500;
}
.review-card figcaption small {
  font-size: 9px;
  color: #89917e;
  display: block;
}
.review-stars {
  font-size: 12px;
  color: #9b8553;
  letter-spacing: 2px;
  margin-right: auto;
  white-space: nowrap;
}
.review-source {
  font-size: 9px;
  color: #969c8b;
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: flex-end;
  margin-top: 16px;
}
.service-strip {
  background: #f1f2ea;
  border-block: 1px solid #e1e5d7;
  padding-block: 29px;
}
.service-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.service-grid > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  border-left: 1px solid #d8dfca;
}
.service-grid > div:last-child {
  border-left: 0;
}
.service-grid svg {
  color: #7b8767;
  flex-shrink: 0;
}
.service-grid h3 {
  font-size: 14px;
}
.service-grid p {
  font-size: 10px;
  color: #838c77;
  margin-top: 3px;
}
.service-grid a:hover {
  text-decoration: underline;
}
.site-footer {
  background: var(--green);
  color: #eeeee4;
  padding-top: 55px;
}
.footer-top {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 1.2fr;
  gap: 60px;
  padding-bottom: 49px;
}
.brand-light .brand-original {
  background: #f6f1e8;
  border-radius: 3px;
  mix-blend-mode: normal;
  padding: 4px;
  width: 42px;
  height: 53px;
}
.brand-light small {
  color: #c0c8b2;
}
.footer-intro > p {
  color: #b9c4af;
  font-size: 11px;
  line-height: 2.2;
  margin-top: 20px;
}
.footer-more {
  font-size: 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  color: #d4c59c;
}
.footer-top > div > h3 {
  font-size: 12px;
  font-weight: 500;
  margin-block: 14px 20px;
}
.footer-top > div:not(.footer-intro):not(.footer-letter) > a {
  display: block;
  font-size: 10px;
  color: #b9c5af;
  margin-top: 10px;
}
.footer-top a:hover {
  color: #fff;
}
.footer-letter {
  border-right: 1px solid #5a6a514d;
  padding-right: 30px;
}
.footer-letter > .eyebrow {
  font-size: 9px;
  color: #a6b599;
}
.footer-letter h3 {
  font-family: var(--font-editorial);
  font-size: 29px !important;
  line-height: 1.6;
  margin-block: 12px !important;
}
.footer-letter > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 10px;
  color: #d4c59c;
  padding-block: 9px;
  border-bottom: 1px solid #66735255;
}
.footer-bottom {
  border-top: 1px solid #5b6c514d;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  font-size: 9px;
  color: #9eae93;
  padding-block: 19px;
}
.footer-bottom > a {
  display: flex;
  align-items: center;
  gap: 7px;
}
.toast-region {
  position: fixed;
  z-index: 100;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%);
  pointer-events: none;
}
.toast {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 13px 20px;
  background: #263c30;
  color: #fff8e8;
  box-shadow: 0 7px 35px #192b2929;
  border: 1px solid #6a7c5d;
  border-radius: 6px;
  white-space: nowrap;
  font-size: 13px;
}
.toast > span {
  width: 25px;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ffffff20;
}
.toast > svg {
  color: #c5cba9;
  margin-right: 20px;
}
.store-sheet {
  direction: rtl;
  background: var(--background) !important;
  width: min(450px, 94vw) !important;
  max-width: none !important;
  right: 0;
  left: auto;
  padding: 25px;
  gap: 15px !important;
  overflow-y: auto;
}
.cart-sheet {
  left: 0;
  right: auto;
  width: min(520px, 96vw) !important;
}
.store-sheet [data-slot="sheet-header"] {
  padding: 7px 0 22px;
  border-bottom: 1px solid #dfe3d5;
  flex-shrink: 0;
  text-align: right;
}
.store-sheet [data-slot="sheet-title"] {
  font-family: var(--font-editorial);
  font-size: 28px;
}
.store-sheet [data-slot="sheet-description"] {
  font-size: 12px;
}
.store-sheet > button {
  right: auto !important;
  left: 22px !important;
  inset-inline-end: auto;
  top: 22px;
  min-width: 35px;
  min-height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.store-sheet [data-slot="sheet-content"] {
  max-height: 100dvh;
}
.mobile-nav {
  display: flex;
  flex-direction: column;
  padding-top: 10px;
}
.mobile-nav > a {
  font-size: 17px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 0;
  border-bottom: 1px solid #e6e9dd;
}
.account-dialog {
  background: var(--background);
  direction: rtl;
  padding: 35px !important;
  text-align: right !important;
}
.account-dialog [data-slot="dialog-header"] {
  text-align: right !important;
  align-items: flex-start;
}
.account-dialog [data-slot="dialog-title"] {
  font-family: var(--font-editorial);
  font-size: 29px;
  margin-block: 15px 5px;
}
.account-dialog [data-slot="dialog-description"] {
  font-size: 14px;
  line-height: 2;
}
.account-dialog .primary-link {
  margin-top: 15px;
}
.account-dialog > button {
  left: 15px;
  right: auto;
  min-width: 35px;
  min-height: 35px;
}
.empty-icon {
  background: #e8ecdf;
  color: #7d8a6a;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  min-height: 350px;
  padding: 45px 20px;
  gap: 18px;
}
.empty-state h2,
.empty-state h1 {
  font-family: var(--font-editorial);
  font-size: 30px;
}
.empty-state p {
  font-size: 13px;
  color: #858d78;
  max-width: 440px;
}
.empty-state .primary-link {
  margin-top: 10px;
}
.page-space {
  padding-block: 80px;
}
.breadcrumbs {
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 11px;
  color: #939a87;
  padding-block: 28px;
}
.breadcrumbs a:hover {
  color: var(--green);
}
.breadcrumbs > span:last-child {
  color: #67735d;
}
.page-intro {
  padding-block: 15px 30px;
}
.page-intro h1 {
  font-family: var(--font-editorial);
  font-size: 46px;
  margin: 8px 0 7px;
}
.page-intro > p {
  font-size: 13px;
  color: #88917c;
}
.catalog-notice {
  background: #eeeee4;
  border: 1px solid #e1e4d5;
  font-size: 11px;
  line-height: 2;
  color: #7d856e;
  padding: 12px 18px;
  border-radius: 3px;
  margin-block: 0 28px;
}
.catalog-page {
  padding-bottom: 80px;
}
.catalog-layout {
  display: grid;
  grid-template-columns: 225px 1fr;
  gap: 43px;
  align-items: start;
}
.catalog-sidebar {
  position: sticky;
  top: 180px;
}
.filter-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-block: 5px 15px;
  border-bottom: 1px solid #e2e5d8;
}
.filter-heading h2 {
  font-size: 15px;
}
.filter-heading button {
  font-size: 10px;
  color: #8c7950;
}
.filter-fields fieldset {
  border: 0;
  border-bottom: 1px solid #e2e5d8;
  margin: 0;
  padding: 21px 0;
}
.filter-fields legend {
  float: right;
  width: 100%;
  font-size: 12px;
  font-weight: 500;
  margin-bottom: 12px;
}
.filter-fields fieldset:after {
  content: "";
  display: table;
  clear: both;
}
.filter-check {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 37px;
  font-size: 11px;
  cursor: pointer;
  color: #6f7a62;
}
.filter-check input {
  width: 14px;
  height: 14px;
  accent-color: var(--green);
  flex-shrink: 0;
}
.filter-check > span {
  margin-right: auto;
  color: #9ba38c;
  font-size: 10px;
}
.range-label {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: #929780;
}
.range-label strong {
  font-weight: 500;
  color: #647156;
}
.filter-fields input[type="range"] {
  width: 100%;
  accent-color: var(--green);
  height: 25px;
  cursor: pointer;
  direction: ltr;
}
.range-values {
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  color: #979c8b;
}
.native-select {
  border: 1px solid #dce1d0;
  background: transparent;
  padding: 9px 12px;
  min-height: 42px;
  border-radius: 3px;
  color: #5b6953;
  font-size: 11px;
  width: 100%;
  max-width: 100%;
  outline-offset: 3px;
}
.filter-fields .small-note {
  font-size: 10px;
  margin-top: 7px;
}
.catalog-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
}
.catalog-search {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1;
  min-width: 0;
  border: 1px solid #dfe3d5;
  border-radius: 3px;
  padding-inline: 12px;
  color: #8d987d;
  height: 43px;
}
.catalog-search input {
  border: 0;
  box-shadow: none !important;
  --tw-ring-shadow: none !important;
  padding: 0;
  font-size: 11px;
}
.catalog-search svg {
  flex-shrink: 0;
}
.catalog-search > button {
  width: 27px;
  height: 27px;
  flex-shrink: 0;
}
.sort-select {
  width: 210px;
}
.filter-mobile {
  display: none !important;
}
.results-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-block: 17px 20px;
}
.results-heading > p {
  font-size: 11px;
  color: #8a947c;
}
.view-buttons {
  display: flex;
  gap: 3px;
}
.view-buttons button {
  width: 29px;
  height: 29px;
  border-radius: 3px;
  color: #93a082;
}
.view-buttons button[aria-pressed="true"] {
  background: #e9eee0;
  color: #465c3b;
}
.catalog-book-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px 22px;
}
.catalog-book-grid .book-art {
  aspect-ratio: 1/1.1;
}
.catalog-book-grid .book-info h3 {
  font-size: 16px;
}
.catalog-book-grid .book-author {
  font-size: 10px;
}
.catalog-book-grid .book-art img {
  padding: 28px 15px 12px;
}
.catalog-book-grid .book-art img.illustrated-cover {
  padding: 28px 35px 14px;
}
.active-filters {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 10px;
  background: #f0f1e7;
  padding: 2px 12px;
  margin-bottom: 20px;
  border-radius: 3px;
  color: #7b866c;
}
.active-filters button {
  font-size: 10px;
  margin-right: auto;
}
.list-view {
  grid-template-columns: 1fr;
}
.book-list {
  display: flex;
  align-items: stretch;
  gap: 25px;
  border-bottom: 1px solid #e1e5d8;
  padding-bottom: 20px;
}
.book-list .book-art {
  width: 150px;
  height: 175px;
  aspect-ratio: auto;
  flex-shrink: 0;
}
.book-list .book-art img {
  padding: 23px 10px 8px;
}
.book-list .book-badge {
  font-size: 7px;
  right: 5px;
  padding-inline: 4px;
  top: 5px;
}
.book-list .wish-button {
  left: 3px;
  top: 25px;
}
.book-list .book-info {
  flex: 1;
  padding-top: 10px;
}
.book-list .book-info h3 {
  font-size: 20px;
}
.book-list .book-bottom {
  margin-top: 22px;
}
.empty-reset {
  display: block;
  margin: 0 auto 30px;
}
.filter-sheet-actions {
  display: flex;
  gap: 12px;
  position: sticky;
  bottom: -25px;
  background: var(--background);
  padding-block: 20px;
}
.filter-sheet-actions > button:first-child {
  flex: 1;
}
.cart-page {
  min-height: 580px;
  padding-bottom: 70px;
}
.cart-layout {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 55px;
  align-items: start;
}
.cart-line {
  display: flex;
  align-items: stretch;
  gap: 20px;
  border-bottom: 1px solid #dfe4d5;
  padding-block: 20px;
  min-width: 0;
}
.cart-cover {
  width: 100px;
  height: 125px;
  position: relative;
  flex-shrink: 0;
  background: #efeee5;
  border-radius: 2px;
}
.cart-cover img {
  object-fit: contain;
  padding: 8px;
  mix-blend-mode: multiply;
}
.cart-line-info {
  flex: 1;
  min-width: 0;
}
.cart-line-info .eyebrow {
  font-size: 9px;
}
.cart-line-info h3 {
  font-size: 17px;
  margin: 4px 0 7px;
}
.cart-line-info > span {
  font-size: 12px;
  color: #8a957c;
}
.quantity-control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d3dbc8;
  gap: 4px;
  border-radius: 3px;
  height: 37px;
  flex-shrink: 0;
  vertical-align: middle;
}
.quantity-control button {
  width: 32px !important;
  height: 32px !important;
  border-radius: 0;
  color: #687a59;
}
.quantity-control output {
  min-width: 27px;
  text-align: center;
  font-size: 12px;
}
.cart-line .quantity-control {
  display: flex;
  width: max-content;
  margin-top: 12px;
  height: 31px;
}
.cart-line .quantity-control button {
  width: 27px !important;
  height: 27px !important;
}
.cart-line-end {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  min-width: 75px;
}
.cart-line-end > button {
  color: #909d81;
  width: 30px;
  height: 30px;
}
.cart-line-end strong {
  font-size: 12px;
  font-weight: 500;
}
.order-summary {
  background: #f0f0e6;
  padding: 28px;
  border: 1px solid #dde3d1;
  border-radius: 3px;
  position: sticky;
  top: 180px;
}
.order-summary h2 {
  font-family: var(--font-editorial);
  font-size: 27px;
  margin-bottom: 22px;
}
.order-summary > div:not(.checkout-line) {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  gap: 10px;
  padding-block: 8px;
}
.order-summary strong {
  font-weight: 500;
}
.order-summary .summary-total {
  border-top: 1px solid #d2dcca;
  margin-top: 18px;
  padding-top: 18px !important;
  font-size: 14px !important;
}
.order-summary > .small-note {
  margin-top: 17px;
  font-size: 10px;
}
.order-summary .primary-link {
  width: 100%;
  margin-top: 20px;
  font-size: 12px;
  gap: 15px;
}
.order-summary > .text-link {
  font-size: 11px;
  display: flex;
  justify-content: center;
  margin-top: 8px;
}
.drawer-cart-layout {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.drawer-cart-layout .cart-lines {
  width: 100%;
}
.drawer-cart-layout .order-summary {
  width: 100%;
  position: static;
  padding: 22px;
}
.drawer-cart-layout .cart-line {
  gap: 12px;
}
.drawer-cart-layout .cart-cover {
  width: 73px;
  height: 100px;
}
.drawer-cart-layout .cart-line h3 {
  font-size: 15px;
}
.drawer-cart-layout .cart-line-end {
  min-width: 64px;
}
.wishlist-page {
  min-height: 600px;
  padding-bottom: 70px;
}
.wishlist-page > .text-link {
  margin-top: 40px;
}
.product-page {
  padding-bottom: 10px;
}
.product-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  padding-top: 15px;
}
.product-cover-main {
  height: 495px;
  position: relative;
  background: #f0eee5;
  border-radius: 3px;
  overflow: hidden;
}
.product-cover-main > img {
  object-fit: contain;
  padding: 30px 35px 40px;
  mix-blend-mode: multiply;
}
.gallery-controls {
  position: absolute;
  bottom: 15px;
  right: 20px;
  left: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  font-size: 11px;
  color: #879479;
}
.gallery-controls > button {
  width: 29px;
  height: 29px;
  border-radius: 50%;
  background: #fcfcf4a0;
}
.gallery-thumbs {
  display: flex;
  gap: 10px;
  margin-top: 15px;
  justify-content: center;
}
.gallery-thumbs button {
  background: #f1f0e8;
  border: 1px solid transparent;
  padding: 3px;
  width: 69px;
  height: 69px;
}
.gallery-thumbs button.selected {
  border-color: #a4b090;
}
.gallery-thumbs img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
}
.product-info {
  position: relative;
  padding-top: 7px;
}
.detail-source {
  display: block;
  color: #8f997c;
  font-size: 10px;
  margin-top: 15px;
}
.detail-source.sample {
  color: #a08756;
}
.product-info h1 {
  font-family: var(--font-editorial);
  font-size: 44px;
  margin-block: 9px 10px;
}
.product-subtitle {
  font-size: 14px;
  color: #78866b;
}
.detail-author {
  font-size: 12px;
  color: #919a83;
  margin-top: 9px;
}
.detail-prices {
  display: flex;
  align-items: center;
  gap: 17px;
  margin-top: 20px;
}
.detail-prices strong {
  font-size: 27px;
  font-weight: 500;
}
.detail-prices del {
  font-size: 14px;
  color: #a3ac95;
}
.demo-stock {
  font-size: 10px;
  color: #7a8e64;
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: 8px;
}
.product-description {
  font-size: 12px;
  color: #849176;
  line-height: 2.1;
  margin-top: 22px;
}
.product-purchase {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 25px;
  flex-wrap: wrap;
}
.product-purchase > .quantity-control {
  height: 46px;
  gap: 1px;
}
.product-purchase .quantity-control button {
  width: 24px !important;
}
.product-add {
  flex: 1;
  height: 47px !important;
  font-size: 12px !important;
  gap: 12px !important;
}
.product-add span {
  border-right: 1px solid #8f9e7d55;
  padding-right: 12px;
  font-size: 11px;
}
.product-purchase > button[data-size="icon"] {
  width: 45px;
  height: 47px;
  background: transparent;
}
.product-info > .small-note {
  font-size: 9px;
  margin-top: 13px;
  color: #929b85;
}
.product-meta {
  margin-top: 25px;
  border-top: 1px solid #e0e5d6;
  padding-top: 12px;
}
.product-meta > div {
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 10px;
  justify-content: space-between;
  padding-block: 8px;
  color: #929c84;
}
.product-meta strong {
  font-weight: 400;
  color: #657958;
}
.product-meta > div:first-child {
  justify-content: flex-start;
  gap: 10px;
  color: #677f55;
}
.product-description-panel {
  margin-top: 55px;
  border: 1px solid #e0e4d5;
  padding: 30px;
  background: #f5f4ec;
}
.product-description-panel h2 {
  font-family: var(--font-editorial);
  font-size: 28px;
  margin-bottom: 18px;
}
.product-description-panel > p {
  font-size: 13px;
  color: #7c8b6d;
  line-height: 2.2;
}
.source-detail {
  margin-top: 25px;
  border-top: 1px solid #e0e4d5;
  padding-top: 18px;
  font-size: 11px;
  color: #939d85;
}
.source-detail a {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #607a4d;
  margin-top: 10px;
}
.checkout-page {
  padding-bottom: 80px;
}
.demo-banner {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background: #eeeee1;
  border: 1px solid #dcdfca;
  padding: 18px 22px;
  border-radius: 3px;
  margin-bottom: 35px;
  color: #7c8562;
}
.demo-banner > svg {
  flex-shrink: 0;
  margin-top: 3px;
}
.demo-banner strong {
  font-size: 12px;
  font-weight: 500;
}
.demo-banner p {
  font-size: 11px;
  line-height: 2;
  margin-top: 5px;
}
.checkout-layout {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 55px;
  align-items: start;
}
.form-section-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-block: 5px 25px;
}
.form-section-heading > span {
  background: #e7ecd9;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  font-size: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6e8057;
}
.form-section-heading > h2 {
  font-size: 16px;
}
.form-section-heading > button {
  margin-right: auto;
  font-size: 10px;
  background: transparent;
}
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  margin-bottom: 35px;
}
.form-field {
  min-width: 0;
}
.form-field.full {
  grid-column: 1/-1;
}
.form-field label,
.contact-form label {
  font-size: 12px;
  color: #7b8b6a;
  display: block;
  margin-bottom: 8px;
}
.form-field label span {
  color: #9b8151;
}
.form-field input,
.contact-form input {
  height: 46px;
  font-size: 12px;
  border-color: #d6ddc8;
  box-shadow: none;
  background: #f9f9f2;
}
.field-error {
  font-size: 11px;
  color: #ab4e3b;
  margin-top: 7px;
}
.no-payment {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  border-block: 1px solid #dfe5d2;
  padding-block: 20px;
  color: #7b8f64;
}
.no-payment svg {
  flex-shrink: 0;
  margin-top: 3px;
}
.no-payment h3 {
  font-size: 13px;
}
.no-payment p {
  font-size: 11px;
  color: #929d83;
  margin-top: 5px;
}
.consent {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  color: #7c8b69;
  padding-top: 22px;
  cursor: pointer;
}
.consent input {
  accent-color: var(--green);
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.checkout-submit {
  width: 100%;
  height: 49px !important;
  font-size: 13px !important;
  margin-top: 22px;
  justify-content: space-between !important;
  padding-inline: 22px !important;
}
.checkout-summary .checkout-line {
  display: flex;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid #dae1cd;
  padding-block: 15px;
  font-size: 11px;
}
.checkout-line img {
  object-fit: contain;
  width: 50px;
  height: 65px;
  mix-blend-mode: multiply;
}
.checkout-line span {
  flex: 1;
}
.checkout-line span strong {
  font-size: 12px;
  display: block;
}
.checkout-line span small {
  font-size: 10px;
  color: #8a977a;
  margin-top: 4px;
  display: block;
}
.checkout-summary > .small-note {
  display: flex;
  align-items: center;
  gap: 6px;
}
.confirmation-page {
  min-height: 650px;
  padding-block: 80px;
  display: flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
}
.confirmation-seal {
  width: 90px;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #e5ecd9;
  color: #7b925e;
  border: 1px solid #cfdcbc;
  margin-bottom: 24px;
}
.confirmation-page h1 {
  font-family: var(--font-editorial);
  font-size: 41px;
  margin-block: 15px;
}
.confirmation-page > p {
  font-size: 13px;
  color: #8b997a;
  line-height: 2.1;
}
.confirmation-summary {
  background: #f1f3e6;
  padding: 23px 30px;
  border: 1px solid #dce4cd;
  width: min(500px, 100%);
  margin-block: 30px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.confirmation-summary > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 12px;
}
.confirmation-summary strong {
  font-weight: 500;
}
.confirmation-page > .text-link {
  font-size: 12px;
  margin-top: 10px;
}
.about-page-hero {
  background: #e9eddf;
  overflow: hidden;
  padding-block: 65px 75px;
  position: relative;
}
.about-page-hero .container {
  position: relative;
}
.about-page-hero h1 {
  font-family: var(--font-editorial);
  font-size: 58px;
  line-height: 1.4;
  margin-top: 20px;
  position: relative;
  z-index: 2;
}
.about-page-hero p {
  font-size: 14px;
  color: #7c8f69;
  max-width: 490px;
  margin-top: 25px;
  position: relative;
  z-index: 2;
}
.about-page-hero svg {
  position: absolute;
  left: 0;
  top: 0;
  width: 340px;
  height: 340px;
  color: #8e9b6b55;
}
.about-values {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 110px;
}
.about-values h2 {
  font-family: var(--font-editorial);
  font-size: 39px;
  margin-top: 15px;
}
.about-values > div > p {
  font-size: 13px;
  color: #8a9979;
  margin-block: 22px;
  line-height: 2.2;
}
.value-list article {
  display: flex;
  gap: 20px;
  padding-block: 25px;
  border-bottom: 1px solid #e1e6d4;
}
.value-list svg {
  color: #90a277;
  flex-shrink: 0;
  margin-top: 5px;
}
.value-list h3 {
  font-size: 17px;
}
.value-list p {
  font-size: 12px;
  color: #8a9979;
  margin-top: 10px;
  line-height: 2;
}
.contact-page {
  padding-block: 40px 80px;
}
.contact-layout {
  display: grid;
  grid-template-columns: 0.9fr 1.2fr;
  gap: 100px;
  margin-top: 25px;
}
.contact-info {
  padding: 35px;
  background: #ecf0e1;
  align-self: start;
}
.contact-info > svg {
  color: #89a16e;
}
.contact-info h2 {
  font-family: var(--font-editorial);
  font-size: 29px;
  margin-top: 20px;
}
.contact-phone {
  display: block;
  font-size: 24px;
  text-align: right;
  margin-top: 15px;
}
.contact-info p {
  font-size: 11px;
  color: #8b9b79;
  line-height: 2;
  margin-top: 20px;
}
.contact-info > .text-link {
  font-size: 11px;
  margin-top: 12px;
}
.contact-form > h2 {
  font-family: var(--font-editorial);
  font-size: 32px;
  margin-top: 10px;
}
.contact-form > .small-note {
  margin-block: 15px 22px;
}
.contact-form label {
  margin-top: 18px;
}
.contact-form textarea {
  display: block;
  width: 100%;
  height: 140px;
  background: #f9f9f2;
  border: 1px solid #d6ddc8;
  border-radius: 4px;
  padding: 12px;
  resize: vertical;
  font-size: 13px;
}
.contact-form form > button {
  margin-top: 25px;
  min-height: 44px;
  padding-inline: 20px;
}
.contact-success {
  padding: 35px;
  background: #f0f4e7;
  text-align: center;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 15px;
}
.policy-page {
  max-width: 800px;
  min-height: 570px;
  padding-block: 70px;
}
.policy-page h1 {
  font-family: var(--font-editorial);
  font-size: 45px;
  margin-block: 15px 25px;
}
.policy-page > p {
  font-size: 15px;
  line-height: 2.3;
  color: #859673;
  margin-block: 25px;
}
.policy-page .primary-link {
  margin-top: 15px;
}
.presentation-hero {
  background: #263c30;
  color: #f6f1e0;
  padding-block: 65px 45px;
  overflow: hidden;
  position: relative;
}
.presentation-hero .container {
  position: relative;
}
.presentation-label {
  font-size: 11px;
  color: #bdc99c;
  display: flex;
  align-items: center;
  gap: 9px;
}
.presentation-hero h1 {
  font-family: var(--font-editorial);
  font-size: 70px;
  line-height: 1.3;
  margin-top: 28px;
  position: relative;
  z-index: 2;
}
.presentation-hero h1 em {
  color: #c5b17e;
}
.presentation-hero p {
  font-size: 14px;
  color: #b3c29d;
  margin-top: 22px;
  position: relative;
  z-index: 2;
}
.presentation-hero .container > div {
  display: flex;
  gap: 35px;
  align-items: center;
  margin-top: 35px;
  position: relative;
  z-index: 2;
}
.presentation-hero .primary-link {
  background: #d9c59b;
  color: #263c30;
}
.presentation-hero svg:not(.lucide) {
  position: absolute;
  left: -15px;
  top: -5px;
  color: #84966355;
  width: 460px;
  height: 460px;
}
.presentation-edition {
  font-size: 9px;
  letter-spacing: 2px;
  display: block;
  border-top: 1px solid #64784d66;
  padding-top: 25px;
  margin-top: 55px;
  color: #a4b28d;
  direction: ltr;
  text-align: right;
}
.presentation-intro {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 90px;
}
.presentation-intro h2 {
  font-family: var(--font-editorial);
  font-size: 39px;
  margin-top: 15px;
}
.presentation-intro p {
  font-size: 13px;
  color: #859772;
  line-height: 2.1;
  margin-top: 12px;
}
.presentation-intro .text-link {
  font-size: 12px;
  margin-top: 15px;
}
.comparison-section {
  background: #ecefe1;
  padding-block: 65px;
  scroll-margin-top: 100px;
}
.comparison-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 35px;
}
.comparison-grid figure {
  min-width: 0;
}
.browser-chrome {
  height: 31px;
  background: #f7f8ef;
  border: 1px solid #d7dfc5;
  border-radius: 5px 5px 0 0;
  display: flex;
  align-items: center;
  gap: 4px;
  padding-inline: 12px;
  direction: ltr;
}
.browser-chrome i {
  height: 5px;
  width: 5px;
  border-radius: 50%;
  background: #bdc8aa;
}
.browser-chrome span {
  font-family: Arial, sans-serif;
  font-size: 9px;
  margin-left: auto;
  margin-right: auto;
  color: #a2ae90;
}
.comparison-image {
  height: 360px;
  background: #f7f8ef;
  border: 1px solid #d7dfc5;
  overflow: hidden;
}
.comparison-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: top;
}
.comparison-grid figcaption {
  position: relative;
  padding: 20px 0;
}
.comparison-grid figcaption > span {
  position: absolute;
  left: 0;
  top: 23px;
  font-size: 10px;
  background: #dfe8cd;
  color: #6b8053;
  padding: 3px 9px;
}
.comparison-grid h3 {
  font-family: var(--font-editorial);
  font-size: 25px;
}
.comparison-grid p {
  font-size: 10px;
  color: #8d9b78;
  margin-top: 5px;
}
.improvements-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.improvements-grid article {
  padding: 27px 25px;
  background: #f0f3e7;
  border: 1px solid #e0e7d1;
}
.improvements-grid article > span {
  font-family: Georgia, serif;
  font-style: italic;
  font-size: 27px;
  color: #9cae82;
}
.improvements-grid h3 {
  font-size: 18px;
  margin-top: 15px;
}
.improvements-grid p {
  font-size: 12px;
  line-height: 2;
  color: #859772;
  margin-top: 12px;
}
.demo-launch-section {
  background: #e6ecda;
  padding-block: 65px;
}
.demo-launch-section h2 {
  font-family: var(--font-editorial);
  font-size: 39px;
  margin-top: 12px;
}
.demo-launch-section p {
  font-size: 12px;
  color: #859b6d;
  margin-top: 15px;
}
.demo-launch-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 13px;
  margin-top: 30px;
}
.demo-launch-grid > a,
.demo-launch-grid > button {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start !important;
  gap: 20px !important;
  min-height: 170px;
  height: auto !important;
  padding: 22px !important;
  border: 1px solid #bccca3;
  border-radius: 3px;
  background: #f3f6e9;
  color: #5c7746;
  transition: transform 0.3s;
  font-size: 13px !important;
}
.demo-launch-grid > a:hover,
.demo-launch-grid > button:hover {
  transform: translateY(-4px);
  background: #fafcf6;
}
.demo-launch-grid strong {
  font-weight: 500;
  white-space: normal;
}
.demo-launch-grid > a > svg:last-child,
.demo-launch-grid > button > svg:last-child {
  align-self: flex-end;
}
.benefits-section {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 90px;
}
.benefits-section h2 {
  font-family: var(--font-editorial);
  font-size: 46px;
  line-height: 1.4;
  margin-top: 15px;
}
.benefits-section p {
  font-size: 12px;
  color: #93a181;
  margin-top: 20px;
  max-width: 330px;
}
.benefits-section ul {
  padding: 10px 0 0;
  margin: 0;
  list-style: none;
}
.benefits-section li {
  display: flex;
  align-items: center;
  gap: 15px;
  border-bottom: 1px solid #dce5cd;
  font-size: 13px;
  color: #81986b;
  padding-block: 18px;
}
.benefits-section svg {
  flex-shrink: 0;
  color: #87a265;
}
.presentation-boundaries {
  background: #eef2e4;
  padding: 30px;
  margin-bottom: 70px;
  border-right: 2px solid #a6b98a;
}
.presentation-boundaries p {
  font-size: 12px;
  color: #869e70;
  line-height: 2.2;
  margin-top: 15px;
}
.presentation-boundaries .text-link {
  font-size: 12px;
  margin-top: 12px;
}
.loading-page {
  padding-block: 60px;
}
.loading-heading,
.loading-card > div,
.loading-card > span,
.cart-skeleton {
  background: #eceee2;
  animation: pulse 1.6s infinite;
  border-radius: 3px;
}
.loading-heading {
  width: 260px;
  height: 35px;
  margin-bottom: 40px;
}
.loading-card > div {
  height: 260px;
}
.loading-card > span {
  display: block;
  height: 14px;
  width: 70%;
  margin-top: 15px;
}
.loading-card > span:last-child {
  width: 45%;
}
.cart-skeleton {
  width: 100%;
  height: 300px;
}
@keyframes pulse {
  50% {
    opacity: 0.45;
  }
}
@keyframes sheetIn {
  from {
    opacity: 0;
    transform: translateX(25px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes cartIn {
  from {
    opacity: 0;
    transform: translateX(-25px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.store-sheet[data-state="open"] {
  animation: sheetIn 0.25s ease;
}
.cart-sheet[data-state="open"] {
  animation: cartIn 0.25s ease;
}
.store-sheet[data-state="closed"] {
  animation: none;
}

@media (min-width: 1450px) {
  .hero-grid {
    min-height: 600px;
  }
  .hero-scene {
    height: 600px;
  }
  .hero h1 {
    font-size: 73px;
  }
  .hero-copy {
    padding-right: 8px;
  }
  .book-stage {
    top: 120px;
    left: 15px;
  }
  .hero-slider {
    bottom: 35px;
  }
  .hero-arch {
    height: 540px;
  }
}
@media (max-width: 1150px) {
  .container {
    width: calc(100% - 64px);
  }
  .header-main {
    gap: 30px;
    height: 90px;
  }
  .header-actions {
    gap: 5px;
  }
  .nav-row nav {
    gap: 24px;
    font-size: 11px;
  }
  .nav-caption {
    display: none;
  }
  .hero h1 {
    font-size: 57px;
  }
  .hero-grid {
    min-height: 530px;
  }
  .hero-scene {
    height: 530px;
    transform: scale(0.91);
    transform-origin: left center;
  }
  .hero-arch {
    left: 10px;
    width: 370px;
  }
  .book-stage {
    left: -50px;
    right: 0;
    top: 85px;
  }
  .hero-slider {
    left: 20px;
    right: -20px;
  }
  .scene-caption {
    left: 16px;
  }
  .hero-ctas {
    gap: 18px;
  }
  .hero-ctas .primary-link {
    padding-inline: 21px;
  }
  .category-card {
    height: 190px;
    padding-inline: 17px;
  }
  .category-copy {
    right: 17px;
  }
  .category-copy h3 {
    font-size: 15px;
  }
  .category-copy p {
    font-size: 9px;
  }
  .category-illustration {
    left: 10px;
  }
  .category-arrow {
    left: 11px;
    width: 25px;
    height: 25px;
  }
  .book-grid {
    gap: 21px;
  }
  .book-art-link > img {
    padding-inline: 14px;
  }
  .book-info h3 {
    font-size: 15px;
  }
  .book-author {
    font-size: 10px;
  }
  .book-prices strong {
    font-size: 13px;
  }
  .book-prices {
    gap: 7px;
  }
  .bestseller-inner {
    grid-template-columns: 190px 1fr;
    gap: 35px;
  }
  .ranked-books {
    gap: 20px;
  }
  .discovery-section {
    gap: 45px;
  }
  .about-preview-inner {
    gap: 60px;
  }
  .review-section {
    gap: 50px;
  }
  .footer-top {
    gap: 35px;
  }
  .footer-letter {
    padding-right: 20px;
  }
  .catalog-layout {
    grid-template-columns: 205px 1fr;
    gap: 30px;
  }
  .catalog-book-grid {
    gap: 28px 17px;
  }
  .catalog-toolbar {
    flex-wrap: wrap;
  }
  .sort-select {
    width: 100%;
    max-width: 230px;
  }
  .catalog-search {
    flex-basis: 60%;
  }
  .product-layout {
    gap: 45px;
  }
  .product-info h1 {
    font-size: 38px;
  }
  .product-cover-main {
    height: 460px;
  }
  .product-purchase {
    gap: 7px;
  }
  .product-add {
    gap: 7px !important;
  }
  .product-add span {
    display: none;
  }
  .checkout-layout {
    gap: 35px;
  }
  .cart-layout {
    gap: 35px;
  }
  .order-summary {
    padding: 22px;
  }
  .drawer-cart-layout {
    gap: 20px;
  }
  .contact-layout {
    gap: 50px;
  }
  .demo-launch-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .hero-copy > p {
    font-size: 13px;
  }
}
@media (max-width: 900px) {
  .header-main {
    gap: 20px;
  }
  .brand strong {
    font-size: 29px;
  }
  .brand-original {
    width: 39px;
    height: 50px;
  }
  .header-search {
    max-width: 350px;
  }
  .bag-label {
    display: none;
  }
  .header-actions {
    gap: 3px;
  }
  .action-divider {
    margin-inline: 2px;
  }
  .hero h1 {
    font-size: 49px;
  }
  .hero-grid {
    min-height: 480px;
    grid-template-columns: 1.1fr 1fr;
    gap: 5px;
  }
  .hero-scene {
    height: 480px;
    transform: scale(0.79);
    transform-origin: left center;
    width: 430px;
    margin-right: -35px;
  }
  .hero-copy {
    padding-block: 40px;
  }
  .hero-copy > p {
    font-size: 12px;
  }
  .hero-ctas {
    gap: 17px;
    flex-wrap: wrap;
  }
  .hero-ctas .primary-link {
    font-size: 12px;
    min-height: 44px;
    padding: 10px 18px;
  }
  .hero-secondary {
    font-size: 11px;
  }
  .hero-footnote {
    font-size: 9px;
    margin-top: 28px;
  }
  .hero-arch {
    height: 500px;
    bottom: -15px;
  }
  .hero-slider {
    bottom: -15px;
    left: 5px;
    right: 0;
  }
  .hero-slider a {
    font-size: 13px;
  }
  .category-grid {
    gap: 12px;
  }
  .category-copy h3 {
    font-size: 13px;
  }
  .category-copy p {
    font-size: 8px;
  }
  .category-arrow {
    display: none;
  }
  .category-card {
    height: 180px;
  }
  .category-illustration {
    right: 35px;
    left: 10px;
  }
  .category-copy {
    bottom: 20px;
  }
  .book-grid {
    gap: 25px 18px;
  }
  .book-info h3 {
    font-size: 14px;
  }
  .book-author {
    font-size: 9px;
  }
  .book-badge {
    font-size: 7px;
    padding-inline: 5px;
    right: 7px;
    top: 8px;
  }
  .wish-button {
    top: 6px;
    left: 6px;
  }
  .book-prices strong {
    font-size: 12px;
  }
  .book-prices del {
    font-size: 9px;
  }
  .quick-add {
    width: 28px !important;
    height: 28px !important;
  }
  .book-bottom {
    gap: 5px;
  }
  .book-art-link > img {
    padding: 18px 6px 7px;
  }
  .book-art-link > img.illustrated-cover {
    padding: 28px 20px 13px;
  }
  .new-books .book-art img {
    padding: 25px 25px 13px;
  }
  .editorial-word {
    left: 90px;
    opacity: 0.7;
  }
  .editorial-inner {
    gap: 18px;
    min-height: 190px;
  }
  .editorial-inner > p {
    font-size: 25px;
  }
  .editorial-inner > a {
    font-size: 11px;
    gap: 10px;
  }
  .bestseller-inner {
    grid-template-columns: 160px 1fr;
    gap: 25px;
  }
  .bestseller-copy h2 {
    font-size: 42px;
  }
  .rank-cover {
    height: 170px;
  }
  .ranked-book h3 {
    font-size: 12px;
  }
  .ranked-book .eyebrow {
    font-size: 8px;
  }
  .rank {
    font-size: 52px;
  }
  .discovery-section {
    gap: 35px;
    grid-template-columns: 1fr 1fr;
  }
  .discovery-copy h2 {
    font-size: 41px;
  }
  .discovery-copy > p {
    font-size: 12px;
  }
  .interest-buttons {
    gap: 6px;
  }
  .interest-buttons button {
    font-size: 10px;
    padding-inline: 12px;
  }
  .discovery-result {
    padding: 24px;
    min-height: 250px;
  }
  .recommendation {
    gap: 10px;
  }
  .recommendation h3 {
    font-size: 25px;
  }
  .recommend-cover {
    width: 105px;
    height: 125px;
  }
  .recommendation p {
    font-size: 10px;
  }
  .discovery-icon {
    top: 20px;
    left: 20px;
  }
  .about-preview-inner {
    gap: 40px;
  }
  .about-art {
    height: 290px;
  }
  .about-preview-copy h2 {
    font-size: 35px;
  }
  .about-preview-copy p {
    font-size: 12px;
  }
  .review-section {
    gap: 35px;
  }
  .review-section h2 {
    font-size: 34px;
  }
  .review-card {
    padding: 27px 24px 17px;
  }
  .review-card blockquote {
    font-size: 21px;
  }
  .review-stars {
    font-size: 10px;
    letter-spacing: 1px;
  }
  .review-card figcaption small {
    font-size: 8px;
  }
  .service-grid > div {
    gap: 12px;
  }
  .service-grid h3 {
    font-size: 12px;
  }
  .service-grid p {
    font-size: 9px;
  }
  .service-grid svg {
    width: 24px;
  }
  .footer-top {
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 30px;
  }
  .footer-letter {
    display: none;
  }
  .catalog-layout {
    grid-template-columns: 180px 1fr;
    gap: 24px;
  }
  .catalog-book-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .catalog-search {
    flex-basis: 100%;
  }
  .sort-select {
    max-width: 100%;
  }
  .product-layout {
    gap: 30px;
  }
  .product-info h1 {
    font-size: 34px;
  }
  .product-subtitle {
    font-size: 12px;
  }
  .product-description {
    font-size: 11px;
    margin-top: 15px;
  }
  .product-cover-main {
    height: 430px;
  }
  .product-purchase > .quantity-control {
    height: 43px;
  }
  .product-add {
    height: 43px !important;
    font-size: 11px !important;
  }
  .product-purchase > button[data-size="icon"] {
    width: 39px;
    height: 43px;
  }
  .product-meta {
    margin-top: 18px;
  }
  .cart-layout {
    grid-template-columns: 1.25fr 1fr;
    gap: 25px;
  }
  .cart-line {
    gap: 12px;
  }
  .cart-cover {
    width: 72px;
    height: 100px;
  }
  .cart-line-info h3 {
    font-size: 14px;
  }
  .cart-line-end {
    min-width: 57px;
  }
  .cart-line-end strong {
    font-size: 11px;
  }
  .order-summary {
    padding: 20px;
  }
  .order-summary > div:not(.checkout-line) {
    font-size: 10px;
  }
  .order-summary .summary-total {
    font-size: 12px !important;
  }
  .cart-layout .primary-link {
    font-size: 11px;
  }
  .checkout-layout {
    gap: 25px;
    grid-template-columns: 1.2fr 1fr;
  }
  .checkout-summary .checkout-line {
    gap: 8px;
    font-size: 10px;
  }
  .checkout-line span strong {
    font-size: 11px;
  }
  .checkout-line img {
    width: 40px;
  }
  .form-section-heading {
    flex-wrap: wrap;
    gap: 8px;
  }
  .form-section-heading > h2 {
    font-size: 14px;
  }
  .form-section-heading > button {
    font-size: 9px;
  }
  .form-grid {
    gap: 20px 15px;
  }
  .about-page-hero h1 {
    font-size: 50px;
  }
  .about-page-hero svg {
    width: 250px;
    left: -20px;
    top: 50px;
    opacity: 0.65;
  }
  .about-values {
    gap: 45px;
  }
  .about-values h2 {
    font-size: 33px;
  }
  .contact-layout {
    gap: 35px;
  }
  .contact-info {
    padding: 25px;
  }
  .contact-phone {
    font-size: 20px;
  }
  .presentation-hero h1 {
    font-size: 60px;
  }
  .presentation-hero svg:not(.lucide) {
    width: 350px;
    left: -50px;
    top: 40px;
  }
  .presentation-intro {
    gap: 40px;
  }
  .presentation-intro h2 {
    font-size: 34px;
  }
  .improvements-grid {
    gap: 16px;
  }
  .improvements-grid article {
    padding: 23px 20px;
  }
  .improvements-grid h3 {
    font-size: 16px;
  }
  .benefits-section {
    gap: 40px;
  }
  .comparison-grid {
    gap: 25px;
  }
  .comparison-image {
    height: 280px;
  }
}
@media (max-width: 700px) {
  .container {
    width: calc(100% - 36px);
  }
  .section {
    padding-block: 50px;
  }
  .announcement {
    height: 28px;
    font-size: 9px;
  }
  .announcement span {
    gap: 5px;
  }
  .announcement a {
    font-size: 8px;
    gap: 3px;
  }
  .announcement svg {
    width: 11px;
    height: 11px;
  }
  .header-main {
    height: auto;
    min-height: 80px;
    gap: 8px;
    flex-wrap: wrap;
    padding-block: 13px 11px;
  }
  .mobile-menu {
    display: inline-flex !important;
    width: 28px !important;
    height: 37px !important;
    margin-left: 9px;
  }
  .brand {
    gap: 8px;
  }
  .brand strong {
    font-size: 27px;
  }
  .brand-original {
    width: 33px;
    height: 42px;
  }
  .brand small {
    font-size: 7px;
    margin-top: 2px;
  }
  .header-brand {
    flex: 1;
  }
  .header-actions {
    gap: 3px;
  }
  .header-actions .icon-link,
  .header-actions button[data-size="icon"] {
    width: 30px;
    height: 36px;
  }
  .header-actions svg {
    width: 19px;
  }
  .account-button {
    display: none !important;
  }
  .action-divider {
    height: 20px;
    margin-inline: 3px;
  }
  .bag-button {
    gap: 6px !important;
    height: 36px !important;
  }
  .bag-count {
    width: 18px;
    height: 18px;
    font-size: 10px;
  }
  .header-search {
    order: 3;
    flex-basis: 100%;
    max-width: 100%;
    height: 38px;
    margin-top: 9px;
    padding-inline: 12px;
    gap: 9px;
  }
  .header-search input {
    font-size: 11px;
  }
  .header-search > svg {
    width: 16px;
  }
  .nav-row {
    display: none;
  }
  .site-header {
    box-shadow: 0 3px 15px #26372f06;
  }
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 0;
    min-height: auto;
  }
  .hero-copy {
    padding-block: 37px 17px;
    text-align: center;
  }
  .hero-kicker {
    justify-content: center;
    font-size: 10px;
  }
  .hero h1 {
    font-size: 49px;
    margin-block: 19px 15px;
    line-height: 1.25;
    letter-spacing: -0.6px;
  }
  .hero-copy > p {
    font-size: 12px;
    line-height: 2;
  }
  .hero-ctas {
    justify-content: center;
    margin-top: 22px;
    gap: 23px;
  }
  .hero-ctas .primary-link {
    padding: 11px 20px;
    min-height: 44px;
    gap: 22px;
  }
  .hero-secondary {
    font-size: 10px;
  }
  .hero-footnote {
    display: none;
  }
  .hero-scene {
    height: 350px;
    width: 430px;
    transform: scale(0.76);
    transform-origin: top center;
    margin-inline: auto;
    margin-top: 15px;
    margin-bottom: -55px;
    left: 50%;
    position: relative;
    translate: -50% 0;
    direction: ltr;
  }
  .hero-arch {
    height: 365px;
    width: 330px;
    bottom: -6px;
    left: 48px;
    border-radius: 180px 180px 0 0;
    box-shadow:
      inset 0 0 0 11px #f1eee4,
      inset 0 0 0 12px #d4d6c3;
  }
  .hero-rosette {
    width: 120px;
    height: 120px;
    top: 18px;
    left: -22px;
  }
  .book-stage {
    top: 29px;
    left: -27px;
    right: 0;
    height: 280px;
  }
  .book-front {
    width: 174px;
    height: 242px;
    left: 157px;
    top: 5px;
  }
  .back-one {
    width: 140px;
    height: 205px;
    left: 48px;
    top: 28px;
  }
  .back-two {
    width: 138px;
    height: 205px;
    left: 304px;
    top: 40px;
  }
  .scene-orbit {
    width: 360px;
    height: 70px;
    left: 53px;
    bottom: 5px;
  }
  .scene-stamp {
    width: 69px;
    height: 69px;
    right: -6px;
    bottom: 5px;
    border-width: 4px;
    gap: 4px;
  }
  .scene-stamp span {
    font-size: 20px;
  }
  .scene-stamp svg {
    width: 15px;
  }
  .scene-caption {
    font-size: 8px;
    top: 20px;
    left: 37px;
  }
  .spark-one {
    font-size: 23px;
    right: 2px;
    top: -7px;
  }
  .spark-two {
    font-size: 26px;
    left: 94px;
    top: -10px;
  }
  .hero-slider {
    bottom: -4px;
    left: 53px;
    right: 15px;
    padding-top: 9px;
  }
  .hero-slider .eyebrow {
    font-size: 9px;
  }
  .hero-slider a {
    font-size: 13px;
    margin-top: 2px;
    gap: 10px;
  }
  .slider-controls button {
    width: 26px !important;
    height: 26px !important;
    margin-inline: 8px;
  }
  .hero-bottom-line {
    min-height: 39px;
    gap: 22px;
    font-size: 8px;
    margin-top: 15px;
  }
  .hero-bottom-line i {
    font-size: 10px;
  }
  .section-heading {
    gap: 15px;
    margin-bottom: 25px;
    align-items: flex-end;
  }
  .section-heading h2 {
    font-size: 29px;
    margin-top: 6px;
  }
  .section-heading .eyebrow {
    font-size: 10px;
  }
  .little-star {
    font-size: 12px;
  }
  .section-link {
    font-size: 10px;
    gap: 7px;
    padding-bottom: 6px;
    white-space: nowrap;
  }
  .section-link svg {
    width: 14px;
    height: 14px;
  }
  .categories-section {
    padding-bottom: 22px;
  }
  .category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .category-card {
    height: 170px;
    border-radius: 3px;
  }
  .category-number {
    right: 15px;
    top: 13px;
    font-size: 9px;
  }
  .category-copy {
    right: 15px;
    bottom: 18px;
  }
  .category-copy h3 {
    font-size: 14px;
  }
  .category-copy p {
    font-size: 9px;
    margin-top: 4px;
  }
  .category-illustration {
    top: 12px;
    right: 45px;
    left: 12px;
    height: 90px;
  }
  .category-0 .category-illustration svg {
    width: 111px;
    height: 111px;
    top: -21px;
    left: -6px;
  }
  .thought-circle {
    width: 49px;
    height: 49px;
    top: 0;
    right: 14px;
  }
  .thought-arch {
    width: 60px;
    height: 75px;
    top: 0;
    left: -2px;
  }
  .thought-arch:after {
    inset: 8px;
  }
  .heritage-arch {
    height: 88px;
    width: 64px;
    top: -10px;
    left: 4px;
  }
  .heritage-arch:after {
    inset: 10px 11px 0;
  }
  .heritage-lines {
    width: 105px;
    bottom: 11px;
    left: -15px;
  }
  .learning-book {
    width: 52px;
    height: 66px;
    top: -3px;
    left: 24px;
  }
  .learning-book:after {
    width: 27px;
    height: 22px;
    top: 23px;
    left: 11px;
  }
  .category-3 svg {
    width: 55px;
    height: 55px;
    top: 28px;
    left: -9px;
  }
  .taxonomy-note {
    font-size: 8px;
    margin-top: 10px;
  }
  .featured-section {
    padding-top: 26px;
  }
  .book-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 27px 14px;
  }
  .book-art {
    aspect-ratio: 1/1.16;
  }
  .book-art-link > img {
    padding: 24px 7px 10px;
  }
  .book-info {
    padding-top: 12px;
  }
  .book-category {
    font-size: 8px;
  }
  .book-info h3 {
    font-size: 15px;
    margin-top: 4px;
  }
  .book-author {
    font-size: 9px;
    margin-top: 3px;
    min-height: 19px;
    line-height: 1.7;
  }
  .book-bottom {
    margin-top: 10px;
  }
  .book-prices {
    gap: 6px;
  }
  .book-prices strong {
    font-size: 12px;
  }
  .book-prices del {
    font-size: 8px;
  }
  .quick-add {
    width: 29px !important;
    height: 29px !important;
  }
  .book-badge {
    top: 9px;
    right: 8px;
    font-size: 7px;
    padding: 2px 5px;
  }
  .wish-button {
    width: 26px !important;
    height: 26px !important;
    left: 6px;
    top: 5px;
  }
  .wish-button svg {
    width: 14px;
    height: 14px;
  }
  .source-note {
    font-size: 8px;
    gap: 5px;
    margin-top: 25px;
    padding-top: 13px;
    flex-wrap: wrap;
    text-align: center;
  }
  .editorial-inner {
    min-height: 220px;
    padding-block: 30px;
    gap: 15px;
    flex-wrap: wrap;
    align-content: center;
  }
  .editorial-index {
    display: none;
  }
  .editorial-inner > svg {
    width: 25px;
    height: 25px;
    align-self: center;
    margin-top: 0;
    flex-shrink: 0;
  }
  .editorial-inner > p {
    font-size: 24px;
    line-height: 1.7;
    max-width: calc(100% - 40px);
  }
  .editorial-inner > a {
    margin-right: 40px;
    font-size: 10px;
    flex-basis: 100%;
    margin-top: 8px;
    gap: 15px;
  }
  .editorial-word {
    font-size: 155px;
    left: 20px;
    top: 20px;
    opacity: 0.4;
  }
  .demo-inline {
    font-size: 9px;
    padding-bottom: 13px;
    margin-bottom: 19px;
    gap: 8px;
    line-height: 1.9;
  }
  .demo-inline svg {
    width: 13px;
    height: 13px;
  }
  .new-books .book-art {
    aspect-ratio: 1/1.2;
  }
  .new-books .book-art img {
    padding: 24px 27px 15px;
  }
  .bestseller-section {
    padding-block: 40px;
  }
  .bestseller-inner {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .bestseller-copy {
    position: relative;
    padding-left: 140px;
    min-height: 120px;
  }
  .bestseller-copy h2 {
    font-size: 35px;
    line-height: 1.25;
    margin-top: 9px;
  }
  .bestseller-copy h2 br {
    display: none;
  }
  .bestseller-copy > p {
    font-size: 10px;
    margin-top: 8px;
  }
  .bestseller-copy .ranking-note {
    font-size: 8px;
    max-width: none;
  }
  .bestseller-copy .text-link {
    position: absolute;
    left: 0;
    top: 30px;
    font-size: 10px;
    padding-block: 8px;
    gap: 8px;
  }
  .bestseller-copy > .eyebrow {
    font-size: 10px;
  }
  .ranked-books {
    gap: 14px;
  }
  .rank-cover {
    height: 145px;
    margin-right: 5px;
    margin-bottom: 14px;
  }
  .rank {
    font-size: 43px;
    right: -4px;
    top: -2px;
  }
  .ranked-book h3 {
    font-size: 11px;
    line-height: 1.7;
    padding-left: 4px;
    min-height: 36px;
  }
  .ranked-book .eyebrow {
    font-size: 7px;
    line-height: 1.6;
    min-height: 23px;
  }
  .ranked-book > svg {
    display: none;
  }
  .discovery-section {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .discovery-copy h2 {
    font-size: 37px;
    margin-top: 9px;
  }
  .discovery-copy h2 br {
    display: none;
  }
  .discovery-copy > p {
    font-size: 12px;
  }
  .interest-buttons {
    margin-top: 17px;
    gap: 7px;
  }
  .interest-buttons button {
    font-size: 10px;
    min-height: 36px;
    padding-inline: 14px;
  }
  .discovery-result {
    padding: 25px;
    min-height: 220px;
  }
  .recommendation {
    margin-top: 8px;
  }
  .recommend-cover {
    width: 130px;
    height: 140px;
  }
  .recommendation h3 {
    font-size: 29px;
  }
  .recommendation p {
    font-size: 10px;
  }
  .recommendation a {
    margin-top: 18px;
    font-size: 11px;
  }
  .about-preview-inner {
    grid-template-columns: 1fr;
    gap: 32px;
    padding-block: 40px;
  }
  .about-art {
    height: 250px;
    max-width: 320px;
    width: 100%;
    margin-inline: auto;
    border-radius: 180px 180px 3px 3px;
  }
  .about-art svg {
    width: 320px;
    height: 320px;
    top: -35px;
  }
  .about-art > span {
    font-size: 117px;
  }
  .about-art > small {
    font-size: 9px;
  }
  .about-preview-copy {
    max-width: 400px;
  }
  .about-preview-copy h2 {
    font-size: 35px;
    line-height: 1.5;
  }
  .about-preview-copy p {
    font-size: 12px;
    max-width: 100%;
    margin: 15px 0 22px;
  }
  .about-preview-copy .primary-link {
    font-size: 12px;
    min-height: 45px;
    padding: 10px 22px;
  }
  .review-section {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .review-section h2 {
    font-size: 33px;
    line-height: 1.3;
  }
  .review-section h2 br {
    display: none;
  }
  .review-section > div > p {
    font-size: 10px;
    margin-top: 10px;
  }
  .review-card {
    padding: 25px 23px 17px;
  }
  .review-quote {
    width: 32px;
    height: 32px;
  }
  .review-card blockquote {
    font-size: 23px;
    line-height: 1.8;
    margin: 9px 0 20px;
  }
  .review-stars {
    font-size: 10px;
  }
  .review-card figcaption {
    gap: 10px;
  }
  .review-card figcaption strong {
    font-size: 11px;
  }
  .review-card figcaption small {
    font-size: 8px;
  }
  .review-avatar {
    width: 32px;
    height: 32px;
    font-size: 12px;
  }
  .review-source {
    font-size: 8px;
  }
  .service-strip {
    padding-block: 15px;
  }
  .service-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .service-grid > div {
    justify-content: flex-start;
    gap: 16px;
    border-left: 0;
    border-bottom: 1px solid #dde3d2;
    padding: 17px 20px;
  }
  .service-grid > div:last-child {
    border: 0;
  }
  .service-grid svg {
    width: 28px;
    height: 28px;
  }
  .service-grid h3 {
    font-size: 13px;
  }
  .service-grid p {
    font-size: 10px;
    margin-top: 4px;
  }
  .site-footer {
    padding-top: 37px;
  }
  .footer-top {
    grid-template-columns: 1fr 1fr;
    gap: 25px 20px;
    padding-bottom: 35px;
  }
  .footer-intro {
    grid-column: 1/-1;
  }
  .footer-intro .brand strong {
    font-size: 31px;
  }
  .footer-intro .brand small {
    font-size: 8px;
  }
  .brand-light .brand-original {
    width: 38px;
    height: 48px;
  }
  .footer-intro > p {
    font-size: 11px;
    margin-top: 18px;
  }
  .footer-more {
    font-size: 10px;
    margin-top: 12px;
  }
  .footer-top > div > h3 {
    font-size: 12px;
    margin-block: 10px 17px;
  }
  .footer-top > div:not(.footer-intro):not(.footer-letter) > a {
    font-size: 10px;
    margin-top: 9px;
    min-height: 24px;
  }
  .footer-bottom {
    flex-wrap: wrap;
    font-size: 8px;
    gap: 12px;
    padding-block: 18px;
  }
  .footer-bottom > span:last-child {
    flex-basis: 100%;
    border-top: 1px solid #5b6c5130;
    padding-top: 10px;
  }
  .footer-bottom > a {
    margin-right: auto;
  }
  .toast-region {
    bottom: 18px;
  }
  .toast {
    font-size: 11px;
    padding: 11px 15px;
    gap: 9px;
  }
  .toast > svg {
    margin-right: 10px;
  }
  .store-sheet {
    padding: 22px;
    max-height: 100dvh;
  }
  .store-sheet [data-slot="sheet-header"] {
    padding-top: 4px;
  }
  .store-sheet [data-slot="sheet-title"] {
    font-size: 26px;
  }
  .store-sheet [data-slot="sheet-description"] {
    font-size: 11px;
  }
  .store-sheet > button {
    left: 16px !important;
    top: 16px;
  }
  .cart-sheet {
    padding: 21px 18px;
  }
  .breadcrumbs {
    font-size: 9px;
    gap: 8px;
    padding-block: 22px;
    flex-wrap: wrap;
  }
  .page-intro {
    padding-block: 8px 23px;
  }
  .page-intro h1 {
    font-size: 36px;
    line-height: 1.45;
  }
  .page-intro > p {
    font-size: 11px;
    line-height: 2;
  }
  .page-intro > .eyebrow {
    font-size: 10px;
  }
  .catalog-notice {
    font-size: 9px;
    padding: 10px 13px;
    margin-bottom: 24px;
  }
  .catalog-layout {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .catalog-sidebar {
    display: none;
  }
  .catalog-toolbar {
    gap: 10px;
  }
  .catalog-search {
    flex-basis: 100%;
    height: 43px;
  }
  .catalog-search input {
    font-size: 10px;
  }
  .sort-select {
    flex: 1;
    max-width: none;
    width: auto;
    height: 40px;
    min-height: 40px;
    font-size: 10px;
  }
  .filter-mobile {
    display: inline-flex !important;
    font-size: 11px;
    height: 40px !important;
    gap: 9px !important;
    min-width: 95px;
    background: transparent !important;
  }
  .results-heading {
    padding-block: 16px 17px;
  }
  .results-heading > p {
    font-size: 10px;
  }
  .catalog-book-grid {
    gap: 28px 14px;
  }
  .catalog-book-grid .book-art {
    aspect-ratio: 1/1.18;
  }
  .catalog-book-grid .book-info h3 {
    font-size: 14px;
  }
  .catalog-book-grid .book-author {
    font-size: 9px;
  }
  .catalog-book-grid .book-art img {
    padding: 24px 7px 10px;
  }
  .catalog-book-grid .book-art img.illustrated-cover {
    padding: 26px 25px 12px;
  }
  .active-filters {
    font-size: 9px;
    margin-bottom: 17px;
    padding-inline: 9px;
  }
  .active-filters button {
    font-size: 9px;
  }
  .filter-fields legend {
    font-size: 13px;
  }
  .filter-check {
    font-size: 12px;
    min-height: 42px;
  }
  .filter-check input {
    width: 16px;
    height: 16px;
  }
  .filter-fields .native-select {
    font-size: 12px;
  }
  .filter-sheet .filter-fields {
    padding-inline: 2px;
  }
  .range-label {
    font-size: 12px;
  }
  .range-values {
    font-size: 11px;
  }
  .filter-sheet .small-note {
    font-size: 11px;
  }
  .filter-sheet-actions > button {
    min-height: 43px;
    font-size: 12px;
  }
  .catalog-book-grid.list-view {
    grid-template-columns: 1fr;
  }
  .book-list {
    gap: 18px;
    padding-bottom: 18px;
  }
  .book-list .book-art {
    width: 120px;
    height: 157px;
  }
  .book-list .book-info h3 {
    font-size: 18px;
  }
  .book-list .book-bottom {
    margin-top: 18px;
  }
  .catalog-book-grid .book-list .book-art img {
    padding: 23px 5px 8px;
  }
  .book-list .book-category {
    font-size: 9px;
  }
  .book-list .book-author {
    font-size: 10px;
  }
  .book-list .book-badge {
    font-size: 7px;
    right: 5px;
  }
  .book-list .book-prices strong {
    font-size: 14px;
  }
  .book-list .book-prices del {
    font-size: 10px;
  }
  .cart-page {
    padding-bottom: 50px;
  }
  .cart-page .page-intro {
    align-items: flex-start;
    flex-direction: column;
    gap: 15px;
  }
  .cart-page .section-link {
    font-size: 11px;
  }
  .cart-layout {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .cart-line {
    gap: 14px;
    padding-block: 18px;
  }
  .cart-cover {
    width: 80px;
    height: 105px;
  }
  .cart-line-info h3 {
    font-size: 15px;
    line-height: 1.6;
  }
  .cart-line-info > span {
    font-size: 11px;
  }
  .cart-line-info .eyebrow {
    font-size: 8px;
  }
  .cart-line-end {
    min-width: 64px;
  }
  .cart-line-end strong {
    font-size: 12px;
  }
  .cart-line .quantity-control {
    margin-top: 10px;
  }
  .order-summary {
    position: static;
    padding: 25px;
  }
  .order-summary h2 {
    font-size: 27px;
    margin-bottom: 20px;
  }
  .order-summary > div:not(.checkout-line) {
    font-size: 12px;
  }
  .order-summary .summary-total {
    font-size: 14px !important;
  }
  .order-summary .primary-link {
    font-size: 12px;
    margin-top: 20px;
  }
  .drawer-cart-layout {
    gap: 22px;
  }
  .drawer-cart-layout .order-summary {
    padding: 21px;
  }
  .drawer-cart-layout .cart-line h3 {
    font-size: 14px;
  }
  .drawer-cart-layout .cart-line-end strong {
    font-size: 11px;
  }
  .drawer-cart-layout .cart-line-end {
    min-width: 57px;
  }
  .cart-sheet .empty-state {
    padding-inline: 12px;
  }
  .empty-state {
    padding-block: 45px;
    min-height: 350px;
    gap: 17px;
  }
  .empty-state h2,
  .empty-state h1 {
    font-size: 28px;
    line-height: 1.5;
  }
  .empty-state p {
    font-size: 12px;
  }
  .empty-state .primary-link {
    font-size: 12px;
    padding: 11px 23px;
    min-height: 46px;
  }
  .empty-icon {
    width: 65px;
    height: 65px;
  }
  .wishlist-page {
    min-height: 580px;
    padding-bottom: 50px;
  }
  .product-layout {
    grid-template-columns: 1fr;
    gap: 25px;
    padding-top: 0;
  }
  .product-cover-main {
    height: 340px;
  }
  .product-cover-main > img {
    padding: 23px 25px 35px;
  }
  .gallery-thumbs button {
    width: 55px;
    height: 55px;
  }
  .gallery-thumbs {
    gap: 9px;
    margin-top: 11px;
  }
  .product-info {
    padding-top: 5px;
  }
  .product-info > .eyebrow {
    font-size: 10px;
  }
  .detail-source {
    font-size: 9px;
    margin-top: 10px;
  }
  .product-info h1 {
    font-size: 38px;
    margin-block: 10px;
  }
  .product-subtitle {
    font-size: 13px;
  }
  .detail-author {
    font-size: 11px;
  }
  .detail-prices {
    margin-top: 20px;
    gap: 15px;
  }
  .detail-prices strong {
    font-size: 26px;
  }
  .detail-prices del {
    font-size: 13px;
  }
  .demo-stock {
    font-size: 10px;
  }
  .product-description {
    font-size: 12px;
    line-height: 2.1;
    margin-top: 20px;
  }
  .product-purchase {
    gap: 8px;
    margin-top: 23px;
    flex-wrap: nowrap;
  }
  .product-purchase > .quantity-control {
    height: 46px;
  }
  .product-purchase .quantity-control button {
    width: 23px !important;
  }
  .product-purchase .quantity-control output {
    min-width: 23px;
  }
  .product-add {
    font-size: 12px !important;
    height: 46px !important;
    gap: 7px !important;
    padding-inline: 10px !important;
  }
  .product-purchase > button[data-size="icon"] {
    width: 43px;
    height: 46px;
  }
  .product-add span {
    display: none;
  }
  .product-info > .small-note {
    font-size: 9px;
    margin-top: 13px;
  }
  .product-meta {
    margin-top: 20px;
  }
  .product-meta > div {
    font-size: 11px;
    padding-block: 9px;
  }
  .product-description-panel {
    padding: 23px 20px;
    margin-top: 35px;
  }
  .product-description-panel h2 {
    font-size: 26px;
    margin-bottom: 13px;
  }
  .product-description-panel > p {
    font-size: 12px;
    line-height: 2.15;
  }
  .source-detail {
    font-size: 10px;
    line-height: 2;
    margin-top: 20px;
    padding-top: 14px;
  }
  .related-section {
    padding-top: 40px;
  }
  .checkout-page {
    padding-bottom: 50px;
  }
  .demo-banner {
    padding: 15px;
    gap: 12px;
    margin-bottom: 28px;
  }
  .demo-banner strong {
    font-size: 10px;
  }
  .demo-banner p {
    font-size: 9px;
  }
  .demo-banner > svg {
    width: 18px;
  }
  .checkout-layout {
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .checkout-summary {
    order: -1;
  }
  .checkout-summary h2 {
    font-size: 26px;
    margin-bottom: 12px;
  }
  .checkout-summary .checkout-line {
    padding-block: 10px;
    gap: 12px;
    font-size: 11px;
  }
  .checkout-line img {
    width: 45px;
    height: 55px;
  }
  .checkout-line span strong {
    font-size: 12px;
  }
  .checkout-summary > .small-note {
    font-size: 9px;
  }
  .checkout-summary.order-summary .summary-total {
    margin-top: 10px;
  }
  .form-section-heading {
    gap: 10px;
    margin-bottom: 22px;
  }
  .form-section-heading > h2 {
    font-size: 14px;
  }
  .form-section-heading > button {
    font-size: 9px;
    margin-right: auto;
    min-height: 33px;
    padding-inline: 9px;
  }
  .form-grid {
    gap: 18px 14px;
    margin-bottom: 28px;
  }
  .form-field label {
    font-size: 11px;
  }
  .form-field input {
    height: 45px;
    font-size: 12px;
  }
  .field-error {
    font-size: 10px;
  }
  .consent {
    font-size: 11px;
    gap: 9px;
    align-items: flex-start;
  }
  .consent input {
    margin-top: 3px;
  }
  .no-payment {
    gap: 12px;
    padding-block: 19px;
  }
  .no-payment h3 {
    font-size: 12px;
  }
  .no-payment p {
    font-size: 10px;
  }
  .no-payment > svg {
    width: 20px;
  }
  .confirmation-page {
    padding-block: 55px;
    min-height: 600px;
  }
  .confirmation-page h1 {
    font-size: 34px;
    line-height: 1.5;
  }
  .confirmation-page > p {
    font-size: 12px;
  }
  .confirmation-summary {
    padding: 22px;
  }
  .confirmation-summary > div {
    font-size: 11px;
  }
  .confirmation-page .primary-link {
    font-size: 12px;
  }
  .about-page-hero {
    padding-block: 45px 50px;
  }
  .about-page-hero h1 {
    font-size: 40px;
    line-height: 1.5;
    margin-top: 15px;
  }
  .about-page-hero p {
    font-size: 12px;
    max-width: 290px;
    line-height: 2.1;
  }
  .about-page-hero svg {
    width: 200px;
    left: -85px;
    top: 65px;
    opacity: 0.35;
  }
  .about-values {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .about-values h2 {
    font-size: 35px;
    line-height: 1.45;
  }
  .about-values > div > p {
    font-size: 12px;
    line-height: 2.2;
    margin-block: 20px;
  }
  .about-values .primary-link {
    font-size: 12px;
  }
  .value-list article {
    gap: 17px;
    padding-block: 23px;
  }
  .value-list h3 {
    font-size: 16px;
  }
  .value-list p {
    font-size: 12px;
    margin-top: 7px;
  }
  .contact-page {
    padding-block: 27px 50px;
  }
  .contact-layout {
    grid-template-columns: 1fr;
    gap: 35px;
    margin-top: 10px;
  }
  .contact-info {
    padding: 25px;
  }
  .contact-info h2 {
    font-size: 28px;
    margin-top: 17px;
  }
  .contact-phone {
    font-size: 25px;
    margin-top: 10px;
  }
  .contact-info p {
    font-size: 11px;
    margin-top: 16px;
  }
  .contact-form > h2 {
    font-size: 30px;
  }
  .contact-form > .small-note {
    font-size: 11px;
  }
  .contact-form label {
    font-size: 11px;
  }
  .contact-form form > button {
    width: 100%;
    font-size: 12px;
    min-height: 46px;
  }
  .policy-page {
    min-height: 560px;
    padding-block: 45px;
  }
  .policy-page h1 {
    font-size: 37px;
    margin-block: 15px 25px;
  }
  .policy-page > p {
    font-size: 13px;
    line-height: 2.3;
  }
  .policy-page .primary-link {
    font-size: 12px;
  }
  .presentation-hero {
    padding-block: 43px 32px;
  }
  .presentation-label {
    font-size: 10px;
    gap: 8px;
  }
  .presentation-hero h1 {
    font-size: 48px;
    line-height: 1.3;
    margin-top: 24px;
  }
  .presentation-hero p {
    font-size: 12px;
    max-width: 270px;
    line-height: 2;
  }
  .presentation-hero .container > div {
    gap: 20px;
    margin-top: 27px;
  }
  .presentation-hero .primary-link {
    font-size: 11px;
    padding: 12px 18px;
    min-height: 46px;
    gap: 17px;
  }
  .presentation-hero .hero-secondary {
    font-size: 10px;
    gap: 6px;
  }
  .presentation-hero svg:not(.lucide) {
    width: 270px;
    top: 20px;
    left: -130px;
    opacity: 0.6;
  }
  .presentation-edition {
    margin-top: 38px;
    padding-top: 18px;
    font-size: 7px;
    letter-spacing: 1.5px;
  }
  .presentation-intro {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .presentation-intro h2 {
    font-size: 34px;
    margin-top: 12px;
  }
  .presentation-intro p {
    font-size: 12px;
    line-height: 2.15;
    margin-top: 12px;
  }
  .presentation-intro .text-link {
    font-size: 11px;
  }
  .comparison-section {
    padding-block: 40px;
  }
  .comparison-section .section-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .comparison-section h2 {
    font-size: 30px;
  }
  .comparison-section .small-note {
    font-size: 9px;
  }
  .comparison-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .comparison-image {
    height: 260px;
  }
  .comparison-grid h3 {
    font-size: 25px;
  }
  .comparison-grid p {
    font-size: 10px;
  }
  .comparison-grid figcaption {
    padding-block: 17px 0;
  }
  .comparison-grid figcaption > span {
    top: 20px;
  }
  .improvements-grid {
    grid-template-columns: 1fr 1fr;
    gap: 13px;
  }
  .improvements-grid article {
    padding: 20px 16px;
  }
  .improvements-grid article > span {
    font-size: 25px;
  }
  .improvements-grid h3 {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 10px;
  }
  .improvements-grid p {
    font-size: 10px;
    line-height: 2;
    margin-top: 9px;
  }
  .demo-launch-section {
    padding-block: 40px;
  }
  .demo-launch-section h2 {
    font-size: 32px;
  }
  .demo-launch-section p {
    font-size: 11px;
    line-height: 2;
  }
  .demo-launch-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 24px;
  }
  .demo-launch-grid > a,
  .demo-launch-grid > button {
    padding: 18px !important;
    min-height: 146px;
    gap: 15px !important;
    font-size: 12px !important;
  }
  .demo-launch-grid > button {
    grid-column: 1/-1;
    min-height: 87px;
    flex-direction: row;
    align-items: center;
    gap: 17px !important;
  }
  .demo-launch-grid > button > svg:last-child {
    margin-right: auto;
    align-self: center;
  }
  .demo-launch-section .small-note {
    font-size: 9px;
  }
  .benefits-section {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .benefits-section h2 {
    font-size: 40px;
    line-height: 1.3;
  }
  .benefits-section p {
    font-size: 11px;
    margin-top: 15px;
  }
  .benefits-section li {
    font-size: 12px;
    line-height: 2;
    gap: 12px;
    padding-block: 16px;
  }
  .presentation-boundaries {
    padding: 24px 20px;
    margin-bottom: 45px;
  }
  .presentation-boundaries p {
    font-size: 11px;
  }
  .presentation-boundaries .text-link {
    font-size: 11px;
  }
  .loading-page {
    padding-block: 35px;
  }
  .loading-card > div {
    height: 200px;
  }
  .account-dialog {
    width: calc(100% - 32px) !important;
    padding: 29px !important;
  }
  .account-dialog [data-slot="dialog-title"] {
    font-size: 27px;
  }
  .account-dialog [data-slot="dialog-description"] {
    font-size: 12px;
  }
  .account-dialog .primary-link {
    font-size: 12px;
  }
  .account-dialog .small-note {
    font-size: 10px;
  }
  html {
    scroll-padding-top: 135px;
  }
  .store-sheet .quantity-control button {
    min-width: 29px;
    min-height: 29px;
  }
  .store-sheet .cart-lines {
    padding-top: 0;
  }
}
@media (max-width: 380px) {
  .hero h1 {
    font-size: 45px;
  }
  .hero-scene {
    transform: scale(0.71);
    margin-bottom: -77px;
  }
  .hero-ctas {
    gap: 17px;
  }
  .book-info h3 {
    font-size: 14px;
  }
  .book-prices {
    gap: 5px;
  }
  .book-prices strong {
    font-size: 11px;
  }
  .book-prices del {
    font-size: 8px;
  }
  .book-bottom {
    gap: 3px;
  }
  .book-badge {
    font-size: 6px;
  }
  .category-copy h3 {
    font-size: 13px;
  }
  .category-copy p {
    font-size: 8px;
  }
  .rank-cover {
    height: 127px;
  }
  .bestseller-copy {
    padding-left: 120px;
  }
  .bestseller-copy h2 {
    font-size: 31px;
  }
  .ranked-book h3 {
    font-size: 10px;
  }
  .recommend-cover {
    width: 107px;
    height: 132px;
  }
  .recommendation h3 {
    font-size: 27px;
  }
  .review-card figcaption {
    gap: 8px;
  }
  .review-stars {
    font-size: 9px;
  }
  .review-card figcaption small {
    font-size: 7px;
  }
  .product-purchase {
    gap: 6px;
  }
  .product-purchase .quantity-control button {
    width: 21px !important;
  }
  .product-add {
    font-size: 11px !important;
    padding-inline: 9px !important;
  }
  .product-purchase > button[data-size="icon"] {
    width: 39px;
  }
  .cart-line {
    gap: 11px;
  }
  .cart-cover {
    width: 70px;
  }
  .cart-line-info h3 {
    font-size: 14px;
  }
  .cart-line-end {
    min-width: 55px;
  }
  .cart-line-end strong {
    font-size: 11px;
  }
  .form-section-heading > button {
    font-size: 8px;
    padding-inline: 7px;
  }
  .header-actions .icon-link {
    width: 27px;
  }
  .bag-button {
    gap: 4px !important;
  }
  .bag-count {
    width: 17px;
    height: 17px;
  }
}
/* Readable Arabic UI text; editorial headings retain their quieter serif rhythm. */
.nav-row nav {
  font-size: 14px;
}
.header-search input {
  font-size: 14px;
}
.hero-kicker {
  font-size: 13px;
}
.hero-copy > p {
  font-size: 16px;
}
.hero-footnote {
  font-size: 12px;
}
.hero-bottom-line {
  font-size: 12px;
}
.eyebrow {
  font-size: 13px;
}
.category-copy p {
  font-size: 12px;
}
.category-copy h3 {
  font-size: 18px;
}
.taxonomy-note {
  font-size: 11px;
}
.book-category {
  font-size: 11px;
}
.book-info h3 {
  font-size: 18px;
}
.book-author {
  font-size: 13px;
  line-height: 1.8;
}
.book-badge {
  font-size: 10px;
}
.book-prices strong {
  font-size: 16px;
}
.book-prices del {
  font-size: 12px;
}
.source-note {
  font-size: 12px;
}
.demo-inline {
  font-size: 12px;
}
.hero-slider .eyebrow {
  font-size: 11px;
}
.hero-slider a {
  font-size: 15px;
}
.nav-caption {
  font-size: 12px;
}
.bag-button {
  font-size: 14px;
}
.review-card figcaption strong {
  font-size: 14px;
}
.review-card figcaption small {
  font-size: 11px;
}
.review-source {
  font-size: 11px;
}
.review-section > div > p {
  font-size: 13px;
}
.service-grid h3 {
  font-size: 16px;
}
.service-grid p {
  font-size: 12px;
}
.footer-top > div:not(.footer-intro):not(.footer-letter) > a {
  font-size: 12px;
}
.footer-top > div > h3 {
  font-size: 14px;
}
.footer-intro > p {
  font-size: 13px;
}
.footer-more {
  font-size: 12px;
}
.footer-bottom {
  font-size: 11px;
}
.catalog-notice {
  font-size: 12px;
}
.filter-check {
  font-size: 13px;
}
.filter-fields legend {
  font-size: 14px;
}
.native-select {
  font-size: 13px;
}
.catalog-search input {
  font-size: 13px;
}
.results-heading > p {
  font-size: 13px;
}
.catalog-book-grid .book-info h3 {
  font-size: 18px;
}
.catalog-book-grid .book-author {
  font-size: 12px;
}
.product-description {
  font-size: 14px;
}
.detail-author {
  font-size: 14px;
}
.product-info > .small-note {
  font-size: 11px;
}
.product-meta > div {
  font-size: 12px;
}
.product-add {
  font-size: 14px !important;
}
.demo-stock {
  font-size: 12px;
}
.detail-source {
  font-size: 12px;
}
.form-field label {
  font-size: 14px;
}
.form-field input {
  font-size: 14px;
}
.consent {
  font-size: 14px;
}
.small-note {
  font-size: 13px;
}
@media (max-width: 1150px) and (min-width: 701px) {
  .nav-row nav {
    font-size: 12px;
    gap: 20px;
  }
  .nav-caption {
    display: none;
  }
  .book-author {
    font-size: 11px;
  }
  .book-info h3 {
    font-size: 16px;
  }
  .book-badge {
    font-size: 8px;
  }
  .book-prices strong {
    font-size: 14px;
  }
  .book-prices del {
    font-size: 10px;
  }
  .hero-copy > p {
    font-size: 14px;
  }
  .hero-kicker {
    font-size: 11px;
  }
  .hero-footnote {
    font-size: 10px;
  }
  .category-copy h3 {
    font-size: 15px;
  }
  .category-copy p {
    font-size: 10px;
  }
  .category-arrow {
    display: none;
  }
  .header-search input {
    font-size: 12px;
  }
  .product-description {
    font-size: 12px;
  }
  .product-add {
    font-size: 12px !important;
  }
  .book-category {
    font-size: 10px;
  }
  .source-note {
    font-size: 11px;
  }
  .catalog-book-grid .book-info h3 {
    font-size: 16px;
  }
  .catalog-book-grid .book-author {
    font-size: 11px;
  }
}
@media (max-width: 700px) {
  .hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .hero-copy {
    min-width: 0;
  }
  .hero-scene {
    justify-self: center;
    margin-inline: 0;
    left: auto;
    translate: none;
  }
  .hero-kicker {
    font-size: 11px;
  }
  .hero-copy > p {
    font-size: 13px;
  }
  .hero-slider .eyebrow {
    font-size: 10px;
  }
  .hero-slider a {
    font-size: 14px;
  }
  .hero-bottom-line {
    font-size: 9px;
  }
  .header-search input {
    font-size: 12px;
  }
  .eyebrow {
    font-size: 11px;
  }
  .category-copy h3 {
    font-size: 15px;
  }
  .category-copy p {
    font-size: 10px;
  }
  .taxonomy-note {
    font-size: 9px;
  }
  .book-category {
    font-size: 10px;
  }
  .book-info h3 {
    font-size: 16px;
  }
  .book-author {
    font-size: 11px;
    min-height: 22px;
  }
  .book-badge {
    font-size: 8px;
  }
  .book-prices strong {
    font-size: 14px;
  }
  .book-prices del {
    font-size: 10px;
  }
  .source-note {
    font-size: 10px;
    line-height: 1.9;
  }
  .demo-inline {
    font-size: 10px;
  }
  .review-card figcaption strong {
    font-size: 12px;
  }
  .review-card figcaption small {
    font-size: 9px;
  }
  .review-section > div > p {
    font-size: 12px;
  }
  .review-source {
    font-size: 10px;
  }
  .service-grid h3 {
    font-size: 14px;
  }
  .service-grid p {
    font-size: 11px;
  }
  .footer-top > div > h3 {
    font-size: 13px;
  }
  .footer-top > div:not(.footer-intro):not(.footer-letter) > a {
    font-size: 12px;
  }
  .footer-intro > p {
    font-size: 12px;
  }
  .footer-more {
    font-size: 11px;
  }
  .footer-bottom {
    font-size: 9px;
  }
  .catalog-notice {
    font-size: 10px;
  }
  .catalog-book-grid .book-info h3 {
    font-size: 16px;
  }
  .catalog-book-grid .book-author {
    font-size: 11px;
  }
  .native-select {
    font-size: 12px;
  }
  .catalog-search input {
    font-size: 12px;
  }
  .results-heading > p {
    font-size: 12px;
  }
  .filter-check {
    font-size: 13px;
  }
  .product-description {
    font-size: 13px;
  }
  .detail-author {
    font-size: 12px;
  }
  .product-info > .small-note {
    font-size: 10px;
  }
  .product-add {
    font-size: 12px !important;
  }
  .product-meta > div {
    font-size: 12px;
  }
  .detail-source,
  .demo-stock {
    font-size: 11px;
  }
  .form-field label {
    font-size: 12px;
  }
  .form-field input {
    font-size: 13px;
  }
  .consent {
    font-size: 12px;
  }
  .small-note {
    font-size: 12px;
  }
  .book-list .book-info h3 {
    font-size: 18px;
  }
  .book-list .book-author {
    font-size: 11px;
  }
  .book-list .book-badge {
    font-size: 7px;
  }
  .bag-button {
    font-size: 12px;
  }
}
/* Supporting copy stays quiet while retaining legibility on the warm paper surfaces. */
.filter-fields fieldset {
  min-width: 0;
}
.filter-fields legend {
  float: none;
  display: block;
  padding: 0;
}
.book-front > a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
.checkout-line img {
  height: auto !important;
  aspect-ratio: 1;
}
.form-field label,
.contact-form label {
  color: #65715b;
}
.eyebrow {
  color: #67704e;
}
.browser-chrome span {
  color: #657253;
}
.improvements-grid article > span {
  color: #6b8053;
}
.hero-copy > p,
.hero-kicker,
.hero-footnote,
.hero-bottom-line,
.category-copy p,
.taxonomy-note,
.book-category,
.book-author,
.source-note,
.small-note,
.nav-caption,
.product-description,
.detail-author,
.product-subtitle,
.detail-source,
.product-info > .small-note,
.product-meta > div,
.page-intro > p,
.filter-check,
.results-heading > p,
.review-section > div > p,
.review-card figcaption small,
.review-source,
.service-grid p,
.catalog-notice,
.demo-inline {
  color: #65715b;
}
.product-prices del,
.book-prices del,
.detail-prices del {
  color: #747960;
}
.filter-fields .small-note,
.range-label,
.range-values,
.active-filters {
  color: #647055;
}
.bestseller-copy > p,
.bestseller-copy .ranking-note,
.ranked-book .eyebrow,
.discovery-copy > p,
.recommendation p,
.about-preview-copy p {
  color: #627052;
}
.product-description-panel > p,
.source-detail,
.demo-banner,
.demo-banner p,
.no-payment p,
.contact-info p,
.contact-form > .small-note,
.about-values > div > p,
.value-list p,
.policy-page > p,
.presentation-intro p,
.improvements-grid p,
.benefits-section p,
.benefits-section li,
.presentation-boundaries p {
  color: #627051;
}
.presentation-hero .eyebrow,
.presentation-label {
  color: #c1cda8;
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *:before,
  *:after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Native WordPress/WooCommerce adaptation of the original Dar Hajer design. */
/* Constrain all three cart cells; WooCommerce's implicit mobile grid columns can overflow in RTL. */
@media(max-width:700px){.dar-hajer table.wc-block-cart-items{width:100%;table-layout:fixed;border-spacing:0}.dar-hajer .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row{grid-template-columns:64px minmax(0,1fr) max-content;column-gap:12px}.dar-hajer .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image{grid-column:1/2;padding-inline:0}.dar-hajer .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product{grid-column:2/3;min-width:0;overflow-wrap:anywhere}.dar-hajer .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total{grid-column:3/4;min-width:0;max-width:80px}}
.dar-hajer .wc-block-components-button{background:var(--green);color:#fffdf6;border:1px solid var(--green);border-radius:3px;font-family:var(--font-plex);font-size:14px;padding:13px 22px}.dar-hajer .wc-block-components-button:hover{background:#3e5544;color:white}.dar-hajer .wc-block-components-title,.dar-hajer .wc-block-cart__totals-title{font-family:var(--font-editorial);font-size:27px}.dar-hajer .wc-block-components-form .wc-block-components-text-input input,.dar-hajer .wc-block-components-combobox .components-combobox-control__input{border-color:#b8c4ae;background:white;color:var(--ink)}.dar-hajer .wc-block-cart,.dar-hajer .wc-block-checkout{font-size:14px}.dar-hajer .wc-block-components-totals-item{padding-block:13px}.dar-hajer .wc-block-cart-items__row{border-bottom:1px solid var(--border)}.dar-hajer .wc-block-components-product-name{color:var(--green);font-weight:500}.dar-hajer .wc-block-components-quantity-selector{border-color:#bbc6b0}.dar-hajer .wc-block-components-checkout-step__title{line-height:1.6}.dar-hajer .wc-block-components-checkout-return-to-cart-button{color:var(--green)}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:50px;padding-block:65px 45px}.admin-bar .site-header{top:32px}@media(max-width:782px){.admin-bar .site-header{top:46px}}@media(max-width:700px){.footer-grid{grid-template-columns:1fr 1fr;gap:30px 24px;padding-block:40px}.footer-grid>div:first-child{grid-column:1/-1}}
.dh-cart-dialog{width:min(460px,94vw)}.dh-mini-cart{padding-top:20px}.dh-mini-cart ul{list-style:none;margin:0;padding:0}.dh-mini-cart li{position:relative;padding:16px 25px 16px 0;border-bottom:1px solid var(--border);min-height:100px;font-size:14px}.dh-mini-cart li img{width:65px;height:75px;object-fit:contain;float:left;margin-inline-start:15px}.dh-mini-cart li .remove{position:absolute;right:0;top:18px;font-size:21px;color:#a33f35}.dh-mini-cart .quantity{display:block;font-size:12px;color:#6a745f}.dh-mini-cart .total{display:flex;justify-content:space-between;padding-block:20px}.dh-mini-cart .buttons{display:flex;gap:10px;flex-wrap:wrap}.dh-mini-cart .button{display:inline-block;padding:12px 18px;background:#e8e4d8;font-size:13px}.dh-mini-cart .checkout{background:var(--green);color:#fff}
[hidden]{display:none!important}button,a,input,select,textarea{touch-action:manipulation}button{color:inherit}.dh-icon-button{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;padding:7px;min-width:38px;min-height:38px}.header-search input{min-width:0;flex:1;width:100%;color:var(--ink)}.bag-button{display:inline-flex;align-items:center}.brand img{flex-shrink:0}.dh-prelaunch{padding:7px 20px;background:#eee4ce;color:#5c4b28;font-size:12px;text-align:center}.dh-menu{list-style:none;padding:0;margin:0;display:flex;gap:28px;height:100%;align-items:center}.dh-menu li{position:relative}.dh-menu .sub-menu{display:none;position:absolute;top:100%;inset-inline-start:0;background:var(--background);padding:15px;min-width:180px;list-style:none;box-shadow:0 6px 18px #263c3020}.dh-menu li:hover>.sub-menu,.dh-menu li:focus-within>.sub-menu{display:block}.dh-menu .current-menu-item>a{border-bottom:2px solid var(--green)}.dh-mobile-dialog{position:fixed;inset:0 0 0 auto;margin:0;height:100%;max-height:100%;width:min(360px,92vw);max-width:100%;border:0;padding:25px;background:var(--background);color:var(--ink)}.dh-mobile-dialog::backdrop{background:#17261eb3}.dh-dialog-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--border)}.dh-dialog-heading h2{font-family:var(--font-editorial);font-size:30px}.dh-mobile-dialog nav{display:flex;flex-direction:column;padding-block:16px}.dh-mobile-dialog nav a{padding:14px;border-bottom:1px solid var(--border)}.dh-mobile-dialog:focus{outline:none}.dh-status{position:fixed;inset:auto auto 20px 20px;z-index:100;background:var(--green);color:white;padding:10px 20px;border-radius:4px;max-width:calc(100vw - 40px);font-size:13px;pointer-events:none}.scene-book>a{display:block;width:100%;height:100%;position:relative}.scene-book img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.dh-empty-book{position:absolute;width:210px;height:290px;left:150px;top:30px;padding:26px;background:#314b3b;color:#e4d5ab;transform:rotate(-5deg);box-shadow:8px 15px 30px #263c3030;border:5px double #b6a273;display:flex;flex-direction:column;gap:24px;align-items:center;justify-content:center}.dh-empty-book span{font-family:var(--font-editorial);font-size:32px}.dh-empty-book strong{text-align:center;font-weight:400;font-size:19px}.category-0{background:#e6e9dc}.category-1{background:#eee5da}.category-2{background:#e6e5de}.category-3{background:#ece0d7}.book-info h2{font-size:17px;line-height:1.6;margin-top:4px;font-family:var(--font-plex)}.book-art-link>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.book-art .wish-button{border:0;display:grid;place-items:center;min-width:32px;min-height:32px;padding:5px}.wish-button.saved svg{fill:currentColor}.book-bottom .quick-add{display:inline-flex;align-items:center;justify-content:center;padding:4px!important;min-height:32px!important;background:transparent!important;color:var(--ink)!important;border:1px solid #b4bca9!important}.book-bottom .quick-add:hover{background:var(--green)!important;color:#fff!important}.book-bottom .added_to_cart{font-size:11px;text-decoration:underline}.book-prices{gap:7px;font-weight:500;font-size:14px;line-height:1.7}.book-prices ins,.woocommerce ins{text-decoration:none}.book-prices del{font-size:11px}.woocommerce-Price-currencySymbol{margin-inline-start:3px}.dh-quote{font-family:serif;font-size:80px;line-height:1;color:#8e9b7e;margin-top:30px}.dh-interest{border:1px solid var(--border);border-radius:4px;padding:9px 14px;font-size:12px}.dh-interest.is-active{background:var(--green);color:white}.dh-interest-result{width:100%}.recommend-cover img,.rank-cover img{width:100%;height:100%;object-fit:contain}.dh-empty-catalog{background:var(--ivory);padding:50px;text-align:center;border:1px solid var(--border)}.dh-empty-catalog h3{font-family:var(--font-editorial);font-size:32px}.dh-empty-catalog p{margin:10px 0 22px}.site-footer .footer-grid h2{font-size:14px;margin-bottom:14px;color:#f3f1e8}.footer-grid>div>a{display:block;margin-bottom:8px;font-size:12px}.footer-grid>div>a.brand{display:flex}.footer-grid p{font-size:12px}.dh-page{min-height:45vh}.dh-page>p{margin-block:18px;max-width:85ch}.dh-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.dh-feature-grid article{padding:28px;background:var(--ivory);border:1px solid var(--border)}.dh-feature-grid h3{font-size:20px;margin:10px 0}.dh-feature-grid p{font-size:13px;color:#626e60}.dh-feature-grid span{color:var(--gold)}.dh-honey{position:absolute;inset-inline-start:-10000px;width:1px;height:1px;overflow:hidden}.dh-article{padding:25px 0;border-bottom:1px solid var(--border)}
.wc-store-content{padding-block:38px 75px}.woocommerce .woocommerce-breadcrumb{font-size:12px;color:#697360;margin-bottom:26px}.woocommerce .woocommerce-breadcrumb a{text-decoration:underline}.dh-filter-panel{border:1px solid var(--border);background:#f5f2ea;margin-bottom:20px;padding:15px 20px}.dh-filter-panel>summary{cursor:pointer;display:flex;align-items:center;gap:14px;font-size:14px;min-height:25px;list-style:revert}.dh-filter-form{display:grid;grid-template-columns:2fr 1.3fr 1.3fr 1fr auto auto;gap:14px;align-items:end;margin-top:20px}.dh-filter-form label{display:flex;flex-direction:column;font-size:12px;gap:5px;min-width:0}.dh-filter-form input,.dh-filter-form select{width:100%;min-width:0;border:1px solid #cbd1c3;padding:9px;background:var(--background);height:43px}.dh-filter-form .primary-link{min-height:43px;padding:8px 18px}.dh-filter-form .text-link{font-size:12px;white-space:nowrap}.dh-view-controls{display:flex;justify-content:flex-end;gap:8px;margin-bottom:18px}.dh-view-controls button{background:transparent;padding:6px 13px;border:1px solid var(--border);font-size:12px}.dh-view-controls button[aria-pressed=true]{background:var(--green);color:white}.woocommerce .woocommerce-result-count{font-size:12px;color:#65705d;margin-block:12px}.woocommerce .woocommerce-ordering select{max-width:100%;padding:10px;border:1px solid var(--border);background:#fff;font-size:12px}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px;padding:0;margin:28px 0;clear:both}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;min-width:0;list-style:none}.woocommerce ul.products li.product a img{margin:0}.woocommerce ul.products li.product .book-info h2{font-size:17px;padding:0}.woocommerce ul.products li.product .button{margin:0}.woocommerce nav.woocommerce-pagination ul{border:0;display:inline-flex;gap:8px}.woocommerce nav.woocommerce-pagination ul li{border:1px solid var(--border);border-radius:3px}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{padding:13px;min-width:40px}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--green);color:white}.dh-list-view.woocommerce ul.products{grid-template-columns:1fr!important}.dh-list-view ul.products .book-card{display:grid;grid-template-columns:190px 1fr;gap:30px;align-items:center}.dh-list-view ul.products .book-info{padding:0}.dh-list-view ul.products .book-art{aspect-ratio:1}.dh-list-view ul.products .book-bottom{max-width:400px}.woocommerce div.product{padding-top:10px}.woocommerce div.product .product_title{font-family:var(--font-editorial);font-size:45px;line-height:1.5;margin-bottom:8px}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--green);font-size:24px;margin:18px 0}.woocommerce div.product p.price del{font-size:16px;opacity:.55}.woocommerce div.product div.images{margin-bottom:35px}.woocommerce div.product div.images img{background:#f2eee5;object-fit:contain;max-height:570px}.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:10px;margin-top:15px}.woocommerce div.product div.images .flex-control-thumbs li{width:80px}.woocommerce div.product div.images .flex-control-thumbs img{height:80px;object-fit:contain;border:1px solid var(--border);padding:5px}.woocommerce div.product .woocommerce-product-details__short-description{font-size:14px;color:#68735f;line-height:2}.woocommerce div.product form.cart{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-block:25px}.woocommerce div.product form.cart .variations{width:100%}.woocommerce div.product form.cart .variations select{padding:10px;width:100%;max-width:100%}.woocommerce div.product form.cart .woocommerce-variation-add-to-cart{display:flex;gap:15px;align-items:center}.woocommerce .quantity .qty{width:75px;padding:10px;min-height:44px;border:1px solid var(--border);background:white}.woocommerce div.product .summary>.wish-button{position:static!important;width:40px!important;height:40px!important;background:#eee9df;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center}.dh-book-details{margin-top:20px;border-top:1px solid var(--border);padding-top:15px;display:flex;gap:35px;flex-wrap:wrap}.dh-book-details dt{font-size:11px;color:#77806d}.dh-book-details dd{margin:0;font-size:14px}.woocommerce div.product .product_meta{font-size:12px;border-top:1px solid var(--border);padding-top:15px}.woocommerce div.product .product_meta>span{display:block;margin-bottom:6px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:#eeeade;border:1px solid var(--border);border-radius:3px}.woocommerce div.product .woocommerce-tabs ul.tabs li:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none}.woocommerce div.product .woocommerce-tabs .panel{line-height:2;font-size:14px}.woocommerce div.product .woocommerce-tabs .panel h2{font-family:var(--font-editorial);font-size:30px;margin-bottom:18px}.woocommerce .related>h2{font-family:var(--font-editorial);font-size:36px;margin:40px 0 20px}.woocommerce span.onsale{background:var(--green);font-size:11px;min-width:48px;min-height:48px;line-height:48px;padding:0}.woocommerce .stock.in-stock{color:#4d6843}.woocommerce .stock.out-of-stock{color:#9b3e31}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{border-radius:3px;background:#e8e4d8;color:var(--green);font-weight:500;font-size:14px;padding:14px 22px;line-height:1.5;white-space:normal}.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce #respond input#submit.alt{background:var(--green);color:#fffdf6}.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:#3e5544}.woocommerce button.button:disabled{opacity:.5}.woocommerce-error,.woocommerce-info,.woocommerce-message{background:#eeeee4;color:#344633;border-top-color:#7d906d;line-height:1.8;font-size:14px;padding-block:17px}.woocommerce-error{border-color:#a74737}.woocommerce-error:before{color:#a74737}.woocommerce-message:before,.woocommerce-info:before{color:#547047}.woocommerce-notices-wrapper{margin-bottom:25px}.woocommerce table.shop_table{border-color:var(--border);border-radius:3px;border-collapse:collapse}.woocommerce table.shop_table th{font-weight:500;background:#f0ede4}.woocommerce table.shop_table td,.woocommerce table.shop_table th{padding:14px 12px;border-color:var(--border);font-size:13px}.woocommerce table.shop_table img{max-width:85px;width:65px;height:75px;object-fit:contain}.woocommerce-cart table.cart td.actions .coupon .input-text{width:160px;padding:12px;border-color:var(--border)}.woocommerce a.remove{color:#a44134!important}.woocommerce a.remove:hover{background:#a44134}.woocommerce .cart-collaterals .cart_totals h2{font-family:var(--font-editorial);font-size:30px;margin-bottom:15px}.woocommerce form .form-row label{font-size:13px;margin-bottom:5px;line-height:1.7}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{padding:12px;border:1px solid #c5cdbb;background:white;border-radius:3px;min-height:46px;color:var(--ink);line-height:1.5}.woocommerce form .form-row textarea{min-height:100px}.select2-container .select2-selection--single{height:46px;border-color:#c5cdbb;border-radius:3px}.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px;font-size:14px}.select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}.woocommerce-checkout h3{font-family:var(--font-editorial);font-size:29px;margin:20px 0}.woocommerce-checkout #payment{background:#eeeade}.woocommerce-checkout #payment div.payment_box{background:#e0e5d4;color:var(--ink)}.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#e0e5d4}.woocommerce-privacy-policy-text{font-size:12px;color:#5e6957;margin-bottom:16px}.woocommerce ul.order_details{display:flex;flex-wrap:wrap;gap:20px;padding:0;margin-block:25px}.woocommerce ul.order_details li{float:none;border-inline-end:1px solid var(--border);font-size:11px;padding:12px;margin:0;line-height:1.8}.woocommerce .woocommerce-customer-details address{border-color:var(--border);border-radius:3px;padding:20px;font-size:14px}.woocommerce .woocommerce-MyAccount-navigation{border:1px solid var(--border);background:var(--ivory)}.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:12px}.woocommerce-MyAccount-navigation li a{display:block;padding:10px;font-size:14px;border-bottom:1px solid var(--border)}.woocommerce-MyAccount-navigation li.is-active a{background:var(--green);color:white}.woocommerce-MyAccount-content p{margin-bottom:15px}.woocommerce form.login,.woocommerce form.register{border-color:var(--border)}.woocommerce .password-input{width:100%}.woocommerce form .show-password-input{top:12px}.contact-form input:not([type=hidden]),.contact-form textarea{width:100%;padding:12px;border:1px solid #c5cdbb;background:#fff;border-radius:3px}.contact-form textarea{min-height:150px}.contact-form label{font-size:13px;display:block;margin-block:14px 5px}.contact-form .primary-link{margin-top:20px}.woocommerce .wc-block-components-button{background:var(--green);color:white;border-radius:3px}.wc-block-cart,.wc-block-checkout{font-family:var(--font-plex)}.woocommerce .wc-block-components-title{font-family:var(--font-editorial)}
@media(min-width:1101px){.woocommerce div.product div.images{float:right;width:48%}.woocommerce div.product div.summary{float:left;width:46%}}
@media(max-width:1100px){.dh-filter-form{grid-template-columns:repeat(3,minmax(0,1fr))}.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}.dh-menu{gap:18px}.dh-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.dh-filter-form{grid-template-columns:1fr 1fr;gap:12px}.dh-filter-panel{padding:13px}.dh-filter-form label:first-child{grid-column:1/-1}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.woocommerce ul.products li.product .book-info h2{font-size:15px}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{float:none;width:100%;margin:8px 0}.woocommerce .woocommerce-ordering select{width:100%}.woocommerce div.product .product_title{font-size:35px}.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:100%}.woocommerce div.product div.images img{max-height:430px}.woocommerce div.product div.images .flex-control-thumbs li{width:65px}.woocommerce div.product div.images .flex-control-thumbs img{height:65px}.woocommerce div.product form.cart{gap:10px}.woocommerce div.product .woocommerce-tabs ul.tabs li{padding:4px 10px;font-size:12px}.woocommerce table.shop_table td,.woocommerce table.shop_table th{padding:12px 9px}.woocommerce-cart table.cart td.actions .coupon .input-text{width:48%}.woocommerce .woocommerce-MyAccount-navigation,.woocommerce .woocommerce-MyAccount-content{width:100%;float:none;margin-bottom:22px}.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{float:none;width:100%}.woocommerce ul.order_details{gap:5px}.woocommerce ul.order_details li{width:calc(50% - 5px)}.dh-feature-grid{grid-template-columns:1fr}.dh-empty-book{left:100px;top:0;width:150px;height:210px;gap:15px;padding:16px}.dh-empty-book strong{font-size:15px}.dh-list-view ul.products .book-card{grid-template-columns:100px 1fr;gap:15px}.dh-list-view ul.products .book-art .wish-button{top:4px;left:4px}.dh-list-view ul.products .book-author{font-size:10px}.dh-status{font-size:12px}.wc-store-content{padding-top:25px}.book-bottom .added_to_cart{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
