/* Layout: the Pearl Source page architecture (promo hero, bestseller rail, category tiles, price chips, 3-step finder,
   certificate band, filtered collection, option-driven product page) set in Pearl Gallery Sea Green (slot-for-slot with Misty Blue):
   sentence-case kicker + uppercase Belleza headline + underlined CTA, hard-edged 3:4 tiles, 50/25/15/10 colour balance.
   Single light theme on purpose: the brand is recognised by this exact colour balance. */
:root{
  /* Sea Green palette (海水绿 · 贝壳米 · 胡桃木棕), from the brand mood board. 50/25/15/10 balance:
     shell cream ground, sea green surfaces, walnut for craft and warmth, deep sea ink for type.
     Mood-board names are canonical; the older Misty Blue names below are aliases so existing rules keep working. */
  --sea-green:#9CCBC9;     /* 01 海水绿 · 主色 — hero, tiles, primary surfaces */
  --shell-cream:#F7F4EA;   /* 02 贝壳米 · 主色 — page ground */
  --walnut:#8B705D;        /* 03 胡桃木棕 · 主色 — price, craft details */
  --salt-mint:#D5E5DC;     /* 04 海盐薄荷 · 浅过渡 — hover wash, soft panels */
  --foam-white:#F0F6F1;    /* 05 海沫白 · 浅背景 — hairlines, quiet panels */
  --haze-blue:#A9C8D4;     /* 06 雾霾蓝 · 辅助色 */
  --sea-glass:#79B8B5;     /* 07 海玻璃绿 · 强调色 — stars, badges, motifs */
  --deep-sea:#477F7D;      /* 08 深海青 · 文字色 — borders, focus, large type */
  --deep-walnut:#4B392F;   /* 09 深胡桃木 · 深色文字 */
  --driftwood:#B6A18C;     /* 10 漂流木 · 温暖辅助 */
  --sand:#D9C8B3;          /* 11 浅沙米 · 过渡色 */
  --pearl-blush:#DCCBC3;   /* 12 珍珠粉米 · 柔和点缀 */
  /* Ink: 深海青 taken down to the mood board's headline tone, dark enough for body copy (7.9:1 on shell cream,
     4.9:1 on sea green) and for cream text on dark surfaces. */
  --ink:#303538; --ink-strong:#1F2325;
  --rule:rgba(71,127,125,.28); /* hairline in deep sea, like the board's thin dividers */

  --misty-blue:var(--sea-green); --pearl-white:var(--shell-cream); --champagne-brown:var(--walnut);
  --mist-white:var(--salt-mint); --cloud-grey:var(--foam-white); --grey-blue:var(--haze-blue);
  --slate-blue:var(--deep-sea); --ink-blue:var(--ink); --ink-deep:var(--ink-strong);
  --shell-beige:var(--driftwood); --soft-sand:var(--sand); --pearl-rose:var(--pearl-blush);
  --champagne-gold:var(--sea-glass);
  --scrim:rgba(31,35,37,.45);
  /* Type: a high-contrast serif for headlines (the board's SEA GREEN title), Belleza for small tracked caps
     (nav, buttons, eyebrows) where a serif gets thin, Noto Sans for reading, a hand script for accents. */
  --display:"Belleza","Optima","Noto Sans",sans-serif; /* VI: Belleza for display, Noto Sans body, Cormorant SC accents, Mrs Saint Delafield script */
  --label:"Belleza","Optima","Noto Sans",sans-serif;
  --body:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --script:"Mrs Saint Delafield","Brush Script MT","Segoe Script",cursive;
  --s1:8px; --s2:16px; --s3:24px; --s4:48px; --s5:80px;
  --r-sm:4px; --r-pill:999px;
  --gutter:clamp(16px,2.24vw,28px); --maxw:calc(1320px + (100vw - 1320px) * .3);
  --stick:calc(env(safe-area-inset-top,0px) + 136px);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
html.lock{overflow:hidden}
body{margin:0;background:var(--pearl-white);font-variant-numeric:lining-nums;color:var(--ink-blue);font-family:var(--body);font-size:16px;line-height:26px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
svg{max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3,h4,p,dl,dd,figure{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
/* focus ring in ink, not deep sea: deep sea is under 3:1 on sea green surfaces */
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.announce :focus-visible{outline-color:var(--pearl-white)}
#view:focus{outline:none}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:var(--ink-blue);color:var(--pearl-white);padding:10px 18px;border-radius:var(--r-pill);text-decoration:none}
.skip:focus{top:12px}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
@media (min-width:900px){.only-mobile{display:none!important}}
@media (max-width:899px){.only-desktop{display:none!important}}

/* ---------- type ---------- */
.kicker{font-size:15px;line-height:22px}
.hl{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:1.5px;line-height:1.05;font-size:clamp(30px,4.2vw,40px);text-wrap:balance}
.hl-hero{font-size:clamp(40px,6vw,64px);letter-spacing:2px;line-height:1}
.kicker + .hl{margin-top:var(--s1)}
.hl + .kicker{margin-top:var(--s1)}
.hl-hero + .kicker{margin-top:var(--s2)}
.lede{max-width:46ch}
.body-s{font-size:14px;line-height:22px}
.caption{font-size:12px;line-height:18px}
.eyebrow{font-family:var(--label);font-size:13px;line-height:16px;letter-spacing:2px;text-transform:uppercase}
.cta-link{display:inline-flex;align-items:center;min-height:32px;font-family:var(--label);font-size:13px;line-height:16px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-blue);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;background:none;border:0;padding:0;white-space:nowrap}
.cta-link:hover{text-decoration-thickness:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 28px;border-radius:var(--r-pill);border:1px solid transparent;font-family:var(--label);font-size:13px;line-height:16px;letter-spacing:2px;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color .2s}
.btn svg{width:18px;height:18px}
.btn-dark{background:var(--ink-blue);color:var(--pearl-white)}
.btn-dark:hover{background:var(--ink-deep)}
.btn-mist{background:var(--misty-blue);color:var(--ink-blue)}
.btn-mist:hover{background:var(--grey-blue)}
.btn-line{background:transparent;color:var(--ink-blue);border-color:var(--ink-blue)}
.btn-line:hover{background:var(--mist-white)}
.btn-sm{min-height:40px;padding:0 20px}
.btn-block{width:100%}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 16px;border-radius:var(--r-pill);border:1px solid var(--slate-blue);background:var(--pearl-white);color:var(--ink-blue);font-size:14px;line-height:20px;text-decoration:none;transition:background-color .2s}
.chip:hover{background:var(--mist-white)}
.chip[aria-pressed="true"]{background:var(--ink-blue);border-color:var(--ink-blue);color:var(--pearl-white)}
.chip svg{width:14px;height:14px}
/* mood-board motifs: hand-script accent, eyebrow trailed by a hairline, the sea green · shell · walnut dot trio */
.script{font-family:var(--script);font-weight:400;font-size:clamp(30px,3vw,40px);line-height:1.1;letter-spacing:0;text-transform:none;color:var(--deep-sea)}
.eyebrow-rule{display:flex;align-items:center;gap:16px}
.eyebrow-rule::after{content:"";flex:0 1 140px;height:1px;background:var(--rule)}
.tone-dots{display:inline-flex;gap:8px;vertical-align:middle}
.tone-dots i{width:12px;height:12px;border-radius:var(--r-pill);background:var(--sea-green)}
.tone-dots i:nth-child(2){background:var(--shell-cream);box-shadow:inset 0 0 0 1px var(--sand)}
.tone-dots i:nth-child(3){background:var(--walnut)}
.dot{width:14px;height:14px;border-radius:var(--r-pill);flex:none;border:1px solid var(--cloud-grey)}

/* ---------- announcement + header ---------- */
.announce{background:var(--ink-blue);color:var(--pearl-white)}
.ann{position:relative;min-height:52px}
.ann-track{position:relative;height:52px;overflow:hidden}
.ann-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;padding-inline:8px;font-size:14px;line-height:20px;letter-spacing:.4px;white-space:nowrap;opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s;pointer-events:none;color:inherit;text-decoration:none}
.ann-slide.on{opacity:1;transform:none;pointer-events:auto}
.ann-slide.out{opacity:0;transform:translateY(-10px)}
.ann-slide b{font-weight:500}
.ann-slide svg{width:20px;height:20px;flex:none;color:var(--champagne-gold)}
.ann-stars{display:inline-flex;gap:3px}
.ann-stars i{display:block;width:18px;height:18px;background:var(--champagne-gold);clip-path:polygon(50% 6%,61% 38%,95% 38%,67% 58%,78% 91%,50% 71%,22% 91%,33% 58%,5% 38%,39% 38%)}
@media (max-width:599px){.ann-slide{font-size:13px;white-space:normal;text-align:center;gap:8px}.ann-slide svg,.ann-stars{display:none}}
.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:var(--pearl-white);border-bottom:1px solid var(--cloud-grey)}
.bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;gap:12px}
.bar-left{display:flex;align-items:center;gap:24px}
.bar-right{display:flex;justify-content:flex-end;align-items:center;gap:2px}
.util{font-size:13px;line-height:18px;text-decoration:none;white-space:nowrap}
.util:hover{text-decoration:underline;text-underline-offset:4px}
button.util{background:none;border:0;padding:0;color:inherit}
.wordmark{font-family:var(--display);font-size:clamp(19px,2.3vw,28px);line-height:1;letter-spacing:.3em;text-transform:uppercase;text-decoration:none;white-space:nowrap;padding-left:.3em}
@media (max-width:899px){.bar{gap:4px;min-height:60px}.bar .wordmark{font-size:16px;letter-spacing:.2em;padding-left:.2em}}
.icon-btn{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--r-pill);border:0;background:transparent;color:var(--ink-blue);text-decoration:none}
.icon-btn:hover{background:var(--mist-white)}
.icon-btn svg{width:22px;height:22px}
.count{position:absolute;top:3px;right:1px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill);background:var(--ink-blue);color:var(--pearl-white);font-size:11px;line-height:18px;text-align:center;font-variant-numeric:tabular-nums}
.nav{border-top:0}
.nav-row{display:flex;justify-content:center;gap:clamp(16px,2.4vw,44px)}
.nav-item{display:inline-flex;align-items:center;gap:6px;height:48px;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;padding:0;font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase;text-decoration:none;color:var(--ink-blue)}
.nav-item svg{display:none}
.nav-item[aria-expanded="true"] svg{transform:rotate(180deg)}
.nav-item:hover,.nav-item[aria-expanded="true"],.nav-item.current{border-bottom-color:var(--slate-blue)}
.mega{position:absolute;left:0;right:0;top:100%;background:var(--pearl-white);border-top:1px solid var(--cloud-grey);border-bottom:1px solid var(--cloud-grey)}
.mega-in{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr)) minmax(0,1.3fr);gap:32px;padding-block:32px 40px}
.mega h3,.m-sub{font-family:var(--label);font-size:13px;line-height:16px;letter-spacing:2px;text-transform:uppercase;font-weight:400;margin-bottom:12px}
.mega li a,.m-links a{display:flex;align-items:center;gap:10px;font-size:14px;line-height:22px;padding-block:5px;text-decoration:none}
.mega li a:hover,.m-links a:hover{text-decoration:underline;text-underline-offset:4px}
.feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--mist-white);text-decoration:none;min-height:220px}
.feature-art{position:relative;background:var(--shell-beige)}
.feature-art svg,.feature-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feature-copy{display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:20px}
.feature-copy .hl{font-size:22px;letter-spacing:1px;line-height:1.15}
.feature-copy .cta-link{margin-top:6px}
.search-panel{position:absolute;left:0;right:0;top:100%;background:var(--pearl-white);border-top:1px solid var(--cloud-grey);border-bottom:1px solid var(--cloud-grey);padding-block:24px 32px}
.search-row{display:flex;gap:12px;align-items:center}
.search-row svg.lead{width:24px;height:24px;flex:none}
.search-row input{flex:1;min-width:0;height:52px;border:0;border-bottom:1px solid var(--ink-blue);background:transparent;font-size:20px;padding:0 4px;border-radius:0}
.search-row input:focus{outline:none;border-bottom-width:2px}
.search-hint{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px}
.search-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px 24px;margin-top:20px}
.sr-item{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;text-decoration:none}
.sr-thumb{position:relative;aspect-ratio:1;background:var(--mist-white);overflow:hidden}
.sr-thumb svg{position:absolute;inset:0;width:100%;height:100%}
.sr-item b{display:block;font-weight:500;font-size:14px;line-height:20px}
.sr-item:hover b{text-decoration:underline;text-underline-offset:3px}

/* ---------- home ---------- */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);background:var(--misty-blue)}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding-block:clamp(40px,6vw,88px);padding-right:clamp(24px,4vw,64px);padding-left:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}
.hero-copy .lede{margin-top:var(--s3)}
.hero-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:36px}
.hero-art{position:relative;background:var(--pearl-white);min-height:clamp(380px,44vw,600px);overflow:hidden}
.hero-art svg,.hero-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 40%}
.hero-art picture{position:absolute;inset:0}
.art-cap{position:absolute;left:24px;top:18px;background:var(--pearl-white);padding:3px 12px;border-radius:var(--r-pill)}
@media (max-width:899px){
  .hero{grid-template-columns:minmax(0,1fr)}
  .hero-art{order:-1;min-height:0;aspect-ratio:4/5;max-height:78vh;max-width:100%}
  .hero-art img{object-position:50% 30%}
  .hero-copy{padding-inline:var(--gutter)}
}
.promises{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 28px;padding-block:28px;border-bottom:1px solid var(--cloud-grey)}
.promise{display:flex;gap:14px;align-items:flex-start;min-width:0}
.promise svg{flex:none;width:28px;height:28px;color:var(--slate-blue)}
.promise b{display:block;font-weight:500;font-size:14px;line-height:20px}
.promise span{display:block;font-size:12px;line-height:18px;margin-top:2px}
@media (max-width:999px){.promises{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sec{padding-block:clamp(56px,7vw,80px)}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 32px;margin-bottom:clamp(28px,4vw,48px)}
.sec-head > div:first-child{min-width:0;max-width:720px}
.head-actions{display:flex;align-items:center;gap:20px}
.rail-nav{display:flex;gap:8px}
.round-btn{width:44px;height:44px;border-radius:var(--r-pill);border:1px solid var(--slate-blue);background:transparent;color:var(--ink-blue);display:grid;place-items:center}
.round-btn:hover{background:var(--mist-white)}
.round-btn svg{width:18px;height:18px}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain}
.rail::-webkit-scrollbar{display:none}
.rail-wrap{position:relative;container-type:inline-size}
.rail-bar{position:relative;height:3px;margin:28px auto 0;max-width:420px;background:var(--soft-sand);overflow:hidden}.rail-bar[hidden]{display:none}.rail-bar span{position:absolute;top:0;left:0;height:100%;width:30%;background:var(--ink-blue);transition:left .2s ease,width .2s ease}
.rail.dragging{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing;user-select:none}.rail.dragging *{pointer-events:none}
@media (hover:hover) and (pointer:fine){.rail{cursor:grab}}
.rail-arrow{position:absolute;z-index:3;top:calc((100cqw - 48px)/8 - 32px);width:40px;height:64px;display:grid;place-items:center;padding:0;border:0;background:none;color:var(--ink-blue);cursor:pointer;filter:drop-shadow(0 0 6px rgba(247,244,234,.9));transition:opacity .2s,transform .2s}
.rail-arrow svg{width:16px;height:32px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.rail-arrow.prev{left:6px}.rail-arrow.next{right:6px}
.rail-arrow:hover.next{transform:translateX(3px)}.rail-arrow:hover.prev{transform:translateX(-3px)}
.rail-arrow[hidden]{display:none}
@media (max-width:1099px){.rail-arrow{top:calc((100cqw - 32px)/6 - 32px)}}
@media (max-width:699px){.rail-arrow{top:calc(36cqw - 32px)}}
.rail > *{scroll-snap-align:start}
@media (max-width:1099px){.rail{grid-auto-columns:calc((100% - 32px)/3)}}
@media (max-width:699px){.rail{grid-auto-columns:72%}}

.card{position:relative;display:flex;flex-direction:column;min-width:0}
.card-link{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit}
.card-art{position:relative;aspect-ratio:1;background:var(--mist-white);overflow:hidden;max-width:100%;outline:1px solid var(--cloud-grey);outline-offset:-1px}
.card-art .m1,.card-art .m2{position:absolute;inset:0;transition:opacity .5s,transform .8s cubic-bezier(.2,.7,.2,1)}
.card-art .m2{opacity:0}
.card-art svg,.card-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
@media (hover:hover){.card:hover .m2{opacity:1}.card:hover .m1,.card:hover .m2{transform:scale(1.03)}}
.card-art .card-badge{z-index:1}
.card-badge{position:absolute;z-index:1;left:12px;top:12px;background:var(--pearl-white);border:1px solid var(--champagne-gold);border-radius:var(--r-pill);font-size:12px;line-height:18px;padding:2px 10px}
/* up to two collection labels stacked top-left; the wrapper takes the badge's place, each label sits inside it */
.card-badges{position:absolute;z-index:1;left:12px;top:12px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:calc(100% - 64px);pointer-events:none}
.card-badges .card-badge{position:static;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.heart{position:absolute;right:10px;top:10px;z-index:2;width:40px;height:40px;border-radius:var(--r-pill);border:0;background:var(--pearl-white);color:var(--ink-blue);display:grid;place-items:center}
.heart svg{width:18px;height:18px}
.heart[aria-pressed="true"] svg path,.wish-btn[aria-pressed="true"] svg path{fill:currentColor}
.card-body{display:grid;gap:2px}
.card-name{font-size:14px;line-height:20px;font-weight:500}
.card-link:hover .card-name{text-decoration:underline;text-underline-offset:3px}
.card-spec{font-size:12px;line-height:18px}
.card-price{font-size:15px;line-height:22px;margin-top:4px;font-variant-numeric:tabular-nums}

.campaign{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tile{position:relative;aspect-ratio:3/4;max-width:100%;display:flex;flex-direction:column;padding:24px;overflow:hidden;color:var(--ink-blue)}
.tile-space{flex:1;position:relative;min-height:0}
.tile-space svg{position:absolute;inset:0;width:100%;height:100%}
.tile .hl{font-size:clamp(26px,2.6vw,32px)}
.tile .cta-link{margin-top:14px;align-self:flex-start}
.t-blue{background:var(--misty-blue)}
.t-beige{background:var(--shell-beige)}
.t-brown{background:var(--champagne-brown)}
.motif path{stroke:var(--pearl-white);fill:none}
.motif circle{fill:var(--pearl-white)}
@media (max-width:899px){
  .campaign{grid-template-columns:minmax(0,1fr)}
  .tile{aspect-ratio:auto}
  .tile-space{min-height:150px}
  .t-beige .tile-space{min-height:300px}
}
.cats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.cat{display:flex;flex-direction:column;gap:6px;text-decoration:none;min-width:0}
.cat-art{position:relative;aspect-ratio:1;overflow:hidden;margin-bottom:8px;max-width:100%}
.cat-art svg{position:absolute;inset:0;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.cat:hover .cat-art svg{transform:scale(1.06)}
.cat-name{font-family:var(--display);font-weight:400;font-size:18px;line-height:1.2;letter-spacing:1.5px;text-transform:uppercase}
.cat .cta-link{align-self:flex-start;min-height:28px}
@media (max-width:1099px){.cats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:599px){.cats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.discs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,32px)}
@media (max-width:599px){.discs{gap:12px}.discs .caption{display:none}.discs .disc-name{font-size:13px;letter-spacing:1px}}
.disc{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;text-decoration:none;padding:8px 4px 16px;min-width:0}
.disc svg{width:min(124px,100%);aspect-ratio:1;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.disc:hover svg{transform:translateY(-5px)}
.disc .pimg{display:block;width:100%;aspect-ratio:1;object-fit:cover;margin-bottom:10px;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.disc:hover .pimg{transform:translateY(-5px)}
.disc-name{font-family:var(--display);font-size:16px;line-height:1.2;letter-spacing:1.5px;text-transform:uppercase;margin-top:6px}
.disc:hover .disc-name{text-decoration:underline;text-underline-offset:4px}
@media (max-width:899px){.discs{grid-template-columns:repeat(3,minmax(0,1fr))}}
.price-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:36px;padding-top:32px;border-top:1px solid var(--cloud-grey)}
.price-row .eyebrow{margin-right:8px}

.band-mist{background:var(--mist-white)}
.band-shell{background:var(--shell-beige)}
.finder{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.step{border:0;padding:0;margin:0;min-width:0}
.step legend{display:flex;align-items:baseline;gap:12px;padding:0;margin-bottom:16px;font-size:15px;line-height:22px;font-weight:500}
.step-n{font-family:var(--display);font-size:34px;line-height:1;font-weight:400;color:var(--slate-blue)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.finder-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:40px;padding-top:24px;border-top:1px solid var(--cloud-grey)}
.finder-count{font-family:var(--display);font-size:24px;letter-spacing:1px;text-transform:uppercase;font-variant-numeric:tabular-nums}
@media (max-width:899px){.finder{grid-template-columns:minmax(0,1fr)}}

.cert{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
.cert-card{background:var(--champagne-brown);padding:clamp(20px,3.4vw,44px)}
.cert-paper{background:var(--pearl-white);border:1px solid var(--champagne-gold);outline:1px solid var(--champagne-gold);outline-offset:-9px;padding:clamp(24px,3vw,40px) clamp(22px,3vw,36px)}
.cert-top{text-align:center;display:grid;gap:4px;margin-bottom:22px}
.cert-title{font-family:var(--display);font-size:22px;line-height:1.2;letter-spacing:1.5px;text-transform:uppercase}
.spec{display:grid;grid-template-columns:auto minmax(0,1fr);font-size:14px;line-height:20px}
.spec dt,.spec dd{padding-block:9px;border-bottom:1px solid var(--cloud-grey)}
.spec dd{text-align:right;padding-left:16px;font-variant-numeric:tabular-nums}
.cert-foot{display:flex;justify-content:space-between;gap:12px;margin-top:18px}
.cert-photo{margin:0;max-width:560px;background:none}
.cert-photo figcaption{margin-top:10px;font-size:12px;line-height:18px;color:var(--slate-blue)}
.cert-photo img{display:block;width:100%;height:auto}
.cert-copy .body{margin-top:22px;max-width:52ch}
.cert-copy .cta-link{margin-top:20px}
@media (max-width:899px){.cert{grid-template-columns:minmax(0,1fr)}}
.story{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.story .body{margin-top:22px;max-width:58ch}
.story .cta-link{margin-top:20px}
.notes{background:var(--pearl-white);padding:32px;display:flex;flex-direction:column;gap:12px}
.note-quote{font-family:var(--display);font-size:24px;line-height:1.25;letter-spacing:.5px}
.notes .cta-link{align-self:flex-start}
@media (max-width:899px){.story{grid-template-columns:minmax(0,1fr)}}
.guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.guide{display:flex;flex-direction:column;gap:10px;text-decoration:none;min-width:0}
.guide-art{position:relative;aspect-ratio:3/2;overflow:hidden;margin-bottom:6px;max-width:100%}
.guide-art svg{position:absolute;inset:0;width:100%;height:100%}
.guide h3{font-family:var(--display);font-weight:400;font-size:20px;line-height:1.2;letter-spacing:1px;text-transform:uppercase}
.guide:hover h3{text-decoration:underline;text-underline-offset:5px}
@media (max-width:899px){.guides{grid-template-columns:minmax(0,1fr)}}
.news{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 64px;align-items:end}
.news .body{margin-top:14px}
.news-form{display:flex;flex-wrap:wrap;gap:12px}
.input{flex:1 1 220px;min-width:0;height:48px;padding:0 16px;border:1px solid var(--slate-blue);border-radius:var(--r-sm);background:var(--pearl-white);font-size:15px}
.input:focus{outline:2px solid var(--ink);outline-offset:1px}
textarea.input{height:auto;min-height:128px;padding:12px 16px;resize:vertical;line-height:24px}
select.input{appearance:none;-webkit-appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23303538' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px}
.form-msg{flex-basis:100%;font-size:14px;line-height:22px;min-height:22px}
@media (max-width:899px){.news{grid-template-columns:minmax(0,1fr)}}

/* ---------- footer ---------- */
.foot{background:var(--mist-white);padding-block:64px 28px}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(4,minmax(0,1fr));gap:32px}
.foot h3{font-family:var(--label);font-weight:400;font-size:13px;line-height:16px;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}
.foot li a{font-size:14px;line-height:22px;display:inline-block;padding-block:4px;text-decoration:none}
.foot li a:hover{text-decoration:underline;text-underline-offset:4px}
.foot-brand .wordmark{font-size:22px;padding-left:0;display:inline-block}
.foot-brand p{margin-top:14px;max-width:34ch}
.socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.foot .socials a.social{display:grid;padding:0;place-items:center;width:44px;height:44px;border-radius:var(--r-pill);border:1px solid var(--slate-blue);color:var(--ink-blue);transition:background-color .2s,color .2s,border-color .2s}
.social svg{width:20px;height:20px}
.foot .socials a.social:hover{background:var(--ink-blue);border-color:var(--ink-blue);color:var(--pearl-white)}
.foot-motto{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 22px;margin-top:48px;font-family:var(--label);font-size:12px;line-height:16px;letter-spacing:3px;text-transform:uppercase;color:var(--ink)}
.foot-motto::before,.foot-motto::after{content:"";width:64px;height:1px;background:var(--rule)}
.foot-motto span+span:not(.tone-dots)::before{content:"/";margin-right:22px;opacity:.6}
@media (max-width:599px){.foot-motto{gap:12px 12px;letter-spacing:2px}.foot-motto::before,.foot-motto::after{display:none}.foot-motto span+span:not(.tone-dots)::before{margin-right:12px}}
.foot-brand .foot-script{margin-top:10px;font-size:34px}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:28px;padding-top:22px;border-top:1px solid var(--cloud-grey);font-size:12px;line-height:18px}
.foot-bottom ul{display:flex;flex-wrap:wrap;gap:6px 20px}
@media (max-width:999px){.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-brand{grid-column:1/-1}}

/* ---------- drawers ---------- */
.scrim{position:fixed;inset:0;background:var(--scrim);z-index:60;opacity:0;pointer-events:none;transition:opacity .3s}
.scrim.on{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;bottom:0;right:0;z-index:70;width:min(440px,100%);background:var(--pearl-white);display:flex;flex-direction:column;transform:translateX(100%);visibility:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),visibility 0s linear .35s;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.drawer.left{right:auto;left:0;width:min(380px,92%);transform:translateX(-100%)}
.drawer.open{transform:none;visibility:visible;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 12px 14px 24px;border-bottom:1px solid var(--cloud-grey)}
.drawer-body{flex:1;overflow-y:auto;padding:4px 24px 16px}
.drawer-foot{border-top:1px solid var(--cloud-grey);padding:20px 24px;display:grid;gap:12px}
.line-item{display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;padding-block:20px;border-bottom:1px solid var(--cloud-grey)}
.li-art{position:relative;aspect-ratio:1;background:var(--mist-white);overflow:hidden;display:block}
.li-art svg,.li-art img{position:absolute;inset:0;width:100%;height:100%}
.li-art img{object-fit:contain}
.li-main{display:flex;flex-direction:column;gap:4px;min-width:0}
.li-top{display:flex;justify-content:space-between;gap:12px;font-size:14px;line-height:20px}
.li-top a{font-weight:500;text-decoration:none}
.li-top a:hover{text-decoration:underline}
.li-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--slate-blue);border-radius:var(--r-pill);height:40px}
.qty button{width:38px;height:38px;border:0;background:none;border-radius:var(--r-pill);display:grid;place-items:center;color:var(--ink-blue)}
.qty button:hover{background:var(--mist-white)}
.qty button svg{width:16px;height:16px}
.qty span{min-width:26px;text-align:center;font-variant-numeric:tabular-nums;font-size:14px}
.link-btn{background:none;border:0;padding:0;font-size:12px;text-decoration:underline;text-underline-offset:3px;color:var(--ink-blue)}
.sub-row{display:flex;justify-content:space-between;font-size:16px;font-variant-numeric:tabular-nums}
.empty-bag{display:grid;gap:14px;justify-items:start;padding-block:32px}
.m-group{border-bottom:1px solid var(--cloud-grey)}
.m-group summary{display:flex;align-items:center;justify-content:space-between;min-height:56px;cursor:pointer;list-style:none;font-family:var(--label);font-size:15px;letter-spacing:2px;text-transform:uppercase}
.m-group summary::-webkit-details-marker{display:none}
.m-group summary svg{width:18px;height:18px;transition:transform .25s}
.m-group[open] summary svg{transform:rotate(180deg)}
.m-links{padding-bottom:12px;display:grid;gap:0}
.m-links a{min-height:48px;padding-block:0}
.m-links .tip{display:none}
.mega-in.four{grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:0;padding-block:36px 44px}
.mega-in.four .mcol{padding-inline:28px;min-width:0}
.mega-in.four.with-feature{grid-template-columns:repeat(var(--n),minmax(0,1fr)) minmax(0,2fr)}
.mega-in.four.with-feature .mcol:last-child{border-left:0;padding-right:0}
.mega-in.four.with-feature .feature{min-height:200px}
.mtiles{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.mtile{display:flex;flex-direction:column;align-items:flex-start;text-decoration:none;color:inherit}
.mtile-art{position:relative;display:block;width:100%;aspect-ratio:16/10;overflow:hidden;background:var(--shell-beige)}
.mtile-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.mtile:hover .mtile-art img{transform:scale(1.03)}
.mtile .kicker{margin-top:16px;font-family:var(--body);font-size:15px;line-height:22px;letter-spacing:normal;text-transform:none}
.mtile-h{margin-top:6px;font-family:var(--display);font-size:16px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-blue)}
.mtiles{align-items:stretch}
.mtile{height:100%}
.mtile-h{font-size:22px!important;letter-spacing:1px!important;line-height:1.15;min-height:2.3em;margin-top:6px!important}
.mtile .cta-link{margin-top:auto;padding-top:12px}
.mega-in.four .mcol:first-child{padding-left:0}
.mega-in.four .mcol+.mcol{border-left:1px solid var(--cloud-grey)}
.mega li a{position:relative;display:inline-flex;flex-wrap:nowrap;align-items:center;gap:10px;min-height:32px;padding-block:5px;white-space:nowrap;max-width:100%}
.mega li a>span:not(.tip):not(.dot){white-space:nowrap}
.mega li a.more{min-height:32px}
.mega .tip{position:absolute;left:calc(100% + 8px);top:50%;margin-top:-9px;pointer-events:none}
.mega li a.more,.m-links a.more{font-family:var(--label);font-size:12px;letter-spacing:1.6px;text-transform:uppercase;margin-top:6px}
.mega .tip{font-size:11px;line-height:16px;z-index:1;letter-spacing:.5px;color:var(--slate-blue);background:var(--mist-white);border-radius:var(--r-pill);padding:1px 8px;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s;white-space:nowrap}
.mega li a:hover .tip,.mega li a:focus-visible .tip{opacity:1;transform:none}
.mega .mcol h3{white-space:nowrap}
.mega-in.four .mcol{display:flex;flex-direction:column}
.mega-in.four .mcol>ul{flex:1;display:flex;flex-direction:column}
.mega-in.four .mcol>ul>li:has(> a.more){margin-top:auto;padding-top:6px}
.mega li a.more{margin-top:0}
.mega li a.more>span,.m-links a.more>span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;text-decoration-color:var(--slate-blue);transition:text-decoration-color .2s,text-underline-offset .2s}
.mega li a.more:hover>span,.m-links a.more:hover>span{text-decoration-color:var(--ink-blue);text-underline-offset:4px}
.mega-in.four.with-prods{grid-template-columns:minmax(0,1fr) minmax(0,3fr)}
.mprods{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;flex-direction:row!important}
.mprod{display:flex;flex-direction:column;gap:8px;text-decoration:none;min-width:0}
.mprod-art{position:relative;aspect-ratio:1;background:var(--mist-white);overflow:hidden}
.mprod-art svg,.mprod-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.mprod:hover .mprod-art img,.mprod:hover .mprod-art svg{transform:scale(1.04)}
.mprod b{font-weight:500;font-size:14px;line-height:20px}
.mprod .caption{font-variant-numeric:tabular-nums}
.mprod:hover b{text-decoration:underline;text-underline-offset:4px}
.mega-in.four .mcol{overflow:visible}
@media (max-width:1199px){.mega-in.four .mcol{padding-inline:20px}.mega li a,.mega li a>span{font-size:13px}.mega li a.more{font-size:11px;letter-spacing:1.2px}}
.mega li a:hover{text-decoration:none}.mega li a:hover>span:not(.tip):not(.dot){text-decoration:underline;text-underline-offset:4px}
.m-plain{display:flex;align-items:center;min-height:56px;border-bottom:1px solid var(--cloud-grey);font-family:var(--label);font-size:15px;letter-spacing:2px;text-transform:uppercase;text-decoration:none}
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%,16px);background:var(--ink-blue);color:var(--pearl-white);padding:12px 22px;border-radius:var(--r-pill);font-size:14px;line-height:20px;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;z-index:90;max-width:calc(100% - 32px);text-align:center}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* ---------- shop ---------- */
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;line-height:18px;padding-top:20px}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.shop-head{padding-block:26px 30px;max-width:760px}
.shop-head .intro{margin-top:14px}
.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-block:12px;border-block:1px solid var(--cloud-grey)}
.toolbar-left{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.count-line{font-size:14px;font-variant-numeric:tabular-nums}
.sort{display:flex;align-items:center;gap:10px;font-size:14px}
.sort .input{height:40px;flex:none;width:auto;font-size:14px}
.active-chips{display:flex;flex-wrap:wrap;gap:8px;padding-top:14px}
.active-chips:empty{display:none}
.shop{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(24px,4vw,56px);padding-block:28px 72px}
.filters{align-self:start;position:sticky;top:var(--stick);max-height:calc(100vh - 160px);overflow-y:auto;padding-right:6px}
.filters-head{display:flex;align-items:center;justify-content:space-between;min-height:64px;border-bottom:1px solid var(--cloud-grey)}
.fgroup{border-bottom:1px solid var(--cloud-grey)}
.fgroup:first-of-type{border-top:1px solid var(--cloud-grey)}
.fgroup summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:52px;cursor:pointer;list-style:none;font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase}
.fgroup summary::-webkit-details-marker{display:none}
.fgroup summary svg{width:16px;height:16px;transition:transform .25s;flex:none}
.fgroup[open] summary svg{transform:rotate(180deg)}
.fgroup summary .fc{margin-left:auto;font-family:var(--body);font-size:12px;letter-spacing:0}
.fopts{display:grid;padding-bottom:14px}
.check{display:flex;align-items:center;gap:10px;min-height:36px;font-size:14px;line-height:20px;cursor:pointer}
.check input{width:18px;height:18px;accent-color:var(--ink-blue);margin:0;flex:none}
.check .n{margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums}
.filters-foot{display:grid;gap:12px;padding-block:20px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 16px}
.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1099px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
.empty{grid-column:1/-1;background:var(--mist-white);padding:56px 32px;display:grid;gap:14px;justify-items:center;text-align:center}
@media (max-width:899px){
  .shop{grid-template-columns:minmax(0,1fr)}
  .filters{position:fixed;top:0;bottom:0;left:0;z-index:70;width:min(360px,90%);max-height:none;background:var(--pearl-white);padding:env(safe-area-inset-top,0px) 20px env(safe-area-inset-bottom,0px);transform:translateX(-100%);visibility:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),visibility 0s linear .35s}
  .filters.open{transform:none;visibility:visible;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
  .fgroup:first-of-type{border-top:0}
  .filters-foot{position:sticky;bottom:0;background:var(--pearl-white);border-top:1px solid var(--cloud-grey)}
}
.faq{max-width:860px}
.acc details{border-bottom:1px solid var(--cloud-grey)}
.acc details:first-child{border-top:1px solid var(--cloud-grey)}
.acc summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding-block:10px;cursor:pointer;list-style:none;font-size:15px;line-height:22px;font-weight:500}
.acc summary::-webkit-details-marker{display:none}
.acc summary svg{width:18px;height:18px;flex:none;transition:transform .25s}
.acc details[open] summary svg{transform:rotate(180deg)}
.acc .acc-body{padding-bottom:20px;font-size:15px;line-height:24px;max-width:68ch}
.acc .acc-body p + p{margin-top:10px}

/* ---------- length guide ---------- */
.lengths{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:center;background:var(--mist-white);padding:clamp(20px,4vw,48px)}
.bust{width:100%;height:auto;display:block;max-height:440px}
.bust .form{fill:var(--pearl-white)}
.bust .arc{fill:none;stroke:var(--grey-blue);stroke-width:6;stroke-linecap:round;stroke-dasharray:0 10;transition:stroke .25s,stroke-width .25s}
.bust .arc.on{stroke:var(--ink-blue);stroke-width:9;stroke-dasharray:0 12}
.len-list{display:grid}
.len{display:grid;grid-template-columns:minmax(96px,120px) minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--cloud-grey);background:transparent;padding:10px 12px;min-height:50px;color:var(--ink-blue)}
.len:first-child{border-top:1px solid var(--cloud-grey)}
.len:hover{background:var(--pearl-white)}
.len[aria-pressed="true"]{background:var(--pearl-white)}
.len .ln{font-family:var(--label);font-size:15px;letter-spacing:1.5px;text-transform:uppercase}
.len .lv{font-size:14px;font-variant-numeric:tabular-nums}
.len .lc{font-size:12px;font-variant-numeric:tabular-nums}
.len-desc{margin-top:16px;font-size:15px;line-height:24px;min-height:48px}
@media (max-width:899px){.lengths{grid-template-columns:minmax(0,1fr)}.bust{max-height:320px}}

/* ---------- product ---------- */
.pdp{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);padding-block:22px 64px;align-items:start}
.gallery{position:sticky;top:var(--stick)}
.g-main{position:relative;aspect-ratio:1;overflow:hidden;max-width:100%}
.g-main svg{position:absolute;inset:0;width:100%;height:100%}
.thumbs{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:12px;margin-top:12px}
.thumb{position:relative;aspect-ratio:1;border:1px solid var(--cloud-grey);padding:0;overflow:hidden;background:var(--mist-white)}
.thumb svg{position:absolute;inset:0;width:100%;height:100%}
.thumb[aria-current="true"]{border-color:var(--ink-blue);box-shadow:inset 0 0 0 1px var(--ink-blue)}
.thumb .tl{position:absolute;left:8px;bottom:6px;font-size:11px;line-height:16px;background:var(--pearl-white);padding:1px 8px;border-radius:var(--r-pill)}
.buy{display:flex;flex-direction:column;min-width:0}
.tag-row{display:flex;flex-wrap:wrap;gap:8px}
.tag{font-size:12px;line-height:18px;padding:3px 11px;border-radius:var(--r-pill);border:1px solid var(--champagne-gold);background:var(--pearl-white)}
.pdp-title{font-family:var(--display);font-weight:400;font-size:clamp(28px,3vw,36px);line-height:1.1;letter-spacing:1.5px;text-transform:uppercase;margin-top:16px;text-wrap:balance}
.spec-line{margin-top:8px;font-size:14px;line-height:22px}
.price{font-size:26px;line-height:34px;margin-top:20px;font-variant-numeric:tabular-nums}
.ship-line{font-size:13px;line-height:20px;margin-top:4px}
.opt-group{margin-top:26px}
.opt-label{font-size:14px;line-height:20px;margin-bottom:10px}
.opt-label b{font-weight:500}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:var(--r-pill);border:1px solid var(--slate-blue);background:var(--pearl-white);font-size:14px;line-height:20px;color:var(--ink-blue)}
.opt:hover{background:var(--mist-white)}
.opt[aria-checked="true"]{background:var(--mist-white);border-color:var(--ink-blue);box-shadow:inset 0 0 0 1px var(--ink-blue)}
.opt .delta{font-size:12px;font-variant-numeric:tabular-nums}
.opt.sq{min-width:48px;justify-content:center;padding:0 12px}
.buy-actions{display:flex;gap:12px;margin-top:30px}
.buy-actions .btn{flex:1}
.wish-btn{margin-top:12px}
.assure{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin-top:28px;padding-block:20px;border-block:1px solid var(--cloud-grey)}
.assure li{display:flex;gap:10px;font-size:13px;line-height:20px;align-items:flex-start;min-width:0}
.assure svg{width:20px;height:20px;flex:none;color:var(--slate-blue)}
.buy .acc{margin-top:8px}
.buy .acc details:first-child{border-top:0}
@media (max-width:899px){.pdp{grid-template-columns:minmax(0,1fr)}.gallery{position:static}}
.pdp-notes{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 40px;align-items:center;background:var(--shell-beige);padding:clamp(24px,4vw,48px)}
@media (max-width:699px){.pdp-notes{grid-template-columns:minmax(0,1fr)}}

/* ---------- guide + custom ---------- */
.jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
[id^="g-"]{scroll-margin-top:var(--stick)}
.faq-group,.blog-sec,#proof-h,#au-tl,#g-bridal,#g-care{scroll-margin-top:calc(var(--stick,130px) + 40px)}
.table-wrap{overflow-x:auto;border-top:1px solid var(--ink-blue)}
table{border-collapse:collapse;width:100%;min-width:780px;font-size:14px;line-height:22px}
th{text-align:left;font-weight:500;font-size:12px;line-height:18px;letter-spacing:.6px;text-transform:uppercase;padding:14px 14px 12px 0;border-bottom:1px solid var(--cloud-grey);vertical-align:bottom}
td{padding:16px 14px 16px 0;border-bottom:1px solid var(--cloud-grey);vertical-align:top}
.pcell{display:flex;gap:12px;align-items:center;font-family:var(--label);font-size:15px;letter-spacing:1.2px;text-transform:uppercase;white-space:nowrap}
.pcell svg{width:44px;height:44px;flex:none}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
@media (max-width:899px){.split{grid-template-columns:minmax(0,1fr)}}
.factor-list li{display:grid;grid-template-columns:minmax(110px,150px) minmax(0,1fr);gap:16px;padding-block:14px;border-bottom:1px solid var(--cloud-grey);font-size:14px;line-height:22px}
.factor-list li:first-child{border-top:1px solid var(--cloud-grey)}
.factor-list b{font-family:var(--label);font-weight:400;font-size:15px;letter-spacing:1.2px;text-transform:uppercase}
.grade-table table{min-width:520px}
.care-list li{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:16px;padding-block:16px;border-bottom:1px solid var(--cloud-grey)}
.care-list li:first-child{border-top:1px solid var(--cloud-grey)}
.care-list b{font-family:var(--display);font-weight:400;font-size:17px;letter-spacing:1.2px;text-transform:uppercase}
@media (max-width:599px){.care-list li,.factor-list li{grid-template-columns:minmax(0,1fr);gap:4px}}
.process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.proc{background:var(--mist-white);padding:28px 24px 32px;display:flex;flex-direction:column;gap:10px;min-width:0}
.proc h3{font-family:var(--display);font-weight:400;font-size:20px;letter-spacing:1px;text-transform:uppercase}
.proc p{font-size:14px;line-height:22px}
@media (max-width:999px){.process{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:539px){.process{grid-template-columns:minmax(0,1fr)}}
.cform{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:grid;gap:6px;min-width:0}
.field.full{grid-column:1/-1}
.field label{font-size:13px;line-height:18px;font-weight:500}
.field .input{width:100%;flex:none}
.bullets li{position:relative;padding-left:22px;margin-top:8px;font-size:15px;line-height:24px}
.bullets li::before{content:"";position:absolute;left:2px;top:9px;width:8px;height:8px;border-radius:var(--r-pill);background:var(--champagne-gold)}
@media (max-width:599px){.cform{grid-template-columns:minmax(0,1fr)}}


/* ---------- kit imagery ---------- */
.cats4{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ecat{display:flex;flex-direction:column;gap:4px;text-decoration:none;min-width:0}
.ecat-img{position:relative;aspect-ratio:1;overflow:hidden;background:var(--shell-beige);margin-bottom:10px;max-width:100%}
.ecat-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.ecat:hover .ecat-img img{transform:scale(1.04)}
.cats4 .ecat-img{aspect-ratio:400/504}
.ecat .cta-link{align-self:flex-start;min-height:28px}
.more-pieces{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:28px}
.more-pieces .eyebrow{margin-right:6px}
@media (max-width:899px){.cats4{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:599px){.cats4{grid-template-columns:1fr}.cats4 .ecat-img{aspect-ratio:4/5}}
.hero.rev{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.hero.rev .hero-art{order:-1}
.hero.rev .hero-copy{padding-left:clamp(24px,4vw,64px);padding-right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}
.hero.rev .hero-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:899px){.hero.rev{grid-template-columns:minmax(0,1fr)}.hero.rev .hero-copy{padding-inline:var(--gutter)}}
.custom-hero .hero-copy{background:#9CCBC9 var(--ocean) center 30%/cover no-repeat;position:relative}
.custom-hero .hero-art{background:#f3f1ec}
.custom-hero .hero-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
@media (min-width:900px){.has-hero .custom-hero .hero-art img{top:calc(var(--hdr-over) + 8px);height:calc(100% - var(--hdr-over) - 16px)}}
@media (max-width:899px){.has-hero #view > .hero.custom-hero:first-child .hero-art,.custom-hero .hero-art{order:0;aspect-ratio:1342/1260;max-height:none;min-height:0}.custom-hero .hero-copy{min-height:680px;background-position:center 0;justify-content:flex-start;padding-bottom:200px}}
.aph{position:relative;margin:0;overflow:hidden;background:var(--mist-white);min-width:0}
.aph img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.aph.sq{aspect-ratio:1}.aph.r34{aspect-ratio:3/4}
.aph figcaption{position:absolute;left:0;right:0;bottom:0;padding:8px 12px;font-size:11px;line-height:16px;background:rgba(247,244,234,.88)}
.ab-cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ab-cat,.ab-ed{display:flex;flex-direction:column;gap:8px;text-decoration:none;min-width:0}
.ab-cat{align-items:center;text-align:center}
.ab-cat .cat-name{margin-top:8px;font-size:15px}
.ab-cat:hover .aph img,.ab-ed:hover .aph img{transform:scale(1.03)}
.ab-ed .aph{margin-bottom:10px}
.ab-ed .cta-link{align-self:flex-start}
.ab-split{display:grid;grid-template-columns:1.15fr 1fr .8fr;gap:16px;align-items:stretch}
.ab-split.rev{grid-template-columns:1fr 1.15fr .8fr}
.ab-split .lead{align-self:start}
.ab-panel{padding:clamp(24px,3vw,48px);display:flex;flex-direction:column;justify-content:center;gap:16px;min-width:0}
.ab-panel .cta-link{align-self:flex-start}
.ab-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ab-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ab-trust ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:24px}
.ab-trust li{display:flex;flex-direction:column;gap:28px;padding:28px clamp(20px,2.4vw,32px) 32px;font-size:16px;line-height:24px;min-width:0}
.ab-trust li+li{border-left:1px solid var(--cloud-grey)}
.ab-trust .big{width:64px;height:64px;fill:none;stroke:var(--ink-blue);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:1099px){.ab-split,.ab-split.rev{grid-template-columns:1fr 1fr}.ab-split .small{display:none}.ab-trust ul{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-trust li+li{border-left:0}.ab-trust li:nth-child(2n){border-left:1px solid var(--cloud-grey)}.ab-trust li:nth-child(n+3){border-top:1px solid var(--cloud-grey)}}
@media (max-width:640px){.ab-cats{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-split,.ab-split.rev,.ab-two,.ab-three{grid-template-columns:minmax(0,1fr)}.ab-split .lead{aspect-ratio:4/5}.ab-trust ul{grid-template-columns:1fr;padding-block:0}.ab-trust li{flex-direction:row;align-items:center;gap:20px;padding:20px 0}.ab-trust li:nth-child(2n){border-left:0}.ab-trust li+li{border-top:1px solid var(--cloud-grey)}.ab-trust .big{width:44px;height:44px}}
.promises-wrap{margin-bottom:clamp(56px,7vw,80px)}
.hsec{padding-bottom:clamp(64px,8vw,96px)}
.hband{margin-bottom:clamp(64px,8vw,96px)}
.guide-cards{padding-block:8px clamp(48px,6vw,72px)}
.reviews .rv-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:24px 48px;align-items:center;margin-bottom:28px}
.rv-title{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:28px}
.rv-title .hl{grid-column:1}
.rv-title::after{content:"";grid-column:2;grid-row:1;height:1px;background:var(--slate-blue);max-width:128px}
.rv-sub{grid-column:1/-1;margin-top:14px;font-family:var(--display);font-size:clamp(14px,1.3vw,17px);letter-spacing:4px;text-transform:uppercase;color:var(--slate-blue)}
.rv-intro{background:var(--mist-white);padding:clamp(20px,2.4vw,32px) clamp(24px,3vw,40px);display:grid;gap:10px;justify-items:start}
.rv-big{font-family:var(--display);font-size:clamp(24px,2.4vw,34px);line-height:1.15;letter-spacing:.5px}
.rv-intro .cta-link{margin-top:6px}
.rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.rv-card{margin:0;display:flex;flex-direction:column;background:var(--bg);min-width:0}
.rv-card img{display:block;width:100%;aspect-ratio:488/328;object-fit:cover}
.rv-card figcaption{display:flex;flex-direction:column;gap:14px;padding:24px 26px 28px;flex:1}
.rv-q{font-family:Georgia,serif;font-size:44px;line-height:.6;height:22px;color:var(--champagne-brown)}
.rv-card blockquote{margin:0;font-family:var(--display);font-size:18px;line-height:1.6;letter-spacing:.2px;flex:1}
.rv-stars{display:flex;gap:6px}
.rv-stars svg{width:18px;height:18px;fill:var(--slate-blue)}
.rv-by{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:16px;border-top:1px solid var(--cloud-grey);font-family:var(--display);font-size:17px}
.rv-loc{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--slate-blue)}
.rv-note{margin-top:14px}
@media (max-width:899px){.reviews .rv-head{grid-template-columns:minmax(0,1fr)}.rv-grid{grid-template-columns:minmax(0,1fr)}}
.rv-stage{position:relative;padding:clamp(40px,5vw,72px) clamp(20px,4vw,64px);background:#9CCBC9 var(--ocean) center 80%/cover no-repeat}
.rv-stage::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(247,244,234,.15),rgba(247,244,234,0) 40%,rgba(48,53,56,.12))}
.rv-stage .rv-grid{position:relative}
.rv-stage .rv-card{background:rgba(247,244,234,.9);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 18px 40px -24px rgba(48,53,56,.45)}
.rv-stage .rv-card figcaption{padding:32px 30px 30px}
.rv-stage .rv-q{font-size:64px;height:30px}
.rv-stage .rv-card blockquote{font-size:20px}
@media (max-width:899px){.rv-stage{padding:24px 16px}}
.designer{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);background:var(--ink-blue);color:var(--pearl-white);min-height:clamp(480px,46vw,680px);margin-bottom:clamp(56px,7vw,80px)}
.designer-copy{display:flex;flex-direction:column;justify-content:center;padding-block:clamp(48px,7vw,96px);padding-right:clamp(24px,4vw,64px);padding-left:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}
.designer-copy .hl{color:var(--pearl-white);margin-top:var(--s1)}
.designer-copy .body{margin-top:var(--s3);max-width:46ch;color:var(--mist-white)}
.designer-copy .cta-link{color:var(--pearl-white)}
.btn-light{background:var(--pearl-white);color:var(--ink-blue)}
.btn-light:hover{background:var(--mist-white)}
.designer-media{position:relative;margin:0;overflow:hidden;background:var(--shell-beige)}
.designer-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.designer{margin-bottom:0}
.designer-eyebrow{display:flex;align-items:center;gap:24px;font-family:var(--display);font-size:clamp(14px,1.3vw,18px);letter-spacing:3px;text-transform:uppercase;color:var(--pearl-white)}
.designer-eyebrow::after{content:"";width:clamp(64px,9vw,128px);height:1px;background:currentColor;opacity:.8}
.designer-name{font-family:var(--display);font-weight:400;font-size:clamp(56px,7.2vw,104px);line-height:.95;letter-spacing:3px;text-transform:uppercase;color:var(--pearl-white);margin-top:clamp(18px,2vw,28px);text-wrap:balance}
.designer-role{font-family:var(--display);font-size:clamp(15px,1.5vw,22px);letter-spacing:4px;text-transform:uppercase;color:var(--pearl-white);margin-top:clamp(14px,1.6vw,22px)}
.designer-copy .hero-ctas{margin-top:clamp(32px,4vw,56px)}
.designer-name.signature{position:relative;display:inline-block;align-self:flex-start;font-family:var(--script);text-transform:none;letter-spacing:0;font-size:clamp(76px,8.6vw,136px);line-height:1;transform:rotate(-6deg);transform-origin:left bottom;margin-top:clamp(22px,2.6vw,36px);margin-bottom:clamp(8px,1.2vw,18px);padding-right:.15em;white-space:nowrap}
.designer-name.signature span{display:block}
.sig-swash{position:absolute;left:12%;right:-4%;bottom:-.08em;width:92%;height:.32em;overflow:visible}
.sig-swash path{fill:none;stroke:var(--pearl-white);stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke}
.designer-wide{position:relative;display:block;background:#2a2f31;aspect-ratio:1653/952;min-height:520px;overflow:hidden}
.designer-wide .designer-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center}
.designer-wide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,26,25,.25) 0,rgba(28,26,25,.12) 38%,rgba(28,26,25,0) 55%);pointer-events:none}
.designer-wide .designer-copy{position:relative;z-index:1;height:100%;max-width:min(52%,720px);padding-right:0}
.designer-wide .designer-copy .body{color:rgba(247,244,234,.92)}
@media (max-width:899px){.designer-wide{aspect-ratio:auto;min-height:0;background:var(--ink-blue)}.designer-wide .designer-bg{position:static;display:block;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:78% center}.designer-wide::before{display:none}.designer-wide .designer-copy{max-width:none;padding-inline:var(--gutter)}}
@media (max-width:899px){.designer{grid-template-columns:minmax(0,1fr)}.designer-media{order:-1;aspect-ratio:4/5;max-height:70vh}.designer-copy{padding-inline:var(--gutter)}}
.craft{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--shell-beige)}
.craft-media{position:relative;background:var(--ink-blue);min-height:clamp(320px,40vw,560px);overflow:hidden}
.craft-media video,.g-main video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.motion-toggle{position:absolute;right:16px;bottom:16px;z-index:1;min-height:34px}
.craft-copy{display:flex;flex-direction:column;justify-content:center;padding-block:clamp(40px,6vw,88px);padding-left:clamp(24px,5vw,80px);padding-right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}
.craft-copy .body{margin-top:22px;max-width:52ch}
.craft-copy .cta-link{margin-top:20px;align-self:flex-start}
@media (max-width:899px){.craft{grid-template-columns:minmax(0,1fr)}.craft-media{min-height:0;aspect-ratio:1;max-width:100%}.craft-copy{padding-inline:var(--gutter)}}
.proof{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px clamp(32px,6vw,96px);align-items:center}
.proof .notes{background:var(--mist-white)}
@media (max-width:899px){.proof{grid-template-columns:minmax(0,1fr)}}
.badge{display:block;width:min(300px,100%);height:auto;margin-top:22px}
.cert-copy .badge + .cta-link{margin-top:14px}
.badge-row{margin-top:4px;padding-bottom:12px;border-bottom:1px solid var(--cloud-grey)}
.badge-row .badge{width:min(260px,100%);margin-top:12px}
.lustre-wrap{margin-top:clamp(48px,6vw,72px);padding-top:clamp(32px,4vw,48px);border-top:1px solid var(--cloud-grey)}
.lustre{margin:0}
.lustre-img{display:block;width:100%;height:auto}
.lustre-labels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));text-align:center;margin-top:6px;font-size:12px;line-height:18px}
.lustre-labels b{display:block;font-family:var(--display);font-weight:400;font-size:16px;line-height:22px;letter-spacing:1.2px;text-transform:uppercase}
.gifting{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
.gift-img{position:relative;aspect-ratio:4/5;overflow:hidden;max-width:100%}
.gift-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gifting .btn{display:inline-flex}
.gifting-full{align-items:stretch;grid-template-columns:minmax(0,clamp(420px,40vw,620px)) minmax(0,1fr);gap:clamp(32px,6vw,96px)}
.gifting-full>.gift-copy{padding-right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}
.gifting-full .gift-img{aspect-ratio:auto;min-height:clamp(560px,52vw,760px)}
.gifting-full .gift-img img{object-position:center 45%}
.gifting-full>.gift-copy{align-self:center;padding-block:clamp(48px,6vw,80px)}
@media (max-width:899px){.gifting-full{grid-template-columns:minmax(0,1fr)}.gifting-full .gift-img{min-height:0;aspect-ratio:4/5}.gifting-full>.gift-copy{padding:32px var(--gutter) 56px}}
@media (max-width:899px){.gifting{grid-template-columns:minmax(0,1fr)}}
.finder-wrap{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start}
.finder-img{position:relative;aspect-ratio:4/5;overflow:hidden;max-width:100%}
.finder-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:1199px){.finder-wrap .finder{grid-template-columns:minmax(0,1fr);gap:24px}}
@media (max-width:899px){.finder-wrap{grid-template-columns:minmax(0,1fr)}.finder-img{aspect-ratio:16/9}}
.guides{grid-template-columns:repeat(4,minmax(0,1fr))}
.guide-art.edu{background:var(--pearl-white);outline:1px solid var(--cloud-grey);outline-offset:-1px}
.guide-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:10px}
@media (max-width:1099px){.guides{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:539px){.guides{grid-template-columns:minmax(0,1fr)}}
.shop-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 40px;align-items:end;max-width:none}
.shop-head > div:first-child{max-width:760px}
.shop-head[hidden]{display:none}
.shop-banner{position:relative;width:clamp(150px,17vw,230px);aspect-ratio:4/5;overflow:hidden}
.shop-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:599px){.shop-head{grid-template-columns:minmax(0,1fr)}.shop-banner{display:none!important}}
.thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.g-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.opt-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;margin-bottom:10px}
.opt-head .opt-label{margin-bottom:0}
.edu-figure{margin:0;background:var(--pearl-white);outline:1px solid var(--cloud-grey);outline-offset:-1px}
.edu-figure img{display:block;width:100%;height:auto}
.size-notes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}
.size-notes li{display:grid;gap:4px;font-size:14px;line-height:22px;padding-top:14px;border-top:1px solid var(--ink-blue)}
.size-notes b{font-family:var(--display);font-weight:400;font-size:17px;letter-spacing:1.2px;text-transform:uppercase}
@media (max-width:899px){.size-notes{grid-template-columns:repeat(2,minmax(0,1fr))}}
.modal{position:fixed;inset:0;z-index:75;display:grid;place-items:center;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));pointer-events:none}
.modal-card{pointer-events:auto;background:var(--pearl-white);width:min(760px,100%);max-height:100%;overflow-y:auto;display:flex;flex-direction:column}
.modal-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:16px 24px 0}
.modal-body{padding:16px 24px 28px;display:grid;gap:14px}
.gm-fig{margin:0;outline:1px solid var(--cloud-grey);outline-offset:-1px}
.gm-fig img{display:block;width:100%;height:auto}
.gm-fig.gm-lengths img{max-height:56vh;width:auto;margin-inline:auto}

/* ---------- contact-sheet imagery ---------- */
.tile-photo{margin:-24px -24px 20px;overflow:hidden}
.campaign .tile{aspect-ratio:auto}
.campaign .tile-photo{flex:none;aspect-ratio:600/522}
.campaign .tile .hl{min-height:2.1em;display:flex;align-items:flex-end}
.campaign .tile .cta-link{margin-top:auto;padding-top:14px}
.tile-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.craft-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:6px;background:var(--shell-beige)}
.craft-grid figure{position:relative;margin:0;overflow:hidden;min-height:0}
.craft-grid .cg-a{grid-column:1/3}
.craft-grid .cg-low img{object-position:50% 100%}
.craft-grid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.life{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.life-img.product{background:#fff}
.life-img.product img{object-fit:contain}
@media (max-width:899px){.life{grid-template-columns:repeat(2,minmax(0,1fr))}}
.life-img{position:relative;aspect-ratio:3/4;overflow:hidden;margin-bottom:10px;max-width:100%}
.life-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.ecat:hover .life-img img{transform:scale(1.04)}
@media (max-width:539px){.life{grid-template-columns:minmax(0,1fr)}}
.strip{margin:0;max-width:640px}
.strip img{display:block;width:100%;height:auto}
.strip-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:32px}
.strip-row .strip{max-width:none}
@media (max-width:699px){.strip-row{grid-template-columns:minmax(0,1fr)}}
.guide-art.edu img{padding:0}
.guide-art.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;padding:0}
@media (max-width:599px){.thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}}
#view > *{animation:rise .5s cubic-bezier(.2,.7,.2,1) backwards}
@keyframes rise{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Holly Zhang · Pearl Gallery wordmark: small-caps serif, inherits colour so it turns white over the hero and dark on hover/scroll */
.wordmark.brandmark{display:inline-flex;flex-direction:column;align-items:center;font-family:"Cormorant SC","Cormorant Garamond","Times New Roman",Times,serif;font-weight:600;text-transform:none;letter-spacing:0;padding-left:0;line-height:1;white-space:nowrap}
.brandmark .bm-top{font-variant:small-caps;font-size:clamp(24px,2.6vw,34px);letter-spacing:.02em;line-height:.9}
.brandmark .bm-bot{font-size:clamp(12px,1.25vw,17px);font-weight:500;letter-spacing:.11em;text-transform:uppercase;margin-top:3px}
.brandmark.sm .bm-top{font-size:24px}.brandmark.sm .bm-bot{font-size:12px}
/* Header and menu logo: the gallery's wordmark image, used as a mask so it takes the header's text colour (white over the hero). */
.brandmark .bm-img{display:block;height:48px;aspect-ratio:632/161;background:currentColor;-webkit-mask:url(../img/kit/logo-wordmark.webp) center/contain no-repeat;mask:url(../img/kit/logo-wordmark.webp) center/contain no-repeat}
.blend .site:not(:hover):not(:focus-within):not(:has(.mega:not([hidden]),.search-panel:not([hidden]))) .bar .brandmark{filter:drop-shadow(0 1px 8px rgba(31,35,37,.25))}
.brandmark.sm .bm-img{height:32px}
@media (max-width:899px){.bar .brandmark .bm-img{height:34px}}
.foot-brand .wordmark.brandmark{font-size:inherit;align-items:flex-start}
.foot-brand .brandmark .bm-top{font-size:28px}.foot-brand .brandmark .bm-bot{font-size:14px}
@media (max-width:899px){.bar .wordmark.brandmark .bm-top{font-size:20px}.bar .wordmark.brandmark .bm-bot{font-size:10px;letter-spacing:.09em;margin-top:2px}}

/* A quiet reveal: larger editorial type, wider measure, faint line-art packaging in the lower right */
.gifting-full{position:relative;overflow:hidden}
.gifting-full .gift-copy{position:relative;z-index:1;max-width:760px;margin-left:clamp(0px,3vw,48px);margin-top:-20px}
.gift-copy .hl{font-size:clamp(36px,4.8vw,52px)}
.gift-copy .kicker{font-size:17px;line-height:26px}
.gift-copy .body{font-size:18px;line-height:30px;max-width:56ch}
.gift-copy .bullets li{font-size:17px;line-height:28px;margin-top:10px;padding-left:26px}
.gift-copy .bullets li::before{top:10px}
.gift-copy .btn{min-height:54px;padding:0 34px;font-size:14px}
.gift-art{position:absolute;z-index:0;right:clamp(16px,3vw,56px);bottom:clamp(16px,3vw,48px);width:clamp(200px,24vw,360px);height:auto;color:var(--ink-blue);opacity:.18;pointer-events:none}
.gift-art .solid{fill:var(--shell-beige)}
@media (min-width:900px){.gifting-full{grid-template-columns:minmax(0,1fr) minmax(0,clamp(420px,40vw,620px))}.gifting-full .gift-img{order:2}.gifting-full>.gift-copy{order:1;padding-right:0;padding-left:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));margin-left:0}.gift-art{right:calc(clamp(420px,40vw,620px) + clamp(16px,3vw,56px))}}
@media (max-width:899px){.gifting-full .gift-copy{margin:0}.gift-art{width:120px;opacity:.12;bottom:12px;right:12px}}

/* Shop by price: bold equal-width blocks */
.price-row{display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));align-items:center;gap:clamp(16px,2.4vw,32px);margin-top:40px;padding:18px 0;border-top:1px solid var(--soft-sand);border-bottom:1px solid var(--soft-sand);background:transparent}
.price-row .eyebrow{margin:0 clamp(8px,2vw,24px) 0 0;font-family:var(--display);font-size:clamp(17px,1.6vw,22px);letter-spacing:.5px;text-transform:none;color:var(--ink-blue);white-space:nowrap}
.price-row .chip{justify-content:center;min-height:46px;border:1px solid var(--champagne-brown);border-radius:0;background:transparent;color:var(--ink-blue);font-size:14px;letter-spacing:.6px;transition:background-color .25s,border-color .25s,color .25s}
.price-row .chip:hover{background:var(--shell-beige);border-color:var(--shell-beige);color:var(--ink-blue)}
@media (max-width:899px){.price-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.price-row .eyebrow{grid-column:1/-1;margin:2px 0 4px}}

/* Shop by category: label and button inside the photo, thin inner frame */
.cats-overlay .ecat-img{margin-bottom:0}
.cats-overlay .ecat-img::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 45% at 50% 46%,rgba(20,20,20,.34),rgba(20,20,20,.12) 75%);transition:background .4s;pointer-events:none}
.cats-overlay .ecat:hover .ecat-img::after{background:radial-gradient(ellipse 70% 45% at 50% 46%,rgba(20,20,20,.44),rgba(20,20,20,.18) 75%)}
.cat-frame{position:absolute;inset:11% 13%;border:1px solid rgba(255,255,255,.75);z-index:1;pointer-events:none;transition:inset .5s cubic-bezier(.2,.7,.2,1)}
.cats-overlay .ecat:hover .cat-frame{inset:9% 11%}
.cat-over{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#fff;text-align:center;padding:0 16%}
.cat-over .cat-name{color:#fff;font-size:clamp(16px,1.5vw,22px);letter-spacing:3px;text-shadow:0 1px 10px rgba(0,0,0,.25)}
.cat-btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 clamp(16px,2vw,28px);border:1px solid rgba(255,255,255,.85);font-family:var(--label);font-size:12px;letter-spacing:2.5px;text-transform:uppercase;transition:background-color .25s,color .25s}
.cats-overlay .ecat:hover .cat-btn{background:#fff;color:var(--ink-blue)}
@media (max-width:599px){.cat-over{gap:12px;padding:0 8%}.cat-over .cat-name{font-size:14px;letter-spacing:2px}.cat-btn{min-height:32px;padding:0 12px;font-size:10px;letter-spacing:1.6px}.cat-frame{inset:9% 9%}}
.cats-overlay .ecat[data-k="sets"] .ecat-img::after{background:radial-gradient(ellipse 75% 50% at 50% 46%,rgba(30,28,26,.52),rgba(30,28,26,.22) 80%)}
.cats-overlay .ecat[data-k="sets"]:hover .ecat-img::after{background:radial-gradient(ellipse 75% 50% at 50% 46%,rgba(30,28,26,.6),rgba(30,28,26,.28) 80%)}

/* ===== About us ===== */
.au-hero{display:block;position:relative;overflow:hidden;background:var(--ink-deep);min-height:clamp(560px,52vw,780px)}
.au-hero .au-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center}
.au-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(31,35,37,.55) 0,rgba(31,35,37,.3) 40%,rgba(31,35,37,0) 65%);pointer-events:none}
.au-hero .au-hero-copy{position:relative;z-index:2;min-height:inherit;justify-content:flex-end;padding-bottom:clamp(56px,7vw,104px);max-width:min(60%,820px);color:var(--pearl-white)}
.au-hero .hl,.au-hero .eyebrow{color:var(--pearl-white)}
.au-hero .hl-hero{margin-top:var(--s2);font-size:clamp(44px,6.4vw,84px)}
.au-place{margin-top:var(--s3);font-size:15px;letter-spacing:.6px;color:rgba(245,242,236,.88)}
.au-intro{text-align:center;padding-block:clamp(64px,8vw,112px) clamp(40px,5vw,64px)}
.au-quote{font-family:var(--display);font-size:clamp(24px,2.8vw,36px);line-height:1.35;max-width:30ch;margin:var(--s3) auto 0;color:var(--ink-blue);text-wrap:balance}
.au-story-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start;padding-top:clamp(24px,3vw,40px);border-top:1px solid var(--soft-sand)}
.au-story-copy .body{max-width:62ch;font-size:17px;line-height:29px}
.au-story-copy .body+.body{margin-top:var(--s3)}
.au-tl{list-style:none;margin:clamp(48px,6vw,80px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);position:relative}
.au-tl::before{content:"";position:absolute;left:0;right:0;top:5px;height:1px;background:var(--soft-sand)}
.au-tl li{position:relative;padding-top:32px}
.au-dot{position:absolute;top:0;left:0;width:11px;height:11px;border-radius:50%;background:var(--pearl-white);border:1px solid var(--champagne-brown)}
.au-tl li:last-child .au-dot{background:var(--champagne-brown)}
.au-year{font-family:var(--display);font-size:clamp(26px,2.6vw,34px);letter-spacing:1px;color:var(--champagne-brown)}
.au-tl-h{margin-top:var(--s1);font-family:var(--label);font-weight:400;font-size:15px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-blue)}
.au-tl-d{margin-top:var(--s1);font-size:15px;line-height:24px;max-width:28ch}
.au-art{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--mist-white);margin-bottom:clamp(64px,8vw,96px)}
.au-art-img{position:relative;min-height:clamp(480px,46vw,720px)}
.au-art-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.au-art-copy{display:flex;flex-direction:column;justify-content:center;padding-block:clamp(48px,6vw,88px);padding-left:clamp(32px,6vw,96px);padding-right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}
.au-art-copy .body{font-size:17px;line-height:29px;max-width:46ch}
.au-art-copy .hero-ctas{margin-top:clamp(28px,3vw,40px)}
.au-center{text-align:center}
.au-vip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);margin-top:clamp(36px,4vw,56px)}
.au-card{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(28px,3vw,40px);border:1px solid var(--soft-sand);background:transparent}
.au-ic{width:44px;height:44px;fill:none;stroke:var(--champagne-brown);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.au-card-h{margin-top:var(--s3);font-family:var(--display);font-weight:400;font-size:20px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-blue)}
.au-card-d{margin-top:var(--s2);font-size:15px;line-height:25px;flex:1}
.au-card .cta-link{margin-top:var(--s3)}
.au-vip-cta{margin-top:clamp(36px,4vw,56px)}
.au-mission{background:var(--shell-beige);padding-block:clamp(64px,8vw,112px);text-align:center}
.au-mission .au-quote{max-width:34ch}
.au-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);margin-top:clamp(48px,6vw,80px);text-align:left}
.au-val{padding-top:var(--s3);border-top:1px solid rgba(48,53,56,.28)}
.au-num{font-size:13px;letter-spacing:1.5px;color:var(--ink-blue);opacity:.7}
.au-val-h{margin-top:var(--s1);font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-blue)}
.au-val-d{margin-top:var(--s2);font-size:15px;line-height:25px}
.au-visit{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s3);padding-block:clamp(56px,7vw,96px)}
.au-visit .hero-ctas{margin-top:0}
@media (max-width:899px){
  .au-hero .au-hero-copy{max-width:none}
  .au-hero .au-hero-bg{object-position:72% center}
  .au-hero::before{background:linear-gradient(0deg,rgba(31,35,37,.65) 0,rgba(31,35,37,.25) 45%,rgba(31,35,37,0) 70%)}
  .au-story-grid{grid-template-columns:minmax(0,1fr);gap:var(--s3)}
  .au-tl{grid-template-columns:minmax(0,1fr);gap:28px;padding-left:28px}
  .au-tl::before{left:5px;right:auto;top:0;bottom:0;width:1px;height:auto}
  .au-tl li{padding-top:0}
  .au-dot{left:-28px;top:10px}
  .au-art{grid-template-columns:minmax(0,1fr)}
  .au-art-img{min-height:0;aspect-ratio:4/5}
  .au-art-copy{padding:40px var(--gutter) 56px}
  .au-vip-grid{grid-template-columns:minmax(0,1fr)}
  .au-values{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:599px){.au-values{grid-template-columns:minmax(0,1fr)}}

/* contact + booking */
.book-card{align-self:center;padding:clamp(28px,3.4vw,48px);background:var(--pearl-white);border:1px solid var(--soft-sand)}
.book-h{margin-top:var(--s2);font-family:var(--display);font-size:clamp(24px,2.4vw,30px);letter-spacing:1px;text-transform:uppercase;line-height:1.15;color:var(--ink-blue)}
.book-card .body{margin-top:var(--s2);max-width:44ch}
.book-card .hero-ctas{margin-top:clamp(24px,3vw,36px)}
.book-note{margin-top:var(--s2);opacity:.75}
.ct{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);padding-bottom:clamp(64px,8vw,104px);align-items:start}
.ct-info{padding:clamp(28px,3vw,40px);background:var(--mist-white)}
.ct-name{margin-top:var(--s2);font-family:var(--display);font-size:22px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-blue)}
.ct-addr{margin-top:var(--s1);font-style:normal;font-size:16px;line-height:26px}
.ct-info .cta-link{margin-top:var(--s1)}
.ct-gap{margin-top:clamp(28px,3vw,36px)}
.ct-tel{display:inline-block;margin-top:var(--s1);font-family:var(--display);font-size:24px;letter-spacing:1px;color:var(--ink-blue);text-decoration:none}
.ct-tel:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.ct-info .body{margin-top:var(--s1)}
.ct-book{margin-top:var(--s2)}
.ct-form .full{grid-column:1/-1}
.ct-opt{opacity:.82;font-weight:400;margin-left:4px}
@media (max-width:899px){.ct{grid-template-columns:minmax(0,1fr)}}

/* custom: bridal + services */
.bf .sec{padding-block:clamp(64px,8vw,104px)}
.bf-head{max-width:760px}
.bf-head .hl{margin-top:var(--s1)}
.bf-head .body{margin-top:var(--s3);font-size:17px;line-height:29px;max-width:64ch}
.bf-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);margin-top:clamp(36px,4vw,56px)}
.bf-col{padding:clamp(28px,3vw,40px);background:var(--pearl-white)}
.bf-tag{font-family:var(--display);font-size:22px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-blue)}
.bf-lede{margin-top:var(--s2);font-size:16px;line-height:26px}
.bf-col .bullets{margin-top:var(--s2)}
.bf-col .bullets li{font-size:15px;line-height:24px;margin-top:10px}
.bf-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s3);margin-top:clamp(32px,4vw,48px)}
.bf-close{font-family:var(--display);font-size:clamp(20px,2vw,24px);letter-spacing:.5px;color:var(--ink-blue)}
.bf-foot .hero-ctas{margin-top:0}
.svc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(32px,5vw,80px)}
.svc-item{padding-block:clamp(24px,3vw,36px);border-top:1px solid var(--soft-sand)}
.svc-n{font-size:13px;letter-spacing:1.5px;opacity:.7}
.svc-h{margin-top:var(--s1);font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-blue)}
.svc-d{margin-top:var(--s2);font-size:15px;line-height:25px;max-width:60ch}
.svc-d a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media (max-width:899px){.bf-cols,.svc-grid{grid-template-columns:minmax(0,1fr)}}
.foot-credit{margin-top:4px;opacity:.86}

.tips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.4vw,32px)}
.tip-c{padding-top:var(--s3);border-top:1px solid var(--soft-sand)}
.tip-d{margin-top:var(--s2);font-size:16px;line-height:26px}
.tip-d a,.inline-a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media (max-width:899px){.tips{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.tips{grid-template-columns:minmax(0,1fr)}}

.bf-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.bf-img{position:sticky;top:calc(var(--stick,130px) + 24px);margin:0;aspect-ratio:1110/1417;overflow:hidden}
.bf-img img{width:100%;height:100%;object-fit:cover;display:block}
.bf-grid .bf-cols{grid-template-columns:minmax(0,1fr)}
.bf-grid .bf-foot{flex-direction:column;align-items:flex-start}
@media (max-width:899px){.bf-grid{grid-template-columns:minmax(0,1fr)}.bf-img{position:static;aspect-ratio:4/5}}

.ct-info .ct-name{font-size:20px;line-height:1.2}
.ct-info .ct-addr,.ct-info .ct-tel,.ct-info .body{margin-top:var(--s1);font-family:var(--body);font-size:16px;line-height:26px;letter-spacing:normal;max-width:none}
.ct-info .ct-tel{display:inline-block;color:var(--ink-blue);text-decoration:none}
.ct-info .ct-tel:hover{text-decoration:underline;text-underline-offset:4px}
.ct-info .cta-link{margin-top:var(--s2)}
.ct-info .ct-gap{margin-top:clamp(28px,3vw,36px)}
.ct-info .ct-book{margin-top:var(--s2)}

/* contact panel: one spacing system */
.ct .ct-info{padding:clamp(32px,3.2vw,40px) clamp(24px,2.6vw,36px)}
.ct-col{max-width:330px}
.ct-info .ct-name{white-space:nowrap}
@media (max-width:599px){.ct-info .ct-name{white-space:normal;font-size:18px}}
.ct-sec+.ct-sec{margin-top:36px}
.ct-info .ct-label{margin:0;line-height:16px}
.ct-info .ct-name{margin-top:16px;font-size:20px;line-height:1.2}
.ct-info .ct-addr{margin-top:12px;font-style:normal;font-family:var(--body);font-size:16px;line-height:1.55}
.ct-info .ct-dir{margin-top:20px}
.ct-info .ct-tel,.ct-info .ct-copy{display:block;margin-top:12px;font-family:var(--body);font-size:16px;line-height:1.45;letter-spacing:normal;color:var(--ink-blue);text-decoration:none}
.ct-info .ct-tel{width:max-content}
.ct-info .ct-tel:hover{text-decoration:underline;text-underline-offset:4px}
.ct-info .ct-book{display:flex;justify-content:center;width:100%;margin-top:16px}
.faq ul{margin:10px 0 0;padding-left:18px}.faq ul+p,.faq p+p{margin-top:10px}.faq li{margin-top:6px}.faq a{color:inherit;text-decoration:underline;text-underline-offset:3px}

.faq-page{padding-bottom:clamp(64px,8vw,104px)}
.faq-page>*{max-width:900px}
.faq-group+.faq-group{margin-top:clamp(40px,5vw,56px)}
.faq-gh{font-weight:400;margin-top:0;font-family:var(--display);font-size:20px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-blue);margin-bottom:12px}
.faq-more{margin-top:clamp(48px,6vw,72px);padding:clamp(28px,3vw,40px);background:var(--mist-white)}
.faq-more .body{margin-top:var(--s1)}
.faq-more .body a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.faq-more .hero-ctas{margin-top:var(--s3)}
.foot-addr{font-size:14px;line-height:22px;white-space:nowrap;margin-bottom:6px}

.blog-sec{padding-bottom:clamp(56px,7vw,88px)}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,40px) clamp(16px,2.4vw,32px)}
.post{display:flex;flex-direction:column;align-items:flex-start;padding-top:var(--s3);border-top:1px solid var(--soft-sand)}
.post-date,.ev-time{font-size:13px;letter-spacing:.4px;opacity:.75}
.post-h{margin-top:var(--s1);font-family:var(--display);font-weight:400;font-size:20px;line-height:1.3;letter-spacing:.6px;color:var(--ink-blue)}
.post-h a{color:inherit;text-decoration:none}
.post-h a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.post-x{margin-top:var(--s2);font-size:15px;line-height:25px;flex:1}
.post .cta-link{margin-top:var(--s2)}
.ev-list{list-style:none;margin:0;padding:0}
.ev{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:clamp(16px,3vw,48px);align-items:start;padding-block:var(--s3);border-top:1px solid var(--soft-sand)}
.ev:last-child{border-bottom:1px solid var(--soft-sand)}
.ev-date{font-family:var(--display);font-size:20px;letter-spacing:.6px;color:var(--ink-blue)}
.ev-time{margin-top:4px}
.ev-body .post-h{margin-top:0}
.ev-body .post-x{margin-top:var(--s1);max-width:64ch}
.ev-link{margin-top:2px}
@media (max-width:899px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ev{grid-template-columns:minmax(0,1fr)}.ev-link{justify-self:start}}
@media (max-width:599px){.blog-grid{grid-template-columns:minmax(0,1fr)}}

.ev{grid-template-columns:170px minmax(0,1fr) auto}
.ev-date{font-family:var(--body);font-size:14px;letter-spacing:.2px;color:var(--ink-blue);opacity:.8;padding-top:3px}
.ev .post-h{font-size:18px}
.blog-more{margin-top:clamp(24px,3vw,40px)}
.blog-more>summary,.ev-year>summary{list-style:none;cursor:pointer}
.blog-more>summary::-webkit-details-marker,.ev-year>summary::-webkit-details-marker{display:none}
.blog-more>summary{display:inline-flex;font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;color:var(--ink-blue);margin-bottom:clamp(24px,3vw,40px)}
.blog-more .when-open,.blog-more[open] .when-closed{display:none}
.blog-more[open] .when-open{display:inline}
.ev-year{border-top:1px solid var(--ink-blue)}
.ev-year:last-child{border-bottom:1px solid var(--ink-blue)}
.ev-year>summary{display:flex;align-items:center;gap:16px;padding-block:18px}
.ev-y{font-family:var(--display);font-size:24px;letter-spacing:1px;color:var(--ink-blue)}
.ev-n{font-size:13px;opacity:.82;flex:1}
.ev-year>summary svg{width:14px;height:14px;transition:transform .2s}
.ev-year[open]>summary svg{transform:rotate(180deg)}
.ev-year .ev-list{padding-bottom:var(--s3)}
.ev-year .ev:last-child{border-bottom:0}
@media (max-width:899px){.ev{grid-template-columns:minmax(0,1fr)}}

/* VIP sign-up pop-up */
.vip{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:16px}
.vip[hidden]{display:none}
.vip-scrim{position:absolute;inset:0;background:rgba(31,35,37,.55);animation:vipFade .3s ease}
.vip-card{position:relative;width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--pearl-white);box-shadow:0 24px 60px rgba(31,35,37,.25);animation:vipRise .35s ease}
.vip-x{position:absolute;top:14px;right:14px;z-index:1;width:40px;height:40px;display:grid;place-items:center;border:0;background:none;color:var(--pearl-white);cursor:pointer}
.vip-x svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round}
.vip-top{background:var(--ink-blue);color:var(--pearl-white);text-align:center;padding:44px 32px 36px}
.vip-eyebrow{font-family:var(--label);font-size:12px;letter-spacing:2.5px;text-transform:uppercase;opacity:.8}
.vip-h{margin-top:14px;font-family:var(--display);font-weight:400;font-size:clamp(30px,5vw,40px);line-height:1.05;letter-spacing:2px;text-transform:uppercase;color:var(--pearl-white)}
.vip-sub{margin-top:14px;font-size:15px;letter-spacing:.4px;color:rgba(245,242,236,.88)}
.vip-body{padding:32px clamp(24px,5vw,48px) 28px;text-align:center}
.vip-copy{font-size:15px;line-height:24px;max-width:40ch;margin:0 auto}
.vip-input{display:block;width:100%;margin-top:24px;height:52px;padding:0 16px;border:1px solid var(--ink-blue);border-radius:0;background:#fff;font:inherit;font-size:15px;text-align:center;color:var(--ink-blue)}
.vip-input:focus{outline:2px solid var(--ink-blue);outline-offset:2px}
.vip-btn{display:block;width:100%;margin-top:10px;height:54px;border:0;border-radius:0;background:var(--ink-blue);color:var(--pearl-white);font-family:var(--label);font-size:14px;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;transition:background-color .2s}
.vip-btn:hover{background:var(--ink-deep)}
.vip-msg{min-height:20px;margin-top:10px;font-size:13px}
.vip-legal{margin-top:4px;font-size:12px;line-height:18px;opacity:.75}
.vip-no{margin-top:14px;border:0;background:none;font:inherit;font-size:13px;letter-spacing:.3px;text-decoration:underline;text-underline-offset:3px;color:var(--ink-blue);cursor:pointer;opacity:.8}
@keyframes vipFade{from{opacity:0}}
@keyframes vipRise{from{opacity:0;transform:translateY(12px)}}
@media (prefers-reduced-motion:reduce){.vip-scrim,.vip-card{animation:none}}

.ear-band{background:#EEDDD1;margin:8px 0 clamp(24px,3vw,40px)}
.ear-band .ear-in{padding-block:clamp(36px,4.5vw,64px)}
.ear-copy .hl{font-size:clamp(34px,4.4vw,52px)}
.ear-band[hidden]{display:none}
.ear-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,96px);align-items:center;padding-block:clamp(48px,6vw,80px)}
.ear-img{margin:0;justify-self:end;width:100%;max-width:400px;aspect-ratio:1045/1449;overflow:hidden}
.ear-img img{width:100%;height:100%;object-fit:cover;display:block}
.ear-copy .hl{margin-top:var(--s1)}
.ear-copy .body{margin-top:var(--s3);font-size:17px;line-height:29px;max-width:42ch}
.ear-copy .hero-ctas{margin-top:clamp(28px,3vw,40px)}
@media (max-width:899px){.ear-in{grid-template-columns:minmax(0,1fr)}.ear-img{justify-self:center;max-width:420px}}

.ear-img{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 88%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 8%,#000 92%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 88%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 8%,#000 92%,transparent 100%);mask-composite:intersect}
.feature-art img{object-position:var(--fpos,center)}

/* gifts hero */
.gh{display:grid;grid-template-columns:minmax(0,min(44vw,640px)) minmax(0,1fr);background:#DFA97C;background:linear-gradient(180deg,#E3B48B,#D9A273);margin-top:8px}
.gh-img{position:relative;margin:0;aspect-ratio:1086/1448}
.gh-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.gh-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:clamp(48px,6vw,96px);padding-left:clamp(32px,6vw,96px);padding-right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}
.gh-copy .hl,.gh-copy .eyebrow{color:var(--ink-blue)}
.gh-copy .hl-hero{margin-top:var(--s1)}
.gh-copy .body{margin-top:var(--s3);font-size:17px;line-height:29px;max-width:42ch;color:var(--ink-blue)}
.gh-copy .hero-ctas{margin-top:clamp(28px,3vw,40px)}
.gh-budget{list-style:none;margin:clamp(24px,3vw,36px) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px 28px}
@media (max-width:899px){.gh{grid-template-columns:minmax(0,1fr)}.gh-img{min-height:0;aspect-ratio:1086/1448}.gh-copy{padding:40px var(--gutter) 56px}}
#gift-finder{scroll-margin-top:var(--stick,130px)}

.has-hero #view > .gh:first-child .gh-copy{padding-top:calc(var(--hdr-over) + clamp(32px,4vw,56px))}
.has-hero #view > .gh:first-child{min-height:0}
@media (max-width:899px){.has-hero #view > .gh:first-child .gh-copy{padding-top:40px}}
#shop-gifts-list{scroll-margin-top:122px}
.gh+.wrap .toolbar{padding-top:14px}

.press-outlet{font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-blue)}
.press-grid .post-date{margin-top:4px}
.press-grid .post-h{flex:1}
.press-grid .cta-link{margin-top:var(--s3)}
.press-links{display:flex;gap:20px;flex-wrap:wrap}
.press-links .cta-link{margin-top:2px}
.press-contact{padding-bottom:clamp(64px,8vw,104px)}
.press-contact .body{margin-top:var(--s1)}
.press-contact a{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* services hero */
.svc-hero{display:block;position:relative;overflow:hidden;background:#C9B8A4;min-height:clamp(440px,48vw,680px)}
.svc-hero .svc-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.svc-hero::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse at center,rgba(31,35,37,.42) 0,rgba(31,35,37,.18) 45%,rgba(31,35,37,0) 75%);pointer-events:none}
.svc-hero-copy{position:absolute;inset:0;z-index:2;display:grid;place-items:center;text-align:center;padding:var(--hdr-over,120px) var(--gutter) 0}
.svc-hero .hl-hero{color:#fff;font-size:clamp(40px,6.4vw,84px);letter-spacing:3px;text-shadow:0 2px 24px rgba(31,35,37,.35)}
.has-hero #view > .svc-hero:first-child{min-height:clamp(480px,52vw,720px)}
.svc-sub{padding-top:clamp(28px,3vw,40px)}
@media (max-width:899px){.svc-hero,.has-hero #view > .svc-hero:first-child{min-height:0;aspect-ratio:1672/941}.svc-hero-copy{padding-top:calc(var(--hdr-over,100px)*.6)}}
@media (max-width:599px){.svc-hero,.has-hero #view > .svc-hero:first-child{aspect-ratio:4/3}}

.svc-hero{min-height:clamp(380px,40vw,560px)}
.svc-hero-copy{padding:0 var(--gutter)}
.svc-hero .hl-hero{font-size:clamp(28px,3.4vw,44px);letter-spacing:4px}
@media (max-width:899px){.svc-hero{min-height:0}.svc-hero-copy{padding-top:0}}

/* blog landing */
.bl-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,40px);padding-block:clamp(48px,6vw,80px) clamp(64px,8vw,104px)}
.bl-tile{display:flex;flex-direction:column;align-items:flex-start;text-decoration:none;color:inherit}
.bl-tile-img{position:relative;display:block;width:100%;aspect-ratio:5/3;overflow:hidden;background:var(--shell-beige)}
.bl-tile-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.bl-tile:hover .bl-tile-img img{transform:scale(1.03)}
.bl-tile-h{margin-top:var(--s3);font-family:var(--display);font-size:clamp(22px,2.2vw,28px);letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-blue)}
.bl-tile-meta{margin-top:6px;font-size:13px;letter-spacing:.4px;opacity:.82}
.bl-tile-x{margin-top:var(--s2);font-size:15px;line-height:25px;max-width:52ch}
.bl-tile .cta-link{margin-top:var(--s2)}
.bl-hero{min-height:clamp(300px,30vw,440px)}
.blog-back{display:flex;gap:28px;margin-top:clamp(32px,4vw,48px)}
@media (max-width:899px){.bl-tiles{grid-template-columns:minmax(0,1fr)}.bl-hero{min-height:0;aspect-ratio:16/9}}

/* service rows */
.svc-rows{display:grid;gap:16px;padding-bottom:clamp(64px,8vw,104px)}
.svc-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--svc-panel,var(--ink-blue));scroll-margin-top:calc(var(--stick,130px) + 24px)}
.svc-row-img{margin:0;position:relative;aspect-ratio:4/3;overflow:hidden}
.svc-row-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.svc-row.rev .svc-row-img{order:2}
.svc-row-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(32px,5vw,72px);color:var(--pearl-white)}
.svc-row-k{font-family:var(--label);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:rgba(245,242,236,.75)}
.svc-row-h{margin-top:var(--s1);font-family:var(--display);font-weight:400;font-size:clamp(24px,2.6vw,34px);letter-spacing:1px;line-height:1.15;color:var(--pearl-white)}
.svc-row-body{margin-top:var(--s2);max-width:46ch}
.svc-row-body p{font-size:15px;line-height:25px;color:rgba(245,242,236,.9)}
.svc-row-body p+p{margin-top:10px}
.svc-row-body b{font-weight:600;color:var(--pearl-white)}
.svc-row-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(24px,3vw,32px)}
.svc-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border:1px solid rgba(245,242,236,.8);font-family:var(--label);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--pearl-white);text-decoration:none;transition:background-color .2s,color .2s}
.svc-btn:hover{background:var(--pearl-white);color:var(--ink-blue)}
@media (max-width:899px){.svc-row{grid-template-columns:minmax(0,1fr)}.svc-row.rev .svc-row-img{order:0}}

.svc-hero:not(.bl-hero),.has-hero #view > .svc-hero:not(.bl-hero):first-child{min-height:0;aspect-ratio:1672/680}
.svc-hero:not(.bl-hero) .svc-hero-copy{display:block;padding:0}
.svc-hero:not(.bl-hero) .hl-hero{position:absolute;left:57.4%;top:47.8%;transform:translate(-50%,-50%);margin:0;white-space:nowrap}
.svc-hero:not(.bl-hero)::before{background:radial-gradient(ellipse at 57.4% 47.8%,rgba(31,35,37,.4) 0,rgba(31,35,37,.15) 30%,rgba(31,35,37,0) 55%)}
@media (max-width:599px){.svc-hero:not(.bl-hero) .hl-hero{font-size:22px;letter-spacing:3px}}
/* service rows: image fills full row height */
.svc-row-img{aspect-ratio:auto;min-height:clamp(340px,32vw,480px)}
@media (max-width:899px){.svc-row-img{min-height:0;aspect-ratio:4/3}}

.svc-row{--svc-panel:var(--slate-blue)}
.svc-row-k{color:rgba(255,255,255,.85)}
.svc-row-body p{color:#fff;font-size:16px;line-height:26px}
.svc-btn{border-color:#fff}
.svc-btn:hover{color:var(--slate-blue)}

.svc-row{--svc-panel:var(--misty-blue)}
.svc-row-panel{color:var(--ink-blue)}
.svc-row-k{color:var(--ink-blue);opacity:.75}
.svc-row-h{color:var(--ink-blue)}
.svc-row-body p{color:var(--ink-blue)}
.svc-row-body b{color:var(--ink-blue)}
.svc-btn{border-color:var(--ink-blue);color:var(--ink-blue)}
.svc-btn:hover{background:var(--ink-blue);color:var(--pearl-white)}

/* PDP layout, reference style */
@media (min-width:900px){
 .pdp{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
 .gallery{display:grid;grid-template-columns:80px minmax(0,1fr);gap:18px;align-items:start}
 .gallery .thumbs{order:-1;display:flex;flex-direction:column;gap:12px;margin-top:0}
 .gallery .thumb{width:80px}
 .gallery .thumb .tl{display:none}
 .gallery .thumb[aria-current="true"]{outline:1px solid var(--ink-blue);outline-offset:2px}
}
.pdp-title{text-transform:none;letter-spacing:.4px;font-size:clamp(26px,2.4vw,32px);line-height:1.2}
.ship-pill{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;margin-top:16px;padding:8px 16px;border:1px solid var(--ink-blue);border-radius:999px;font-size:13px;line-height:18px}
.ship-pill svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}
.opt-sec{border-top:1px solid var(--cloud-grey);margin-top:0}
.opt-sec:first-of-type{margin-top:28px}
.opt-sec>summary{list-style:none;display:flex;align-items:baseline;gap:10px;padding-block:18px;cursor:pointer}
.opt-sec>summary::-webkit-details-marker{display:none}
.opt-sec .opt-label{font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-blue)}
.opt-sec .opt-cur{font-weight:400;font-size:14px;opacity:.75;flex:1}
.opt-sec>summary svg{width:14px;height:14px;transition:transform .2s}
.opt-sec[open]>summary svg{transform:rotate(180deg)}
.opt-sec .opts{padding-bottom:20px}
.opt-guide{display:block;margin:-6px 0 12px}
.len-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.opt.len-card{display:flex;flex-direction:column;align-items:center;gap:6px;height:auto;min-height:0;padding:10px 10px 12px;border-radius:0;border:1px solid var(--cloud-grey);background:#fff}
.opt.len-card[aria-checked="true"]{border-color:var(--ink-blue);box-shadow:inset 0 0 0 1px var(--ink-blue);background:#fff}
.len-art{width:100%;height:auto;display:block}
.la-bg{fill:#F3EFEA}.la-skin{fill:#E6C9B0}.la-top{fill:#fff;stroke:#E4DED6;stroke-width:.6}.la-pearls circle{fill:#fff;stroke:#BDB2A5;stroke-width:.5}
.len-card .opt-v{font-size:13px}
.len-card .delta{margin:0;font-size:12px}
.buy-total{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:8px;padding-top:24px;border-top:1px solid var(--cloud-grey)}
.sub-line{font-size:16px}
.sub-line b{font-size:22px;font-weight:600;margin-left:4px;font-variant-numeric:tabular-nums}
.buy-total .buy-actions{margin-top:0}
.buy-total #add-btn{min-width:200px}
.wish-btn.btn{align-self:flex-end;margin-top:14px;border:0;background:none;min-height:0;padding:4px 0;width:auto;text-decoration:underline;text-underline-offset:5px}
.wish-btn.btn:hover{background:none}
@media (max-width:599px){.foot-addr{white-space:normal}}

.guide-pn{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0 clamp(56px,7vw,80px);border-top:1px solid var(--cloud-grey)}
.jump .chip[aria-current="page"]{background:var(--ink-blue);color:var(--pearl-white);border-color:var(--ink-blue)}

.svc-hero:not(.bl-hero),.has-hero #view > .svc-hero:not(.bl-hero):first-child{aspect-ratio:1424/600}
.svc-hero:not(.bl-hero) .hl-hero{left:50%;top:50%}
.svc-hero:not(.bl-hero)::before{background:radial-gradient(ellipse at 50% 50%,rgba(31,35,37,.4) 0,rgba(31,35,37,.15) 30%,rgba(31,35,37,0) 55%)}

.gd-hero,.has-hero #view > .gd-hero:first-child{min-height:0;aspect-ratio:1440/440}
.gd-hero .svc-hero-copy{padding:0}
.gd-rows .svc-row-img{min-height:clamp(300px,28vw,420px)}
.gd-img.contain img{object-fit:contain;padding:clamp(16px,3vw,40px)}
@media (max-width:899px){.gd-hero{aspect-ratio:16/9}.gd-rows .svc-row-img{min-height:0;aspect-ratio:4/3}}
.svc-hero.gd-hero,.has-hero #view > .svc-hero.gd-hero:first-child{aspect-ratio:1440/420}
@media (max-width:899px){.svc-hero.gd-hero{aspect-ratio:16/9}}

/* campaign band */
.camp{position:relative;overflow:hidden;background:#D9D6D2;aspect-ratio:1402/1122;max-height:860px;width:100%;margin-bottom:clamp(64px,8vw,96px)}
.camp-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.camp-copy{position:absolute;top:clamp(32px,6vw,96px);right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));max-width:min(36%,420px);text-align:right;display:flex;flex-direction:column;align-items:flex-end}
.camp-copy .hl{margin-top:var(--s1)}
.camp-copy .body{margin-top:var(--s2);max-width:34ch}
.camp-copy .hero-ctas{margin-top:var(--s3);justify-content:flex-end}
@media (max-width:899px){.camp{aspect-ratio:auto;max-height:none;background:var(--pearl-white)}.camp-bg{position:static;display:block;aspect-ratio:1402/1122;height:auto}.camp-copy{position:static;max-width:none;text-align:left;align-items:flex-start;padding:28px var(--gutter) 8px}.camp-copy .hero-ctas{justify-content:flex-start}}
@media (min-width:900px){.camp-copy{right:auto;left:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));top:clamp(48px,7vw,120px);max-width:min(28%,360px);text-align:left;align-items:flex-start}.camp-copy .hero-ctas{justify-content:flex-start;flex-direction:column;align-items:flex-start;gap:14px}.camp-copy .hl{font-size:clamp(28px,3vw,40px)}}

/* shop by category: plain editorial */
.cats-plain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,30px)}
.cp{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--ink-blue)}
.cp-img{position:relative;width:100%;aspect-ratio:453/805;overflow:hidden;background:var(--mist-white)}
.cp-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.03) brightness(.98);transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .4s}
.cp:hover .cp-img img{transform:scale(1.03);filter:saturate(.95) contrast(1.03)}
.cp-name{margin-top:clamp(18px,2vw,30px);font-family:var(--label);font-weight:400;font-size:14px;letter-spacing:2.5px;text-transform:uppercase;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.cp:hover .cp-name{text-decoration-thickness:2px}
@media (max-width:899px){.cats-plain{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-img{aspect-ratio:3/4}}

/* gallery */
.hero.gal-hero{position:relative;overflow:hidden;background:#1F2325;display:flex;align-items:flex-end;min-height:100vh;min-height:100svh}
.has-hero #view > .hero.gal-hero:first-child{min-height:100vh;min-height:100svh}
.gal-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;opacity:.9}
.gal-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(20,20,20,.6) 0,rgba(20,20,20,.2) 30%,rgba(20,20,20,0) 50%),linear-gradient(90deg,rgba(20,20,20,.55) 0,rgba(20,20,20,.15) 55%,rgba(20,20,20,0) 80%)}
.gal-hero-copy{position:relative;z-index:1;color:#fff;padding:0 0 clamp(48px,6vw,88px) max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));max-width:620px}
.gal-hero-copy .eyebrow,.gal-hero-copy .hl{color:#fff}.gal-hero-copy .hl-hero{margin-top:var(--s1)}
.gal-hero-copy .body{margin-top:var(--s2);color:rgba(255,255,255,.9);max-width:40ch}
.gal{padding-block:clamp(56px,7vw,96px)}
.gal-ch+.gal-ch{margin-top:clamp(72px,9vw,128px)}
.gal-head{display:flex;align-items:flex-end;gap:clamp(16px,2vw,28px);margin-bottom:clamp(24px,3vw,40px)}
.gal-num{font-family:var(--display);font-size:clamp(44px,5vw,72px);line-height:.9;color:var(--champagne-brown);opacity:.7}
.gal-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:clamp(180px,17vw,250px);gap:clamp(12px,1.6vw,22px)}
.gal-item{margin:0;display:flex;flex-direction:column;min-height:0}
.w2{grid-column:span 2}.w3{grid-column:span 3}.w4{grid-column:span 4}.h1{grid-row:span 1}.h2{grid-row:span 2}
.gal-open{flex:1;min-height:0;position:relative;display:block;width:100%;padding:0;border:0;background:var(--mist-white);cursor:zoom-in;overflow:hidden}
.gal-open img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.gal-open:hover img{transform:scale(1.03)}
.gal-item figcaption{padding-top:10px}
.gal-item figcaption .cta-link{min-height:0;font-size:12px}
.gal-note{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(28px,3.4vw,48px);background:var(--mist-white)}
.gal-note-h{margin-top:var(--s1);font-family:var(--display);font-size:clamp(22px,2.2vw,30px);letter-spacing:1px;text-transform:uppercase;line-height:1.15;color:var(--ink-blue)}
.gal-note .body{margin-top:var(--s2);max-width:40ch}.gal-note .cta-link{margin-top:var(--s3)}
.gal-lb{position:fixed;inset:0;z-index:210;background:rgba(18,20,21,.94);display:flex;align-items:center;justify-content:center;padding:56px 72px}
.gal-lb[hidden]{display:none}
.gal-lb img{max-width:100%;max-height:100%;object-fit:contain}
.gal-x{position:absolute;top:12px;right:18px;border:0;background:none;color:#fff;font-size:40px;line-height:1;cursor:pointer}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);border:0;background:none;color:#fff;font-size:56px;line-height:1;padding:12px;cursor:pointer;opacity:.8}
.gal-nav:hover{opacity:1}.gal-nav.prev{left:8px}.gal-nav.next{right:8px}
.gal-lb-cap{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:rgba(255,255,255,.75);font-size:13px;letter-spacing:1px}
@media (max-width:899px){.gal-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(160px,44vw,260px)}.w2,.w3{grid-column:span 1}.w4{grid-column:span 2}.gal-note{grid-column:span 2}.gal-lb{padding:48px 12px}}
.w6{grid-column:span 6}@media (max-width:899px){.w6{grid-column:span 2}}

/* pearl education: editorial */
.ed{--ed-h:#332F2C;--ed-b:#57524D;--ed-m:#6F6861;--ed-d:#DED8CC;padding-bottom:clamp(64px,8vw,112px)}
.ed-head{padding:clamp(20px,3vw,36px) 0 clamp(32px,4vw,48px);border-bottom:1px solid var(--ed-d)}
.ed-h1{font-family:var(--display);font-weight:400;font-size:clamp(36px,4vw,54px);letter-spacing:2px;text-transform:uppercase;line-height:1.05;color:var(--ed-h)}
.ed-sub{margin-top:12px;font-size:17px;line-height:1.6;color:var(--ed-b)}
.ed-meta{font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ed-m)}
.ed-x{margin-top:12px;font-size:16.5px;line-height:1.6;color:var(--ed-b);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:46ch}
.ed-more{display:inline-block;margin-top:18px;font-family:var(--label);font-size:12.5px;letter-spacing:2px;text-transform:uppercase;color:var(--ed-h);text-decoration:none;border-bottom:1px solid var(--ed-h);padding-bottom:3px}
.ed-more:hover{border-bottom-width:2px}
.ed-feat{display:grid;grid-template-columns:minmax(0,55fr) minmax(0,45fr);gap:clamp(28px,4vw,64px);align-items:center;margin-top:clamp(36px,4vw,56px);padding-bottom:clamp(48px,6vw,72px);border-bottom:1px solid var(--ed-d)}
.ed-feat-img,.ed-img{display:block;position:relative;overflow:hidden;background:var(--mist-white)}
.ed-feat-img{aspect-ratio:3/2;width:100%}
.ed-img{aspect-ratio:3/2;margin-bottom:20px;width:100%}
.ed-feat-img img,.ed-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.ed-feat:hover .ed-feat-img img,.ed-card:hover .ed-img img{transform:scale(1.03)}
.ed-feat-t{margin-top:14px;font-family:var(--display);font-weight:400;font-size:clamp(28px,2.8vw,38px);line-height:1.2;letter-spacing:.5px;color:var(--ed-h)}
.ed-feat-t a,.ed-t a{color:inherit;text-decoration:none}
.ed-feat-t a:hover,.ed-t a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.ed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(40px,5vw,64px) clamp(24px,3vw,40px);margin-top:clamp(48px,6vw,72px)}
.ed-card{display:flex;flex-direction:column;align-items:flex-start}
.ed-t{margin-top:10px;font-family:var(--display);font-weight:400;font-size:clamp(22px,1.9vw,27px);line-height:1.25;letter-spacing:.3px;color:var(--ed-h);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ed-load{display:flex;justify-content:center;margin-top:clamp(48px,6vw,72px)}
.ed-load-btn{min-height:48px;padding:0 36px;border:1px solid var(--ed-h);background:transparent;color:var(--ed-h);font-family:var(--label);font-size:12.5px;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;transition:background-color .2s,color .2s}
.ed-load-btn:hover{background:var(--ed-h);color:var(--pearl-white)}
.ed-src{margin-top:32px;text-align:center;font-size:13px;color:var(--ed-m)}
.ed-src a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media (max-width:899px){.ed-feat{grid-template-columns:minmax(0,1fr)}.ed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.ed-grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- transparent header over hero ---------- */
/* Transparent nav over the hero: no background and white type while resting on the photo;
   on hover/focus (or with a menu/search open) it fills pearl-white with ink type. Turns solid once the hero scrolls away.
   A soft dark fade at the top of the hero keeps the white type readable on light parts of the picture. */
:root{--hdr-over:0px}
.site{transition:background-color .3s,border-color .3s,color .3s}
.site :is(a,button,svg,.nav-item,.icon-btn,.wordmark,.logo,.util){transition:color .3s}
.blend .site:not(:hover):not(:focus-within):not(:has(.mega:not([hidden]),.search-panel:not([hidden]))){background:transparent;border-bottom-color:transparent;color:#fff}
.blend .site:not(:hover):not(:focus-within):not(:has(.mega:not([hidden]),.search-panel:not([hidden]))) :is(a,button,.nav-item,.icon-btn,.wordmark,.logo,.util){color:#fff;text-shadow:0 1px 8px rgba(31,35,37,.25)}
.blend .site:not(:hover):not(:focus-within):not(:has(.mega:not([hidden]),.search-panel:not([hidden]))) :is(.count,.n){background:#fff;color:var(--ink-blue);text-shadow:none}
.blend .site:not(:hover):not(:focus-within):not(:has(.mega:not([hidden]),.search-panel:not([hidden]))) .nav{border-top-color:transparent}
.has-hero #view > .hero:first-child{margin-top:calc(-1 * var(--hdr-over));position:relative}
/* scrim holds behind the white header so nav and icons stay at 4.5:1 over sea green, then fades into the hero */
.has-hero #view > .hero:first-child::after{content:"";position:absolute;left:0;right:0;top:0;height:calc(var(--hdr-over) + 160px);z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(31,35,37,.6) 0,rgba(31,35,37,.58) calc(var(--hdr-over) - 4px),rgba(31,35,37,0) 100%)}
@media (min-width:900px){.has-hero #view > .hero:first-child{min-height:calc(1.2 * (var(--hdr-over) + 530px))}}
@media (max-width:899px){.has-hero #view > .hero:first-child .hero-art{aspect-ratio:2/3;max-height:none}}
.has-hero #view > .hero:first-child .hero-copy{padding-top:calc(var(--hdr-over) + clamp(32px,5vw,72px))}
@media (prefers-reduced-motion:reduce){.site,.site *{transition:none}}

/* pearl guide: blended nav */
.hero.svc-hero.gd-hero{display:block;background:#C9B8A4}
.has-hero #view > .hero.svc-hero.gd-hero:first-child{min-height:0;aspect-ratio:auto;height:calc(var(--hdr-over) + clamp(300px,30vw,440px))}
.has-hero #view > .hero.svc-hero.gd-hero:first-child .svc-hero-copy{padding:var(--hdr-over) var(--gutter) 0;display:grid;place-items:center}

/* home categories: 3 across */
.cats-plain{grid-template-columns:repeat(3,minmax(0,1fr))}
.cats-plain .cp-img{aspect-ratio:3/4}
@media (max-width:599px){.cats-plain{gap:10px}.cp-name{font-size:11px;letter-spacing:1.5px;margin-top:12px}}

/* home rails: cards 1.5x larger */
.rail{grid-auto-columns:calc((100% - 48px) * 3 / 8)}
.rail-arrow{top:calc((100cqw - 48px) * 3 / 16 - 32px)}
@media (max-width:1099px){.rail{grid-auto-columns:calc((100% - 32px) / 2)}.rail-arrow{top:calc((100cqw - 32px) / 4 - 32px)}}
@media (max-width:699px){.rail{grid-auto-columns:72%}.rail-arrow{top:calc(36cqw - 32px)}}

.rail-bar{display:none!important}

/* custom: full-bleed campaign hero */
.hero.cu-hero{display:block;position:relative;overflow:hidden;background:#D8D9DA;min-height:100vh;min-height:100svh}
.has-hero #view > .hero.cu-hero:first-child{min-height:100vh;min-height:100svh}
.cu-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 18%}
.cu-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(236,236,236,.55) 0,rgba(236,236,236,.25) 30%,rgba(236,236,236,0) 45%)}
.cu-hero-copy{position:absolute;z-index:2;left:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));top:calc(var(--hdr-over) + clamp(48px,8vh,110px));max-width:min(30vw,440px);color:var(--ink-blue)}
.cu-hero-copy .kicker{margin-top:var(--s2)}
.cu-hero-copy .lede{margin-top:var(--s3);max-width:34ch}
.cu-hero-copy .hero-ctas{margin-top:clamp(24px,3vw,36px)}
@media (max-width:899px){
  .hero.cu-hero,.has-hero #view > .hero.cu-hero:first-child{min-height:0;display:flex;flex-direction:column}
  .cu-hero-bg{position:relative;inset:auto;height:auto;aspect-ratio:1402/1122;object-position:center}
  .cu-hero::before{content:none}
  .cu-hero-copy{position:relative;left:auto;top:auto;max-width:none;padding:32px var(--gutter) 44px;background:var(--pearl-white,#F7F4EA)}
}

#hero-h .nw{display:inline-block;white-space:nowrap}
#hero-h{max-width:none}
@media (min-width:900px){#hero-h{font-size:min(4.3vw,64px)}}
@media (max-width:899px){#hero-h{font-size:min(8.4vw,56px)}}

/* home gift band uses the gifts hero */
.band-shell.hband{background:linear-gradient(180deg,#E3B48B,#D9A273)}
.hband .gifting-full .gift-img img{object-position:center 60%}

/* custom hero v2: show the whole photo, keep title clear of the hat */
.hero.cu-hero,.has-hero #view > .hero.cu-hero:first-child{min-height:0;aspect-ratio:1402/1122}
.cu-hero-bg{object-position:center}
.cu-hero-copy{top:calc(var(--hdr-over) + clamp(24px,3.5vw,64px));max-width:min(27vw,420px)}
#c-hero{font-size:clamp(30px,3.3vw,56px)}
#c-hero .nw{display:inline-block;white-space:nowrap}
.cu-hero-copy .lede{max-width:30ch}
@media (max-width:899px){.hero.cu-hero,.has-hero #view > .hero.cu-hero:first-child{aspect-ratio:auto}.cu-hero-copy{max-width:none}#c-hero{font-size:clamp(30px,8.4vw,48px)}}
@media (min-width:900px){.cu-hero-copy{left:clamp(24px,4.5vw,96px)}#c-hero{font-size:clamp(28px,3vw,56px)}}

.gd-cert{position:absolute;inset:0;width:100%;height:100%;display:block;background:radial-gradient(ellipse at 30% 20%,#EEF2F0 0,#D6E3E1 55%,#C3D6D4 100%)}

.promises-end{padding-block:clamp(40px,5vw,64px);border-top:1px solid var(--soft-sand)}
.len-link{margin-top:20px}
.flinks{display:flex;flex-direction:column;gap:12px;padding-bottom:8px}.flink{color:var(--ink-blue);text-decoration:none;font-size:15px}.flink:hover,.flink[aria-current]{text-decoration:underline;text-underline-offset:4px}

/* ===== PDP v2 ===== */
.pdp2{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);padding-block:20px clamp(48px,6vw,80px)}
.pdp2 .gallery{display:block;position:sticky;top:var(--stick)}
.pdp2 .g-wrap{position:relative}
.pdp2 .g-main{background:#fff!important;outline:0!important}
.pdp2 .g-main img{object-fit:contain}
.g-heart{position:absolute;top:16px;right:16px;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.85);color:var(--ink-blue);cursor:pointer}
.g-heart svg{width:22px;height:22px}
.g-heart[aria-pressed="true"] svg path{fill:currentColor}
.pdp2 .thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:14px;order:0;flex-direction:row}
.pdp2 .thumb{width:auto;background:#fff!important;border:1px solid var(--cloud-grey)}
.pdp2 .thumb img{object-fit:contain}
.pdp2 .thumb .tl{display:none}
.pdp2 .thumb[aria-current="true"]{border-color:var(--champagne-brown);box-shadow:none;outline:1px solid var(--champagne-brown);outline-offset:0}
.pdp2 .buy{padding-top:6px}
.p2-eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--champagne-brown)}
.pdp2 .pdp-title{margin-top:14px;font-size:clamp(28px,2.8vw,38px);line-height:1.15;letter-spacing:.3px;text-transform:none}
.pdp2 .price{margin-top:18px;font-size:20px;line-height:28px}
.p2-tag{margin-top:12px;font-size:15px;line-height:24px;color:var(--ink-blue);max-width:46ch}
.p2-buy{display:flex;gap:14px;margin-top:28px;align-items:stretch}
.p2-buy .qty{border-radius:0;min-height:50px}
.p2-buy .btn{flex:1;border-radius:0;min-height:50px}
.pdp2 .len-link{margin-top:18px}
.p2-icons{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;text-align:center}
.p2-icons li{display:flex;flex-direction:column;align-items:center;gap:10px;font-size:11px;line-height:16px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-blue)}
.p2-icons svg{width:30px;height:30px;color:var(--champagne-brown)}
.p2-tabs{display:flex;gap:clamp(20px,3vw,40px);margin-top:36px;border-bottom:1px solid var(--cloud-grey)}
.p2-tabs button{background:none;border:0;padding:0 0 12px;margin-bottom:-1px;font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--slate-blue,#6b7378);cursor:pointer;border-bottom:2px solid transparent}
.p2-tabs button[aria-selected="true"]{color:var(--ink-blue);border-bottom-color:var(--ink-blue);font-weight:500}
.p2-panel{padding-top:20px;font-size:15px;line-height:26px;max-width:62ch}
.p2-panel p+p{margin-top:14px}
.p2-panel .bullets{margin-top:14px}
.p2-rel{padding-bottom:clamp(56px,7vw,96px)}
.p2-rel-h{text-align:center;font-family:var(--display);font-weight:400;font-size:clamp(24px,2.4vw,32px);letter-spacing:.3px;margin-bottom:clamp(24px,3vw,36px)}
@media (max-width:899px){.pdp2{grid-template-columns:minmax(0,1fr)}.pdp2 .gallery{position:static}.pdp2 .thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}.p2-icons{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}}
.pdp2 .thumbs{display:flex!important;flex-direction:row;overflow-x:auto;scrollbar-width:none;gap:12px}
.pdp2 .thumbs::-webkit-scrollbar{display:none}
.pdp2 .thumb{flex:0 0 calc((100% - 48px)/5)}
.pdp2 .len-link .cta-link{white-space:normal;display:inline}
.p2-tabs{overflow-x:auto;scrollbar-width:none}.p2-tabs button{white-space:nowrap;flex:none}
@media (max-width:899px){.pdp2 .thumb{flex-basis:calc((100% - 36px)/4)}.p2-tabs{gap:22px}}

/* home rails: cards 20% smaller */
.rail{grid-auto-columns:calc((100% - 48px) * .3)}
.rail-arrow{top:calc((100cqw - 48px) * .15 - 32px)}
@media (max-width:1099px){.rail{grid-auto-columns:calc((100% - 32px) * .4)}.rail-arrow{top:calc((100cqw - 32px) * .2 - 32px)}}
@media (max-width:699px){.rail{grid-auto-columns:58%}.rail-arrow{top:calc(29cqw - 32px)}}

.p2-inc{padding-block:clamp(40px,5vw,72px);border-top:1px solid var(--soft-sand)}
.p2-inc-h{font-family:var(--display);font-weight:400;font-size:clamp(22px,2.2vw,30px);letter-spacing:.3px;margin-bottom:clamp(24px,3vw,40px)}
.inc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.inc{text-align:center}
.inc-img{position:relative;aspect-ratio:1;overflow:hidden;border-radius:6px;background:#E9E4DA}
.inc-img img,.inc-img svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.inc-img .gd-cert{background:radial-gradient(ellipse at 30% 20%,#EEF2F0 0,#D6E3E1 55%,#C3D6D4 100%)}
.inc-h{margin-top:20px;font-family:var(--display);font-weight:400;font-size:19px;letter-spacing:.6px;color:var(--ink-blue)}
.inc-t{margin:10px auto 0;max-width:30ch;font-size:14px;line-height:22px;color:var(--ink-blue);opacity:.8}
@media (max-width:899px){.inc-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}}

/* home rails: boutique cards */
.hrail .sec-head{flex-direction:column;align-items:center;text-align:center;gap:14px}
.hrail .sec-head .hl{font-family:var(--display);font-size:clamp(30px,3.2vw,44px);text-transform:none;letter-spacing:.3px}
.hrail .sec-head .kicker{margin-top:10px;font-size:12px;letter-spacing:2.4px;text-transform:uppercase}
.hrail .head-actions{margin-top:2px}
.hrail .card-art{background:#F1EEE8;outline:0}
.hrail .card-art img{mix-blend-mode:multiply}
.hrail .card-body{text-align:center;justify-items:center}
.hrail .card-name{text-decoration:none;font-weight:400;font-size:14px;max-width:32ch;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hrail .card-spec{display:none}
.hrail .card-spec-s{font-size:11px;line-height:16px;letter-spacing:1.4px;text-transform:uppercase;opacity:.7;margin-top:2px}
.hrail .card-price{margin-top:6px;font-size:14px;letter-spacing:.5px}
.hrail .card-badge:not(.is-sold){display:none}
.hrail .heart{background:transparent;width:36px;height:36px}
.hrail .heart svg{width:22px;height:22px;stroke-width:1.1}
.card-spec-s{display:none}
.hrail .card-spec-s{display:block}

/* home rails v3: e-commerce head, left-aligned cards */
.hrail .sec-head{flex-direction:row;align-items:flex-end;justify-content:space-between;text-align:left;gap:16px}
.hrail .sec-head .kicker{margin:0 0 8px;font-size:11px;letter-spacing:2.2px;text-transform:uppercase}
.hrail .sec-head .hl{font-size:clamp(28px,2.8vw,40px)}
.hrail .head-actions{margin:0 0 6px}
.view-all{font-size:12px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink-blue);text-decoration:none;white-space:nowrap}
.view-all span{display:inline-block;transition:transform .2s}
.view-all:hover span{transform:translateX(4px)}
.hrail .card-body{text-align:left;justify-items:start}
.hrail .card-name{max-width:none;font-size:14px}
.hrail .card-spec-s{order:2;margin-top:2px}
.hrail .card-price{order:1;margin-top:4px;font-weight:500}
.hrail .card-body{display:flex;flex-direction:column;align-items:flex-start}
.hrail .card-badge.is-sold{border-radius:0;border:0;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;padding:4px 8px}
.view-all span{margin-left:10px}

/* home hero carousel */
.hcar{position:relative;touch-action:pan-y pinch-zoom}
.hcs{position:absolute;inset:0;z-index:1;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s linear .9s;overflow:hidden;background:#1F2325}
.hcs.on{opacity:1;visibility:visible;transition:opacity .9s ease}
.hcs-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hcs-1 .hcs-bg{object-position:62% 22%}
.hcs-2 .hcs-bg{object-position:center 30%}
.hcs-1::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(236,236,236,.55) 0,rgba(236,236,236,.2) 32%,rgba(236,236,236,0) 48%)}
.hcs-2::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,20,20,.55) 0,rgba(20,20,20,.15) 50%,rgba(20,20,20,0) 75%)}
.hcs-copy{position:absolute;z-index:2;left:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));top:50%;transform:translateY(-35%);max-width:min(40vw,560px)}
.hcs-h{margin-top:10px}
.hcs-dark{color:var(--ink-blue)}
.hcs-light,.hcs-light .hl,.hcs-light .kicker{color:#fff}
.btn-light{background:#fff;color:var(--ink-blue)}
.hcar-ctl{position:absolute;z-index:4;left:50%;bottom:22px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.72);backdrop-filter:blur(6px)}
.hcar-dot{width:8px;height:8px;border-radius:50%;border:0;padding:0;background:rgba(47,52,55,.3);cursor:pointer}
.hcar-dot[aria-current="true"]{background:var(--ink-blue);width:22px;border-radius:4px}
.hcar-arr{border:0;background:none;font-size:22px;line-height:1;color:var(--ink-blue);cursor:pointer;padding:0 4px}
@media (max-width:899px){.hcs-copy{top:auto;bottom:70px;transform:none;max-width:calc(100% - 2*var(--gutter))}.hcs-1::before{background:linear-gradient(0deg,rgba(236,236,236,.75) 0,rgba(236,236,236,0) 45%)}.hcs-2::before{background:linear-gradient(0deg,rgba(20,20,20,.6) 0,rgba(20,20,20,0) 50%)}}

.hcs-2 .hcs-copy{top:auto;bottom:110px;transform:none}
.hcs-2::before{background:linear-gradient(20deg,rgba(15,15,15,.7) 0,rgba(15,15,15,.25) 35%,rgba(15,15,15,0) 60%)}
@media (max-width:899px){.hcs-copy,.hcs-2 .hcs-copy{top:calc(100svh - 300px);bottom:auto}.hcs-1::before{background:linear-gradient(180deg,rgba(236,236,236,0) calc(100svh - 380px),rgba(236,236,236,.8) calc(100svh - 200px),rgba(236,236,236,.3) 100%)}.hcs-2::before{background:linear-gradient(180deg,rgba(15,15,15,0) calc(100svh - 400px),rgba(15,15,15,.7) calc(100svh - 200px),rgba(15,15,15,.4) 100%)}.hcs-h{font-size:clamp(30px,9vw,44px)}}
.hcs::before{z-index:1;pointer-events:none}.hcs-light .hl,.hcs-light .kicker{text-shadow:0 1px 18px rgba(0,0,0,.45)}.hcs-dark .hl,.hcs-dark .kicker{text-shadow:0 1px 16px rgba(255,255,255,.55)}

/* home rails spacing */
.hsec.hrail{padding-top:clamp(64px,7vw,104px);padding-bottom:clamp(24px,3vw,40px)}
.hrail .sec-head{margin-bottom:clamp(20px,2.2vw,32px)}
.hrail .sec-head .kicker{margin-bottom:10px}

/* home quick categories */
.qcats{padding-top:clamp(28px,3.5vw,48px)}
.qcats ul{list-style:none;margin:0;padding:clamp(18px,2vw,28px) 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#fff;border:1px solid var(--soft-sand)}
.qcats li{position:relative}
.qcats li+li::before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:1px;background:var(--soft-sand)}
.qcats a{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--ink-blue);padding:4px 8px}
.qc-img{position:relative;width:clamp(84px,9vw,128px);aspect-ratio:1;border-radius:50%;overflow:hidden;background:#F3EFE8;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.qc-img img{position:absolute;inset:12%;width:76%;height:76%;object-fit:contain;mix-blend-mode:multiply}
.qc-photo img{inset:0;width:100%;height:100%;object-fit:cover;mix-blend-mode:normal}
.qcats a:hover .qc-img{transform:scale(1.04)}
.qc-l{margin-top:14px;font-family:var(--display);font-size:clamp(15px,1.3vw,18px);letter-spacing:.4px}
.qc-go{margin-top:6px;font-size:12px;letter-spacing:.6px;opacity:.75;display:inline-flex;gap:8px}
.qcats a:hover .qc-go{opacity:1;text-decoration:underline;text-underline-offset:3px}
.ctiles + .hsec.hrail{padding-top:clamp(48px,5.5vw,80px)}
@media (max-width:699px){.qcats ul{display:flex;overflow-x:auto;scrollbar-width:none;padding:16px 4px}.qcats ul::-webkit-scrollbar{display:none}.qcats li{flex:0 0 31%}.qcats li+li::before{display:none}.qc-img{width:76px}.qc-l{font-size:14px;margin-top:10px}.qc-go{display:none}}

/* subtle carousel indicators */
.hcar-ctl{background:none;backdrop-filter:none;padding:0;gap:8px;bottom:26px}
.hcar-arr{display:none}
.hcar-dot{width:28px;height:2px;border-radius:0;background:rgba(255,255,255,.45);box-shadow:0 0 6px rgba(0,0,0,.18);position:relative}
.hcar-dot::after{content:"";position:absolute;inset:-10px 0}
.hcar-dot[aria-current="true"]{width:28px;border-radius:0;background:rgba(255,255,255,.95)}
.rail-more{text-align:center;margin-top:clamp(28px,3vw,44px)}

/* hero scales with viewport width */
@media (min-width:900px){
.has-hero #view > .hero.hcar:first-child,.hero.hcar{min-height:0;height:clamp(480px,54vw,calc(100svh - 52px))}
.hcar > .hero-art{aspect-ratio:auto;min-height:0;max-height:none;height:100%}
.hcar > .hero-copy{min-height:0}
.hcar .hl-hero{font-size:clamp(34px,4.3vw,72px)}
}
.hcs-h .nw,#hero-h .nw{display:inline-block;white-space:nowrap}
#hero-h{margin-top:10px}

/* home category tiles */
.ctiles{padding-top:clamp(20px,2.2vw,32px)}
.ctiles ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,24px)}
.ctiles a{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:#2A2522;color:#fff;text-decoration:none}
.ctiles img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1);filter:saturate(.9)}
.ctiles a::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(25,20,18,.62) 0,rgba(25,20,18,.18) 42%,rgba(25,20,18,0) 65%)}
.ctiles a:hover img{transform:scale(1.04)}
.ct-copy{position:absolute;z-index:1;left:clamp(16px,2vw,32px);bottom:clamp(16px,2vw,30px);display:flex;flex-direction:column;gap:8px}
.ct-l{font-family:var(--display);font-size:clamp(17px,1.6vw,24px);letter-spacing:1.2px;text-transform:uppercase}
.ct-go{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;display:inline-flex;gap:10px;opacity:.9}
.ctiles a:hover .ct-go{opacity:1;text-decoration:underline;text-underline-offset:3px}
.ctiles + .hsec.hrail{padding-top:clamp(48px,5.5vw,80px)}
@media (max-width:699px){.ctiles ul{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* unified home section headings */
.kicker.hk{margin:0 0 8px;font-size:11px;line-height:16px;letter-spacing:2.2px;text-transform:uppercase;color:var(--ink-blue)}
.hl.hh,.hrail .sec-head .hl{font-size:clamp(28px,2.8vw,40px);line-height:1.15;text-transform:none;letter-spacing:.3px}
.sec-head:has(.hh){align-items:flex-end}
.sec-head:has(.hh) .head-actions{margin:0 0 6px}

/* slide 1: bold condensed headline */
#hero-h.hero-bold{font-family:'Bebas Neue','Oswald',Impact,'Arial Narrow',sans-serif;font-weight:400;font-size:clamp(56px,7.4vw,120px);line-height:.92;letter-spacing:1px;text-transform:uppercase;margin-top:0}
.hero-sub{margin-top:clamp(14px,1.6vw,24px);font-size:clamp(18px,1.7vw,26px);letter-spacing:.6px;color:var(--ink-blue)}
.hcar .hero-ctas{margin-top:clamp(24px,3vw,44px)}
.hero-shop{font-size:clamp(14px,1.1vw,17px);letter-spacing:2px;text-transform:uppercase;color:var(--ink-blue);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
.hero-shop:hover{border-bottom-width:2px}
.price-row .pr-k{margin:0 clamp(8px,2vw,24px) 0 0;white-space:nowrap}

/* carousel: one VI type system for all slides */
.hcar .hck{margin:0;font-family:var(--body,'Noto Sans'),sans-serif;font-size:13px;line-height:18px;letter-spacing:2.4px;text-transform:uppercase}
.hcar .hl-hero,.hcar .hcs-h{font-family:var(--display);font-weight:400;font-size:clamp(34px,4.3vw,64px);line-height:1.05;letter-spacing:1.5px;text-transform:uppercase;margin-top:12px}
.hcar .hero-ctas{margin-top:clamp(24px,2.6vw,36px)}
.tile-link{text-decoration:none;color:inherit;display:flex;flex-direction:column}
.tile-link:hover .tile-photo img{transform:scale(1.03)}.tile-photo img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}

/* narrow screens: hero keeps a bounded, proportional height */
@media (max-width:899px){
.has-hero #view > .hero.hcar:first-child,.hero.hcar{display:block;min-height:0;height:min(calc(100svh - 52px),135vw);max-height:none}
.hcar > .hero-art{position:absolute;inset:0;aspect-ratio:auto;max-height:none;min-height:0;height:100%;order:0}
.hcar > .hero-art img{object-position:60% 25%}
.hcar > .hero-copy{position:absolute;z-index:1;left:0;right:0;bottom:0;min-height:0;padding:80px var(--gutter) 64px;background:linear-gradient(0deg,rgba(156,203,201,.95) 0,rgba(156,203,201,.85) 55%,rgba(156,203,201,0) 100%)}
.hcs-copy,.hcs-2 .hcs-copy{top:auto;bottom:64px}
.hcs-1::before{background:linear-gradient(0deg,rgba(236,236,236,.85) 0,rgba(236,236,236,.4) 35%,rgba(236,236,236,0) 55%)}
.hcs-2::before{background:linear-gradient(0deg,rgba(15,15,15,.72) 0,rgba(15,15,15,.3) 35%,rgba(15,15,15,0) 55%)}
.hcar .hl-hero,.hcar .hcs-h{font-size:clamp(28px,7.5vw,48px)}
.hcar-ctl{bottom:22px}
}
.hcar .hcs{z-index:3}
html,body{overflow-x:clip}

.hero-note{margin-top:clamp(14px,1.4vw,20px);font-size:clamp(15px,1.15vw,17px);line-height:1.6;letter-spacing:.3px;color:var(--ink-blue);opacity:.85}
@media (min-width:900px){
.hcs-1 .hcs-copy{left:auto;right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));top:34%;transform:none;text-align:right;max-width:min(36vw,520px)}
.hcs-1 .hero-ctas{justify-content:flex-end}
.hcs-1::before{background:linear-gradient(270deg,rgba(236,236,236,.6) 0,rgba(236,236,236,.25) 30%,rgba(236,236,236,0) 46%)}
}

@media (max-width:899px){
.hcar > .hero-art picture{position:absolute;inset:0}
.hcar > .hero-art img{position:absolute;inset:0;top:0;width:100%;height:100%;object-fit:cover;object-position:62% 20%}
.hcar > .hero-copy{padding-top:40px;background:linear-gradient(0deg,rgba(156,203,201,.94) 0,rgba(156,203,201,.8) 60%,rgba(156,203,201,0) 100%)}
}
@media (max-width:899px){.has-hero #view > .hero.hcar:first-child > .hero-art,.hcar > .hero-art{width:100%;right:0;aspect-ratio:auto!important}}

/* product titles: always two lines (pad short names, clamp long ones) */
.card-name{line-height:20px;min-height:40px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* product card: one tile — image and text share the same soft grey ground */
.card{background:#F1EEE8}
.card .card-link{gap:0}
.card .card-art{background:#F1EEE8;outline:0}
.card .card-art img{mix-blend-mode:multiply}
.card .card-body{padding:16px 18px 20px}
.card .card-spec-s,.card .card-spec{color:#6F6A64;opacity:1}
.card,.card .card-art,.hrail .card-art{background:#FFFFFF}

/* home: side margins 70% narrower */
/* Homepage rhythm. --gutter: page side padding; --maxw: 1360px of content plus the gutters;
   --sp-s / --sp-m / --sp-l: section spacing (standard, roomier, major editorial transition);
   --sp-title: section title to content; --sp-grid: gaps inside grids. */
html[data-route="home"] #view{--gutter:clamp(56px,4.6vw,80px);--maxw:calc(1360px + 2 * var(--gutter));--sp-s:112px;--sp-m:124px;--sp-l:144px;--sp-title:clamp(32px,2.6vw,40px);--sp-grid:24px}
@media (max-width:1199px){html[data-route="home"] #view{--gutter:40px;--sp-s:88px;--sp-m:92px;--sp-l:96px;--sp-title:28px;--sp-grid:20px}}
@media (max-width:899px){html[data-route="home"] #view{--gutter:32px;--sp-s:80px;--sp-m:84px;--sp-l:96px}}
@media (max-width:599px){html[data-route="home"] #view{--gutter:20px;--sp-s:64px;--sp-m:72px;--sp-l:80px;--sp-title:24px;--sp-grid:14px}}

/* gifts mega: 5 columns, round thumbs */
.mega-in.four.gifts5 .mcol{padding-inline:24px}
.mega-in.four.gifts5 .mcol:first-child{padding-left:0}
.mega .mthumbs ul{gap:2px}
.mega a.gthumb{display:flex;align-items:center;gap:14px;min-height:48px;padding-block:4px;white-space:nowrap}
.gthumb-art{flex:none;width:44px;height:44px;border-radius:50%;overflow:hidden;background:#fff;border:1px solid var(--cloud-grey)}
.gthumb-art img{width:100%;height:100%;object-fit:cover;display:block}
.mega a.gthumb:hover .gthumb-art{border-color:var(--slate-blue)}
@media (max-width:1199px){.mega-in.four.gifts5 .mcol{padding-inline:16px}.gthumb-art{width:38px;height:38px}}
.flinks-h{font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase;margin:0 0 4px}
.gthumb-art img{transform:scale(1.12)}

/* home duo: eclipse + gift */
.hduo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.6vw,24px)}
.duo{display:grid;grid-template-columns:1fr 1fr;height:clamp(340px,30vw,480px);text-decoration:none;color:var(--ink-blue);overflow:hidden}
.duo-a{background:var(--mist-white)}.duo-b{background:var(--pearl-rose)}
.duo-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(24px,3vw,48px)}
.duo-copy .hl{font-size:clamp(26px,2.6vw,38px);line-height:1.15;margin:0}
.duo-copy .kicker{margin-top:12px;max-width:30ch}
.duo-copy .btn{margin-top:clamp(20px,2.4vw,32px)}
.duo-img{position:relative;overflow:hidden}
.duo-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:transform .6s ease}
.duo:hover .duo-img img{transform:scale(1.03)}
.duo:hover .btn-dark{background:var(--ink-deep)}
@media (max-width:1023px){.hduo{grid-template-columns:1fr}.duo{height:clamp(320px,52vw,440px)}}
@media (max-width:560px){.duo{grid-template-columns:1fr;height:auto}.duo-img{aspect-ratio:4/3;order:-1}}
.sig-more{display:inline-block;margin-top:14px}

/* home rails: round white arrow buttons */
html[data-route="home"] .rail-arrow{width:56px;height:56px;margin-top:4px;border-radius:50%;background:#fff;filter:none;box-shadow:0 2px 12px rgba(31,35,37,.10);color:var(--ink-blue)}
html[data-route="home"] .rail-arrow svg{width:12px;height:24px;stroke-width:1.4}
html[data-route="home"] .rail-arrow.prev{left:16px}html[data-route="home"] .rail-arrow.next{right:16px}
html[data-route="home"] .rail-arrow.next svg{margin-left:3px}html[data-route="home"] .rail-arrow.prev svg{margin-right:3px}
@media (max-width:699px){html[data-route="home"] .rail-arrow{width:44px;height:44px;margin-top:10px}html[data-route="home"] .rail-arrow svg{width:10px;height:20px}}

/* In their words: full-bleed palette ground */
section.reviews{background:#EAE8E5;box-shadow:0 0 0 100vmax #EAE8E5;clip-path:inset(0 -100vmax);padding-top:clamp(56px,7vw,88px);padding-bottom:clamp(56px,7vw,88px);margin-bottom:clamp(64px,8vw,96px)}
section.reviews .rv-intro{background:var(--pearl-white)}
@media (max-width:599px){.designer-name.signature{font-size:clamp(52px,15vw,76px)}}

/* GIA + reviews combined */
.proofmix{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(16px,2vw,28px);background:#EAE8E5;box-shadow:0 0 0 100vmax #EAE8E5;clip-path:inset(0 -100vmax);padding-top:clamp(56px,7vw,88px);padding-bottom:clamp(56px,7vw,88px);margin-bottom:clamp(64px,8vw,96px)}
.pm-gia{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);background:var(--pearl-white)}
.pm-photo{margin:0;position:relative;min-height:100%;overflow:hidden}
.pm-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.pm-copy{padding:clamp(24px,3vw,44px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.pm-copy .hl{font-size:clamp(26px,2.4vw,36px);line-height:1.15}
.pm-copy .body{margin-top:16px;font-size:15px;line-height:24px}
.pm-copy .badge{width:min(100%,300px);height:auto;margin-top:12px}
.pm-copy .cta-link{margin-top:10px}
.pm-cap{margin-top:16px;font-size:11px;line-height:16px;color:var(--slate-blue)}
.pm-rv{position:relative;display:flex;flex-direction:column;padding:clamp(24px,3vw,44px);background:#9fb7c1 var(--ocean) center 80%/cover no-repeat;overflow:hidden}
.pm-rv-head{position:relative}
.pm-rv-head .hl{font-size:clamp(26px,2.4vw,36px);line-height:1.15}
.pm-rv-head .body-s{margin-top:6px}
.pm-view{position:relative;overflow:hidden;margin-top:clamp(20px,2.4vw,32px);flex:1;display:flex}
.pm-track{display:flex;width:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.pm-slide{flex:0 0 100%;margin:0;background:rgba(245,242,236,.92);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.pm-slide figcaption{padding:clamp(22px,2.6vw,36px)}
.pm-slide blockquote{font-size:clamp(17px,1.5vw,21px)}
.pm-ctl{position:relative;display:flex;align-items:center;gap:14px;margin-top:18px}
.pm-arr{width:40px;height:40px;border-radius:50%;border:0;background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--ink-blue);box-shadow:0 2px 10px rgba(31,35,37,.10)}
.pm-arr svg{width:9px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pm-dots{display:flex;gap:8px}
.pm-dot{width:22px;height:2px;padding:0;border:0;background:rgba(48,53,56,.3);cursor:pointer}
.pm-dot[aria-current="true"]{background:var(--ink-blue)}
.pm-note{position:relative;margin-top:12px;font-size:11px;color:var(--ink-blue)}
@media (max-width:1099px){.proofmix{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.pm-gia{grid-template-columns:minmax(0,1fr)}.pm-photo{aspect-ratio:4/3;min-height:0}}
.pm-note{align-self:flex-start;background:rgba(245,242,236,.88);padding:4px 10px}
.pm-ctl{align-self:flex-start;background:rgba(245,242,236,.88);padding:6px 10px;border-radius:999px}.pm-arr{width:34px;height:34px;box-shadow:none}
/* PDP buy row: VI pill buttons */
.p2-buy{gap:12px}
.p2-buy .qty{border-radius:var(--r-pill);min-height:50px;padding:0 6px;border-color:var(--cloud-grey);background:#fff}
.p2-buy .qty button{width:38px}
.p2-buy .btn{border-radius:var(--r-pill);min-height:50px}
/* PDP accordion */
.p2-acc{margin-top:36px;border-top:1px solid var(--cloud-grey)}
.p2-ac{border-bottom:1px solid var(--cloud-grey)}
.p2-ac summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;cursor:pointer;font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-blue)}
.p2-ac summary::-webkit-details-marker{display:none}
.p2-ac summary::after{content:"";flex:none;width:12px;height:12px;background:linear-gradient(currentColor,currentColor) center/12px 1.2px no-repeat,linear-gradient(currentColor,currentColor) center/1.2px 12px no-repeat;transition:transform .25s}
.p2-ac[open] summary::after{background:linear-gradient(currentColor,currentColor) center/12px 1.2px no-repeat}
.p2-ac .p2-panel{padding:0 0 22px}
/* GIA full-image panel */
.pm-gia-full{position:relative;display:block;overflow:hidden;min-height:clamp(420px,40vw,600px);text-decoration:none;background:#e9e6e0}
.pm-gia-full img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.pm-gia-full::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(28,26,25,.62) 0,rgba(28,26,25,.28) 38%,rgba(28,26,25,0) 62%)}
.pm-gia-full:hover img{transform:scale(1.03)}
.pm-gia-copy{position:absolute;z-index:1;left:clamp(24px,3vw,44px);right:clamp(24px,3vw,44px);bottom:clamp(24px,3vw,44px);display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.pm-gia-copy .hl{color:var(--pearl-white);font-size:clamp(30px,3vw,44px);line-height:1.1;margin:0}
@media (max-width:640px){.pm-gia-full{min-height:420px}}
/* shop by price: solid blocks */
.price-row .chip{background:var(--ink-blue);border-color:var(--ink-blue);color:var(--pearl-white)}
.price-row .chip:hover{background:var(--ink-deep);border-color:var(--ink-deep);color:var(--pearl-white)}
.pm-gia-full::after{background:linear-gradient(0deg,rgba(28,26,25,.72) 0,rgba(28,26,25,.4) 40%,rgba(28,26,25,0) 70%)}
.pm-slide figcaption{height:100%;justify-content:center}.pm-slide blockquote{flex:0 0 auto}.pm-view{margin-top:clamp(24px,3vw,40px);margin-bottom:clamp(8px,1vw,16px)}
/* reviews panel: quiet centred testimonial */
.pm-rv{background:#DAD6CE;text-align:center;align-items:center;justify-content:center;padding:clamp(40px,5vw,72px) clamp(28px,4vw,64px)}
.pm-rv-head{display:flex;flex-direction:column;align-items:center}
.pm-rv-head .hl{font-size:clamp(28px,2.6vw,40px)}
.pm-rv-head::after{content:"";display:block;width:min(70%,320px);height:1px;background:var(--ink-blue);opacity:.45;margin-top:clamp(28px,3vw,44px)}
.pm-view{width:100%;flex:0 0 auto;margin-top:clamp(24px,3vw,40px);margin-bottom:0}
.pm-slide{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
.pm-slide figcaption{align-items:center;padding:0 clamp(0px,2vw,24px);gap:18px}
.pm-slide .rv-q{display:none}
.pm-slide .rv-stars{display:none}
.pm-slide .rv-stars svg{fill:var(--champagne-gold)}
.pm-slide blockquote{font-size:clamp(17px,1.5vw,20px);line-height:1.65;max-width:46ch}
.pm-slide .rv-by{flex-direction:row;justify-content:center;gap:10px;border-top:0;padding-top:0;font-size:14px;letter-spacing:.5px}
.pm-slide .rv-loc{font-size:11px}
/* proofmix: full-bleed, panels fill the band */
.proofmix{padding:0;gap:0;background:none;box-shadow:none;clip-path:none;margin-bottom:clamp(64px,8vw,96px);min-height:clamp(520px,46vw,720px)}
.proofmix>*{min-height:100%}
.proofmix .pm-gia-full{min-height:clamp(420px,46vw,720px)}
@media (max-width:1099px){.proofmix{min-height:0}}
.duo-head .sec-head{margin-bottom:clamp(20px,2.4vw,32px)}
.pm-score{display:inline-flex;align-items:center;gap:12px;margin-top:18px;color:var(--ink-blue);text-decoration:none;font-size:14px;letter-spacing:.4px}
.pm-score b{font-family:var(--display);font-weight:400;font-size:26px;line-height:1}
.pm-score .rv-stars svg{width:16px;height:16px;fill:var(--champagne-gold)}
.pm-score span:last-child{text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(48,53,56,.4)}
.pm-slide blockquote{font-size:clamp(15px,1.25vw,18px);line-height:1.7;max-width:52ch}
.mega{border-top:0;border-bottom:1px solid var(--ink-blue)}
/* As seen in strip */
.press-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px clamp(24px,4vw,64px);padding-top:clamp(28px,3.4vw,44px);padding-bottom:clamp(8px,1vw,12px)}
.press-strip .ps-k{font-family:var(--label);font-size:12px;letter-spacing:2.4px;text-transform:uppercase;color:var(--slate-blue);margin:0}
.press-strip ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px clamp(24px,4vw,64px)}
.press-strip a{font-family:"Cormorant SC",var(--display);font-size:clamp(20px,1.9vw,27px);letter-spacing:1px;color:var(--ink-blue);opacity:.72;text-decoration:none;transition:opacity .2s;white-space:nowrap}
.press-strip a:hover{opacity:1}
/* About: giving back */
.au-give{background:var(--mist-white);padding:clamp(56px,7vw,96px) 0}
.au-give-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
.au-give-copy .hl{margin-top:var(--s1)}
.au-give-copy .body{margin-top:var(--s3);max-width:52ch}
.au-give-copy .cta-link{margin-top:24px}
.au-give-side{border-left:1px solid var(--cloud-grey);padding-left:clamp(24px,4vw,56px)}
.au-give-num{font-family:var(--display);font-size:clamp(64px,7vw,104px);line-height:1;color:var(--ink-blue);margin:0}
.au-give-cap{font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--slate-blue);margin-top:10px}
.au-give-list{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:10px;font-size:15px;line-height:22px}
@media (max-width:899px){.au-give-in{grid-template-columns:minmax(0,1fr)}.au-give-side{border-left:0;padding-left:0;border-top:1px solid var(--cloud-grey);padding-top:28px}}
.p2-acc{border-top:1px solid rgba(48,53,56,.22)}.p2-ac{border-bottom:1px solid rgba(48,53,56,.22)}
.p2-panel .spec dt,.p2-panel .spec dd{border-bottom-color:rgba(48,53,56,.12)}
/* As seen in: logo marquee */
.press-marquee{background:#BDB8B5;overflow:hidden;padding:clamp(26px,3vw,40px) 0}
.pm-mq{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.pm-mq-track{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:clamp(56px,7vw,112px);width:max-content;animation:pmq 45s linear infinite}
.press-marquee:hover .pm-mq-track{animation-play-state:paused}
@keyframes pmq{to{transform:translateX(calc(-50% - clamp(56px,7vw,112px)/2))}}
.pm-mq-track a{display:block;color:#F7F5F2;text-decoration:none;white-space:nowrap;opacity:.95;transition:opacity .2s}
.pm-mq-track a:hover{opacity:1}
.pl-a{font-family:"Cormorant SC",serif;font-weight:600;font-size:clamp(26px,2.6vw,38px);letter-spacing:1px}
.pl-b{font-family:var(--display);font-size:clamp(20px,2vw,28px);letter-spacing:6px;text-transform:uppercase}
.pl-c{font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:clamp(24px,2.4vw,34px);letter-spacing:-.5px}
.pl-d{font-family:"Mrs Saint Delafield",cursive;font-size:clamp(40px,4vw,58px);line-height:1}
.pl-e{font-family:var(--body,"Noto Sans"),sans-serif;font-weight:600;font-size:clamp(14px,1.3vw,18px);letter-spacing:3px;text-transform:uppercase}
@media (prefers-reduced-motion:reduce){.pm-mq-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto}.pm-mq-track li:nth-child(n+6){display:none}}
/* inner pages: white ground (home keeps pearl white) */
html:not([data-route="home"]) body,html:not([data-route="home"]) .site,html:not([data-route="home"]) .mega,html:not([data-route="home"]) .search-panel{background:#fff}
@media (max-width:899px){html:not([data-route="home"]) .filters,html:not([data-route="home"]) .filters-foot{background:#fff}}
.site:has(.mega:not([hidden])){border-bottom-color:transparent}
.mega,.search-panel{background:#fff}
.site:has(.mega:not([hidden]),.search-panel:not([hidden])){background:#fff}
.site{transition:background-color .2s}.site:hover,.site:focus-within{background:#fff}
/* home order: signatures, categories, new arrivals, pearl */
html[data-route="home"] .hcar + .hsec.hrail,html[data-route="home"] section.hero + .hsec.hrail{padding-top:clamp(48px,5.5vw,80px)}
section.cu-hero .cu-hero-bg{object-position:62% 22%}
section.cu-hero .cu-hero-copy{display:block}
section.cu-hero .cu-hero-copy{bottom:136px}
section.cu-hero .cu-hero-copy .hck{margin:0;font-family:var(--body,'Noto Sans'),sans-serif;font-size:13px;line-height:18px;letter-spacing:2.4px;text-transform:uppercase}
section.cu-hero .cu-hero-copy .hl-hero{font-family:var(--display);font-weight:400;font-size:clamp(28px,7.5vw,48px)!important;line-height:1.05;letter-spacing:1.5px;text-transform:uppercase;margin:12px 0 0!important}
@media(min-width:900px){section.cu-hero .cu-hero-bg{object-position:center 30%}
section.cu-hero::before{background:linear-gradient(270deg,rgba(236,236,236,.45) 0,rgba(236,236,236,.15) 28%,rgba(236,236,236,0) 44%)}
section.cu-hero .cu-hero-copy{left:auto;right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));bottom:194px;text-align:right;max-width:min(36vw,520px)}
section.cu-hero .cu-hero-copy .hl-hero{font-size:clamp(34px,4.3vw,64px)!important}}
.gd-card .cta-link{font-size:13px;white-space:normal;display:block}
.shop-banner{display:none!important}
/* ===== home v5: quiet layout from the full-page mockup ===== */
:root{--hv-band:color-mix(in srgb,var(--mist-white) 55%,var(--pearl-white));--hv-line:color-mix(in srgb,var(--ink-blue) 14%,transparent);--hv-mute:color-mix(in srgb,var(--ink-blue) 82%,transparent)}
html body .hv-sec{padding-block:var(--sp-s) 0}
html body .hv-kfs{padding-top:var(--sp-m)}
html body .hv-catsec,html body .hv-bq{padding-top:var(--sp-l)}
.hv-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 24px;margin-bottom:var(--sp-title)}
html body .hv-h2{font-family:var(--display);font-weight:400;font-size:clamp(24px,2.1vw,31px);line-height:1.2;letter-spacing:.2px;text-transform:none;color:var(--ink-blue);margin:0}
.hv-more,.hv-lk{display:inline-flex;align-items:center;gap:8px;font-family:var(--body);font-size:11.5px;line-height:1.4;letter-spacing:2px;text-transform:uppercase;color:var(--ink-blue);text-decoration:none;background:none;border:0;border-bottom:1px solid currentColor;border-radius:0;padding:0 0 3px;cursor:pointer;transition:color .2s}
.hv-more:hover,.hv-lk:hover,a:hover .hv-lk{color:var(--slate-blue)}
.hv-ar{width:14px;height:9px;flex:none}
.hv-sep{display:inline-block;width:1px;height:14px;background:var(--hv-line);flex:none}
.hv-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:20px}
.hv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 28px;border-radius:999px;background:var(--ink-deep);color:#fff;font-family:var(--body);font-size:12px;letter-spacing:2.2px;text-transform:uppercase;text-decoration:none;border:1px solid var(--ink-deep);transition:background .2s,color .2s,border-color .2s}
.hv-btn:hover{background:transparent;color:var(--ink-deep)}
.hv-btn-l{background:#fff;color:var(--ink-deep);border-color:#fff}
.hv-btn-l:hover{background:transparent;color:#fff;border-color:#fff}

/* hero: photo blended into its own silk */
.hvh{position:relative;height:clamp(440px,38vw,600px);overflow:hidden;background:var(--misty-blue)}
.hvh-s{position:absolute;inset:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s linear .9s}
.hvh-s.on{opacity:1;visibility:visible;transition:opacity .9s ease}
.hvh-blur{display:none}
.hvh-s0{background:radial-gradient(90% 120% at 18% 40%,color-mix(in srgb,var(--misty-blue) 78%,#fff) 0,var(--misty-blue) 55%,color-mix(in srgb,var(--misty-blue) 82%,#2f5f5b) 100%)}
.hvh-art{position:absolute;top:0;right:0;height:100%;width:64%;display:block;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 28%);mask-image:linear-gradient(90deg,transparent 0,#000 28%)}
.hvh-art img{width:100%;height:100%;object-fit:cover;object-position:30% 28%;display:block}
.hvh-s0::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.22) 0,rgba(255,255,255,.08) 34%,rgba(255,255,255,0) 52%)}
.hvh-copy{position:absolute;z-index:2;left:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));top:50%;transform:translateY(-50%);max-width:min(44vw,560px);color:var(--ink-blue)}
.hvh-k{margin:0;font-family:var(--body);font-size:12px;line-height:18px;letter-spacing:2.6px;text-transform:uppercase}
html body .hvh-h{font-family:var(--display);font-weight:400;font-size:clamp(30px,3.1vw,48px);line-height:1.08;letter-spacing:1.6px;text-transform:uppercase;margin:12px 0 0;color:inherit}
.hvh-h .nw{display:inline-block;white-space:nowrap}
.hvh-note{margin:14px 0 0;font-size:clamp(15px,1.15vw,17px);line-height:1.6}
.hvh-copy .hv-btn{margin-top:clamp(22px,2.4vw,32px)}
.hvh-full{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hvh-s1 .hvh-full{object-position:center 26%}
.hvh-s2 .hvh-full{object-position:center 32%}
.hvh-s1::before,.hvh-s2::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
.hvh-s1::before{background:linear-gradient(270deg,rgba(236,236,236,.5) 0,rgba(236,236,236,0) 46%)}
.hvh-s2::before{background:linear-gradient(90deg,rgba(15,15,15,.55) 0,rgba(15,15,15,0) 60%)}
.hvh-r{left:auto;right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));text-align:right}
.hvh-w{color:#fff}
.hvh-dots{position:absolute;z-index:4;left:50%;bottom:20px;transform:translateX(-50%);display:flex;gap:8px}
.hvh-dots button{width:26px;height:2px;border:0;padding:0;background:rgba(48,53,56,.25);cursor:pointer;position:relative}
.hvh-dots button::after{content:"";position:absolute;inset:-14px -4px}
.hvh-dots button[aria-current="true"]{background:var(--ink-blue)}
@media(max-width:899px){
.hvh{height:150vw;max-height:680px;min-height:520px}
.hvh-s0{background:color-mix(in srgb,var(--misty-blue) 80%,#fff)}
.hvh-art{width:100%;height:60%;-webkit-mask-image:linear-gradient(180deg,#000 78%,transparent);mask-image:linear-gradient(180deg,#000 78%,transparent)}
.hvh-art img{object-position:45% 30%}
.hvh-blur{display:none}
.hvh-s0::after{display:none}
.hvh-s0 .hvh-copy{bottom:50px}
.hvh-copy,.hvh-r{left:var(--gutter);right:var(--gutter);top:auto;bottom:48px;transform:none;max-width:none;text-align:left}
.hvh-s1::before{background:linear-gradient(0deg,rgba(236,236,236,.85) 0,rgba(236,236,236,0) 50%)}
.hvh-s2::before{background:linear-gradient(0deg,rgba(15,15,15,.7) 0,rgba(15,15,15,0) 55%)}
html body .hvh-h{font-size:clamp(28px,8vw,40px)}
.hvh-dots{bottom:18px}
}

/* press */
.hv-press{background:color-mix(in srgb,#E6DED0 55%,var(--pearl-white));border-bottom:1px solid var(--hv-line)}
.hv-press ul{list-style:none;margin:0 auto;padding:16px var(--gutter);max-width:var(--maxw);display:flex;align-items:center}
.hv-press li{flex:1 1 0;text-align:center;position:relative;display:flex;align-items:center;justify-content:center;min-height:34px}
.hv-press li+li::before{content:"";position:absolute;left:0;top:50%;height:22px;margin-top:-11px;width:1px;background:var(--hv-line)}
.hv-press a{color:var(--hv-mute);text-decoration:none;white-space:nowrap;transition:color .2s}
.hv-press a:hover{color:var(--ink-blue)}
.hvp-a{font-family:Georgia,"Times New Roman",serif;font-size:16px}
.hvp-b{font-family:var(--script);font-size:30px;line-height:1}
.hvp-c{font-family:var(--body);font-size:9.5px;letter-spacing:1.8px;text-transform:uppercase}
.hvp-d{font-family:"Cormorant SC",Georgia,serif;font-size:18px;letter-spacing:1.6px}
.hvp-e{font-family:var(--body);font-size:10.5px;letter-spacing:3.4px;text-transform:uppercase}
@media(max-width:899px){.hv-press ul{overflow-x:auto;scrollbar-width:none;padding-inline:0}.hv-press ul::-webkit-scrollbar{display:none}.hv-press li{flex:0 0 auto;padding:0 22px}}

/* signatures */
.hv-rw{position:relative}
.hv-row{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 60px)/4);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;outline:0}
.hv-row::-webkit-scrollbar{display:none}
.hv-row:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.hv-pc{scroll-snap-align:start;display:flex;flex-direction:column;color:var(--ink-blue);text-decoration:none;min-width:0}
.hv-pc-img{display:block;aspect-ratio:10/9;overflow:hidden;background:#EFEAE0}
.hv-pc-img img,.hv-pc-img svg{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease}
.hv-pc:hover .hv-pc-img img{transform:scale(1.03)}
.hv-pc-n{margin-top:10px;font-size:13.5px;line-height:1.45}
.hv-pc-p{margin-top:3px;font-size:13px;color:var(--hv-mute)}
.hv-pc-p s{margin-right:4px}
.hv-pc-r{margin-top:4px;font-size:12px;color:var(--hv-mute);display:flex;align-items:center;gap:4px}
.hv-arr{position:absolute;z-index:2;top:calc(50% - 44px);width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.88);box-shadow:0 2px 10px rgba(30,30,30,.1);display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .25s}
.hv-arr svg{width:18px;height:18px;fill:none;stroke:var(--ink-blue);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.hv-prev{left:10px}.hv-next{right:10px}
.hv-rw:hover .hv-arr,.hv-arr:focus-visible{opacity:1}
@media(max-width:899px){.hv-row{grid-auto-columns:44%;gap:14px}.hv-arr{display:none}}

/* keepsakes + categories */
.hv-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-grid)}
.hv-kf{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;color:#fff;text-decoration:none}
.hv-kf img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}
.hv-kf:hover img{transform:scale(1.03)}
.hv-kf::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,18,16,.36) 0,rgba(20,18,16,0) 36%);pointer-events:none}
.hv-kf-c{position:absolute;z-index:1;left:clamp(18px,2vw,28px);bottom:clamp(16px,1.8vw,26px);display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.hv-kf-t{font-family:var(--display);font-size:clamp(20px,1.8vw,26px);line-height:1.2}
.hv-kf-u{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;letter-spacing:.3px;border-bottom:1px solid rgba(255,255,255,.7);padding-bottom:2px}
.hv-cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-grid)}
.hv-cat{color:var(--ink-blue);text-decoration:none;min-width:0}
.hv-cat-i{display:block;aspect-ratio:11/10;overflow:hidden}
.hv-cat-i img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease}
.hv-cat:hover .hv-cat-i img{transform:scale(1.03)}
.hv-cat-l{display:block;margin-top:10px;font-size:15px}
@media(max-width:699px){.hv-duo{grid-template-columns:minmax(0,1fr)}.hv-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* find your pearl band */
.hv-band{background:var(--hv-band);margin-top:clamp(40px,4.4vw,64px)}
.hv-fp-in{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(28px,4vw,64px);align-items:center;padding-block:clamp(26px,3vw,44px)}
.hv-fp-fig{margin:0;aspect-ratio:5/4;overflow:hidden}
.hv-fp-img{width:100%;height:100%;object-fit:cover;display:block}
.hv-sub{margin:6px 0 0;font-size:14.5px;color:var(--hv-mute)}
.hv-fp-row{display:flex;gap:clamp(12px,2.2vw,34px);margin-top:clamp(18px,2vw,26px)}
.hv-fp-t{display:flex;flex-direction:column;align-items:center;gap:9px;background:none;border:0;padding:0;cursor:pointer;color:var(--ink-blue);min-width:0;font:inherit}
.hv-fp-ti{width:clamp(42px,3.5vw,54px);aspect-ratio:1;border-radius:50%;overflow:hidden;display:block;transition:transform .3s;box-shadow:0 5px 12px rgba(40,40,40,.14)}
.hv-fp-ti img{width:100%;height:100%;object-fit:cover;transform:scale(1.24);display:block}
.hv-fp-t:hover .hv-fp-ti{transform:translateY(-2px)}
.hv-fp-tl{font-size:12.5px;line-height:1.3;padding-bottom:5px;border-bottom:1px solid transparent;white-space:nowrap}
.hv-fp-t[aria-pressed="true"] .hv-fp-tl{border-bottom-color:var(--ink-blue)}
.hv-fp-d{margin-top:clamp(20px,2.2vw,30px);max-width:520px}
html body .hv-fp-name{font-family:var(--display);font-weight:400;font-size:clamp(20px,1.6vw,24px);line-height:1.2;margin:0;color:var(--ink-blue)}
.hv-fp-desc{margin:8px 0 0;font-size:14.5px;line-height:1.65}
@media(max-width:899px){.hv-fp-in{grid-template-columns:minmax(0,1fr)}.hv-fp-row{justify-content:space-between;gap:4px}.hv-fp-t{flex:1 1 0}.hv-fp-tl{font-size:11px;white-space:normal;text-align:center}}

/* boutiques & services */
.hv-bq-g{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:20px}
.hv-bq-main,.hv-bq-s{display:flex;flex-direction:column;color:var(--ink-blue);text-decoration:none;min-width:0}
.hv-bq-i{display:block;height:clamp(200px,19vw,300px);overflow:hidden}
.hv-bq-i img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease}
.hv-bq-main:hover img,.hv-bq-s:hover img{transform:scale(1.03)}
.hv-bq-main .hv-bq-i img{object-position:center 46%}
.hv-bq-tx{display:flex;flex-direction:column;align-items:flex-start}
.hv-bq-t{margin-top:12px;font-family:var(--display);font-size:clamp(17px,1.35vw,20px);line-height:1.25}
.hv-bq-main .hv-bq-t{font-size:clamp(20px,1.7vw,24px)}
.hv-bq-d{margin-top:6px;font-size:13.5px;line-height:1.55;color:var(--hv-mute)}
.hv-bq-tx .hv-lk{margin-top:12px}
@media(max-width:699px){.hv-bq-g{grid-template-columns:minmax(0,1fr);gap:18px}.hv-bq-main .hv-bq-i{height:auto;aspect-ratio:4/3}.hv-bq-s{display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:16px;align-items:center}.hv-bq-s .hv-bq-i{height:104px}.hv-bq-s .hv-bq-t{margin-top:0}}

/* reviews band */
.hv-rv-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;padding-block:clamp(22px,2.4vw,34px)}
.hv-rv-l{text-align:center;padding:4px 24px;border-right:1px solid var(--hv-line)}
.hv-rv-s{display:inline-flex;align-items:center;gap:10px;margin-top:8px;color:var(--ink-blue);text-decoration:none;font-size:13px}
.hv-rv-s b{font-weight:400}
.hv-stars{display:inline-flex;gap:2px}
.hv-stars svg{width:13px;height:13px;fill:var(--slate-blue)}
.hv-rv-n{border-bottom:1px solid currentColor}
.hv-rv-s:hover .hv-rv-n{color:var(--slate-blue)}
.hv-rv-r{margin:0;text-align:center;padding:4px 24px}
.hv-rv-r blockquote{margin:0;font-family:var(--display);font-size:clamp(17px,1.4vw,21px);line-height:1.4;color:var(--ink-blue)}
.hv-rv-r figcaption{margin-top:6px;font-size:12.5px;color:var(--hv-mute)}
@media(max-width:699px){.hv-rv-in{grid-template-columns:minmax(0,1fr)}.hv-rv-l{border-right:0;border-bottom:1px solid var(--hv-line);padding-bottom:18px}.hv-rv-r{padding-top:18px}}

/* pearls, with confidence */
.hv-cf{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,4vw,64px);align-items:center}
.hv-cf-fig{margin:0;aspect-ratio:5/2;overflow:hidden}
.hv-cf-fig img{width:100%;height:100%;object-fit:cover;object-position:center 55%;display:block}
.hv-cf-c p{margin:10px 0 0;font-size:14.5px;line-height:1.65;max-width:44ch}
.hv-dlg{border:0;padding:0;max-width:min(920px,94vw);background:#fff}
.hv-dlg::backdrop{background:rgba(31,35,37,.55)}
.hv-dlg img{display:block;width:100%;height:auto}
.hv-x{position:absolute;top:8px;right:8px;width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.92);font-size:22px;line-height:1;cursor:pointer}
@media(max-width:899px){.hv-cf{grid-template-columns:minmax(0,1fr);gap:20px}.hv-cf-fig{aspect-ratio:16/9}}

/* designer */
.hvd{position:relative;background:#1C2023;color:#fff;margin-top:clamp(40px,4.4vw,64px);overflow:hidden}
.hvd-img{position:absolute;top:0;right:0;height:100%;width:58%;object-fit:cover;object-position:70% 30%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%);mask-image:linear-gradient(90deg,transparent 0,#000 30%)}
.hvd-in{position:relative;z-index:1;min-height:clamp(380px,30vw,460px);display:flex;align-items:center}
.hvd-c{max-width:min(46%,480px);padding-block:clamp(36px,4vw,56px)}
.hvd-eb{margin:0;font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:rgba(255,255,255,.72)}
html body .hvd-sig{font-family:var(--script);font-weight:400;font-size:clamp(52px,4.6vw,74px);line-height:1.05;margin:8px 0 0;color:#fff;text-transform:none;letter-spacing:0}
.hvd-role{margin:6px 0 0;font-size:12px;letter-spacing:2.4px;text-transform:uppercase}
.hvd-b{margin:14px 0 24px;font-size:14.5px;line-height:1.7;color:rgba(255,255,255,.86)}
@media(max-width:899px){.hvd-img{position:relative;display:block;width:100%;height:auto;aspect-ratio:4/3;object-position:88% 30%;-webkit-mask-image:linear-gradient(0deg,transparent 0,#000 28%);mask-image:linear-gradient(0deg,transparent 0,#000 28%)}.hvd-in{min-height:0;margin-top:-40px}.hvd-c{max-width:none;padding-top:0}}

/* newsletter + promises */
.hv-news{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,64px);align-items:center;padding-block:clamp(36px,4vw,56px) clamp(24px,2.6vw,36px)}
.hv-news-l p{margin:8px 0 0;font-size:14.5px;line-height:1.6;color:var(--hv-mute)}
.hv-nf{display:flex;border:1px solid var(--hv-line);background:#fff}
.hv-nf input{flex:1;min-width:0;border:0;padding:0 16px;height:46px;font:inherit;font-size:14px;background:transparent;color:var(--ink-blue)}
.hv-nf input:focus{outline:2px solid var(--ink);outline-offset:-2px}
.hv-nf button{display:inline-flex;align-items:center;gap:8px;border:0;background:var(--ink-deep);color:#fff;padding:0 22px;font-family:var(--body);font-size:11.5px;letter-spacing:2px;text-transform:uppercase;cursor:pointer}
.hv-nmsg:empty{display:none}
.hv-fine{margin:8px 0 0;font-size:12px;color:var(--hv-mute)}
.hv-prom{list-style:none;margin:0;padding:clamp(20px,2.2vw,30px) 0 clamp(36px,4vw,56px);border-top:1px solid var(--hv-line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.hv-prom li{display:flex;gap:14px;align-items:flex-start}
.hv-prom svg{width:26px;height:26px;flex:none;color:var(--slate-blue)}
.hv-prom b{display:block;font-weight:400;font-size:14px;color:var(--ink-blue)}
.hv-prom span{display:block;font-size:12.5px;line-height:1.5;color:var(--hv-mute);margin-top:2px}
@media(max-width:899px){.hv-news{grid-template-columns:minmax(0,1fr)}.hv-prom{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}}

/* contact: in-store photo */
.ct-photo{margin:0 0 28px;aspect-ratio:4/3;overflow:hidden}
.ct-photo img{width:100%;height:100%;object-fit:cover;object-position:center 58%;display:block}
/* home v5.1 */
@media(min-width:900px){
.hv-bq-g{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);grid-template-rows:repeat(3,auto);gap:0 clamp(28px,3.4vw,52px)}
.hv-bq-main{grid-row:1/4}
.hv-bq-main .hv-bq-i{height:auto;aspect-ratio:4/3}
.hv-bq-s{display:grid;grid-template-columns:clamp(120px,11vw,160px) minmax(0,1fr);column-gap:22px;align-items:center;padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid var(--hv-line)}
.hv-bq-s:last-child{margin-bottom:0}
.hv-bq-s .hv-bq-i{height:auto;aspect-ratio:1}
.hv-bq-s .hv-bq-t{margin-top:0}
.hv-bq-s .hv-bq-tx .hv-lk{margin-top:10px}
}
/* reviews ticker */
.hv-tick{margin-top:clamp(40px,4.4vw,64px);border-block:1px solid var(--hv-line)}
.hv-tick-in{display:flex;align-items:center;max-width:var(--maxw);margin:0 auto;padding-left:var(--gutter)}
.hv-tick-l{flex:none;padding:14px 28px 14px 0;border-right:1px solid var(--hv-line)}
html body .hv-tick-h{font-family:var(--display);font-weight:400;font-size:17px;line-height:1.3;margin:0;color:var(--ink-blue);text-transform:none;letter-spacing:.2px}
.hv-tick-l .hv-rv-s{margin-top:4px;font-size:12.5px}
.hv-tick-v{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent);outline:0}
.hv-tick-t{list-style:none;margin:0;padding:0;display:flex;width:max-content;animation:hvtick 70s linear infinite}
.hv-tick-v:hover .hv-tick-t,.hv-tick-v:focus .hv-tick-t{animation-play-state:paused}
.hv-tick-t li{display:flex;align-items:baseline;gap:10px;padding:0 34px;white-space:nowrap;position:relative}
.hv-tick-t li::after{content:"";position:absolute;right:-2px;top:50%;width:4px;height:4px;border-radius:50%;background:var(--slate-blue);opacity:.55}
.hv-tick-t q{font-family:var(--display);font-size:17px;color:var(--ink-blue);quotes:"“" "”"}
.hv-tick-t span{font-size:12px;color:var(--hv-mute)}
@keyframes hvtick{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.hv-tick-t{animation:none}.hv-tick-v{overflow-x:auto}}
@media(max-width:699px){.hv-tick-in{flex-direction:column;align-items:stretch;padding-left:0}.hv-tick-l{border-right:0;border-bottom:1px solid var(--hv-line);padding:14px var(--gutter);text-align:center}.hv-tick-v{padding-block:14px}.hv-tick-t q{font-size:15px}}
/* confidence: the report itself */
.hv-cf-fig{position:relative;display:block;width:100%;margin:0;padding:0;border:0;cursor:zoom-in;aspect-ratio:2/1;overflow:hidden;background:color-mix(in srgb,#E4DCCF 55%,var(--pearl-white))}
.hv-cf-fig img{position:absolute;left:50%;top:50%;width:auto;height:84%;max-width:88%;object-fit:contain;display:block;transform:translate(-50%,-50%);box-shadow:0 14px 34px rgba(40,34,26,.16),0 2px 6px rgba(40,34,26,.08);transition:transform .5s ease}
.hv-cf-fig:hover img{transform:translate(-50%,-51.5%)}
@media(max-width:899px){.hv-cf-fig{aspect-ratio:4/3}}
/* newsletter: closer together */
html body .hv-news{max-width:940px;margin-inline:auto;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(20px,4vw,56px)}
/* product photos: one warm backdrop */
.card-art,.hv-pc-img{background:#F5F3EE!important}
@media(max-width:599px){.hv-links .hv-sep{display:none}}
html body .card .card-art img,html body .hrail .card-art img,html body .qc-img img{mix-blend-mode:normal!important}
html body #g-main,html body .thumb,html body .qc-img{background:#F5F3EE!important}
/* add to bag: a size down */
html body .pdp2 .p2-buy{max-width:300px}
html body .pdp2 .p2-buy .btn,html body .pdp2 .p2-buy .qty{min-height:40px}
html body .pdp2 .p2-buy .btn{font-size:12px;letter-spacing:1.8px;padding-inline:20px}
html body .pdp2 .p2-buy .qty button{width:32px;height:32px}
/* home v5.2: bottom per reference */
.hv-eb{margin:0 0 12px;font-family:var(--body);font-size:11.5px;letter-spacing:2.6px;text-transform:uppercase;color:var(--slate-blue)}
.hv-rv3{background:var(--hv-band);margin-top:clamp(40px,4.4vw,64px)}
.hv-rv3-in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;padding-block:clamp(40px,4.6vw,68px)}
.hv-rv3-l{padding-right:clamp(28px,4vw,64px);border-right:1px solid var(--hv-line)}
html body .hv-rv3-h{font-family:var(--display);font-weight:400;font-size:clamp(34px,3.4vw,50px);line-height:1.08;margin:0;color:var(--ink-blue);text-transform:none;letter-spacing:0}
.hv-rv3-s{display:flex;align-items:center;gap:18px;margin:clamp(16px,2vw,26px) 0 clamp(18px,2vw,26px)}
.hv-rv3-s>b{font-family:var(--display);font-weight:400;font-size:clamp(56px,5.4vw,78px);line-height:1;color:var(--ink-blue)}
.hv-rv3-s>div{display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--hv-mute)}
.hv-rv3-s .hv-stars svg{width:19px;height:19px;fill:var(--slate-blue)}
.hv-rv3-r{padding-left:clamp(28px,4vw,64px)}
.hv-qs{display:grid}
.hv-q{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility 0s linear .8s}
.hv-q.on{opacity:1;visibility:visible;transition:opacity .8s ease}
.hv-q blockquote{margin:0;font-family:var(--display);font-size:clamp(21px,2.1vw,30px);line-height:1.42;color:var(--ink-blue);text-indent:-.45em}
.hv-q blockquote::before{content:"“"}.hv-q blockquote::after{content:"”"}
.hv-q figcaption{margin-top:18px;display:flex;flex-direction:column;gap:3px}
.hv-q figcaption b{font-weight:400;font-family:var(--display);font-size:17px;color:var(--ink-blue)}
.hv-q figcaption span{font-size:13px;color:var(--hv-mute)}
.hv-qd{display:flex;gap:8px;margin-top:20px}
.hv-qd button{width:22px;height:2px;border:0;padding:0;background:color-mix(in srgb,var(--ink-blue) 22%,transparent);cursor:pointer;position:relative}
.hv-qd button::after{content:"";position:absolute;inset:-12px -3px}
.hv-qd button[aria-current="true"]{background:var(--ink-blue)}
@media(max-width:799px){.hv-rv3-in{grid-template-columns:minmax(0,1fr)}.hv-rv3-l{padding:0 0 26px;border-right:0;border-bottom:1px solid var(--hv-line)}.hv-rv3-r{padding:26px 0 0}}
html body .hv-rv3 + .hv-cf{padding-top:clamp(24px,2.6vw,40px)}
/* newsletter */
.hv-n2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center;padding-block:clamp(44px,5vw,72px) clamp(32px,3.4vw,48px)}
html body .hv-n2-h{font-family:var(--display);font-weight:400;font-size:clamp(34px,3.6vw,54px);line-height:1.08;margin:0;color:var(--ink-blue);text-transform:none;letter-spacing:0}
.hv-n2-p{margin:14px 0 0;font-size:clamp(15px,1.25vw,18px);line-height:1.55;color:var(--hv-mute);max-width:34ch}
.hv-nf2 label{display:block;font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--ink-blue);margin-bottom:12px}
.hv-nf2-row{display:flex;align-items:flex-end;gap:18px}
.hv-nf2 input{flex:1;min-width:0;border:0;border-bottom:1px solid color-mix(in srgb,var(--ink-blue) 35%,transparent);background:transparent;padding:10px 2px;font:inherit;font-size:15px;color:var(--ink-blue);border-radius:0}
.hv-nf2 input:focus{outline:0;border-bottom-color:var(--ink-blue)}
.hv-nf2 button{flex:none;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 24px;border:0;border-radius:6px;background:var(--ink-deep);color:#fff;font-family:var(--body);font-size:11.5px;letter-spacing:2px;text-transform:uppercase;cursor:pointer}
@media(max-width:799px){.hv-n2{grid-template-columns:minmax(0,1fr)}}
/* boutiques: text above, photo fills to the bottom of the service list */
@media(min-width:900px){
html body .hv-bq-g{align-items:stretch}
html body .hv-bq-main{display:flex;flex-direction:column;align-self:stretch}
html body .hv-bq-main .hv-bq-tx{order:0;margin-bottom:18px}
html body .hv-bq-main .hv-bq-t{margin-top:0}
html body .hv-bq-main .hv-bq-i{order:1;flex:1 1 auto;height:auto;aspect-ratio:auto;min-height:280px;position:relative}
html body .hv-bq-main .hv-bq-i img{position:absolute;inset:0;object-position:center 40%}
html body .hv-bq-s:last-child{padding-bottom:0;border-bottom:0}
}
/* boutiques: caption on the photo */
html body .hv-bq-main{position:relative;display:block;overflow:hidden;color:#fff}
html body .hv-bq-main .hv-bq-i{position:absolute;inset:0;height:auto;aspect-ratio:auto;min-height:0}
html body .hv-bq-main .hv-bq-i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
html body .hv-bq-main::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(20,18,16,.78) 0,rgba(20,18,16,.5) 30%,rgba(20,18,16,0) 60%)}
html body .hv-bq-main .hv-bq-tx{position:absolute;z-index:2;left:clamp(20px,2.4vw,36px);right:clamp(20px,2.4vw,36px);bottom:clamp(20px,2.4vw,34px);margin:0}
html body .hv-bq-main .hv-bq-t{margin-top:0;color:#fff;font-size:clamp(24px,2.1vw,30px)}
html body .hv-bq-main .hv-bq-d{color:rgba(255,255,255,.88);max-width:46ch}
html body .hv-bq-main .hv-lk{color:#fff}
@media(max-width:699px){html body .hv-bq-main{aspect-ratio:4/5}}
@media(min-width:700px){html body .hv-bq-g{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}}
html body .hv-bq-main .hv-bq-i img{object-position:center 30%}
/* boutiques v3: four photo tiles, captions on the photos */
html body .hv-bq-s{position:relative;display:block;overflow:hidden;color:#fff;padding:0;margin:0;border:0}
html body .hv-bq-s .hv-bq-i{position:absolute;inset:0;height:auto;aspect-ratio:auto}
html body .hv-bq-s .hv-bq-i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
html body .hv-bq-s::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(20,18,16,.78) 0,rgba(20,18,16,.45) 32%,rgba(20,18,16,0) 60%)}
html body .hv-bq-s .hv-bq-tx{position:absolute;z-index:2;left:clamp(16px,1.6vw,24px);right:clamp(16px,1.6vw,24px);bottom:clamp(18px,1.8vw,26px)}
html body .hv-bq-s .hv-bq-t{margin:0;color:#fff;font-size:clamp(18px,1.5vw,22px)}
html body .hv-bq-s .hv-bq-d{color:rgba(255,255,255,.86);font-size:13px}
html body .hv-bq-s .hv-lk{color:#fff;margin-top:12px}
@media(min-width:900px){
html body .hv-bq-g{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr));grid-template-rows:clamp(440px,38vw,580px);gap:16px}
html body .hv-bq-main{grid-row:auto}
html body .hv-bq-s{grid-template-columns:none}
}
@media(max-width:699px){html body .hv-bq-g{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}html body .hv-bq-main{grid-column:1/-1}html body .hv-bq-s{display:block;aspect-ratio:3/4}html body .hv-bq-s:last-child{grid-column:1/-1;aspect-ratio:16/10}html body .hv-bq-s .hv-bq-d{display:none}}
/* boutiques v4: store left, three landscape services stacked right (tablet and up) */
@media(min-width:700px){
html body .hv-bq-g{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(3,minmax(0,1fr));height:clamp(420px,38vw,560px);gap:var(--sp-grid)}
html body .hv-bq-main{grid-row:1/4}
html body .hv-bq-s{grid-column:2}
html body .hv-bq-s::after{background:linear-gradient(90deg,rgba(20,18,16,.68) 0,rgba(20,18,16,.35) 40%,rgba(20,18,16,0) 70%)}
html body .hv-bq-s .hv-bq-tx{left:clamp(20px,2vw,30px);right:auto;max-width:58%;top:50%;bottom:auto;transform:translateY(-50%)}
html body .hv-bq-s .hv-bq-d{font-size:13px;line-height:1.5}
html body .hv-bq-s .hv-lk{margin-top:10px}
html body .hv-bq-main .hv-bq-d{max-width:40ch;font-size:15px;line-height:1.6}
}
/* shop grid: four across, quiet centred cards (Cartier-style) */
@media(min-width:1100px){
html body .shop{grid-template-columns:200px minmax(0,1fr);gap:clamp(28px,3vw,48px)}
html body .shop #grid.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:44px 18px}
html body .shop .fgroup label,html body .shop .fopts label{font-size:14px}
}
@media(min-width:900px) and (max-width:1099px){html body .shop #grid.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
html body .shop #grid .card-body{text-align:center;padding:14px 6px 0}
html body .shop #grid .card-name{font-family:var(--label);font-weight:400;font-size:15px;line-height:1.4;text-decoration:none}
html body .shop #grid .card-spec,html body .shop #grid .card-spec-s{font-size:12.5px}
html body .shop #grid .card-price{font-size:15px;margin-top:6px}
html body .shop #grid .card-meta{justify-content:center}
html body .shop #grid .card-badge{border-radius:0;background:#fff;border:0;font-size:10.5px;letter-spacing:1.6px;text-transform:uppercase;padding:5px 8px;color:var(--ink-blue)}
html body .shop #grid .heart{background:transparent!important}
/* colour variant circles on product images */
.card-cols{position:absolute;z-index:3;left:12px;bottom:12px;display:flex;gap:6px;padding:5px 7px;border-radius:999px;background:rgba(255,255,255,.82);backdrop-filter:blur(4px)}
.cc{width:14px;height:14px;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.14),inset -2px -3px 4px rgba(0,0,0,.12),inset 2px 2px 3px rgba(255,255,255,.7);cursor:pointer;outline-offset:2px;position:relative}
.cc.on::after,.cc.hov::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid var(--ink-blue)}
.cc::before{content:"";position:absolute;inset:-6px}
html body .shop #grid .card-sw{display:none}
html body .card-art:has(.card-cols:hover) .m2{opacity:0!important;visibility:hidden!important}
html body .card-art:has(.card-cols:hover) .m1{opacity:1!important;visibility:visible!important}
.card-cols:hover .cc.on:not(.hov)::after{display:none}
/* proof v2: reviews (left, textured panel) + certificate (right) side by side */
.hv-pf{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(16px,1.8vw,24px);align-items:stretch;margin-top:clamp(40px,4.4vw,64px)}
.hv-pf-rv{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:clamp(24px,2.6vw,36px);padding:clamp(28px,3.4vw,52px);color:var(--ink-blue);
 background:
  radial-gradient(120% 90% at 12% 0%,rgba(255,255,255,.55) 0,rgba(255,255,255,0) 55%),
  radial-gradient(90% 80% at 100% 100%,rgba(71,127,125,.10) 0,rgba(71,127,125,0) 60%),
  repeating-linear-gradient(0deg,rgba(48,53,56,.012) 0 1px,transparent 1px 3px),
  repeating-linear-gradient(90deg,rgba(255,255,255,.18) 0 1px,transparent 1px 5px),
  color-mix(in srgb,var(--misty-blue) 22%,var(--pearl-white));
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.6),0 1px 0 rgba(48,53,56,.04)}
.hv-pf-rv::before{content:"";position:absolute;inset:12px;border:1px solid color-mix(in srgb,var(--slate-blue) 22%,transparent);pointer-events:none;z-index:-1}
.hv-pf-rv::after{content:"\201C";position:absolute;right:clamp(18px,3vw,44px);top:clamp(-30px,-2vw,-10px);font-family:var(--display);font-size:clamp(200px,20vw,300px);line-height:1;color:color-mix(in srgb,var(--slate-blue) 13%,transparent);pointer-events:none;z-index:-1}
.hv-pf-top{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:16px 28px}
html body .hv-pf-h{font-family:var(--display);font-weight:400;font-size:clamp(28px,2.6vw,38px);line-height:1.1;margin:0;color:var(--ink-blue);text-transform:none;letter-spacing:0}
.hv-pf-score{display:flex;align-items:center;gap:14px}
.hv-pf-score>b{font-family:var(--display);font-weight:400;font-size:clamp(44px,4vw,56px);line-height:1}
.hv-pf-score>div{display:flex;flex-direction:column;gap:5px;font-size:13px;color:color-mix(in srgb,var(--ink-blue) 72%,transparent)}
.hv-pf-score .hv-stars svg{width:17px;height:17px;fill:var(--slate-blue)}
.hv-pf .hv-qs{min-width:0}
.hv-pf .hv-q blockquote{font-size:clamp(20px,1.8vw,26px);line-height:1.45;text-indent:0;max-width:34ch;overflow-wrap:break-word}
.hv-pf .hv-q blockquote::before{content:none}.hv-pf .hv-q blockquote::after{content:none}
.hv-pf-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 24px;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--slate-blue) 22%,transparent)}
.hv-pf .hv-qd{margin-top:0}
.hv-pf-cf{display:flex;flex-direction:column;background:var(--paper,#fff);border:1px solid color-mix(in srgb,var(--ink-blue) 10%,transparent);min-width:0}
.hv-pf-cf .hv-cf-fig{position:relative;display:block;width:100%;margin:0;padding:0;border:0;cursor:zoom-in;overflow:hidden;aspect-ratio:auto;flex:1 1 auto;min-height:260px;background:color-mix(in srgb,#E4DCCF 45%,var(--pearl-white))}
.hv-pf-cf .hv-cf-fig img{height:72%;max-width:80%;transform:translate(-50%,-50%) rotate(-1.5deg)}
.hv-pf-cf .hv-cf-fig:hover img{transform:translate(-50%,-51.5%) rotate(0deg)}
.hv-pf-cf .hv-cf-c{padding:clamp(22px,2.4vw,32px)}
.hv-pf-cf .hv-cf-c p{margin:10px 0 0;font-size:14.5px;line-height:1.6;max-width:46ch}
html body .hv-pf-cf .hv-h2{font-size:clamp(22px,1.9vw,27px)}
.hv-pf-cf .hv-links{gap:10px 16px}
@media(max-width:899px){.hv-pf{grid-template-columns:minmax(0,1fr)}.hv-pf-cf .hv-cf-fig{min-height:0;aspect-ratio:4/3}.hv-pf-rv::after{font-size:180px}}
@media(max-width:599px){.hv-pf-cf .hv-links .hv-sep{display:none}}
html body .hv-pf .hv-pf-rv.hv-rv3{margin-top:0}
/* proof v3: one joined block, section rhythm */
html body .hv-pf{gap:0;margin-top:var(--sp-l);margin-bottom:var(--sp-m);box-shadow:0 0 0 1px color-mix(in srgb,var(--ink-blue) 10%,transparent)}
html body .hv-pf .hv-pf-cf{border:0;border-left:1px solid color-mix(in srgb,var(--ink-blue) 10%,transparent)}
@media(max-width:899px){html body .hv-pf .hv-pf-cf{border-left:0;border-top:1px solid color-mix(in srgb,var(--ink-blue) 10%,transparent)}}
html body .hv-prom{border-top:0;padding-top:clamp(40px,4.4vw,64px);padding-bottom:clamp(40px,4.4vw,64px)}
/* footer newsletter */
.foot-news{margin-top:20px;max-width:320px}
.foot-news label{display:block;font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--ink-blue);margin-bottom:8px}
.foot-news-row{display:flex;align-items:stretch;border:1px solid color-mix(in srgb,var(--ink-blue) 22%,transparent);background:#fff}
.foot-news input{flex:1;min-width:0;border:0;background:transparent;padding:0 12px;height:40px;font:inherit;font-size:13.5px;color:var(--ink-blue)}
.foot-news input:focus{outline:2px solid var(--ink);outline-offset:-2px}
.foot-news button{flex:none;border:0;background:var(--ink-deep);color:#fff;padding:0 16px;font:500 11px/1 var(--body);letter-spacing:1.8px;text-transform:uppercase;cursor:pointer}
.foot-news-msg{font-size:12px;margin:6px 0 0}.foot-news-msg:empty{display:none}
html body .hv-bq-s .hv-bq-i img{object-position:right center}
/* promises with dividers */
html body .hv-prom{gap:0}
html body .hv-prom li{padding:4px clamp(14px,2vw,28px);gap:16px;align-items:center}
html body .hv-prom li+li{border-left:1px solid var(--hv-line)}
html body .hv-prom li:first-child{padding-left:0}
html body .hv-prom svg{width:34px;height:34px}
html body .hv-prom b{font-family:var(--display);font-size:16px}
@media(max-width:899px){html body .hv-prom{gap:18px 0}html body .hv-prom li:nth-child(odd){padding-left:0;border-left:0}}
@media(max-width:899px){html body .fp .fp-tl{font-size:12px;line-height:1.25}html body .fp .fp-tl::after{left:-4px;right:-4px}html body .fp .fp-t{padding:6px 0 10px;min-width:0}}
html body .fp{--fpbg:#EEEFF0;align-items:start!important;background:var(--fpbg);box-shadow:0 0 0 100vmax var(--fpbg);clip-path:inset(0 -100vmax);padding-block:clamp(48px,6vw,88px)!important;margin-block:clamp(40px,5vw,72px)}
html body .fp .fp-fig{background:var(--fpbg);aspect-ratio:5/4}
html body .fp .fp-ti{background:transparent!important;box-shadow:none!important;border-radius:50%;width:clamp(68px,6.4vw,100px)}
html body .fp .fp-t{position:relative;padding:10px 6px 14px}
html body .fp .fp-t[aria-pressed="true"] .fp-ti{box-shadow:none!important}
html body .fp .fp-tl{position:relative;padding-bottom:8px}
html body .fp .fp-tl::after{content:"";position:absolute;left:-10px;right:-10px;bottom:0;height:2px;background:var(--slate-blue);transform:scaleX(0);transition:transform .25s}
html body .fp .fp-t[aria-pressed="true"] .fp-tl::after{transform:scaleX(1)}
@media(min-width:900px){html body .fp .fp-r{padding-top:clamp(60px,6vw,96px)}}
html body .fp .fp-t[aria-pressed="true"] .fp-tl{color:var(--slate-blue)}
html body .fp .fp-tl{font-size:16px}
.fp{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,88px);align-items:center}
.fp .hl{margin-bottom:20px}
.fp-fig{margin:0;aspect-ratio:4/3;overflow:hidden;background:#F3F1EE}
.fp-img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .25s}
.fp-name{font-family:var(--display);font-size:24px;margin:16px 0 2px;color:var(--ink-blue)}
.fp-meta{font-size:14px;color:color-mix(in srgb,var(--ink-blue) 65%,transparent);margin:0}
.fp-go{display:inline-flex;gap:6px;margin-top:12px;font-size:15px;color:var(--slate-blue);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.fp-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(18px,2.4vw,36px) 12px}
.fp-t{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:0;padding:10px 4px;cursor:pointer;color:var(--ink-blue);border-radius:6px}
.fp-ti{width:clamp(64px,6vw,96px);background:#EEF0F0;aspect-ratio:1;border-radius:50%;overflow:hidden;display:block;transition:transform .3s,box-shadow .3s;box-shadow:0 0 0 1px transparent}
.fp-ti img{width:100%;height:100%;object-fit:cover}
.fp-t:hover .fp-ti{transform:translateY(-3px)}
.fp-t[aria-pressed="true"] .fp-ti{box-shadow:0 0 0 1px var(--slate-blue),0 0 0 5px var(--pearl-white),0 0 0 6px color-mix(in srgb,var(--slate-blue) 40%,transparent)}
.fp-tl{font-size:15px;margin-top:6px}
.fp-t[aria-pressed="true"] .fp-tl{color:var(--slate-blue)}
.fp-ts{font-size:12.5px;color:color-mix(in srgb,var(--ink-blue) 60%,transparent)}
.fp-cmp{display:inline-block;margin-top:26px}
.fp-r{text-align:center}
@media(max-width:899px){.fp{grid-template-columns:minmax(0,1fr)}.fp-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.fp-ti{width:100%}.fp-tl{font-size:12.5px;line-height:1.25}.fp-ts{display:none}.fp-r{order:2}}
html body .rv-stars,html body .pdp-stars,html body section.proofmix .rv-stars{display:inline-flex!important;gap:3px!important;align-items:center}
html body .rv-stars svg,html body .pdp-stars svg,html body section.proofmix .rv-stars svg,html body section.proofmix .pm-score .rv-stars svg{width:18px!important;height:18px!important;padding:0!important;background:none!important;box-shadow:none!important;border-radius:0!important;fill:var(--slate-blue)!important}
html body section.proofmix .pm-score .rv-stars svg{width:17px!important;height:17px!important}
html body .pdp-stars svg{width:16px!important;height:16px!important}
.pdp-stock{margin:18px 0 0;font-size:14px;color:var(--slate-blue);letter-spacing:.2px}
.pdp-stock+.p2-buy{margin-top:10px!important}
.pdp-ships .pdp-ship{border-color:color-mix(in srgb,var(--ink-blue) 22%,transparent)!important;padding:7px 16px!important;font-size:13px!important;gap:10px!important}
.pdp-ships{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.pdp2 .pdp-ships .pdp-ship{margin:0!important}
.pdp-ships .pdp-ship svg[viewBox='0 0 24 24']{width:19px;height:19px}
@media(min-width:900px){#g-bridal .svc-row-img{aspect-ratio:auto!important;align-self:stretch;min-height:100%!important}#g-bridal .svc-row-img img{object-position:40% center}}
@media(max-width:899px){#g-bridal .svc-row-img{aspect-ratio:3/2!important}}
html body section.proofmix .rv-stars{gap:4px!important}
html body section.proofmix .pm-score{align-items:center}
html body section.proofmix.proofmix{gap:0!important;column-gap:0!important}
html body section.proofmix .pm-gia-full{border:0!important}
html body section.proofmix .pm-gia-full{justify-content:center}
html body section.proofmix{padding-inline:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))!important;gap:clamp(16px,2vw,28px)!important;align-items:stretch}
html body section.proofmix .pm-rv{background:#E3EFEB!important;background-image:none!important;color:#343A3A}
html body section.proofmix .pm-gia-full{display:flex!important;flex-direction:column;min-height:0!important;background:#fff!important;border:1px solid var(--cloud-grey);padding:clamp(20px,2.4vw,32px)}
html body section.proofmix .pm-gia-full::after{display:none!important}
html body section.proofmix .pm-gia-full img{position:static!important;inset:auto!important;width:100%!important;height:auto!important;flex:1;min-height:0;object-fit:contain!important;filter:none!important;transform:none!important}
html body section.proofmix .pm-gia-full:hover img{transform:none!important}
html body section.proofmix .pm-gia-full .pm-gia-copy{position:static!important;margin-top:24px;align-items:flex-start;gap:14px}
html body section.proofmix .pm-gia-full .pm-gia-copy .hl{color:#343A3A!important;font-size:clamp(24px,2.2vw,32px)!important}
@media(max-width:899px){section.proofmix .pm-gia-full{display:none!important}}
.svc-rows~*,.au2-vip{}
section.au2-vip .hl{text-transform:none!important;letter-spacing:.3px!important}
section.au2-vip .au2-h3{text-transform:none!important;letter-spacing:.2px!important;font-size:clamp(20px,1.8vw,24px)!important}
section.au2-vip .cta-link{text-transform:none!important;letter-spacing:.3px!important;font-size:15px!important;color:var(--slate-blue)!important}
.svc-sub+section.au2-vip,section.au2-vip{margin-bottom:clamp(24px,3vw,48px)}
.pt3-head{margin-top:clamp(8px,1.5vw,20px)!important}
.pt3-lede{margin-top:0!important}
.pt3-head{text-align:center;max-width:760px;margin:0 auto clamp(32px,4vw,56px)}
.pt3-h{font-family:var(--display);font-weight:400;font-size:clamp(38px,4.6vw,60px);line-height:1.05;margin:10px 0 0;color:var(--ink-blue)}
.pt3-lede{font-size:17px;line-height:1.65;margin:16px auto 0;max-width:58ch;color:color-mix(in srgb,var(--ink-blue) 85%,transparent)}
.pt3-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 32px;margin-top:26px;padding-top:22px;border-top:1px solid var(--cloud-grey)}
.pt3-jump a{font-size:15px;color:var(--ink-blue);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px}
.pt3-jump a:hover{border-color:var(--slate-blue);color:var(--slate-blue)}
.pt3-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,88px);align-items:center;padding:clamp(32px,4vw,56px) 0;border-top:1px solid var(--cloud-grey);scroll-margin-top:140px}
.pt3-row.rev .pt3-img{order:2}
.pt3-img{margin:0;aspect-ratio:1;background:#F3F1EE;overflow:hidden}
.pt3-img img{width:100%;height:100%;object-fit:cover;display:block}
.pt3-n{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--slate-blue);margin:0}
.pt3-name{font-family:var(--display);font-weight:400;font-size:clamp(30px,3vw,42px);line-height:1.1;margin:10px 0 0;color:var(--ink-blue)}
.pt3-tag{margin:8px 0 0;font-size:15px;color:color-mix(in srgb,var(--ink-blue) 65%,transparent)}
.pt3-d{margin:20px 0 0;font-size:16.5px;line-height:1.7;max-width:52ch}
.pt3-facts{margin:24px 0 0;border-top:1px solid var(--cloud-grey);max-width:52ch}
.pt3-facts>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--cloud-grey)}
.pt3-facts dt{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--slate-blue);padding-top:3px}
.pt3-facts dd{margin:0;font-size:15px;line-height:1.5}
.pt3-cta{display:inline-flex;gap:8px;margin-top:24px;font-size:15px;color:var(--slate-blue);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.pt3-cta:hover{color:var(--ink-blue)}
.pt3-more{border-top:1px solid var(--cloud-grey);padding:clamp(40px,5vw,72px) 0 clamp(48px,6vw,88px)}
.pt3-mh{font-family:var(--display);font-weight:400;font-size:clamp(28px,2.8vw,35.84px);margin:0 0 clamp(20px,2.4vw,32px);color:var(--ink-blue)}
.pt3-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
.pt3-card{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--ink-blue)}
.pt3-ci{display:block;aspect-ratio:4/3;overflow:hidden;margin-bottom:8px}
.pt3-ci img{width:100%;height:100%;object-fit:contain;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.pt3-card:hover .pt3-ci img{transform:scale(1.04)}
.pt3-card b{font-family:var(--display);font-weight:400;font-size:22px}
.pt3-card>span:not(.pt3-ci):not(.pt3-lm){font-size:14.5px;line-height:1.55;color:color-mix(in srgb,var(--ink-blue) 80%,transparent)}
.pt3-lm{font-size:14px;color:var(--slate-blue);margin-top:4px}
@media(max-width:899px){.pt3-row{grid-template-columns:minmax(0,1fr)}.pt3-row.rev .pt3-img{order:0}.pt3-img{aspect-ratio:4/3}.pt3-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){.pr3-grid{display:flex!important;flex-wrap:wrap;justify-content:center}.pr3-card{flex:0 0 calc((100% - 2*clamp(18px,2.4vw,36px))/3)}}
@media(min-width:561px) and (max-width:899px){.pr3-grid{display:flex!important;flex-wrap:wrap;justify-content:center}.pr3-card{flex:0 0 calc((100% - clamp(18px,2.4vw,36px))/2)}}
.pr3-hero{position:relative;height:clamp(260px,30vw,400px);display:grid;place-items:center;overflow:hidden;text-align:center;color:#fff}
.pr3-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.pr3-hero::after{content:"";position:absolute;inset:0;background:rgba(28,26,25,.38)}
.pr3-hero-in{position:relative;z-index:1;padding:0 var(--gutter)}
.pr3-h{font-family:var(--display);font-weight:400;font-size:clamp(36px,4.4vw,58px);line-height:1.05;margin:0;color:#fff}
.pr3-sub{margin:14px 0 0;font-size:16px;letter-spacing:.3px}
.pr3-sub a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.pr-page .crumbs{margin-top:16px}
.pr3-grid{list-style:none;padding:0;margin:clamp(24px,3vw,40px) auto clamp(48px,6vw,88px);max-width:1080px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,36px)}
.pr3-card a{display:flex;flex-direction:column;align-items:center;height:100%;padding:clamp(22px,2.4vw,34px) clamp(22px,2.6vw,40px) 26px;border:1px solid color-mix(in srgb,var(--champagne-brown) 45%,transparent);background:#fff;text-decoration:none;color:var(--ink-blue);transition:box-shadow .25s,border-color .2s}
.pr3-card a:hover{border-color:var(--champagne-brown);box-shadow:0 18px 36px -26px rgba(40,30,20,.45)}
.pr3-logo{font-family:var(--display);font-size:clamp(20px,1.8vw,26px);letter-spacing:.5px;text-align:center;min-height:2.4em;display:flex;align-items:center;justify-content:center;line-height:1.15}
.pr3-cover{margin-top:16px;width:100%;aspect-ratio:3/4;display:flex;flex-direction:column;padding:22px 20px;background:color-mix(in srgb,var(--slate-blue) 10%,#FBFAF7);border:1px solid color-mix(in srgb,var(--ink-blue) 8%,transparent);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pr3-card a:hover .pr3-cover{transform:translateY(-3px)}
.pr3-cv-o{font-family:var(--label);font-size:13px;letter-spacing:2.5px;text-transform:uppercase;color:var(--slate-blue);padding-bottom:12px;border-bottom:1px solid color-mix(in srgb,var(--ink-blue) 15%,transparent)}
.pr3-cv-t{font-family:var(--display);font-size:clamp(20px,1.8vw,26px);line-height:1.25;margin-top:auto}
.pr3-cv-d{margin-top:14px;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:color-mix(in srgb,var(--ink-blue) 60%,transparent)}
.pr3-go{margin-top:18px;display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--slate-blue)}
.pr3-card a:hover .pr3-go{text-decoration:underline;text-underline-offset:4px}
@media(max-width:899px){.pr3-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.pr3-grid{grid-template-columns:minmax(0,1fr)}}
.pr2-head{text-align:center;padding:clamp(24px,4vw,56px) 0 clamp(28px,3vw,40px)}
.pr2-h{font-family:var(--display);font-weight:400;font-size:clamp(40px,5vw,64px);line-height:1.05;margin:0;color:var(--ink-blue)}
.pr2-lede{margin:16px auto 0;max-width:52ch;font-size:17px;line-height:1.6;color:color-mix(in srgb,var(--ink-blue) 80%,transparent)}
.pr2-strip{list-style:none;padding:26px 0 0;margin:30px 0 0;border-top:1px solid var(--cloud-grey);display:flex;flex-wrap:wrap;justify-content:center;gap:12px 40px}
.pr2-strip li{font-family:var(--display);font-size:clamp(16px,1.4vw,20px);letter-spacing:.5px;color:color-mix(in srgb,var(--ink-blue) 55%,transparent)}
.pr2-grid{list-style:none;padding:0;margin:clamp(24px,3vw,36px) 0 clamp(40px,5vw,72px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
.pr2-card a{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--cloud-grey);text-decoration:none;color:var(--ink-blue);transition:border-color .2s,box-shadow .25s}
.pr2-card a:hover{border-color:color-mix(in srgb,var(--slate-blue) 60%,transparent);box-shadow:0 14px 30px -22px rgba(40,40,40,.35)}
.pr2-mast{display:grid;place-items:center;aspect-ratio:16/9;background:color-mix(in srgb,var(--slate-blue) 9%,#FBFAF7);padding:20px;text-align:center}
.pr2-o{font-family:var(--display);font-size:clamp(22px,2vw,30px);line-height:1.15;letter-spacing:.5px}
.pr2-body{display:flex;flex-direction:column;gap:10px;padding:22px 22px 24px;flex:1}
.pr2-d{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--slate-blue)}
.pr2-t{font-family:var(--display);font-size:20px;line-height:1.35;flex:1}
.pr2-go{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--slate-blue);margin-top:6px}
.pr2-card a:hover .pr2-go{text-decoration:underline;text-underline-offset:4px}
.pr2-lead{grid-column:span 2}
.pr2-lead .pr2-mast{aspect-ratio:auto;min-height:100%}
.pr2-lead a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.pr2-lead .pr2-o{font-size:clamp(30px,3vw,44px)}
.pr2-lead .pr2-t{font-size:clamp(22px,2vw,28px)}
@media(max-width:899px){.pr2-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.pr2-lead{grid-column:1/-1}}
@media(max-width:600px){.pr2-grid{grid-template-columns:minmax(0,1fr)}.pr2-lead a{grid-template-columns:minmax(0,1fr)}.pr2-lead .pr2-mast{aspect-ratio:16/9}.pr2-strip{gap:8px 22px}}
@media(max-width:899px){.cw-opts{min-width:0;width:100%;align-self:stretch;margin-top:8px}}
.cw-opts{display:flex!important;flex-direction:column;justify-content:center;gap:12px;min-width:260px}
.cw-opt{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--ink-blue) 14%,transparent);border-radius:10px;background:rgba(255,255,255,.55);color:var(--ink-blue);text-decoration:none;transition:border-color .2s,background .2s}
.cw-opt:hover{border-color:var(--slate-blue);background:#fff}
.cw-oi{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--slate-blue) 12%,#fff);color:var(--slate-blue)}
.cw-oi svg{width:22px;height:22px}
.cw-ot{display:flex;flex-direction:column;flex:1;min-width:0}
.cw-ot b{font-weight:500;font-size:15px}
.cw-ot small{font-size:13px;color:color-mix(in srgb,var(--ink-blue) 65%,transparent);margin-top:2px}
.cw-oa{font-size:20px;color:var(--slate-blue);transition:transform .2s}
.cw-opt:hover .cw-oa{transform:translateX(3px)}
section.proofmix .rv-stars svg,section.proofmix .pm-score .rv-stars svg{width:17px!important;height:17px!important}
section.proofmix .pm-gia-full .pm-gia-copy .hl{text-transform:none!important;letter-spacing:.3px!important}
section.proofmix .pm-rv{background:#F7F4EA!important;color:#343A3A}
section.proofmix .pm-rv::before,section.proofmix .pm-rv::after{display:none!important}
section.proofmix .pm-rv .hl,section.proofmix .pm-rv blockquote,section.proofmix .pm-rv .pm-score{color:#343A3A!important}
section.proofmix .pm-rv-head::after{background:#343A3A;opacity:.18}
section.proofmix .rv-card{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
section.proofmix .rv-stars svg,section.proofmix .pm-score .rv-stars svg{width:15px!important;height:15px!important;padding:0!important;background:none!important;fill:var(--slate-blue)!important}
section.proofmix .rv-stars{gap:4px!important}
section.proofmix .rv-src,section.proofmix figcaption cite,section.proofmix .rv-meta span{color:var(--slate-blue)}
section.proofmix .pm-gia-full img{filter:saturate(.15) sepia(.12) brightness(1.06) contrast(.92)}
section.proofmix .pm-gia-full::after{background:linear-gradient(0deg,rgba(247,244,234,.96) 0,rgba(247,244,234,.78) 30%,rgba(247,244,234,.15) 62%,rgba(247,244,234,0) 80%)!important}
section.proofmix .pm-gia-full .pm-gia-copy .hl{color:#343A3A!important}
section.proofmix .pm-gia-full .pm-gia-copy .btn{background:#343A3A!important;color:#F7F4EA!important;border-color:#343A3A!important}
@media(min-width:900px){section[aria-labelledby="life-h"] .campaign{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(min-width:600px) and (max-width:899px){section[aria-labelledby="life-h"] .campaign{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
section[aria-labelledby="life-h"] .tile-photo img{width:100%;height:100%;object-fit:cover;display:block}
section.cw-start .cw-start-copy .hl{text-transform:none!important;letter-spacing:.2px!important;font-family:var(--display);font-weight:400;font-size:clamp(36px,4vw,54px)!important;line-height:1.1!important}
section.cw-start .cw-btn{text-transform:none!important;letter-spacing:.6px!important;font-size:14px!important;font-weight:500!important}
section.cw-start .cw-ct{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:.2px;font-size:clamp(26px,2.4vw,32px);line-height:1.2;margin:0 0 16px;color:var(--ink-blue)}
section.cw-start .cw-card .body{font-size:17px!important;line-height:1.6!important}
section.cw-start .cw-note{font-size:14px!important;line-height:1.6!important}
section.cw-start .cw-side-t{text-transform:none!important;letter-spacing:.2px!important;font-family:var(--body)!important;font-size:15px!important;line-height:1.5!important;margin:0!important;color:var(--ink-blue)}
section.cw-start .cw-side-t+.cw-side-t{margin-top:6px!important}
.card-was{color:color-mix(in srgb,var(--ink-blue) 55%,transparent);font-weight:400;margin-right:4px}
.card-sale{color:#A33A3A}
.card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;order:2;min-height:18px}
.card-rv{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:color-mix(in srgb,var(--ink-blue) 70%,transparent)}
.card-stars{position:relative;display:inline-block;font-size:14px;letter-spacing:2px;color:#D8D2C8;line-height:1}
.card-stars::before{content:"★★★★★";position:absolute;inset:0;width:var(--r);overflow:hidden;color:var(--champagne-gold,#B49B7C);white-space:nowrap}
.card-sw{display:inline-flex;gap:8px}
.card-sw i{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.card-sw i.on{outline:1px solid var(--ink-blue);outline-offset:2px}
section.news2{background:color-mix(in srgb,var(--slate-blue) 11%,#FBFAF7)!important;padding:clamp(64px,8vw,120px) 0!important}
section.news2 .news2-in{border:0!important;padding-block:0!important;align-items:end!important}
section.news2 .news2-k{color:color-mix(in srgb,var(--champagne-brown) 85%,#666)!important;letter-spacing:3.5px!important}
section.news2 .news2-h{font-size:clamp(44px,5vw,72px)!important;line-height:1.05!important;margin-top:16px!important}
section.news2 .news2-b{font-family:var(--display);font-size:clamp(19px,1.7vw,24px)!important;line-height:1.5!important;max-width:none!important;margin-top:18px!important}
section.news2 .news2-form{display:grid!important;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;align-items:end}
section.news2 .news2-lab{grid-column:1/-1;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:color-mix(in srgb,var(--champagne-brown) 85%,#666);margin-bottom:10px}
section.news2 .news2-form input{background:transparent!important;border:0!important;border-bottom:1px solid var(--ink-blue)!important;padding:0 4px!important;height:56px;font-size:18px!important}
section.news2 .news2-form:focus-within input{border-bottom-width:2px!important}
section.news2 .news2-btn{height:56px!important;min-height:56px!important;padding:0 30px!important;letter-spacing:3.5px!important}
section.news2 .news2-fine{font-family:var(--label);font-size:14px!important;margin-top:16px!important}
.promises-end{background:#F7F3EC;max-width:none!important;width:100%!important;margin:0!important;padding:clamp(48px,6vw,88px) max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))!important;border:0!important}
.promises-end .promises{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;border:0!important;padding:0!important}
.promises-end .promise{flex-direction:column;align-items:center;text-align:center;gap:18px;padding:8px clamp(12px,2vw,32px)}
.promises-end .promise+.promise{border-left:1px solid color-mix(in srgb,var(--champagne-gold,#C2A27A) 55%,transparent)}
.promises-end .promise svg{width:44px;height:44px;stroke-width:1.2}
.promises-wrap.promises-end .promise b{font-family:var(--display);font-weight:400;font-size:clamp(22px,2vw,28px);line-height:1.2;color:var(--ink-blue)}
.promises-wrap.promises-end .promise span{font-family:var(--display);font-size:16px;line-height:1.55;margin-top:12px;max-width:22ch;margin-inline:auto;color:color-mix(in srgb,var(--ink-blue) 85%,transparent)}
@media(max-width:899px){.promises-end .promises{grid-template-columns:repeat(2,minmax(0,1fr))!important;row-gap:36px!important}.promises-end .promise:nth-child(3){border-left:0}.news2-form{grid-template-columns:minmax(0,1fr)}.news2-btn{margin-top:14px;justify-content:center}}
@media(min-width:900px){.kf-row{grid-auto-columns:calc((100% - 3*clamp(10px,1vw,16px))/4)!important}.kf-c{aspect-ratio:4/5!important}.kf-c .kf-t{font-size:clamp(20px,1.7vw,26px)!important}}
@media(max-width:899px){.kf-row{grid-auto-columns:58%!important}}
section[aria-labelledby="life-h"] .tile .hl{font-size:clamp(24px,2.2vw,30px)!important}
section[aria-labelledby="life-h"] .tile{display:flex!important;flex-direction:column!important}
section[aria-labelledby="life-h"] .campaign{gap:clamp(14px,1.6vw,24px)!important}
section[aria-labelledby="life-h"] .tile{background:transparent!important;padding:0!important;color:var(--ink-blue)!important;box-shadow:none!important;border:0!important}
section[aria-labelledby="life-h"] .tile-photo{aspect-ratio:4/5!important;margin:0 0 20px!important;overflow:hidden}
section[aria-labelledby="life-h"] .tile-photo img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}
section[aria-labelledby="life-h"] .tile:hover .tile-photo img{transform:scale(1.03)}
section[aria-labelledby="life-h"] .tile .hl{font-family:var(--display);text-transform:none!important;letter-spacing:.2px!important;font-size:clamp(20px,1.7vw,24px)!important;line-height:1.25!important;min-height:0!important;margin:0 0 10px!important;font-weight:400;color:var(--ink-blue)!important}
section[aria-labelledby="life-h"] .tile .kicker{font-size:14.5px!important;line-height:23px!important;letter-spacing:.2px!important;text-transform:none!important;margin:0!important;color:color-mix(in srgb,var(--ink-blue) 82%,transparent)!important}
section[aria-labelledby="life-h"] .tile .cta-link{margin-top:auto;padding-top:16px!important;text-transform:none!important;letter-spacing:.3px!important;font-size:15px!important;color:var(--slate-blue)!important;border:0!important;text-decoration:none!important;display:inline-flex;align-items:center;gap:10px;width:fit-content}
section[aria-labelledby="life-h"] .tile .cta-link::after{content:"";width:7px;height:7px;border-right:1.4px solid currentColor;border-top:1.4px solid currentColor;transform:rotate(45deg);transition:transform .25s}
section[aria-labelledby="life-h"] .tile:hover .cta-link::after{transform:translateX(4px) rotate(45deg)}
section[aria-labelledby="life-h"] .tile:hover .cta-link{text-decoration:underline!important;text-underline-offset:5px}
section[aria-labelledby="life-h"] .bq-slot{background:repeating-linear-gradient(135deg,#F1ECE5 0 14px,#ECE6DE 14px 28px)!important}
.t-bq{background:var(--cloud-grey,#D9D6D0)}
@media(min-width:900px){.campaign:has(.bq-slot){grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(min-width:600px) and (max-width:899px){.campaign:has(.bq-slot){grid-template-columns:repeat(2,minmax(0,1fr))!important}}
.bq-slot{display:grid;place-items:center;background:repeating-linear-gradient(135deg,#ECE6DE 0 14px,#E6DFD6 14px 28px);color:color-mix(in srgb,var(--ink-blue) 55%,transparent);font-size:12px;letter-spacing:2px;text-transform:uppercase}
.pdp-flags{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}
.pdp-flags .pdp-off{margin:0!important}
.pdp-low{margin:0;display:inline-flex;align-items:center;padding:6px 14px;border:1px solid var(--slate-blue);border-radius:3px;color:var(--slate-blue);font-size:13px;letter-spacing:2px;text-transform:uppercase;line-height:1.2}
.pdp2 .pdp-ship{display:inline-flex!important;width:fit-content!important;max-width:100%!important;align-self:flex-start;padding:8px 18px!important;font-size:13px!important}
.kf-rw{position:relative}
.kf-arr{position:absolute;top:calc(50% + clamp(20px,2.5vw,36px));transform:translateY(-50%);z-index:3;width:52px;height:52px;border-radius:50%;border:0;background:rgba(244,240,235,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--ink-blue);display:grid;place-items:center;cursor:pointer;transition:background .2s,opacity .2s}
.kf-arr:hover{background:rgba(255,255,255,.95)}
.kf-arr svg{width:20px;height:20px}
.kf-arr[hidden]{display:none}
.kf-prev{left:clamp(14px,2vw,32px)}.kf-next{right:clamp(14px,2vw,32px)}
@media(max-width:899px){.kf-arr{width:42px;height:42px}}
.kf-c .kf-cap{gap:0}
.kf-c .kf-go{display:inline-flex;align-items:center;gap:14px;text-decoration:none;font-size:16px;max-height:0;opacity:0;overflow:hidden;transform:translateY(6px);transition:max-height .45s cubic-bezier(.2,.7,.2,1),opacity .35s,transform .45s cubic-bezier(.2,.7,.2,1),margin .45s}
.kf-c .kf-go svg{width:9px;height:15px}
.kf-c img{transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .5s}
.kf-c::before{content:"";position:absolute;inset:0;z-index:0;background:rgba(236,228,220,.0);transition:background .5s;pointer-events:none}
@media(hover:hover){.kf-c:hover::before,.kf-c:focus-visible::before{background:rgba(236,228,220,.28)}
.kf-c:hover img,.kf-c:focus-visible img{filter:saturate(.55) brightness(1.04);transform:scale(1.02)}
.kf-c:hover .kf-go,.kf-c:focus-visible .kf-go{max-height:40px;opacity:1;transform:none;margin-top:12px}}
@media(hover:none){.kf-c .kf-go{max-height:40px;opacity:1;transform:none;margin-top:10px}}
.kf-head{display:flex;justify-content:flex-start;margin-bottom:clamp(20px,2.4vw,32px)}
.kf-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(10px,1vw,16px);padding-inline:clamp(0px,1vw,16px)}
.kf-big,.kf-c{position:relative;display:block;overflow:hidden;color:#fff;text-decoration:none;background:#E9E4DD}
.kf-big{aspect-ratio:5/4}
.kf-big img,.kf-c img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.kf-big:hover img,.kf-c:hover img{transform:scale(1.03)}
.kf-big::after,.kf-c::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,18,16,.5),rgba(20,18,16,0) 40%);pointer-events:none}
.kf-cap{position:absolute;z-index:1;left:clamp(20px,2.4vw,40px);right:20px;bottom:clamp(20px,2.4vw,36px);display:flex;flex-direction:column;gap:10px}
.kf-t{font-family:var(--display);font-size:clamp(26px,2.6vw,40px);line-height:1.1;letter-spacing:.3px}
.kf-u{font-size:15px;letter-spacing:.4px;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;width:fit-content}
.kf-row{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 2*clamp(10px,1vw,16px))/2.7);gap:clamp(10px,1vw,16px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-top:clamp(40px,5vw,72px);padding-inline:clamp(0px,1vw,16px)}
.kf-row::-webkit-scrollbar{display:none}
.kf-c{aspect-ratio:3/4;scroll-snap-align:start}
.kf-c .kf-t{font-size:clamp(22px,2vw,30px)}
@media(max-width:899px){.kf-duo{grid-template-columns:minmax(0,1fr)}.kf-big{aspect-ratio:4/5}.kf-row{grid-auto-columns:72%;padding-inline:var(--gutter);scroll-padding-inline:var(--gutter)}.kf-duo{padding-inline:var(--gutter)}}
.cat5-photo .cat5-art{inset:0!important}
.cat5-photo .cat5-art img{object-fit:cover!important;mix-blend-mode:normal!important}
.cat5-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,20,20,.32),rgba(20,20,20,0) 28%,rgba(20,20,20,0) 72%,rgba(20,20,20,.3));pointer-events:none}
.cat5-photo .cat5-l,.cat5-photo .cat5-n{z-index:2;color:#fff!important}
.sg-eb{margin:0 0 10px;font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--slate-blue)}
.sg-h{line-height:1.02!important}
.sg{padding-bottom:clamp(56px,7vw,96px)}
.sg-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:clamp(24px,5vw,80px);align-items:end;padding:clamp(16px,2vw,28px) 0 clamp(24px,3vw,36px)}
.sg-h{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:.3px;font-size:clamp(40px,5.6vw,76px);line-height:1.04;margin:0;color:var(--ink-blue)}
.sg-sub{margin:14px 0 0;font-size:clamp(17px,1.6vw,22px);letter-spacing:1px;color:var(--ink-blue)}
.sg-q{position:relative;margin:0;padding-left:22px;border-left:1px solid var(--cloud-grey)}
.sg-q p{margin:0;font-family:var(--display);font-style:italic;font-size:16px;line-height:25px;color:var(--ink-blue)}
.sg-star{position:absolute;left:-60px;bottom:24px;width:40px;height:40px;color:var(--champagne-gold,#C2A27A)}
.sg-wave{display:block;width:210px;margin:14px 0 0 -10px;color:var(--slate-blue)}
.sg-mosaic{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:auto auto;gap:16px}
.sg-mosaic figure{margin:0;overflow:hidden;background:#EEE9E2}
.sg-mosaic img{width:100%;height:100%;object-fit:cover;display:block}
.sg-m1{grid-row:1/3;aspect-ratio:1.1}
.sg-m2,.sg-m3{min-height:0}
.sg-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:20px 0 clamp(28px,3vw,40px);border-bottom:1px solid var(--cloud-grey)}
.sg-cap{margin:0;font-family:var(--display);font-size:clamp(20px,1.8vw,26px);color:var(--ink-blue)}
.sg-link{color:var(--slate-blue);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px;font-size:15px;letter-spacing:.3px;white-space:nowrap}
.sg-link:hover{color:var(--ink-blue)}
.sg-shop{padding-top:clamp(32px,4vw,52px)}
.sg-shop-head{display:flex;align-items:baseline;gap:16px;margin-bottom:22px}
.sg-h2{font-family:var(--display);font-weight:400;text-transform:none;font-size:clamp(26px,2.6vw,35.84px);margin:0;color:var(--ink-blue)}
.sg-n{font-size:14px;color:color-mix(in srgb,var(--ink-blue) 65%,transparent)}
.sg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sg-card figure{margin:0;aspect-ratio:1/1.08;overflow:hidden;background:#EEE9E2}
.sg-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.sg-card:hover img{transform:scale(1.03)}
.sg-card h3{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:.3px;font-size:22px;margin:16px 0 10px;color:var(--ink-blue)}
@media(max-width:899px){.sg-head{grid-template-columns:minmax(0,1fr)}.sg-star{display:none}.sg-mosaic{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sg-m1{grid-column:1/-1;grid-row:auto;aspect-ratio:1/1}.sg-m2,.sg-m3{aspect-ratio:1/1}.sg-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sg-row{flex-wrap:wrap}}
@media(max-width:520px){.sg-grid{grid-template-columns:minmax(0,1fr)}}
@media(min-width:900px){.cat5-hero{order:-1}.cat5-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important}}
.pm-rv-head .hl.hh{font-size:clamp(28px,2.8vw,35.84px)!important}
@media(min-width:900px){.cat5-hero{aspect-ratio:auto!important}.cat5-t{aspect-ratio:1/1!important}}
.cat5-grid{align-items:stretch}
.cat5-tiles{align-content:start;grid-auto-rows:auto!important}
.cat5-hero{min-height:0!important;height:auto}
@media(max-width:899px){.cat5-grid{grid-template-columns:minmax(0,1fr)!important}.cat5-hero{aspect-ratio:4/5!important}.cat5-t{aspect-ratio:1/1}}
.cat5-tiles{grid-auto-rows:auto!important}
@media(min-width:900px){.cat5-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important}}
.cat5-t{aspect-ratio:1/1;min-height:0!important}
.cat5-art{inset:44px 16px 36px 16px!important}
.cat5-hl{position:absolute;left:22px;top:20px;z-index:1;color:#fff;font-family:var(--label);font-size:13px;letter-spacing:2.5px;text-transform:uppercase}
.cat5-hn{position:absolute;right:22px;top:20px;z-index:1;color:rgba(255,255,255,.75);font-size:11px;letter-spacing:1px}
.cat5-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,20,20,.28),rgba(20,20,20,0) 22%);pointer-events:none}
@media(max-width:899px){.cat5-art{inset:38px 12px 30px 12px!important}}
.sg5 .sec-head,.cat5 .sec-head{display:flex;justify-content:space-between;align-items:end;gap:16px}
.sg5 .card-art,.cat5-art{background:#F3F2F0!important}
.cat5-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px}
.cat5-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(200px,1fr);gap:12px}
.cat5-t{position:relative;display:block;background:#F3F2F0;overflow:hidden;text-decoration:none;color:var(--ink-blue);min-height:200px}
.cat5-t.wide{grid-column:1/-1}
.cat5-l{position:absolute;left:18px;top:16px;z-index:1;font-family:var(--label);font-size:13px;letter-spacing:2.5px;text-transform:uppercase}
.cat5-n{position:absolute;left:18px;bottom:14px;z-index:1;font-size:11px;letter-spacing:1px;color:color-mix(in srgb,var(--ink-blue) 55%,transparent)}
.cat5-art{position:absolute;inset:14px 14px 14px 34%;display:block}
.cat5-t.wide .cat5-art{inset:10px 10% 10px 28%}
.cat5-art img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.cat5-t:hover .cat5-art img{transform:scale(1.05)}
.cat5-t:hover .cat5-l{text-decoration:underline;text-underline-offset:5px}
.cat5-hero{position:relative;display:block;overflow:hidden;min-height:100%}
.cat5-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.cat5-hero:hover img{transform:scale(1.03)}
.cat5-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,20,20,.45),rgba(20,20,20,0) 35%)}
.cat5-all{position:absolute;left:22px;bottom:20px;z-index:1;color:#fff;font-size:13px;letter-spacing:2px;text-transform:uppercase;border-bottom:1px solid #fff;padding-bottom:3px}
.cat5-grid{grid-template-columns:minmax(0,1fr)}.cat5-tiles{grid-auto-rows:minmax(150px,auto)}.cat5-t{min-height:160px}.cat5-art{inset:36px 12px 30px 12px}.cat5-t.wide .cat5-art{inset:30px 12px 24px 30%}.cat5-hero{aspect-ratio:4/5;min-height:0}}

@media(min-width:900px){.news2-in{width:calc(100% - 2*var(--gutter))!important;margin-inline:auto!important}}
.news2{background:#F3ECE4!important;text-align:left!important;padding:clamp(48px,6vw,88px) 0!important}
.news2::before{display:none!important}
.news2-in{max-width:var(--maxw)!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"k ." "h form" "b fine" "b msg";column-gap:clamp(32px,6vw,96px);align-items:center;border-top:1px solid #B8ADA2;border-bottom:1px solid #B8ADA2;padding-block:clamp(40px,4.5vw,64px)!important;padding-inline:clamp(0px,4vw,88px)!important}
.news2-k{grid-area:k;color:#9A8B7C!important;opacity:1!important;font-size:12px!important;letter-spacing:3px!important}
.news2-h{grid-area:h;margin:12px 0 0!important;font-size:clamp(36px,3.8vw,54px)!important}
.news2-b{grid-area:b;margin:14px 0 0!important;max-width:36ch!important;font-size:17px!important;line-height:27px!important;align-self:start}
.news2-form{grid-area:form;margin:0!important;max-width:none!important;border:0!important;align-self:end}
.news2-form input{background:#fff!important;border:1px solid #6F6A66!important;border-right:0!important;padding:0 22px!important;height:58px;font-size:16px}
.news2-form:focus-within input{border-color:var(--ink-blue)!important}
.news2-btn{background:var(--ink-blue)!important;color:#fff!important;height:58px;min-height:58px!important;padding:0 26px!important;gap:16px!important;font-size:14px!important;letter-spacing:3px!important;flex:none}
.news2-fine{grid-area:fine;margin:12px 0 0!important;align-self:start}
.news2-msg{grid-area:msg;margin:8px 0 0!important;max-width:none!important;text-align:left;align-self:start}
@media(max-width:899px){.news2-in{grid-template-columns:minmax(0,1fr);grid-template-areas:"k" "h" "b" "form" "fine" "msg";padding-inline:0!important;margin-inline:var(--gutter)!important;width:auto}.news2-b{margin-bottom:24px!important}.news2-btn{padding:0 18px!important;letter-spacing:2px!important}}
.wrap:has(>.shop-head){position:relative;z-index:25}
.pt2-spec{margin:0 0 6px;display:grid;border-top:1px solid var(--cloud-grey)}
.pt2-spec>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--cloud-grey);align-items:baseline}
.pt2-spec dt{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--slate-blue)}
.pt2-spec dd{margin:0;font-size:15px;line-height:22px;color:var(--ink-blue)}
.pt2-body .pt-best{font-size:14px;line-height:22px;margin:6px 0 0}
.pt2-body .pt-best b{display:block;font-weight:400;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--slate-blue);margin-bottom:4px}
.pt2-row{margin-bottom:clamp(40px,5vw,72px)}
.shop-head{position:relative;z-index:20}.sort-dd{z-index:40}
.pt2-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:end;margin-bottom:clamp(32px,4vw,56px)}
.pt2-head .pt-list .hl{margin-bottom:0!important}
.pt2-fig{margin:0;aspect-ratio:16/9;overflow:hidden}
.pt2-fig img{width:100%;height:100%;object-fit:cover;display:block}
.pt2-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:start;border-top:1px solid var(--cloud-grey)}
.pt2-item{border-bottom:1px solid var(--cloud-grey);padding:0 clamp(16px,1.8vw,28px)}
.pt2-item+.pt2-item{border-left:1px solid var(--cloud-grey)}
.pt2-item:first-child{padding-left:0}
.pt2-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"n n tog" "disc disc disc" "name name name" "tag tag tag";gap:8px 10px;padding:24px 0 22px}
.pt2-item summary::-webkit-details-marker{display:none}
.pt2-item .pt-n{grid-area:n;font-family:var(--label);font-size:13px;letter-spacing:2px;color:var(--slate-blue)}
.pt2-disc{grid-area:disc;margin:10px 0 6px}
.pt2-disc svg{width:56px;height:56px;display:block}
.pt2-name{grid-area:name;font-family:var(--display);font-weight:400;font-size:clamp(18px,1.6vw,22px);letter-spacing:2px;text-transform:uppercase;margin:0;color:var(--ink-blue);line-height:1.25}
.pt2-item .pt-tag{grid-area:tag;margin:0}
.pt2-tog{grid-area:tog;justify-self:end;width:14px;height:14px;background:linear-gradient(currentColor,currentColor) center/14px 1.2px no-repeat,linear-gradient(currentColor,currentColor) center/1.2px 14px no-repeat;color:var(--ink-blue);transition:transform .25s}
.pt2-item[open] .pt2-tog{transform:rotate(45deg)}
.pt2-item summary:hover .pt2-name{text-decoration:underline;text-underline-offset:5px}
.pt2-body{padding:0 0 24px;display:grid;gap:8px}
.pt2-body .pt-meta{margin:0}
.pt2-body .cta-link{margin-top:8px;width:fit-content}
@media(max-width:899px){.pt2-head{grid-template-columns:minmax(0,1fr)}.pt2-row{grid-template-columns:minmax(0,1fr)}.pt2-item,.pt2-item:first-child{padding:0}.pt2-item+.pt2-item{border-left:0}
.pt2-item summary{grid-template-columns:auto auto 1fr auto;grid-template-areas:"n disc name tog" "n disc tag tog";align-items:center;gap:2px 14px;padding:18px 0}
.pt2-disc{margin:0}.pt2-disc svg{width:40px;height:40px}}
.jump{display:flex;flex-wrap:wrap;gap:10px 32px!important}
.jump .chip{background:none!important;border:0!important;border-radius:0!important;padding:4px 0!important;min-height:0!important;font-size:15px;letter-spacing:.5px;color:var(--ink-blue);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:6px;transition:text-decoration-color .2s}
.jump .chip:hover,.jump .chip:focus-visible{text-decoration-color:currentColor}
.sort-dd{position:relative;display:inline-block!important}
.sort-btn{display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:8px 2px;font:inherit;font-size:16px;letter-spacing:1px;color:var(--ink-blue);cursor:pointer;white-space:nowrap}
.sort-btn svg{width:14px;height:14px;transform:rotate(180deg);transition:transform .2s}
.sort-dd.open .sort-btn svg{transform:none}
.sort-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);z-index:30;min-width:240px;list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--ink-blue);box-shadow:0 10px 30px rgba(40,40,40,.08)}
.sort-dd.open .sort-menu{display:block}
.sort-menu li+li{border-top:1px solid var(--cloud-grey)}
.sort-menu button{display:block;width:100%;text-align:left;background:#fff;border:0;padding:15px 20px;font:inherit;font-size:16px;letter-spacing:.8px;color:var(--ink-blue);cursor:pointer}
.sort-menu button:hover,.sort-menu button:focus-visible{background:var(--mist-white);outline:none}
.sort-menu button[aria-selected="true"]{background:#EFEDE9}
@media(max-width:899px){.sort-menu{right:0;min-width:220px}.sort-btn{font-size:15px}}
@media(min-width:900px){#active-chips{display:none!important}.shop-head{margin-bottom:28px}}
#shop-count{display:none!important}
@media(min-width:900px){.toolbar:not(:has(.sort)){display:none!important}.shop-head>.sort{align-self:end;justify-self:end;padding-bottom:4px}.shop-head{padding-bottom:28px!important;border-bottom:1px solid var(--cloud-grey)}}
@media(max-width:899px){.toolbar{border-top:0}}
.ctiles .ct-head{margin:clamp(40px,5vw,72px) 0 clamp(20px,2.4vw,32px)}
.pm-gia-full img{object-position:center center!important}
.card .card-price{font-size:19px!important;line-height:26px!important;font-weight:500!important;letter-spacing:.2px!important}
@media(max-width:600px){.card .card-price{font-size:18px!important}}
.news2{background:#EFE7DC;padding:clamp(64px,8vw,112px) 0;text-align:center;position:relative;overflow:hidden}
.news2::before{content:"";position:absolute;left:50%;top:clamp(64px,8vw,112px);width:1px;height:28px;background:var(--champagne-brown);transform:translate(-50%,-44px);opacity:.6}
.news2-in{max-width:640px;margin:0 auto}
.news2-k{font-family:var(--label);font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--ink-blue);opacity:.75;margin:0}
.news2-h{font-family:var(--display);font-weight:400;font-size:clamp(34px,4.4vw,54px);line-height:1.1;letter-spacing:.3px;color:var(--ink-blue);margin:14px 0 0}
.news2-b{font-size:16px;line-height:26px;color:var(--ink-blue);margin:16px auto 0;max-width:42ch}
.news2-form{display:flex;align-items:stretch;margin:36px auto 0;max-width:520px;border-bottom:1px solid var(--ink-blue)}
.news2-form input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:16px;color:var(--ink-blue);padding:14px 4px;outline:none}
.news2-form input::placeholder{color:color-mix(in srgb,var(--ink-blue) 55%,transparent)}
.news2-form:focus-within{border-bottom-width:2px}
.news2-btn{display:inline-flex;align-items:center;gap:10px;border:0;background:none;padding:0 4px 0 16px;font-family:var(--label);font-size:13px;letter-spacing:2.5px;text-transform:uppercase;color:var(--ink-blue);cursor:pointer;min-height:48px}
.news2-btn svg{width:20px;height:20px;transition:transform .25s}
.news2-btn:hover svg{transform:translateX(4px)}
.news2-msg{margin:12px auto 0;max-width:520px;font-size:13px;min-height:0}
.news2-fine{margin:14px 0 0;font-size:12px;letter-spacing:.3px;color:color-mix(in srgb,var(--ink-blue) 70%,transparent)}
@media(max-width:600px){.news2-in{text-align:center}.news2-btn{padding-left:10px;letter-spacing:2px}}
@media(max-width:700px){
.discs{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:72%;gap:14px!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(var(--gutter)*-1);padding-inline:var(--gutter);scroll-padding-inline:var(--gutter)}
.discs::-webkit-scrollbar{display:none}
.discs .disc{scroll-snap-align:start;padding:0 0 8px}
.discs .disc-name{font-size:15px}
}
@media(min-width:701px){.price-row{text-align:left!important}.price-row .pr-k{text-align:left!important;justify-self:start}}
.pdp-ship{display:inline-flex;align-items:center;gap:12px;margin:16px 0 0;padding:10px 22px;border:1px solid var(--ink-blue);border-radius:999px;color:var(--ink-blue);font-size:14px;letter-spacing:.6px;line-height:20px;max-width:100%}
.pdp-ship svg{width:26px;height:19px;flex:none}
@media(max-width:420px){.pdp-ship{font-size:13px;padding:9px 16px;gap:10px}}
.pdp2 .pdp-ship+.p2-buy{margin-top:22px}
.pdp2 .price,.pdp2 #pdp-price{font-size:30px!important;line-height:38px!important}
@media(min-width:900px){.pdp2 .price,.pdp2 #pdp-price{font-size:27px!important;line-height:34px!important}}
.pdp2 .len-ac+.p2-acc{margin-top:0!important;border-top:0!important}
.pdp2 .len-ac{margin-top:28px!important}
.cts{display:none}
.cts-in{margin-top:28px;padding-top:24px;border-top:1px solid var(--cloud-grey)}
.cts-h{font-family:var(--display);font-weight:400;font-size:20px;letter-spacing:.5px;text-align:center;margin:0 0 16px;color:var(--ink-blue)}
.cts-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cts-card{position:relative;background:#fff;padding:8px 8px 12px;display:flex;flex-direction:column;min-width:0}
.cts-art{display:block;aspect-ratio:1;overflow:hidden;background:#fff}
.cts-art img,.cts-art svg{width:100%;height:100%;object-fit:contain;display:block}
.cts-plus{position:absolute;top:8px;right:8px;width:30px;height:30px;border-radius:50%;border:0;background:var(--ink-blue);color:#fff;display:grid;place-items:center;cursor:pointer;padding:0}
.cts-plus svg{width:14px;height:14px;stroke:#fff;fill:none}
.cts-name{font-size:12px;line-height:17px;letter-spacing:.2px;color:var(--ink-blue);text-decoration:none;margin-top:8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cts-price{font-size:13px;margin:6px 0 0;font-weight:500;color:var(--ink-blue)}
@media(min-width:900px){
.cts-in{display:none}
.cts.on{display:flex;position:fixed;top:0;bottom:0;left:0;right:min(440px,100%);z-index:65;flex-direction:column;align-items:center;justify-content:center;gap:26px;pointer-events:none;padding:0 32px}
.cts.on .cts-h{color:#fff;font-size:30px;margin:0}
.cts.on .cts-row{width:min(1080px,100%);gap:14px;pointer-events:auto;grid-template-columns:repeat(3,minmax(0,360px));justify-content:center}
.cts.on .cts-card{padding:14px 18px 20px}
.cts.on .cts-art{aspect-ratio:1.05}
.cts.on .cts-plus{top:14px;right:14px;width:36px;height:36px}
.cts.on .cts-name{font-size:14px;line-height:20px;margin-top:12px}
.cts.on .cts-price{font-size:15px}
}
.p2-tag-m{display:block!important}
.pdp2 .pdp-off{margin-bottom:14px}
@media(min-width:900px){.pdp2 .buy{max-width:none!important}.pdp2{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important}.pdp2 .pdp-title{font-size:clamp(24px,2.1vw,32px)!important;max-width:none}}
.pdp2 .price,.pdp2 #pdp-price{color:color-mix(in srgb,var(--champagne-brown) 78%,#000)!important;font-weight:500}
.pdp2 .pdp-title{max-width:none!important;width:100%!important;text-wrap:wrap!important}
.pdp2 .buy>*{max-width:none}
.p2-tag-m{display:none}
@media(max-width:899px){.pdp2 .buy>.p2-tag{display:none}.p2-tag-m{display:block;margin:0 0 12px}.pdp2 .p2-acc{margin-top:28px}}
.disc .pw{display:block;width:100%;aspect-ratio:1;overflow:hidden;margin-bottom:10px}
.disc .pw .pimg{height:100%;margin:0}
#menu-body .m-ptitle{display:none}
#menu-body .m-back{font-weight:600;font-size:13px;letter-spacing:2px;color:var(--ink-blue);padding:14px 0 10px;gap:12px}
#menu-body .m-back svg{width:12px;height:12px}
#menu-body .m-panel .m-links{gap:0!important;padding:6px 0 0 20px!important}
#menu-body .m-panel .m-links a{border:0!important;padding:15px 0!important;font-size:15px;letter-spacing:1.6px;color:var(--ink-blue);text-decoration:none;min-height:46px;display:flex;align-items:center}
#menu-body .m-panel .m-links a.more{text-decoration:underline;text-underline-offset:4px}
#menu-body .m-sub{padding-left:20px;margin:20px 0 0}
#menu-body .m-panel{display:none}
#menu-body.in-panel .m-root{display:none}
#menu-body.in-panel .m-panel.on{display:block}
.m-row{display:flex;width:100%;justify-content:space-between;align-items:center;gap:12px;padding:20px 0;background:none;border:0;border-bottom:0;font-family:var(--label);font-size:15px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-blue);text-decoration:none;text-align:left;cursor:pointer;min-height:56px}
.m-row svg{width:14px;height:14px;transform:rotate(-90deg);flex:none}
.m-row2{font-family:var(--body);font-size:16px;letter-spacing:1px;text-transform:none;font-weight:500;padding:16px 0;min-height:52px}
.m-hr{border:0;border-top:1px solid var(--ink-blue);margin:14px 0 10px}
.m-back{display:flex;align-items:center;gap:8px;background:none;border:0;padding:14px 0;font-family:var(--body);font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--slate-blue);cursor:pointer}
.m-back svg{width:14px;height:14px;transform:rotate(90deg)}
.m-ptitle{font-family:var(--display);font-weight:400;font-size:26px;margin:4px 0 14px;color:var(--ink-blue)}
.m-sub{font-family:var(--label);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--slate-blue);margin:22px 0 4px}
#menu-body .m-panel .m-links{display:grid;padding:0}
#menu-body .m-panel .m-links a{padding:14px 0;border-bottom:1px solid var(--cloud-grey);font-size:16px}
.rv-stars,.pdp-stars,.pm-score .rv-stars{display:inline-flex!important;gap:2px!important}
.rv-stars svg,.pdp-stars svg,.pm-score .rv-stars svg{width:22px!important;height:22px!important;padding:4px;box-sizing:border-box;background:var(--slate-blue);fill:#fff!important;flex:none}
.pdp-stars svg{width:18px!important;height:18px!important;padding:3px}
@media(max-width:700px){.pm-gia-full{display:none!important}}
.price-row{background:transparent!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin-top:56px!important;padding:0!important;border:0!important;text-align:center}
.price-row .pr-k{grid-column:1/-1;margin:0 0 8px!important;font-family:var(--display);font-size:clamp(24px,2.6vw,34px)!important;letter-spacing:.5px!important;text-transform:none!important;color:var(--ink-blue)!important;line-height:1.2}
.price-row .chip{display:flex!important;align-items:center;justify-content:center;min-height:68px;padding:0 16px!important;border-radius:0!important;font-size:16px!important;letter-spacing:1.5px!important}
@media(max-width:700px){.price-row{grid-template-columns:minmax(0,1fr)!important;gap:14px!important;margin-top:44px!important}.price-row .chip{min-height:64px}}
.pdp2 .len-ac{margin-top:22px;border-top:1px solid var(--cloud-grey)}
.pdp2 .len-ac summary{font-size:12px;letter-spacing:1.5px}
.pdp2 .len-ac-b{padding:0 0 18px}
.pdp2 .len-ac .lengths{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px;background:var(--mist-white)}
.pdp2 .len-ac .bust{max-height:220px;margin:0 auto;display:block}
.pdp2 .len-ac .len{min-height:44px;padding:8px 10px;grid-template-columns:minmax(84px,100px) minmax(0,1fr) auto}
.pdp2 .len-ac .len .ln{font-size:13px}
.pdp2 .len-ac .len-desc{min-height:0;font-size:14px;line-height:22px}
.pdp2 .len-more{margin:12px 0 0;font-size:13px}
.pdp-pricerow{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 16px}
.pdp-pe{background:none;border:0;padding:0;font:inherit;font-size:13px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-blue);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;cursor:pointer;min-height:32px}
.pdp-pe:hover{color:var(--slate-blue)}
.pe-dlg{border:0;padding:0;max-width:min(920px,calc(100vw - 32px));width:100%;max-height:calc(100vh - 48px);background:#fff;color:var(--ink-blue);box-shadow:0 24px 80px rgba(20,25,28,.35);overflow:auto}
.pe-dlg::backdrop{background:rgba(30,34,36,.62)}
.pe-box{position:relative;padding:clamp(28px,4vw,56px)}
.pe-x{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;border:0;background:var(--ink-blue);color:#fff;display:grid;place-items:center;cursor:pointer}
.pe-h{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:2px;font-size:clamp(26px,3.4vw,44px);line-height:1.1;margin:0;padding-right:48px}
.pe-sub{margin:10px 0 0;font-size:clamp(16px,1.6vw,20px);letter-spacing:.6px;color:var(--slate-blue)}
.pe-lead{margin:20px 0 0;max-width:60ch;font-size:15px;line-height:26px}
.pe-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,4vw,64px);margin-top:clamp(24px,3vw,40px);padding-top:clamp(24px,3vw,36px);border-top:1px solid var(--cloud-grey)}
.pe-cols h3{font-family:var(--label);font-weight:400;font-size:15px;letter-spacing:2.2px;text-transform:uppercase;margin:0 0 18px}
.pe-cols ul{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:16px}
.pe-cols li b{display:block;font-weight:500;font-size:15px}.pe-cols li span{display:block;margin-top:2px;font-size:14px;line-height:22px;color:var(--slate-blue)}
@media(max-width:699px){.pe-cols{grid-template-columns:minmax(0,1fr)}}
.pdp-off{align-self:flex-start;margin:0 0 14px;padding:6px 14px;background:var(--slate-blue);color:#fff;font-family:var(--label);font-size:12px;line-height:16px;letter-spacing:2.2px;text-transform:uppercase;border-radius:2px}
.pdp-rv{display:inline-flex;align-items:center;gap:10px;margin-top:10px;width:fit-content;color:var(--ink-blue);text-decoration:none;font-size:14px;line-height:20px}
.pdp-rv:hover span:last-child{text-decoration:underline;text-underline-offset:3px}
.pdp-stars{display:inline-flex;gap:3px}.pdp-stars svg{width:16px;height:16px;fill:var(--champagne-gold,#C2A27A)}
.pdp-rv b{font-weight:500}
.pdp2 .g-wrap{box-shadow:0 0 0 1px #EEE8DD}
.pdp2 .g-heart{top:18px;right:18px;width:54px;height:54px;background:#fff;box-shadow:0 0 0 1px #E4DCCF,0 4px 14px rgba(60,45,30,.12)}
.pdp2 .g-heart svg{width:27px;height:27px}
.pdp2 .g-heart:hover{box-shadow:0 0 0 1px var(--slate-blue),0 4px 14px rgba(60,45,30,.16)}

@media(min-width:900px){
.pdp2{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,88px)}
.pdp2 .g-main{aspect-ratio:1}
.pdp2 .buy{max-width:480px}
.pdp2 .pdp-title{font-size:clamp(22px,1.9vw,28px);line-height:1.22;letter-spacing:.3px;margin-top:10px}
.pdp2 .price{font-size:18px;line-height:26px;margin-top:12px}
.pdp2 .p2-tag{font-size:14px;line-height:23px;color:var(--slate-blue)}
.pdp2 .p2-buy{max-width:360px;margin-top:22px}
.pdp2 .p2-buy .qty,.pdp2 .p2-buy .btn{min-height:46px}
.pdp2 .p2-icons{margin-top:24px;gap:8px;font-size:11px}
.pdp2 .p2-icons li svg{width:22px;height:22px}
}
.pdp2 .g-main img{padding:0}

.press-marquee{background:#EFE9DF;padding:clamp(16px,1.8vw,24px) 0}
.press-marquee .pm-mq-track{--g:clamp(72px,9vw,144px);gap:var(--g)}
.press-marquee .pm-mq-track a{color:#6B5E52;opacity:1}
.press-marquee .pm-mq-track a:hover{opacity:1;color:var(--deep-walnut)}
.press-marquee .pl-a{font-size:clamp(20px,2vw,28px)}
.press-marquee .pl-b{font-size:clamp(15px,1.5vw,21px);letter-spacing:5px}
.press-marquee .pl-c{font-size:clamp(18px,1.8vw,25px)}
.press-marquee .pl-d{font-size:clamp(32px,3.1vw,44px)}
.press-marquee .pl-e{font-size:clamp(11px,1vw,14px);letter-spacing:2.6px}

.proofmix .pm-rv{order:-1;background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='260'%20height='260'%3E%3Cfilter%20id='n'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='.85'%20numOctaves='3'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='0%200%200%200%20.38%20%200%200%200%200%20.3%20%200%200%200%200%20.22%20%200%200%200%20.2%200'/%3E%3C/filter%3E%3Crect%20width='100%25'%20height='100%25'%20filter='url%28%23n%29'/%3E%3C/svg%3E"),radial-gradient(90% 70% at 20% 10%,rgba(255,255,255,.55) 0,rgba(255,255,255,0) 60%),color-mix(in srgb,var(--slate-blue) 11%,#F5F0E6);background-blend-mode:multiply,normal,normal;padding:clamp(40px,5vw,84px) clamp(28px,5vw,88px)}
.proofmix .pm-rv-head .hl{font-size:clamp(32px,3.3vw,52px);line-height:1.1}
.proofmix .pm-slide blockquote{font-size:clamp(18px,1.6vw,24px);line-height:1.7;max-width:46ch}
.proofmix .pm-score{font-size:clamp(15px,1.2vw,18px)}
.proofmix .pm-slide .rv-by{font-size:15px}
@media(min-width:1100px){.proofmix{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}}
.press-marquee + .hsec.hrail{padding-top:clamp(48px,5.5vw,80px)}

.au3-ban{background:#F4F0E8;line-height:0}.au3-ban img{display:block;width:100%;height:auto;min-height:150px;object-fit:cover;object-position:50% 50%}
.au3-story{padding-block:clamp(16px,2vw,28px) clamp(40px,5vw,72px);background:linear-gradient(180deg,#F7F3EC,#F4EFE6)}
.au3-orn{display:flex;align-items:center;gap:20px;color:var(--champagne-brown,#A8876A)}.au3-orn span{flex:1;height:1px;background:currentColor;opacity:.45}
.au3-story-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,7fr);align-items:center;margin-top:clamp(28px,3.4vw,48px)}
.au3-story-l{padding-right:clamp(24px,5vw,80px)}
.au3-story-r{padding-left:clamp(24px,5vw,80px);border-left:1px solid rgba(120,95,70,.3)}
.au3-eb{margin:0 0 10px;font-family:var(--label);font-size:12px;letter-spacing:2.6px;text-transform:uppercase;color:var(--champagne-brown,#A8876A)}
.au3-story .hl{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:1.5px;font-size:clamp(28px,3.3vw,50px);line-height:1.1;margin:0;color:var(--ink-blue)}
.au3-story-r p{margin:0;font-size:clamp(15px,1.15vw,17px);line-height:1.75;max-width:62ch;color:var(--ink-blue)}.au3-story-r p+p{margin-top:20px}
.au3-tl{background:linear-gradient(180deg,#EDE2D3,#E8DCCB);padding-block:clamp(28px,3vw,44px) clamp(36px,4vw,60px)}
.au3-ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(28px,3.4vw,52px);position:relative;--g:clamp(28px,3.4vw,52px)}
.au3-ol::before{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:rgba(120,95,70,.4)}
.au3-ol li{position:relative;padding-top:clamp(28px,2.6vw,36px)}
.au3-ol li+li::after{content:"";position:absolute;left:calc(var(--g)/-2);top:clamp(28px,2.6vw,36px);bottom:0;width:1px;background:rgba(120,95,70,.25)}
.au3-dot{position:absolute;top:0;left:clamp(40px,12vw,180px);width:12px;height:12px;border-radius:50%;background:#F4EFE6;border:1px solid var(--champagne-brown,#A8876A);z-index:1}
.au3-ol li:last-child .au3-dot{background:var(--champagne-brown,#A8876A)}
.au3-img{display:block;width:100%;aspect-ratio:2.2/1;object-fit:cover}
.au3-year{margin:14px 0 0;font-family:var(--display);font-size:clamp(26px,2.6vw,36px);letter-spacing:.5px;color:#7A5A44;line-height:1.1}
.au3-t{margin:6px 0 0;font-family:var(--label);font-weight:400;font-size:13px;letter-spacing:2.4px;text-transform:uppercase;color:var(--ink-blue)}
.au3-t::after{content:"";display:block;width:28px;height:1px;background:#A8876A;margin-top:12px}
.au3-d{margin:12px 0 0;font-size:15px;line-height:23px;max-width:34ch;color:var(--ink-blue)}
@media(max-width:999px){.au3-ol{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}.au3-ol::before{display:none}.au3-ol li{padding-top:0}.au3-ol li:nth-child(odd)::after{display:none}.au3-ol li+li::after{top:0}.au3-dot{display:none}}
@media(max-width:599px){.au3-story-grid{grid-template-columns:minmax(0,1fr);gap:20px}.au3-story-l,.au3-story-r{padding:0;border:0}.au3-ol{grid-template-columns:minmax(0,1fr)}.au3-ol li::after{display:none!important}.au3-ban img{min-height:130px}}

.au2-vip{padding-block:clamp(40px,5vw,72px) clamp(40px,5vw,64px);background:radial-gradient(120% 90% at 0 0,#F1E9DD 0,rgba(255,255,255,0) 45%),radial-gradient(100% 80% at 100% 100%,#EFE6D8 0,rgba(255,255,255,0) 40%),#fff}
.au2-head{text-align:center;max-width:820px;margin:0 auto clamp(24px,3vw,40px)}
.au2-eb{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 0 10px;font-family:var(--label);font-size:12px;letter-spacing:2.6px;text-transform:uppercase;color:var(--ink-blue)}
.au2-eb::before,.au2-eb::after{content:"";flex:0 0 clamp(32px,6vw,72px);height:1px;background:var(--ink-blue);opacity:.35}
.au2-head .hl{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:2px;font-size:clamp(28px,3.6vw,52px);line-height:1.1;margin:0;color:var(--ink-blue)}
.au2-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
.au2-card{background:rgba(255,255,255,.78);border:1px solid rgba(160,140,120,.25);padding:6px 6px clamp(20px,2vw,28px);display:flex;flex-direction:column}
.au2-img{display:block;width:100%;aspect-ratio:460/188;object-fit:cover}
.au2-card-b{display:grid;grid-template-columns:auto 1fr;gap:clamp(12px,1.6vw,22px);padding:clamp(18px,2vw,26px) clamp(14px,1.8vw,24px) 0;align-items:start}
.au2-card-b .au-ic{width:38px;height:38px;margin-top:2px;color:var(--slate-blue);fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.au2-h3{font-family:var(--display);font-weight:400;font-size:clamp(17px,1.5vw,21px);letter-spacing:2px;text-transform:uppercase;margin:0 0 10px;color:var(--ink-blue)}
.au2-p{margin:0 0 14px;font-size:15px;line-height:24px;color:var(--ink-blue)}
.au2-card .cta-link{font-size:12px;min-height:0;padding:0}
.au2-cta{text-align:center;margin-top:clamp(24px,3vw,40px)}
.au2-mis{padding-block:clamp(36px,4.5vw,64px) clamp(40px,5vw,72px);background:linear-gradient(180deg,#EEE5D8 0,#E8DCCB 100%);color:var(--ink-blue)}
.au2-q{font-family:var(--display);font-size:clamp(20px,2.4vw,32px);line-height:1.35;margin:0;letter-spacing:.3px;text-wrap:balance}
.au2-vals{--g:clamp(28px,3.4vw,52px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--g)}
.au2-val{position:relative}.au2-val+.au2-val::before{content:"";position:absolute;left:calc(var(--g)/-2);top:0;bottom:0;width:1px;background:rgba(90,70,50,.2)}
.au2-vimg{display:block;width:100%;aspect-ratio:2.7/1;object-fit:cover}
.au2-num{margin:14px 0 0;padding-top:12px;border-top:1px solid rgba(90,70,50,.3);font-size:12px;letter-spacing:2px;color:var(--slate-blue)}
.au2-val .au2-h3{margin:4px 0 8px}.au2-val .au2-p{font-size:14px;line-height:22px;margin:0}
@media(max-width:999px){.au2-cards{grid-template-columns:minmax(0,1fr);max-width:560px;margin-inline:auto}.au2-vals{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}.au2-val:nth-child(odd)::before{display:none}}
@media(max-width:539px){.au2-vals{grid-template-columns:minmax(0,1fr)}.au2-val::before{display:none!important}.au2-cta .btn{width:100%;justify-content:center}}

.pt-sec{padding-block:clamp(24px,3vw,40px) clamp(56px,7vw,96px)}
.pt-grid{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,9fr);gap:clamp(32px,6vw,96px);align-items:start}
.pt-fig{margin:0;position:sticky;top:96px;background:var(--cloud-grey);overflow:hidden}
.pt-fig img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;object-position:74% 50%}
.pt-list .hl{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:.4px;font-size:clamp(26px,3vw,40px);line-height:1.15;margin:10px 0 clamp(28px,3.4vw,44px);color:var(--ink-blue)}
.pt-item{display:grid;gap:6px;margin-bottom:clamp(32px,3.4vw,40px)}
.pt-name{display:flex;align-items:center;gap:14px}.pt-n{font-family:var(--label);font-size:14px;letter-spacing:2px;color:var(--slate-blue)}
.pt-name svg{width:36px;height:36px;flex:none}.pt-name h3{margin:0}
.pt-name h3{font-family:var(--display);font-weight:400;font-size:clamp(20px,1.9vw,26px);letter-spacing:2px;text-transform:uppercase;margin:0}
.pt-name h3 a{color:var(--ink-blue);text-decoration:none}
.pt-tag{margin:2px 0 0;font-size:15px;letter-spacing:.6px;color:var(--slate-blue)}
.pt-meta{margin:6px 0 0;font-size:14px;line-height:22px;letter-spacing:.3px}
.pt-best{margin:0;font-size:14px;line-height:22px;max-width:44ch}
.pt-item .cta-link{margin-top:8px;width:fit-content}
.pt-cmp{margin-top:clamp(56px,7vw,104px)}
.pt-cmp .hl{font-family:var(--display);font-weight:400;font-size:clamp(24px,2.6vw,34px);margin:0 0 clamp(20px,2.4vw,32px);color:var(--ink-blue)}
.pt-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,24px)}
.pt-col{padding:clamp(20px,2vw,28px);background:var(--mist-white);border-radius:6px}
.pt-col-h{font-family:var(--display);font-size:16px;letter-spacing:2px;text-transform:uppercase;margin:0 0 16px;color:var(--ink-blue)}
.pt-col dl{margin:0;display:grid;gap:2px}.pt-col dt{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--slate-blue);margin-top:12px}
.pt-col dd{margin:0;font-size:15px;line-height:22px}
.pt-cta{margin-top:clamp(40px,5vw,64px);padding:clamp(24px,3vw,36px);background:var(--mist-white);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.pt-cta p{margin:0;font-family:var(--display);font-size:clamp(20px,2vw,26px)}
.gd-hfig{display:none}
.gd-head.gd-has-fig{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(32px,6vw,96px);align-items:center}
.gd-has-fig>*{grid-column:1}.gd-has-fig>.gd-hfig{display:block;grid-column:2;grid-row:1/5;margin:0;overflow:hidden;border-radius:4px;max-height:340px}
.gd-hfig img{display:block;width:100%;height:100%;min-height:240px;max-height:340px;object-fit:cover;object-position:50% 62%}
.gd-has-fig>.gd-tabs,.gd-has-fig>.gd-menu{grid-column:1/-1}
@media(max-width:899px){.pt-grid{grid-template-columns:minmax(0,1fr)}.pt-fig{position:static}.pt-fig img{aspect-ratio:4/3}
.pt-cols{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:calc(var(--gutter)*-1);padding-inline:var(--gutter);padding-bottom:8px}.pt-col{flex:0 0 72%;scroll-snap-align:start}
.gd-head.gd-has-fig{display:block}.gd-has-fig>.gd-hfig{margin-top:20px;max-height:220px}.gd-hfig img{min-height:0;max-height:220px}}

.cw-how,.cw-start{position:relative;overflow:hidden;isolation:isolate;color:var(--ink-blue)}
.cw-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.cw-how .cw-bg{object-position:center top}.cw-start .cw-bg{object-position:center 70%}
.cw-how{padding-block:clamp(32px,4vw,56px) clamp(40px,5vw,72px)}
.cw-head .hl{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:2px;font-size:clamp(30px,4vw,56px);line-height:1.05;margin:0}
.cw-head .kicker,.cw-start-copy .kicker{margin-top:12px;font-size:15px;letter-spacing:2.4px;color:inherit}
.cw-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,24px);margin:clamp(24px,3vw,40px) 0 0;padding:0;list-style:none}
.cw-step{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding:clamp(20px,2.2vw,32px);min-height:clamp(220px,20vw,290px);background:rgba(250,248,242,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.7);border-radius:10px;box-shadow:0 6px 24px rgba(80,66,50,.07)}
.cw-art{position:absolute;top:0;right:0;width:58%;aspect-ratio:4/3;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 40%),linear-gradient(0deg,transparent 0,#000 30%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 40%),linear-gradient(0deg,transparent 0,#000 30%);mask-composite:intersect;pointer-events:none}
.cw-n{position:relative;font-family:var(--display);font-size:clamp(40px,4vw,58px);line-height:1;color:var(--slate-blue);padding-bottom:14px;margin-bottom:6px;border-bottom:1px solid var(--cloud-grey);width:62%}
.cw-step h3{position:relative;font-family:var(--display);font-weight:400;font-size:clamp(20px,1.8vw,26px);letter-spacing:1.5px;text-transform:uppercase;margin:0;color:var(--ink-blue)}
.cw-step p{position:relative;font-size:15px;line-height:24px;margin:0;color:var(--ink-blue)}
.cw-start{color:#fff}
.cw-start::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(110,84,66,.4) 0,rgba(110,84,66,0) 50%)}
.cw-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,80px);align-items:center;min-height:clamp(300px,31vw,440px);padding-block:clamp(40px,5vw,64px)}
.cw-start-copy .hl{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:2px;font-size:clamp(30px,3vw,46px);white-space:nowrap;line-height:1.05;margin:0;color:#fff}
.cw-start-copy .kicker{color:#fff;letter-spacing:2.4px;margin-top:14px}
.cw-btn{display:inline-flex;align-items:center;gap:14px;margin-top:clamp(20px,2.4vw,32px);padding:16px 30px;background:var(--pearl-white,#F7F4EA);color:var(--ink-blue);font-family:var(--label);font-size:14px;letter-spacing:2.4px;text-transform:uppercase;text-decoration:none;border-radius:3px;min-height:48px}
.cw-btn:hover{background:#fff}.cw-btn svg{width:18px;height:18px}
.cw-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:clamp(16px,2.4vw,36px);padding:clamp(24px,2.8vw,44px);background:rgba(250,248,242,.94);color:var(--ink-blue);border-radius:10px;box-shadow:0 10px 36px rgba(60,40,25,.18)}
.cw-card .eyebrow{font-family:var(--display);font-size:16px;letter-spacing:2.4px;text-transform:uppercase;margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--cloud-grey)}
.cw-card .body{margin:0;max-width:46ch;font-size:15px;line-height:26px}
.cw-note{margin-top:14px;font-size:13px;line-height:20px;color:var(--slate-blue)}.cw-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.cw-card-side{display:flex;flex-direction:column;justify-content:center;gap:14px;padding-left:clamp(16px,2.4vw,36px);border-left:1px solid var(--cloud-grey);min-width:150px}
.cw-cal{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--cloud-grey);color:var(--slate-blue)}
.cw-side-t{margin:0;font-family:var(--label);font-size:13px;line-height:26px;letter-spacing:2.2px;text-transform:uppercase}
@media(max-width:999px){.cw-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.cw-split{grid-template-columns:minmax(0,1fr);min-height:0}.cw-start .cw-bg{object-position:30% 75%}.cw-start::after{background:linear-gradient(0deg,rgba(110,84,66,0) 0,rgba(110,84,66,.3) 100%)}}
@media(max-width:599px){.cw-steps{grid-template-columns:minmax(0,1fr)}.cw-card{grid-template-columns:minmax(0,1fr)}.cw-card-side{border-left:0;border-top:1px solid var(--cloud-grey);padding:16px 0 0;display:grid;grid-template-columns:auto 1fr;column-gap:18px;row-gap:6px;align-items:center}.cw-cal{grid-row:1/3}.cw-side-t{text-align:left}.cw-step{min-height:0}.cw-btn{width:100%;justify-content:center}.cw-art{width:50%}}

@media(max-width:899px){
.cta-link{white-space:normal;max-width:100%;line-height:18px;padding-block:6px}
.foot a{display:inline-flex;align-items:center;min-height:40px}
.crumbs{align-items:center}.crumbs a{display:inline-flex;align-items:center;min-height:32px}
.hcar-dot{position:relative}.hcar-dot::after{content:"";position:absolute;inset:-18px -6px}
.pl-a,.pl-b,.pl-c,.pl-e{min-height:40px;display:inline-flex;align-items:center}
.check{min-height:44px}
input,select,textarea{font-size:16px}
img,video{max-width:100%}
}
.gd-head{margin-bottom:clamp(40px,5vw,72px)}

.gd-head{padding-top:clamp(8px,2vw,24px)}
.gd-eb{font-family:var(--body,'Noto Sans'),sans-serif;font-size:12px;line-height:18px;letter-spacing:1.6px;text-transform:uppercase;color:var(--slate-blue);margin:0}
.gd-head h1{font-family:var(--display);font-weight:400;font-size:clamp(32px,4.4vw,56px);line-height:1.1;letter-spacing:.4px;text-transform:none;color:var(--ink-blue);margin:14px 0 0}
.gd-intro{margin-top:16px;max-width:54ch;color:var(--slate-blue)}
.gd-tabs{display:flex;flex-wrap:wrap;gap:4px 30px;margin-top:clamp(24px,3vw,36px);border-bottom:1px solid var(--cloud-grey)}
.gd-tabs a{position:relative;padding:12px 0;font-size:14px;line-height:20px;color:var(--slate-blue);text-decoration:none}
.gd-tabs a:hover{color:var(--ink-blue)}
.gd-tabs a[aria-current="page"]{color:var(--ink-blue)}
.gd-tabs a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--slate-blue)}
.gd-menu{display:none}
.gd-choose{padding-block:clamp(28px,3.5vw,48px) clamp(40px,5vw,72px)}
.gd-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.gd-card{display:flex;flex-direction:column;gap:12px;min-width:0}
.gd-card-art{display:block;aspect-ratio:4/5;background:var(--shell-beige,#EFE8DA);overflow:hidden}
.gd-card-art img{display:block;width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}
.gd-card h2{font-family:var(--display);font-weight:400;font-size:clamp(18px,1.7vw,22px);line-height:1.25;letter-spacing:.3px;text-transform:none;color:var(--ink-blue);margin:6px 0 0}
.gd-card p{margin:0;font-size:14px;line-height:22px;color:var(--slate-blue)}
.gd-card .cta-link{align-self:flex-start;margin-top:auto;padding-top:4px}
.gd-gift{display:flex;justify-content:center;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:clamp(32px,4vw,56px);padding:22px 20px;background:var(--mist-white);text-align:center;color:var(--ink-blue);text-decoration:none;font-size:15px}
.gd-gift b{font-weight:500;border-bottom:1px solid var(--slate-blue)}
@media(max-width:760px){
.gd-tabs{display:none}
.gd-menu{display:block;margin-top:24px;border:1px solid var(--cloud-grey)}
.gd-menu summary{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;font-size:14px;list-style:none;color:var(--slate-blue)}
.gd-menu summary::-webkit-details-marker{display:none}
.gd-menu summary b{font-weight:500;color:var(--ink-blue)}
.gd-menu div{display:flex;flex-direction:column;border-top:1px solid var(--cloud-grey)}
.gd-menu div a{padding:12px 16px;font-size:14px;color:var(--ink-blue);text-decoration:none}
.gd-menu div a[aria-current="page"]{background:var(--mist-white)}
.gd-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}
.gd-card p{font-size:13px;line-height:20px}
}

.cu-hero,.has-hero #view > .hero.cu-hero:first-child{display:block;position:relative;overflow:hidden;min-height:0;aspect-ratio:auto;height:min(calc(100svh - 52px),135vw)}
.cu-hero-bg{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 30%}
.cu-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(236,236,236,.85) 0,rgba(236,236,236,.4) 35%,rgba(236,236,236,0) 55%)}
.cu-hero-copy{position:absolute;z-index:2;left:var(--gutter);right:var(--gutter);top:auto;bottom:64px;max-width:none;padding:0;background:none;color:var(--ink-blue)}
.cu-hero-copy{display:flex;flex-direction:column-reverse;align-items:flex-start}.cu-hero-copy .kicker{margin:0 0 12px}.cu-hero-copy .hl-hero{margin:0}
@media(min-width:900px){
.cu-hero::before{background:linear-gradient(90deg,rgba(236,236,236,.5) 0,rgba(236,236,236,.18) 30%,rgba(236,236,236,0) 46%)}
.cu-hero-copy{left:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));right:auto;bottom:110px;max-width:min(36vw,520px)}
}

.pr-page{padding-bottom:clamp(48px,6vw,88px)}
.pr-head{padding-top:clamp(8px,2vw,24px)}
.pr-eb{font-family:var(--body,'Noto Sans'),sans-serif;font-size:12px;line-height:18px;letter-spacing:2.4px;text-transform:uppercase;color:var(--slate-blue);margin:0}
.pr-head .hl{margin-top:14px}
.pr-lede{margin-top:16px;max-width:46ch;color:var(--slate-blue)}
.pr-tabs{display:flex;gap:32px;margin-top:clamp(28px,3.5vw,44px);border-bottom:1px solid var(--cloud-grey)}
.pr-tab{appearance:none;background:none;border:0;padding:14px 0;font:inherit;font-size:14px;line-height:20px;color:var(--slate-blue);cursor:pointer;position:relative}
.pr-tab:hover{color:var(--ink-blue)}
.pr-tab[aria-selected="true"]{color:var(--ink-blue)}
.pr-tab[aria-selected="true"]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--slate-blue)}
.pr-panel[hidden]{display:none}
.pr-feat{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);margin-top:clamp(24px,3vw,36px)}
.pr-feat-l{background:var(--mist-white);padding:clamp(24px,3.4vw,48px);display:flex;flex-direction:column;justify-content:space-between;gap:28px;min-height:clamp(260px,26vw,340px)}
.pr-outlet{font-family:var(--display);font-size:clamp(34px,4.2vw,60px);line-height:1.04;letter-spacing:1px;color:var(--ink-blue);margin:0}
.pr-feat-r{background:var(--pearl-white);padding:clamp(24px,3.4vw,48px);display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.pr-date{font-size:14px;line-height:20px;color:var(--slate-blue);margin:0}
.pr-feat-h{font-family:var(--display);font-weight:400;font-size:clamp(22px,2.5vw,34px);line-height:1.22;letter-spacing:.4px;color:var(--ink-blue);margin:0;max-width:24ch}
.pr-read{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-bottom:6px;font-size:14px;line-height:20px;color:var(--ink-blue);text-decoration:none;border-bottom:1px solid var(--slate-blue)}
.pr-read:hover{border-bottom-color:var(--ink-blue)}
.pr-label{display:flex;justify-content:space-between;gap:16px;margin-top:clamp(36px,4.5vw,60px);padding-bottom:14px;border-bottom:1px solid var(--cloud-grey)}
.pr-label-top{margin-top:clamp(24px,3vw,36px)}
.pr-list{list-style:none;margin:0;padding:0}
.pr-row{display:grid;grid-template-columns:minmax(150px,250px) minmax(0,1fr) 36px;gap:clamp(16px,3vw,40px);align-items:center;padding:24px 0;border-bottom:1px solid var(--cloud-grey)}
.pr-src b{display:block;font-weight:500;font-size:13px;line-height:20px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink-blue)}
.pr-src span{display:block;font-size:13px;line-height:20px;color:var(--slate-blue);margin-top:2px}
.pr-title{font-family:var(--display);font-size:clamp(17px,1.6vw,21px);line-height:1.35;letter-spacing:.3px;color:var(--ink-blue);text-decoration:none}
.pr-title:hover{text-decoration:underline;text-underline-offset:4px}
.pr-alt{display:block;width:fit-content;margin-top:10px;font-size:13px}.pr-main{min-width:0}
.pr-go{display:inline-flex;justify-content:center;color:var(--slate-blue);text-decoration:none}
.pr-row:hover .pr-go,.pr-go:hover{color:var(--ink-blue)}
.pr-foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:clamp(28px,3.5vw,44px);padding-top:24px}
.pr-foot-t{margin:0;font-size:14px;line-height:22px;color:var(--slate-blue)}
.pr-foot-t a{color:var(--ink-blue)}
.pr-foot .pr-read{margin-top:0}
@media(max-width:760px){
.pr-feat{grid-template-columns:1fr}
.pr-row{grid-template-columns:minmax(0,1fr) 28px;gap:8px 12px;padding:20px 0}
.pr-src{grid-column:1;grid-row:1}.pr-main{grid-column:1;grid-row:2}.pr-go{grid-column:2;grid-row:1/3;align-self:center}
}

.hcs-2 .hcs-bg{object-position:center 58%}
@media(max-width:899px){.hcs-2 .hcs-bg{object-position:center 30%}}
@media(min-width:900px){.hcs-2::before{background:linear-gradient(90deg,rgba(15,15,15,.62) 0,rgba(15,15,15,.3) 40%,rgba(15,15,15,0) 70%)}}

@media(min-width:900px){
.hcs-1 .hcs-copy{left:auto;right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));top:auto;bottom:110px;text-align:right;max-width:min(36vw,520px)}
.hcs-1 .hero-ctas{justify-content:flex-end}
.hcs-1::before{background:linear-gradient(270deg,rgba(236,236,236,.45) 0,rgba(236,236,236,.15) 28%,rgba(236,236,236,0) 44%)}
.hcs-1 .hcs-bg{object-position:center 30%}
}

.feature-art.fit{background:var(--fbg,var(--shell-beige))}
.feature-art.fit img{object-fit:contain;object-position:center}

.hrail + .ctiles{padding-top:0}
.ctiles + .hsec.hrail{padding-top:clamp(64px,8vw,96px)}

/* ---------- AR dialog ---------- */
.ar-dlg .pe-box{max-width:720px}
.ar-body{display:grid;gap:14px}
.ar-fallback{font-size:17px;line-height:26px}
.ar-btn{position:absolute;left:50%;bottom:16px;transform:translateX(-50%)}
model-viewer{display:block;position:relative;--poster-color:transparent}

/* footer accordion on narrow screens / zoom */
.foot-col{min-width:0}
.foot-col>summary{list-style:none;cursor:default}
.foot-col>summary::-webkit-details-marker{display:none}
.foot-col>summary h3{margin:0}
@media(min-width:900px){.foot-col>summary{margin-bottom:14px}}
.foot-col>summary .fc-chev{display:none}
@media(max-width:899px){
html body .foot-grid{display:flex!important;flex-direction:column;gap:0!important}
html body .foot-grid>.foot-brand{padding-bottom:28px;border-bottom:1px solid color-mix(in srgb,var(--ink-blue) 14%,transparent)}
.foot-col{border-bottom:1px solid color-mix(in srgb,var(--ink-blue) 14%,transparent)}
.foot-col>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:4px 0}
.foot-col>summary h3{font-size:13px!important;letter-spacing:2.2px}
.foot-col>summary .fc-chev{display:block;width:16px;height:16px;transition:transform .25s}
.foot-col[open]>summary .fc-chev{transform:rotate(180deg)}
.foot-col>ul{padding-bottom:18px!important}
.foot-col>summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
}

/* promises: one vertical list on narrow screens / zoom */
@media(max-width:899px){
html body .hv-prom{grid-template-columns:minmax(0,1fr)!important;gap:0!important}
html body .hv-prom li,html body .hv-prom li:nth-child(odd){padding:18px 0!important;border-left:0!important;border-top:1px solid color-mix(in srgb,var(--ink-blue) 12%,transparent)}
html body .hv-prom li:first-child{border-top:0}
}

html body .foot-bottom a{font:inherit!important;font-size:12px!important;line-height:18px!important;color:inherit!important;letter-spacing:inherit!important;text-transform:none!important}
html body .foot-bottom p,html body .foot-bottom li{font-size:12px;line-height:18px}

/* ===== reviews on photo ground ===== */
html body .hv-rv4{position:relative;isolation:isolate;overflow:hidden;min-height:600px;padding:0!important;background:#F4F0E8!important;border:0!important;display:block!important}
html body .hv-rv4::before,html body .hv-rv4::after{content:none!important}
html body .hv-rv4 .hv-rv-bg,html body .hv-rv4 .hv-rv-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:-1;display:block}
html body .hv-rv-score{position:absolute;top:40px;right:44px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;color:var(--ink-deep)}
html body .hv-rv-score b{font-family:'Belleza','Optima',sans-serif;font-weight:400;font-size:76px;line-height:.9;letter-spacing:-1px}
html body .hv-rv-score .hv-stars svg{width:24px;height:24px;fill:var(--ink-deep)}
html body .hv-rv-n{font:500 16px/1.3 'Noto Sans',system-ui,sans-serif;color:var(--ink-deep)}
html body .hv-rv-src{font:400 13px/1.3 'Noto Sans',system-ui,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--ed-b,#57524D)}
html body .hv-rv-card{position:absolute;left:36px;bottom:36px;width:min(400px,calc(100% - 72px));padding:28px 30px 22px;text-align:center;background:rgba(247,244,234,.74);-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1);border:1px solid rgba(255,255,255,.7);border-radius:20px;box-shadow:0 18px 40px -24px rgba(48,53,56,.35)}
html body .hv-rv-card>.hv-stars{justify-content:center;margin-bottom:14px}
html body .hv-rv-card>.hv-stars svg{width:18px;height:18px;fill:var(--ink-deep)}
html body .hv-rv4 .hv-qs{display:grid;min-height:0}
html body .hv-rv4 .hv-q{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s}
html body .hv-rv4 .hv-q.on{opacity:1;visibility:visible}
html body .hv-rv4 .hv-q blockquote{margin:0;font:400 18px/1.55 'Noto Sans',system-ui,sans-serif;color:var(--ink-deep)}
html body .hv-rv4 .hv-q figcaption{margin-top:14px;display:flex;flex-direction:column;gap:2px;align-items:center}
html body .hv-rv4 .hv-q figcaption b{font:500 15px/1.4 'Noto Sans',system-ui,sans-serif}
html body .hv-rv4 .hv-q figcaption b::before{content:'– '}
html body .hv-rv4 .hv-q figcaption span{font-size:12px;color:var(--ed-m,#6F6861)}
html body .hv-rv4 .hv-qd{display:flex;justify-content:center;gap:6px;margin-top:16px}
html body .hv-rv4 .hv-qd button{width:18px;height:2px;padding:0;border:0;background:rgba(48,53,56,.22);cursor:pointer}
html body .hv-rv4 .hv-qd button[aria-current=true]{background:var(--ink-deep)}
html body .hv-rv-foot{position:absolute;right:44px;bottom:40px;display:flex;flex-direction:column;align-items:flex-end;gap:14px}
html body .hv-rv-next{border:0;background:none;padding:0;cursor:pointer;font-family:'Belleza','Optima',sans-serif;font-size:26px;line-height:1;color:var(--ink-deep)}
html body .hv-rv-next span{font-size:24px;margin-left:4px}
html body .hv-rv-all{font:400 12px/1.4 'Noto Sans',system-ui,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-deep);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px;display:inline-flex;align-items:center;gap:6px}
html body .hv-rv-all .hv-ar{width:11px;height:11px}
@media(max-width:699px){
html body .hv-rv4{min-height:720px}
html body .hv-rv4 .hv-rv-bg img{object-position:center top}
html body .hv-rv-score{top:24px;right:20px;align-items:flex-end}
html body .hv-rv-score b{font-size:56px}
html body .hv-rv-score .hv-stars svg{width:18px;height:18px}
html body .hv-rv-n{font-size:14px}
html body .hv-rv-card{left:16px;right:16px;bottom:84px;width:auto;padding:22px 20px 18px}
html body .hv-rv4 .hv-q blockquote{font-size:16px}
html body .hv-rv-foot{left:20px;right:20px;bottom:24px;flex-direction:row-reverse;justify-content:space-between;align-items:center}
html body .hv-rv-next{font-size:20px}
}
/* ===== footer subscribe: pill field ===== */
html body .foot-news{display:block;margin-top:22px;max-width:440px}
html body .foot-news>label{display:block;margin:0 0 14px;font:400 24px/1.2 'Belleza','Optima',sans-serif;letter-spacing:0;text-transform:none;color:var(--ink-deep)}
html body .foot-news-row{position:relative;display:flex!important;align-items:center;height:58px;padding:5px;background:#fff;border:1px solid color-mix(in srgb,var(--ink-blue) 18%,transparent);border-radius:999px;box-shadow:none}
html body .foot-news-row:focus-within{border-color:var(--ink-deep)}
html body .foot-news-row input{flex:1;min-width:0;height:100%;padding:0 18px 0 20px;border:0!important;outline:0;background:transparent!important;font:400 15px/1 'Noto Sans',system-ui,sans-serif;color:var(--ink-deep);box-shadow:none!important}
html body .foot-news-row input::placeholder{color:var(--ed-b,#57524D)}
html body .foot-news-row button{flex:none;height:100%;padding:0 24px;border:0;border-radius:999px;background:var(--ink-deep);color:#fff;font:500 14px/1 'Noto Sans',system-ui,sans-serif;letter-spacing:.2px;text-transform:none;cursor:pointer;transition:background .2s}
html body .foot-news-row button:hover{background:var(--slate-blue)}
html body .foot-news-note{margin:12px 0 0 4px;font:400 12px/1.5 'Noto Sans',system-ui,sans-serif;color:var(--ed-b,#57524D)}
html body .foot-news-note a{color:inherit;text-decoration:underline;text-underline-offset:2px}
/* ===== home on white ===== */
html[data-route=home] body{background:#fff}
/* ===== legal pages ===== */
html body .lg-page{padding-bottom:88px}
html body .lg-head{padding:28px 0 36px;border-bottom:1px solid color-mix(in srgb,var(--ink-blue) 12%,transparent);margin-bottom:48px}
html body .lg-head .hl{margin:0 0 10px}
html body .lg-grid{display:grid;grid-template-columns:260px minmax(0,680px);gap:72px;align-items:start}
html body .lg-toc{position:sticky;top:120px;max-height:calc(100vh - 140px);overflow:auto}
html body .lg-toc-h{margin:0 0 14px;font:400 12px/1.4 'Noto Sans',system-ui,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--ed-m,#6F6861)}
html body .lg-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
html body .lg-toc a{display:block;padding:6px 0 6px 14px;border-left:1px solid color-mix(in srgb,var(--ink-blue) 12%,transparent);font:400 14px/1.4 'Noto Sans',system-ui,sans-serif;color:var(--ed-b,#57524D);text-decoration:none}
html body .lg-toc a:hover{color:var(--ink-deep);border-left-color:var(--ink-deep)}
html body .lg-body{font:400 16px/1.75 'Noto Sans',system-ui,sans-serif;color:var(--ink-blue)}
html body .lg-body p{margin:0 0 16px}
html body .lg-intro p{font-size:18px;line-height:1.7;color:var(--ink-deep)}
html body .lg-sec{padding-top:36px;margin-top:20px;border-top:1px solid color-mix(in srgb,var(--ink-blue) 10%,transparent);scroll-margin-top:120px}
html body .lg-sec h2{display:flex;align-items:baseline;gap:16px;margin:0 0 14px;font:400 26px/1.25 'Belleza','Optima',sans-serif;color:var(--ink-deep)}
html body .lg-n{font:400 12px/1 'Noto Sans',system-ui,sans-serif;letter-spacing:1.4px;color:var(--ed-m,#6F6861)}
html body .lg-sec ul{margin:0 0 16px;padding-left:20px}
html body .lg-sec li{margin:0 0 8px}
html body .lg-sec li::marker{color:var(--shell-beige)}
html body .lg-contact dl{display:grid;grid-template-columns:90px 1fr;gap:10px 20px;margin:8px 0 0}
html body .lg-contact dt{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ed-m,#6F6861);padding-top:3px}
html body .lg-contact dd{margin:0}
html body .lg-contact a{color:var(--ink-deep)}
html body .lg-also{margin-top:40px!important}
@media(max-width:899px){
html body .lg-grid{grid-template-columns:minmax(0,1fr);gap:28px}
html body .lg-toc{position:static;max-height:none;padding:18px 20px;background:color-mix(in srgb,var(--pearl-white) 70%,#fff);border:1px solid color-mix(in srgb,var(--ink-blue) 10%,transparent)}
html body .lg-head{margin-bottom:28px;padding-bottom:24px}
html body .lg-sec h2{font-size:22px}
html body .lg-intro p{font-size:16px}
}
html body .hv-rv-n,html body .hv-rv-src{border:0!important;text-decoration:none!important;padding:0!important}
@media(max-width:699px){
html body .hv-rv4{display:flex!important;flex-direction:column;align-items:stretch;gap:18px;min-height:0;padding:236px 16px 22px!important}
html body .hv-rv-score{position:static;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 12px}
html body .hv-rv-score b{font-size:48px;flex-basis:100%;text-align:center}
html body .hv-rv-card{position:static;width:auto}
html body .hv-rv-foot{position:static;flex-direction:row-reverse;justify-content:space-between;align-items:center;padding:0 4px}
html body .hv-rv-next,html body .hv-rv-all{white-space:nowrap}
html body .hv-rv-next{font-size:20px}
}

/* ===== FAQ hero ===== */
html body .faq-hero{position:relative;overflow:hidden;background:#F4E9DE;aspect-ratio:2560/1068;max-height:640px;min-height:420px;width:100%}
html body .faq-hero picture,html body .faq-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 50%;display:block}
html body .faq-hero-copy{position:absolute;inset:0;display:flex;align-items:center}
html body .faq-hero-copy .wrap{width:100%}
html body .faq-hero-tx{max-width:min(460px,38%)}
html body .faq-hero .hl{margin:0 0 14px;color:var(--ink-deep);font-size:clamp(34px,4vw,58px);line-height:1.08}
html body .faq-hero .kicker{margin:0;color:var(--ed-b,#57524D)}
html body .faq-head{padding-top:8px}
html body .faq-head .jump{margin-top:0}
@media(max-width:699px){
html body .faq-hero{aspect-ratio:auto;min-height:0;max-height:none;display:flex;flex-direction:column}
html body .faq-hero picture,html body .faq-hero img{position:static;height:auto;aspect-ratio:1473/1068;object-position:center}
html body .faq-hero-copy{position:static;padding:22px 0 6px;background:#fff}
html body .faq-hero-tx{max-width:none}
html body .faq-hero .hl{font-size:32px}
}
/* ===== footer subscribe: bottom right ===== */
html body .foot-sub{display:flex;justify-content:flex-end;margin-top:44px}
html body .foot-sub .foot-news{margin:0;width:100%;max-width:460px}
@media(max-width:899px){html body .foot-sub{justify-content:stretch;margin-top:28px}html body .foot-sub .foot-news{max-width:none}}
html body .foot-bottom ul a{display:inline!important;padding:0!important;min-height:0!important}
html body .foot-bottom ul li{min-height:0!important}
html body .foot-news-note{line-height:18px!important}
html body .foot-news-note a{display:inline!important;padding:0!important;min-height:0!important;line-height:inherit!important}

/* ===== Sage: original drawing inset ===== */
html body .sg-card figure{position:relative}
html body .sg-sketch{position:absolute;right:14px;bottom:14px;width:34%;max-width:170px;margin:0;padding:7px 7px 6px;background:#fff;box-shadow:0 10px 24px -12px rgba(48,53,56,.45),0 1px 2px rgba(48,53,56,.12);transform:rotate(-2.5deg);transform-origin:bottom right;transition:transform .3s ease}
html body .sg-card:hover .sg-sketch{transform:rotate(0) scale(1.04)}
html body .sg-sketch img{display:block;width:100%;height:auto;aspect-ratio:302/247;object-fit:cover}
html body .sg-sketch span{display:block;margin-top:5px;font:400 10px/1.2 'Noto Sans',system-ui,sans-serif;letter-spacing:1.2px;text-transform:uppercase;color:var(--ed-m,#6F6861);text-align:center}
@media(max-width:699px){html body .sg-sketch{width:38%;right:10px;bottom:10px;padding:5px 5px 4px}html body .sg-sketch span{font-size:9px;letter-spacing:.8px}}
html body .sg-sketch{width:29%;max-width:150px}
@media(max-width:699px){html body .sg-sketch{width:32%}}
html body .sg-sketch span{white-space:nowrap;letter-spacing:.6px;font-size:9.5px}

html body .sg-sketch img{aspect-ratio:1/1!important}

html body .m-row2{font-family:var(--label)!important;font-size:15px!important;letter-spacing:2px!important;text-transform:uppercase!important;font-weight:400!important;padding:20px 0!important;min-height:56px!important;color:var(--ink-blue)!important}
html body #menu .m-hr{border:0;border-top:1px solid color-mix(in srgb,var(--ink-blue) 14%,transparent);margin:8px 0}

/* ===== reviews v2: hand + Tahitian strand ===== */
@media(min-width:900px){html body .hv-pf{grid-template-columns:minmax(0,5fr) minmax(0,7fr)!important}}
html body .hv-rv4{min-height:0!important;aspect-ratio:1122/1402;background:#F2ECE2!important}
html body .hv-rv4 .hv-rv-bg img{object-position:center center}
html body .hv-rv4 .hv-rv-score{top:5.5%;right:auto;left:54%;gap:4px}
html body .hv-rv4 .hv-rv-score b{font-size:clamp(46px,4.6vw,68px)}
html body .hv-rv4 .hv-rv-score .hv-stars svg{width:clamp(16px,1.5vw,22px);height:clamp(16px,1.5vw,22px)}
html body .hv-rv4 .hv-rv-card{left:4.5%;bottom:3%;top:auto;width:47%;min-height:35.5%;padding:20px 16px 14px;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}
html body .hv-rv4 .hv-rv-card>.hv-stars{margin-bottom:10px}
html body .hv-rv4 .hv-rv-card>.hv-stars svg{width:15px;height:15px}
html body .hv-rv4 .hv-q blockquote{font-size:15px!important;line-height:1.5!important;max-width:none!important}
html body .hv-rv4 .hv-q figcaption{margin-top:10px}
html body .hv-rv4 .hv-qd{margin-top:12px}
html body .hv-rv4 .hv-rv-foot{right:4%;bottom:4%;left:auto;gap:10px}
html body .hv-rv4 .hv-rv-next{font-size:clamp(18px,1.7vw,24px)}
@media(max-width:899px){html body .hv-pf .hv-rv4{max-width:560px;width:100%;margin:0 auto}}
@media(max-width:699px){
html body .hv-rv4{display:block!important;aspect-ratio:auto;padding:0 0 18px!important;min-height:0!important}
html body .hv-rv4 .hv-rv-bg{position:relative;display:block;z-index:0}
html body .hv-rv4 .hv-rv-bg img{position:static;width:100%;height:auto;aspect-ratio:1122/1402}
html body .hv-rv4 .hv-rv-score{position:absolute;top:4.5%;left:54%;right:auto;flex-direction:column;align-items:flex-start;gap:3px}
html body .hv-rv4 .hv-rv-score b{font-size:44px;flex-basis:auto;text-align:left}
html body .hv-rv4 .hv-rv-card{position:relative;left:auto;bottom:auto;width:auto;min-height:0;margin:-14% 14px 0;z-index:1}
html body .hv-rv4 .hv-rv-foot{position:static;display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;margin:16px 18px 0}
}
@media(max-width:699px){html body .hv-rv4 .hv-rv-bg{height:auto!important;inset:auto!important}}
@media(max-width:699px){html body .hv-rv4 .hv-rv-card{right:auto!important;left:auto!important}}

html body .hv-rv4 .hv-stars svg{fill:#1E9E6A!important}
html body .hv-rv4 .hv-rv-next{text-decoration:none;color:var(--ink-deep);display:inline-flex;align-items:baseline;gap:6px}
html body .hv-rv4 .hv-rv-next:hover{color:#1E9E6A}
html body .hv-rv4 .hv-rv-all{display:none!important}

/* reviews v3: gift box flat lay */
@media(min-width:900px){html body .hv-pf{grid-template-columns:minmax(0,7fr) minmax(0,5fr)!important}}
html body .hv-rv4{aspect-ratio:1586/992!important;background:#EBC2AE!important}
html body .hv-rv4 .hv-rv-score{top:5%;left:3%!important;right:auto!important;padding:14px 18px 12px;background:rgba(247,244,234,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px}
html body .hv-rv4 .hv-rv-score b{font-size:clamp(38px,3.4vw,54px)!important}
html body .hv-rv4 .hv-rv-card{left:3%!important;bottom:4%!important;width:35%!important;min-height:0!important}
html body .hv-rv4 .hv-rv-foot{right:3%!important;bottom:2.5%!important}
html body .hv-rv4 .hv-rv-next{font-size:clamp(16px,1.4vw,20px)!important}
@media(max-width:699px){
html body .hv-rv4{aspect-ratio:auto!important}
html body .hv-rv4 .hv-rv-bg img{aspect-ratio:1586/992!important}
html body .hv-rv4 .hv-rv-score{top:10px;left:10px!important;padding:8px 12px;border-radius:12px}
html body .hv-rv4 .hv-rv-score b{font-size:30px!important}
html body .hv-rv4 .hv-rv-score .hv-rv-n{font-size:12px}html body .hv-rv4 .hv-rv-score .hv-rv-src{font-size:10px}
html body .hv-rv4 .hv-rv-card{width:auto!important;margin:-6% 14px 0!important;left:auto!important;bottom:auto!important}
}

html body .au-orca{background:#fff;padding:clamp(56px,7vw,112px) var(--gutter,24px)}
html body .au-orca picture,html body .au-orca img{display:block;width:100%;max-width:1320px;height:auto;margin:0 auto}
@media(max-width:699px){html body .au-orca{padding:44px 20px}html body .au-orca img{max-width:420px}}

/* services as cards */
html body .svc-grid-sec{padding-block:clamp(24px,3vw,48px) clamp(48px,6vw,88px)}
html body .svc-grid-sec .hl{text-transform:none;letter-spacing:.3px}
html body .svc-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
html body .svc-grid .svc-card{grid-column:span 2;scroll-margin-top:120px}
html body .svc-grid .svc-card:nth-child(n+4){grid-column:span 3}
html body .svc-card .au2-img{aspect-ratio:460/260}
html body .svc-card-b{padding:clamp(18px,2vw,26px) clamp(16px,1.8vw,24px) 0;display:flex;flex-direction:column;flex:1}
html body .svc-card-k{margin:0 0 6px;font:400 12px/1.4 'Noto Sans',system-ui,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--slate-blue)}
html body .svc-card .au2-h3{text-transform:none;letter-spacing:.2px;font-size:clamp(20px,1.8vw,24px)}
html body .svc-card-p p{margin:0 0 10px}
html body .svc-card-links{margin-top:auto;padding-top:8px;display:flex;flex-wrap:wrap;gap:10px 22px}
html body .svc-card .cta-link{text-transform:none;letter-spacing:.3px;font-size:15px;color:var(--slate-blue)}
@media(min-width:1000px){html body .svc-grid .svc-card:nth-child(n+4) .au2-img{aspect-ratio:700/260}}
@media(max-width:999px){html body .svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html body .svc-grid .svc-card,html body .svc-grid .svc-card:nth-child(n+4){grid-column:span 1}html body .svc-grid .svc-card:last-child{grid-column:1/-1}}
@media(max-width:639px){html body .svc-grid{grid-template-columns:minmax(0,1fr)}html body .svc-grid .svc-card:last-child{grid-column:auto}}

/* services hero: collage with built-in title */
html body .svc-hero:not(.bl-hero),html body .has-hero #view > .svc-hero:not(.bl-hero):first-child{min-height:0!important;aspect-ratio:1935/812!important;max-height:none!important}
html body .svc-hero:not(.bl-hero)::before{display:none!important}
html body .svc-hero:not(.bl-hero) .svc-hero-bg{object-fit:cover;object-position:center}

/* certificate: crop in on the Jewelry Images column */
html body .hv-pf-cf .hv-cf-fig{background:#fff}
html body .hv-pf-cf .hv-cf-fig img,html body .hv-pf-cf .hv-cf-fig:hover img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:0 62%;transform:none!important;box-shadow:none;transition:scale .5s ease;transform-origin:30% 40%}
html body .hv-pf-cf .hv-cf-fig:hover img{scale:1.03}

/* services: one grid in the VIP card style */
html body .svc-all .svc-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
html body .svc-all .au2-img{aspect-ratio:16/10}
html body .svc-all .au2-card-b{height:100%;box-sizing:border-box}
html body .svc-all .au2-card-b>div{display:flex;flex-direction:column;height:100%}
html body .svc-all .svc-card-links{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px 18px}
html body .svc-all .au2-card .au2-card-b{flex:1}
html body .svc-all [id^="g-"]{scroll-margin-top:120px}
@media(max-width:1199px){html body .svc-all .svc-cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}}
@media(max-width:639px){html body .svc-all .svc-cards{grid-template-columns:minmax(0,1fr)}}

/* category tiles 20% taller */

/* reviews: size from the column width, never overflow into the certificate */
html body .hv-pf{align-items:start}
html body .hv-pf .hv-rv4{align-self:start;width:100%;max-width:100%;min-width:0;height:auto!important;box-sizing:border-box}
html body .hv-pf>*{min-width:0}
html body .hv-pf .hv-pf-cf{align-self:stretch}

/* rating badge: two lines */
html body .hv-rv4 .hv-rv-score{display:grid!important;grid-template-columns:auto auto;align-items:center;column-gap:12px;row-gap:2px;padding:12px 18px!important}
html body .hv-rv4 .hv-rv-score b{line-height:1;font-size:clamp(32px,2.8vw,44px)!important}
html body .hv-rv4 .hv-rv-score .hv-rv-n{grid-column:1/-1;font-size:14px}
@media(max-width:699px){html body .hv-rv4 .hv-rv-score b{font-size:28px!important}html body .hv-rv4 .hv-rv-score .hv-rv-n{font-size:12px}}
/* review card: centred on the photo, 30% wider */
@media(min-width:700px){html body .hv-rv4 .hv-rv-card{left:50%!important;top:50%!important;bottom:auto!important;width:45.5%!important;transform:translate(-50%,-50%)}}
/* signatures: tall product tiles, tight gutters (bestseller-row reference) */
html body .hv-sig .hv-row{grid-auto-columns:calc((100% - 3 * var(--sp-grid))/4);gap:var(--sp-grid)}
html body .hv-sig .hv-pc-img{aspect-ratio:4/5}
html body .hv-sig .hv-pc-img img{object-fit:contain;padding:9%;box-sizing:border-box}
html body .hv-sig .hv-pc-n{margin-top:18px;font-size:14px}
@media(max-width:899px){html body .hv-sig .hv-row{grid-auto-columns:46%;gap:var(--sp-grid)}}

html body .sg-sketch span{display:none!important}
html body .sg-sketch{padding:6px!important}
/* services: 5 cards — 3 then 2 */
@media(min-width:1200px){html body .svc-all .svc-cards{grid-template-columns:repeat(6,minmax(0,1fr))}html body .svc-all .svc-cards>.au2-card{grid-column:span 2}html body .svc-all .svc-cards>.au2-card:nth-child(n+4){grid-column:span 3}}
html body .svc-all .au2-img{object-position:center 40%}
@media(min-width:1200px){html body .svc-all .svc-cards>.au2-card:nth-child(n+4) .au2-img{aspect-ratio:24/10}}
html body .svc-all #g-bridal .au2-img{object-position:center 18%}

/* newsletter band at top of footer (centred, underline field) */
html body .foot .foot-sub{display:flex;justify-content:center;margin:0 0 clamp(36px,4vw,56px);padding:clamp(36px,4vw,56px) 0;border-bottom:1px solid color-mix(in srgb,var(--ink-blue) 14%,transparent)}
html body .foot .foot-sub .foot-news{max-width:560px;width:100%;margin:0;text-align:center}
html body .foot .foot-news>label{margin:0 0 22px;font:400 15px/1.3 var(--display,'Belleza'),sans-serif;letter-spacing:2.4px;text-transform:uppercase;color:var(--ink-deep)}
html body .foot .foot-news-row{height:auto;padding:0;background:transparent;border:0;border-radius:0;align-items:stretch;gap:0}
html body .foot .foot-news-row input{height:48px;padding:0 4px;border:0!important;border-bottom:1px solid var(--ink-deep)!important;border-radius:0;background:transparent!important;font-size:15px;text-align:left}
html body .foot .foot-news-row button{height:48px;padding:0 34px;border-radius:0;background:var(--ink-deep);font:500 12px/1 'Noto Sans',sans-serif;letter-spacing:1.8px;text-transform:uppercase}
html body .foot .foot-news-msg{text-align:center}
@media(max-width:899px){html body .foot .foot-sub{margin-top:0}}
@media(max-width:480px){html body .foot .foot-news-row button{padding:0 20px}}

/* blog hero: orca wordmark */
html body .bl-orca{background:#fff;padding:clamp(40px,6vw,96px) var(--gutter,24px) clamp(24px,3vw,48px)}
html body .bl-orca picture,html body .bl-orca img{display:block;width:100%;max-width:1320px;height:auto;margin:0 auto}
@media(max-width:699px){html body .bl-orca{padding:32px 20px 16px}html body .bl-orca img{max-width:420px}}

/* blog orca hero: full bleed */
html body .bl-orca{padding-left:0!important;padding-right:0!important}
html body .bl-orca picture,html body .bl-orca img{max-width:none!important;width:100%!important}
html body .pr-orca-sub{margin:clamp(20px,2.5vw,36px) var(--gutter,24px) 0;text-align:center;font:400 15px/1.5 "Noto Sans",sans-serif;color:var(--ed-b,#57524D)}
html body .pr-orca-sub a{color:var(--ink-deep)}
/* pearl guide topics: VIP card grid */
html body .gd-all .gd-cards{grid-template-columns:repeat(4,minmax(0,1fr))!important}
html body .gd-all .gd-cards>.au2-card{grid-column:auto!important}
html body .gd-cimg{display:block;aspect-ratio:16/10;overflow:hidden;background:#F5F3EE}
html body .gd-cimg .au2-img,html body .gd-cimg svg{width:100%;height:100%;aspect-ratio:auto!important;object-fit:cover;display:block}
html body .gd-cimg.contain .au2-img{object-fit:contain;padding:6%;box-sizing:border-box}
@media(max-width:1199px){html body .gd-all .gd-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:639px){html body .gd-all .gd-cards{grid-template-columns:minmax(0,1fr)!important}}
html body .gd-cimg{position:relative}
html body .gd-cimg svg.gd-cert{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;transform:none!important}
/* rating merged into the review card */
html body .hv-rv4 .hv-rv-head{display:flex;align-items:center;justify-content:center;gap:10px 12px;flex-wrap:wrap;padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid rgba(48,53,56,.12)}
html body .hv-rv4 .hv-rv-head b{font:400 34px/1 var(--display,'Belleza'),serif;color:var(--ink-deep)}
html body .hv-rv4 .hv-rv-head .hv-stars svg{width:17px;height:17px;fill:#1E9E6A!important}
html body .hv-rv4 .hv-rv-head .hv-rv-n{font:400 14px/1.3 'Noto Sans',sans-serif;color:var(--ink-blue)}
/* services: all cards the same size (3 + 2 centred) */
@media(min-width:1200px){html body .svc-all:not(.gd-all) .svc-cards{grid-template-columns:repeat(6,minmax(0,1fr))!important}
html body .svc-all:not(.gd-all) .svc-cards>.au2-card,html body .svc-all:not(.gd-all) .svc-cards>.au2-card:nth-child(n+4){grid-column:span 2!important}
html body .svc-all:not(.gd-all) .svc-cards>.au2-card:nth-child(4){grid-column:2/span 2!important}
html body .svc-all:not(.gd-all) .svc-cards>.au2-card:nth-child(n+4) .au2-img{aspect-ratio:16/10!important}}
@media(min-width:640px) and (max-width:1199px){html body .svc-all:not(.gd-all) .svc-cards>.au2-card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 8px);justify-self:center}}
html body #view>.press-marquee:last-child{margin-top:clamp(40px,5vw,72px)}

/* card header on one line; each review keeps its own 5 stars */
html body .hv-rv4 .hv-rv-head{flex-wrap:nowrap!important;gap:10px!important}
html body .hv-rv4 .hv-rv-head b{font-size:30px!important}
html body .hv-rv4 .hv-rv-head .hv-rv-n{white-space:nowrap}
html body .hv-rv4 .hv-q figcaption{display:flex;flex-direction:column;align-items:center;gap:6px}
html body .hv-rv4 .hv-q-stars{display:inline-flex;gap:2px}
html body .hv-rv4 .hv-q-stars svg{width:13px!important;height:13px!important;fill:#1E9E6A!important}
@media(max-width:420px){html body .hv-rv4 .hv-rv-head{flex-wrap:wrap!important}}

html body .pdp-mto{display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--slate-blue)}
html body .pdp-mto svg{width:15px;height:15px}

/* home: reviews only, certificate column removed */
@media(min-width:900px){html body .hv-pf{grid-template-columns:minmax(0,1fr)!important;border:0!important}}
html body .hv-pf .hv-rv4{aspect-ratio:1586/760!important}
/* PDP certificate add-on */
html body .pdp-addon{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:start;margin:4px 0 18px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--ink-blue) 16%,transparent);border-radius:12px;cursor:pointer;position:relative;transition:border-color .2s,background .2s}
html body .pdp-addon:hover{border-color:var(--ink-deep)}
html body .pdp-addon input{position:absolute;opacity:0;pointer-events:none}
html body .pdp-addon-box{width:18px;height:18px;margin-top:1px;border:1px solid var(--ink-blue);border-radius:4px;display:grid;place-items:center;background:#fff}
html body .pdp-addon input:checked+.pdp-addon-box{background:var(--ink-deep);border-color:var(--ink-deep)}
html body .pdp-addon input:checked+.pdp-addon-box::after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
html body .pdp-addon input:focus-visible+.pdp-addon-box{outline:2px solid var(--ink);outline-offset:2px}
html body .pdp-addon:has(input:checked){border-color:var(--ink-deep);background:color-mix(in srgb,var(--pearl-white) 60%,#fff)}
html body .pdp-addon-t{display:flex;flex-direction:column;gap:3px}
html body .pdp-addon-t b{font:500 14px/1.35 'Noto Sans',sans-serif;color:var(--ink-deep)}
html body .pdp-addon-t span{font:400 13px/1.5 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .li-cert{color:var(--slate-blue)!important}
html body .press-marquee+.hv-pf{margin-top:var(--sp-s)}

html body img[src*="svcimg-restring"]{object-position:40% 52%}
html body .hv-bq+.designer{margin-top:var(--sp-l)!important}
html body .hv-bq+.press-marquee{margin-top:clamp(48px,6vw,96px)}
html body .hv-pf+.designer{margin-top:var(--sp-m)!important}
html body .hv-bq+.hv-pf{margin-top:var(--sp-m)!important}
/* review card: narrower, taller, quote-led */
@media(min-width:700px){
html body .hv-rv4 .hv-rv-card{width:min(700px,60%)!important;min-height:290px!important;padding:40px 44px 26px!important;border-radius:18px!important;display:flex!important;flex-direction:column;box-sizing:border-box}
html body .hv-rv4 .hv-rv-head{padding-bottom:12px!important;margin-bottom:22px!important;gap:8px!important}
html body .hv-rv4 .hv-rv-head b{font-size:24px!important}
html body .hv-rv4 .hv-rv-head .hv-stars svg{width:14px!important;height:14px!important}
html body .hv-rv4 .hv-rv-head .hv-rv-n{font-size:13px!important;letter-spacing:.3px}
html body .hv-rv4 .hv-qs{flex:1}
html body .hv-rv4 .hv-q{display:flex;flex-direction:column;justify-content:space-between}
html body .hv-rv4 .hv-q blockquote{font-size:clamp(20px,1.5vw,22px)!important;line-height:1.55!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
html body .hv-rv4 .hv-q figcaption{margin-top:20px!important}
html body .hv-rv4 .hv-qd{margin-top:22px!important}
}
/* review quote: italic body, bold name (Open Sans-style reference) */
html body .hv-rv4 .hv-q blockquote{font-family:'Noto Sans',system-ui,sans-serif!important;font-style:italic!important;font-weight:400!important;color:#5E5A57!important;letter-spacing:0}
html body .hv-rv4 .hv-q figcaption b{font:600 16px/1.4 'Noto Sans',system-ui,sans-serif!important;color:#4A4744}
html body .hv-rv4 .hv-q figcaption b::before{content:none!important}
html body .hv-cat-i{aspect-ratio:4/5}
/* category labels on the image, white */
html body .hv-cat{position:relative;display:block}
html body .hv-cat-i{position:relative}
html body .hv-cat-i::after{content:"";position:absolute;inset:auto 0 0 0;height:38%;background:linear-gradient(to top,rgba(20,22,24,.42),rgba(20,22,24,0));pointer-events:none}
html body .hv-cat-l{position:absolute;left:clamp(14px,1.6vw,22px);bottom:clamp(12px,1.4vw,20px);margin:0!important;color:#fff!important;font:400 clamp(15px,1.25vw,18px)/1.2 'Noto Sans',sans-serif;letter-spacing:.4px;text-shadow:0 1px 8px rgba(0,0,0,.25);z-index:1}
/* about: VIP treatment + hours */
html body .au-vip-k{margin:clamp(22px,2.4vw,32px) 0 10px;font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:var(--slate-blue)}
html body .au-vip{list-style:none;margin:0;padding:0;max-width:46ch;display:grid;gap:12px}
html body .au-vip li{display:grid;gap:2px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--ink-blue) 14%,transparent)}
html body .au-vip b{font:500 15px/1.4 'Noto Sans',sans-serif;color:var(--ink-deep)}
html body .au-vip span{font-size:14.5px;line-height:1.6;color:var(--ed-b,#57524D)}
html body .au-art-copy .hero-ctas{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
html body .au-hours{display:flex;flex-wrap:wrap;gap:10px 36px;margin:16px 0 0}
html body .au-hours div{display:grid;gap:2px}
html body .au-hours dt{font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:1.4px;text-transform:uppercase;color:var(--slate-blue)}
html body .au-hours dd{margin:0;font:400 15px/1.5 'Noto Sans',sans-serif;color:var(--ink-deep)}
html body .au-hours a{color:inherit}
html body .gal-cap{font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-blue)}
/* Zhang Eclipse editorial (Sage layout) */
html body .ec .ec-moon{color:var(--ink-blue)}
html body .ec .ec-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 18px}
@media(max-width:1099px){html body .ec .ec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){html body .ec .sg-mosaic{grid-template-rows:minmax(0,1fr) minmax(0,1fr);height:clamp(560px,50vw,760px)}html body .ec .sg-m1{aspect-ratio:auto}html body .ec .sg-m2,html body .ec .sg-m3{min-height:0}}
/* Eclipse: text on the image */
html body .ec .sg-mosaic{margin-top:clamp(8px,1vw,16px)}
html body .ec .ec-hero{position:relative}
html body .ec .ec-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,26,28,.62) 0%,rgba(24,26,28,.34) 42%,rgba(24,26,28,0) 70%),linear-gradient(0deg,rgba(24,26,28,.35),rgba(24,26,28,0) 45%);pointer-events:none}
html body .ec .ec-ov{position:absolute;left:clamp(22px,3.4vw,52px);bottom:clamp(22px,3.4vw,52px);max-width:min(440px,72%);z-index:1;color:#fff}
html body .ec .ec-eb{margin:0 0 12px;font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.88)}
html body .ec .ec-h{margin:0;font:400 clamp(38px,4.6vw,66px)/1.04 var(--display,'Belleza'),serif;letter-spacing:.3px;text-transform:none;color:#fff}
html body .ec .ec-sub{margin:14px 0 0;font:400 clamp(16px,1.4vw,20px)/1.4 'Noto Sans',sans-serif;letter-spacing:.6px;color:#fff}
html body .ec .ec-q{margin:clamp(16px,1.8vw,24px) 0 0;padding-left:16px;border-left:1px solid rgba(255,255,255,.6);font:italic 400 15px/1.6 'Noto Sans',sans-serif;color:rgba(255,255,255,.92)}
@media(max-width:899px){html body .ec .ec-hero{aspect-ratio:4/5!important}html body .ec .ec-ov{max-width:none;right:22px}html body .ec .ec-hero::after{background:linear-gradient(0deg,rgba(24,26,28,.7) 0%,rgba(24,26,28,.3) 50%,rgba(24,26,28,0) 75%)}}
/* mega layout: image takes the right 50%; columns on the left 50% (3 slots of 1/6, or 2 at 25%) */
html body .mega-in.four.with-feature.half{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:0}
html body .mega-in.half .mcol{grid-row:1}
html body .mega-in.half.n3 .mcol{grid-column:span 2}
html body .mega-in.half.n2 .mcol{grid-column:span 3}
html body .mega-in.half.n1 .mcol{grid-column:1/span 2}
html body .mega-in.half>.feature,html body .mega-in.half>:last-child:not(.mcol){grid-column:7/13;grid-row:1}
html body .mega-in.half .mcol{padding-right:20px}
html body .mega-in.half.n1>.mcol:last-child,html body .mega-in.half.n2>.mcol:last-child,html body .mega-in.half.n3>.mcol:last-child{grid-column:7/13;padding:0 0 0 0;border-left:0}
html body .mega-in.half>.mcol:last-child .feature{height:100%}

/* account */
.icon-btn.on::after{content:"";position:absolute;right:9px;bottom:10px;width:6px;height:6px;border-radius:50%;background:var(--slate-blue)}
.acct{padding-bottom:clamp(56px,7vw,80px)}
.acct-grid{display:grid;gap:32px;align-items:start}
@media (min-width:900px){.acct-grid{grid-template-columns:minmax(260px,1fr) 2fr;gap:48px}}
.acct-card{display:grid;gap:16px;justify-items:start;max-width:560px;padding:28px;border:1px solid var(--cloud-grey);border-radius:var(--r-sm);background:var(--pearl-white)}
.acct-h{font-family:var(--display);font-size:22px;line-height:28px;font-weight:400}
.acct-dl{display:grid;gap:4px 0;font-size:15px;line-height:22px}
.acct-dl dt{font-size:13px;font-weight:500;margin-top:8px}
.acct-dl dd{margin:0;overflow-wrap:anywhere}
.acct-orders{display:grid;gap:20px;justify-items:start;min-width:0}
.acct-order{display:grid;gap:16px;justify-items:start;width:100%;padding:20px 0;border-top:1px solid var(--cloud-grey)}
.acct-order-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;width:100%}
.acct-order-no{font-size:16px;line-height:22px;font-weight:500}
.acct-order-total{font-weight:500;font-variant-numeric:tabular-nums}
.acct-items{list-style:none;margin:0;padding:0;display:grid;gap:12px;width:100%}
.acct-items li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:14px;align-items:center}
.acct-items img,.acct-noimg{display:block;width:56px;height:56px;object-fit:cover;border-radius:var(--r-sm);background:var(--cloud-grey)}
.acct-items li>span:nth-child(2){display:grid;gap:2px;min-width:0}
.acct-item-t{font-size:15px;line-height:20px}
/* Sage: text on the image (same as Eclipse) */
html body .sgx .sg-mosaic{margin-top:clamp(8px,1vw,16px)}
html body .sgx .ec-hero{position:relative}
html body .sgx .ec-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,26,28,.62) 0%,rgba(24,26,28,.34) 42%,rgba(24,26,28,0) 70%),linear-gradient(0deg,rgba(24,26,28,.35),rgba(24,26,28,0) 45%);pointer-events:none}
html body .sgx .ec-ov{position:absolute;left:clamp(22px,3.4vw,52px);bottom:clamp(22px,3.4vw,52px);max-width:min(440px,72%);z-index:1;color:#fff}
html body .sgx .ec-eb{margin:0 0 12px;font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.88)}
html body .sgx .ec-h{margin:0;font:400 clamp(38px,4.6vw,66px)/1.04 var(--display,'Belleza'),serif;letter-spacing:.3px;text-transform:none;color:#fff}
html body .sgx .ec-sub{margin:14px 0 0;font:400 clamp(16px,1.4vw,20px)/1.4 'Noto Sans',sans-serif;letter-spacing:.6px;color:#fff}
html body .sgx .ec-q{margin:clamp(16px,1.8vw,24px) 0 0;padding-left:16px;border-left:1px solid rgba(255,255,255,.6);font:italic 400 15px/1.6 'Noto Sans',sans-serif;color:rgba(255,255,255,.92)}
@media(max-width:899px){html body .sgx .ec-hero{aspect-ratio:4/5!important}html body .sgx .ec-ov{max-width:none;right:22px}html body .sgx .ec-hero::after{background:linear-gradient(0deg,rgba(24,26,28,.7) 0%,rgba(24,26,28,.3) 50%,rgba(24,26,28,0) 75%)}}
@media(min-width:900px){html body .sgx .sg-mosaic{grid-template-rows:minmax(0,1fr) minmax(0,1fr);height:clamp(560px,50vw,760px)}html body .sgx .sg-m1{aspect-ratio:auto}}
html body .sgx .ec-ov{max-width:min(600px,80%)}
html body .gal-item figcaption a,html body .gal-item figcaption .gal-cap{white-space:normal}
/* blog landing title */
html body .bl-head{text-align:center;padding:clamp(40px,5vw,72px) 0 clamp(28px,3.4vw,48px)}
html body .bl-eb{margin:0 0 12px;font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:3px;text-transform:uppercase;color:var(--slate-blue)}
html body .bl-h1{margin:0;font:400 clamp(34px,3.6vw,52px)/1.1 var(--display,'Belleza'),serif;letter-spacing:.3px;text-transform:none;color:var(--ink-deep)}
html body .bl-sub{margin:14px auto 0;max-width:46ch;font:400 16px/1.6 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .bl-head+.bl-tiles{margin-top:0!important;padding-top:0!important}
html body .bl-orca:has(+.bl-head){padding-bottom:0!important;margin-bottom:0!important}html body .bl-head{padding-top:clamp(28px,3vw,44px)}
html body .hv-kf-s{display:block;margin:6px 0 2px;font:400 clamp(14px,1.1vw,16px)/1.45 'Noto Sans',sans-serif;letter-spacing:.2px;color:rgba(255,255,255,.88)}
html body .hv-kf-s{margin:0 0 8px;font-size:clamp(12px,.95vw,13.5px);letter-spacing:1.6px;text-transform:uppercase;color:rgba(255,255,255,.9)}
html body .hv-kf-t{display:block;margin-bottom:12px}
/* review stars 50% bigger; no dashes */
html body .hv-rv4 .hv-rv-head .hv-stars svg{width:21px!important;height:21px!important}
html body .hv-rv4 .hv-q-stars svg{width:20px!important;height:20px!important}
html body .hv-rv4 .hv-qd{display:none!important}
@media(max-width:699px){html body .hv-rv4 .hv-rv-head .hv-stars svg{width:18px!important;height:18px!important}}
/* VIP pop-up: image on top, offer headline, email */
html body .vip-card{width:min(520px,100%);background:#fff;box-shadow:0 24px 60px rgba(31,35,37,.22)}
html body .vip-x{top:10px;right:10px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink-deep)}
html body .vip-x svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.6}
html body .vip-img{margin:0;aspect-ratio:1200/660;overflow:hidden;background:#F1EEE9}
html body .vip-img img{display:block;width:100%;height:100%;object-fit:cover}
html body .vip-body{padding:26px clamp(24px,5vw,44px) 24px;text-align:center}
html body .vip-body .vip-eyebrow{margin:0;font:400 11.5px/1.4 'Noto Sans',sans-serif;letter-spacing:2.6px;text-transform:uppercase;color:var(--slate-blue);opacity:1}
html body .vip-body .vip-h{margin:10px 0 0;font:400 clamp(28px,4.4vw,36px)/1.1 var(--display,'Belleza'),serif;letter-spacing:.3px;text-transform:none;color:var(--ink-deep)}
html body .vip-body .vip-sub{margin:10px 0 0;font:400 16px/1.5 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .vip-body .vip-input{margin-top:20px;height:50px;text-align:left;border:1px solid color-mix(in srgb,var(--ink-blue) 40%,transparent)}
html body .vip-body .vip-btn{height:50px;letter-spacing:2px}
html body .vip-body .vip-msg{min-height:0;margin-top:8px}
html body .vip-body .vip-no{margin-top:6px;font-size:14px;text-decoration:none;opacity:1}
html body .vip-body .vip-no:hover{text-decoration:underline}
html body .vip-body .vip-legal{margin-top:16px;font-size:11.5px;line-height:1.55;opacity:.7}
/* pearl guide: no hero image */
html body .gd-plain{text-align:center;padding:clamp(40px,5vw,72px) 0 clamp(24px,3vw,40px)}
html body .gd-plain-h{margin:0;font:400 clamp(36px,4vw,56px)/1.1 var(--display,'Belleza'),serif;letter-spacing:.3px;text-transform:none;color:var(--ink-deep)}
html body .gd-plain-k{margin:10px 0 0;font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:2.6px;text-transform:uppercase;color:var(--slate-blue)}
html body .gd-plain-l{margin:14px auto 0;max-width:52ch;font:400 16px/1.6 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
/* guide: choosing a necklace */
html body .cn-steps{list-style:none;margin:0;padding:0;display:grid;gap:0}
html body .cn-step{display:grid;grid-template-columns:clamp(56px,7vw,110px) minmax(0,1fr);gap:clamp(16px,3vw,40px);padding:clamp(32px,4vw,52px) 0;border-top:1px solid var(--cloud-grey)}
html body .cn-n{margin:0;font:400 clamp(28px,3vw,40px)/1 var(--display,'Belleza'),serif;color:var(--slate-blue)}
html body .cn-h{margin:0;font:400 clamp(24px,2.4vw,32px)/1.15 var(--display,'Belleza'),serif;text-transform:none;letter-spacing:.2px;color:var(--ink-deep)}
html body .cn-p{margin:12px 0 0;max-width:62ch;font:400 16px/1.65 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .cn-step .cta-link{display:inline-block;margin-top:22px}
html body .cn-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 40px;margin:26px 0 0;max-width:860px}
html body .cn-types div{padding-top:14px;border-top:1px solid var(--cloud-grey)}
html body .cn-types dt{font:500 16px/1.4 'Noto Sans',sans-serif;color:var(--ink-deep)}
html body .cn-types dd{margin:6px 0 0;font:400 15px/1.6 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .cn-tbl{margin-top:24px;width:100%;max-width:620px;border-collapse:collapse;font:400 15px/1.5 'Noto Sans',sans-serif}
html body .cn-tbl th{text-align:left;font-weight:500;font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--slate-blue);padding:0 0 10px;border-bottom:1px solid var(--cloud-grey)}
html body .cn-tbl td{padding:12px 0;border-bottom:1px solid var(--cloud-grey);color:var(--ink-deep)}
html body .cn-tbl td:first-child{width:38%;font-weight:500}
html body .cn-step .lengths{margin-top:26px}
html body .cn-help{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 40px;padding:clamp(28px,3.4vw,44px);background:var(--mist-white,#F3F1EC);margin-top:8px}
html body .cn-hh{margin:0;font:400 clamp(24px,2.2vw,30px)/1.15 var(--display,'Belleza'),serif;text-transform:none;color:var(--ink-deep)}
html body .cn-help .cn-p{margin-top:8px;max-width:52ch}
html body .cn-ctas{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
@media(max-width:699px){html body .cn-step{grid-template-columns:minmax(0,1fr);gap:10px}html body .cn-types{grid-template-columns:minmax(0,1fr)}}
/* pearl sizes, drawn to scale */
html body .sz2{--mm:clamp(5px,.62vw,9px)}
html body .sz2-eb{margin:0 0 10px;font:500 12px/1.4 'Noto Sans',sans-serif;letter-spacing:2.4px;text-transform:uppercase;color:var(--slate-blue)}
html body .sz2-h{margin:0;font:400 clamp(36px,3.6vw,52px)/1.1 var(--display,'Belleza'),serif;text-transform:none;letter-spacing:.2px;color:var(--ink-deep)}
html body .sz2-lede{margin:14px 0 0;max-width:62ch;font:400 17px/1.65 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .sz2-row{display:flex;align-items:flex-end;justify-content:space-between;gap:6px;margin-top:clamp(32px,4vw,52px);padding-bottom:18px;border-bottom:1px solid var(--cloud-grey);overflow-x:auto}
html body .sz2-p{display:flex;flex-direction:column;align-items:center;gap:10px;flex:none}
html body .sz2-ball{display:block;width:calc(var(--d)*var(--mm));height:calc(var(--d)*var(--mm));border-radius:50%;background:radial-gradient(circle at 34% 30%,#fff 0 8%,#F6F2EE 18%,#E6DED8 48%,#CFC5BE 72%,#B9AEA7 100%);box-shadow:inset -3px -4px 8px rgba(120,100,95,.18),0 6px 8px -5px rgba(40,30,25,.35)}
html body .sz2-l{font:400 12px/1 'Noto Sans',sans-serif;color:var(--ink-deep);white-space:nowrap}
html body .sz2-bars{margin-top:26px;display:grid;gap:16px}
html body .sz2-bar{display:grid;grid-template-columns:clamp(100px,13vw,180px) minmax(0,1fr);align-items:center}
html body .sz2-bn{font:500 12.5px/1 'Noto Sans',sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:var(--ed-m,#6F6861)}
html body .sz2-track{position:relative;height:10px}
html body .sz2-track i{position:absolute;top:0;height:10px;border-radius:6px}
html body .sz2-all{opacity:.3}
html body .sz2-ak{background:#1F5B4C}html body .sz2-fw{background:#2E6F5E}html body .sz2-ta{background:#3E5A66}html body .sz2-ss{background:#6E6553}
html body .sz2-key{margin:6px 0 0;font:400 11.5px/1.5 'Noto Sans',sans-serif;letter-spacing:1.4px;text-transform:uppercase;color:var(--ed-m,#6F6861)}
html body .sz2-q{margin:clamp(32px,4vw,48px) 0 0;max-width:58ch;padding:4px 0 4px 18px;border-left:2px solid var(--slate-blue);font:400 17px/1.6 'Noto Sans',sans-serif;color:var(--ink-deep)}
html body .sz2-tbl{margin:clamp(32px,4vw,48px) 0 0}
html body .sz2-tbl>div{display:grid;grid-template-columns:clamp(100px,13vw,180px) clamp(140px,15vw,220px) minmax(0,1fr);gap:16px;align-items:baseline;padding:22px 0;border-top:1px solid var(--cloud-grey)}
html body .sz2-tbl dt{font:400 13px/1.4 'Noto Sans',sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:var(--ed-m,#6F6861)}
html body .sz2-tbl dd{margin:0;font:400 16px/1.6 'Noto Sans',sans-serif;color:var(--ink-deep)}
html body .sz2-tbl .sz2-mm{font:400 clamp(22px,2vw,28px)/1.2 var(--display,'Belleza'),serif}
html body .sz2-cta{display:flex;gap:28px;flex-wrap:wrap;margin-top:28px}
@media(max-width:699px){html body .sz2{--mm:5px}html body .sz2-row{justify-content:flex-start;gap:12px}html body .sz2-tbl>div{grid-template-columns:minmax(0,1fr);gap:4px}}
html body .sz2{--mm:clamp(4px,calc((100vw - 240px)/168),8px)}@media(max-width:699px){html body .sz2{--mm:5px}}

/* search: one quiet, centred line; nothing below it until something is typed */
.search-panel{padding-block:22px 26px}
.search-panel .wrap{max-width:860px}
.search-row{position:relative;gap:0}
.search-row svg.lead,.search-hint{display:none}
.search-row input{height:46px;font-size:17px;letter-spacing:.6px;padding:0 44px 0 2px;border-bottom:1px solid var(--ink-blue)}
.search-row input:focus{border-bottom-width:1px}
.search-row input::placeholder{color:var(--ink-blue);opacity:.62}
.search-row input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}
.search-row #search-close{position:absolute;right:-6px;top:50%;transform:translateY(-50%)}
.search-results{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin-top:22px}
.search-results:empty{display:none}
.sr-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}

/* pearl guide: short tips as expandable rows (care, sustainability); .gd-tips, not .gd-acc (the topic accordion) */
.gd-tips{align-self:start}
.gd-tips summary{font-family:var(--display);font-weight:400;font-size:17px;letter-spacing:1.2px;text-transform:uppercase}
.gd-tips .acc-body{color:var(--ink-blue)}

/* home: client reviews as a row of cards on a cream band */
html body .rv5{background:var(--pearl-white);border-radius:4px;padding:clamp(40px,5vw,72px) clamp(16px,3.4vw,56px) clamp(36px,4.4vw,64px);text-align:center}
html body .rv5-eb{margin:0;font:400 13px/1.4 var(--label);letter-spacing:2px;text-transform:uppercase;color:var(--ink-blue);opacity:.75}
html body .rv5-h{margin:14px 0 0;font:400 clamp(26px,2.6vw,34px)/1.2 var(--display);text-transform:none;letter-spacing:.2px;color:var(--ink-deep)}
html body .rv5-sum{display:inline-flex;align-items:center;gap:8px;margin:12px 0 0;font-size:14px;color:var(--ink-blue)}
html body .rv5-sum b{font-weight:500}
html body .rv5 .hv-stars svg{fill:var(--champagne-brown)}
html body .rv5-row{list-style:none;margin:var(--sp-title,28px) 0 0;padding:0 0 4px;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 2 * var(--sp-grid,16px))/3);gap:var(--sp-grid,16px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;text-align:left}
html body .rv5-row::-webkit-scrollbar{display:none}
html body .rv5-card{scroll-snap-align:start;display:flex;flex-direction:column;gap:18px;min-height:240px;background:#fff;border-radius:4px;padding:clamp(24px,2.8vw,40px)}
html body .rv5-stars svg{width:20px;height:20px}
html body .rv5-q{margin:0;font-size:15px;line-height:1.6;color:var(--ink-blue)}
html body .rv5-by{margin:auto 0 0;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;font-size:14px}
html body .rv5-by b{font-weight:500}
html body .rv5-by span{color:var(--ink-blue);opacity:.7;font-size:13px}
html body .rv5-all{display:inline-block;margin-top:clamp(18px,2vw,24px)}
@media (max-width:899px){html body .rv5-row{grid-auto-columns:calc((100% - var(--sp-grid,16px))/1.6)}}
@media (max-width:599px){html body .rv5-row{grid-auto-columns:86%}}
html body .hv-pf:has(> .rv5){display:block;box-shadow:none}
/* pearl guide: topics as an accordion */
html body .gd-acc-head{padding:clamp(12px,1.6vw,24px) 0 clamp(24px,3vw,40px)}
html body .gd-acc-head .gd-eb{margin:0 0 10px}
html body .gd-acc-head .hl{text-transform:none;letter-spacing:.2px}
html body .gd-acc{border-top:1px solid var(--cloud-grey);margin-bottom:clamp(56px,7vw,96px)}
html body .gd-ac{border-bottom:1px solid var(--cloud-grey)}
html body .gd-ac>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:clamp(20px,2vw,28px) 0;cursor:pointer;font:400 clamp(14px,1.1vw,16px)/1.3 var(--display,'Belleza'),serif;letter-spacing:2.6px;text-transform:uppercase;color:var(--ink-deep)}
html body .gd-ac>summary::-webkit-details-marker{display:none}
html body .gd-ac>summary i{position:relative;width:18px;height:18px;flex:none}
html body .gd-ac>summary i::before,html body .gd-ac>summary i::after{content:"";position:absolute;left:0;right:0;top:50%;height:1.2px;background:currentColor;transform:translateY(-50%)}
html body .gd-ac>summary i::after{transform:translateY(-50%) rotate(90deg);transition:transform .25s}
html body .gd-ac[open]>summary i::after{transform:translateY(-50%) rotate(0)}
html body .gd-ac>summary:hover{color:var(--slate-blue)}
html body .gd-ac-b{padding:4px 0 clamp(36px,4vw,56px)}
html body .gd-ac-b>section:first-child{padding-top:0!important;margin-top:0!important}

/* pearl guide: full-width image band */
html body .gd-band{position:relative;width:100%;height:clamp(320px,38vw,560px);overflow:hidden;background:#C9B79F}
html body .gd-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}
html body .gd-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,28,26,.5),rgba(30,28,26,.15) 55%,rgba(30,28,26,0))}
html body .gd-band-copy{position:absolute;left:max(var(--gutter,24px),calc((100vw - var(--maxw,1300px))/2));bottom:clamp(28px,4vw,64px);max-width:min(560px,80%);z-index:1;color:#fff}
html body .gd-band .gd-eb{margin:0 0 10px;color:rgba(255,255,255,.88)}
html body .gd-band-h{margin:0;font:400 clamp(36px,4.4vw,64px)/1.05 var(--display,'Belleza'),serif;letter-spacing:.3px;text-transform:none;color:#fff}
html body .gd-band-p{margin:12px 0 0;font:400 clamp(15px,1.3vw,18px)/1.5 'Noto Sans',sans-serif;color:rgba(255,255,255,.92)}
html body .gd-band+.gd-acc-page .crumbs{margin-bottom:clamp(16px,2vw,28px)}
html body .gd-band-copy{left:0!important;right:0;margin:0 auto;max-width:none!important}
html body .gd-band-copy>div{max-width:min(560px,85%)}
html body .gd-band .gd-band-copy{position:absolute;bottom:clamp(28px,4vw,64px);width:100%;box-sizing:border-box}
html body .gd-band .gd-band-copy{max-width:var(--maxw)!important;left:0;right:0}
/* guide: grading & care */
html body .gq-lede{max-width:70ch;font-size:17px;margin:0 0 clamp(20px,2.4vw,36px)}
html body .gq-f{max-width:none}
html body .gq-note{margin-top:20px;max-width:70ch;font-size:15px}
html body .gc-never{margin-top:24px;max-width:620px;padding:22px 26px;border:1px solid color-mix(in srgb,var(--ink-blue) 18%,transparent);border-radius:12px}
html body .gc-never-h{margin:0 0 10px;font:500 12px/1.4 'Noto Sans',sans-serif;letter-spacing:2px;text-transform:uppercase;color:var(--ink-deep)}
html body .gc-never ul,html body .gc-list,html body .gc-four{margin:0;padding-left:18px;font:400 15.5px/1.65 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .gc-list{margin-top:6px}
html body .gc-four{margin-top:10px;color:var(--ink-deep);font-size:16px}
html body .gq .grade-table table{font:400 14.5px/1.5 'Noto Sans',sans-serif}
html body .gc-never ul,html body .gc-list,html body .gc-four{list-style:disc}
/* custom: start your piece, text left / photo right */
html body .cw-start2{background:#fff;padding:clamp(56px,7vw,110px) 0}
html body .cw2-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
html body .cw2-eb{margin:0 0 18px;font:400 12px/1.4 'Noto Sans',sans-serif;letter-spacing:2.8px;text-transform:uppercase;color:var(--slate-blue)}
html body .cw2-h{margin:0;font:400 clamp(38px,4.6vw,66px)/1.08 var(--display,'Belleza'),serif;letter-spacing:.2px;text-transform:none;color:var(--ink-deep);max-width:12ch}
html body .cw2-p{margin:clamp(20px,2.4vw,32px) 0 0;max-width:52ch;font:400 clamp(16px,1.25vw,18px)/1.65 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .cw2-stats{display:flex;flex-wrap:wrap;margin:clamp(28px,3vw,44px) 0 0}
html body .cw2-stats>div{padding:0 clamp(18px,2.2vw,36px) 0 0;margin-right:clamp(18px,2.2vw,36px);border-right:1px solid var(--cloud-grey)}
html body .cw2-stats>div:last-child{border-right:0;margin-right:0;padding-right:0}
html body .cw2-stats dt{font:400 clamp(22px,2vw,30px)/1.1 var(--display,'Belleza'),serif;color:var(--ink-deep)}
html body .cw2-stats dd{margin:8px 0 0;font:400 11.5px/1.4 'Noto Sans',sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:var(--ed-m,#6F6861)}
html body .cw2-ctas{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:clamp(28px,3vw,44px)}
html body .cw2-img{margin:0;aspect-ratio:4/5;overflow:hidden}
html body .cw2-img img{width:100%;height:100%;object-fit:cover;object-position:60% 40%;display:block}
@media(max-width:899px){html body .cw2-in{grid-template-columns:minmax(0,1fr)}html body .cw2-img{aspect-ratio:4/3;order:-1}html body .cw2-h{max-width:none}}
html body .cw2-h{max-width:16ch!important}
/* custom page: consultation layout */
html body .cw-top{padding-top:clamp(40px,5vw,80px)}
html body .cw-top .cw2-h{font-size:clamp(34px,3.9vw,58px);max-width:15ch!important}
html body .cw-what{background:var(--mist-white,#F3F1EC);padding:clamp(56px,7vw,100px) 0}
html body .cw-what-head{max-width:640px;margin-bottom:clamp(28px,3.5vw,52px)}
html body .cw-what .cw2-eb{color:var(--ink)} /* deep sea is 3.5:1 on salt mint; ink keeps small caps at AA */
html body .cw-what-h{margin:0;font:400 clamp(28px,3vw,42px)/1.12 var(--display,'Belleza'),serif;letter-spacing:.2px;text-transform:none;color:var(--ink-deep)}
html body .cw-what-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,36px) clamp(24px,3vw,48px)}
html body .cw-what-c{padding-top:18px;border-top:1px solid color-mix(in srgb,var(--ink-blue) 18%,transparent)}
html body .cw-what-c h3{margin:0 0 8px;font:500 16px/1.4 'Noto Sans',sans-serif;color:var(--ink-deep)}
html body .cw-what-c p{margin:0;font:400 15px/1.65 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .cw-who,html body .cw-holly{background:#fff;padding:clamp(56px,7vw,100px) 0}
html body .cw-who-in,html body .cw-holly-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
html body .cw-who-img,html body .cw-holly-img{margin:0;aspect-ratio:4/3;overflow:hidden}
html body .cw-who-img img,html body .cw-holly-img img{width:100%;height:100%;object-fit:cover;display:block}
html body .cw-who-list{margin:clamp(20px,2.4vw,32px) 0 0;padding:0;list-style:none;display:grid;gap:0}
html body .cw-who-list li{padding:14px 0;border-top:1px solid var(--cloud-grey);font:400 16px/1.5 'Noto Sans',sans-serif;color:var(--ink-deep)}
html body .cw-who-list li:last-child{border-bottom:1px solid var(--cloud-grey)}
html body .cw-holly .cw2-p{margin-top:16px}
html body .cw-holly .cta-link{display:inline-block;margin-top:22px}
@media(max-width:899px){html body .cw-what-grid{grid-template-columns:minmax(0,1fr)}html body .cw-who-in,html body .cw-holly-in{grid-template-columns:minmax(0,1fr)}html body .cw-holly-img{order:-1}}
/* gallery: lookbook spreads */
html body .lb-book{--lb-tan:#E6D9CC;padding:clamp(40px,5vw,80px) 0 clamp(64px,8vw,120px)}
html body .lb-spread{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:var(--maxw);margin:0 auto clamp(56px,7vw,110px);padding-inline:var(--gutter)}
html body .lb-spread::before{content:"";position:absolute;top:clamp(28px,4vw,56px);bottom:clamp(28px,4vw,56px);left:0;width:46%;background:var(--lb-tan);z-index:0}
html body .lb-spread.flip::before{left:auto;right:0}
html body .lb-spread>*{position:relative;z-index:1}
html body .lb-big{position:relative;aspect-ratio:4/5;background:#EEE9E2}
html body .lb-big .gal-open{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
html body .lb-big img{width:100%;height:100%;object-fit:cover;display:block}
html body .lb-panel{position:absolute;left:clamp(16px,2.6vw,40px);bottom:clamp(16px,2.6vw,40px);max-width:min(400px,78%);padding:clamp(18px,2vw,30px) clamp(18px,2.2vw,32px);background:rgba(250,248,244,.86);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
html body .lb-num{margin:0 0 10px;font:400 11px/1.4 'Noto Sans',sans-serif;letter-spacing:2.6px;text-transform:uppercase;color:var(--slate-blue)}
html body .lb-h{margin:0;font:400 clamp(24px,2.4vw,34px)/1.12 var(--display,'Belleza'),serif;letter-spacing:.2px;text-transform:none;color:var(--ink-deep)}
html body .lb-p{margin:12px 0 0;font:400 14.5px/1.6 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
html body .lb-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,36px) clamp(18px,2.4vw,36px);align-content:center;padding:clamp(24px,3vw,48px) 0 clamp(24px,3vw,48px) clamp(24px,3.4vw,56px)}
html body .lb-spread.flip .lb-tiles{order:-1;padding:clamp(24px,3vw,48px) clamp(24px,3.4vw,56px) clamp(24px,3vw,48px) 0}
html body .lb-tile{margin:0}
html body .lb-tile .gal-open{display:block;width:100%;aspect-ratio:1/1;padding:0;border:0;background:#F1EEE9;cursor:zoom-in;overflow:hidden}
html body .lb-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
html body .lb-tile:hover img{transform:scale(1.03)}
html body .lb-tile.prod .gal-open{background:#fff}
html body .lb-tile.prod img{object-fit:contain;padding:6%;box-sizing:border-box}
html body .lb-tile figcaption{margin-top:10px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--ink-blue) 16%,transparent);display:flex;flex-direction:column;gap:2px}
html body .lb-tile figcaption a,html body .lb-tile figcaption span{font:400 13.5px/1.4 'Noto Sans',sans-serif;color:var(--ink-deep);text-decoration:none}
html body .lb-tile figcaption a:hover{text-decoration:underline;text-underline-offset:3px}
html body .lb-tile figcaption small{font:400 12px/1.4 'Noto Sans',sans-serif;color:var(--ed-m,#6F6861)}
@media(max-width:899px){html body .lb-spread{grid-template-columns:minmax(0,1fr);margin-bottom:clamp(40px,8vw,64px)}html body .lb-spread::before{width:100%;left:0;right:0;top:40%;bottom:0}html body .lb-tiles,html body .lb-spread.flip .lb-tiles{order:0;padding:20px 0 0}html body .lb-big{aspect-ratio:4/5}html body .lb-panel{max-width:none;left:12px;right:12px;bottom:12px}}
html body .lb-spread::before{left:auto;right:0;width:52%}
html body .lb-spread.flip::before{right:auto;left:0}
/* reviews: scrollable row with a peeking card and nav */
html body .rv5-wrap{position:relative}
html body .rv5-row{grid-auto-columns:calc((100% - 3 * var(--sp-grid,16px))/3.35)!important;scroll-snap-type:x mandatory;scroll-padding-inline:0}
@media (max-width:899px){html body .rv5-row{grid-auto-columns:calc((100% - var(--sp-grid,16px))/1.5)!important}}
@media (max-width:599px){html body .rv5-row{grid-auto-columns:82%!important}}
html body .rv5-nav{position:absolute;top:50%;z-index:2;width:44px;height:44px;margin-top:-22px;border:1px solid color-mix(in srgb,var(--ink-blue) 18%,transparent);border-radius:50%;background:#fff;color:var(--ink-deep);font:400 26px/1 'Belleza',serif;cursor:pointer;display:grid;place-items:center;box-shadow:0 4px 14px rgba(31,35,37,.08)}
html body .rv5-nav.prev{left:-22px}html body .rv5-nav.next{right:-22px}
html body .rv5-nav:hover{border-color:var(--ink-deep)}
@media (max-width:899px){html body .rv5-nav{display:none}}
/* custom page: headings in the site's own hero style */
html body .cw2-h1{margin:0;font-size:clamp(34px,4.2vw,56px);line-height:1.05;max-width:none}
html body .cw2-lede{margin:clamp(16px,2vw,26px) 0 0;font:400 clamp(18px,1.5vw,22px)/1.45 var(--display,'Belleza'),serif;letter-spacing:.4px;color:var(--ink-deep);max-width:30ch}
html body .cw-top .cw2-p{margin-top:16px}
html body .cw-h2{margin:0;font-size:clamp(26px,3vw,38px)}
/* consultation: three purposes, two ways */
html body .cw-three{grid-template-columns:repeat(3,minmax(0,1fr))}
html body .cw-what-c .cw-n{margin:0 0 10px;font:400 clamp(26px,2.6vw,34px)/1 var(--display,'Belleza'),serif;color:var(--slate-blue)}
html body .cw-what-c h3{font-size:17px}
html body .cw-ways{margin:clamp(20px,2.4vw,32px) 0 0}
html body .cw-ways>div{padding:18px 0;border-top:1px solid var(--cloud-grey)}
html body .cw-ways>div:last-child{border-bottom:1px solid var(--cloud-grey)}
html body .cw-ways dt{font:400 clamp(20px,1.8vw,24px)/1.2 var(--display,'Belleza'),serif;color:var(--ink-deep)}
html body .cw-ways dd{margin:8px 0 0;font:400 15px/1.65 'Noto Sans',sans-serif;color:var(--ed-b,#57524D)}
@media(max-width:899px){html body .cw-three{grid-template-columns:minmax(0,1fr)}}
html body .hv-cat,html body .hv-cat:hover,html body .hv-cat:hover .hv-cat-l,html body .hv-cat:focus-visible .hv-cat-l{text-decoration:none!important}
/* boutique tiles: underline draws in left to right on hover */
html body .hv-bq .hv-lk{position:relative;border-bottom:0!important;padding-bottom:4px}
html body .hv-bq .hv-lk::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
html body .hv-bq a:hover .hv-lk::after,html body .hv-bq a:focus-visible .hv-lk::after,html body .hv-bq .hv-lk:hover::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){html body .hv-bq .hv-lk::after{transition:none}}
/* you may also like: three wide white cards, square art, text inside the card */
html body .p2-rel{background:var(--mist-white,#F3F1EC);padding-top:clamp(40px,5vw,72px);margin-top:clamp(40px,5vw,72px)}
html body .p2-rel .p2-rel-h{text-align:left}
html body .p2-rel .grid.four{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(16px,2vw,28px)!important}
html body .p2-rel .card{background:#fff;padding:0}
html body .p2-rel .card-art{aspect-ratio:1;background:#fff;outline:0}
html body .p2-rel .card-body{padding:clamp(18px,1.8vw,26px) clamp(18px,1.8vw,26px) clamp(22px,2vw,30px)}
html body .p2-rel .card-name{font-size:15px;line-height:22px;min-height:0}
html body .p2-rel .card-price{margin-top:14px}
@media(max-width:899px){html body .p2-rel .grid.four{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:599px){html body .p2-rel .grid.four{grid-template-columns:minmax(0,1fr)!important}}
html body .p2-rel{margin-inline:calc(50% - 50vw);padding-inline:max(var(--gutter,24px),calc(50vw - 50%))}
/* category tiles: underline draws in left to right on hover */
html body .hv-cat-l{padding-bottom:5px}
html body .hv-cat-l::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
html body .hv-cat:hover .hv-cat-l::after,html body .hv-cat:focus-visible .hv-cat-l::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){html body .hv-cat-l::after{transition:none}}
/* ===== home page only: link underline draws in left to right on hover ===== */
:root{--ul-ease:.35s cubic-bezier(.2,.7,.2,1)}
html[data-route="home"] body .cta-link,html[data-route="home"] body .hv-more,html[data-route="home"] body .hv-lk,html[data-route="home"] body .hv-rv-next,html[data-route="home"] body .hv-rv-all,html[data-route="home"] body .kf-u{position:relative;text-decoration:none!important;border-bottom:0!important}
html[data-route="home"] body .cta-link::after,html[data-route="home"] body .hv-more::after,html[data-route="home"] body .hv-lk::after,html[data-route="home"] body .hv-rv-next::after,html[data-route="home"] body .hv-rv-all::after,html[data-route="home"] body .kf-u::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--ul-ease);pointer-events:none}
html[data-route="home"] body .cta-link:hover::after,html[data-route="home"] body .hv-more:hover::after,html[data-route="home"] body .hv-lk:hover::after,html[data-route="home"] body a:hover>.hv-lk::after,html[data-route="home"] body .hv-rv-next:hover::after,html[data-route="home"] body .hv-rv-all:hover::after,html[data-route="home"] body .kf-u:hover::after,html[data-route="home"] body a:hover>.kf-u::after,html[data-route="home"] body .tile:hover .cta-link::after,html[data-route="home"] body .hv-bq a:hover .hv-lk::after,html[data-route="home"] body .hv-kf:hover .kf-u::after{transform:scaleX(1)}
html[data-route="home"] body .cta-link{padding-bottom:2px}
@media(prefers-reduced-motion:reduce){html[data-route="home"] body [class]::after{transition:none!important}}
html body .cw-hours{margin-top:14px;gap:8px 28px}
html body .cw-hours dd{font-size:14px}
html body .cw-who{padding-bottom:clamp(64px,8vw,120px)}
html body .cw-ways .cw-hours{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;margin:16px 0 0}
html body .cw-ways .cw-hours>div:first-child{grid-column:1/-1}
html body .cw-ways .cw-hours dt{font:400 11px/1.4 'Noto Sans',sans-serif!important;letter-spacing:1.8px;text-transform:uppercase;color:var(--slate-blue)!important}
html body .cw-ways .cw-hours dd{margin:4px 0 0;font:400 14.5px/1.5 'Noto Sans',sans-serif;color:var(--ink-deep)}
@media(max-width:599px){html body .cw-ways .cw-hours{grid-template-columns:1fr}}
html body .hv-head:has(.hv-more){flex-direction:column;align-items:flex-start;gap:12px}
/* consultation: gallery details as a compact spec table */
html body .cw-spec{margin:18px 0 4px;border-collapse:collapse;width:100%;max-width:520px;font:400 15px/1.55 'Noto Sans',sans-serif}
html body .cw-spec th{width:88px;padding:10px 16px 10px 0;text-align:left;vertical-align:top;font:400 12px/1.6 'Noto Sans',sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--slate-blue);border-top:1px solid var(--cloud-grey)}
html body .cw-spec td{padding:10px 0;vertical-align:top;color:var(--ink-deep);border-top:1px solid var(--cloud-grey)}
html body .cw-spec a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}
html body .gd-band-p{max-width:46ch}
html body .cw-top .cw2-stats{flex-wrap:nowrap}
html body .cw-top .cw2-stats>div{white-space:nowrap}
@media(max-width:599px){html body .cw-top .cw2-stats{flex-wrap:wrap;gap:16px 0}}
/* about: visit the gallery as a two-column block */
html body .au-visit2{padding:clamp(56px,7vw,100px) 0 clamp(64px,8vw,120px)}
html body .au-visit2-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
html body .au-visit2-copy .hl{margin:0 0 6px;text-transform:none;letter-spacing:.2px;font-size:clamp(28px,3vw,42px)}
html body .au-visit2-copy .cw-spec{margin-top:22px}
html body .au-visit2-copy .cw2-ctas{margin-top:clamp(24px,2.6vw,36px)}
html body .au-visit2-img{margin:0;aspect-ratio:4/3;overflow:hidden}
html body .au-visit2-img img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:899px){html body .au-visit2-in{grid-template-columns:minmax(0,1fr)}html body .au-visit2-img{order:-1}}
/* About: redesign (hero + stats, designer, zigzag rows, quote) */
html body .ab-hero{padding:clamp(56px,7vw,104px) 0 clamp(40px,5vw,72px);text-align:center}
html body .ab-hero .eyebrow{margin:0 0 18px;color:var(--ink-mute,#6b6560)}
html body .ab-h1{margin:0 auto;max-width:24ch;font-size:clamp(30px,3.8vw,52px);letter-spacing:1.5px}
html body .ab-lede{margin:22px auto 0;max-width:52ch;text-wrap:balance}
html body .ab-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:clamp(44px,5vw,72px) auto 0;max-width:1040px;border-top:1px solid rgba(28,26,25,.14);border-bottom:1px solid rgba(28,26,25,.14)}
html body .ab-stats>div{padding:clamp(22px,2.6vw,34px) 12px;border-left:1px solid rgba(28,26,25,.14)}
html body .ab-stats>div:first-child{border-left:0}
html body .ab-stats dt{font-family:var(--display);font-size:clamp(30px,3.4vw,46px);line-height:1;letter-spacing:.5px}
html body .ab-stats dd{margin:10px 0 0;font-size:13px;line-height:18px;letter-spacing:.3px;color:var(--ink-mute,#6b6560)}
@media(max-width:699px){html body .ab-stats{grid-template-columns:repeat(2,minmax(0,1fr))}html body .ab-stats>div:nth-child(3){border-left:0}html body .ab-stats>div:nth-child(n+3){border-top:1px solid rgba(28,26,25,.14)}}

html body .ab-who{padding:clamp(40px,5vw,80px) 0 clamp(56px,7vw,104px)}
html body .ab-who-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,96px);align-items:center}
html body .ab-who-img{margin:0;aspect-ratio:4/5;overflow:hidden;background:#2a2f31}
html body .ab-who-img img{width:100%;height:100%;object-fit:cover;object-position:78% center;display:block}
html body .ab-who-copy .eyebrow{margin:0 0 10px;color:var(--ink-mute,#6b6560)}
html body .ab-sig{font-family:var(--script);font-weight:400;font-size:clamp(64px,7vw,110px);line-height:1;margin:0;transform:rotate(-6deg);transform-origin:left bottom;display:inline-block;padding-right:.15em;white-space:nowrap}
html body .ab-role{margin:14px 0 18px;font-family:var(--label);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-mute,#6b6560)}
html body .ab-who-copy .body{max-width:48ch}
html body .ab-who-copy .cw2-ctas{margin-top:clamp(24px,2.6vw,36px)}
@media(max-width:899px){html body .ab-who-in{grid-template-columns:minmax(0,1fr)}html body .ab-sig{font-size:clamp(52px,15vw,76px)}}

html body .ab-rows{display:grid;gap:0;margin-top:clamp(40px,5vw,80px)}
html body .ab-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}
html body .ab-row-img{margin:0;aspect-ratio:3/2;overflow:hidden;background:#e9e4dc}
html body .ab-row-img img{width:100%;height:100%;object-fit:cover;display:block}
html body .ab-row-copy{padding:clamp(32px,5vw,72px) clamp(24px,7vw,120px)}
html body .ab-row.flip .ab-row-img{order:2}
html body .ab-num{margin:0 0 14px;font-family:var(--label);font-size:13px;letter-spacing:2px;color:var(--ink-mute,#6b6560)}
html body .ab-row-copy .hl{margin:0 0 16px;text-transform:none;letter-spacing:.2px;font-size:clamp(28px,3vw,42px)}
html body .ab-row-copy .body{max-width:44ch;margin:0}
@media(max-width:899px){html body .ab-row{grid-template-columns:minmax(0,1fr)}html body .ab-row.flip .ab-row-img{order:0}html body .ab-row-copy{padding:28px var(--gutter) 44px}}

html body .ab-quote{padding:clamp(56px,7vw,104px) 0;background:#EFE9DF}
html body .ab-quote-in{text-align:center;max-width:900px}
html body .ab-quote-stars{display:inline-flex;gap:4px;margin-bottom:22px}
html body .ab-quote-stars svg{width:18px;height:18px}
html body .ab-quote-q{margin:0;font-family:var(--display);font-size:clamp(22px,2.6vw,34px);line-height:1.35;letter-spacing:.2px;text-wrap:balance}
html body .ab-quote-by{margin:22px 0 0;font-size:14px;letter-spacing:.3px}
html body .ab-quote-by b{font-weight:600;margin-right:8px}
html body .ab-quote-by span{color:var(--ink-mute,#6b6560)}
html body .ab-quote-in .cta-link{display:inline-block;margin-top:18px}
/* Rotating single review (home + about) */
html body .qr{display:grid;max-width:760px;margin:0 auto}
html body .qr-item{grid-area:1/1;margin:0;opacity:0;transform:translateY(6px);transition:opacity .9s ease,transform .9s ease;pointer-events:none}
html body .qr-item.on{opacity:1;transform:none;pointer-events:auto}
html body .ab-quote-q{margin:0}
html body .qr .ab-quote-by{margin:22px 0 0}
@media(prefers-reduced-motion:reduce){html body .qr-item{transition:none}}
html body .hv-quote{margin-top:var(--sp-l)}
/* Press: in print tearsheets */
html body .pr-print{list-style:none;margin:clamp(20px,2.4vw,32px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,32px) clamp(16px,2vw,28px)}
html body .pr-print figure{margin:0}
html body .pr-print img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:#EFE9DF}
html body .pr-print figcaption{margin-top:12px}
html body .pr-print figcaption b{display:block;font-weight:500;font-size:13px;line-height:20px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink-blue)}
html body .pr-print figcaption span{display:block;font-size:13px;line-height:20px;color:var(--slate-blue);margin-top:2px}
@media(max-width:699px){html body .pr-print{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- virtual try-on (Camweara, js/tryon.js): their button sits under "Add to bag", same width ---------- */
.pdp2 .cw-slot{max-width:300px;margin-top:12px}
/* js/tryon.js also passes these through Camweara's `styles` option; this backstop covers their own stylesheet, which
   targets the button by id, so the ids are repeated here to win on specificity */
.pdp2 .cw-slot :is(#tryonButton,#MB_tryonButton){display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:40px;height:auto;margin:0;padding:0 20px;border:1px solid var(--ink-blue);border-radius:var(--r-pill);box-shadow:none;background:transparent;color:var(--ink-blue);font-family:var(--label);font-size:12px;font-weight:400;line-height:16px;letter-spacing:1.8px;text-transform:uppercase;cursor:pointer;transition:background-color .2s}
.pdp2 .cw-slot :is(#tryonButton,#MB_tryonButton):hover{background:var(--mist-white)}
.pdp2 .cw-slot :is(#tryonButton,#MB_tryonButton):focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.pdp2 .cw-slot :is(#tryonButton,#MB_tryonButton) i:empty{display:none}
html body .pr3-cover-img{padding:0;position:relative;overflow:hidden}
html body .pr3-cover-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%}
html body .pr3-cover-img .pr3-cv-cap{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 16px;background:linear-gradient(180deg,rgba(28,26,25,0),rgba(28,26,25,.72));color:#fff;display:flex;flex-direction:column}
html body .pr3-cover-img .pr3-cv-t{margin-top:0;font-size:clamp(16px,1.4vw,20px);color:#fff}
html body .pr3-cover-img .pr3-cv-d{margin-top:8px;color:rgba(255,255,255,.8)}
html body .pr-print{margin-top:clamp(24px,3vw,40px)}
html body .pr-print-a{display:block;color:inherit;text-decoration:none}
html body .pr-print-a:hover figcaption b{text-decoration:underline;text-underline-offset:4px}
html body .pr-print-a img{transition:opacity .25s}
html body .pr-print-a:hover img{opacity:.92}
html body .pr-print-d{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--slate-blue);margin-top:4px}

/* ================= blog post pages (copied from the old Shopify blogs) ================= */
.art{max-width:820px;padding-bottom:var(--s5)}
.art-head{margin-top:var(--s3);text-align:center}
.art-eb{font-size:13px;letter-spacing:1.2px;text-transform:uppercase;opacity:.8}
.art-eb a{color:inherit;text-decoration:none}
.art-eb a:hover{text-decoration:underline;text-underline-offset:3px}
.art-h1{margin-top:var(--s2);font-family:var(--display);font-weight:400;font-size:clamp(26px,3.6vw,40px);line-height:1.2;letter-spacing:.6px;color:var(--ink-blue);text-wrap:balance}
.art-tags{margin-top:var(--s1);font-size:13px;opacity:.7}
.art-cover{margin:clamp(24px,3vw,40px) auto 0}
.art-cover img{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain}
.art-cover-flyer img{width:auto;max-width:100%;margin-inline:auto;box-shadow:0 1px 0 var(--soft-sand)}
.art-body{margin-top:clamp(24px,3vw,40px);font-size:16px;line-height:1.75;color:var(--ink-blue);overflow-wrap:anywhere}
.art-body>*+*{margin-top:1em}
.art-body h2,.art-body h3,.art-body h4{font-family:var(--display);font-weight:400;line-height:1.3;letter-spacing:.4px;margin-top:1.6em}
.art-body h2{font-size:26px}.art-body h3{font-size:21px}.art-body h4{font-size:18px}
.art-body ul,.art-body ol{padding-left:1.4em}
.art-body li+li{margin-top:.4em}
.art-body a{color:var(--slate-blue);text-underline-offset:3px}
.art-body img{display:block;max-width:100%;height:auto;margin:1.4em auto}
.art-body blockquote{border-left:2px solid var(--soft-sand);padding-left:var(--s2);font-style:italic}
.art-body table{border-collapse:collapse;width:100%;font-size:15px}
.art-body td,.art-body th{border:1px solid var(--soft-sand);padding:8px 10px;text-align:left;vertical-align:top}
.art-wait{opacity:.6}
.art-nav{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3);margin-top:clamp(40px,5vw,64px);padding-top:var(--s3);border-top:1px solid var(--soft-sand)}
.art-nb{display:flex;flex-direction:column;gap:4px;color:var(--ink-blue);text-decoration:none}
.art-nb+.art-nb,.art-nav span+.art-nb{text-align:right}
.art-nb-l{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;opacity:.82}
.art-nb-t{font-family:var(--display);font-size:17px;line-height:1.35}
.art-nb:hover .art-nb-t{text-decoration:underline;text-underline-offset:3px}
@media (max-width:599px){.art-nav{grid-template-columns:1fr}.art-nb+.art-nb,.art-nav span+.art-nb{text-align:left}}
html body .ab-quote-in .cta-link{font-size:15px;letter-spacing:2.4px;margin-top:28px;padding-bottom:6px}
/* Pearl guide accordion: the panel's own 56px bottom padding is enough; drop the section paddings stacked under it */
html body .gd-ac-b>section,html body .gd-ac-b .pt3-more{padding-bottom:0!important}
/* FAQ hero: on wide or zoomed-out screens the 640px cap cropped the ribbon; let it grow and keep the crop near the top */
html body .faq-hero{max-height:780px}
html body .faq-hero picture,html body .faq-hero img{object-position:62% 38%}
html body .strip-photo{max-width:none;background:none}
html body .strip-photo img{aspect-ratio:16/7;object-fit:cover;object-position:center 56%}
html body .sz2-fig{margin:clamp(20px,2.6vw,36px) 0 0;background:#F4F4F5}
html body .sz2-fig img{display:block;width:100%;height:auto}
html body .gd-card-art img{mix-blend-mode:normal}
/* Pearl guide steps (grading, care, choosing a necklace): larger reading sizes */
html body .cn-p,html body .gq-lede{font-size:18px;line-height:1.65}
html body .cn-types dt{font-size:18px}
html body .cn-types dd{font-size:17px;line-height:1.6}
html body .cn-tbl{font-size:16px}
html body .gc-never ul,html body .gc-list{font-size:17px}
html body .gc-four{font-size:17px}
html body .gq-note{font-size:16px}
/* Review card: white rounded card, stars left, Google mark right, left-aligned quote */
html body .ab-quote-in{max-width:760px}
html body .qr-card{background:#fff;border-radius:22px;padding:clamp(24px,3vw,36px) clamp(24px,3.4vw,44px) clamp(22px,2.8vw,32px);text-align:left;box-shadow:0 12px 40px -24px rgba(28,26,25,.35)}
html body .qr-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
html body .qr-stars{display:inline-flex;gap:5px}
html body .qr-stars svg{width:22px;height:22px;fill:#F0B429}
html body .qr-g{width:34px;height:34px}
html body .qr{max-width:none;margin:0}
html body .qr-q{margin:0;font:400 17px/1.65 'Noto Sans',sans-serif;color:var(--ink-deep,#1c1a19);text-wrap:pretty}
html body .qr-by{margin:18px 0 0;font:600 italic 16px/1.4 'Noto Sans',sans-serif;color:var(--ink-deep,#1c1a19)}
html body .ab-quote-in .cta-link{margin-top:24px}
html body .ab-quote-in{text-align:center}
@media(max-width:599px){html body .qr-card{border-radius:16px}html body .qr-q{font-size:16px}}
/* Category tiles: a row that shows 4 and scrolls to the 5th */
html body .hv-cats{--n:4;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--n) - 1)*var(--sp-grid))/var(--n));grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px;-webkit-overflow-scrolling:touch}
html body .hv-cats::-webkit-scrollbar{display:none}
html body .hv-cats .hv-cat{scroll-snap-align:start}
@media(max-width:899px){html body .hv-cats{--n:3}}
@media(max-width:599px){html body .hv-cats{--n:2}}
html body .qr-all{display:inline-flex;align-items:center;gap:10px;margin-top:26px;color:var(--ink-deep,#1c1a19);text-decoration:none;font:400 15px/1 'Noto Sans',sans-serif}
html body .qr-all b{font-weight:600;font-size:17px}
html body .qr-all span:last-child{color:var(--ed-b,#57524D)}
html body .qr-all:hover span:last-child{text-decoration:underline;text-underline-offset:4px}
html body .qr-all .qr-stars svg{width:18px;height:18px}
html body .hv-cats-wrap{position:relative}
html body .hv-quote{margin-bottom:var(--sp-l)}
html body .ct-info .ct-copy{position:static;left:auto;bottom:auto;display:block;gap:0;z-index:auto}
/* product photo frames: white behind the photo, so cut-out (transparent) images match the white-background ones */
html body .mprod-art,html body .card-art,html body .cts-art,html body .li-art,html body .hv-pc-img,html body .p2-rel .card-art{background:#fff}

/* AI concierge (js/concierge.js): floating button bottom right and its chat panel */
.cg{--cg-b:calc(20px + env(safe-area-inset-bottom,0px));--cg-r:calc(20px + env(safe-area-inset-right,0px))}
.cg-fab{position:fixed;right:var(--cg-r);bottom:var(--cg-b);z-index:55;display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 22px 0 16px;border:0;border-radius:var(--r-pill);background:var(--ink-blue);color:var(--pearl-white);font-family:var(--label);font-size:13px;line-height:16px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 24px rgba(31,35,37,.18);transition:background-color .2s,transform .2s}
.cg-fab:hover{background:var(--ink-deep)}
.cg-fab:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.cg-fab svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cg-panel{position:fixed;right:var(--cg-r);bottom:calc(var(--cg-b) + 64px);z-index:55;width:min(400px,calc(100vw - 32px));height:min(600px,calc(100vh - 140px));height:min(600px,calc(100dvh - 140px));display:flex;flex-direction:column;background:var(--pearl-white);color:var(--ink-blue);border:1px solid var(--cloud-grey);border-radius:12px;box-shadow:0 18px 48px rgba(31,35,37,.18);overflow:hidden}
.cg-panel[hidden]{display:none}
.cg-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 12px 16px 22px;border-bottom:1px solid var(--cloud-grey);background:var(--mist-white)}
.cg-h{margin:0;font-family:var(--display);font-weight:400;font-size:20px;line-height:26px;letter-spacing:.5px}
.cg-sub{margin:2px 0 0;font-size:12px;line-height:16px;color:color-mix(in srgb,var(--ink-blue) 72%,transparent)}
.cg-x{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:none;color:inherit;cursor:pointer}
.cg-x:hover{background:color-mix(in srgb,var(--ink-blue) 8%,transparent)}
.cg-x svg,.cg-send svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.cg-log{flex:1;overflow-y:auto;padding:18px 18px 8px;display:flex;flex-direction:column;gap:12px;overscroll-behavior:contain}
.cg-m{max-width:88%;font-size:14px;line-height:21px;overflow-wrap:anywhere}
.cg-m p{margin:0}.cg-m p+p,.cg-m p+ul,.cg-m ul+p{margin-top:8px}
.cg-m ul{margin:0;padding-left:18px}.cg-m li+li{margin-top:4px}
.cg-m a{color:var(--slate-blue);text-decoration:underline;text-underline-offset:2px}
.cg-assistant{align-self:flex-start}
.cg-user{align-self:flex-end;background:var(--ink-blue);color:var(--pearl-white);padding:10px 14px;border-radius:16px 16px 4px 16px}
.cg-starters{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.cg-chip{min-height:36px;padding:6px 14px;border:1px solid var(--slate-blue);border-radius:var(--r-pill);background:var(--pearl-white);color:var(--ink-blue);font:inherit;font-size:13px;line-height:18px;text-align:left;cursor:pointer;transition:background-color .2s}
.cg-chip:hover{background:var(--cloud-grey)}
.cg-dots{display:inline-flex;gap:5px;padding:8px 0}
.cg-dots i{width:7px;height:7px;border-radius:50%;background:var(--shell-beige);animation:cg-dot 1.2s infinite ease-in-out}
.cg-dots i:nth-child(2){animation-delay:.15s}.cg-dots i:nth-child(3){animation-delay:.3s}
@keyframes cg-dot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.cg-form{display:flex;align-items:flex-end;gap:8px;padding:12px 12px 12px 16px;border-top:1px solid var(--cloud-grey)}
.cg-form textarea{flex:1;resize:none;min-height:44px;max-height:120px;padding:11px 14px;border:1px solid var(--shell-beige);border-radius:22px;background:#fff;color:var(--ink-blue);font:inherit;font-size:16px;line-height:20px}
.cg-form textarea:focus{outline:none;border-color:var(--slate-blue)}
.cg-send{flex:none;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--ink-blue);color:var(--pearl-white);cursor:pointer}
.cg-send:disabled{opacity:.45;cursor:default}
@media (max-width:599px){
  .cg-fab{min-height:52px;width:52px;padding:0;justify-content:center}
  .cg-fab span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .cg-panel{inset:0;width:auto;height:auto;border:0;border-radius:0;padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px)}
  .cg.on .cg-fab{display:none}
}
@media (prefers-reduced-motion:reduce){.cg-dots i{animation:none;opacity:.6}}
@media print{.cg{display:none}}
/* concierge button: the orca-and-pearl mark on its own, no pill */
html body .cg-fab{background:none;border:0;padding:0;min-height:0;width:auto;height:auto;border-radius:0;box-shadow:none;gap:0}
html body .cg-fab:hover{background:none}
/* the mark is a mask, so its colour is CSS: ink at rest, slate green on hover */
html body .cg-fab .cg-orca{width:64px;height:64px;display:block;flex:none;background:var(--ink-deep);-webkit-mask:url(../img/kit/concierge-orca.png) center/contain no-repeat;mask:url(../img/kit/concierge-orca.png) center/contain no-repeat;filter:drop-shadow(0 6px 14px rgba(28,26,25,.22));transition:transform .3s ease,background-color .3s ease}
html body .cg-fab{position:fixed;isolation:isolate}
html body .cg-fab::before{content:"";position:absolute;inset:-8px;border-radius:50%;background:#fff;box-shadow:0 10px 28px -12px rgba(28,26,25,.4);opacity:0;transform:scale(.7);transition:opacity .3s ease,transform .3s ease;z-index:-1}
html body .cg-fab:hover::before,html body .cg-fab:focus-visible::before{opacity:1;transform:scale(1)}
html body .cg-fab:hover .cg-orca,html body .cg-fab:focus-visible .cg-orca{background:var(--slate-blue);transform:translateY(-1px) scale(1.04)}
@media(max-width:599px){html body .cg-fab{width:auto;height:auto}html body .cg-fab .cg-orca{width:54px;height:54px}}
/* Words of love: horizontal row of review cards and photographs */
html body .wl{margin-top:var(--sp-l);margin-bottom:var(--sp-l)}
html body .wl-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:clamp(20px,2.4vw,32px)}
html body .wl-head .hv-h2{margin:0}
html body .wl-head .qr-all{margin-top:0}
html body .wl-wrap{position:relative;padding:0 var(--gutter)}
html body .wl-row{list-style:none;margin:0;padding:0 0 6px;display:grid;grid-auto-flow:column;grid-auto-columns:clamp(260px,22vw,340px);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
html body .wl-row::-webkit-scrollbar{display:none}
html body .wl-card{position:relative;aspect-ratio:3/4;border-radius:14px;overflow:hidden;scroll-snap-align:start;background:var(--ink-blue)}
html body .wl-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
html body .wl-rev .wl-bg{opacity:.28;filter:blur(2px) saturate(.8);transform:scale(1.06)}
html body .wl-rev::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,35,37,.25),rgba(31,35,37,.78))}
html body .wl-in{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;padding:clamp(22px,2.2vw,30px);color:#fff}
html body .wl-stars{display:inline-flex;gap:4px;margin-bottom:18px}
html body .wl-stars svg{width:16px;height:16px;fill:#F0B429}
html body .wl-q{margin:0;font:400 17px/1.55 'Noto Sans',sans-serif;color:#fff;text-wrap:pretty}
html body .wl-by{margin:auto 0 0;padding-top:20px;font:400 14px/1.4 'Noto Sans',sans-serif}
html body .wl-by b{display:block;font-weight:600;color:#fff}
html body .wl-by span{color:rgba(255,255,255,.72)}
html body .wl-wrap .rv5-nav.prev{left:calc(var(--gutter) - 22px)}
html body .wl-wrap .rv5-nav.next{right:calc(var(--gutter) - 22px)}
@media(max-width:599px){html body .wl-row{grid-auto-columns:76vw}html body .wl-q{font-size:16px}}
/* laurel badges under the review row */
html body .wl-laurels{list-style:none;margin:clamp(36px,4vw,56px) auto 0;padding:0;display:flex;justify-content:center;gap:clamp(28px,5vw,72px);flex-wrap:wrap}
html body .laurel{display:inline-flex;align-items:center;gap:6px;color:var(--champagne-brown)}
html body .laurel .lf{width:34px;height:86px;fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;flex:none}
html body .laurel .lf.rt{transform:scaleX(-1)}
html body .laurel-t{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:120px;color:var(--ink-blue)}
html body .laurel-t b{font:400 18px/1.15 var(--display);letter-spacing:1px;text-transform:uppercase}
html body .laurel-t i{font:400 13px/1.4 'Noto Sans',sans-serif;font-style:normal;color:var(--ed-b,#57524D);margin-top:4px}
@media(max-width:599px){html body .wl-laurels{gap:18px}html body .laurel .lf{width:22px;height:70px}html body .laurel-t{min-width:96px}html body .laurel-t b{font-size:15px}}
html body .hv-cats-wrap .hv-arr,html body .wl-wrap .hv-arr{top:calc(50% - 20px)}
html body .wl-wrap .hv-prev{left:calc(var(--gutter) + 10px)}html body .wl-wrap .hv-next{right:calc(var(--gutter) + 10px)}
/* hero slide 3: portrait on the left, copy on the right in ink, no dark wash */
html body .hcs-2 .hcs-bg{object-position:22% center}
html body .hcs-2::before{background:none}
html body .hcs-2 .hcs-copy.hcs-right{left:auto;right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)));top:50%;bottom:auto;transform:translateY(-50%);text-align:left;max-width:min(34vw,480px);color:var(--ink-deep)}
html body .hcs-2 .hcs-copy.hcs-right .hck,html body .hcs-2 .hcs-copy.hcs-right .hcs-h{color:var(--ink-deep)}
@media(max-width:899px){html body .hcs-2 .hcs-bg{object-position:30% center}html body .hcs-2::before{background:linear-gradient(0deg,rgba(240,238,234,.85) 0,rgba(240,238,234,0) 50%)}html body .hcs-2 .hcs-copy.hcs-right{left:var(--gutter);right:var(--gutter);top:auto;bottom:64px;transform:none;max-width:none}}
html body .hcs-2 .hcs-copy.hcs-right{max-width:min(44vw,600px);right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}
html body .hcs-2 .hcs-copy.hcs-right .hcs-h{font-size:clamp(32px,3.9vw,56px)}
html body .hcs-2 .hcs-copy.hcs-right .nw{white-space:normal}
@media(max-width:899px){html body .hcs-2 .hcs-bg{object-position:38% 20%}html body .hcs-2::before{background:linear-gradient(0deg,rgba(240,238,234,.9) 0,rgba(240,238,234,.55) 38%,rgba(240,238,234,0) 62%)}}
@media(max-width:899px){html body .hcs-2 .hcs-bg{object-position:40% 0}html body .hcs-2 .hcs-copy.hcs-right .hcs-h{font-size:30px;line-height:1.08}html body .hcs-2 .hcs-copy.hcs-right .hck{font-size:11px}html body .hcs-2 .hcs-copy.hcs-right{bottom:56px}}
@media(max-width:899px){html body .hcs-2 .hcs-copy.hcs-right{max-width:calc(100% - 2*var(--gutter))!important;width:auto}html body .hcs-2 .hcs-bg{object-position:12% 0}}
@media(min-width:900px){html body .hcs-2 .hcs-copy.hcs-right{top:auto;bottom:16%;transform:none;right:max(var(--gutter),calc((100vw - var(--maxw))/2 + var(--gutter)))}}
@media(min-width:900px){html body .hcs-2 .hcs-copy.hcs-right{width:max-content;max-width:min(44vw,600px)}}
@media(min-width:900px){html body .hcs-2 .hcs-copy.hcs-right{text-align:right}html body .hcs-2 .hcs-copy.hcs-right .hero-ctas{justify-content:flex-end}}

/* row arrows: a true 40px circle whatever the button's UA padding, zoom or container does */
html body .hv-arr{box-sizing:border-box;width:40px;height:40px;min-width:40px;max-width:40px;min-height:40px;max-height:40px;aspect-ratio:1/1;padding:0;margin:0;flex:none;border-radius:50%;line-height:0;overflow:hidden;appearance:none;-webkit-appearance:none}
html body .hv-arr svg{display:block;width:18px;height:18px}

/* laurels under Words of love: filled, veined leaves on a curving stem */
html body .laurel .lf{stroke-width:1}
html body .laurel .lf .st{stroke-width:1.2}
html body .laurel .lf .lv{fill:currentColor;fill-opacity:.14;stroke-width:.9}
html body .laurel .lf .rb{stroke-opacity:.55;stroke-width:.7}

/* home links: underline always shown; on hover it sweeps out to the right, then redraws from the left */
@keyframes ul-sweep{0%{transform:scaleX(1);transform-origin:right}48%{transform:scaleX(0);transform-origin:right}52%{transform:scaleX(0);transform-origin:left}100%{transform:scaleX(1);transform-origin:left}}
html[data-route="home"] body .hv-kf-u{position:relative;border-bottom:0;padding-bottom:2px}
html[data-route="home"] body .hv-kf-u::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:currentColor;pointer-events:none}
html[data-route="home"] body .cta-link::after,html[data-route="home"] body .hv-more::after,html[data-route="home"] body .hv-lk::after,html[data-route="home"] body .hv-rv-next::after,html[data-route="home"] body .hv-rv-all::after,html[data-route="home"] body .kf-u::after,html[data-route="home"] body .hv-kf-u::after{transform:scaleX(1);transform-origin:left;transition:none}
html[data-route="home"] body .cta-link:hover::after,html[data-route="home"] body .hv-more:hover::after,html[data-route="home"] body .hv-lk:hover::after,html[data-route="home"] body a:hover>.hv-lk::after,html[data-route="home"] body .hv-rv-next:hover::after,html[data-route="home"] body .hv-rv-all:hover::after,html[data-route="home"] body .kf-u:hover::after,html[data-route="home"] body a:hover>.kf-u::after,html[data-route="home"] body .tile:hover .cta-link::after,html[data-route="home"] body .hv-bq a:hover .hv-lk::after,html[data-route="home"] body .hv-kf:hover .kf-u::after,html[data-route="home"] body .hv-kf:hover .hv-kf-u::after,html[data-route="home"] body a:hover>.hv-kf-u::after{animation:ul-sweep .8s cubic-bezier(.4,0,.2,1) both}
@media(prefers-reduced-motion:reduce){html[data-route="home"] body .cta-link:hover::after,html[data-route="home"] body .hv-kf:hover .hv-kf-u::after{animation:none}}

/* signature cards: second product photo fades in on hover */
html body .hv-pc-img{position:relative}
html body .hv-pc-img .m1,html body .hv-pc-img .m2{position:absolute;inset:0;display:block;transition:opacity .5s}
html body .hv-pc-img .m2{opacity:0}
@media(hover:hover){html body .hv-pc:hover .hv-pc-img .m2{opacity:1}}

/* "You may also like": quieter band (cloud grey) instead of the sage mist */
html body .p2-rel{background:var(--cloud-grey,#F0F6F1)}

/* dark pill buttons: fill turns sea green and the button lifts on hover */
html body .btn-dark{transition:background .3s,transform .3s,box-shadow .3s}
html body .btn-dark:hover,html body .duo:hover .btn-dark{background:var(--slate-blue);color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px -12px rgba(31,35,37,.55)}
html body .btn-dark:active{transform:translateY(0);box-shadow:none}
html body .hv-sig .hv-pc-img .m2{background:#fff}
html body .hv-sig .hv-pc-img .m2 img{object-fit:cover;padding:0}

/* header icon buttons: no filled disc on tap (touch screens keep :hover stuck after a tap); mouse hover keeps a quiet tint */
html body .icon-btn:hover{background:none}
@media(hover:hover){html body .icon-btn:hover{background:rgba(48,53,56,.06)}}
html body .icon-btn{-webkit-tap-highlight-color:transparent}
html body .icon-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px;background:none}

/* feature tiles (A gift that lasts / Zhang Eclipse): tighter stack between kicker, title and link */
html body .hv-kf-c{gap:0}
html body .hv-kf-s{margin:0 0 4px}
html body .hv-kf-t{margin-bottom:6px}
/* "More ways to shop" under the shop grid, and the guide's topic links under the accordion */
.shop-more{border-top:1px solid var(--cloud-grey);margin-top:clamp(40px,5vw,64px);padding:clamp(28px,4vw,40px) 0 clamp(8px,2vw,16px)}
.sm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:24px 32px;margin-top:16px}
.sm-links{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.gd-topics{margin-top:clamp(32px,4vw,48px)}
.gd-topics .jump{margin-top:8px}
.gd-topics .jump .chip[aria-current="page"]{color:var(--ink-blue);text-decoration-color:currentColor}

/* header and menu logo 10% smaller */
html body .brandmark .bm-img{height:43.2px}
html body .brandmark.sm .bm-img{height:28.8px}
@media (max-width:899px){html body .bar .brandmark .bm-img{height:30.6px}}

/* hero slide 2 (Custom made pearl jewelry): a quieter headline */
@media(min-width:900px){html body .hcar .hcs-1 .hcs-h{font-size:clamp(28px,3vw,44px);letter-spacing:2px;line-height:1.1}html body .hcs-1 .hcs-copy{max-width:min(32vw,460px)}}
@media(max-width:899px){html body .hcar .hcs-1 .hcs-h{font-size:clamp(24px,6vw,34px)}}

/* footer wordmark: the same logo image as the header, in ink */
html body .foot-brand .brandmark .bm-img{height:40px;color:var(--ink-blue)}

/* footer credit: 乐呱株式会社 mark as a mask so it takes the footer text colour */
html body .foot-credit{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px}
html body .foot-credit .lego{display:inline-flex;align-items:center;color:inherit;text-decoration:none}
html body .foot-credit .lego-mark{display:inline-block;width:72px;height:16px;background:currentColor;-webkit-mask:url(../img/kit/lego-mark.png) left center/contain no-repeat;mask:url(../img/kit/lego-mark.png) left center/contain no-repeat;vertical-align:middle}

/* ---------- editorial collection page (viewEditorial): framed hero, lookbook strip, collections row ---------- */
.ed{--ed-rule:color-mix(in srgb,var(--ink-blue) 70%,transparent);padding-bottom:clamp(56px,7vw,96px)}
.ed figure{margin:0;overflow:hidden;background:var(--soft-sand)}
.ed figure img{display:block;width:100%;height:100%;object-fit:cover}
.ed-hero{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.35fr) minmax(0,1.3fr);grid-template-rows:minmax(0,1fr) auto;border-block:1px solid var(--ed-rule);background:var(--cloud-grey);margin-top:4px}
.ed-name{grid-column:1;grid-row:1;align-self:center;justify-self:center;writing-mode:vertical-rl;transform:rotate(180deg);font-family:"Cormorant SC","Cormorant Garamond","Times New Roman",serif;font-weight:500;font-size:clamp(52px,6.2vw,104px);line-height:.95;letter-spacing:.04em;color:var(--ink-deep);margin:0;padding:clamp(24px,3vw,40px) 0;max-height:calc(100% - 16px);text-wrap:balance;text-align:center}
.ed-portrait{grid-column:2;grid-row:1;aspect-ratio:4/5;border-inline:1px solid var(--ed-rule)}
.ed-side{grid-column:3;grid-row:1;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(24px,3vw,44px) 0 clamp(24px,3vw,40px)}
.ed-inset{position:relative;z-index:1;margin-left:clamp(-120px,-8vw,-48px)!important;aspect-ratio:3/2;box-shadow:0 0 0 1px var(--ed-rule)}
.ed-cap{align-self:flex-start;max-width:14em;margin:24px 0 0 clamp(28px,4vw,64px);font-style:italic;font-size:clamp(14px,1.1vw,16px);line-height:1.45;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-blue)}
.ed-links{grid-column:1/3;grid-row:2;display:flex;justify-content:space-around;flex-wrap:wrap;gap:8px 24px;padding:16px clamp(12px,2vw,28px);border-top:1px solid var(--ed-rule);border-right:1px solid var(--ed-rule)}
.ed-links a,.ed-year{font-size:13px;line-height:20px;letter-spacing:.08em;text-decoration:none;color:var(--ink-blue)}
.ed-links a:hover{color:var(--slate-blue)}
.ed-year{grid-column:3;grid-row:2;margin:0;padding:16px clamp(12px,2vw,28px);border-top:1px solid var(--ed-rule);text-transform:uppercase;text-align:right}
.ed-h2{font-family:"Cormorant SC","Cormorant Garamond","Times New Roman",serif;font-weight:500;font-size:clamp(34px,3.6vw,54px);line-height:1;letter-spacing:.02em;margin:0;color:var(--ink-deep)}
.ed-look{position:relative;margin-top:clamp(48px,6vw,88px);padding:clamp(28px,3.4vw,48px) 0 clamp(32px,4vw,56px) clamp(20px,3vw,44px);background:var(--cloud-grey);border-block:1px solid var(--ed-rule);overflow:hidden}
.ed-look::before{content:"";position:absolute;top:0;bottom:0;left:56%;border-left:1px solid var(--ed-rule)}
.ed-look .ed-h2{position:relative}
.ed-rail{position:relative;display:grid;grid-template-columns:minmax(0,36%) minmax(0,28%) minmax(0,26%);gap:clamp(24px,4vw,64px);align-items:start;margin-top:clamp(20px,2.4vw,32px);margin-right:-12%}
.ed-l1 .ed-lf{aspect-ratio:7/10}
.ed-l2{aspect-ratio:3/4;margin-top:clamp(20px,2.4vw,36px)!important;box-shadow:0 0 0 1px var(--ed-rule)}
.ed-l3{aspect-ratio:4/5;margin-top:0!important}
.ed-q{margin:clamp(20px,2.4vw,32px) 0 0;padding:0;max-width:30em}
.ed-q p{margin:0;font-style:italic;font-size:15px;line-height:1.6;color:var(--ink-blue)}
.ed-q p::before{content:"“"}.ed-q p::after{content:"”"}
.ed-colls{margin-top:clamp(48px,6vw,88px)}
.ed-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,24px);margin-top:clamp(20px,2.4vw,32px)}
.ed-tile{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--ink-blue)}
.ed-tile-img{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;background:var(--soft-sand)}
.ed-tile-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.ed-tile:hover .ed-tile-img img{transform:scale(1.04)}
.ed-tile-l{font-family:"Cormorant SC","Cormorant Garamond",serif;font-weight:500;font-size:clamp(18px,1.5vw,22px);letter-spacing:.04em}
.ed-shop{margin-top:clamp(28px,3vw,40px);border-top:1px solid var(--ed-rule)}
@media (max-width:899px){
  .ed-hero{grid-template-columns:minmax(0,1fr);grid-template-rows:none}
  .ed-name,.ed-portrait,.ed-side,.ed-links,.ed-year{grid-column:1;grid-row:auto}
  .ed-name{writing-mode:horizontal-tb;transform:none;justify-self:start;text-align:left;font-size:clamp(44px,13vw,72px);padding:20px 16px 18px;max-height:none}
  .ed-portrait{border-inline:0;border-top:1px solid var(--ed-rule);aspect-ratio:4/5}
  .ed-side{padding:0 16px 22px}
  .ed-inset{width:62%;align-self:flex-end;margin:-26% 0 0 0!important}
  .ed-cap{margin:16px 0 0}
  .ed-links{border-right:0;justify-content:flex-start;gap:6px 22px;padding:14px 16px}
  .ed-year{text-align:left;padding:12px 16px 14px}
  .ed-look{padding-left:16px}
  .ed-look::before{display:none}
  .ed-rail{display:flex;gap:14px;margin-right:0;padding-right:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .ed-rail::-webkit-scrollbar{display:none}
  .ed-rail>*{flex:0 0 76%;scroll-snap-align:start}
  .ed-l2{flex-basis:62%}.ed-l3{flex-basis:62%}
  .ed-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.ed-name.ed-long{font-size:clamp(40px,4.4vw,76px)}
@media (max-width:899px){.ed-name.ed-long{font-size:clamp(36px,10vw,56px)}}
/* images carry width/height (js/paths.js responsive()) so the browser reserves their space before they load;
   zero specificity, so any rule that sizes an image still wins */
:where(img[width][height]){max-width:100%;height:auto}

/* collection spreads: link to the matching collection under each panel */
html body .lb-panel .lb-cta{display:inline-flex;margin-top:14px}

/* The collection: split blocks (copy one side, image the other), a row of five pieces, and two collections side by side. */
html body .tf{padding-bottom:clamp(40px,5vw,80px)}
html body .tf-h,html body .tf-h2,html body .tf-h3{font-family:"Cormorant SC",serif;font-weight:500;color:var(--ink-deep);text-transform:none;letter-spacing:.4px;line-height:1.15;text-wrap:balance}
html body .tf-h{font-size:clamp(28px,2.6vw,38px)}
html body .tf-h2{font-size:clamp(28px,2.8vw,40px)}
html body .tf-h3{font-size:clamp(20px,1.6vw,24px);margin-top:18px}
html body .tf-eb{font-family:var(--display);font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--slate-blue);margin-bottom:10px}
html body .tf-p{margin:14px auto 0;max-width:46ch;font-size:15px;line-height:1.7;color:var(--ink-blue)}
html body .tf-link{display:inline-block;margin-top:26px;font-family:var(--display);font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--ink-deep);text-decoration:none;padding-bottom:6px;border-bottom:1.5px solid var(--misty-blue);transition:border-color .2s}
html body .tf-link:hover{border-color:var(--ink-deep)}
html body .tf-pic{display:block;overflow:hidden;background:var(--cloud-grey)}
html body .tf-pic img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.6,.2,1)}
html body .tf-pic:hover img{transform:scale(1.025)}
html body .tf-pic.ar54{aspect-ratio:5/4}
html body .tf-pic.ar43{aspect-ratio:4/3}
html body .tf-pic.ar11{aspect-ratio:1}
html body .tf-pic.sq{aspect-ratio:1}
/* split: text 1/3, image 2/3 flush to the viewport edge */
html body .tf-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:center;margin-top:clamp(40px,5vw,72px)}
html body .tf-split.img-left{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
html body .tf-split.img-right .tf-pic{order:2}
html body .tf-split.img-right .tf-txt{order:1}
html body .tf-txt{display:flex;align-items:center;justify-content:center;text-align:center;padding:clamp(32px,4vw,64px) clamp(24px,4vw,64px)}
html body .tf-txt>div{max-width:420px}
html body .tf-split:first-child{margin-top:clamp(24px,3vw,48px)}
/* row of five pieces */
html body .tf-row{max-width:var(--maxw);margin:clamp(40px,5vw,72px) auto 0;padding:0 var(--gutter)}
html body .tf-row ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(16px,2.4vw,40px)}
html body .tf-row a{display:block;text-align:center;color:var(--ink-deep);text-decoration:none}
html body .tf-row-img{display:block;aspect-ratio:1;background:#fff;overflow:hidden}
html body .tf-row-img img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .8s cubic-bezier(.2,.6,.2,1)}
html body .tf-row a:hover .tf-row-img img{transform:scale(1.04)}
html body .tf-row-k{display:block;margin-top:14px;font-family:"Cormorant SC",serif;font-weight:600;font-size:17px;letter-spacing:.3px}
html body .tf-row-n{display:block;margin:6px auto 0;max-width:26ch;font-size:13px;line-height:1.5;color:var(--ink-blue)}
/* two collections side by side */
html body .tf-two{max-width:var(--maxw);margin:clamp(56px,7vw,104px) auto 0;padding:0 var(--gutter);text-align:center}
html body .tf-two>.tf-p{max-width:60ch}
html body .tf-two ul{list-style:none;margin:clamp(28px,3.4vw,48px) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,36px)}
html body .tf-two li .tf-link{margin-top:12px}
@media(max-width:899px){
  html body .tf-split,html body .tf-split.img-left{grid-template-columns:minmax(0,1fr);margin-top:40px}
  html body .tf-split.img-right .tf-pic,html body .tf-split.img-left .tf-pic{order:1}
  html body .tf-split .tf-txt{order:2;padding:28px var(--gutter) 8px}
  html body .tf-pic.ar54,html body .tf-pic.ar43,html body .tf-pic.ar11{aspect-ratio:4/5}
  html body .tf-row{margin-top:40px}
  html body .tf-row ul{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:8px;-webkit-overflow-scrolling:touch}
  html body .tf-row li{flex:0 0 46%;scroll-snap-align:start}
  html body .tf-two{margin-top:56px}
  html body .tf-two ul{grid-template-columns:minmax(0,1fr);gap:36px}
  html body .tf-pic.sq{aspect-ratio:4/5}
}

/* Mega menu feature: keep the link (and its underline) as wide as its text, not the column. */
html body .feature-copy .cta-link{align-self:flex-start;width:fit-content}

/* Store policies rendered from Shopify's rich text (viewLegal): Shopify's own headings and lists */
.lg-solo{grid-template-columns:minmax(0,760px)}
.lg-rich h2{margin:44px 0 14px;padding-top:32px;border-top:1px solid color-mix(in srgb,var(--ink-blue) 10%,transparent);font:400 26px/1.25 'Belleza','Optima',sans-serif;color:var(--ink-deep);scroll-margin-top:120px}
.lg-rich h3,.lg-rich h4{margin:28px 0 10px;font:500 17px/1.4 'Noto Sans',system-ui,sans-serif;color:var(--ink-deep)}
.lg-rich ul,.lg-rich ol{margin:0 0 16px;padding-left:20px}
.lg-rich li{margin:0 0 8px}
.lg-rich li::marker{color:var(--shell-beige)}
.lg-rich strong{font-weight:500;color:var(--ink-deep)}
.lg-rich a{color:var(--ink-deep);overflow-wrap:anywhere}
.lg-contact h2{display:block}
@media(max-width:899px){html body .lg-rich h2{font-size:22px;margin-top:32px;padding-top:24px}}

/* Collection pages (Shop the collection): larger pieces on white, the name in the display face over a small centred subtitle */
html body .ed-shop .shop #grid.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(48px,5vw,80px) clamp(20px,2.4vw,40px)}
@media(min-width:1700px){html body .ed-shop .shop #grid.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:899px){html body .ed-shop .shop #grid.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 14px}}
html body .ed-shop #grid .card,html body .ed-shop #grid .card-art{background:#fff!important}
html body .ed-shop #grid .card-art{aspect-ratio:1/1.08;outline:0}
html body .ed-shop #grid .card-art img{object-fit:contain;mix-blend-mode:multiply}
html body .ed-shop #grid .card-body{text-align:center;justify-items:center;gap:6px;padding:clamp(18px,1.8vw,26px) 8px 0}
html body .ed-shop #grid .card-name{font-family:var(--display);font-weight:400;font-size:clamp(17px,1.25vw,19px);line-height:1.35;letter-spacing:.2px;min-height:0;max-width:30ch;color:var(--ink-deep)}
html body .ed-shop #grid .card-spec{font-size:13.5px;line-height:1.5;color:var(--ink-blue)}
html body .ed-shop #grid .card-price{font-size:14px!important;line-height:22px!important;font-weight:400!important;margin-top:2px;color:var(--ink-blue)}
@media(max-width:599px){html body .ed-shop #grid .card-name{font-size:16px}html body .ed-shop #grid .card-spec{font-size:12px}}

/* Journal cards: every title takes two lines and every summary three, so the "Read article" links line up across a row */
.ed-card .ed-t{-webkit-line-clamp:2;min-height:2.5em}
.ed-card .ed-x{-webkit-line-clamp:3;min-height:4.8em}
.ed-card .ed-x{margin-bottom:18px}
.ed-card .ed-more{margin-top:auto}

/* Home spacing tokens keyed to the home markup itself, not only to data-route="home", so a prerendered or
   mid-render page never shows the Signatures row collapsed to auto columns. */
html body #view:has(.hv-sig){--gutter:clamp(56px,4.6vw,80px);--maxw:calc(1360px + 2 * var(--gutter));--sp-s:112px;--sp-m:124px;--sp-l:144px;--sp-title:clamp(32px,2.6vw,40px);--sp-grid:24px}
@media (max-width:1199px){html body #view:has(.hv-sig){--gutter:40px;--sp-s:88px;--sp-m:92px;--sp-l:96px;--sp-title:28px;--sp-grid:20px}}
@media (max-width:899px){html body #view:has(.hv-sig){--gutter:32px;--sp-s:80px;--sp-m:84px;--sp-l:96px}}
@media (max-width:599px){html body #view:has(.hv-sig){--gutter:20px;--sp-s:64px;--sp-m:72px;--sp-l:80px;--sp-title:24px;--sp-grid:14px}}
html body .hv-sig .hv-row{grid-auto-columns:calc((100% - 3 * var(--sp-grid,24px))/4);gap:var(--sp-grid,24px)}
@media(max-width:899px){html body .hv-sig .hv-row{grid-auto-columns:46%;gap:var(--sp-grid,14px)}}

/* FAQ and policy bodies pulled from Shopify pages */
html body .faq-policy>*+*,html body .faq-prose>*+*{margin-top:.8em}
html body .faq-policy ul,html body .faq-policy ol,html body .faq-prose ul,html body .faq-prose ol{padding-left:1.2em}
html body .faq-policy h1,html body .faq-policy h2,html body .faq-policy h3{font-family:var(--display);font-weight:400;font-size:16px;letter-spacing:.4px;margin-top:1.2em}
html body .faq-prose{margin-top:0}

/* #status diagnostics */
html body .st-page{padding:clamp(32px,4vw,56px) var(--gutter) clamp(48px,6vw,80px)}
html body .st-page .caption{margin-top:8px}
html body .st-table{margin-top:24px;border-collapse:collapse;width:100%;max-width:900px;font-size:14px;line-height:1.5}
html body .st-table th,html body .st-table td{text-align:left;vertical-align:top;padding:10px 12px;border-top:1px solid rgba(48,53,56,.14)}
html body .st-table th{font-weight:500;white-space:nowrap;width:180px;color:var(--ink-blue)}
html body .st-page .hero-ctas{margin-top:24px}

/* Collection page new-arrivals row: the second product photo on hover */
html body .tf-row-img{position:relative}
html body .tf-row-img .m2{position:absolute;inset:0;background:#fff;opacity:0;transition:opacity .35s ease}
html body .tf-row-img .m2 img{width:100%;height:100%;object-fit:cover;mix-blend-mode:normal}
html body .tf-row a:hover .tf-row-img .m2{opacity:1}
html body .tf-row a:hover .tf-row-img .m2 img{transform:none}

/* Service cards: the photo is a link to the card's first action */
html body .au2-card .au2-img-link{display:block;overflow:hidden}
html body .au2-card .au2-img-link .au2-img{transition:transform .9s cubic-bezier(.2,.6,.2,1)}
html body .au2-card .au2-img-link:hover .au2-img{transform:scale(1.03)}
/* Pearl restringing page */
html body .rs-page{padding-bottom:clamp(48px,6vw,96px)}
html body .rs-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start;margin-top:clamp(16px,2vw,28px)}
html body .rs-img{margin:0;background:var(--cloud-grey);aspect-ratio:4/3;overflow:hidden}
html body .rs-img img{width:100%;height:100%;object-fit:cover;display:block}
html body .rs-copy .hl{margin-top:var(--s1)}
html body .rs-price{margin-top:10px;font-family:var(--display);font-size:20px;letter-spacing:.5px;color:var(--ink-deep)}
html body .rs-copy .body{margin-top:14px;max-width:52ch}
html body .rs-copy .hero-ctas{margin-top:22px;flex-wrap:wrap;gap:18px}
html body .rs-opt{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
html body .rs-lab{font-family:var(--display);font-size:12px;letter-spacing:2px;text-transform:uppercase}
html body .rs-sel{min-height:48px;padding:0 14px;border:1px solid var(--ink-blue);background:transparent;font:inherit;font-size:14px;color:var(--ink-deep)}
html body .rs-copy .rs-opt{margin-top:22px}
html body .rs-len{width:96px}
html body .rs-total{flex-basis:100%;margin:0;font-family:var(--display);font-size:16px;letter-spacing:.5px;color:var(--ink-deep);font-variant-numeric:tabular-nums}
html body .rs-note{margin-top:14px;max-width:52ch;font-size:13px;line-height:1.6;color:var(--slate-blue)}
html body .rs-desc{margin-top:28px;font-size:15px}
html body .rs-steps{margin-top:clamp(40px,5vw,72px);border-top:1px solid rgba(48,53,56,.14);padding-top:clamp(28px,3.4vw,44px)}
html body .rs-steps ol{list-style:none;counter-reset:rs;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,40px)}
html body .rs-steps li{counter-increment:rs;display:grid;gap:8px;font-size:14px;line-height:1.6;color:var(--ink-blue)}
html body .rs-steps li::before{content:counter(rs,decimal-leading-zero);font-family:var(--display);font-size:12px;letter-spacing:3px;color:var(--slate-blue)}
html body .rs-steps li b{font-family:var(--display);font-weight:400;font-size:18px;letter-spacing:.5px;color:var(--ink-deep)}
@media(max-width:899px){html body .rs-top{grid-template-columns:minmax(0,1fr);gap:24px}html body .rs-steps ol{grid-template-columns:minmax(0,1fr)}}

/* Collection page links: the underline sweeps away and back from the left on hover, like the home page links. */
html body .tf-link{position:relative;border-bottom:0;padding-bottom:6px}
html body .tf-link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:var(--misty-blue);transform:scaleX(1);transform-origin:left;pointer-events:none;transition:background-color .2s}
html body .tf-link:hover::after,html body .tf-card:hover .tf-link::after,html body .tf-two li:hover .tf-link::after{animation:ul-sweep .7s cubic-bezier(.2,.7,.2,1) both;background:var(--ink-deep)}
@media(prefers-reduced-motion:reduce){html body .tf-link:hover::after,html body .tf-card:hover .tf-link::after,html body .tf-two li:hover .tf-link::after{animation:none}}
/* Hovering a split block's photo sweeps its link underline too */
html body .tf-split:has(.tf-pic:hover) .tf-link::after{animation:ul-sweep .7s cubic-bezier(.2,.7,.2,1) both;background:var(--ink-deep)}
@media(prefers-reduced-motion:reduce){html body .tf-split:has(.tf-pic:hover) .tf-link::after{animation:none}}

/* Collection page type on the site's own scale: Belleza display for headings (uppercase, tracked like .hl), Noto Sans
   body, the display eyebrow for small labels; Cormorant SC is kept out of this page. */
html body .tf-h,html body .tf-h2{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:1.5px;line-height:1.05;color:var(--ink-blue)}
html body .tf-h{font-size:clamp(30px,3.4vw,44px)}
html body .tf-h2{font-size:clamp(28px,3vw,40px)}
html body .tf-h3{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:2px;font-size:clamp(17px,1.5vw,21px);line-height:1.25;color:var(--ink-blue)}
html body .tf-eb{color:var(--slate-blue)}
html body .tf-p{font-family:var(--body);font-size:15px;line-height:22px;color:var(--ink-blue)}
html body .tf-link{font-family:var(--display);font-size:13px;letter-spacing:2px;color:var(--ink-blue)}
html body .tf-row-k{font-family:var(--display);font-weight:400;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--slate-blue)}
html body .tf-row-n{font-family:var(--body);font-size:14px;line-height:22px;color:var(--ink-blue)}


/* Card price on the VI scale: the same size as the name, medium weight, in the deep walnut the product page price uses */
html body .card .card-price{font-size:15px!important;line-height:22px!important;font-weight:500!important;letter-spacing:.2px!important;color:color-mix(in srgb,var(--champagne-brown) 78%,#000)}
html body .hrail .card-price{font-size:14px!important}
@media(max-width:600px){html body .card .card-price{font-size:14px!important}}

/* footer legal row: keep clear of the concierge orca and the accessibility button fixed in the bottom-right corner */
@media (min-width:900px){html body .foot-bottom ul{padding-right:calc(var(--cg-r,24px) + 150px)}}
@media (max-width:899px){html body .foot-bottom{padding-bottom:88px}}

/* a policy page without a table of contents: one reading column */
html body .lg-grid.lg-solo{grid-template-columns:minmax(0,760px)}

/* sitemap page: one plain list of links, numbered pages under it */
html body .sm-list{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-width:760px;font:400 16px/1.5 'Noto Sans',system-ui,sans-serif}
html body .sm-list a{display:inline-block;padding:6px 0;color:var(--ink-blue);text-decoration:none}
html body .sm-list a:hover{color:var(--ink-deep);text-decoration:underline;text-underline-offset:3px}
html body .sm-pages{display:flex;flex-wrap:wrap;gap:8px;margin-top:40px;padding-top:28px;border-top:1px solid color-mix(in srgb,var(--ink-blue) 12%,transparent)}
html body .sm-pages a,html body .sm-pages span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;border:1px solid color-mix(in srgb,var(--ink-blue) 18%,transparent);font:400 14px/1 'Noto Sans',system-ui,sans-serif;color:var(--ink-blue);text-decoration:none}
html body .sm-pages a:hover{border-color:var(--ink-deep);color:var(--ink-deep)}
html body .sm-pages span[aria-current]{background:var(--ink-deep);border-color:var(--ink-deep);color:#fff}
