/* ════════════════════════════════════════════════════════════════════
   FINIAL DESIGN — brand layer (redesigned 30 Oct 2026)
   Loaded by rs_head() in _chrome.php AFTER assets/store.css, so rules
   here win the cascade at equal specificity. The site's own pages
   (index, category, product) use fd-* classes from _finial.php; the
   template's other pages (contact, bag, account, checkout, info pages)
   inherit the tokens and typography from the top of this file.

   Direction: an editorial dealer's catalogue on warm paper — EB Garamond
   for headings and long text with italic accents, Jost small and
   letterspaced for labels and prices, bronze linework, and ONE small
   vermilion highlight (--pop) for the lit dots, the finial, the
   underline that marks where you are, and hovers. Use it sparingly.
   ════════════════════════════════════════════════════════════════════ */

/* ── Tokens ─────────────────────────────────────────────────────── */
:root,html[data-theme]{
  --paper:#FBFAF6;          /* page */
  --paper-2:#F2EEE5;        /* picture panels */
  --paper-3:#E9E3D6;        /* panel edges */
  --ink:#1D1B17;
  --ink-soft:#3A362F;
  --ink-dim:#77705F;
  --hairline:#E3DDD0;
  --line:#3E3427;           /* the drawings */
  --brass:#9A7B45;
  --pop:#D04A26;            /* vermilion: small highlights only */
  --glow:246,180,81;        /* lamp light, as r,g,b */

  /* the template's tokens, mapped onto ours */
  --accent:var(--ink);--accent-hover:var(--pop);--accent-deep:var(--brass);--accent-tint:var(--paper-2);--accent-ink:#9C3A1F;
  --bar-bg:rgba(251,250,246,.9);--sheet-bg:var(--paper);--ink-big:var(--ink);
  --curtain:rgba(251,250,246,.55);--frame:var(--hairline);--focus:rgba(208,74,38,.55);
  --bar-h:64px;

  --serif:'EB Garamond',Garamond,'Times New Roman',serif;
  --sans:'Jost','Futura','Century Gothic',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
  --ease-out:cubic-bezier(.22,.61,.36,1);
  --gut:40px;
  color-scheme:light;
}
@media (max-width:833px){:root,html[data-theme]{--bar-h:56px;--gut:18px}}

/* ── Base ───────────────────────────────────────────────────────── */
html[data-theme] body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}
::selection{background:rgba(var(--glow),.45)}
:focus-visible{outline:1.5px solid var(--pop);outline-offset:3px;border-radius:0}
.rs-skip{background:var(--ink);color:var(--paper)}
em{font-style:italic}

