@font-face {
  font-family:Vazirmatn;
  src:url('fonts/Vazirmatn-Regular.woff2') format('woff2'),url('fonts/Vazirmatn-Regular.ttf') format('truetype');
  font-weight:400;
  font-style:normal;
  font-display:swap;
  unicode-range:U+0100-05FF,U+0700-1FFF,U+2C00-FB4F,U+FE00-FE6F,U+FF00-10FFFF
}

@font-face {
  font-family:Vazirmatn;
  src:url('fonts/Vazirmatn-Bold.woff2') format('woff2'),url('fonts/Vazirmatn-Bold.ttf') format('truetype');
  font-weight:700;
  font-style:normal;
  font-display:swap;
  unicode-range:U+0100-05FF,U+0700-1FFF,U+2C00-FB4F,U+FE00-FE6F,U+FF00-10FFFF
}

/* Smaller Persian/Arabic and Latin-1 faces; all other scripts keep the full fonts. */
@font-face{font-family:Vazirmatn;src:url('fonts/Vazirmatn-Regular-fa-ui.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0600-06FF,U+2000-2BFF,U+FB50-FDFF,U+FE70-FEFF}
@font-face{font-family:Vazirmatn;src:url('fonts/Vazirmatn-Bold-fa-ui.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0600-06FF,U+2000-2BFF,U+FB50-FDFF,U+FE70-FEFF}

:root {
  --ivory:#faf8f3;
  --paper:#fff;
  --ink:#252b29;
  --muted:#66706b;
  --teal:#185d55;
  --teal-dark:#10453f;
  --line:#dedfd6;
  --sand:#e9e1d4;
  --silver:#eceeea;
  --warm:#eee3d6;
  --danger:#a52e29;
  --focus:#0c766c;
  --space:24px;
  --radius:3px
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:auto
}

body {
  margin:0;
  background:var(--ivory);
  color:var(--ink);
  font-family:Vazirmatn,Arial,sans-serif;
  font-size:15px;
  line-height:1.85;
  text-align:right;
  -webkit-font-smoothing:antialiased
}

body,button,input,select,textarea {
  font-family:Vazirmatn,Arial,sans-serif
}

a {
  color:inherit;
  text-decoration:none
}

button,input,select,textarea {
  font-size:14px
}

button,a,input,select,textarea {
  touch-action:manipulation
}

button,a {
  -webkit-tap-highlight-color:transparent
}

button {
  cursor:pointer
}

img {
  display:block;
  max-width:100%;
  height:auto
}

svg {
  width:23px;
  height:23px;
  flex-shrink:0
}

h1,h2,h3,h4,p {
  margin-top:0
}

h1,h2,h3,h4 {
  line-height:1.6;
  font-weight:700
}

h1 {
  font-size:34px;
  letter-spacing:-1px
}

h2 {
  font-size:25px;
  letter-spacing:-.5px
}

h3 {
  font-size:17px
}

p {
  margin-bottom:16px
}

.wrap {
  width:min(1280px,calc(100% - 80px));
  margin-inline:auto
}

.section {
  padding-block:55px
}

.muted {
  color:var(--muted)
}

.eyebrow {
  font-size:11px;
  letter-spacing:1.4px;
  color:var(--teal);
  margin-bottom:12px;
  font-weight:700
}

.eyebrow[dir=ltr] {
  text-align:right;
  letter-spacing:2px
}

.text-link {
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  font-size:13px;
  border-bottom:1px solid transparent;
  color:var(--teal);
  font-weight:700
}

.text-link:hover {
  border-bottom-color:var(--teal)
}

.text-link svg {
  width:20px
}

.button,button.button,a.button,input.button,.woocommerce #respond input#submit {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  background:var(--teal);
  color:#fff;
  border:1px solid var(--teal);
  border-radius:var(--radius);
  min-height:48px;
  padding:11px 24px;
  font-size:14px;
  line-height:1.6;
  font-weight:700;
  text-align:center;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease
}

.button:hover,button.button:hover,a.button:hover,input.button:hover {
  background:var(--teal-dark);
  border-color:var(--teal-dark);
  color:#fff
}

.button:disabled,.button.disabled {
  opacity:.5;
  cursor:not-allowed
}

.button.secondary {
  background:transparent;
  color:var(--teal)
}

.icon-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  background:none;
  border:0;
  color:var(--ink);
  padding:10px;
  flex-shrink:0
}

.icon-button:hover {
  background:#edf0e9;
  border-radius:3px
}

:focus-visible {
  outline:3px solid var(--focus);
  outline-offset:4px
}

.skip-link {
  position:fixed;
  top:8px;
  right:8px;
  z-index:9999;
  transform:translateY(-160%);
  background:var(--teal);
  color:white;
  padding:12px 20px
}

.skip-link:focus {
  transform:translateY(0)
}

[hidden] {
  display:none!important
}

.demo-strip {
  background:#e9ede5;
  color:#3d4b44;
  text-align:center;
  font-size:10px;
  padding:5px 12px;
  line-height:1.8
}

.site-header {
  background:var(--ivory);
  border-bottom:1px solid var(--line);
  position:relative;
  z-index:20
}

.header-main {
  height:97px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px
}

.wordmark {
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  line-height:1.1;
  min-width:90px
}

.wordmark strong {
  font-size:39px;
  letter-spacing:-2px
}

.wordmark>span {
  font-family:Arial,sans-serif;
  font-size:9px;
  letter-spacing:4px;
  margin-top:8px;
  padding-left:4px
}

.brand-dot {
  color:var(--teal)
}

.desktop-nav {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:32px;
  flex:1
}

.desktop-nav a {
  font-size:13px;
  min-height:44px;
  display:flex;
  align-items:center;
  border-bottom:1px solid transparent
}

.desktop-nav a:hover {
  color:var(--teal);
  border-color:var(--teal)
}

.header-actions {
  display:flex;
  align-items:center;
  gap:9px
}

.bag-button {
  display:inline-flex;
  align-items:center;
  min-width:48px;
  height:44px;
  position:relative;
  padding:8px
}

.cart-count {
  min-width:17px;
  height:17px;
  border-radius:50%;
  color:var(--teal);
  background:#e6ece3;
  font-size:10px;
  line-height:17px;
  text-align:center;
  position:absolute;
  left:-3px;
  top:2px
}

.mobile-menu-toggle {
  display:none
}

.header-search {
  padding-block:22px;
  border-top:1px solid var(--line)
}

.header-search>label {
  display:block;
  font-size:12px;
  margin-bottom:10px
}

.search-input-row {
  display:flex;
  gap:10px;
  max-width:700px
}

.search-input-row input {
  flex:1;
  min-width:0
}

.mobile-nav {
  padding:14px 24px;
  border-top:1px solid var(--line)
}

.mobile-nav a {
  display:block;
  padding:12px 0;
  border-bottom:1px solid var(--line)
}

.home-hero {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  min-height:492px;
  align-items:center;
  gap:55px;
  padding-block:38px 40px
}

.hero-copy {
  padding-right:35px;
  padding-block:25px
}

.hero-copy h1 {
  font-size:43px;
  line-height:1.8;
  margin-bottom:20px;
  letter-spacing:-1.4px
}

.hero-copy h1 span {
  font-weight:400
}

.hero-description {
  color:var(--muted);
  line-height:2.2;
  font-size:14px
}

.hero-actions {
  display:flex;
  align-items:center;
  gap:25px;
  margin-top:25px
}

.hero-note {
  display:flex;
  align-items:center;
  gap:12px;
  font-size:10px;
  color:var(--muted);
  margin-top:30px
}

.tiny-rule {
  width:28px;
  height:1px;
  background:#a4b5ab
}

.hero-visual {
  position:relative;
  min-height:414px;
  display:grid;
  grid-template-columns:1.5fr 1fr;
  align-items:center;
  gap:14px;
  padding-left:18px
}

.hero-main-photo {
  position:relative;
  height:414px;
  background:var(--silver);
  overflow:hidden
}

.hero-main-photo>img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:32% center
}

.photo-caption {
  position:absolute;
  bottom:18px;
  right:20px;
  left:20px;
  color:#fff;
  display:flex;
  flex-direction:column;
  text-shadow:0 1px 5px #0008
}

.photo-caption span:first-child {
  font:10px Arial,sans-serif;
  letter-spacing:2px;
  margin-bottom:8px
}

.photo-caption span:last-child {
  font-size:12px
}

.hero-small-photo {
  background:var(--warm);
  margin-top:75px;
  position:relative;
  display:block
}

.hero-small-photo>img {
  height:245px;
  width:100%;
  object-fit:cover
}

.hero-small-photo>span {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:10px 12px;
  font-size:10px
}

.hero-small-photo svg {
  width:17px
}

.vertical-label {
  position:absolute;
  left:-14px;
  top:6px;
  writing-mode:vertical-rl;
  font:8px Arial,sans-serif;
  letter-spacing:2px;
  color:var(--muted)
}

.category-strip {
  border-block:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-block:14px
}

.category-strip>span {
  font-size:11px;
  color:var(--muted)
}

.category-strip a {
  font-size:12px;
  min-height:44px;
  display:flex;
  align-items:center;
  white-space:nowrap
}

.category-strip a:hover {
  color:var(--teal)
}

.section-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:30px
}

.section-heading h2 {
  margin-bottom:0
}

.section-heading .eyebrow {
  margin-bottom:6px
}

.product-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:32px 23px
}

.product-card {
  min-width:0
}

.product-image {
  display:block;
  position:relative;
  aspect-ratio:4/5;
  background:#e8e8e2;
  overflow:hidden
}

.product-image>img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease
}

.product-image:hover>img {
  transform:scale(1.025)
}

.product-badge {
  position:absolute;
  top:12px;
  right:12px;
  background:#fffef4ed;
  padding:4px 10px;
  font-size:10px;
  color:#4e5a50
}

.product-badge.sold-out {
  background:#e7e7e0e8;
  color:#555
}

.image-link {
  position:absolute;
  left:12px;
  bottom:12px;
  width:34px;
  height:34px;
  background:#fffffff0;
  color:var(--teal);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transition:opacity .2s
}

.image-link svg {
  width:18px
}

.product-image:hover .image-link,.product-image:focus-visible .image-link {
  opacity:1
}

.product-card-info {
  padding-top:13px
}

.card-line {
  color:var(--muted);
  font-size:10px;
  margin-bottom:4px
}

.product-card h3 {
  font-size:13px;
  font-weight:400;
  margin-bottom:7px;
  line-height:1.9
}

.product-card h3 a:hover {
  color:var(--teal)
}

.card-bottom {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  flex-wrap:wrap
}

.price {
  font-size:13px;
  color:var(--ink);
  font-weight:700
}

.woocommerce-Price-currencySymbol {
  font-size:10px;
  font-weight:400;
  margin-inline-start:4px;
  color:var(--muted)
}

.card-variant {
  font-size:9px;
  color:var(--muted)
}

.line-editorial {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px;
  margin-block:20px 55px
}

.line-panel {
  display:grid;
  grid-template-columns:1fr 1.1fr;
  align-items:center;
  min-width:0;
  background:var(--silver)
}

.accessory-panel {
  background:var(--warm)
}

.line-photo {
  height:280px;
  overflow:hidden
}

.line-photo img {
  height:100%;
  width:100%;
  object-fit:cover
}

.line-panel>div:last-child {
  padding:25px
}

.line-panel h2 {
  font-size:24px;
  margin-bottom:9px
}

.line-panel p {
  font-size:12px;
  color:var(--muted);
  line-height:2
}

.line-panel .eyebrow {
  font-size:8px;
  letter-spacing:1.5px
}

.service-strip {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:35px;
  border-block:1px solid var(--line);
  padding-block:30px;
  margin-bottom:55px
}

.service-strip>a {
  display:flex;
  align-items:center;
  gap:16px
}

.service-strip>a>svg {
  width:32px;
  height:32px;
  color:var(--teal)
}

.service-strip strong {
  display:block;
  font-weight:400;
  font-size:13px
}

.service-strip small {
  display:block;
  font-size:10px;
  color:var(--muted);
  margin-top:5px
}

.site-footer {
  background:#edeee7;
  border-top:1px solid #dedfd8;
  padding-top:45px
}

.footer-grid {
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr;
  gap:65px;
  padding-bottom:40px
}

.footer-brand {
  align-items:flex-start;
  margin-bottom:20px
}

.footer-brand strong {
  font-size:34px
}

.footer-grid p {
  font-size:12px;
  line-height:2.2
}

.footer-grid h2 {
  font-size:13px;
  margin-bottom:17px;
  font-weight:700
}

.footer-grid>div>a:not(.wordmark) {
  display:block;
  font-size:11px;
  min-height:35px;
  line-height:35px;
  color:#59635d
}

.footer-grid>div>a:hover {
  color:var(--teal)
}

.footer-bottom {
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding-block:17px;
  border-top:1px solid #d6d9ce;
  font-size:10px;
  color:var(--muted)
}

.demo-controls {
  position:relative
}

.demo-controls summary {
  cursor:pointer;
  min-height:28px
}

.demo-controls>div {
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  padding:14px;
  background:#fff
}

.demo-controls a {
  text-decoration:underline;
  min-height:35px
}

