/*
Theme Name: Portabex
Version: 1.0.0
Text Domain: passport-niche
*/
:root{--paper:#F7F1E6;--ink:#14213D;--accent:#B5654A;--muted:#6B6459;--surface:#FFFDF8;--line:color-mix(in srgb,var(--ink) 20%,transparent)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2{line-height:1.08;letter-spacing:-.035em}h2{font-size:clamp(2rem,3.6vw,3.5rem)}h3{line-height:1.25}p{max-width:65ch}.wrap{width:min(100% - 48px,1200px);margin-inline:auto}.skip-link{position:absolute;left:-10000px;top:8px;background:var(--paper);padding:10px;z-index:999}.skip-link:focus{left:10px}
.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{min-height:80px;display:flex;align-items:center;gap:24px}.brand{font-weight:800;letter-spacing:-.05em;font-size:1.6rem;text-decoration:none}.header-nav{margin-left:auto}.header-nav ul,.footer-nav ul{display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none;margin:0;padding:0}.header-nav a,.header-cart,.footer-nav a{font-size:.9rem;text-decoration:none}.header-cart{border-bottom:1px solid currentColor}.header-nav a:hover,.footer-nav a:hover{text-decoration:underline}.header-search{display:flex;max-width:210px;border:1px solid var(--line)}.header-search input{width:100%;min-width:0;border:0;background:transparent;padding:9px;color:var(--ink)}.header-search button{border:0;background:transparent;color:var(--ink);padding:9px;cursor:pointer}
.hero{position:relative;overflow:hidden}.hero-inner{min-height:520px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;padding-block:60px}.hero-copy{position:relative;z-index:1}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;margin-bottom:20px}.hero h1{font-size:clamp(2.9rem,6vw,5.5rem);max-width:12ch;margin-bottom:24px}.hero p{font-size:1.08rem;max-width:48ch}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;background:var(--ink);color:var(--paper);font-weight:700;text-decoration:none}.button:hover{filter:brightness(1.15)}.hero-art{min-height:365px;position:relative}.hero-art:before,.hero-art:after{content:'';position:absolute;display:block}
.section{padding-block:80px;border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.section-heading h2{margin-bottom:0}.intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}.intro p{font-size:1.08rem}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.product-card{display:flex;flex-direction:column;min-width:0;text-decoration:none}.product-media{aspect-ratio:1;background:var(--surface);overflow:hidden}.product-media img{width:100%;height:100%;object-fit:contain}.product-card h3{font-size:1rem;margin:14px 0 8px;overflow-wrap:anywhere}.product-card .price{margin-top:auto;font-weight:700}.product-card:hover h3{text-decoration:underline}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.guide-card{padding:25px;background:var(--surface);min-width:0}.guide-number{display:block;color:var(--accent);font-size:.8rem;font-weight:700;letter-spacing:.12em;margin-bottom:35px}.guide-card h3{font-size:1.18rem}.guide-card p{margin-bottom:0}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.faq-list details{border-top:1px solid var(--line);padding:18px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:700}.faq-list p{padding-top:12px;margin-bottom:0}.site-footer{padding:45px 0;background:var(--ink);color:var(--paper)}.footer-inner{display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap}.footer-brand{font-size:1.4rem;font-weight:800}.footer-small{font-size:.8rem;opacity:.85}.page-shell{padding-block:60px;min-height:50vh}.page-shell .entry-content{max-width:80ch;overflow-wrap:anywhere}.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important}.woocommerce ul.products li.product img,.woocommerce div.product div.images img{max-width:100%;height:auto;object-fit:contain}.woocommerce .quantity input{max-width:90px}
@media(max-width:820px){.header-inner{flex-wrap:wrap;padding-block:18px;gap:14px}.header-nav{order:3;flex:0 0 100%;margin:0}.header-search{margin-left:auto}.hero-inner{gap:25px}.catalog-grid,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.intro,.faq-grid{grid-template-columns:1fr;gap:20px}}
@media(max-width:600px){.wrap{width:min(100% - 32px,1200px)}.header-inner{display:grid;grid-template-columns:1fr auto;gap:12px}.brand{grid-column:1;grid-row:1}.header-cart{grid-column:2;grid-row:1;justify-self:end}.header-search{grid-column:1/-1;grid-row:2;max-width:none;width:100%;margin:0}.header-nav{grid-column:1/-1;grid-row:3}.hero-inner{grid-template-columns:1fr;min-height:0;padding-block:48px;gap:15px}.hero h1{font-size:clamp(2.7rem,11vw,4rem)}.hero-art{min-height:230px}.section{padding-block:55px}.section-heading{align-items:start;flex-direction:column}.catalog-grid{gap:14px}.guide-grid{grid-template-columns:1fr}.guide-number{margin-bottom:15px}.header-nav ul{gap:8px 14px}.header-nav a{font-size:.82rem}.footer-inner{display:block}.footer-nav{margin-top:20px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.passport-layout .hero{background:var(--surface)}.passport-layout .hero h1,.passport-layout h2{font-family:Georgia,serif;font-weight:400}.passport-layout .hero-art:before{width:47%;height:82%;left:25%;top:10%;border-radius:10px;background:var(--ink);transform:rotate(-8deg);box-shadow:22px 18px 0 var(--accent)}.passport-layout .hero-art:after{width:22%;height:30%;left:38%;top:36%;border:1px solid var(--paper);border-radius:50%;opacity:.7}.passport-layout .guide-card{border-top:3px solid var(--accent)}.passport-layout .intro{padding:30px;border:1px solid var(--line)}

/* Keep WooCommerce controls consistent with the site's own palette. */
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-size:1.25rem;font-weight:700}
.woocommerce #respond input#submit.alt,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--ink);color:var(--paper);min-height:48px;padding:12px 20px;border-radius:2px}
.woocommerce #respond input#submit.alt:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{background:var(--accent);color:var(--paper)}
.woocommerce div.product form.cart .quantity input.qty{min-height:48px;width:68px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.woocommerce div.product div.images img{max-width:100%;height:auto;object-fit:contain}

/* ============================================================
   Portabex — Homepage overrides (scoped to .passport-layout)
   ============================================================ */

.passport-layout {
  --pl-gap-desktop: 24px;
  --pl-gap-mobile: 18px;
  --pl-radius: 4px;
  --pl-shadow: 0 1px 0 var(--line);
}

/* ---------- Global rhythm inside layout ---------- */
.passport-layout .section {
  padding-block: 72px;
}
.passport-layout .section + .section {
  border-top: 1px solid var(--line);
}
.passport-layout .section-heading {
  margin-bottom: var(--pl-gap-desktop);
  align-items: flex-end;
}
.passport-layout .section-heading .eyebrow {
  margin-bottom: 10px;
  color: var(--accent);
}
.passport-layout .eyebrow {
  color: var(--accent);
}

/* ---------- HERO ---------- */
.passport-layout .hero {
  background:
    radial-gradient(120% 90% at 100% 0%, color-mix(in srgb, var(--accent) 8%, transparent) 0%, transparent 55%),
    var(--surface);
  border-bottom: 1px solid var(--line);
}
.passport-layout .hero-inner {
  min-height: 560px;
  padding-block: 72px;
  gap: 56px;
}
.passport-layout .hero h1 {
  font-size: clamp(2.6rem, 5.4vw, 4.75rem);
  max-width: 14ch;
  margin-bottom: 22px;
  color: var(--ink);
}
.passport-layout .hero p {
  color: var(--muted);
  font-size: 1.08rem;
  max-width: 46ch;
}
.passport-layout .hero .actions {
  margin-top: 32px;
  gap: 20px;
}
.passport-layout .hero .button {
  border-radius: var(--pl-radius);
  letter-spacing: .01em;
}
.passport-layout .hero .actions > a:not(.button) {
  color: var(--ink);
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
}
.passport-layout .hero .actions > a:not(.button):hover {
  color: var(--accent);
}

/* Hero art — keep the existing shapes but refine */
.passport-layout .hero-art {
  min-height: 400px;
}
.passport-layout .hero-art:before {
  box-shadow: 22px 18px 0 var(--accent), 0 30px 60px -30px rgba(20, 33, 61, .35);
}
.passport-layout .hero-art:after {
  border-color: color-mix(in srgb, var(--paper) 70%, transparent);
}

/* ---------- CATALOG ---------- */
.passport-layout #catalog .section-heading a {
  color: var(--ink);
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
  white-space: nowrap;
}
.passport-layout #catalog .section-heading a:hover {
  color: var(--accent);
}