/* ── Header: links left, wordmark centred, Search · Account · Bag right ── */
.gn-bar{background:var(--bar-bg);border-bottom:1px solid transparent;transition:border-color .4s,background .4s}
.fd-scrolled .gn-bar,.gn.open .gn-bar{border-bottom-color:var(--hairline)}
.gn-link{font-family:var(--sans);font-size:13px;letter-spacing:.02em;color:var(--ink);opacity:1}
.gn-label{display:none}
.gn-apple{color:var(--ink);gap:10px}
.fd-mark{display:flex;align-items:center;color:var(--ink)}
.fd-mark svg{fill:currentColor}
.fd-mark circle{fill:var(--pop);transition:filter .4s}
.gn-apple:hover .fd-mark circle{filter:drop-shadow(0 0 4px rgba(var(--glow),.9))}
.fd-word{font-family:var(--serif);font-weight:500;font-size:22px;line-height:1;letter-spacing:.3em;margin-right:-.3em;color:var(--ink)}
@media (min-width:834px){
  .gn-content{width:100%;max-width:none;padding:0 var(--gut);position:relative;justify-content:flex-start}
  .gn-apple{position:absolute;left:50%;top:0;height:var(--bar-h);transform:translateX(-50%)}
  .gn-list{display:flex;gap:26px}
  .gn-actions{margin-left:auto;gap:26px}
  .gn-actions .gn-icon-link svg{display:none}
  .gn-label{display:inline}
  .gn-bagcount{position:static;min-width:0;height:auto;padding:0;margin-left:3px;background:none;color:var(--ink);font-size:13px;font-weight:400;line-height:inherit}
  .gn-bagcount::before{content:"("}.gn-bagcount::after{content:")"}
  .gn-acctdot{top:50%;right:-9px;margin-top:-3px;width:5px;height:5px;background:var(--pop)}
  .gn-list .gn-link,.gn-actions .gn-link{position:relative}
  .gn-list .gn-link::after,.gn-actions .gn-link::after{content:"";position:absolute;left:0;right:0;top:calc(50% + 11px);height:1px;background:var(--pop);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-out)}
  .gn-list .gn-item:hover .gn-link::after,.gn-item.active .gn-link::after,.gn-link.is-current::after,.gn-actions .gn-link:hover::after,.gn-actions .gn-link.active::after{transform:scaleX(1)}
}
@media (max-width:833px){
  .gn-content{width:100%;max-width:none;padding:0 var(--gut)}
  .gn-apple.gn-icon-link{width:auto;padding:0;margin-right:auto}
  .gn-bagcount{background:var(--pop);color:#fff}
  .fd-word{font-size:19px}
}

/* Flyouts and the phone sheet */
.gn-flyout,.gn-mobile{background:var(--paper)}
.gn-panel{max-width:none;padding:40px var(--gut) 64px}
.gn-chip-title,.gn-bag-title{font-family:var(--serif);font-weight:400;font-size:34px;letter-spacing:0;color:var(--ink)}
.gn-chip-row{gap:4px 34px;margin-top:20px}
.gn-chip,.gn-chip-fill,.gn-chip:hover,.gn-chip-fill:hover{border:0;border-radius:0;background:none;padding:4px 0;font-family:var(--serif);font-size:26px;color:var(--ink);box-shadow:inset 0 -1px 0 transparent;transition:box-shadow .3s,color .3s}
.gn-chip:hover,.gn-chip-fill:hover{color:var(--pop);box-shadow:inset 0 -1px 0 var(--pop)}
.gn-col h3,.gn-quick h3,.gn-bagbox h3,.gn-m-groups h3,.gn-m-quick h3{font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim)}
.gn-big a,.gn-m-groups .big a{font-family:var(--serif);font-weight:400;font-size:26px;color:var(--ink)}
.gn-mini a,.gn-m-groups .mini a,.gn-m-quick a{font-family:var(--sans);font-weight:400;color:var(--ink)}
.gn-searchbar input,.gn-m-searchbar input{font-family:var(--serif);font-weight:400;font-size:30px;color:var(--ink)}
.gn-m-list a{font-family:var(--serif);font-weight:400;font-size:32px;color:var(--ink)}
.gn-bagbtn{background:var(--ink);color:var(--paper);border-radius:0;font-family:var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.gn-bagbtn:hover{background:var(--pop);color:#fff}
.gn-bagart{background:var(--paper-2);border-radius:0}
.gn-bagart svg{stroke:var(--line);stroke-width:1.6}

/* ── Type for every page ───────────────────────────────────────── */
.ct-head h1,.c2-head h1,.pd h1,.bg h1,.hero h1,.ct-h2,.ct-usp-item h3,.ac-card h1,.cf-head h1{font-family:var(--serif);font-weight:400;letter-spacing:0;color:var(--ink)}
.ct-head h1,.bg h1{font-size:44px}
.ct-head p,.pd-desc{font-family:var(--serif);font-size:20px;line-height:1.5;color:var(--ink-soft)}
.pd-buy{background:var(--ink);color:var(--paper);border-radius:0;font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}
.pd-buy:hover{background:var(--pop);color:#fff}
.ct-chip,.c2-chip{border-radius:0;background:transparent}
.ct-card,.c2-card,.pd-opt select,.pd-opt input,.bg-qty,.bg-email{background:#fff}
.ct-band{background:var(--paper-2)}
footer.rs-foot a{color:inherit}

/* ════════════════════════════════════════════════════════════════════
   Building blocks (fd-*)
   ════════════════════════════════════════════════════════════════════ */
.fd-eyebrow{display:flex;align-items:center;gap:10px;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}
.fd-display{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4.6vw,66px);line-height:1.02;letter-spacing:-.01em;color:var(--ink)}
.fd-display em,.fd-h2 em,.fd-cat-title em,.fd-pd-title em{font-style:italic}
.fd-h2{font-family:var(--serif);font-weight:400;font-size:clamp(28px,2.8vw,40px);line-height:1.08;letter-spacing:-.005em;color:var(--ink)}
.fd-lede{font-family:var(--serif);font-size:clamp(20px,1.75vw,25px);line-height:1.38;color:var(--ink);max-width:31em}
.fd-lede-s{font-size:clamp(19px,1.5vw,22px)}
.fd-no{font-family:var(--sans);font-size:11px;letter-spacing:.08em;color:var(--ink-dim);font-variant-numeric:tabular-nums}
.fd-empty{font-family:var(--serif);font-size:20px;color:var(--ink-soft)}

/* ▸ arrow links, small caps */
.fd-arrows{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.fd-arrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-size:11.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);transition:color .3s}
.fd-arrow span{display:inline-block;font-size:9px;transition:transform .35s var(--ease-out),color .3s}
.fd-arrow:hover{color:var(--pop)}
.fd-arrow:hover span{transform:translateX(4px);color:var(--pop)}

/* Buttons: square, ink; vermilion on hover */
.fd-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:15px 22px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .3s,border-color .3s,color .3s}
.fd-btn span{font-size:9px;transition:transform .35s var(--ease-out)}
.fd-btn:hover{background:var(--pop);border-color:var(--pop);color:#fff}
.fd-btn:hover span{transform:translateX(4px)}
.fd-btn-line{background:transparent;color:var(--ink)}
.fd-btn-line:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.fd-btn.is-added{background:var(--ink);color:var(--paper)}

/* The lit dot: a lamp switched on. Grey once sold. */
.fd-lit{display:inline-block;flex:none;width:7px;height:7px;border-radius:50%;background:var(--pop);vertical-align:middle;box-shadow:0 0 0 0 rgba(208,74,38,.4);animation:fdPulse 2.6s ease-out infinite}
.fd-lit.is-off{background:#B7AFA0;animation:none;box-shadow:none}
@keyframes fdPulse{0%{box-shadow:0 0 0 0 rgba(208,74,38,.38)}70%{box-shadow:0 0 0 7px rgba(208,74,38,0)}100%{box-shadow:0 0 0 0 rgba(208,74,38,0)}}

/* ── Drawings on lit panels ─────────────────────────────────────── */
html[data-theme] .fd-draw{position:relative;background:var(--paper-2);overflow:hidden}
html[data-theme] .fd-draw::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--gpos,50% 60%),rgba(var(--glow),.42) 0%,rgba(var(--glow),.12) 22%,transparent 46%);opacity:0;transition:opacity .9s var(--ease-out)}
html[data-theme] .fd-draw>span{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:0;background:none}
html[data-theme] .fd-draw svg{width:52%;height:auto;fill:none;stroke:var(--line);stroke-width:.95;stroke-linecap:round;stroke-linejoin:round;transition:transform .9s var(--ease-out)}
/* each stroke inks in turn (finial.js sets pathLength and --n) */
.fd-ink svg path,.fd-ink svg circle,.fd-ink svg rect{stroke-dasharray:1 1;stroke-dashoffset:1;animation:fdInk 1.4s cubic-bezier(.45,.05,.25,1) forwards;animation-delay:calc(var(--n,0) * 55ms)}
@keyframes fdInk{to{stroke-dashoffset:0}}