.breadcrumbs,.woocommerce-breadcrumb {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  font-size:10px;
  color:var(--muted);
  margin-bottom:28px;
  line-height:2
}

.breadcrumbs a:hover,.woocommerce-breadcrumb a:hover {
  color:var(--teal)
}

.catalogue {
  padding-block:25px 70px
}

.catalogue-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:30px;
  padding-block:15px 28px
}

.catalogue-heading h1 {
  font-size:32px;
  margin-bottom:12px
}

.catalogue-heading p:last-child {
  color:var(--muted);
  font-size:13px;
  margin-bottom:0
}

.collection-mark {
  width:85px;
  height:85px;
  border:1px solid #c8d4c9;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#729085;
  margin-left:15px
}

.collection-mark svg {
  width:36px;
  height:36px
}

.line-tabs {
  display:flex;
  gap:30px;
  border-bottom:1px solid var(--line);
  overflow-x:auto
}

.line-tabs a {
  font-size:12px;
  min-height:50px;
  display:flex;
  align-items:center;
  white-space:nowrap;
  border-bottom:2px solid transparent
}

.line-tabs a.active {
  color:var(--teal);
  border-color:var(--teal);
  font-weight:700
}

.catalogue-toolbar {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-block:20px
}

.result-count {
  font-size:11px;
  color:var(--muted)
}

.filter-trigger {
  display:none;
  align-items:center;
  gap:8px;
  background:transparent;
  border:1px solid var(--line);
  padding:8px 12px;
  min-height:44px
}

.filter-active-dot {
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--teal)
}

.catalogue-layout {
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:32px;
  align-items:start
}

.catalogue .product-grid {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:29px 20px
}

.filter-panel {
  border-left:1px solid var(--line);
  padding-left:24px
}

.filter-panel-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px
}

.filter-panel-heading h2 {
  font-size:14px;
  margin-bottom:0
}

.close-filters {
  display:none
}

.filter-field {
  margin-bottom:18px
}

.filter-field label,.price-filter legend {
  display:block;
  font-size:11px;
  color:#4f5953;
  margin-bottom:6px
}

.filter-field select,.filter-field input {
  width:100%;
  padding:8px 10px;
  font-size:11px;
  min-height:43px;
  background:transparent
}

.filter-field input::placeholder {
  color:#7c827e;
  font-size:10px
}

input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea {
  border:1px solid #bec6bd;
  border-radius:var(--radius);
  padding:10px 12px;
  background:#fffefa;
  color:var(--ink);
  min-height:46px;
  line-height:1.7;
  max-width:100%
}

select {
  cursor:pointer
}

textarea {
  min-height:110px;
  resize:vertical
}

fieldset {
  min-width:0
}

.price-filter {
  border:0;
  padding:0;
  margin:0 0 18px
}

.price-fields {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px
}

.price-fields label {
  font-size:10px;
  color:var(--muted);
  display:block
}

.price-fields input {
  width:100%;
  font-size:11px!important;
  padding:9px!important
}

.filter-checkbox {
  display:flex;
  gap:9px;
  align-items:center;
  font-size:11px;
  padding-block:9px;
  margin-bottom:14px;
  min-height:44px;
  cursor:pointer
}

.filter-checkbox input {
  width:16px;
  height:16px;
  accent-color:var(--teal)
}

.filter-actions {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  margin-top:20px
}

.filter-actions .button {
  width:100%;
  font-size:12px
}

.filter-actions .text-link {
  font-size:10px
}

.pagination {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  margin-top:40px
}

.page-numbers {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:44px;
  border:1px solid var(--line);
  font-size:12px;
  padding:4px 10px
}

.page-numbers.current {
  background:var(--teal);
  color:#fff;
  border-color:var(--teal)
}

.state-panel {
  padding:70px 25px;
  text-align:center;
  min-height:300px;
  background:#f1f2eb;
  margin-block:25px
}

.state-panel h1,.state-panel h2 {
  font-size:25px
}

.state-panel p {
  color:var(--muted);
  font-size:13px
}

.state-panel .eyebrow {
  text-align:center
}

.loading-dot {
  display:block;
  width:28px;
  height:28px;
  margin:0 auto 20px;
  border:2px solid #c0cfc6;
  border-top-color:var(--teal);
  border-radius:50%;
  animation:spin 1s linear infinite
}

@keyframes spin {
  to {
    transform:rotate(360deg)
  }

}

.filter-backdrop {
  display:none
}

.page-shell {
  padding-block:27px 65px;
  min-height:500px
}

.prose {
  max-width:800px;
  margin-inline:auto
}

.prose>h1 {
  font-size:32px;
  border-bottom:1px solid var(--line);
  padding-bottom:20px;
  margin-bottom:30px
}

.prose h2 {
  font-size:21px;
  margin-top:28px
}

.prose h3 {
  font-size:17px
}

.prose p,.prose li {
  font-size:14px;
  line-height:2.2
}

.prose ul,.prose ol {
  padding-right:23px
}

.page-content a:not(.button) {
  color:var(--teal);
  text-decoration:underline;
  text-underline-offset:4px
}

.page-content table {
  width:100%;
  border-collapse:collapse
}

.page-content th,.page-content td {
  padding:12px;
  border:1px solid var(--line);
  font-size:13px
}

.page-content .woocommerce a {
  text-decoration:none
}

.page-content .woocommerce .woocommerce-info a {
  text-decoration:underline
}

.woocommerce-cart .prose,.woocommerce-checkout .prose,.woocommerce-account .prose {
  max-width:none
}

.woocommerce-cart .prose>.eyebrow,.woocommerce-checkout .prose>.eyebrow {
  display:none
}

.commerce-shell {
  padding-block:30px 65px
}

.woocommerce-breadcrumb {
  display:block
}

.woocommerce-breadcrumb a {
  margin-inline:6px
}

.woocommerce-breadcrumb a:first-child {
  margin-right:0
}

div.product {
  position:relative
}

div.product::after {
  content:'';
  display:block;
  clear:both
}

div.product div.images {
  width:49%;
  float:right;
  margin-bottom:35px;
  position:relative
}

div.product div.summary {
  width:44%;
  float:left;
  margin-bottom:35px;
  padding-top:15px
}

.woocommerce-product-gallery__wrapper {
  margin:0
}

.woocommerce-product-gallery__image img {
  width:100%;
  height:auto;
  object-fit:cover
}

.woocommerce-product-gallery__trigger {
  position:absolute;
  left:14px;
  top:14px;
  z-index:3;
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#fffc;
  font-size:18px
}

.flex-control-thumbs {
  display:flex;
  gap:10px;
  list-style:none;
  margin:12px 0 0;
  padding:0
}

.flex-control-thumbs li {
  width:80px
}

.flex-control-thumbs img {
  cursor:pointer;
  border:1px solid transparent;
  opacity:.65
}

.flex-control-thumbs .flex-active {
  border-color:var(--teal);
  opacity:1
}

.flex-direction-nav {
  list-style:none;
  display:none
}

.summary .product_title {
  font-size:29px;
  margin-bottom:14px
}

.product-line {
  font-size:11px;
  margin-bottom:10px
}

.summary>.price {
  font-size:22px;
  border-bottom:1px solid var(--line);
  padding-bottom:20px;
  margin-bottom:20px
}

.summary>.price .woocommerce-Price-currencySymbol {
  font-size:13px
}

.woocommerce-product-details__short-description {
  color:var(--muted);
  font-size:13px;
  line-height:2.2
}

.summary .stock {
  font-size:12px;
  margin-block:18px
}

.stock.in-stock {
  color:var(--teal)
}

.stock.out-of-stock {
  color:#89502e
}

.summary form.cart {
  display:flex;
  flex-wrap:wrap;
  gap:13px;
  align-items:center;
  margin-block:22px
}

.summary form.variations_form {
  display:block
}

.summary form.cart .quantity {
  width:75px
}

.quantity .qty {
  width:75px;
  text-align:center;
  direction:ltr;
  min-height:48px
}

.summary form.cart .single_add_to_cart_button {
  flex:1
}

.summary table.variations {
  width:100%;
  border-collapse:collapse;
  margin-bottom:10px
}

.variations th {
  text-align:right;
  font-size:12px;
  padding-bottom:10px;
  white-space:nowrap
}

.variations td {
  padding-bottom:10px;
  padding-right:14px
}

.variations select {
  width:100%;
  min-height:48px
}

.reset_variations {
  font-size:10px;
  color:var(--teal);
  display:inline-flex;
  min-height:32px;
  align-items:center
}

.woocommerce-variation-price {
  margin-block:10px
}

.woocommerce-variation-availability p {
  margin-block:9px!important
}

.woocommerce-variation-add-to-cart {
  display:flex;
  gap:12px;
  align-items:center;
  margin-top:15px
}

.woocommerce-variation-description {
  font-size:12px;
  color:var(--muted)
}

.product_meta {
  border-top:1px solid var(--line);
  padding-top:18px;
  margin-top:25px;
  font-size:11px;
  color:var(--muted)
}

.product_meta>span {
  display:block;
  margin-bottom:5px
}

.product_meta .sku {
  direction:ltr;
  unicode-bidi:isolate;
  display:inline-block
}

.product_meta a {
  color:var(--teal)
}

.product-reassurance {
  padding-block:20px;
  border-top:1px solid var(--line);
  font-size:10px;
  color:var(--muted);
  display:flex;
  justify-content:space-between;
  gap:15px
}

.product-reassurance a {
  text-decoration:underline;
  text-underline-offset:4px
}

.woocommerce-tabs {
  clear:both;
  border-top:1px solid var(--line);
  padding-top:20px
}

.woocommerce-tabs .tabs {
  list-style:none;
  display:flex;
  gap:28px;
  padding:0;
  margin:0 0 25px;
  border-bottom:1px solid var(--line);
  overflow:auto
}

.woocommerce-tabs .tabs li {
  white-space:nowrap
}

.woocommerce-tabs .tabs a {
  display:flex;
  align-items:center;
  min-height:50px;
  font-size:13px;
  border-bottom:2px solid transparent
}

.woocommerce-tabs .tabs .active a {
  color:var(--teal);
  border-color:var(--teal)
}

.woocommerce-Tabs-panel {
  font-size:13px;
  max-width:900px;
  padding-bottom:20px
}

.woocommerce-Tabs-panel h2 {
  font-size:21px
}

.woocommerce-Tabs-panel p {
  line-height:2.2;
  color:#59635d
}

.woocommerce-product-attributes {
  border-collapse:collapse;
  width:100%
}

.woocommerce-product-attributes th,.woocommerce-product-attributes td {
  padding:12px 15px;
  border-bottom:1px solid var(--line);
  text-align:right;
  font-size:12px
}

.woocommerce-product-attributes th {
  width:170px;
  color:var(--muted);
  font-weight:400
}

.woocommerce-product-attributes td p {
  margin:0
}

.related.products {
  clear:both;
  margin-top:50px
}

.related.products>h2 {
  font-size:24px;
  margin-bottom:25px
}

ul.products {
  list-style:none;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
  padding:0;
  margin:0
}

ul.products li.product {
  min-width:0
}

ul.products .woocommerce-loop-product__title {
  font-size:13px;
  font-weight:400;
  margin:10px 0 6px
}

ul.products .price {
  display:block;
  margin-bottom:8px
}

ul.products li.product img {
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover
}

ul.products li.product .button {
  background:transparent;
  border:0;
  color:var(--teal);
  padding:0;
  min-height:35px;
  font-size:11px;
  justify-content:flex-start
}

ul.products li.product .onsale {
  display:none
}

.onsale {
  display:none
}

.woocommerce-message,.woocommerce-info,.woocommerce-error {
  list-style:none;
  margin:0 0 25px;
  padding:17px 20px;
  background:#eaf0e6;
  border-right:3px solid var(--teal);
  font-size:13px;
  line-height:2.1;
  clear:both
}

.woocommerce-error {
  background:#f6e9e5;
  border-color:var(--danger);
  color:#853b35
}

.woocommerce-message .button {
  float:left;
  min-height:35px;
  font-size:11px;
  padding:6px 15px;
  margin-right:12px
}

.woocommerce-error a,.woocommerce-info a,.woocommerce-message a {
  color:var(--teal);
  text-decoration:underline
}

.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button {
  text-decoration:none;
  color:#fff
}

.inline-variation-error {
  padding:10px 13px;
  color:var(--danger);
  background:#f8e9e4;
  border-right:2px solid var(--danger);
  font-size:12px;
  margin-bottom:12px
}

.woocommerce-notices-wrapper:empty {
  display:none
}

.woocommerce table.shop_table {
  border-collapse:collapse;
  width:100%;
  margin-bottom:24px;
  text-align:right
}

.woocommerce table.shop_table th {
  font-weight:700;
  font-size:12px;
  background:#efefe8;
  padding:13px 14px;
  border:0;
  border-bottom:1px solid var(--line)
}

.woocommerce table.shop_table td {
  font-size:13px;
  padding:16px 14px;
  vertical-align:middle;
  border:0;
  border-bottom:1px solid var(--line)
}

.woocommerce table.shop_table a {
  color:var(--ink)
}

.woocommerce-cart-form {
  width:65%;
  float:right
}

.cart-collaterals {
  width:31%;
  float:left
}

.cart-collaterals .cart_totals {
  background:#eeefe8;
  padding:24px
}