.passport-layout .catalog-grid {
  gap: var(--pl-gap-desktop);
  align-items: stretch;
}

.passport-layout .product-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--pl-radius);
  padding: 14px 14px 18px;
  transition: border-color .2s ease, transform .2s ease;
}
.passport-layout .product-card:hover {
  border-color: color-mix(in srgb, var(--ink) 45%, transparent);
  transform: translateY(-2px);
}
.passport-layout .product-card:hover h3 {
  text-decoration: none;
  color: var(--accent);
}

.passport-layout .product-media {
  aspect-ratio: 1 / 1;
  background: var(--paper);
  border-radius: calc(var(--pl-radius) - 1px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  overflow: hidden;
}
.passport-layout .product-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.passport-layout .product-card h3 {
  font-family: Georgia, serif;
  font-weight: 400;
  font-size: 1.05rem;
  line-height: 1.3;
  margin: 16px 0 8px;
  color: var(--ink);
  /* No fixed height — let content flow */
}
.passport-layout .product-card .price {
  margin-top: auto;
  padding-top: 6px;
  font-weight: 700;
  color: var(--ink);
  font-size: .95rem;
}
.passport-layout .product-card .price del {
  color: var(--muted);
  font-weight: 400;
  margin-right: 6px;
}
.passport-layout .product-card .price ins {
  text-decoration: none;
  color: var(--accent);
}

/* ---------- INTRO / APPROACH ---------- */
.passport-layout .intro {
  padding: 40px;
  border: 1px solid var(--line);
  border-radius: var(--pl-radius);
  background: var(--surface);
  gap: 48px;
  align-items: center;
}
.passport-layout .intro h2 {
  margin-bottom: 0;
}
.passport-layout .intro p {
  color: var(--muted);
  font-size: 1.08rem;
  margin-bottom: 0;
}

/* ---------- GUIDE ---------- */
.passport-layout .guide-grid {
  gap: var(--pl-gap-desktop);
  align-items: stretch;
}
.passport-layout .guide-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-top: 3px solid var(--accent);
  border-radius: var(--pl-radius);
  padding: 28px 26px 30px;
  display: flex;
  flex-direction: column;
}
.passport-layout .guide-number {
  color: var(--accent);
  margin-bottom: 28px;
  font-size: .78rem;
}
.passport-layout .guide-card h3 {
  font-family: Georgia, serif;
  font-weight: 400;
  font-size: 1.25rem;
  margin-bottom: 12px;
  color: var(--ink);
}
.passport-layout .guide-card p {
  color: var(--muted);
  margin-bottom: 0;
  font-size: .98rem;
}