/* ── Cards: picture, then name · price, attribution in italic ──── */
.fd-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:56px 22px}
.fd-card{display:flex;flex-direction:column;color:var(--ink)}
.fd-card-art{display:block;aspect-ratio:4/5;margin-bottom:14px}
.fd-card-art.has-img{position:relative;overflow:hidden;background:var(--paper-2)}
.fd-card-art .rs-img{transition:transform 1s var(--ease-out)}
.fd-card:hover .fd-card-art .rs-img{transform:scale(1.03)}
.fd-card:hover .fd-draw::before{opacity:1}
.fd-card:hover .fd-draw svg{transform:translateY(-4px)}
.fd-card-row{display:flex;align-items:baseline;justify-content:space-between;gap:14px;font-family:var(--sans);font-size:13.5px;line-height:1.35}
.fd-card-name{background:linear-gradient(var(--pop),var(--pop)) left bottom/0 1px no-repeat;transition:background-size .5s var(--ease-out)}
.fd-card:hover .fd-card-name{background-size:100% 1px}
.fd-card-price{flex:none;display:inline-flex;align-items:center;gap:7px;font-variant-numeric:tabular-nums}
.fd-card-sub{margin-top:4px;font-family:var(--serif);font-style:italic;font-size:15.5px;color:var(--ink-dim)}
.fd-card.is-sold .fd-card-art{opacity:.62;transition:opacity .4s}
.fd-card.is-sold:hover .fd-card-art{opacity:1}
.fd-card.is-sold .fd-card-price{color:var(--ink-dim)}