.cart-collaterals h2 {
  font-size:19px;
  margin-top:0
}

.cart-collaterals table.shop_table th,.cart-collaterals table.shop_table td {
  background:transparent;
  padding:14px 0
}

.cart-collaterals table.shop_table th {
  width:100px
}

.woocommerce-cart .woocommerce::after {
  content:'';
  display:block;
  clear:both
}

.cart_item .product-thumbnail {
  width:95px
}

.cart_item .product-thumbnail img {
  width:70px;
  height:85px;
  object-fit:cover
}

.cart_item .product-remove {
  width:30px;
  padding-inline:5px!important
}

.remove {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:25px!important;
  min-width:30px;
  min-height:44px;
  color:#7b6656!important
}

.remove:hover {
  color:var(--danger)!important
}

.cart_item .product-name {
  max-width:230px
}

.cart_item .product-name a {
  font-size:12px
}

.variation {
  font-size:10px;
  color:var(--muted);
  margin:8px 0
}

.variation dt {
  float:right;
  clear:right;
  margin-left:5px
}

.variation dd {
  margin:0
}

.variation dd p {
  font-size:10px;
  margin:0;
  line-height:1.8
}

.cart_item .product-quantity .qty {
  width:58px;
  padding-inline:4px!important
}

.woocommerce-cart-form .actions {
  padding-inline:0!important
}

.woocommerce-cart-form .actions>.button {
  float:left;
  font-size:11px;
  min-height:44px;
  padding:10px 17px
}

.coupon {
  display:flex;
  align-items:center;
  gap:8px;
  float:right
}

.coupon label {
  display:none
}

.coupon input {
  width:125px;
  font-size:11px
}

.coupon .button {
  font-size:10px;
  padding:9px 14px;
  min-height:44px;
  background:transparent;
  color:var(--teal)
}

.wc-proceed-to-checkout .button {
  width:100%;
  font-size:13px
}

.shipping-calculator-button {
  font-size:10px;
  color:var(--teal)!important
}

.woocommerce-shipping-destination {
  font-size:10px!important;
  margin-top:12px
}

.woocommerce-shipping-methods {
  padding:0;
  list-style:none
}

.woocommerce-shipping-methods li {
  margin-bottom:9px;
  font-size:11px;
  line-height:2
}

.woocommerce-shipping-methods input {
  accent-color:var(--teal);
  margin-left:7px
}

.woocommerce-shipping-methods label {
  display:inline
}

.order-total .amount {
  font-size:16px
}

.shipping-calculator-form .button {
  font-size:11px;
  padding:10px 15px
}

.shipping-calculator-form .form-row {
  width:100%!important;
  float:none!important
}

.cart-empty {
  min-height:90px
}

.return-to-shop {
  text-align:center;
  padding:35px
}

.woocommerce-cart .cart-empty {
  margin-block:50px
}

.woocommerce-cart .return-to-shop {
  padding-bottom:70px
}

form.checkout {
  display:grid;
  grid-template-columns:1.1fr .9fr;
  column-gap:60px;
  align-items:start
}

#customer_details {
  grid-column:1;
  grid-row:1/span 3
}

#customer_details .col-1,#customer_details .col-2 {
  width:100%
}

#customer_details h3 {
  font-size:20px;
  margin-bottom:25px
}

#order_review_heading {
  grid-column:2;
  grid-row:1;
  font-size:20px;
  margin-bottom:22px
}

#order_review {
  grid-column:2;
  grid-row:2;
  background:#eeefe8;
  padding:22px
}

.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper {
  display:flow-root
}

.form-row {
  margin:0 0 18px!important;
  padding:0;
  display:block;
  clear:both
}

.form-row label {
  display:block;
  font-size:12px;
  min-height:24px;
  margin-bottom:5px
}

.form-row label.checkbox {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px;
  line-height:2.2;
  min-height:44px
}

.form-row label abbr {
  color:var(--danger);
  text-decoration:none
}

.form-row input.input-text,.form-row textarea,.form-row select {
  width:100%;
  font-size:13px
}

.form-row input[type=checkbox],.form-row input[type=radio] {
  accent-color:var(--teal)
}

.form-row-first {
  width:48%;
  float:right;
  clear:right
}

.form-row-last {
  width:48%;
  float:left;
  clear:none
}

.form-row-wide {
  width:100%;
  clear:both
}

.woocommerce-input-wrapper {
  display:block
}

.form-row .optional {
  font-size:10px;
  color:var(--muted)
}

.woocommerce-invalid input,.woocommerce-invalid select {
  border-color:var(--danger)!important
}

.woocommerce-validated input {
  border-color:#729882!important
}

.select2-container .select2-selection--single {
  height:46px!important;
  border:1px solid #bec6bd!important;
  background:#fffefa!important
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height:44px!important;
  padding-right:12px!important;
  font-size:13px
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height:44px!important;
  left:8px!important;
  right:auto!important
}

.select2-results__option {
  font-size:12px
}

.select2-dropdown {
  border-color:#bec6bd!important
}

.woocommerce-checkout #order_review .shop_table th,.woocommerce-checkout #order_review .shop_table td {
  background:transparent;
  padding:12px 7px;
  font-size:12px
}

.woocommerce-checkout #order_review .shop_table .product-total,.woocommerce-checkout #order_review .shop_table td:last-child {
  text-align:left
}

.woocommerce-checkout #order_review .shop_table .woocommerce-shipping-methods {
  text-align:right
}

.woocommerce-checkout-payment {
  border-top:1px solid #cbd0c5;
  padding-top:18px
}

.wc_payment_methods {
  list-style:none;
  margin:0;
  padding:0
}

.wc_payment_methods li {
  padding-bottom:14px;
  font-size:12px
}

.wc_payment_methods li>label {
  font-weight:700;
  display:inline-block;
  line-height:2.2;
  min-height:30px;
  cursor:pointer
}

.wc_payment_methods input[type=radio] {
  accent-color:var(--teal);
  margin-left:8px
}

.payment_box {
  font-size:11px;
  color:#58635a;
  background:#e3e8de;
  padding:12px 15px;
  margin-top:8px
}

.payment_box p {
  font-size:11px!important;
  margin-bottom:0;
  line-height:2!important
}

.woocommerce-privacy-policy-text p,.woocommerce-terms-and-conditions-wrapper p {
  font-size:10px!important;
  line-height:2!important;
  color:#616b62
}

.woocommerce-terms-and-conditions-wrapper a {
  text-decoration:underline!important
}

.place-order {
  margin-top:18px!important
}

.place-order #place_order {
  width:100%;
  margin-top:14px
}

.woocommerce-additional-fields {
  margin-top:28px
}

.woocommerce-additional-fields h3 {
  font-size:17px!important
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
  font-size:11px
}

.woocommerce-checkout .checkout_coupon {
  padding:20px;
  border:1px solid var(--line);
  display:flow-root;
  margin-bottom:25px
}

.woocommerce-checkout .checkout_coupon p {
  font-size:12px
}

.woocommerce-checkout .woocommerce-form-login {
  margin-bottom:25px;
  max-width:600px
}

.woocommerce-order {
  max-width:900px;
  margin:auto
}

.woocommerce-thankyou-order-received {
  font-size:23px!important;
  color:var(--teal);
  margin-bottom:30px!important
}

.woocommerce-order-overview {
  padding:20px;
  background:#eeefe8;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  list-style:none;
  margin:0 0 30px
}

.woocommerce-order-overview li {
  font-size:11px;
  color:var(--muted)
}

.woocommerce-order-overview strong {
  display:block;
  color:var(--ink);
  font-size:14px;
  overflow-wrap:anywhere
}

.woocommerce-order-details h2,.woocommerce-customer-details h2 {
  font-size:20px
}

.woocommerce-customer-details address {
  font-style:normal;
  font-size:13px;
  line-height:2.2;
  background:#eeefe8;
  padding:20px
}

.woocommerce-customer-details .col2-set {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px
}

.woocommerce-order-downloads {
  display:none
}

.woocommerce-orders-table td,.woocommerce-orders-table th {
  font-size:12px!important
}

.woocommerce-form-track-order {
  max-width:600px
}

.woocommerce-form-track-order p {
  font-size:13px
}

.woocommerce-form-track-order .form-row {
  float:none;
  width:100%
}

.woocommerce-MyAccount-navigation {
  width:22%;
  float:right
}

.woocommerce-MyAccount-navigation ul {
  padding:0;
  list-style:none;
  margin:0
}

.woocommerce-MyAccount-navigation a {
  display:block;
  padding:13px 15px;
  border-bottom:1px solid var(--line);
  font-size:12px
}

.woocommerce-MyAccount-navigation .is-active {
  background:#e7ece2;
  color:var(--teal)
}

.woocommerce-MyAccount-content {
  width:74%;
  float:left
}

.woocommerce-account .woocommerce::after {
  content:'';
  display:block;
  clear:both
}

.woocommerce-form-login {
  max-width:500px
}

.woocommerce-form-login .button {
  margin-left:14px
}

.fz-simulator {
  padding:45px 0 70px;
  min-height:65vh
}

.fz-pay-card {
  max-width:660px;
  margin:auto;
  background:#fffef9;
  padding:35px;
  border:1px solid var(--line)
}

.fz-pay-card h1 {
  font-size:25px;
  color:var(--teal)
}

.fz-pay-card p {
  font-size:13px
}

.fz-pay-actions {
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:25px
}

.fz-pay-actions .button {
  flex:1;
  white-space:nowrap;
  font-size:12px;
  padding:12px 18px
}

.fz-pay-card .fz-pay-actions .button:nth-child(2) {
  background:#895b3c;
  border-color:#895b3c
}

.fz-pay-card .fz-pay-actions .button:nth-child(3) {
  background:transparent;
  border-color:#a5ada3;
  color:var(--ink)
}

.woocommerce .blockUI.blockOverlay {
  background:#faf8f3!important
}

.woocommerce .blockUI.blockOverlay::after {
  content:'در حال به‌روزرسانی…';
  position:absolute;
  top:35px;
  right:20px;
  font:13px Vazirmatn;
  color:var(--teal)
}

.woocommerce .clear {
  clear:both
}

.pswp {
  z-index:99999!important
}

@media(min-width:1600px) {
  .home-hero {
    min-height:560px
  }

  .hero-visual {
    min-height:460px
  }

  .hero-main-photo {
    height:460px
  }

  .hero-small-photo>img {
    height:280px
  }

}

@media(max-width:1100px) {
  .wrap {
    width:calc(100% - 48px)
  }

  .desktop-nav {
    gap:19px
  }

  .desktop-nav a {
    font-size:12px
  }

  .header-main {
    gap:20px
  }

  .home-hero {
    gap:25px
  }

  .hero-copy {
    padding-right:10px
  }

  .hero-copy h1 {
    font-size:36px
  }

  .hero-visual {
    gap:10px;
    padding-left:10px;
    min-height:365px
  }

  .hero-main-photo {
    height:365px
  }

  .hero-small-photo>img {
    height:210px
  }

  .vertical-label {
    left:-12px
  }

  .category-strip {
    gap:10px
  }

  .category-strip>span {
    max-width:150px;
    font-size:10px
  }

  .category-strip a {
    font-size:11px
  }

  .product-grid {
    gap:25px 18px
  }

  .catalogue-layout {
    grid-template-columns:185px minmax(0,1fr);
    gap:24px
  }

  .catalogue .product-grid {
    gap:25px 15px
  }

  .card-bottom {
    gap:3px
  }

  .card-variant {
    display:none
  }

  .line-panel>div:last-child {
    padding:18px
  }

  .line-panel h2 {
    font-size:21px
  }

  .line-photo {
    height:250px
  }

  .line-panel .eyebrow {
    font-size:7px
  }

  .service-strip {
    gap:20px
  }

  .service-strip small {
    font-size:9px
  }

  .woocommerce-cart-form {
    width:62%
  }

  .cart-collaterals {
    width:34%
  }

  .cart_item .product-thumbnail {
    width:65px
  }

  .cart_item .product-thumbnail img {
    width:50px;
    height:65px
  }

  .woocommerce-cart-form table.shop_table th,.woocommerce-cart-form table.shop_table td {
    padding:12px 8px
  }

  .cart_item .product-subtotal {
    display:none
  }

  .woocommerce-cart-form .coupon {
    float:none;
    margin-bottom:12px
  }

  .woocommerce-cart-form .actions>.button {
    float:none;
    width:100%
  }

  form.checkout {
    column-gap:35px
  }

  .fz-simulator .wrap {
    max-width:100%
  }

}