/* ---------- FAQ ---------- */
.passport-layout .faq-grid {
  gap: 56px;
  align-items: start;
}
.passport-layout .faq-grid > div:first-child h2 {
  margin-bottom: 0;
}
.passport-layout .faq-list details {
  padding: 20px 0;
  border-top: 1px solid var(--line);
}
.passport-layout .faq-list details:last-child {
  border-bottom: 1px solid var(--line);
}
.passport-layout .faq-list summary {
  font-weight: 600;
  color: var(--ink);
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-right: 4px;
}
.passport-layout .faq-list summary::-webkit-details-marker {
  display: none;
}
.passport-layout .faq-list summary::after {
  content: "+";
  font-family: Georgia, serif;
  font-size: 1.4rem;
  line-height: 1;
  color: var(--accent);
  transition: transform .2s ease;
  flex-shrink: 0;
}
.passport-layout .faq-list details[open] summary::after {
  content: "−";
}
.passport-layout .faq-list details[open] summary {
  color: var(--accent);
}
.passport-layout .faq-list p {
  padding-top: 14px;
  margin-bottom: 0;
  color: var(--muted);
  max-width: 60ch;
}

/* ---------- Empty state ---------- */
.passport-layout #catalog > .wrap > p {
  color: var(--muted);
  padding: 32px;
  background: var(--surface);
  border: 1px dashed var(--line);
  border-radius: var(--pl-radius);
  text-align: center;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1024px) {
  .passport-layout .catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .passport-layout .section {
    padding-block: 56px;
  }
  .passport-layout .hero-inner {
    min-height: 0;
    padding-block: 56px;
    gap: 32px;
  }
  .passport-layout .hero-art {
    min-height: 280px;
  }
  .passport-layout .catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--pl-gap-mobile);
  }
  .passport-layout .guide-grid {
    grid-template-columns: 1fr;
    gap: var(--pl-gap-mobile);
  }
  .passport-layout .intro {
    padding: 28px;
    gap: 20px;
  }
  .passport-layout .faq-grid {
    gap: 28px;
  }
}