/* ── Sections ───────────────────────────────────────────────────── */
.fd-section{padding:96px var(--gut) 0}
.fd-section-tight{padding-top:36px}
.fd-sechead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}
.fd-sechead-note{font-family:var(--serif);font-style:italic;font-size:17px;color:var(--ink-dim)}
.fd-soldband{padding-top:120px}

/* reveal (finial.js holds back only what is below the fold) */
.fd-pre{opacity:0;transform:translateY(22px)}
.fd-in{opacity:1;transform:none;transition:opacity .9s var(--ease-out),transform 1s var(--ease-out);transition-delay:calc(var(--d,0) * 90ms)}

/* ── Home ───────────────────────────────────────────────────────── */
.fd-hero{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - var(--bar-h));min-height:calc(100svh - var(--bar-h))}
.fd-hero-media{display:flex}
.fd-plate{flex:1;margin:0;display:flex;flex-direction:column;justify-content:center;padding:6% 7% 0}
html[data-theme] .fd-plate::before{opacity:1;background:radial-gradient(circle at var(--gpos,50% 58%),rgba(var(--glow),.34) 0%,rgba(var(--glow),.1) 24%,transparent 50%);transition:background .2s linear}
.fd-plate-svg{position:relative;display:block;width:100%;max-width:640px;max-height:72vh;margin:auto auto 0;overflow:visible}
html[data-theme] .fd-plate svg.fd-plate-svg{width:100%;height:auto;stroke-width:1}
.fd-plate-lamp{stroke-width:.24}
.fd-plate-lines{stroke:var(--ink-dim);stroke-width:.7;opacity:.8}
.fd-plate-dot{fill:var(--pop);stroke:none}
.fd-plate-ring{fill:none;stroke:var(--pop);stroke-width:.8;transform-box:fill-box;transform-origin:center;animation:fdRing 2.8s ease-out infinite}
@keyframes fdRing{0%{opacity:.8;transform:scale(.4)}80%,100%{opacity:0;transform:scale(1.8)}}
.fd-plate-label{font-family:var(--sans);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;fill:var(--ink-soft);stroke:none}
.fd-ink .fd-plate-label{opacity:0;animation:fdFade .7s var(--ease-out) forwards;animation-delay:calc(1.5s + var(--n,0) * 160ms)}
.fd-ink .fd-plate-dot,.fd-ink .fd-plate-ring{stroke-dasharray:none;stroke-dashoffset:0}
.fd-ink .fd-plate-dot{opacity:0;animation:fdFade .5s 2.2s forwards}
@keyframes fdFade{from{opacity:0}to{opacity:1}}
.fd-plate-cap{position:relative;display:flex;justify-content:space-between;gap:20px;margin-top:auto;padding:22px 0 24px;border-top:1px solid var(--paper-3);font-family:var(--sans);font-size:12px;color:var(--ink-soft)}
.fd-plate-cap em{font-family:var(--serif);font-size:15px}
.fd-plate-cap span span{color:var(--ink-dim)}
.fd-plate-cap a:hover{color:var(--pop)}
.fd-plate-no{font-variant-numeric:tabular-nums;color:var(--ink-dim)}
.fd-hero-text{display:flex;flex-direction:column;justify-content:center;gap:28px;padding:64px 9% 64px 8%}