@media(max-width:780px) {
  body {
    font-size:14px
  }

  .wrap {
    width:calc(100% - 36px)
  }

  .header-main {
    height:78px;
    gap:15px
  }

  .wordmark {
    min-width:75px
  }

  .wordmark strong {
    font-size:34px
  }

  .wordmark>span {
    font-size:7px;
    letter-spacing:3px;
    margin-top:6px
  }

  .desktop-nav {
    display:none
  }

  .mobile-menu-toggle {
    display:inline-flex
  }

  .header-actions {
    gap:2px
  }

  .account-link {
    display:none
  }

  .header-actions .icon-button {
    width:39px;
    padding:8px
  }

  .bag-button {
    min-width:38px
  }

  .demo-strip {
    font-size:9px;
    padding:5px 10px
  }

  .header-search {
    padding-block:15px
  }

  .header-search .button {
    padding-inline:15px;
    font-size:12px
  }

  .home-hero {
    grid-template-columns:1fr 1fr;
    gap:18px;
    padding-block:28px;
    min-height:auto
  }

  .hero-copy {
    padding:0
  }

  .hero-copy .eyebrow {
    font-size:9px;
    letter-spacing:0
  }

  .hero-copy h1 {
    font-size:27px;
    line-height:1.9;
    letter-spacing:-.8px;
    margin-bottom:14px
  }

  .hero-description {
    font-size:11px;
    line-height:2.1;
    margin-bottom:10px
  }

  .hero-description br {
    display:none
  }

  .hero-actions {
    gap:10px;
    margin-top:18px;
    flex-wrap:wrap
  }

  .hero-actions .button {
    font-size:11px;
    min-height:44px;
    padding:10px 16px;
    gap:10px
  }

  .hero-actions .button svg {
    width:17px
  }

  .hero-actions .text-link {
    font-size:10px;
    min-height:30px
  }

  .hero-note {
    font-size:8px;
    margin-top:16px;
    gap:7px
  }

  .tiny-rule {
    width:18px
  }

  .hero-visual {
    display:block;
    min-height:0;
    padding-left:0
  }

  .hero-main-photo {
    height:310px
  }

  .hero-small-photo {
    display:none
  }

  .vertical-label {
    left:4px;
    top:14px;
    color:#fff;
    text-shadow:0 1px 5px #0007;
    font-size:6px;
    letter-spacing:1.5px
  }

  .photo-caption {
    bottom:14px;
    right:12px;
    left:12px
  }

  .photo-caption span:first-child {
    font-size:7px;
    letter-spacing:1px
  }

  .photo-caption span:last-child {
    font-size:9px
  }

  .category-strip {
    justify-content:flex-start;
    gap:25px;
    overflow-x:auto;
    padding-block:6px;
    scrollbar-width:thin
  }

  .category-strip>span {
    display:none
  }

  .category-strip a {
    font-size:11px;
    min-height:44px
  }

  .section {
    padding-block:35px
  }

  .section-heading {
    margin-bottom:22px;
    align-items:center;
    gap:15px
  }

  .section-heading h2 {
    font-size:21px
  }

  .section-heading .eyebrow {
    font-size:9px;
    letter-spacing:0
  }

  .section-heading>.text-link {
    font-size:10px;
    gap:6px;
    white-space:nowrap
  }

  .section-heading>.text-link svg {
    width:17px
  }

  .product-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:25px 15px
  }

  .product-card-info {
    padding-top:10px
  }

  .product-card h3 {
    font-size:12px;
    line-height:1.8;
    min-height:22px;
    margin-bottom:6px
  }

  .card-line {
    font-size:9px
  }

  .price {
    font-size:12px
  }

  .woocommerce-Price-currencySymbol {
    font-size:9px
  }

  .product-badge {
    font-size:8px;
    top:8px;
    right:8px;
    padding:4px 8px
  }

  .image-link {
    display:none
  }

  .line-editorial {
    grid-template-columns:1fr;
    gap:18px;
    margin-block:5px 35px
  }

  .line-panel {
    grid-template-columns:1fr 1.1fr
  }

  .line-photo {
    height:240px
  }

  .line-panel>div:last-child {
    padding:22px
  }

  .line-panel h2 {
    font-size:24px
  }

  .line-panel .eyebrow {
    font-size:8px
  }

  .line-panel p {
    font-size:12px
  }

  .service-strip {
    grid-template-columns:1fr;
    gap:22px;
    padding-block:26px;
    margin-bottom:35px
  }

  .service-strip>a {
    gap:17px
  }

  .service-strip strong {
    font-size:12px
  }

  .service-strip small {
    font-size:10px
  }

  .service-strip>a>svg {
    width:27px;
    height:27px
  }

  .site-footer {
    padding-top:32px
  }

  .footer-grid {
    grid-template-columns:1fr 1fr;
    gap:27px;
    padding-bottom:25px
  }

  .footer-grid>div:first-child {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:auto 1fr;
    column-gap:25px
  }

  .footer-brand {
    grid-row:1/3;
    justify-content:center;
    align-items:center;
    margin:0
  }

  .footer-grid p {
    font-size:10px;
    margin-bottom:5px
  }

  .footer-grid h2 {
    font-size:12px;
    margin-bottom:10px
  }

  .footer-grid>div>a:not(.wordmark) {
    font-size:10px;
    min-height:37px;
    line-height:37px
  }

  .footer-bottom {
    flex-direction:column;
    font-size:9px;
    gap:8px
  }

  .catalogue {
    padding-block:20px 45px
  }

  .breadcrumbs,.woocommerce-breadcrumb {
    font-size:9px;
    margin-bottom:20px
  }

  .catalogue-heading {
    padding-block:6px 24px;
    gap:15px
  }

  .catalogue-heading h1 {
    font-size:27px;
    line-height:1.7;
    margin-bottom:10px
  }

  .catalogue-heading .eyebrow {
    font-size:8px;
    letter-spacing:1.5px;
    margin-bottom:8px
  }

  .catalogue-heading p:last-child {
    font-size:11px;
    line-height:2
  }

  .collection-mark {
    width:57px;
    height:57px;
    flex-shrink:0;
    margin-left:0
  }

  .collection-mark svg {
    width:27px;
    height:27px
  }

  .line-tabs {
    gap:26px
  }

  .line-tabs a {
    font-size:11px;
    min-height:48px
  }

  .catalogue-toolbar {
    padding-block:15px
  }

  .filter-trigger {
    display:inline-flex;
    font-size:10px;
    gap:6px;
    padding:7px 10px
  }

  .filter-trigger svg {
    width:18px
  }

  .result-count {
    font-size:10px
  }

  .catalogue-layout {
    display:block
  }

  .catalogue .product-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:25px 14px
  }

  .filter-panel {
    display:none;
    position:fixed;
    top:0;
    bottom:0;
    right:0;
    width:min(340px,90vw);
    background:var(--ivory);
    z-index:1002;
    padding:18px 24px 35px;
    border:0;
    overflow-y:auto;
    overscroll-behavior:contain
  }

  .filter-panel.is-open {
    display:block
  }

  .filter-panel-heading {
    margin-bottom:20px;
    position:sticky;
    top:-18px;
    background:var(--ivory);
    padding-top:5px;
    padding-bottom:10px;
    z-index:2;
    border-bottom:1px solid var(--line)
  }

  .filter-panel-heading h2 {
    font-size:17px
  }

  .close-filters {
    display:inline-flex
  }

  .filter-field label,.price-filter legend {
    font-size:12px
  }

  .filter-field input,.filter-field select {
    font-size:13px!important;
    min-height:46px
  }

  .filter-checkbox {
    font-size:12px
  }

  .filter-actions {
    position:sticky;
    bottom:-35px;
    background:var(--ivory);
    padding-block:15px;
    border-top:1px solid var(--line)
  }

  .filter-actions .button {
    font-size:13px
  }

  .filter-actions .text-link {
    font-size:11px
  }

  .filter-backdrop:not([hidden]) {
    display:block;
    position:fixed;
    inset:0;
    background:#17241dcc;
    border:0;
    z-index:1001
  }

  .filter-open {
    overflow:hidden
  }

  .state-panel {
    padding:45px 20px;
    min-height:260px
  }

  .state-panel h1,.state-panel h2 {
    font-size:21px
  }

  .state-panel p {
    font-size:12px
  }

  .state-panel .button {
    font-size:12px
  }

  .page-shell {
    padding-block:20px 40px
  }

  .prose>h1 {
    font-size:27px;
    margin-bottom:25px;
    padding-bottom:18px
  }

  .prose .eyebrow {
    font-size:9px
  }

  .prose h2 {
    font-size:19px
  }

  .prose h3 {
    font-size:15px
  }

  .prose p,.prose li {
    font-size:12px;
    line-height:2.2
  }

  .page-content table th,.page-content table td {
    font-size:11px;
    padding:9px
  }

  .commerce-shell {
    padding-block:20px 40px
  }

  div.product div.images,div.product div.summary {
    width:100%;
    float:none
  }

  .woocommerce-product-gallery {
    max-width:520px;
    margin-inline:auto
  }

  div.product div.images {
    margin-bottom:22px
  }

  div.product div.summary {
    padding:0;
    margin-bottom:25px
  }

  .summary .product_title {
    font-size:25px;
    margin-bottom:10px
  }

  .summary>.price {
    font-size:21px;
    padding-bottom:16px;
    margin-bottom:16px
  }

  .woocommerce-product-details__short-description {
    font-size:12px
  }

  .summary form.cart {
    margin-block:18px
  }

  .product-reassurance {
    padding-block:16px;
    flex-wrap:wrap;
    gap:8px
  }

  .product_meta {
    padding-top:16px;
    margin-top:20px
  }

  .woocommerce-tabs {
    padding-top:10px
  }

  .woocommerce-tabs .tabs {
    gap:22px;
    margin-bottom:20px
  }

  .woocommerce-tabs .tabs a {
    font-size:11px;
    min-height:48px
  }

  .woocommerce-Tabs-panel {
    font-size:12px
  }

  .woocommerce-Tabs-panel h2 {
    font-size:19px
  }

  .woocommerce-product-attributes th {
    width:110px;
    font-size:11px
  }

  .woocommerce-product-attributes td {
    font-size:11px
  }

  .related.products {
    margin-top:30px
  }

  .related.products>h2 {
    font-size:21px
  }

  ul.products {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:25px 15px
  }

  ul.products .woocommerce-loop-product__title {
    font-size:12px
  }

  .woocommerce-message,.woocommerce-info,.woocommerce-error {
    font-size:12px;
    padding:13px 15px;
    margin-bottom:20px
  }

  .woocommerce-message .button {
    float:none;
    display:flex;
    margin:0 0 10px;
    padding:6px 12px;
    font-size:10px;
    width:max-content
  }

  .woocommerce-cart-form,.cart-collaterals {
    float:none;
    width:100%
  }

  .woocommerce-cart-form table.shop_table thead {
    display:none
  }

  .woocommerce-cart-form table.shop_table tbody {
    display:block
  }

  .woocommerce-cart-form table.shop_table tr.cart_item {
    display:grid;
    grid-template-columns:70px 1fr 65px;
    column-gap:12px;
    position:relative;
    padding:18px 0;
    border-bottom:1px solid var(--line);
    min-height:128px
  }

  .woocommerce-cart-form table.shop_table td {
    display:block;
    border:0;
    padding:0!important
  }

  .cart_item .product-remove {
    position:absolute;
    left:0;
    top:10px;
    width:25px;
    z-index:1
  }

  .cart_item .product-remove a {
    font-size:22px!important
  }

  .cart_item .product-thumbnail {
    grid-column:1;
    grid-row:1/span 3;
    width:70px
  }

  .cart_item .product-thumbnail img {
    width:70px;
    height:90px
  }

  .cart_item .product-name {
    grid-column:2;
    grid-row:1;
    padding-left:16px!important;
    max-width:none
  }

  .cart_item .product-price {
    grid-column:2;
    grid-row:2;
    font-size:12px!important
  }

  .cart_item .product-quantity {
    grid-column:3;
    grid-row:3;
    margin-top:8px
  }

  .cart_item .product-quantity .qty {
    width:60px;
    min-height:40px;
    font-size:12px
  }

  .cart_item .product-subtotal {
    display:none!important
  }

  .woocommerce-cart-form tr:last-child {
    display:block;
    margin-top:16px
  }

  .woocommerce-cart-form .actions {
    display:flex!important;
    flex-direction:column;
    gap:12px
  }

  .woocommerce-cart-form .actions>.button {
    width:100%;
    margin:0
  }

  .coupon {
    width:100%;
    margin:0!important
  }

  .coupon input {
    flex:1;
    width:0;
    font-size:12px
  }

  .coupon .button {
    flex-shrink:0
  }

  .cart-collaterals {
    margin-top:30px
  }

  .cart-collaterals .cart_totals {
    padding:20px
  }

  .cart-collaterals h2 {
    font-size:19px
  }

  .cart-collaterals .shop_table th,.cart-collaterals .shop_table td {
    font-size:12px!important
  }

  .cart-collaterals .shop_table .woocommerce-shipping-methods {
    font-size:11px
  }

  form.checkout {
    display:block
  }

  #customer_details {
    margin-bottom:30px
  }

  #customer_details h3,#order_review_heading {
    font-size:19px;
    margin-bottom:20px
  }

  #order_review {
    padding:18px
  }

  .form-row-first,.form-row-last {
    float:none;
    width:100%;
    clear:both
  }

  .form-row label {
    font-size:11px
  }

  .form-row input.input-text,.form-row textarea,.form-row select {
    font-size:13px;
    min-height:48px
  }

  .woocommerce-checkout #order_review .shop_table th,.woocommerce-checkout #order_review .shop_table td {
    font-size:11px;
    padding:11px 5px
  }

  .woocommerce-privacy-policy-text p {
    font-size:10px!important
  }

  .wc_payment_methods li>label {
    font-size:12px
  }

  .woocommerce-order-overview {
    grid-template-columns:1fr 1fr;
    padding:18px;
    gap:16px
  }

  .woocommerce-order-overview li {
    font-size:10px
  }

  .woocommerce-order-overview strong {
    font-size:12px
  }

  .woocommerce-thankyou-order-received {
    font-size:21px!important
  }

  .woocommerce-customer-details .col2-set {
    grid-template-columns:1fr
  }

  .woocommerce-order-details h2,.woocommerce-customer-details h2 {
    font-size:19px
  }

  .woocommerce-order .shop_table th,.woocommerce-order .shop_table td {
    font-size:11px!important;
    padding:12px 8px!important
  }

  .woocommerce-MyAccount-navigation {
    float:none;
    width:100%;
    margin-bottom:22px
  }

  .woocommerce-MyAccount-navigation ul {
    display:flex;
    overflow:auto;
    gap:5px
  }

  .woocommerce-MyAccount-navigation a {
    white-space:nowrap;
    padding:10px;
    font-size:10px
  }

  .woocommerce-MyAccount-content {
    float:none;
    width:100%
  }

  .woocommerce-orders-table .woocommerce-orders-table__cell-order-date {
    display:none
  }

  .woocommerce-orders-table th,.woocommerce-orders-table td {
    font-size:10px!important;
    padding:10px 5px!important
  }

  .fz-simulator {
    padding-block:25px 45px
  }

  .fz-pay-card {
    padding:24px 20px
  }

  .fz-pay-card h1 {
    font-size:23px
  }

  .fz-pay-card p {
    font-size:12px
  }

  .fz-pay-actions {
    flex-direction:column;
    gap:10px
  }

  .fz-pay-actions .button {
    width:100%;
    font-size:12px
  }

  .fz-pay-card .shop_table td,.fz-pay-card .shop_table th {
    font-size:11px!important
  }

  .woocommerce .blockUI.blockOverlay::after {
    font-size:11px
  }

}