@media (max-width: 600px) {
  .passport-layout .section {
    padding-block: 44px;
  }
  .passport-layout .section-heading {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: var(--pl-gap-mobile);
  }
  .passport-layout .hero-inner {
    padding-block: 44px;
    gap: 24px;
  }
  .passport-layout .hero h1 {
    font-size: clamp(2.4rem, 10vw, 3.4rem);
  }
  .passport-layout .hero-art {
    min-height: 220px;
  }
  .passport-layout .hero .actions {
    gap: 16px;
    margin-top: 24px;
  }
  .passport-layout .catalog-grid {
    gap: var(--pl-gap-mobile);
  }
  .passport-layout .product-card {
    padding: 10px 10px 14px;
  }
  .passport-layout .product-card h3 {
    font-size: .95rem;
    margin: 12px 0 6px;
  }
  .passport-layout .product-media {
    padding: 8px;
  }
  .passport-layout .intro {
    padding: 22px;
  }
  .passport-layout .guide-card {
    padding: 22px 20px 24px;
  }
  .passport-layout .guide-number {
    margin-bottom: 16px;
  }
  .passport-layout .faq-list details {
    padding: 16px 0;
  }
  .passport-layout .faq-list summary {
    font-size: .98rem;
  }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  .passport-layout .product-card,
  .passport-layout .faq-list summary::after {
    transition: none;
  }
  .passport-layout .product-card:hover {
    transform: none;
  }
}
/* Home composition: product imagery and restrained spacing */
.passport-layout .section{padding-block:24px;border-bottom:0}.passport-layout .hero{margin-bottom:24px}.passport-layout .hero-inner{padding-block:38px}.passport-layout .hero-art{display:flex;align-items:center;justify-content:center}.passport-layout .hero-art:before,.passport-layout .hero-art:after{display:none}.passport-layout .hero-product{width:min(100%,460px);display:flex;flex-direction:column;background:#fffdf8;color:#14213d;text-decoration:none;padding:14px}.passport-layout .hero-product img{display:block;width:100%;height:320px;object-fit:contain}.passport-layout .hero-product span{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;padding:12px 8px}.passport-layout .hero-product small{letter-spacing:.12em;color:#b5654a}.passport-layout .hero-product em{font-style:normal;margin-left:auto;color:#8f4935}.passport-layout .product-media img{object-fit:contain}.passport-layout .catalog-grid .product-card{display:flex;flex-direction:column;height:100%}.passport-layout .catalog-grid .price{margin-top:auto}@media(max-width:600px){.passport-layout .section{padding-block:18px}.passport-layout .hero{margin-bottom:18px}.passport-layout .hero-inner{padding-block:24px}.passport-layout .hero-product img{height:230px}.passport-layout .hero-product em{margin-left:0}}

body.page .screen-care{margin:24px 0 40px}.care-crumb{font-size:13px;margin:0 0 14px;color:#61574f}.care-hero{display:grid;grid-template-columns:1.3fr .7fr;align-items:center;background:#272c2b;color:#fff;gap:24px;padding:clamp(22px,4vw,46px)}.care-hero h1{font-size:clamp(30px,4vw,46px);line-height:1.1;margin:8px 0 14px}.care-hero p{max-width:48ch}.care-hero a{color:#fff}.care-kicker{font-size:12px;letter-spacing:.15em;color:#e6b391}.care-hero figure{margin:0;background:#fff;padding:12px}.care-hero figure img{width:100%;height:200px;object-fit:contain}.care-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:24px;margin-top:24px;align-items:start}.care-layout .page-content{min-width:0}.care-lead{font-size:18px;line-height:1.6;margin:0 0 20px}.care-section{padding:22px;margin:0 0 18px;background:#fff;border:1px solid #ded4c7}.care-section h2{font-size:21px;margin:0 0 10px;color:#292e2c}.care-section p,.care-section ul{margin:0 0 12px}.care-section p:last-child{margin-bottom:0}.care-section a,.care-nav a{color:#895036}.care-nav{padding:20px;background:#e9ddcc;position:sticky;top:100px}.care-nav h2{font-size:16px;margin:0 0 12px}.care-nav a{display:block;padding:9px 0;border-top:1px solid #cabaaa;text-decoration:none}.care-nav a:hover{text-decoration:underline}@media(max-width:700px){body.page .screen-care{margin:18px 0 24px}.care-hero{grid-template-columns:1fr;gap:16px}.care-hero figure img{height:160px}.care-layout{grid-template-columns:1fr;gap:18px;margin-top:18px}.care-nav{position:static}.care-section{padding:18px;margin-bottom:16px}}

.screen-care .care-illustration{min-height:200px;background:#eadac7;display:flex;align-items:center;justify-content:center;color:#8e5235;position:relative;overflow:hidden}.screen-care .care-illustration:before,.screen-care .care-illustration:after{content:"";position:absolute;border:1px solid #caa98d;border-radius:50%;width:220px;height:220px}.screen-care .care-illustration:after{width:170px;height:170px}.screen-care .care-illustration svg{height:116px;width:116px;position:relative;z-index:1}.care-privacy .care-illustration,.care-cookie .care-illustration{background:#dbe6df;color:#3a5d50}.care-shipping .care-illustration,.care-returns .care-illustration{background:#eedac7;color:#9a5031}.care-payment .care-illustration,.care-terms .care-illustration{background:#e3e1d3;color:#545d4c}@media(max-width:700px){.screen-care .care-illustration{min-height:160px}.screen-care .care-illustration svg{width:95px;height:95px}}

.screen-care .care-hero{background:#1c3027}.screen-care .care-kicker{color:#dfbd88}.screen-care .care-nav{background:#e8e3d6}.screen-care .care-section a,.screen-care .care-nav a{color:#775b31}.screen-care .care-section h2{font-family:Georgia,serif}.screen-care .care-hero h1{font-family:Georgia,serif}

.piq-inquiry{max-width:900px;width:calc(100% - 48px);margin:24px auto;padding:28px;background:#fff;border:1px solid #ded7c9}.piq-inquiry *{box-sizing:border-box}.piq-inquiry form{display:grid;gap:16px}.piq-inquiry form p{margin:0}.piq-inquiry label{display:block;font-weight:700;margin-bottom:6px}.piq-inquiry input:not([type=hidden]),.piq-inquiry textarea{width:100%;max-width:100%;padding:12px;border:1px solid #bdb3a2;background:#fff;font:inherit}.piq-inquiry button[type=submit]{border:0;background:#1c3027;color:#fff;padding:13px 24px;font:inherit;font-weight:700;cursor:pointer}.piq-inquiry__hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.piq-inquiry__error[hidden]{display:none}@media(max-width:700px){.piq-inquiry{width:calc(100% - 32px);padding:18px;margin:18px auto}.piq-inquiry button[type=submit]{width:100%}}

.screen-care .care-hero{background:#14213d}.screen-care .care-kicker{color:#e7b09d}.screen-care .care-nav{background:#e8ded0}.screen-care .care-section a,.screen-care .care-nav a{color:#98503c}.screen-care .care-section h2,.screen-care .care-hero h1{font-family:Arial,sans-serif}.piq-inquiry button[type=submit]{background:#b5654a}
.piq-inquiry{margin-left:auto!important;margin-right:auto!important}
.site-footer .footer-composed{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}.footer-composed .footer-intro p{max-width:28ch;margin:12px 0;color:#e8dac6}.footer-composed .footer-links{display:flex;flex-direction:column;gap:10px;min-width:0}.footer-composed .footer-links strong{font-size:.72rem;letter-spacing:.14em;color:#e7b09d}.footer-composed .footer-links a{color:inherit;text-decoration:none;overflow-wrap:anywhere}.footer-composed .footer-links a:hover{text-decoration:underline}@media(max-width:600px){.site-footer .footer-composed{grid-template-columns:1fr 1fr;gap:24px}.footer-composed .footer-intro{grid-column:1/-1}}
body.single-product .page-shell{padding-block:24px 40px}
body.single-product div.product{display:flow-root}
body.single-product div.product div.images{width:51%;margin:0 0 24px;min-width:0}
body.single-product div.product div.summary{width:45%;margin:0 0 24px;background:#fff;padding:clamp(20px,3vw,36px);border:1px solid #e0dacd}
body.single-product .woocommerce-product-gallery__wrapper{background:#fff}
body.single-product div.product div.images .woocommerce-product-gallery__image img{width:100%;height:auto;max-height:540px;object-fit:contain}
body.single-product div.product div.images .flex-control-thumbs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:8px 2px;margin:0;scrollbar-width:thin}
body.single-product div.product div.images .flex-control-thumbs li{float:none!important;flex:0 0 72px;width:72px!important}
body.single-product div.product div.images .flex-control-thumbs img{width:72px;height:72px;object-fit:contain;background:#fff;border:1px solid #ddd4c4}
body.single-product .product_title{font:400 clamp(1.8rem,3vw,2.8rem)/1.12 Georgia,serif;overflow-wrap:anywhere}
body.single-product div.product p.price{color:#a4523c;font-size:1.3rem}
body.single-product div.product form.cart{display:block;float:none;margin:20px 0;background:transparent;color:inherit;border:0;padding:0}
body.single-product div.product form.cart .variations{width:100%;margin:0 0 16px}
body.single-product div.product form.cart .variations tr{display:grid;grid-template-columns:minmax(115px,1fr) minmax(0,1.4fr);gap:10px;align-items:center;margin-bottom:10px}
body.single-product div.product form.cart .variations td{padding:0;text-align:left}
body.single-product div.product form.cart .variations select{width:100%;max-width:100%;min-height:44px;border:1px solid #bfb6a5;background:#fff;padding:8px;font:inherit}
body.single-product div.product form.cart .quantity{margin-right:10px}
body.single-product div.product form.cart .single_add_to_cart_button{min-height:48px;background:#14213d;color:#fff}
body.single-product div.product .product_meta{font:12px/1.6 Arial,sans-serif;color:#6b746e;overflow-wrap:anywhere}
body.single-product .hor-fit-note{font:14px/1.55 Arial,sans-serif;background:#eee8db;padding:16px;margin-top:18px}
body.single-product .hor-fit-note p{margin:6px 0}.hor-fit-note a{color:#725529}
body.single-product .hor-custom p{margin:10px 0}.hor-custom p[hidden]{display:none!important}.hor-custom label{display:block;margin-bottom:5px;font-weight:600}.hor-custom input{display:block;width:100%;min-height:44px;padding:10px;border:1px solid #bfb6a5;font:inherit}
body.single-product div.product .woocommerce-tabs{clear:both;background:#fff;padding:24px;margin:24px 0}
body.single-product div.product .woocommerce-tabs .panel{font-size:16px;line-height:1.65}
body.single-product div.product .woocommerce-tabs .panel h2{font:400 2rem/1.2 Georgia,serif}
body.single-product div.product .related{clear:both;padding:24px;background:#e8ded0}
body.single-product div.product .related h2{font:400 clamp(1.8rem,3vw,2.5rem)/1.2 Georgia,serif}
body.single-product div.product .related ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0}
body.single-product div.product .related ul.products li.product{clear:none!important;float:none!important;width:auto!important;margin:0!important;min-width:0;display:flex;flex-direction:column;background:#fff;padding:10px}
body.single-product div.product .related ul.products li.product img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff}
body.single-product div.product .related ul.products li.product .price{margin-top:auto}
@media(max-width:767px){body.single-product .page-shell{padding-block:18px 30px}body.single-product div.product div.images,body.single-product div.product div.summary{width:100%;float:none;margin-bottom:18px}body.single-product div.product div.summary{padding:20px}body.single-product div.product .woocommerce-tabs,body.single-product div.product .related{padding:18px;margin:18px 0}body.single-product div.product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body.single-product div.product form.cart .variations tr{grid-template-columns:1fr;gap:4px}}
body.single-product div.product .related ul.products::before,body.single-product div.product .related ul.products::after{display:none!important;content:none!important}
body.single-product div.product form.cart .variations th{padding:0;text-align:left}


body.single-product .portabex-fit-note{margin-top:20px;padding:16px;background:#f4eee3;border-left:3px solid #b5654a;font:14px/1.55 Arial,sans-serif}body.single-product .portabex-fit-note p{margin:6px 0}body.single-product .portabex-fit-note a{color:#9b4b36}body.single-product .product_meta{font-size:12px!important}body.single-product div.product .related ul.products::before,body.single-product div.product .related ul.products::after{display:none!important;content:none!important}