.fd-ticker{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);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)}
.fd-ticker-track{display:flex;width:max-content;animation:fdTick 70s linear infinite}
.fd-ticker:hover .fd-ticker-track{animation-play-state:paused}
.fd-ticker li{flex:none;display:flex;align-items:center}
.fd-ticker li::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--pop);margin:0 34px;opacity:.85}
.fd-ticker a{padding:17px 0;font-family:var(--sans);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);white-space:nowrap;transition:color .3s}
.fd-ticker a em{font-family:var(--serif);font-size:19px;letter-spacing:0;text-transform:none;color:var(--ink);margin-left:6px}
.fd-ticker a:hover,.fd-ticker a:hover em{color:var(--pop)}
@keyframes fdTick{to{transform:translateX(-50%)}}

/* the maker index */
.fd-index{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.fd-index-row{position:relative;display:grid;grid-template-columns:70px minmax(180px,1.1fr) 2fr 110px 96px;align-items:center;gap:24px;padding:22px 0;border-bottom:1px solid var(--hairline);color:var(--ink)}
.fd-index-name{font-family:var(--serif);font-size:clamp(28px,2.6vw,38px);line-height:1.05;transition:transform .5s var(--ease-out),color .3s}
.fd-index-note{font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.4;color:var(--ink-dim)}
.fd-index-count{font-family:var(--sans);font-size:12px;letter-spacing:.08em;text-align:right;color:var(--ink-soft)}
.fd-index-art{width:96px;height:72px;justify-self:end;opacity:.7;transition:opacity .5s}
html[data-theme] .fd-index-art svg{width:64%;stroke-width:1.6}
.fd-index-row:hover .fd-index-name{transform:translateX(10px);color:var(--pop)}
.fd-index-row:hover .fd-index-art{opacity:1}
.fd-index-row:hover .fd-index-art::before{opacity:1}
.fd-index-sold .fd-index-name{color:var(--ink-soft)}

/* split: picture panel left, text right */
.fd-split{display:grid;grid-template-columns:1fr 1fr;margin-top:120px}
.fd-split-media{aspect-ratio:1/1.05}
html[data-theme] .fd-house svg{width:58%;stroke-width:.8}
html[data-theme] .fd-house::before{opacity:1;background:radial-gradient(circle at var(--gpos),rgba(var(--glow),.45) 0%,rgba(var(--glow),.12) 16%,transparent 34%)}
.fd-house .fd-window{fill:rgba(var(--glow),.75);animation:fdFlicker 6s ease-in-out infinite}
@keyframes fdFlicker{0%,100%{fill-opacity:.85}45%{fill-opacity:.62}52%{fill-opacity:.9}70%{fill-opacity:.7}}
.fd-ink svg .fd-smoke{stroke-dasharray:none;stroke-dashoffset:0}
.fd-house .fd-smoke{opacity:.55;animation:fdSmoke 5s ease-in-out infinite;transform-box:fill-box;transform-origin:bottom}
@keyframes fdSmoke{0%,100%{transform:translateY(0) scaleY(1);opacity:.5}50%{transform:translateY(-1.5px) scaleY(1.08);opacity:.2}}
.fd-split-text{display:flex;flex-direction:column;justify-content:center;gap:24px;padding:64px 9% 64px 8%}

/* how it works */
.fd-assure{padding:120px var(--gut) 110px}
.fd-assure + .fd-crumbbar{margin-top:0}
.fd-assure-in{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;border-top:1px solid var(--hairline);padding-top:30px}
.fd-assure h3{margin-top:12px;font-family:var(--serif);font-weight:400;font-size:26px;color:var(--ink)}
.fd-assure p{margin-top:8px;max-width:26em;font-size:14.5px;line-height:1.65;color:var(--ink-soft)}
.fd-assure a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--pop)}
.fd-assure a:hover{color:var(--pop)}