@media(max-width:430px) {
  .home-hero {
    grid-template-columns:1fr 1fr;
    gap:13px;
    padding-block:24px
  }

  .hero-copy h1 {
    font-size:25px
  }

  .hero-copy .eyebrow {
    font-size:8px;
    margin-bottom:10px
  }

  .hero-description {
    font-size:10px
  }

  .hero-main-photo {
    height:285px
  }

  .hero-actions {
    gap:5px
  }

  .hero-actions .button {
    font-size:10px;
    gap:6px;
    padding-inline:12px;
    min-height:42px
  }

  .hero-actions .text-link {
    font-size:9px
  }

  .hero-note {
    font-size:7px
  }

  .photo-caption span:first-child {
    font-size:6px
  }

  .photo-caption span:last-child {
    font-size:8px
  }

  .section-heading h2 {
    font-size:19px
  }

  .section-heading>.text-link {
    font-size:9px
  }

  .product-grid,.catalogue .product-grid {
    gap:23px 12px
  }

  .product-card h3 {
    font-size:11px
  }

  .price {
    font-size:11px
  }

  .product-card .woocommerce-Price-currencySymbol {
    font-size:8px
  }

  .card-line {
    font-size:8px
  }

  .line-photo {
    height:210px
  }

  .line-panel>div:last-child {
    padding:18px
  }

  .line-panel h2 {
    font-size:22px
  }

  .line-panel p {
    font-size:10px
  }

  .line-panel .eyebrow {
    font-size:7px
  }

  .line-panel .text-link {
    font-size:11px
  }

  .footer-grid {
    gap:22px
  }

  .filter-trigger {
    font-size:9px
  }

  .catalogue-heading h1 {
    font-size:25px
  }

  .collection-mark {
    width:48px;
    height:48px
  }

  .catalogue-heading p:last-child {
    font-size:10px
  }

  .catalogue .eyebrow[dir=ltr] {
    font-size:7px
  }

  .woocommerce-cart-form table.shop_table tr.cart_item {
    grid-template-columns:62px 1fr 60px;
    column-gap:10px
  }

  .cart_item .product-thumbnail,.cart_item .product-thumbnail img {
    width:62px
  }

  .cart_item .product-thumbnail img {
    height:83px
  }

  .cart_item .product-name a {
    font-size:11px
  }

  .woocommerce-cart-form .coupon .button {
    font-size:9px;
    padding-inline:12px
  }

}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }

  *,*::before,*::after {
    animation:none!important;
    transition:none!important
  }

  .product-image:hover>img {
    transform:none
  }

}

.hero-main-photo::after {
  content:"";
  position:absolute;
  inset:65% 0 0;
  background:linear-gradient(transparent,#302f2860);
  pointer-events:none
}

.photo-caption {
  z-index:1
}

/* Keep every compact navigation/remove action a usable touch target. */ .footer-grid>div>a:not(.wordmark) {
  min-height:44px;
  line-height:44px
}

.remove {
  min-width:44px
}

.cart_item .product-remove {
  width:44px
}

ul.products li.product .button {
  min-height:44px
}

@media(max-width:780px) {
  .header-actions .icon-button {
    width:44px;
    height:44px
  }

  .header-actions {
    gap:0
  }

  .hero-actions .text-link {
    min-height:44px
  }

  .cart_item .product-remove {
    width:44px
  }

  .footer-grid>div>a:not(.wordmark) {
    min-height:44px;
    line-height:44px
  }

}

/* Design review 2: jewellery first, readable information and familiar controls.
   Palette follows the original brief. No native-platform glass or UI imitation. */ :root {
  --ink:#232925;
  --muted:#59645d;
  --teal:#155d52;
  --teal-dark:#0d493f;
  --line:#dedfd7;
  --radius:6px;
  --text-small:.8125rem;
  --text-body:1rem
}

body {
  font-size:16px;
  line-height:1.85
}

h1,h2,h3 {
  letter-spacing:0;
  text-wrap:balance
}

button,input,select,textarea {
  font-size:15px
}

.wrap {
  width:min(1280px,calc(100% - 80px))
}

.section {
  padding-block:56px
}

.eyebrow {
  font-size:13px;
  letter-spacing:0
}

.text-link {
  font-size:14px;
  font-weight:400;
  text-decoration:underline;
  text-underline-offset:6px;
  text-decoration-thickness:1px;
  border:0;
  min-height:44px
}

.text-link:hover {
  text-decoration-thickness:2px;
  border:0
}

.button,button.button,a.button,input.button {
  font-size:15px;
  min-height:48px;
  border-radius:6px;
  padding:12px 24px;
  letter-spacing:0
}

.button.secondary {
  background:transparent;
  color:var(--teal);
  border-color:#78988b
}

.button.secondary:hover {
  background:#eaf0e8;
  color:var(--teal-dark);
  border-color:var(--teal)
}

:focus-visible {
  outline:3px solid #127e70;
  outline-offset:4px
}

.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}

.demo-strip {
  font-size:12px;
  line-height:1.7;
  padding:7px 16px;
  background:#edf0e8
}

.header-main {
  height:92px;
  gap:32px
}

.wordmark {
  align-items:flex-start;
  min-width:100px
}

.wordmark strong {
  font-size:44px;
  letter-spacing:-1.7px;
  font-weight:700;
  line-height:1.15
}

.wordmark>span {
  font-family:Vazirmatn,Arial,sans-serif;
  font-size:11px;
  letter-spacing:0;
  margin-top:4px;
  padding:0;
  color:var(--muted)
}

.desktop-nav {
  gap:32px
}

.desktop-nav a {
  font-size:14px;
  min-height:48px
}

.header-actions {
  gap:9px
}

.bag-button {
  gap:9px;
  min-width:100px;
  height:48px;
  padding:9px
}

.bag-label {
  font-size:12px
}

.cart-count {
  position:static;
  min-width:20px;
  height:20px;
  line-height:20px;
  font-size:11px;
  background:#e8eee3
}

.header-search {
  padding-block:24px
}

.header-search>label {
  font-size:14px
}

.header-search input {
  font-size:15px
}

.header-search input::placeholder {
  font-size:14px
}

.mobile-nav a {
  font-size:15px;
  min-height:48px;
  padding-block:12px
}

.collection-intro {
  padding-block:34px 26px
}

.collection-intro-copy {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:30px;
  margin-bottom:28px
}

.collection-intro-copy h1 {
  font-size:31px;
  margin:0;
  font-weight:400;
  line-height:1.6
}

.collection-intro-copy p {
  font-size:14px;
  color:var(--muted);
  margin:0;
  max-width:520px;
  line-height:1.9
}

.collection-entrances {
  display:grid;
  grid-template-columns:1.16fr 1fr;
  gap:26px;
  align-items:start
}

.collection-entry {
  display:block;
  min-width:0
}

.collection-entry-image {
  height:340px;
  overflow:hidden;
  background:#e9e5db
}

.collection-entry-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 53%;
  transition:transform .4s ease
}

.collection-entry-silver .collection-entry-image img {
  object-position:center 57%
}

.collection-entry:hover .collection-entry-image img {
  transform:scale(1.02)
}

.collection-entry-caption {
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  padding-top:17px
}

.collection-entry-caption h2 {
  font-size:24px;
  margin:0 0 3px;
  font-weight:700
}

.collection-entry-caption p {
  font-size:13px;
  margin:0;
  color:var(--muted);
  line-height:1.8
}

.collection-entry-action {
  font-size:13px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
  color:var(--teal);
  text-decoration:underline;
  text-underline-offset:6px
}

.collection-entry:focus-visible {
  outline-offset:7px
}

.category-strip {
  border:0;
  border-bottom:1px solid var(--line);
  padding-block:8px 12px;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  text-align:center;
  overflow:visible
}

.category-strip>a {
  justify-content:center;
  font-size:15px;
  min-height:48px;
  white-space:normal;
  border-radius:6px
}

.category-strip>a:hover {
  background:#edf0e8
}

.home-products .section-heading {
  margin-bottom:26px
}

.section-heading h2 {
  font-size:27px;
  margin:0;
  font-weight:400
}

.product-grid {
  gap:36px 24px
}

.product-image {
  aspect-ratio:4/5;
  background:#eeece5
}

.product-image>img {
  transition:transform .4s ease
}

.product-image:hover>img {
  transform:scale(1.02)
}

.product-card-info {
  padding-top:14px
}

.card-line {
  font-size:12px;
  line-height:1.7;
  margin-bottom:5px;
  color:var(--muted)
}

.product-card h3 {
  font-size:15px;
  line-height:1.8;
  font-weight:400;
  margin-bottom:6px
}

.card-bottom {
  display:block
}

.price {
  font-size:16px;
  line-height:1.9;
  font-weight:700;
  font-variant-numeric:tabular-nums
}

.woocommerce-Price-currencySymbol {
  font-size:12px;
  margin-inline-start:3px
}

.card-variant {
  display:block;
  font-size:12px;
  line-height:1.8;
  color:var(--muted);
  margin-top:3px
}

.product-badge {
  font-size:12px;
  line-height:1.7;
  top:12px;
  right:12px;
  padding:5px 9px;
  background:#fffffaef;
  border-radius:3px
}

.image-link {
  display:none
}

.care-feature {
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:64px;
  align-items:center;
  margin-block:16px 56px;
  background:#eef0e8
}

.care-feature-image {
  height:300px;
  overflow:hidden
}

.care-feature-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 45%
}

.care-feature-copy {
  padding:32px 0 32px 44px;
  max-width:470px
}

.care-feature h2 {
  font-size:28px;
  font-weight:400;
  margin-bottom:14px
}

.care-feature p {
  font-size:15px;
  line-height:2;
  color:var(--muted);
  margin-bottom:23px
}

.service-strip {
  margin-bottom:55px;
  padding-block:28px;
  border-top:0;
  border-bottom:0;
  gap:48px
}

.service-strip strong {
  font-size:15px;
  font-weight:400
}

.service-strip small {
  font-size:13px;
  line-height:1.9;
  margin-top:4px
}

.service-strip>a {
  gap:18px
}

.service-strip>a>svg {
  width:28px;
  height:28px
}

.site-footer {
  background:#f0f1eb;
  padding-top:42px
}

.footer-grid {
  gap:60px;
  padding-bottom:36px;
  grid-template-columns:1.3fr 1fr 1fr
}

.footer-brand strong {
  font-size:42px
}

.footer-grid p {
  font-size:14px;
  line-height:2
}

.footer-grid h2 {
  font-size:15px;
  margin-bottom:14px
}

.footer-grid>div>a:not(.wordmark) {
  font-size:13px;
  min-height:44px;
  line-height:44px
}

.footer-bottom {
  font-size:12px;
  padding-block:18px
}

.demo-controls summary {
  min-height:44px;
  display:flex;
  align-items:center
}

.demo-controls>div {
  font-size:13px;
  padding:16px;
  gap:16px
}

.demo-controls a {
  min-height:44px;
  display:flex;
  align-items:center
}

.breadcrumbs,.woocommerce-breadcrumb {
  font-size:12px;
  line-height:1.9;
  gap:10px;
  margin-bottom:24px
}

.catalogue {
  padding-block:25px 56px
}

.catalogue-heading {
  display:block;
  padding-block:8px 28px
}

.catalogue-heading h1 {
  font-size:34px;
  font-weight:400;
  margin:0 0 10px
}

.catalogue-heading p:last-child {
  font-size:15px;
  line-height:1.9;
  max-width:620px;
  margin-bottom:0
}

