:root{--ground:#F4E6E2;--sand:#EAD5CF;--ph:#E9D2CB;--ink:#2A1418;--muted:#674A4E;--gold:#7A5C26;--line:#DDC0B8;--dark:#3B1A22;--frame:#C9A25E;--serif:"Cormorant Garamond",Georgia,serif;--sans:Jost,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-padding-top:90px}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6}
img{max-width:100%;display:block}
a{color:var(--ink)}a:hover{color:var(--gold)}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.15;margin:0 0 16px}
h1{font-size:clamp(36px,5vw,56px)}h2{font-size:clamp(30px,3.6vw,42px)}h3{font-size:24px}
.wrap{max-width:1320px;margin:0 auto;padding:0 28px}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:9}
.bar{background:var(--dark);color:#F4EFE8;text-align:center;font-size:13px;letter-spacing:.06em;padding:9px 16px}
.site-header{position:sticky;top:0;z-index:5;background:var(--ground);border-bottom:1px solid var(--line)}
.hdr{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.logo{font-family:var(--serif);font-weight:600;font-size:30px;letter-spacing:.3em;text-decoration:none}
.logo.light{color:#F4EFE8;margin-bottom:12px}
.nav{display:flex;flex-wrap:wrap;gap:6px 26px;font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.nav a{text-decoration:none;padding:8px 0}
.cart{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
.eyebrow{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.eyebrow.gold{color:#D8BE86}
.lead{font-size:18px;color:var(--muted);max-width:36em;margin:0 0 28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 30px;background:var(--dark);color:#fff;border:1px solid var(--dark);font:inherit;font-size:14px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;cursor:pointer}
.btn:hover{background:#56252F;color:#fff}
.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:#fff}
.btn.ghost.light{color:#F4EFE8;border-color:#F4EFE8}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.hero{display:flex;flex-wrap:wrap;gap:48px;align-items:center;padding-top:48px;padding-bottom:56px}
.hero-text{flex:1 1 400px}.hero-img{flex:1 1 460px}
.hero-img img{width:100%;height:clamp(420px,62vw,640px);object-fit:cover;object-position:center 25%}
.band{background:var(--sand);padding:72px 0}
.center{text-align:center}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-top:32px}
.tile{text-decoration:none;display:flex;flex-direction:column;gap:12px;font-family:var(--serif);font-size:26px}
.ph{background:var(--ph);overflow:hidden}
.tile .ph img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .5s}
.tile:hover img,.card:hover img{transform:scale(1.03)}
.block{padding-top:56px;padding-bottom:56px}
.row-head{display:flex;justify-content:space-between;align-items:baseline}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px 24px}
.card{text-decoration:none;display:flex;flex-direction:column;gap:8px}
.card .ph img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform .5s}
.card .nm{font-size:16px;margin-top:6px}.card .pr{color:var(--muted);font-size:15px}
.story{background:var(--dark);color:#F4EFE8}
.story-in{display:flex;flex-wrap:wrap;gap:56px;align-items:center;padding-top:72px;padding-bottom:72px}
.story-img{flex:1 1 420px}.story-img img{width:100%;height:460px;object-fit:cover}
.story-text{flex:1 1 380px}.story-text p{color:#D9D2C8;margin:0 0 24px}
.trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;text-align:center;padding-top:56px;padding-bottom:56px;border-bottom:1px solid var(--line)}
.trust p{margin:0;color:var(--muted);font-size:15px}
.crumbs{font-size:14px;color:var(--muted);margin-bottom:20px}
.empty{padding:40px 0;color:var(--muted)}
.pdp{display:flex;flex-wrap:wrap;gap:48px}
.gallery{flex:1 1 440px}.gallery .main{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;background:var(--ph)}
.thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}.thumbs img{aspect-ratio:1;object-fit:cover;width:100%}
.info{flex:1 1 360px;max-width:520px}
.price{font-size:22px;margin:0 0 18px}
.details{padding-left:20px;color:var(--muted);margin:20px 0 28px}
.info .btn{width:100%}
.perks{list-style:none;padding:0;margin:24px 0 0;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}
.perks li{padding:12px 0;border-bottom:1px solid var(--line)}
.prose{max-width:820px}.prose h2{font-size:28px;margin-top:32px}.prose p{color:var(--muted)}
.note{background:#FFF4D6;border:1px solid #E6C977;color:#5A4200 !important;padding:10px 14px;font-size:15px}
.site-footer{background:var(--dark);color:#D9D2C8;margin-top:24px}
.foot{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px;padding-top:56px;padding-bottom:40px;font-size:15px}
.foot h2{font-family:var(--sans);font-size:13px;letter-spacing:.15em;text-transform:uppercase;color:#F4EFE8;margin:0 0 14px}
.foot nav{display:flex;flex-direction:column;gap:10px}.foot a{color:#D9D2C8;text-decoration:none}.foot a:hover{color:#fff}
.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;border-top:1px solid #5A2E37;padding-top:20px;padding-bottom:28px;font-size:13px}
@media (max-width:760px){.site-header{position:static}.hdr{min-height:0;gap:6px 12px}.logo{font-size:24px;order:1}.cart{order:2}.nav{order:3;width:100%;flex-wrap:nowrap;overflow-x:auto;gap:20px;font-size:13px;padding-bottom:4px}.nav a{white-space:nowrap}.bar{font-size:12px}.hero{padding-top:28px}.block{padding-top:40px;padding-bottom:40px}}
/* ---- arch / mehrab frames ---- */
.arch{border-radius:999px 999px 0 0;overflow:hidden}
.frame{padding:7px;border:1px solid #C9A96A;border-radius:999px 999px 0 0}
.frame.light{border-color:#B8975A}
.logo{display:inline-flex;align-items:center;gap:12px}
.logo img{width:46px;height:auto}
.hero{padding-top:40px;padding-bottom:40px}
.hero-art{flex:1 1 420px;display:flex;flex-direction:column;align-items:center;gap:16px}
.frame.big{width:min(460px,100%)}
.slider{position:relative;aspect-ratio:4/5}
.slider img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;opacity:0;transition:opacity 1.2s ease}
.slider img.on{opacity:1}
.dots{display:flex;gap:4px}
.dot{width:28px;height:28px;border:0;background:transparent;cursor:pointer;display:grid;place-items:center;padding:0}
.dot::after{content:"";width:9px;height:9px;border-radius:50%;border:1px solid var(--gold)}
.dot.on::after{background:var(--gold)}
.ticker{background:var(--dark);color:#E9D9B8;overflow:hidden;white-space:nowrap;padding:14px 0;font-family:var(--serif);font-size:22px}
.ticker-in{display:inline-flex;animation:tick 35s linear infinite}
.ticker-in span{padding-right:40px}.ticker-in span span{color:#B8975A;padding:0 16px}
@keyframes tick{to{transform:translateX(-50%)}}
.tiles{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:36px}
.tile{align-items:center;text-align:center}
.tile .ph img,.card .ph img{aspect-ratio:4/5}
.ctrl{display:flex;align-items:center;gap:8px}
.arrow{width:44px;height:44px;border:1px solid var(--line);background:transparent;font-size:24px;line-height:1;color:var(--ink);cursor:pointer}
.arrow:hover{border-color:var(--ink)}
.more{margin-left:8px;font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:12px 0}
.row-head{gap:16px;flex-wrap:wrap;align-items:flex-end;margin-bottom:28px}.row-head h2{margin:0}
.track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}
.track::-webkit-scrollbar{display:none}
.slide{flex:0 0 clamp(220px,23%,290px);scroll-snap-align:start}
.card{text-align:center;align-items:center}.card .frame{width:100%}
.bridal{background:var(--sand)}
.bridal-in{display:flex;flex-wrap:wrap;gap:48px;align-items:center;padding-top:72px;padding-bottom:72px}
.bridal-text{flex:1 1 360px}.bridal-text p{color:var(--muted)}
.bridal .eyebrow.gold{color:var(--gold)}
.btn.light{background:var(--dark);color:#fff}
.bridal-art{flex:1 1 460px;display:flex;gap:20px;align-items:flex-end;justify-content:center}
.bridal-art .frame{width:min(300px,55%)}.bridal-art .frame.small{width:min(210px,40%)}
.bridal-art img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 25%}
.gallery-strip{padding:72px 0;overflow:hidden}
.marquee{overflow:hidden;margin-top:32px}
.marquee-in{display:flex;gap:22px;width:max-content;animation:tick 60s linear infinite}
.marquee:hover .marquee-in{animation-play-state:paused}
.g{width:220px;flex:0 0 auto}.g img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 25%}
.story-img .arch img{height:auto;aspect-ratio:4/5}
.story-img{max-width:440px}
.faq{max-width:860px}
.faq details{border-bottom:1px solid var(--line);padding:6px 0}
.faq summary{cursor:pointer;font-size:18px;padding:14px 0;list-style-position:outside}
.faq details p{color:var(--muted);margin:0 0 16px}
.ask{margin-top:28px;color:var(--muted)}
.eyebrow.center{text-align:center}
.thumbs img{border-radius:999px 999px 0 0}

@media (max-width:760px){.logo img{width:36px}.slide{flex-basis:70%}.g{width:160px}.ticker{font-size:18px}.ctrl .arrow{display:none}}
@media (max-width:760px){.tiles{grid-template-columns:repeat(2,1fr);gap:16px}.tile{font-size:20px}.frame{padding:5px}.hero-art{order:-1}.frame.big{width:min(340px,100%)}}

/* bridal maroon style frames */
.frame{padding:8px;border:2px solid var(--frame);border-radius:999px 999px 0 0;background:var(--ground)}
.frame.light{border-color:var(--frame);background:transparent}
.ticker{color:#EBD3A8}.ticker-in span span{color:var(--frame)}
.story-text p{color:#EBD6CF}.eyebrow.gold{color:#E3C88E}
.bridal .eyebrow.gold{color:var(--gold)}
.dot::after{border-color:var(--dark)}.dot.on::after{background:var(--dark)}
.foot a{color:#EBD6CF}
@media (max-width:760px){.frame{padding:6px}}
/* size limits so photos never look oversized on laptops */
.tiles{grid-template-columns:repeat(auto-fit,minmax(190px,250px));justify-content:center;gap:32px}
.tile{font-size:24px}
.frame.big{width:min(360px,100%,52vh)}
.hero{min-height:0}
.hero-text h1{font-size:clamp(34px,4vw,52px)}
.slide{flex:0 0 clamp(190px,19%,240px)}
.grid{grid-template-columns:repeat(auto-fill,minmax(200px,240px));justify-content:center}
.bridal-art .frame{width:min(250px,48%)}.bridal-art .frame.small{width:min(175px,34%)}
.story-img{max-width:340px}
.g{width:170px}
.gallery{flex:0 1 460px}.pdp{justify-content:center}
@media (max-width:760px){.tiles{grid-template-columns:repeat(2,1fr)}.slide{flex-basis:62%}.grid{grid-template-columns:repeat(2,1fr);gap:20px 14px}.g{width:140px}}
/* side arrows on sliders */
.hero-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%}
.car{position:relative}
.side{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid var(--frame);background:rgba(255,250,248,.92);color:var(--dark);font-size:28px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 10px rgba(59,26,34,.15)}
.side:hover{background:var(--dark);color:#fff}
.side.prev{left:0}.side.next{right:0}
.hero-stage .side.prev{left:calc(50% - min(180px,50%,26vh) - 64px)}
.hero-stage .side.next{right:calc(50% - min(180px,50%,26vh) - 64px)}
.car .side{top:38%}
.car .side.prev{left:-8px}.car .side.next{right:-8px}
.car .track{padding:0 4px}
@media (max-width:760px){.hero-stage .side.prev{left:4px}.hero-stage .side.next{right:4px}.side{width:40px;height:40px;font-size:24px}.car .side.prev{left:2px}.car .side.next{right:2px}}
/* gallery as arrow slider */
.gallery-strip .car{margin-top:32px}
.slide.gs{flex:0 0 clamp(170px,18%,220px)}
.gs img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 25%}
@media (max-width:760px){.slide.gs{flex-basis:46%}}
/* blog + rich content */
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:28px}
.post-card{text-decoration:none;display:flex;flex-direction:column;gap:8px}
.post-card .ph img{width:100%;aspect-ratio:3/2;object-fit:cover}
.post-card h3{margin:4px 0 0;font-size:24px}.post-card p{margin:0;color:var(--muted);font-size:15px}
.post-meta{font-size:13px;letter-spacing:.08em;color:var(--gold);margin:0}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}
.chips a{padding:8px 16px;border:1px solid var(--line);text-decoration:none;font-size:14px}.chips a.on{background:var(--dark);color:#fff;border-color:var(--dark)}
.rich{color:var(--muted)}.rich h2{color:var(--ink)}.rich img{margin:16px 0}.rich a{color:var(--ink)}
.cover{width:100%;max-height:520px;object-fit:cover;margin:8px 0 24px}
.gallery .main{aspect-ratio:4/5}
/* announcement bar */
.bar{position:relative;min-height:38px;display:flex;align-items:center;justify-content:center}
.bar a{color:inherit;text-decoration:none;display:block;width:100%}
.bar-msg{display:none}.bar-msg.on{display:block;animation:barin .5s ease}
@keyframes barin{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.bar.below{background:var(--sand);color:var(--ink);border-bottom:1px solid var(--line);font-weight:500}
.auto-only .track{scroll-behavior:auto}
/* sale */
.cardimg{position:relative}
.sale-badge{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);background:var(--dark);color:#fff;font-size:12px;letter-spacing:.12em;padding:6px 14px;white-space:nowrap}
.pr s,.price s{color:#9b8589;margin-right:6px;font-weight:400}
.pr b{color:var(--dark);font-weight:600}
.price b{color:var(--dark)}.price small{font-size:14px;color:var(--muted)}
.save{color:#1e6b33;font-weight:500;margin:-8px 0 18px}
/* scrolling announcement */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bar.scroll{overflow:hidden;justify-content:flex-start;padding:0;min-height:40px;background:linear-gradient(90deg,#3B1A22,#5A2430,#3B1A22)}
.bar.scroll.below{background:linear-gradient(90deg,#EAD5CF,#F4E6E2,#EAD5CF)}
.bar-track{display:inline-flex;align-items:center;white-space:nowrap;animation:barscroll 28s linear infinite;padding:10px 0}
.bar.scroll:hover .bar-track{animation-play-state:paused}
.bar-item{font-size:13px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:0 22px;color:#F7E7C6}
.bar.below .bar-item{color:var(--dark)}
.bar-star{color:#C9A25E;font-size:12px}
@keyframes barscroll{to{transform:translateX(-50%)}}

/* cart */
.cart{text-decoration:none}
.added{margin:12px 0 0;color:#1e6b33;font-size:15px}
.cart-wrap{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
#cart-items{flex:1 1 480px}
.ci{display:grid;grid-template-columns:80px 1fr auto auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.ci img,.ci>span{width:80px;height:100px;object-fit:cover;border-radius:999px 999px 0 0;background:var(--ph)}
.ci-info a{text-decoration:none;font-size:17px}.ci-price{color:var(--muted);margin-top:4px}.ci-price s{margin-right:6px}
.qty{display:flex;align-items:center;border:1px solid var(--line)}.qty button{width:40px;height:40px;border:0;background:transparent;font-size:18px;cursor:pointer;color:var(--ink)}.qty span{min-width:28px;text-align:center}
.rm{border:0;background:none;color:var(--muted);text-decoration:underline;cursor:pointer;font:inherit;font-size:14px;padding:8px}
.cart-sum{flex:0 1 360px;background:#fff8f6;border:1px solid var(--line);padding:24px}
.cart-sum .row{display:flex;justify-content:space-between;padding:8px 0}.cart-sum .total{border-top:1px solid var(--line);margin-top:8px;padding-top:14px;font-size:19px}
.cart-sum .hint{font-size:14px;color:var(--muted)}
#paypal-buttons{margin-top:16px}.pay-msg{color:#9b1c1c;font-size:15px}
@media (max-width:600px){.ci{grid-template-columns:64px 1fr;}.ci img,.ci>span{width:64px;height:80px}.qty,.rm{grid-column:2}}
.fx select{height:44px;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:14px;padding:0 8px;cursor:pointer}
.hdr .cart{margin-left:8px}

.tools{display:flex;align-items:center;gap:8px}.tools .cart{margin:0}
@media (max-width:760px){.tools{order:2}}
/* keep announcement bar + header visible while scrolling */
.topwrap{position:sticky;top:0;z-index:20}
.topwrap .site-header{position:static}
@media (max-width:760px){.topwrap .site-header{position:static}.topwrap .hdr{padding-top:6px;padding-bottom:6px}}
/* wishlist + badges */
.card{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.card .nm{text-decoration:none;font-size:16px;margin-top:6px}
.card .cardimg{position:relative;width:100%}
.card .cardimg > a{display:block}
.wish{position:absolute;top:8px;left:0;z-index:3;width:42px;height:42px;border-radius:50%;border:1px solid var(--frame);background:#fff;color:var(--dark);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(59,26,34,.15);padding:0}
.wish:hover{background:#fff4f6}
.wish.on{color:#b4234a}.wish.on svg{fill:#b4234a}
.tag-badge{position:absolute;top:14px;right:0;z-index:3;background:var(--frame);color:#2A1418;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;box-shadow:0 2px 8px rgba(59,26,34,.15)}
.tag-badge.inline{position:static;display:inline-block;margin-bottom:12px;box-shadow:none}
.buy-row{display:flex;gap:10px;align-items:center}.buy-row .btn{flex:1}
.wish.big{position:static;width:52px;height:52px;flex:0 0 52px}
.cart.wl svg{width:20px;height:20px}
@media (max-width:760px){.wish{width:36px;height:36px;top:4px}.tag-badge{font-size:10px;padding:5px 7px;top:8px}}
.specs{width:100%;border-collapse:collapse;margin:18px 0 8px;font-size:15px}
.specs th,.specs td{text-align:left;padding:9px 0;border-bottom:1px solid var(--line);vertical-align:top}
.specs th{font-weight:500;color:var(--muted);width:40%}
.specs{width:100%;border-collapse:collapse;margin:18px 0 26px;font-size:15px}
.specs th,.specs td{text-align:left;padding:10px 0;border-bottom:1px solid var(--line);vertical-align:top}
.specs th{width:40%;font-weight:500;color:var(--ink);padding-right:12px}.specs td{color:var(--muted)}
/* colour swatches + quantity */
.swatches{margin:6px 0 18px}.sw-label{margin:0 0 10px;font-size:15px}
.sw-list{display:flex;flex-wrap:wrap;gap:10px}
.sw{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border:1px solid var(--line);background:#fff;border-radius:999px;cursor:pointer;font:inherit;font-size:14px;color:var(--ink);min-height:44px}
.sw img{width:34px;height:34px;border-radius:50%;object-fit:cover}
.sw:hover{border-color:var(--frame)}.sw.on{border:2px solid var(--dark);padding:4px 11px 4px 4px}
.qty-row{display:flex;align-items:center;gap:14px;margin:0 0 16px}.qty-row label{font-size:15px}
.qty-row .qty input{width:46px;height:40px;border:0;text-align:center;font:inherit;font-size:16px;background:transparent;-moz-appearance:textfield}
.qty-row .qty input::-webkit-outer-spin-button,.qty-row .qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.gallery .thumbs img{cursor:pointer}
/* product accordions */
.acc{border-bottom:1px solid var(--line)}
.acc:first-of-type{border-top:1px solid var(--line)}
.info > .acc{margin:0 0 22px}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:15px 0;font-size:15px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-size:22px;font-weight:300;color:var(--gold);line-height:1}
.acc[open] summary::after{content:"−"}
.acc summary:hover{color:var(--gold)}
.acc-body{padding:0 0 16px;color:var(--muted);font-size:15px;line-height:1.7}
.acc-body p{margin:0 0 10px}.acc-body h2{font-size:20px;margin:14px 0 6px;color:var(--ink)}
.acc-body a{color:var(--ink)}
.policies{margin-top:26px}
.pp-wrap{margin:14px 0 0}
.or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;letter-spacing:.06em;margin:0 0 10px}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
#pp-product{min-height:48px}
/* bigger product photo */
.pdp{gap:56px;align-items:flex-start;justify-content:center}
.pdp .gallery{flex:1 1 540px;max-width:640px}
.pdp .info{flex:1 1 380px;max-width:520px}
.pdp .gallery .main{width:100%;aspect-ratio:4/5;height:auto;object-fit:cover}
@media (min-width:900px){.pdp .gallery{position:sticky;top:140px}}
@media (max-width:760px){.pdp .gallery{flex-basis:100%;max-width:100%}}
/* coupon bar */
.offerbar{background:#E3C88E;color:#2A1418;text-align:center;font-size:14px;font-weight:500;padding:8px 14px;display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}
.copycode{border:1px dashed #3B1A22;background:#fff8ec;color:#3B1A22;font:inherit;font-weight:700;letter-spacing:.08em;padding:3px 10px;cursor:pointer;border-radius:4px}
.copycode small{font-weight:500;letter-spacing:0;margin-left:4px;opacity:.75}
/* search */
.srow{padding-bottom:10px}
.search{position:relative;display:flex;align-items:center;max-width:720px;margin:0 auto;border:1px solid var(--line);background:#fff;border-radius:999px;padding:0 6px 0 16px}
.search input{flex:1;border:0;background:transparent;font:inherit;font-size:15px;padding:11px 8px;outline:none;color:var(--ink);min-width:0}
.search:focus-within{border-color:var(--frame);box-shadow:0 0 0 3px rgba(201,162,94,.25)}
.s-btn{border:0;background:var(--dark);color:#fff;border-radius:999px;padding:8px 16px;font:inherit;font-size:13px;cursor:pointer}
.s-sug{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(59,26,34,.15);z-index:30;overflow:hidden}
.s-sug a{display:flex;align-items:center;gap:12px;padding:9px 14px;text-decoration:none;border-bottom:1px solid #f3e6e2;font-size:14px}
.s-sug a:hover{background:#fbf3f1}.s-sug img{width:40px;height:40px;object-fit:cover;border-radius:50%}.s-sug span{flex:1}.s-sug b{font-weight:500;color:var(--muted)}
.s-sug .s-all{justify-content:center;color:var(--gold);font-weight:500}.s-none{padding:12px 14px;margin:0;color:var(--muted);font-size:14px}
/* install bar */
.install-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:40;background:var(--dark);color:#F4E6E2;border-radius:14px;padding:12px 14px;display:flex;align-items:center;gap:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);max-width:560px;margin:0 auto;font-size:14px}
.install-bar[hidden]{display:none}.install-bar span{flex:1}
.ib-btn{border:0;background:#E3C88E;color:#2A1418;font:inherit;font-weight:600;padding:8px 16px;border-radius:999px;cursor:pointer}
.ib-x{border:0;background:transparent;color:#F4E6E2;font-size:22px;cursor:pointer;width:36px;height:36px}
/* coupon box */
.coupon-box{margin:12px 0;border-top:1px solid var(--line);padding-top:10px}.coupon-box summary{cursor:pointer;font-size:14px;color:var(--gold);font-weight:500}
.cb-in{display:grid;gap:8px;margin-top:10px}.cb-in input{padding:10px 12px;border:1px solid var(--line);font:inherit;font-size:14px;background:#fff}
.cb-in .btn{min-height:42px}.disc-row b{color:#1e6b33}
/* reviews */
.stars{color:#C9A25E;letter-spacing:2px}
.rating-link{display:inline-flex;gap:8px;align-items:center;text-decoration:none;font-size:14px;color:var(--muted);margin:-6px 0 12px}
.avg{margin:0;font-size:15px;color:var(--muted)}
.rev-list{display:grid;gap:16px;margin-bottom:24px}
.rev{background:#fff8f6;border:1px solid var(--line);padding:18px}.rev p{margin:8px 0 0;color:var(--muted)}
.rev-top{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:14px}.vb{color:#1e6b33;font-size:13px}.rev-top time{color:var(--muted);margin-left:auto;font-size:13px}
.rev-form{display:grid;gap:12px;max-width:680px;padding-bottom:10px}.rev-form label{display:grid;gap:6px;font-size:14px}
.rev-form input,.rev-form textarea{padding:10px 12px;border:1px solid var(--line);font:inherit;background:#fff}
.rf-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rf-stars{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 16px}.rf-stars legend{font-size:14px;margin-bottom:6px}.rf-stars label{display:flex;gap:6px;align-items:center;color:#C9A25E}
.rf-msg.ok{color:#1e6b33}.rf-msg.err{color:#9b1c1c}
.gallery .thumbs img.on{outline:2px solid var(--dark);outline-offset:2px}
@media (max-width:760px){.rf-row{grid-template-columns:1fr}.offerbar{font-size:13px}.srow{padding-bottom:8px}}
@media (max-width:760px){
  .offerbar{flex-wrap:nowrap;gap:8px;padding:6px 10px;font-size:12px;line-height:1.3}
  .offerbar span{flex:0 1 auto}
  .copycode{padding:2px 7px;font-size:12px;white-space:nowrap}.copycode small{display:none}
  .hdr{flex-wrap:wrap;align-items:center;gap:4px 8px;padding-top:6px;padding-bottom:4px}
  .logo{font-size:20px;letter-spacing:.22em;flex:1 1 auto}
  .tools{gap:4px}.tools .cart{min-height:38px;padding:0 8px;font-size:13px}
  .fx select{height:38px;font-size:13px;padding:0 4px;max-width:72px}
  .nav{gap:16px;font-size:12px}.nav a{padding:6px 0}
  .search{padding:0 4px 0 12px}.search input{padding:8px 6px;font-size:14px}.s-btn{padding:6px 12px;font-size:12px}
  .srow{padding-bottom:6px}
}
[hidden]{display:none !important}
/* product gallery: thumbnails on the left, moderate main photo */
.pdp{gap:48px}
.pdp .gallery{display:grid;grid-template-columns:78px minmax(0,1fr);gap:14px;flex:0 1 560px;max-width:560px;align-items:start}
.pdp .gallery:not(:has(.thumbs)){grid-template-columns:minmax(0,1fr);max-width:470px}
.pdp .gallery > .frame{grid-column:-2;grid-row:1}
.pdp .gallery .thumbs{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:10px;margin:0;max-height:600px;overflow-y:auto;scrollbar-width:thin}
.pdp .gallery .thumbs img{width:74px;height:92px;aspect-ratio:auto;object-fit:cover;border-radius:6px;border:1px solid var(--line);flex:0 0 auto;outline:none}
.pdp .gallery .thumbs img.on{border:2px solid var(--dark)}
.pdp .info{flex:1 1 400px;max-width:560px}
@media (max-width:760px){
  .pdp .gallery{grid-template-columns:minmax(0,1fr);max-width:100%;flex-basis:100%}
  .pdp .gallery > .frame{grid-column:1;grid-row:1}
  .pdp .gallery .thumbs{grid-column:1;grid-row:2;flex-direction:row;max-height:none;overflow-x:auto}
  .pdp .gallery .thumbs img{width:64px;height:80px}
}
.pdp .gallery{flex:0 1 500px;max-width:500px}
.pdp .gallery:not(:has(.thumbs)){max-width:410px}
@media (max-width:760px){.pdp .gallery{max-width:100%}}
/* readable pages & blog posts */
.prose{max-width:780px;margin:0 auto}
.prose h1{font-size:clamp(38px,5vw,54px);font-weight:600;color:var(--ink);margin:0 0 26px}
.rich{color:#3f2a2e;font-size:17px;line-height:1.75}
.rich p{margin:0 0 16px;color:#3f2a2e}
.rich h2{font-family:var(--serif);font-size:30px;font-weight:600;color:var(--ink);margin:36px 0 12px;line-height:1.2}
.rich h3{font-family:var(--serif);font-size:23px;font-weight:600;color:var(--ink);margin:26px 0 10px}
.rich h2:first-child,.rich h3:first-child{margin-top:0}
.rich strong,.rich b{color:var(--ink);font-weight:600}
.rich ul,.rich ol{margin:0 0 18px;padding-left:22px}.rich li{margin:0 0 8px}
.rich a{color:var(--dark);text-decoration-color:var(--frame);text-underline-offset:3px}
.rich blockquote{margin:20px 0;padding:6px 0 6px 18px;border-left:3px solid var(--frame);font-family:var(--serif);font-size:21px;color:var(--ink)}
.rich img{max-width:100%;height:auto;border-radius:6px}
.acc-body.rich{font-size:15px;line-height:1.7}.acc-body.rich h2{font-size:20px;margin:18px 0 6px}.acc-body.rich p{margin:0 0 10px}
.prose .note{display:none}
/* footer: payment cards + copyright */
.legal{align-items:center}
.pay-wrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pay-lbl{font-size:13px;color:#EBD6CF}
.pay-cards{display:flex;gap:8px;flex-wrap:wrap}
.pc{display:inline-grid;place-items:center;min-width:58px;height:36px;padding:0 10px;border-radius:6px;background:#fff;color:#1a1a1a;font:700 12px/1 Arial,Helvetica,sans-serif;letter-spacing:.02em;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.pc-paypal{color:#003087;font-style:italic}.pc-visa{color:#1a1f71;font-style:italic;font-size:14px;letter-spacing:.06em}
.pc-mastercard{color:#222;font-weight:600}.pc-amex{background:#2e77bb;color:#fff}.pc-discover{color:#222}
.pay-img{height:38px;width:auto;background:#fff;border-radius:6px;padding:3px 6px}
.copy{font-size:13px}
@media (max-width:760px){.legal{flex-direction:column;align-items:flex-start}}