/* ── Collection ─────────────────────────────────────────────────── */
.fd-cat-head{padding:56px var(--gut) 0;display:flex;flex-direction:column;gap:22px}
.fd-cat-title{font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.1;color:var(--ink)}
.fd-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;margin-top:54px;padding:16px var(--gut);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
.fd-filter{display:flex;flex-wrap:wrap;gap:6px 26px;font-family:var(--sans);font-size:13px}
.fd-filter a{position:relative;color:var(--ink-dim);transition:color .3s}
.fd-filter a sup{font-size:9.5px;margin-left:1px;color:var(--ink-dim)}
.fd-filter a:hover,.fd-filter a.is-on{color:var(--ink)}
.fd-filter a::after{content:"";position:absolute;left:0;right:0;bottom:-17px;height:1px;background:var(--pop);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-out)}
.fd-filter a.is-on::after,.fd-filter a:hover::after{transform:scaleX(1)}
.fd-count{display:flex;align-items:center;gap:9px;font-family:var(--sans);font-size:13px;color:var(--ink-soft)}

/* breadcrumb bar above the footer */
.fd-crumbbar{margin-top:110px;border-top:1px solid var(--hairline)}
.fd-crumbbar .rs-crumb{max-width:none;margin:0;padding:16px var(--gut);font-family:var(--sans);font-size:12.5px;color:var(--ink-dim);gap:10px}
.fd-crumbbar .rs-crumb a{color:var(--ink-soft)}
.fd-crumbbar .rs-crumb a:hover{color:var(--pop);text-decoration:none}
.fd-crumbbar .rs-crumb .sep{font-size:0;opacity:1}
.fd-crumbbar .rs-crumb .sep::before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--ink-dim);vertical-align:middle}
.fd-crumbbar .rs-crumb [aria-current]{color:var(--ink);font-weight:400}