.collection-mark {
  display:none
}

.line-tabs {
  gap:34px
}

.line-tabs a {
  font-size:14px;
  min-height:52px
}

.catalogue-toolbar {
  padding-block:21px
}

.result-count {
  font-size:14px;
  line-height:1.8
}

.filter-trigger {
  font-size:13px;
  min-height:44px;
  border-radius:6px
}

.catalogue-layout {
  grid-template-columns:220px minmax(0,1fr);
  gap:34px
}

.catalogue .product-grid {
  gap:36px 24px
}

.filter-panel {
  padding-left:26px
}

.filter-panel-heading h2 {
  font-size:17px;
  font-weight:400
}

.filter-field {
  margin-bottom:20px
}

.filter-field label,.price-filter legend {
  font-size:13px;
  line-height:1.9;
  margin-bottom:7px
}

.filter-field input,.filter-field select {
  font-size:14px;
  min-height:46px;
  padding:9px 10px
}

.filter-field input::placeholder {
  font-size:12px
}

.filter-checkbox {
  font-size:13px;
  gap:10px;
  min-height:48px
}

.filter-checkbox input {
  width:18px;
  height:18px
}

.price-fields label {
  font-size:12px
}

.price-fields input {
  font-size:13px!important;
  min-height:46px
}

.filter-actions .button {
  font-size:14px;
  min-height:48px
}

.filter-actions .text-link {
  font-size:12px
}

.pagination {
  gap:8px;
  margin-top:40px
}

.page-numbers {
  min-width:44px;
  min-height:44px;
  font-size:14px;
  border-radius:5px
}

.state-panel {
  background:#edf0e7;
  padding:56px 28px
}

.state-panel h1,.state-panel h2 {
  font-size:27px;
  font-weight:400
}

.state-panel p {
  font-size:15px;
  line-height:2;
  max-width:520px;
  margin-inline:auto
}

.state-panel .button {
  font-size:14px
}

.prose>h1 {
  font-size:34px;
  font-weight:400;
  padding-bottom:0;
  border:0;
  margin-bottom:32px
}

.prose p,.prose li {
  font-size:16px;
  line-height:2
}

.prose h2 {
  font-size:24px
}

.prose h3 {
  font-size:20px
}

.page-content th,.page-content td {
  font-size:14px
}

.page-shell {
  padding-block:28px 56px
}

.prose {
  max-width:790px
}

.woocommerce-cart .prose>h1,.woocommerce-checkout .prose>h1 {
  padding-bottom:24px;
  border-bottom:1px solid var(--line);
  margin-bottom:32px
}

.summary .product_title {
  font-size:32px;
  font-weight:400;
  margin-bottom:15px
}

.product-line {
  font-size:14px;
  font-weight:400;
  margin-bottom:12px;
  color:var(--teal)
}

.summary>.price {
  font-size:24px;
  padding-bottom:23px;
  margin-bottom:23px
}

.summary>.price .woocommerce-Price-currencySymbol {
  font-size:14px
}

.woocommerce-product-details__short-description {
  font-size:15px;
  line-height:2
}

.summary .stock {
  font-size:14px;
  line-height:1.8
}

.summary table.variations th {
  font-size:14px
}

.variations td {
  padding-right:15px
}

.variations select {
  font-size:15px
}

.reset_variations {
  font-size:13px;
  min-height:44px
}

.quantity .qty {
  font-size:16px;
  min-height:48px
}

.summary form.cart .single_add_to_cart_button {
  font-size:15px
}

.product-reassurance {
  font-size:13px;
  line-height:1.9;
  padding-block:19px;
  gap:15px
}

.product_meta {
  font-size:13px;
  line-height:2;
  padding-top:19px
}

.product_meta>span {
  margin-bottom:7px
}

.woocommerce-tabs .tabs {
  gap:34px;
  margin-bottom:26px
}

.woocommerce-tabs .tabs a {
  font-size:15px;
  min-height:56px
}

.woocommerce-Tabs-panel {
  font-size:15px;
  max-width:760px
}

.woocommerce-Tabs-panel h2 {
  font-size:23px
}

.woocommerce-Tabs-panel p {
  font-size:15px;
  line-height:2.1
}

.woocommerce-product-attributes th,.woocommerce-product-attributes td {
  font-size:14px;
  padding:14px
}

.related.products>h2 {
  font-size:27px;
  font-weight:400
}

ul.products .woocommerce-loop-product__title {
  font-size:15px;
  line-height:1.8
}

ul.products .price {
  font-size:16px
}

ul.products li.product .button {
  min-height:44px;
  font-size:13px;
  font-weight:400;
  text-decoration:underline;
  text-underline-offset:5px
}

.woocommerce-message,.woocommerce-info,.woocommerce-error {
  font-size:14px;
  line-height:1.9;
  padding:17px 20px;
  border-radius:0 6px 6px 0
}

.woocommerce-error a,.woocommerce-error a:hover {
  color:#922b25!important;
  text-decoration:underline;
  text-underline-offset:4px
}

.woocommerce-error a:focus-visible {
  outline-color:#922b25
}

.woocommerce input[aria-invalid=true],.woocommerce select[aria-invalid=true],.woocommerce textarea[aria-invalid=true] {
  border-color:#a52e29!important;
  box-shadow:0 0 0 1px #a52e29
}

.inline-variation-error {
  font-size:14px;
  line-height:1.9;
  padding:13px 15px
}

.woocommerce .fz-field-error {
  font-size:13px!important;
  line-height:1.9!important
}

.woocommerce-message .button {
  font-size:13px;
  padding:8px 16px;
  min-height:44px
}

.woocommerce table.shop_table th {
  font-size:14px;
  padding:15px 14px
}

.woocommerce table.shop_table td {
  font-size:14px;
  padding:19px 14px
}

.cart_item .product-name a {
  font-size:14px;
  line-height:1.9
}

.cart-collaterals .cart_totals {
  padding:26px;
  background:#eef1e9;
  border-radius:6px
}

.cart-collaterals h2 {
  font-size:22px;
  font-weight:400;
  margin-bottom:14px
}

.cart-collaterals table.shop_table th,.cart-collaterals table.shop_table td {
  padding:16px 0;
  font-size:14px
}

.woocommerce-shipping-methods li {
  font-size:13px;
  line-height:1.9;
  margin-bottom:13px
}

.woocommerce-shipping-methods label {
  cursor:pointer
}

.woocommerce-shipping-methods input {
  min-width:16px;
  min-height:16px
}

.woocommerce-shipping-destination {
  font-size:13px!important
}

.shipping-calculator-button {
  font-size:13px
}

.order-total .amount {
  font-size:18px
}

.wc-proceed-to-checkout .button {
  font-size:15px
}

.coupon input {
  font-size:13px;
  width:145px
}

.coupon .button {
  font-size:12px
}

.woocommerce-cart-form .actions>.button {
  font-size:13px
}

.variation,.variation dd p {
  font-size:12px
}

.remove {
  min-width:44px;
  min-height:44px
}

.cart_item .product-remove {
  width:44px
}

.woocommerce-checkout #order_review {
  background:#eef1e9;
  border-radius:6px;
  padding:26px
}

#customer_details h3,#order_review_heading {
  font-size:23px;
  font-weight:400;
  margin-bottom:25px
}

.form-row {
  margin-bottom:22px!important
}

.form-row label {
  font-size:14px;
  line-height:1.9;
  margin-bottom:7px
}

.form-row input.input-text,.form-row select,.form-row textarea {
  font-size:16px;
  min-height:50px
}

.form-row .optional {
  font-size:12px
}

.select2-container .select2-selection--single {
  height:50px!important;
  border-radius:6px!important
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height:48px!important;
  font-size:16px
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height:48px!important
}

.select2-results__option {
  font-size:15px
}

.woocommerce-checkout #order_review .shop_table th,.woocommerce-checkout #order_review .shop_table td {
  font-size:14px;
  padding:15px 7px
}

.woocommerce-checkout #order_review .shop_table small {
  font-size:12px;
  line-height:1.9
}

.wc_payment_methods li {
  padding-bottom:19px
}

.wc_payment_methods li>label {
  font-size:14px;
  min-height:44px;
  line-height:44px
}

.payment_box {
  margin-top:0;
  padding:14px 16px
}

.payment_box p {
  font-size:13px!important;
  line-height:1.9!important
}

.woocommerce-privacy-policy-text p,.woocommerce-terms-and-conditions-wrapper p {
  font-size:12px!important;
  line-height:2!important
}

.form-row label.checkbox {
  font-size:13px;
  line-height:2;
  min-height:44px
}

.place-order #place_order {
  font-size:15px;
  min-height:50px
}

.woocommerce-additional-fields h3 {
  font-size:20px!important;
  font-weight:400
}

.woocommerce-thankyou-order-received {
  font-size:26px!important;
  font-weight:400
}

.woocommerce-order-overview {
  padding:25px;
  background:#eef1e9;
  gap:22px;
  border-radius:6px
}

.woocommerce-order-overview li {
  font-size:13px
}

.woocommerce-order-overview strong {
  font-size:16px;
  line-height:1.8;
  margin-top:4px
}

.woocommerce-order-details h2,.woocommerce-customer-details h2,.fz-order-next h2 {
  font-size:24px;
  font-weight:400
}

.woocommerce-customer-details address {
  font-size:15px;
  line-height:2.1;
  padding:24px;
  background:#eef1e9;
  border-radius:6px
}

.woocommerce-form-track-order p {
  font-size:15px
}

.fz-simulator {
  padding-inline:24px
}

.fz-pay-card {
  padding:35px;
  border-radius:8px
}

.fz-pay-card h1 {
  font-size:29px;
  font-weight:400
}

.fz-pay-card p {
  font-size:15px;
  line-height:1.95
}

.fz-pay-card dt {
  font-size:13px;
  color:var(--muted);
  margin-top:14px
}

.fz-pay-card dd {
  font-size:16px;
  margin-right:0
}

.fz-pay-actions .button {
  font-size:14px;
  min-height:50px
}

.fz-pay-card>p:last-child a {
  text-decoration:underline;
  text-underline-offset:5px
}

.fz-pay-card .fz-eyebrow {
  font-size:13px;
  color:var(--muted)
}

.woocommerce-MyAccount-navigation a {
  font-size:14px;
  min-height:48px
}

.woocommerce-orders-table td,.woocommerce-orders-table th {
  font-size:14px!important
}

.woocommerce .blockUI.blockOverlay::after {
  font-size:14px
}

@media(min-width:1600px) {
  .collection-entry-image {
    height:380px
  }

}

@media(max-width:1100px) {
  .wrap {
    width:calc(100% - 48px)
  }

  .desktop-nav {
    gap:18px
  }

  .desktop-nav a {
    font-size:13px
  }

  .header-main {
    gap:20px
  }

  .bag-label {
    display:none
  }

  .bag-button {
    min-width:48px
  }

  .cart-count {
    position:absolute;
    left:-3px;
    top:2px
  }

  .collection-intro-copy {
    gap:24px
  }

  .collection-intro-copy h1 {
    font-size:29px
  }

  .collection-intro-copy p {
    font-size:13px;
    max-width:380px
  }

  .collection-entry-image {
    height:300px
  }

  .collection-entry-caption {
    gap:10px
  }

  .collection-entry-caption h2 {
    font-size:22px
  }

  .collection-entry-caption p {
    font-size:12px
  }

  .collection-entry-action {
    font-size:12px
  }

  .product-grid,.catalogue .product-grid {
    gap:32px 19px
  }

  .catalogue-layout {
    grid-template-columns:205px minmax(0,1fr);
    gap:27px
  }

  .product-card h3 {
    font-size:14px
  }

  .price {
    font-size:15px
  }

  .card-variant {
    display:block
  }

  .care-feature {
    gap:34px
  }

  .care-feature-copy {
    padding:26px 0 26px 28px
  }

  .care-feature h2 {
    font-size:26px
  }

  .service-strip {
    gap:25px
  }

  .service-strip strong {
    font-size:14px
  }

  .service-strip small {
    font-size:12px
  }

  .cart_item .product-name a {
    font-size:13px
  }

  .woocommerce-cart-form table.shop_table th,.woocommerce-cart-form table.shop_table td {
    padding:15px 9px
  }

  .woocommerce table.shop_table th,.woocommerce table.shop_table td {
    font-size:13px
  }

  .cart-collaterals .cart_totals {
    padding:22px
  }

  .cart-collaterals table.shop_table th,.cart-collaterals table.shop_table td {
    font-size:13px
  }

  .woocommerce-checkout #order_review {
    padding:22px
  }

  .woocommerce-checkout #order_review .shop_table th,.woocommerce-checkout #order_review .shop_table td {
    font-size:13px
  }

}

@media(max-width:780px) {
  .wrap {
    width:calc(100% - 36px)
  }

  body {
    font-size:16px
  }

  .demo-strip {
    font-size:11px;
    padding:7px 14px
  }

  .header-main {
    height:78px;
    gap:15px
  }

  .wordmark {
    min-width:90px
  }

  .wordmark strong {
    font-size:38px
  }

  .wordmark>span {
    font-size:10px
  }

  .header-actions {
    gap:3px
  }

  .header-actions .icon-button {
    width:44px;
    height:44px;
    padding:10px
  }

  .bag-button {
    height:44px;
    min-width:44px
  }

  .bag-label {
    display:none
  }

  .cart-count {
    min-width:18px;
    height:18px;
    line-height:18px;
    font-size:10px;
    left:0;
    top:0
  }

  .header-search>label {
    font-size:14px
  }

  .header-search .button {
    font-size:14px;
    padding-inline:18px
  }

  .header-search input::placeholder {
    font-size:12px
  }

  .collection-intro {
    padding-block:25px 20px
  }

  .collection-intro-copy {
    display:block;
    margin-bottom:22px
  }

  .collection-intro-copy h1 {
    font-size:26px;
    font-weight:400;
    margin-bottom:8px
  }

  .collection-intro-copy p {
    font-size:13px;
    line-height:1.9;
    max-width:440px
  }

  .collection-entrances {
    grid-template-columns:1fr 1fr;
    gap:14px
  }

  .collection-entry-image {
    height:auto;
    aspect-ratio:4/5
  }

  .collection-entry-caption {
    display:block;
    padding-top:13px
  }

  .collection-entry-caption h2 {
    font-size:18px;
    line-height:1.7;
    margin-bottom:2px
  }

  .collection-entry-caption p {
    display:none
  }

  .collection-entry-action {
    font-size:13px;
    min-height:44px;
    line-height:1.8
  }

  .category-strip {
    grid-template-columns:repeat(3,minmax(0,1fr));
    padding-block:6px 13px;
    gap:3px 8px;
    overflow:visible
  }

  .category-strip>a {
    font-size:14px;
    min-height:44px;
    white-space:normal;
    padding:4px 0
  }

  .section {
    padding-block:34px
  }

  .section-heading {
    gap:15px;
    margin-bottom:22px;
    align-items:center
  }

  .section-heading h2 {
    font-size:23px;
    line-height:1.65;
    font-weight:400
  }

  .section-heading>.text-link {
    font-size:13px;
    min-height:44px;
    white-space:nowrap
  }

  .product-grid,.catalogue .product-grid {
    gap:29px 14px
  }

  .product-card-info {
    padding-top:12px
  }

  .card-line {
    font-size:12px;
    margin-bottom:4px
  }

  .product-card h3 {
    font-size:14px;
    line-height:1.85;
    margin-bottom:4px;
    min-height:0
  }

  .price {
    font-size:15px;
    line-height:1.9
  }

  .woocommerce-Price-currencySymbol,.product-card .woocommerce-Price-currencySymbol {
    font-size:11px
  }

  .card-variant {
    display:block;
    font-size:12px;
    margin-top:2px
  }

  .product-badge {
    font-size:11px;
    top:8px;
    right:8px;
    padding:4px 7px
  }

  .care-feature {
    grid-template-columns:1fr 1.15fr;
    gap:20px;
    margin-block:8px 30px
  }

  .care-feature-image {
    height:280px
  }

  .care-feature-copy {
    padding:22px 0 22px 18px
  }

  .care-feature h2 {
    font-size:22px;
    margin-bottom:9px;
    line-height:1.7
  }

  .care-feature p {
    font-size:13px;
    line-height:1.95;
    margin-bottom:16px
  }

  .care-feature .button {
    font-size:12px;
    padding:10px 14px;
    min-height:44px
  }

  .service-strip {
    padding-block:16px 10px;
    margin-bottom:30px;
    gap:20px
  }

  .service-strip>a {
    gap:16px
  }

  .service-strip strong {
    font-size:14px
  }

  .service-strip small {
    font-size:12px
  }

  .service-strip>a>svg {
    width:27px;
    height:27px
  }

  .footer-grid {
    grid-template-columns:1fr 1fr;
    gap:26px;
    padding-bottom:24px
  }

  .footer-grid>div:first-child {
    display:block;
    grid-column:1/-1;
    padding-bottom:10px
  }

  .footer-brand {
    align-items:flex-start;
    margin-bottom:17px
  }

  .footer-brand strong {
    font-size:40px
  }

  .footer-grid p {
    font-size:14px;
    line-height:1.95;
    margin-bottom:9px
  }

  .footer-grid h2 {
    font-size:15px;
    margin-bottom:12px
  }

  .footer-grid>div>a:not(.wordmark) {
    font-size:13px;
    line-height:1.9;
    display:flex;
    align-items:center;
    min-height:44px;
    padding-block:7px
  }

  .footer-bottom {
    font-size:11px;
    gap:8px
  }

  .demo-controls>div {
    font-size:12px
  }

  .breadcrumbs,.woocommerce-breadcrumb {
    font-size:12px;
    line-height:1.9;
    margin-bottom:22px
  }

  .catalogue {
    padding-block:22px 40px
  }

  .catalogue-heading {
    padding-block:2px 25px
  }

  .catalogue-heading h1 {
    font-size:28px;
    font-weight:400;
    margin-bottom:10px;
    line-height:1.7
  }

  .catalogue-heading p:last-child {
    font-size:14px;
    line-height:1.95
  }

  .line-tabs {
    gap:25px
  }

  .line-tabs a {
    font-size:13px;
    min-height:50px
  }

  .catalogue-toolbar {
    padding-block:17px;
    gap:12px
  }

  .result-count {
    font-size:13px;
    min-width:0
  }

  .filter-trigger {
    font-size:12px;
    gap:8px;
    padding:8px 11px;
    min-height:44px;
    white-space:nowrap
  }

  .filter-trigger svg {
    width:20px
  }

  .filter-panel {
    padding:18px 24px 35px;
    width:min(350px,94vw);
    padding-bottom:calc(35px + env(safe-area-inset-bottom));
    scroll-padding-bottom:165px
  }

  .filter-panel-heading h2 {
    font-size:20px;
    font-weight:400
  }

  .filter-field label,.price-filter legend {
    font-size:14px
  }

  .filter-field input,.filter-field select {
    font-size:15px!important;
    min-height:48px
  }

  .filter-field input::placeholder {
    font-size:13px
  }

  .filter-checkbox {
    font-size:14px;
    min-height:48px
  }

  .filter-actions {
    padding-bottom:calc(15px + env(safe-area-inset-bottom));
    bottom:calc(-35px - env(safe-area-inset-bottom));
    gap:3px
  }

  .filter-actions .button {
    font-size:15px
  }

  .filter-actions .text-link {
    font-size:13px
  }

  .filter-field {
    scroll-margin-bottom:175px
  }

  .filter-field select {
    scroll-margin-bottom:175px
  }

  .pagination {
    gap:8px
  }

  .page-numbers {
    font-size:14px;
    min-width:44px;
    min-height:44px
  }

  .state-panel {
    padding:38px 20px;
    min-height:260px;
    margin-block:20px
  }

  .state-panel h1,.state-panel h2 {
    font-size:24px;
    font-weight:400;
    line-height:1.75
  }

  .state-panel p {
    font-size:14px;
    line-height:2
  }

  .state-panel .button {
    font-size:14px;
    line-height:1.9
  }

  .page-shell {
    padding-block:23px 40px
  }

  .prose>h1 {
    font-size:29px;
    font-weight:400;
    margin-bottom:26px
  }

  .prose h2 {
    font-size:23px
  }

  .prose h3 {
    font-size:19px
  }

  .prose p,.prose li {
    font-size:15px;
    line-height:2
  }

  .page-content th,.page-content td {
    font-size:13px;
    padding:11px
  }

  .commerce-shell {
    padding-block:22px 40px
  }

  .summary .product_title {
    font-size:28px;
    font-weight:400;
    line-height:1.7;
    margin-bottom:13px
  }

  .product-line {
    font-size:13px;
    font-weight:400;
    margin-bottom:10px
  }

  .summary>.price {
    font-size:22px;
    padding-bottom:20px;
    margin-bottom:20px
  }

  .summary>.price .woocommerce-Price-currencySymbol {
    font-size:13px
  }

  .woocommerce-product-details__short-description {
    font-size:14px;
    line-height:2
  }

  .summary .stock {
    font-size:14px
  }

  .summary form.cart .single_add_to_cart_button {
    font-size:15px;
    min-height:50px
  }

  .variations th {
    font-size:14px
  }

  .variations select {
    font-size:16px;
    min-height:50px
  }

  .reset_variations {
    font-size:13px;
    min-height:44px
  }

  .product-reassurance {
    font-size:12px;
    line-height:1.9;
    padding-block:18px;
    gap:8px
  }

  .product_meta {
    font-size:13px;
    line-height:2
  }

  .woocommerce-tabs .tabs {
    gap:24px;
    margin-bottom:24px
  }

  .woocommerce-tabs .tabs a {
    font-size:14px;
    min-height:54px
  }

  .woocommerce-Tabs-panel {
    font-size:14px
  }

  .woocommerce-Tabs-panel h2 {
    font-size:23px
  }

  .woocommerce-Tabs-panel p {
    font-size:14px;
    line-height:2.1
  }

  .woocommerce-product-attributes th,.woocommerce-product-attributes td {
    font-size:13px;
    padding:13px 10px
  }

  .woocommerce-product-attributes th {
    width:110px
  }

  .related.products {
    margin-top:35px
  }

  .related.products>h2 {
    font-size:24px;
    font-weight:400;
    margin-bottom:24px
  }

  ul.products {
    gap:28px 14px
  }

  ul.products .woocommerce-loop-product__title {
    font-size:14px;
    line-height:1.85
  }

  ul.products .price {
    font-size:15px
  }

  ul.products li.product .button {
    font-size:13px;
    min-height:44px
  }

  .woocommerce-message,.woocommerce-info,.woocommerce-error {
    font-size:14px;
    padding:15px 17px;
    line-height:1.95
  }

  .woocommerce-message .button {
    font-size:13px;
    min-height:44px
  }

  .woocommerce table.shop_table th,.woocommerce table.shop_table td {
    font-size:14px
  }

  .woocommerce-cart-form table.shop_table tr.cart_item {
    grid-template-columns:74px minmax(0,1fr) 52px;
    column-gap:12px;
    min-height:150px;
    padding:20px 0
  }

  .cart_item .product-thumbnail,.cart_item .product-thumbnail img {
    width:74px
  }

  .cart_item .product-thumbnail img {
    height:96px
  }

  .cart_item .product-name a {
    font-size:14px;
    line-height:1.9
  }

  .cart_item .product-name {
    padding-left:26px!important
  }

  .cart_item .product-remove {
    width:44px;
    left:0;
    top:12px
  }

  .cart_item .product-remove a {
    font-size:23px!important;
    min-width:44px;
    min-height:44px
  }

  .cart_item .product-price {
    font-size:14px!important;
    margin-top:7px
  }

  .cart_item .product-quantity .qty {
    font-size:15px;
    min-height:44px;
    width:52px;
    padding:6px!important
  }

  .woocommerce-cart-form .coupon .button {
    font-size:13px;
    padding-inline:15px
  }

  .coupon input {
    font-size:14px
  }

  .woocommerce-cart-form .actions>.button {
    font-size:14px;
    min-height:48px
  }

  .cart-collaterals .cart_totals {
    padding:22px
  }

  .cart-collaterals h2 {
    font-size:22px;
    font-weight:400
  }

  .cart-collaterals .shop_table th,.cart-collaterals .shop_table td {
    font-size:14px!important;
    padding:17px 0
  }

  .cart-collaterals .shop_table .woocommerce-shipping-methods {
    font-size:13px
  }

  .woocommerce-shipping-methods li {
    font-size:13px;
    line-height:2;
    margin-bottom:15px
  }

  .shipping-calculator-button {
    font-size:13px
  }

  .wc-proceed-to-checkout .button {
    font-size:15px;
    min-height:50px
  }

  #customer_details h3,#order_review_heading {
    font-size:23px;
    font-weight:400;
    margin-bottom:24px
  }

  .form-row label {
    font-size:14px;
    margin-bottom:7px;
    line-height:1.9
  }

  .form-row {
    margin-bottom:23px!important
  }

  .form-row input.input-text,.form-row textarea,.form-row select {
    font-size:16px;
    min-height:50px
  }

  .form-row .optional {
    font-size:12px
  }

  .woocommerce-checkout #order_review {
    padding:20px
  }

  .woocommerce-checkout #order_review .shop_table th,.woocommerce-checkout #order_review .shop_table td {
    font-size:13px;
    padding:15px 5px
  }

  .woocommerce-checkout #order_review .shop_table small {
    font-size:12px;
    line-height:1.9
  }

  .wc_payment_methods li>label {
    font-size:14px;
    min-height:44px;
    line-height:44px
  }

  .payment_box p {
    font-size:13px!important;
    line-height:1.95!important
  }

  .woocommerce-privacy-policy-text p,.woocommerce-terms-and-conditions-wrapper p {
    font-size:12px!important;
    line-height:2!important
  }

  .form-row label.checkbox {
    font-size:13px;
    min-height:44px
  }

  .place-order #place_order {
    font-size:15px;
    min-height:50px
  }

  .woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    font-size:13px
  }

  .woocommerce-additional-fields h3 {
    font-size:20px!important;
    font-weight:400
  }

  .woocommerce-thankyou-order-received {
    font-size:24px!important
  }

  .woocommerce-order-overview {
    padding:22px;
    gap:20px
  }

  .woocommerce-order-overview li {
    font-size:12px
  }

  .woocommerce-order-overview strong {
    font-size:15px
  }

  .woocommerce-order-details h2,.woocommerce-customer-details h2,.fz-order-next h2 {
    font-size:23px;
    font-weight:400
  }

  .woocommerce-order .shop_table th,.woocommerce-order .shop_table td {
    font-size:13px!important;
    padding:15px 8px!important
  }

  .woocommerce-customer-details address {
    font-size:15px;
    line-height:2.1;
    padding:22px
  }

  .woocommerce-orders-table th,.woocommerce-orders-table td {
    font-size:12px!important;
    padding:12px 7px!important
  }

  .woocommerce-MyAccount-navigation a {
    font-size:13px;
    min-height:44px
  }

  .fz-simulator {
    padding:28px 18px 42px
  }

  .fz-pay-card {
    padding:26px 21px
  }

  .fz-pay-card h1 {
    font-size:26px;
    font-weight:400
  }

  .fz-pay-card p {
    font-size:14px;
    line-height:1.95
  }

  .fz-pay-card dt {
    font-size:13px
  }

  .fz-pay-card dd {
    font-size:15px
  }

  .fz-pay-actions .button {
    font-size:14px;
    min-height:50px
  }

  .woocommerce .blockUI.blockOverlay::after {
    font-size:13px
  }

}