/* ── Piece page ─────────────────────────────────────────────────── */
.fd-pd{display:grid;grid-template-columns:1fr 1fr;align-items:start}
.fd-pd-media{position:sticky;top:var(--bar-h)}
.fd-pd-art{display:block;height:calc(100vh - var(--bar-h));height:calc(100svh - var(--bar-h));min-height:520px}
.fd-pd-art.has-img{background:var(--paper-2)}
.fd-pd-art .rs-img{width:100%;height:100%;object-fit:cover}
html[data-theme] .fd-pd-art.fd-draw::before{opacity:1}
html[data-theme] .fd-pd-art.fd-draw svg{width:46%;stroke-width:.7}
.fd-thumbs{position:absolute;left:var(--gut);bottom:20px;display:flex;gap:8px}
.fd-thumb{width:52px;height:64px;padding:0;border:1px solid transparent;background:var(--paper-2);opacity:.7;cursor:pointer;transition:opacity .3s,border-color .3s}
.fd-thumb[aria-pressed="true"],.fd-thumb:hover{opacity:1;border-color:var(--ink)}
.fd-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.fd-pd-info{padding:84px var(--gut) 40px}
.fd-pd-inner{max-width:440px;margin:0 auto}
.fd-pd-tag{font-family:var(--serif);font-style:italic;font-size:16px;color:var(--ink-dim)}
.fd-pd-title{margin-top:6px;font-family:var(--serif);font-weight:400;font-size:clamp(30px,2.6vw,38px);line-height:1.08;color:var(--ink)}
.fd-attr{margin-top:12px;font-size:13.5px;line-height:1.55;color:var(--ink-dim)}
.fd-pd-price{margin-top:22px;font-family:var(--sans);font-size:16px;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.fd-pd-tax{margin-top:2px;font-size:12.5px;color:var(--ink-dim)}
.fd-status{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:13px;color:var(--ink-soft)}
.fd-note{margin-top:18px;padding:11px 14px;border:1px dashed var(--paper-3);background:rgba(var(--glow),.1);font-size:12.5px;line-height:1.5;color:var(--ink-soft)}
.fd-pd-ctas{display:flex;flex-direction:column;gap:10px;margin-top:24px}
.fd-select{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--ink-dim)}
.fd-select select{font:inherit;font-size:14px;padding:12px;border:1px solid var(--hairline);background:#fff;color:var(--ink)}
.fd-pd-caps{margin-top:22px;font-size:10.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}
.fd-pd-lead{margin-top:16px;font-size:14.5px;line-height:1.7;color:var(--ink-soft)}
.fd-acc{margin-top:22px}
.fd-acc summary{display:inline-flex;align-items:center;gap:10px;cursor:pointer;list-style:none;padding-bottom:3px;border-bottom:1px solid var(--ink);font-size:13.5px;color:var(--ink);transition:color .3s,border-color .3s}
.fd-acc summary::-webkit-details-marker{display:none}
.fd-acc summary::after{content:"+";font-size:15px;line-height:1;color:var(--ink-dim);transition:transform .35s var(--ease-out)}
.fd-acc[open] summary::after{transform:rotate(45deg)}
.fd-acc summary:hover{color:var(--pop);border-color:var(--pop)}
.fd-acc[open]>:not(summary){animation:fdOpen .5s var(--ease-out)}
@keyframes fdOpen{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.fd-specs{margin-top:14px;border-top:1px solid var(--hairline)}
.fd-specs>div{display:grid;grid-template-columns:118px 1fr;gap:14px;padding:11px 0;border-bottom:1px solid var(--hairline);font-size:13.5px;line-height:1.55}
.fd-specs dt{padding-top:2px;font-size:10.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim)}
.fd-specs dd{margin:0;color:var(--ink)}
.fd-role{margin-left:6px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim)}
.fd-role.fd-each{margin-left:0}
.fd-rich{margin-top:14px;font-family:var(--serif);font-size:18px;line-height:1.55;color:var(--ink-soft)}
.fd-rich p+p,.fd-rich p+ul,.fd-rich ul+p{margin-top:10px}
.fd-rich h3{margin:18px 0 4px;font-weight:500;font-size:19px;color:var(--ink)}
.fd-rich ul{margin-left:1.1em;list-style:disc}
.fd-rich blockquote{margin:14px 0;padding-left:14px;border-left:1px solid var(--pop)}
.fd-rich a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--pop)}
.fd-rich .fd-fine{font-family:var(--sans);font-size:12px;color:var(--ink-dim)}
.fd-rich .fd-arrow{text-decoration:none}
.fd-doc{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.fd-doc figure{margin:0}
.fd-doc figcaption{margin-top:7px;font-size:10.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim)}
.fd-doc-img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--paper-2)}
.fd-doc-empty{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;font-family:var(--serif);font-style:italic;font-size:14px;line-height:1.35;color:var(--ink-dim);border:1px dashed var(--paper-3);background:repeating-linear-gradient(-45deg,transparent 0 9px,rgba(119,112,95,.07) 9px 10px)}
.fd-doc-ref{margin-top:12px;font-family:var(--serif);font-size:16px;line-height:1.5;color:var(--ink-soft)}

/* ── Footer ─────────────────────────────────────────────────────── */
footer.rs-foot.fd-foot{margin-top:0;padding:0;border-top:1px solid var(--hairline);text-align:left;font-size:13px;color:var(--ink)}
.fd-foot-in{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;padding:52px var(--gut) 72px}
.fd-foot-word{font-family:var(--serif);font-size:24px;color:var(--ink)}
.fd-foot-word em{font-style:italic}
.fd-foot-brand p{max-width:24em;margin-top:12px;font-family:var(--serif);font-size:17px;line-height:1.45;color:var(--ink-soft)}
.fd-foot-brand .fd-foot-cta{margin-top:18px}
.fd-foot-cta a{font-family:var(--sans);font-size:11.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid var(--pop);padding-bottom:2px}
.fd-foot-cta a:hover{color:var(--pop)}
.fd-foot h4{margin-bottom:14px;font-family:var(--sans);font-size:10.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}
.fd-foot ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.fd-foot-col a{font-size:14px;color:var(--ink);transition:color .3s}
.fd-foot-col a:hover{color:var(--pop)}
.fd-foot-base{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px var(--gut) 26px;border-top:1px solid var(--hairline);font-size:12px;color:var(--ink-dim)}
.fd-foot-base a{text-decoration:underline;text-underline-offset:2px}

/* ── Phones and tablets ─────────────────────────────────────────── */
@media (max-width:1100px){
  .fd-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fd-index-row{grid-template-columns:52px 1fr 90px;gap:16px}
  .fd-index-note,.fd-index-art{display:none}
}
@media (max-width:833px){
  .fd-hero,.fd-split,.fd-pd{grid-template-columns:1fr}
  .fd-hero{min-height:0}
  .fd-plate{padding:28px 18px 0}
  .fd-plate-svg{max-height:none}
  .fd-hero-text{padding:40px var(--gut) 56px;gap:22px}
  .fd-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 12px}
  .fd-card-row{flex-direction:column;gap:2px;font-size:13px}
  .fd-card-sub{font-size:14.5px}
  .fd-section{padding-top:64px}
  .fd-sechead{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px}
  .fd-soldband{padding-top:80px}
  .fd-index-row{grid-template-columns:40px 1fr auto;padding:18px 0}
  .fd-split{margin-top:80px}
  .fd-split-media{aspect-ratio:4/3}
  .fd-split-text{padding:40px var(--gut) 0}
  .fd-assure{padding-top:80px}
  .fd-assure-in{grid-template-columns:1fr;gap:28px}
  .fd-cat-head{padding-top:36px}
  .fd-toolbar{margin-top:36px;align-items:flex-start;flex-direction:column}
  .fd-filter{gap:10px 18px}
  .fd-filter a::after{bottom:-4px}
  .fd-pd-media{position:relative;top:0}
  .fd-pd-art{height:auto;min-height:0;aspect-ratio:4/5}
  .fd-thumbs{left:var(--gut);bottom:12px}
  .fd-pd-info{padding:34px var(--gut) 0}
  .fd-crumbbar{margin-top:72px}
  .fd-foot-in{grid-template-columns:1fr 1fr;gap:34px 20px;padding:40px var(--gut) 48px}
  .fd-foot-brand{grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){
  .fd-lit,.fd-plate-ring,.fd-house .fd-window,.fd-house .fd-smoke{animation:none}
  .fd-ticker-track{animation:none}
  .fd-ticker{overflow-x:auto}
  .fd-card-art .rs-img,html[data-theme] .fd-draw svg,.fd-index-name{transition:none}
}