@media(max-width:430px) {
  .collection-intro-copy h1 {
    font-size:25px
  }

  .collection-intro-copy p {
    font-size:13px
  }

  .collection-entry-caption h2 {
    font-size:17px
  }

  .collection-entry-action {
    font-size:12px
  }

  .section-heading h2 {
    font-size:22px
  }

  .section-heading>.text-link {
    font-size:12px
  }

  .product-grid,.catalogue .product-grid {
    gap:28px 12px
  }

  .product-card h3 {
    font-size:14px
  }

  .price {
    font-size:14px
  }

  .product-card .woocommerce-Price-currencySymbol {
    font-size:10px
  }

  .card-line {
    font-size:11px
  }

  .card-variant {
    font-size:12px
  }

  .care-feature {
    grid-template-columns:1fr;
    gap:0
  }

  .care-feature-image {
    height:190px
  }

  .care-feature-copy {
    max-width:none;
    padding:24px
  }

  .care-feature h2 {
    font-size:24px
  }

  .care-feature p {
    font-size:14px
  }

  .care-feature .button {
    font-size:14px
  }

  .catalogue-heading h1 {
    font-size:27px
  }

  .catalogue-heading p:last-child {
    font-size:14px
  }

  .filter-trigger {
    font-size:12px
  }

  .footer-grid {
    gap:18px
  }

  .footer-grid>div>a:not(.wordmark) {
    font-size:12px
  }

  .woocommerce-cart-form table.shop_table tr.cart_item {
    grid-template-columns:65px minmax(0,1fr) 48px;
    column-gap:10px
  }

  .cart_item .product-thumbnail,.cart_item .product-thumbnail img {
    width:65px
  }

  .cart_item .product-thumbnail img {
    height:85px
  }

  .cart_item .product-name a {
    font-size:13px
  }

  .cart_item .product-quantity .qty {
    width:48px
  }

  .woocommerce-cart-form .coupon .button {
    font-size:12px;
    padding-inline:14px
  }

  .woocommerce-order .shop_table th,.woocommerce-order .shop_table td {
    font-size:12px!important
  }

  .woocommerce-checkout #order_review .shop_table th,.woocommerce-checkout #order_review .shop_table td {
    font-size:12px
  }

  .woocommerce-shipping-methods li {
    font-size:12px
  }

}

@media(prefers-reduced-motion:reduce) {
  .collection-entry:hover .collection-entry-image img {
    transform:none
  }

}

/* User-supplied identity: exact logo pixels and sampled Tiffany #89C4BE. */ :root {
  --brand:#89c4be;
  --brand-ink:#193f3b;
  --brand-hover:#78b8b1;
  --teal:var(--brand);
  --teal-dark:var(--brand-hover);
  --ink:#20332f;
  --muted:#4d615a;
  --focus:var(--brand-ink)
}

body {
  background:#fafbf7
}

.demo-strip {
  background:#f2f7f1;
  color:#294b45
}

.site-header {
  background:var(--brand);
  border-color:#70ada6
}

.header-main {
  height:112px;
  gap:30px
}

.wordmark {
  flex-direction:row;
  align-items:center;
  gap:13px;
  min-width:0
}

.brand-logo {
  width:90px;
  height:auto;
  aspect-ratio:830/834;
  object-fit:contain;
  clip-path:circle(46.3% at 50.4% 48.8%);
  flex-shrink:0
}

.wordmark>.store-descriptor {
  font-size:14px;
  letter-spacing:0;
  line-height:1.8;
  color:var(--brand-ink);
  padding:0;
  margin:0
}

.header-actions,.desktop-nav a {
  color:var(--brand-ink)
}

.desktop-nav a:hover {
  color:#102d29;
  border-color:#244e47
}

.header-actions .icon-button:hover {
  background:#a4d2ca
}

.cart-count {
  background:#e8f6ee;
  color:var(--brand-ink)
}

.header-search {
  border-color:#73ada7
}

.mobile-nav {
  border-color:#73ada7
}

.mobile-nav a {
  border-color:#73ada7;
  color:var(--brand-ink)
}

.icon-button {
  color:var(--brand-ink)
}

.header-main .icon-button:focus-visible,.header-main .bag-button:focus-visible {
  outline-color:#153b35
}

.button,button.button,a.button,input.button,.woocommerce #respond input#submit {
  background:var(--brand);
  border-color:var(--brand);
  color:var(--brand-ink)
}

.button:hover,button.button:hover,a.button:hover,input.button:hover {
  background:var(--brand-hover);
  border-color:var(--brand-hover);
  color:#112e29
}

.button.secondary {
  background:transparent;
  color:var(--brand-ink);
  border-color:#5d8980
}

.button.secondary:hover {
  background:#c4e4d9;
  color:#112e29;
  border-color:#436b61
}

.text-link,.collection-entry-action,.eyebrow,.product-line,.product_meta a,.stock.in-stock,.reset_variations,.woocommerce-message a,.woocommerce-info a,.woocommerce-Tabs-panel a,.woocommerce-order a:not(.button),.woocommerce-form-track-order a,.woocommerce-MyAccount-content a,.page-content a:not(.button) {
  color:var(--brand-ink)
}

.line-tabs a.active {
  color:var(--brand-ink);
  border-color:var(--brand-ink)
}

.product-card h3 a:hover,.category-strip a:hover,.breadcrumbs a:hover,.woocommerce-breadcrumb a:hover {
  color:#173f35
}

.woocommerce-tabs .tabs .active a {
  color:var(--brand-ink);
  border-color:var(--brand-ink)
}

ul.products li.product .button {
  background:transparent;
  border:0;
  color:var(--brand-ink)
}

.woocommerce-message,.woocommerce-info {
  background:#e7f3e9;
  border-color:var(--brand)
}

.woocommerce-message .button,.woocommerce-info .button {
  color:var(--brand-ink);
  text-decoration:none
}

.page-numbers.current {
  background:var(--brand);
  color:var(--brand-ink);
  border-color:var(--brand)
}

.filter-active-dot {
  background:var(--brand-ink)
}

.filter-checkbox input,.woocommerce-shipping-methods input,.wc_payment_methods input[type=radio],.form-row input[type=checkbox],.form-row input[type=radio] {
  accent-color:#2f675c
}

.woocommerce-error a,.woocommerce-error a:hover {
  color:#922b25!important
}

.woocommerce input[aria-invalid=true],.woocommerce select[aria-invalid=true],.woocommerce textarea[aria-invalid=true] {
  border-color:#a52e29!important;
  box-shadow:0 0 0 1px #a52e29
}

.fz-pay-card h1 {
  color:var(--brand-ink)
}

.fz-pay-card .fz-pay-actions .button:nth-child(2) {
  background:#f5d5bd;
  color:#5a321d;
  border-color:#e3bfa3
}

.fz-pay-card .fz-pay-actions .button:nth-child(3) {
  background:transparent;
  color:var(--brand-ink);
  border-color:#739789
}

.woocommerce .blockUI.blockOverlay::after {
  color:var(--brand-ink)
}

.loading-dot {
  border-top-color:var(--brand-ink)
}

.care-feature,.cart-collaterals .cart_totals,.woocommerce-checkout #order_review,.woocommerce-order-overview,.woocommerce-customer-details address,.state-panel {
  background:#edf5ed
}

.payment_box {
  background:#deeee3;
  color:#3d564a
}

.site-footer {
  background:var(--brand);
  border-color:#70ada6
}

.footer-grid {
  grid-template-columns:1.3fr 1fr 1fr
}

.footer-brand {
  align-items:center;
  gap:13px;
  margin-bottom:17px
}

.footer-brand .brand-logo {
  width:90px
}

.footer-grid p,.footer-grid p.muted,.footer-grid h2,.footer-grid>div>a:not(.wordmark),.footer-bottom {
  color:var(--brand-ink)
}

.footer-grid>div>a:hover {
  color:#102d29
}

.footer-bottom {
  border-color:#6fa99f
}

.demo-controls>div {
  background:#edf7ee;
  color:var(--brand-ink)
}

.collection-name {
  display:flex;
  align-items:center;
  gap:10px
}

.line-avatar {
  width:40px;
  height:40px;
  border-radius:50%;
  object-fit:contain;
  flex-shrink:0
}

.collection-entry-caption h2 {
  margin:0
}

.collection-entry-caption p {
  margin-top:6px
}

.catalogue-title-row {
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:10px
}

.catalogue-title-row .line-avatar {
  width:54px;
  height:54px
}

.catalogue-title-row h1 {
  margin:0
}

.catalogue-heading p {
  margin-top:0
}

@media(max-width:1100px) {
  .wordmark>.store-descriptor {
    font-size:12px;
    max-width:85px
  }

  .header-main {
    gap:20px
  }

  .desktop-nav {
    gap:16px
  }

  .desktop-nav a {
    font-size:13px
  }

  .collection-entry-caption {
    display:block
  }

  .collection-entry-action {
    margin-top:4px
  }

  .collection-entry-caption p {
    margin-right:50px
  }

}

@media(max-width:780px) {
  .header-main {
    height:92px;
    gap:12px
  }

  .wordmark {
    gap:8px;
    align-items:center;
    min-width:0
  }

  .brand-logo {
    width:70px
  }

  .wordmark>.store-descriptor {
    font-size:12px;
    max-width:85px;
    line-height:1.9
  }

  .header-actions {
    gap:0;
    flex-shrink:0
  }

  .header-actions .icon-button {
    width:44px;
    height:44px
  }

  .bag-button {
    width:44px;
    min-width:44px
  }

  .header-search {
    background:var(--brand)
  }

  .mobile-nav {
    background:var(--brand)
  }

  .footer-brand {
    display:flex!important;
    gap:14px;
    margin-bottom:18px
  }

  .footer-brand .brand-logo {
    width:90px
  }

  .footer-brand>.store-descriptor {
    font-size:14px;
    max-width:none
  }

  .collection-name {
    gap:7px;
    align-items:center
  }

  .line-avatar {
    width:30px;
    height:30px
  }

  .collection-entry-caption h2 {
    font-size:16px;
    line-height:1.7
  }

  .collection-entry-action {
    margin-top:4px;
    font-size:12px
  }

  .collection-entry-caption p {
    display:none
  }

  .catalogue-title-row {
    gap:11px;
    margin-bottom:10px
  }

  .catalogue-title-row .line-avatar {
    width:44px;
    height:44px
  }

  .catalogue-title-row h1 {
    font-size:27px
  }

  .footer-bottom {
    font-size:11px
  }

  .footer-grid>div>a:not(.wordmark) {
    font-size:13px
  }

}

@media(max-width:370px) {
  .wordmark>.store-descriptor {
    font-size:11px;
    max-width:72px
  }

  .header-main {
    gap:8px
  }

  .collection-name {
    gap:5px
  }

  .line-avatar {
    width:27px;
    height:27px
  }

  .collection-entry-caption h2 {
    font-size:15px
  }

  .collection-entry-action {
    font-size:12px
  }

}

/* Enhanced PNG on white: preserve the complete mark without a circular crop. */
.brand-logo-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90px;
  height: 90px;
  flex-shrink: 0;
  background: #fff;
  border-radius: 8px;
}
.brand-logo-png {
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  object-fit: contain;
  clip-path: none;
  border-radius: 0;
  padding: 3px;
}
@media (max-width: 780px) {
  .brand-logo-badge {
    width: 70px;
    height: 70px;
  }
  .footer-brand .brand-logo-badge {
    width: 90px;
    height: 90px;
  }
}

/* Selected filters remain visible when the mobile drawer is closed. */
.active-filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.active-filter-chips a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:6px 12px;border:1px solid #b4ccc6;border-radius:4px;background:#edf5f2;color:#193f3b;font-size:13px;text-decoration:none}.active-filter-chips a:hover{background:#dceee8}.active-filter-chips a:focus-visible{outline:3px solid #996020;outline-offset:3px}
/* Keep direct account access on small screens alongside search, favorites and cart. */
@media(max-width:780px){.header-main .account-link{display:inline-flex}.header-main .wordmark>.store-descriptor{display:none}}
