/*
 * FurnitureDeals theme styles.
 *
 *  1. Fonts            6. Finder (home, top)     11. Shortlist, compare, toast
 *  2. Tokens, base     7. Home sections          12. Pages, guides, comments
 *  3. Shared pieces    8. Listing pages          13. Cart, checkout, account
 *  4. Header, menu     9. Product page           14. Footer, phone bar
 *  5. Rings, cards    10. Panels on product page 15. Motion, print
 *
 * Every class starts with "fdt-". Colours and sizes come from variables that
 * functions.php fills from the Customizer.
 */

/* ------------------------------------------------------------------ 1. Fonts */
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:swap;src:url(../fonts/jakarta-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:swap;src:url(../fonts/jakarta-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ------------------------------------------------------------------ 2. Tokens, base */
:root{
	--fdt-ink:#2b190f;--fdt-ember:#c2410c;--fdt-leaf:#2f6f2a;--fdt-honey:#d99a2b;--fdt-shell:#f5f1ea;
	--fdt-paper:#fff;
	--fdt-ink-2:color-mix(in srgb,var(--fdt-ink) 72%,#fff);
	--fdt-ink-3:color-mix(in srgb,var(--fdt-ink) 52%,#fff);
	--fdt-line:color-mix(in srgb,var(--fdt-ink) 15%,transparent);
	--fdt-line-2:color-mix(in srgb,var(--fdt-ink) 8%,transparent);
	--fdt-ember-dark:color-mix(in srgb,var(--fdt-ember) 86%,#000);
	--fdt-ring-1:var(--fdt-ink);
	--fdt-ring-2:color-mix(in srgb,var(--fdt-ink) 45%,var(--fdt-ember));
	--fdt-ring-3:var(--fdt-ember);
	--fdt-ring-4:var(--fdt-honey);
	--fdt-ring-track:color-mix(in srgb,var(--fdt-ink) 9%,transparent);
	--fdt-display:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
	--fdt-body:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
	--fdt-wrap-w:1280px;--fdt-space:72px;--fdt-text:1.0625rem;--fdt-h-scale:1;--fdt-r:10px;--fdt-btn-r:8px;--fdt-cols:4;--fdt-logo-h:46px;
	--fdt-gutter:clamp(16px,4vw,40px);
	--fdt-h1:calc(clamp(1.8rem,1.2rem + 2.3vw,2.8rem)*var(--fdt-h-scale));
	--fdt-h2:calc(clamp(1.45rem,1.15rem + 1.25vw,2.05rem)*var(--fdt-h-scale));
	--fdt-h3:calc(1.14rem*var(--fdt-h-scale));
}
/* Jumps inside a page (the contents list of a guide, the finder link, a filter anchor) glide
   instead of snapping. The sticky header is about 90px, so a heading lands below it, not under it.
   Turned off again for anyone who asks for less motion, at the end of this file. */
/* The page scrolls on the root element, so the behaviour has to live there, not on body.
   This stylesheet is only loaded on the site's own pages, never in wp-admin. */
html{scroll-behavior:smooth;scroll-padding-top:96px}
.fdt-site{margin:0;background:var(--fdt-paper);color:var(--fdt-ink);font-family:var(--fdt-body);font-size:var(--fdt-text);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.fdt-site *,.fdt-site *::before,.fdt-site *::after{box-sizing:border-box}
:where(.fdt-site) img{max-width:100%;height:auto}
:where(.fdt-site) :is(h1,h2,h3){font-family:var(--fdt-display);font-weight:750;line-height:1.12;letter-spacing:-.028em;margin:0;text-wrap:balance}
:where(.fdt-site) h1{font-size:var(--fdt-h1)}
:where(.fdt-site) h2{font-size:var(--fdt-h2)}
:where(.fdt-site) h3{font-size:var(--fdt-h3);letter-spacing:-.012em;line-height:1.2}
:where(.fdt-site) p{margin:0 0 1em}
:where(.fdt-site) a{color:var(--fdt-ember);text-underline-offset:.18em;text-decoration-thickness:.08em}
:where(.fdt-site) a:hover{color:var(--fdt-ember-dark)}
.fdt-site :focus-visible{outline:3px solid var(--fdt-ember);outline-offset:2px;border-radius:3px}
.fdt-site ::selection{background:var(--fdt-honey);color:var(--fdt-ink)}
.fdt-site [hidden]{display:none!important}

/* ------------------------------------------------------------------ 3. Shared pieces */
.fdt-wrap{width:100%;max-width:calc(var(--fdt-wrap-w) + var(--fdt-gutter)*2);margin-inline:auto;padding-inline:var(--fdt-gutter)}
.fdt-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.fdt-skip{position:absolute;left:8px;top:-60px;z-index:200;background:var(--fdt-ink);color:#fff!important;padding:10px 16px;border-radius:6px}
.fdt-skip:focus{top:8px}
.fdt-icon{width:1.25em;height:1.25em;flex:none;vertical-align:-.25em}
.fdt-small{font-size:.82rem;color:var(--fdt-ink-3)}

.fdt-section{padding-block:var(--fdt-space)}
.fdt-section+.fdt-section{padding-top:0}
.fdt-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;margin-bottom:clamp(22px,3vw,36px)}
.fdt-head p{margin:.55em 0 0;color:var(--fdt-ink-2);max-width:58ch}
.fdt-more{font-weight:650;font-size:.95rem;white-space:nowrap}
.fdt-after{margin:26px 0 0}

.fdt-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:46px;padding:11px 20px;border:0;border-radius:var(--fdt-btn-r);background:var(--fdt-ember);color:#fff!important;font:650 1rem/1.2 var(--fdt-body);text-decoration:none;cursor:pointer;transition:background-color .15s}
.fdt-btn:hover{background:var(--fdt-ember-dark)}
.fdt-btn .fdt-icon{width:1.05em;height:1.05em}
.fdt-btn-dark{background:var(--fdt-ink)}
.fdt-btn-dark:hover{background:#000}
.fdt-btn-line{background:transparent;color:var(--fdt-ink)!important;box-shadow:inset 0 0 0 1.5px var(--fdt-ink)}
.fdt-btn-line:hover{background:var(--fdt-ink);color:#fff!important}
.fdt-btn-small{min-height:36px;padding:6px 14px;font-size:.9rem}
.fdt-x{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}
.fdt-x:hover{background:var(--fdt-line-2)}
.fdt-empty{padding:48px 0;color:var(--fdt-ink-2)}

.fdt-crumbs{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:.86rem;color:var(--fdt-ink-3);padding-block:18px 0}
.fdt-crumbs a{color:var(--fdt-ink-2);text-decoration:none}
.fdt-crumbs a:hover{text-decoration:underline}

.fdt-prose{max-width:72ch}
.fdt-prose h2{font-size:calc(1.5rem*var(--fdt-h-scale));margin:1.6em 0 .5em}
.fdt-prose h3{margin:1.4em 0 .4em}
.fdt-prose h2:first-child,.fdt-prose h3:first-child{margin-top:0}
.fdt-prose ul,.fdt-prose ol{padding-left:1.2em;margin:0 0 1em}
.fdt-prose li{margin-bottom:.35em}
.fdt-prose table{width:100%;border-collapse:collapse;margin:0 0 1.2em;font-size:.95em}
.fdt-prose th,.fdt-prose td{text-align:left;padding:9px 12px 9px 0;border-bottom:1px solid var(--fdt-line);vertical-align:top}
.fdt-prose img{border-radius:var(--fdt-r)}
.fdt-fold.is-folded{max-height:7.4em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 45%,transparent);mask-image:linear-gradient(#000 45%,transparent)}
.fdt-fold-btn{margin-top:8px;padding:0;border:0;background:none;color:var(--fdt-ember);font:650 .95rem var(--fdt-body);text-decoration:underline;text-underline-offset:.18em;cursor:pointer}

/* ------------------------------------------------------------------ 4. Header, menu */
.fdt-strip{background:var(--fdt-ink);color:#f3ece4;font-size:.84rem}
.fdt-strip p{margin:0;padding:8px 0;text-align:center}
.fdt-strip a{color:#fff;font-weight:600;margin-left:.6em;white-space:nowrap}
.fdt-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.88);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--fdt-line);transition:box-shadow .3s}
.fdt-header.is-stuck{box-shadow:0 16px 32px -24px rgba(43,25,15,.55)}
.fdt-header-row{display:flex;align-items:center;gap:clamp(12px,2.4vw,36px);padding-block:14px;transition:padding .3s cubic-bezier(.2,.8,.2,1)}
.fdt-header.is-stuck .fdt-header-row{padding-block:8px}
.fdt-logo{display:block;flex:none;line-height:0;transform-origin:left center;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.fdt-logo:hover{transform:scale(1.035)}
.fdt-logo-img{height:var(--fdt-logo-h);width:auto;max-width:none;transition:height .3s cubic-bezier(.2,.8,.2,1)}
.fdt-header.is-stuck .fdt-logo-img{height:calc(var(--fdt-logo-h)*.86)}
.fdt-logo-text{font:800 1.5rem var(--fdt-display);color:var(--fdt-ink)}
.fdt-burger{display:none;align-items:center;gap:8px;padding:8px 10px 8px 0;border:0;background:none;color:var(--fdt-ink);font:650 .95rem var(--fdt-body);cursor:pointer}

/* Search: a pill that lights up and widens a little when it is in use. */
.fdt-search{position:relative;display:flex;align-items:center;flex:1;max-width:600px;height:50px;margin-inline:auto;padding:0 5px 0 20px;border-radius:999px;background:var(--fdt-shell);box-shadow:inset 0 0 0 1.5px transparent;transition:background-color .25s,box-shadow .25s,max-width .4s cubic-bezier(.2,.8,.2,1)}
.fdt-search:hover{box-shadow:inset 0 0 0 1.5px var(--fdt-line)}
.fdt-search:focus-within{max-width:660px;background:#fff;box-shadow:inset 0 0 0 2px var(--fdt-ember),0 0 0 5px color-mix(in srgb,var(--fdt-ember) 14%,transparent)}
.fdt-search input[type=search]{flex:1;min-width:0;height:100%;padding:0 10px 0 0;border:0;outline:0;background:none;color:var(--fdt-ink);font:inherit;font-size:1rem;font-weight:500;-webkit-appearance:none;appearance:none}
.fdt-search input[type=search]::placeholder{color:var(--fdt-ink-3);font-weight:400}
.fdt-search-key{flex:none;margin-right:10px;padding:2px 8px;border-radius:7px;background:#fff;box-shadow:inset 0 0 0 1px var(--fdt-line);color:var(--fdt-ink-3);font:600 .78rem var(--fdt-body)}
.fdt-search:focus-within .fdt-search-key{display:none}
.fdt-search button{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--fdt-ember);color:#fff;cursor:pointer;transition:transform .25s cubic-bezier(.2,.8,.2,1),background-color .2s}
.fdt-search button:hover{background:var(--fdt-ember-dark);transform:scale(1.08) rotate(-8deg)}
.fdt-search button:active{transform:scale(.94)}
.fdt-search-page{max-width:520px;margin:20px 0 0}
.fdt-search-page .fdt-search-key{display:none}

.fdt-tools{display:flex;align-items:center;gap:6px;flex:none}
.fdt-tool{position:relative;display:inline-flex;align-items:center;gap:9px;height:46px;padding:0 16px 0 12px;border:0;border-radius:999px;background:none;color:var(--fdt-ink)!important;font:650 .95rem var(--fdt-body);text-decoration:none;cursor:pointer;transition:background-color .2s,transform .2s}
.fdt-tool:hover{background:var(--fdt-shell)}
.fdt-tool:active{transform:scale(.96)}
.fdt-tool>.fdt-icon{width:22px;height:22px;transition:transform .35s cubic-bezier(.2,.8,.2,1),color .2s}
.fdt-tool:hover>.fdt-icon{color:var(--fdt-ember);transform:scale(1.16)}
.fdt-tool[data-fdt-open=fdt-compare]:hover>.fdt-icon{transform:rotate(-12deg) scale(1.1)}
.fdt-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--fdt-ember);color:#fff;font:700 .72rem/1 var(--fdt-body);font-style:normal}
.fdt-tool .fdt-count{position:absolute;left:25px;top:4px;box-shadow:0 0 0 2px #fff}

/* Menu: an underline grows from the left under the item the pointer is on. */
.fdt-nav{border-top:1px solid var(--fdt-line-2)}
.fdt-nav-row{display:flex;align-items:center;justify-content:space-between;gap:16px}
.fdt-nav-list{display:flex;flex-wrap:wrap;gap:0 2px;margin:0 -14px;padding:0;list-style:none}
.fdt-nav-list>li{position:relative}
.fdt-nav-list>li>a{position:relative;display:flex;align-items:center;gap:5px;padding:13px 14px;color:var(--fdt-ink);font-weight:600;font-size:.95rem;text-decoration:none;transition:color .2s,padding .3s}
.fdt-header.is-stuck .fdt-nav-list>li>a{padding-block:10px}
.fdt-nav-list>li>a::after{content:"";position:absolute;left:14px;right:14px;bottom:7px;height:2px;border-radius:2px;background:var(--fdt-ember);transform:scaleX(0);transform-origin:left;transition:transform .32s cubic-bezier(.2,.8,.2,1)}
.fdt-nav-list>li:hover>a::after,.fdt-nav-list>li:focus-within>a::after,.fdt-nav-list>.current-menu-item>a::after,.fdt-nav-list>.current-menu-ancestor>a::after{transform:scaleX(1)}
.fdt-nav-list>li:hover>a,.fdt-nav-list>li:focus-within>a{color:var(--fdt-ember)}
.fdt-nav-list>li>a .fdt-icon{width:.9em;height:.9em;opacity:.55;transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .2s}
.fdt-nav-list>li:hover>a .fdt-icon,.fdt-nav-list>li:focus-within>a .fdt-icon{transform:rotate(180deg);opacity:1}

.fdt-panel-menu,.fdt-nav-list .sub-menu{position:absolute;left:0;top:100%;z-index:70;margin:0;padding:12px;list-style:none;border-radius:20px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line),0 32px 64px -30px rgba(43,25,15,.55);opacity:0;visibility:hidden;transform:translateY(10px) scale(.98);transform-origin:top left;transition:opacity .2s,transform .28s cubic-bezier(.2,.8,.2,1),visibility .2s}
.fdt-nav-list .sub-menu{min-width:250px}
.fdt-panel-menu{display:grid;grid-template-columns:minmax(260px,1fr);gap:6px 14px;width:max-content;max-width:min(700px,92vw)}
.fdt-panel-menu.has-top{grid-template-columns:minmax(250px,1fr) 230px}
.fdt-nav-list>li:hover>.fdt-panel-menu,.fdt-nav-list>li:focus-within>.fdt-panel-menu,.fdt-nav-list>li:hover>.sub-menu,.fdt-nav-list>li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.fdt-panel-menu ul{margin:0;padding:0;list-style:none}
.fdt-panel-menu li a,.fdt-nav-list .sub-menu a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 12px;border-radius:11px;color:var(--fdt-ink);font-size:.94rem;font-weight:550;text-decoration:none;transition:background-color .18s,padding-left .22s cubic-bezier(.2,.8,.2,1),color .18s}
.fdt-panel-menu li a:hover,.fdt-nav-list .sub-menu a:hover{padding-left:17px;background:var(--fdt-shell);color:var(--fdt-ember)}
.fdt-panel-menu small{padding:2px 8px;border-radius:999px;background:var(--fdt-shell);color:var(--fdt-ink-3);font-size:.76rem;font-weight:600;white-space:nowrap;transition:background-color .18s}
.fdt-panel-menu li a:hover small{background:#fff}
.fdt-panel-menu .fdt-more{grid-column:1;align-self:end;margin:4px 12px 4px;padding-top:11px;border-top:1px solid var(--fdt-line)}
.fdt-menu-top{grid-column:2;grid-row:1/span 2;display:flex;flex-direction:column;border-radius:14px;background:var(--fdt-shell);color:var(--fdt-ink)!important;text-decoration:none;overflow:hidden}
.fdt-menu-top .fdt-tile{aspect-ratio:4/3;border-radius:0;box-shadow:none}
.fdt-menu-top:hover .fdt-tile-img{transform:scale(1.06)}
.fdt-menu-top-body{display:flex;flex-direction:column;gap:3px;padding:11px 13px 13px}
.fdt-menu-top-label{color:var(--fdt-ember);font:800 .76rem/1.25 var(--fdt-display)}
.fdt-menu-top-name{font-weight:600;font-size:.86rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fdt-menu-top-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:3px}
.fdt-menu-top-row b{font:800 1.02rem var(--fdt-display);letter-spacing:-.02em}

.fdt-nav-deal{display:inline-flex;align-items:center;gap:7px;flex:none;padding:7px 14px 7px 11px;border-radius:999px;background:color-mix(in srgb,var(--fdt-ember) 9%,#fff);color:var(--fdt-ember)!important;font-weight:700;font-size:.9rem;text-decoration:none;transition:background-color .2s,color .2s,transform .2s}
.fdt-nav-deal:hover{background:var(--fdt-ember);color:#fff!important;transform:translateY(-1px)}
.fdt-nav-deal .fdt-icon{width:17px;height:17px;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.fdt-nav-deal:hover .fdt-icon{transform:rotate(-14deg) scale(1.12)}

/* Panels that slide in: menu, shortlist. Compare is a centred sheet. */
.fdt-drawer,.fdt-sheet{padding:0;border:0;background:#fff;color:var(--fdt-ink)}
.fdt-drawer{position:fixed;inset:0 0 0 auto;width:min(440px,100vw);height:100dvh;max-height:none;max-width:none;margin:0}
.fdt-drawer-left{inset:0 auto 0 0;width:min(360px,88vw)}
.fdt-drawer[open]{display:flex;flex-direction:column;animation:fdt-in-right .22s ease-out}
.fdt-drawer-left[open]{animation-name:fdt-in-left}
.fdt-drawer::backdrop,.fdt-sheet::backdrop{background:rgba(43,25,15,.5)}
.fdt-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 12px 14px 22px;border-bottom:1px solid var(--fdt-line)}
.fdt-drawer-title{font:650 1.25rem var(--fdt-display);font-stretch:88%}
.fdt-drawer-body{flex:1;overflow-y:auto;padding:14px 22px 28px;overscroll-behavior:contain}
.fdt-drawer-foot{padding:14px 22px;border-top:1px solid var(--fdt-line)}
.fdt-drawer-foot .fdt-btn{width:100%}
@keyframes fdt-in-right{from{transform:translateX(40px);opacity:0}}
@keyframes fdt-in-left{from{transform:translateX(-40px);opacity:0}}
.fdt-menu-list,.fdt-menu-list ul{margin:0;padding:0;list-style:none}
.fdt-menu-list>li{border-bottom:1px solid var(--fdt-line-2)}
.fdt-menu-list a,.fdt-menu-list summary{display:flex;align-items:center;justify-content:space-between;padding:14px 0;color:var(--fdt-ink);font-weight:600;text-decoration:none;cursor:pointer;list-style:none}
.fdt-menu-list summary::-webkit-details-marker{display:none}
.fdt-menu-list details[open] summary .fdt-icon{transform:rotate(180deg)}
.fdt-menu-list ul a{padding:9px 0 9px 14px;font-weight:450;color:var(--fdt-ink-2)}
.fdt-menu-list details ul{padding-bottom:10px}

/* ------------------------------------------------------------------ 5. Rings, cards */
.fdt-rings{display:block;width:100%;height:auto;overflow:visible}
.fdt-ring-track,.fdt-ring{fill:none;stroke-width:5}
.fdt-ring-track{stroke:var(--fdt-ring-track)}
.fdt-ring{stroke-linecap:round}
.fdt-ring-1{stroke:var(--fdt-ring-1)}
.fdt-ring-2{stroke:var(--fdt-ring-2)}
.fdt-ring-3{stroke:var(--fdt-ring-3)}
.fdt-ring-4{stroke:var(--fdt-ring-4)}
.fdt-rings-num{font:800 23px var(--fdt-display);fill:var(--fdt-ink);letter-spacing:-.06em}
.fdt-rings.is-empty .fdt-rings-num{fill:var(--fdt-ink-3)}
.fdt-badge{display:inline-flex;align-items:center;gap:5px;vertical-align:middle;font:700 .9rem var(--fdt-display)}
.fdt-badge .fdt-rings{width:22px}
.fdt-badge .fdt-ring-track,.fdt-badge .fdt-ring{stroke-width:7}

.fdt-stars{display:inline-block;width:5.1em;height:1em;flex:none;background:linear-gradient(90deg,var(--fdt-honey) var(--fdt-fill,0%),color-mix(in srgb,var(--fdt-ink) 16%,transparent) var(--fdt-fill,0%));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.6 2.9 6.2 6.7.8-5 4.6 1.4 6.6-6-3.4-6 3.4 1.4-6.6-5-4.6 6.700-.8z'/%3E%3C/svg%3E") 0 50%/1.02em 1em repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.6 2.9 6.2 6.7.8-5 4.6 1.4 6.6-6-3.4-6 3.4 1.4-6.6-5-4.6 6.700-.8z'/%3E%3C/svg%3E") 0 50%/1.02em 1em repeat-x}
.fdt-star{color:var(--fdt-honey);width:1.05em;height:1.05em}
.fdt-rating{display:inline-flex;align-items:center;gap:5px;font-size:.84rem;color:var(--fdt-ink-2);font-variant-numeric:tabular-nums}

.fdt-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 9px;margin:0}
.fdt-price-now{font:800 1.3rem/1.1 var(--fdt-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--fdt-ink)}
.fdt-price-was{color:var(--fdt-ink-3);font-size:.86rem}
.fdt-price-off{color:var(--fdt-leaf);font-size:.82rem;font-weight:650;white-space:nowrap}

.fdt-tile{position:relative;display:block;aspect-ratio:1;border-radius:var(--fdt-r);background:var(--fdt-tint,#fff);box-shadow:inset 0 0 0 1px var(--fdt-line-2);overflow:hidden;isolation:isolate}
.fdt-tile-link{display:block;width:100%;height:100%}
.fdt-tile-img{display:block;width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply;transition:transform .35s ease}
.fdt-card:hover .fdt-tile-img{transform:scale(1.07)}

/* The product card: a rounded white card that lifts on hover. The score rings sit
   across the bottom edge of the photo; the buy button turns orange with the card. */
.fdt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
.fdt-card{position:relative;display:flex;flex-direction:column;min-width:0;border-radius:22px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line);transition:transform .45s cubic-bezier(.19,.9,.22,1),box-shadow .45s}
.fdt-card:hover{transform:translateY(-6px);box-shadow:0 0 0 1px var(--fdt-line),0 36px 52px -36px rgba(43,25,15,.65)}
.fdt-card-media{position:relative;padding:6px 6px 0}
.fdt-card-media .fdt-tile{border-radius:17px;box-shadow:none}
.fdt-card-media .fdt-tile-img{transition:transform .9s cubic-bezier(.19,.9,.22,1)}
.fdt-card-tag{position:absolute;left:14px;top:14px;display:inline-flex;align-items:center;gap:5px;max-width:calc(100% - 74px);padding:6px 12px 6px 8px;border-radius:999px;background:var(--fdt-ink);color:#fff!important;font:700 .74rem/1.2 var(--fdt-display);text-decoration:none;transition:background-color .2s}
.fdt-card-tag span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.fdt-card-tag .fdt-icon{flex:none;width:14px;height:14px;color:var(--fdt-honey)}
a.fdt-card-tag:hover{background:var(--fdt-ember)}
.fdt-rank{position:absolute;left:14px;top:14px;display:grid;place-items:center;min-width:32px;height:32px;padding:0 9px;border-radius:16px;background:var(--fdt-ink);color:#fff;font:800 .95rem/1 var(--fdt-display)}
.fdt-save{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.95);color:var(--fdt-ink);cursor:pointer;box-shadow:0 6px 14px -8px rgba(43,25,15,.6);transition:transform .25s cubic-bezier(.2,.8,.2,1),color .2s}
.fdt-save:hover{transform:scale(1.12);color:var(--fdt-ember)}
.fdt-save[aria-pressed=true]{color:var(--fdt-ember);--fdt-icon-fill:currentColor}
.fdt-save-text{position:static;display:inline-flex;gap:8px;width:auto;height:auto;padding:8px 0;border-radius:6px;background:none;box-shadow:none;font:600 .95rem var(--fdt-body)}
.fdt-save-text:hover{transform:none;text-decoration:underline}
.fdt-tile-score{position:absolute;right:16px;bottom:-26px;z-index:2;width:62px;height:62px;padding:5px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--fdt-line),0 12px 22px -12px rgba(43,25,15,.6);pointer-events:none;transition:transform .45s cubic-bezier(.19,.9,.22,1)}
.fdt-card:hover .fdt-tile-score{transform:scale(1.1) rotate(-8deg)}
.fdt-card-body{display:flex;flex-direction:column;flex:1;gap:6px;padding:14px 16px 16px}
/* A card with rings keeps a band free under the photo; the brand name sits in it, beside the rings. */
.fdt-card.has-score .fdt-card-body{padding-top:34px}
.fdt-card-brand{margin:0;font-size:.76rem;font-weight:600;color:var(--fdt-ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fdt-card.has-score .fdt-card-brand{max-width:calc(100% - 74px);margin-top:-23px;margin-bottom:5px}
.fdt-site .fdt-card-name{min-height:2.64em;font:650 .98rem/1.32 var(--fdt-body);letter-spacing:-.005em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fdt-card-name a{color:var(--fdt-ink);text-decoration:none;transition:color .2s}
.fdt-card:hover .fdt-card-name a{color:var(--fdt-ember)}
.fdt-card .fdt-rating{font-size:.82rem}
.fdt-card .fdt-price{align-items:center;margin-top:2px}
.fdt-card .fdt-price-off{padding:3px 9px;border-radius:999px;background:color-mix(in srgb,var(--fdt-leaf) 12%,#fff);font-size:.72rem;font-weight:700}
/* The card's two buttons, stacked: a solid orange buy button with the arrow in a small
   round chip and a light sweep across it on hover, then the compare toggle underneath. */
.fdt-card-foot{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:14px}
.fdt-card-buy{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:7px 10px 7px 18px;border-radius:14px;overflow:hidden;isolation:isolate;background:linear-gradient(135deg,color-mix(in srgb,var(--fdt-ember) 84%,#ffb27a) 0%,var(--fdt-ember) 48%,var(--fdt-ember-dark) 100%);color:#fff!important;font-weight:750;font-size:.9rem;letter-spacing:-.005em;text-decoration:none;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 1px 2px rgba(43,25,15,.2),0 12px 22px -14px color-mix(in srgb,var(--fdt-ember) 75%,transparent);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,filter .3s}
.fdt-card-buy::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.3) 50%,transparent 62%);transform:translateX(-130%);transition:transform .75s cubic-bezier(.2,.8,.2,1)}
.fdt-card:hover .fdt-card-buy::after,.fdt-card-buy:hover::after{transform:translateX(130%)}
.fdt-card-buy .fdt-icon{flex:none;box-sizing:content-box;width:14px;height:14px;padding:7px;border-radius:50%;background:rgba(255,255,255,.18);transition:transform .35s cubic-bezier(.2,.8,.2,1),background-color .3s}
.fdt-card-buy:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 2px 4px rgba(43,25,15,.2),0 16px 26px -14px color-mix(in srgb,var(--fdt-ember) 85%,transparent)}
.fdt-card-buy:hover .fdt-icon{transform:translate(2px,-2px);background:rgba(255,255,255,.32)}
.fdt-card-buy:active{transform:translateY(0) scale(.985);filter:none}
.fdt-card-buy:focus-visible{outline:3px solid var(--fdt-ember);outline-offset:3px}
.fdt-link-buy{display:inline-flex;align-items:center;gap:4px;font-weight:650;font-size:.9rem;text-decoration:none}
.fdt-link-buy:hover span{text-decoration:underline}
.fdt-link-buy .fdt-icon{width:1em;height:1em}
/* Compare is a real tick box, drawn as an outlined button: a scale icon and "Compare".
   On hover the scale tilts; once ticked the button turns dark, the scale spins into a
   tick and the wording changes to "Added to compare". */
.fdt-cmp{position:relative;display:inline-flex;cursor:pointer;user-select:none}
.fdt-cmp input{position:absolute;left:0;top:0;z-index:1;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.fdt-cmp-ui{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:6px 14px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--fdt-line);color:var(--fdt-ink-2);font-weight:650;font-size:.84rem;transition:background-color .25s,box-shadow .25s,color .25s,transform .2s}
.fdt-cmp-ico{position:relative;display:grid;flex:none;width:17px;height:17px}
.fdt-cmp-ico .fdt-icon{grid-area:1/1;width:17px;height:17px;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .2s}
.fdt-cmp-ico .fdt-icon+.fdt-icon{opacity:0;transform:scale(.4) rotate(-40deg)}
.fdt-cmp-on{display:none}
.fdt-cmp:hover .fdt-cmp-ui{background:var(--fdt-shell);box-shadow:inset 0 0 0 1.5px var(--fdt-ink);color:var(--fdt-ink)}
.fdt-cmp:hover .fdt-cmp-ico .fdt-icon:first-child{transform:rotate(-14deg)}
.fdt-cmp input:active+.fdt-cmp-ui{transform:scale(.97)}
.fdt-cmp input:checked+.fdt-cmp-ui{background:var(--fdt-ink);box-shadow:inset 0 0 0 1.5px var(--fdt-ink);color:#fff}
.fdt-cmp input:checked+.fdt-cmp-ui .fdt-cmp-ico .fdt-icon:first-child{opacity:0;transform:scale(.4) rotate(40deg)}
.fdt-cmp input:checked+.fdt-cmp-ui .fdt-cmp-ico .fdt-icon+.fdt-icon{opacity:1;transform:none;color:var(--fdt-honey)}
.fdt-cmp input:checked+.fdt-cmp-ui .fdt-cmp-off{display:none}
.fdt-cmp input:checked+.fdt-cmp-ui .fdt-cmp-on{display:inline}
.fdt-cmp input:focus-visible+.fdt-cmp-ui{outline:3px solid var(--fdt-ember);outline-offset:2px}
.fdt-card .fdt-cmp,.fdt-card .fdt-cmp-ui{width:100%}
.fdt-why{margin:6px 0 2px;padding:0;list-style:none;font-size:.88rem;color:var(--fdt-ink-2)}
.fdt-why li{display:flex;gap:7px;align-items:flex-start;margin-bottom:3px}
.fdt-why .fdt-icon{color:var(--fdt-leaf);width:1.1em;height:1.1em;margin-top:.2em}
.fdt-card-li{list-style:none}

/* ------------------------------------------------------------------ 6. Finder */
.fdt-hero{position:relative;overflow:hidden;padding-block:clamp(34px,5.6vw,92px) calc(clamp(34px,5.6vw,92px) + 34px);background:linear-gradient(112deg,var(--fdt-shell),#fff 64%);border-bottom:1px solid var(--fdt-line)}
.fdt-hero::before{content:"";position:absolute;right:-220px;top:-300px;width:900px;height:900px;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 21px,var(--fdt-line-2) 21px 22.5px,transparent 22.5px 37px,var(--fdt-line-2) 37px 38px);-webkit-mask-image:radial-gradient(circle,#000 30%,transparent 70%);mask-image:radial-gradient(circle,#000 30%,transparent 70%);pointer-events:none}
.fdt-hero-grid{position:relative;display:grid;gap:44px;align-items:center}
.fdt-hero-grid::after{content:"";display:none;position:absolute;z-index:0;right:-7%;top:6%;height:88%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--fdt-honey) 34%,transparent),transparent);filter:blur(38px);pointer-events:none}
.fdt-hero-copy,.fdt-match{position:relative;z-index:1}
.fdt-hero-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;padding:6px 14px 6px 10px;border-radius:999px;background:color-mix(in srgb,var(--fdt-ember) 9%,#fff);color:var(--fdt-ember);font-weight:700;font-size:.9rem}

/* The headlines share one grid cell, so the block is always as tall as the tallest of them
   and nothing below it moves when they change. Each line slides up out of a mask. */
.fdt-site .fdt-hero-title{display:grid;font-size:calc(clamp(2.25rem,1.15rem + 3.8vw,4.1rem)*var(--fdt-h-scale));font-weight:800;line-height:1.06;letter-spacing:-.04em}
.fdt-hero-slide{grid-area:1/1;display:block;visibility:hidden}
.fdt-site h1.fdt-hero-slide{margin:0;font:inherit;letter-spacing:inherit;line-height:inherit}
.fdt-hero-slide.is-on,.fdt-hero-slide.is-out{visibility:visible}
.fdt-hero-line{display:block;overflow:hidden;padding-bottom:.16em;margin-bottom:-.16em}
.fdt-hero-line>span{display:block;transform:translateY(112%);transition:transform .75s cubic-bezier(.19,.9,.22,1)}
.fdt-hero-slide.is-on .fdt-hero-line>span{transform:none}
.fdt-hero-slide.is-on .fdt-hero-line+.fdt-hero-line>span{transition-delay:.09s}
.fdt-hero-slide.is-out .fdt-hero-line>span{transform:translateY(-112%);transition:transform .45s cubic-bezier(.6,0,.85,.25)}
.fdt-hero-accent{color:var(--fdt-ember)}
.fdt-hero-text{max-width:52ch;margin:22px 0 0;color:var(--fdt-ink-2);font-size:1.08rem}

.fdt-ask{display:flex;gap:8px;max-width:640px;margin-top:32px;padding:7px;border-radius:calc(var(--fdt-btn-r) + 10px);background:#fff;box-shadow:inset 0 0 0 1.5px var(--fdt-line),0 18px 40px -26px rgba(43,25,15,.5);transition:box-shadow .2s}
.fdt-ask:focus-within{box-shadow:inset 0 0 0 2px var(--fdt-ember),0 0 0 5px color-mix(in srgb,var(--fdt-ember) 14%,transparent),0 18px 40px -26px rgba(43,25,15,.5)}
.fdt-ask-field{position:relative;display:flex;align-items:center;flex:1;min-width:0;padding-left:14px}
.fdt-ask-field>.fdt-icon{color:var(--fdt-ink-3)}
.fdt-ask input[type=text]{flex:1;min-width:0;height:54px;padding:0 12px 0 10px;border:0;outline:0;background:none;color:var(--fdt-ink);font:inherit;font-size:1.04rem;font-weight:500}
.fdt-ask input[type=text]::placeholder{color:var(--fdt-ink-3);font-weight:400}
.fdt-ask-hint{position:absolute;left:46px;right:8px;top:0;bottom:0;display:flex;align-items:center;gap:.4em;overflow:hidden;color:var(--fdt-ink-3);font-size:1.04rem;white-space:nowrap;pointer-events:none}
.fdt-ask-hint b{color:var(--fdt-ink);font-weight:600}
.fdt-ask-hint b::after{content:"";display:inline-block;width:2px;height:1.1em;margin-left:2px;background:var(--fdt-ember);vertical-align:-.18em}
.fdt-ask .fdt-btn{position:relative;min-height:54px;padding-inline:22px;border-radius:calc(var(--fdt-btn-r) + 4px);white-space:nowrap;overflow:hidden}
.fdt-ask-examples{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.fdt-ask-examples button{padding:8px 14px;border:0;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--fdt-line);color:var(--fdt-ink-2);font:600 .88rem var(--fdt-body);cursor:pointer;transition:box-shadow .2s,color .2s,background-color .2s}
.fdt-ask-examples button:hover{box-shadow:inset 0 0 0 1.5px var(--fdt-ink);color:var(--fdt-ink)}
.fdt-ask-examples button.is-on{box-shadow:inset 0 0 0 1.5px var(--fdt-ember);background:color-mix(in srgb,var(--fdt-ember) 8%,#fff);color:var(--fdt-ember)}

/* The matchmaker panel: what was asked, what was understood, and three picks:
   the best match large, the other two as compact rows beside it. */
.fdt-match{position:relative;min-width:0;padding:clamp(16px,2vw,24px);border-radius:28px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line),0 2px 4px rgba(43,25,15,.04),0 28px 56px -30px rgba(43,25,15,.4),0 70px 110px -70px color-mix(in srgb,var(--fdt-ember) 70%,transparent)}
.fdt-match-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.fdt-match-mark{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--fdt-ember) 10%,#fff);color:var(--fdt-ember)}
.fdt-match-mark .fdt-icon{width:22px;height:22px}
.fdt-match-title{flex:1;min-width:0;margin:0;line-height:1.25}
.fdt-match-title b{display:block;font:800 1.06rem var(--fdt-display);letter-spacing:-.015em}
.fdt-match-title small{display:block;color:var(--fdt-ink-3);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fdt-match-toggle{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:var(--fdt-shell);color:var(--fdt-ink);cursor:pointer;transition:background-color .2s}
.fdt-match-toggle:hover{background:var(--fdt-line)}
.fdt-match-toggle .fdt-icon{width:16px;height:16px}

.fdt-match-query{display:flex;align-items:center;gap:10px;min-height:52px;margin:0;padding:12px 16px;border-radius:16px;background:var(--fdt-ink);color:#fff;font-weight:600;font-size:.98rem;line-height:1.3}
.fdt-match-query .fdt-icon{opacity:.6}
.fdt-match-query span.is-typing::after{content:"";display:inline-block;width:2px;height:1.05em;margin-left:2px;background:var(--fdt-honey);vertical-align:-.16em}
.fdt-match-read{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;min-height:76px;padding:12px 2px}
.fdt-match-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.fdt-match-chips:empty{display:none}
.fdt-match-chips li{display:inline-flex;align-items:center;gap:5px;padding:5px 11px 5px 8px;border-radius:999px;background:var(--fdt-shell);font-weight:600;font-size:.82rem;white-space:nowrap}
.fdt-match-chips .fdt-icon{width:14px;height:14px;color:var(--fdt-leaf)}
.fdt-match-chips .fdt-skel{width:84px;height:28px;padding:0;background:linear-gradient(90deg,var(--fdt-shell) 20%,#fff 50%,var(--fdt-shell) 80%) 0 0/220% 100%}
.fdt-match-chips .fdt-skel:nth-child(2){width:62px}
.fdt-match-chips .fdt-skel:nth-child(3){width:104px}
.fdt-match-note{margin:0;color:var(--fdt-ink-2);font-size:.86rem;line-height:1.4}
.fdt-match-chips:not(:empty)+.fdt-match-note{margin-left:auto;color:var(--fdt-ink);font-weight:750;white-space:nowrap}
.fdt-dots{display:inline-flex;gap:5px;padding:5px 0}
.fdt-dots i{width:7px;height:7px;border-radius:50%;background:var(--fdt-ink-3)}

.fdt-match-picks{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);grid-auto-rows:1fr;gap:12px;transition:opacity .3s,transform .3s,filter .3s}
.fdt-match.is-swapping .fdt-match-picks,.fdt-match.is-loading .fdt-match-picks{opacity:.3;transform:scale(.985);filter:saturate(.5)}
/* While a request the visitor made is being answered the old pieces are replaced by these, so
   nothing untrue stands under the new words. They are the waiting state, so they stay bright. */
.fdt-match.is-loading .fdt-match-picks:has(.fdt-pickcard-skel){opacity:1;transform:none;filter:none}
.fdt-pickcard-skel{min-height:92px;border-radius:18px;background:linear-gradient(90deg,var(--fdt-shell) 20%,#fff 50%,var(--fdt-shell) 80%) 0 0/220% 100%}
.fdt-pickcard-skel:first-child{grid-row:span 2;min-height:150px}
.fdt-pickcard{display:flex;min-width:0;border-radius:18px;box-shadow:inset 0 0 0 1px var(--fdt-line);background:#fff;color:var(--fdt-ink)!important;text-decoration:none;overflow:hidden;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
.fdt-pickcard:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1.5px var(--fdt-ink),0 18px 30px -22px rgba(43,25,15,.6)}
.fdt-pickcard .fdt-tile{border-radius:0;box-shadow:none}
.fdt-pickcard .fdt-tile-img{position:absolute;inset:0;width:100%;height:100%}
.fdt-pickcard-lead{grid-row:span 2;flex-direction:column}
.fdt-pickcard-lead .fdt-tile{flex:1;min-height:150px;aspect-ratio:auto}
.fdt-pickcard-tag{position:absolute;left:10px;top:10px;padding:5px 11px;border-radius:999px;background:var(--fdt-ember);color:#fff;font:800 .76rem/1.2 var(--fdt-display);letter-spacing:-.005em;box-shadow:0 6px 14px -6px rgba(43,25,15,.6)}
.fdt-pickcard-ring{position:absolute;right:10px;bottom:10px;width:64px;height:64px;padding:5px;border-radius:50%;background:#fff;box-shadow:0 8px 18px -8px rgba(43,25,15,.6)}
.fdt-pickcard-body{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 14px 13px}
.fdt-pickcard-side{align-items:stretch;min-height:104px}
.fdt-pickcard-side .fdt-tile{flex:none;width:38%;max-width:118px;aspect-ratio:auto}
.fdt-pickcard-side .fdt-pickcard-body{flex:1;justify-content:center;padding:10px 12px}
.fdt-pickcard-label{color:var(--fdt-ember);font:800 .78rem/1.2 var(--fdt-display)}
.fdt-pickcard-name{color:var(--fdt-ink);font-weight:600;font-size:.88rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fdt-pickcard-side .fdt-pickcard-name{font-size:.8rem;font-weight:500;color:var(--fdt-ink-2)}
.fdt-pickcard-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:2px 10px;margin-top:2px}
.fdt-pickcard-row b{font:800 1.02rem var(--fdt-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.fdt-pickcard-lead .fdt-pickcard-row b{font-size:1.3rem}
.fdt-pickcard-row .fdt-rating{font-size:.78rem}

.fdt-match-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;margin-top:16px}
.fdt-match-all{display:inline-flex;align-items:center;gap:6px;padding:9px 14px 9px 16px;border-radius:999px;background:var(--fdt-shell);color:var(--fdt-ink)!important;font-weight:700;font-size:.88rem;text-decoration:none;transition:background-color .2s,color .2s}
.fdt-match-all:hover{background:var(--fdt-ink);color:#fff!important}
.fdt-match-all .fdt-icon{width:15px;height:15px;transition:transform .2s}
.fdt-match-all:hover .fdt-icon{transform:translateX(3px)}
.fdt-match-steps{display:flex;gap:6px;margin:0 0 0 auto;padding:0;list-style:none}
.fdt-match-steps button{position:relative;display:block;width:26px;height:20px;padding:0;border:0;background:none;cursor:pointer}
.fdt-match-steps button::before,.fdt-match-steps button::after{content:"";position:absolute;left:0;top:8px;height:4px;border-radius:2px}
.fdt-match-steps button::before{width:100%;background:var(--fdt-line)}
.fdt-match-steps button::after{width:0;background:var(--fdt-ember)}
.fdt-match-steps button.is-on::after{width:100%}

.fdt-card-match .fdt-card-body{gap:7px;padding-top:16px}
.fdt-site .fdt-card-match .fdt-card-name{font-size:1.1rem;font-weight:650}
.fdt-card-match .fdt-price-now{font-size:1.75rem}
.fdt-card-match .fdt-card-foot{padding-top:12px}

/* ------------------------------------------------------------------ 7. Home sections */
/* A raised bar of numbers that sits across the bottom edge of the top section. */
.fdt-facts{position:relative;z-index:3}
.fdt-hero+.fdt-facts{margin-top:-34px}
.fdt-facts-bar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:6px;list-style:none;border-radius:24px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line),0 2px 4px rgba(43,25,15,.04),0 28px 54px -32px rgba(43,25,15,.5)}
.fdt-facts-bar li{position:relative;display:flex;align-items:center;gap:13px;min-width:0;padding:16px 12px;border-radius:18px;transition:background-color .25s}
.fdt-facts-bar li:hover{background:var(--fdt-shell)}
.fdt-fact-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:15px;background:color-mix(in srgb,var(--fdt-ember) 10%,#fff);color:var(--fdt-ember);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fdt-facts-bar li:hover .fdt-fact-icon{transform:rotate(-8deg) scale(1.08)}
.fdt-fact-icon .fdt-icon{width:23px;height:23px}
.fdt-facts-bar li:nth-child(2) .fdt-fact-icon{background:color-mix(in srgb,var(--fdt-honey) 20%,#fff);color:color-mix(in srgb,var(--fdt-honey) 72%,var(--fdt-ink))}
.fdt-facts-bar li:nth-child(3) .fdt-fact-icon{background:color-mix(in srgb,var(--fdt-ink) 8%,#fff);color:var(--fdt-ink)}
.fdt-facts-bar li:nth-child(4) .fdt-fact-icon{background:color-mix(in srgb,var(--fdt-leaf) 13%,#fff);color:var(--fdt-leaf)}
.fdt-fact-text{display:flex;flex-direction:column;min-width:0}
.fdt-fact-num{font:800 clamp(1.55rem,1.1rem + 1.6vw,2.5rem)/1.05 var(--fdt-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.fdt-fact-words{margin-top:3px;color:var(--fdt-ink-2);font-size:.88rem;line-height:1.3}

/* Categories as a mosaic: the first tile is large, the fourth is wide. The name sits
   over the photo on a dark fade, so every tile reads the same whatever the photo. */
.fdt-pieces-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(150px,42vw,210px);grid-auto-flow:dense;gap:12px;margin:0;padding:0;list-style:none}
.fdt-pieces-grid li{min-width:0}
.fdt-pieces-grid li:nth-child(1),.fdt-pieces-grid li:nth-child(4){grid-column:span 2}
.fdt-pieces-grid li:nth-child(1){grid-row:span 2}
.fdt-piece{position:relative;display:block;height:100%;border-radius:22px;background:var(--fdt-shell);color:#fff!important;text-decoration:none;overflow:hidden;isolation:isolate;box-shadow:0 0 0 1px var(--fdt-line-2);transition:transform .45s cubic-bezier(.19,.9,.22,1),box-shadow .45s}
.fdt-piece:hover{transform:translateY(-6px);box-shadow:0 0 0 1px var(--fdt-line-2),0 30px 46px -28px rgba(43,25,15,.7)}
.fdt-piece-photo{position:absolute;inset:0;z-index:-2}
.fdt-piece-img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.19,.9,.22,1)}
.fdt-piece:hover .fdt-piece-img{transform:scale(1.08)}
.fdt-piece::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(43,25,15,0) 38%,rgba(43,25,15,.52) 70%,rgba(43,25,15,.86));transition:opacity .4s}
.fdt-piece::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(200deg,color-mix(in srgb,var(--fdt-ember) 55%,transparent),transparent 55%);opacity:0;transition:opacity .45s}
.fdt-piece:hover::after{opacity:.55}
.fdt-piece-count{position:absolute;left:12px;top:12px;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--fdt-ink);font-weight:700;font-size:.76rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.fdt-piece-info{position:absolute;left:16px;right:62px;bottom:14px;display:flex;flex-direction:column;gap:2px;transition:transform .45s cubic-bezier(.19,.9,.22,1)}
.fdt-piece:hover .fdt-piece-info{transform:translateY(-4px)}
.fdt-piece-name{font:800 1.12rem/1.15 var(--fdt-display);letter-spacing:-.02em;text-shadow:0 1px 10px rgba(0,0,0,.35)}
.fdt-pieces-grid li:nth-child(1) .fdt-piece-name{font-size:clamp(1.45rem,1.1rem + 1.4vw,2.1rem)}
.fdt-piece-from{color:#f3e6d6;font-size:.86rem;font-weight:600}
.fdt-piece-go{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff;color:var(--fdt-ink);transition:transform .45s cubic-bezier(.19,.9,.22,1),background-color .25s,color .25s}
.fdt-piece-go .fdt-icon{width:18px;height:18px}
.fdt-piece:hover .fdt-piece-go{background:var(--fdt-ember);color:#fff;transform:translate(3px,-3px) rotate(8deg) scale(1.08)}
.fdt-pieces .fdt-more{display:inline-flex;align-items:center;padding:9px 16px;border-radius:999px;background:var(--fdt-shell);color:var(--fdt-ink);text-decoration:none;transition:background-color .2s,color .2s}
.fdt-pieces .fdt-more:hover{background:var(--fdt-ink);color:#fff}

.fdt-scoreband{background:var(--fdt-ink);color:#f1e9e0;padding-block:clamp(48px,7vw,96px);margin-bottom:var(--fdt-space);--fdt-ring-1:#f6efe6;--fdt-ring-2:color-mix(in srgb,var(--fdt-honey) 55%,#fff);--fdt-ring-3:color-mix(in srgb,var(--fdt-ember) 70%,#ff9a5c);--fdt-ring-4:var(--fdt-honey);--fdt-ring-track:rgba(255,255,255,.1)}
.fdt-scoreband-grid{display:grid;gap:36px;align-items:center}
.fdt-scoreband-fig{max-width:340px;margin-inline:auto;width:100%;text-align:center}
.fdt-scoreband-fig .fdt-rings-num{fill:#fff}
.fdt-scoreband-fig p{margin:18px 0 0;font-size:.88rem}
.fdt-scoreband-fig a{color:#e9dccd}
.fdt-site .fdt-scoreband h2{color:#fff;font-size:calc(clamp(1.9rem,1.2rem + 2.6vw,3rem)*var(--fdt-h-scale))}
.fdt-scoreband-text>p{margin:18px 0 0;max-width:54ch;color:#dccdbd}
.fdt-ringlist{display:grid;gap:20px 36px;margin:34px 0 0;padding:0;list-style:none}
.fdt-ringlist li{display:grid;grid-template-columns:18px 1fr;gap:12px}
.fdt-ringlist i{width:18px;height:18px;margin-top:3px;border-radius:50%;border:5px solid var(--fdt-ring-1)}
.fdt-ringlist-2 i{border-color:var(--fdt-ring-2)}
.fdt-ringlist-3 i{border-color:var(--fdt-ring-3)}
.fdt-ringlist-4 i{border-color:var(--fdt-ring-4)}
.fdt-site .fdt-ringlist h3{color:#fff;font-size:1.12rem}
.fdt-ringlist h3 span{margin-left:.35em;font:500 .85rem var(--fdt-body);color:#cbb9a6;letter-spacing:0}
.fdt-ringlist p{margin:5px 0 0;font-size:.92rem;color:#d3c3b2}

.fdt-tabs{display:flex;gap:4px 22px;flex-wrap:wrap}
.fdt-tabs button{padding:6px 0;border:0;border-bottom:3px solid transparent;background:none;color:var(--fdt-ink-3);font:650 1.02rem var(--fdt-body);cursor:pointer}
.fdt-tabs button:hover{color:var(--fdt-ink)}
.fdt-tabs button[aria-selected=true]{color:var(--fdt-ink);border-bottom-color:var(--fdt-ember)}

/* Pick a finish: each finish is a tall photo tile of its best piece, tinted with the finish
   like every photo tile on the site, with a wood sample chip hanging over the tile's bottom
   edge and the name and count below. Hover lifts the tile, zooms the photo, deepens the
   tint, tilts the chip and slides an arrow in. */
.fdt-finish-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px;margin:0;padding:0;list-style:none}
.fdt-finish-grid li{min-width:0}
.fdt-finish{position:relative;display:block;color:var(--fdt-ink)!important;text-decoration:none}
.fdt-finish-tile{aspect-ratio:4/5;border-radius:18px;transition:transform .45s cubic-bezier(.19,.9,.22,1),box-shadow .45s}
.fdt-finish:hover .fdt-finish-tile{transform:translateY(-6px);box-shadow:inset 0 0 0 1px var(--fdt-line-2),0 28px 40px -28px rgba(43,25,15,.6)}
.fdt-finish-tile .fdt-tile-img{transition:transform 1s cubic-bezier(.19,.9,.22,1)}
.fdt-finish:hover .fdt-tile-img{transform:scale(1.07)}
.fdt-finish-tile::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(200deg,color-mix(in srgb,var(--fdt-tint) 55%,var(--fdt-ink)),transparent 60%);mix-blend-mode:multiply;opacity:0;transition:opacity .45s}
.fdt-finish:hover .fdt-finish-tile::after{opacity:.45}
/* Without a photo the tile shows the grain on its own. */
.fdt-finish-grain{position:absolute;inset:0;background:repeating-linear-gradient(100deg,transparent 0 14px,color-mix(in srgb,var(--fdt-tint) 86%,var(--fdt-ink)) 14px 15px,transparent 15px 31px,color-mix(in srgb,var(--fdt-tint) 90%,var(--fdt-ink)) 31px 32px),color-mix(in srgb,var(--fdt-tint) 94%,var(--fdt-ink))}
.fdt-finish-go{position:absolute;right:10px;bottom:10px;z-index:2;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--fdt-ink);box-shadow:0 8px 16px -10px rgba(43,25,15,.6);opacity:0;transform:translate(-8px,8px) scale(.8);transition:opacity .35s,transform .45s cubic-bezier(.19,.9,.22,1),background-color .25s,color .25s}
.fdt-finish-go .fdt-icon{width:16px;height:16px}
.fdt-finish:hover .fdt-finish-go{opacity:1;transform:none;background:var(--fdt-ember);color:#fff}
.fdt-finish-chip{position:relative;z-index:3;display:block;width:38px;height:38px;margin:-19px 0 0 12px;border-radius:11px;background:repeating-linear-gradient(112deg,transparent 0 5px,rgba(255,255,255,.14) 5px 6px,transparent 6px 11px,rgba(43,25,15,.16) 11px 12px),linear-gradient(160deg,color-mix(in srgb,var(--fdt-tint) 62%,var(--fdt-ink)),color-mix(in srgb,var(--fdt-tint) 40%,var(--fdt-ink)));box-shadow:0 0 0 3px #fff,0 10px 18px -10px rgba(43,25,15,.7);transition:transform .45s cubic-bezier(.19,.9,.22,1)}
.fdt-finish:hover .fdt-finish-chip{transform:translateY(-6px) rotate(-8deg) scale(1.08)}
.fdt-finish-info{display:flex;flex-direction:column;gap:1px;margin-top:8px;padding-left:4px}
.fdt-finish-name{font:750 1.02rem/1.2 var(--fdt-display);letter-spacing:-.015em;transition:color .2s}
.fdt-finish:hover .fdt-finish-name{color:var(--fdt-ember)}
.fdt-finish-count{color:var(--fdt-ink-3);font-size:.8rem;font-weight:550}
.fdt-finishes .fdt-more{display:inline-flex;align-items:center;padding:9px 16px;border-radius:999px;background:var(--fdt-shell);color:var(--fdt-ink);text-decoration:none;transition:background-color .2s,color .2s}
.fdt-finishes .fdt-more:hover{background:var(--fdt-ink);color:#fff}

/* Guide cards: a rounded white card that lifts on hover; the photo (or, without one, a
   shell panel with a large faint ruler) on top, then date and reading time, title,
   excerpt and a "read" link whose arrow slides right. */
.fdt-posts{display:grid;gap:16px}
.fdt-post-card{display:flex;flex-direction:column;min-width:0;border-radius:22px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line);overflow:hidden;transition:transform .45s cubic-bezier(.19,.9,.22,1),box-shadow .45s}
.fdt-post-card:hover{transform:translateY(-6px);box-shadow:0 0 0 1px var(--fdt-line),0 36px 52px -36px rgba(43,25,15,.65)}
.fdt-post-thumb{position:relative;display:block;aspect-ratio:16/9;margin:6px 6px 0;border-radius:17px;overflow:hidden;background:var(--fdt-shell)}
.fdt-post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.19,.9,.22,1)}
.fdt-post-card:hover .fdt-post-thumb img{transform:scale(1.06)}
/* A borrowed product photo sits on the shell tile the way product tiles do. */
.fdt-post-thumb .fdt-post-piece{object-fit:contain;padding:8%;mix-blend-mode:multiply;background:linear-gradient(135deg,var(--fdt-shell),color-mix(in srgb,var(--fdt-honey) 18%,var(--fdt-shell)))}
.fdt-post-blank{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(135deg,var(--fdt-shell),color-mix(in srgb,var(--fdt-honey) 18%,var(--fdt-shell)));color:color-mix(in srgb,var(--fdt-honey) 60%,var(--fdt-ink));overflow:hidden}
.fdt-post-blank .fdt-icon{width:96px;height:96px;opacity:.18;transform:rotate(-18deg);transition:transform 1s cubic-bezier(.19,.9,.22,1),opacity .4s}
.fdt-post-card:hover .fdt-post-blank .fdt-icon{transform:rotate(-8deg) scale(1.12);opacity:.28}
.fdt-post-text{display:flex;flex-direction:column;flex:1;gap:8px;padding:16px 18px 18px}
.fdt-post-meta{display:flex;flex-wrap:wrap;gap:4px 10px;margin:0;color:var(--fdt-ink-3);font-size:.78rem;font-weight:600;letter-spacing:.01em;text-transform:uppercase}
.fdt-post-meta span::before{content:"·";margin-right:10px}
.fdt-post-card h3{margin:0;font-size:1.08rem;line-height:1.3;letter-spacing:-.012em}
.fdt-post-card h3 a{color:var(--fdt-ink);text-decoration:none;transition:color .2s}
.fdt-post-card:hover h3 a{color:var(--fdt-ember)}
.fdt-post-excerpt{margin:0;color:var(--fdt-ink-2);font-size:.92rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fdt-post-go{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:8px;color:var(--fdt-ember);font-weight:700;font-size:.9rem;text-decoration:none}
.fdt-post-go .fdt-icon{width:16px;height:16px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fdt-post-card:hover .fdt-post-go .fdt-icon{transform:translateX(4px)}
.fdt-post-go:hover span:first-child{text-decoration:underline;text-underline-offset:.18em}
.fdt-guides .fdt-more{display:inline-flex;align-items:center;padding:9px 16px;border-radius:999px;background:var(--fdt-shell);color:var(--fdt-ink);text-decoration:none;transition:background-color .2s,color .2s}
.fdt-guides .fdt-more:hover{background:var(--fdt-ink);color:#fff}

/* About: a soft band with faint growth rings in the corner; a small word, the heading,
   the text with a larger first paragraph, and three points with icon tiles. */
.fdt-about{position:relative;background:var(--fdt-shell);padding-top:var(--fdt-space)!important;overflow:hidden;isolation:isolate}
.fdt-about-rings{position:absolute;right:-140px;bottom:-200px;z-index:-1;width:560px;height:560px;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 30px,color-mix(in srgb,var(--fdt-ink) 7%,transparent) 30px 32px);-webkit-mask-image:radial-gradient(circle,#000 30%,transparent 70%);mask-image:radial-gradient(circle,#000 30%,transparent 70%);pointer-events:none}
.fdt-about-grid{position:relative;display:grid;gap:24px 56px}
.fdt-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:6px 12px;border-radius:999px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line);color:var(--fdt-ink-2);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.fdt-kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--fdt-ember)}
.fdt-about-head h2{margin:0}
.fdt-about-text{max-width:66ch;font-size:1.06rem;line-height:1.6}
.fdt-about-text>p:first-child{font-size:1.22rem;line-height:1.45;font-weight:550;color:var(--fdt-ink);letter-spacing:-.01em}
.fdt-about-points{display:grid;gap:10px;margin:26px 0 0;padding:0;list-style:none}
.fdt-about-points li{display:flex;align-items:flex-start;gap:13px;padding:14px 16px;border-radius:18px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line-2);color:var(--fdt-ink-2);font-size:.93rem;line-height:1.45;transition:transform .35s cubic-bezier(.19,.9,.22,1),box-shadow .35s}
.fdt-about-points li:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--fdt-line),0 20px 30px -24px rgba(43,25,15,.55)}
.fdt-about-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:13px;background:color-mix(in srgb,var(--fdt-ember) 10%,#fff);color:var(--fdt-ember);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fdt-about-icon .fdt-icon{width:20px;height:20px}
.fdt-about-points li:hover .fdt-about-icon{transform:rotate(-8deg) scale(1.08)}
.fdt-about-points li:nth-child(2) .fdt-about-icon{background:color-mix(in srgb,var(--fdt-honey) 20%,#fff);color:color-mix(in srgb,var(--fdt-honey) 72%,var(--fdt-ink))}
.fdt-about-points li:nth-child(3) .fdt-about-icon{background:color-mix(in srgb,var(--fdt-leaf) 13%,#fff);color:var(--fdt-leaf)}

/* ------------------------------------------------------------------ 8. Listing pages */
.fdt-listing{padding-bottom:var(--fdt-space)}
.fdt-listing-head{padding-block:18px 26px}
.fdt-listing-head .fdt-prose{margin-top:14px;color:var(--fdt-ink-2);font-size:.97rem}
.fdt-listing-head .fdt-prose h2{font-size:1.2rem}
.fdt-chips{display:flex;gap:8px;margin:20px calc(var(--fdt-gutter)*-1) 0;padding:2px var(--fdt-gutter) 4px;list-style:none;overflow-x:auto;scrollbar-width:none}
.fdt-chips::-webkit-scrollbar{display:none}
.fdt-chips a{display:block;padding:8px 14px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--fdt-line);color:var(--fdt-ink);font-weight:550;font-size:.92rem;text-decoration:none;white-space:nowrap}
.fdt-chips a:hover{box-shadow:inset 0 0 0 1.5px var(--fdt-ink)}
.fdt-chips small{color:var(--fdt-ink-3);font-weight:450;margin-left:2px}

/* Shown while the shortlist or compare panel waits for its products, so it never sits blank. */
.fdt-waiting{display:grid;gap:12px;padding:4px 0}
.fdt-waiting-row{height:62px;border-radius:var(--fdt-r);background:linear-gradient(90deg,var(--fdt-shell) 20%,#fff 50%,var(--fdt-shell) 80%) 0 0/220% 100%}
.fdt-waiting-row:nth-child(3){opacity:.8}
.fdt-waiting-row:nth-child(4){opacity:.6}
.fdt-waiting-row:nth-child(5){opacity:.45}

/* What the search understood from the typed words, above the results. */
.fdt-read{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:16px}
.fdt-read-lead{color:var(--fdt-ink-2);font-size:.92rem}
.fdt-read-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.fdt-read-tags li{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border-radius:999px;background:var(--fdt-shell);color:var(--fdt-ink);font-weight:600;font-size:.9rem}
.fdt-read-tags svg{width:15px;height:15px;color:var(--fdt-leaf);flex:none}
.fdt-read-plain{color:var(--fdt-ink-3);font-size:.88rem;text-decoration:underline;text-underline-offset:3px}
.fdt-read-plain:hover{color:var(--fdt-ember)}
.fdt-read-note{display:flex;align-items:flex-start;gap:9px;margin:14px 0 0;padding:11px 15px;border-radius:var(--fdt-r);background:color-mix(in srgb,var(--fdt-ember) 8%,#fff);color:var(--fdt-ink-2);font-size:.92rem}
.fdt-read-note svg{width:17px;height:17px;margin-top:1px;color:var(--fdt-ember);flex:none}

.fdt-listing-grid{display:grid;gap:0 44px;align-items:start}
.fdt-filters-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:2px solid var(--fdt-ink)}
.fdt-site .fdt-filters-head h2{font-size:1.2rem}
.fdt-filters-head a{font-size:.88rem;font-weight:600}
.fdt-filters-head .fdt-x{display:none}
.fdt-flt{padding:16px 0;border-bottom:1px solid var(--fdt-line)}
.fdt-site .fdt-flt h3{font:650 .95rem var(--fdt-body);letter-spacing:0;margin-bottom:8px}
.fdt-flt ul{margin:0;padding:0;list-style:none}
.fdt-flt-opt{display:flex;align-items:center;gap:10px;padding:5px 0;color:var(--fdt-ink)!important;font-size:.93rem;text-decoration:none}
.fdt-flt-opt i{flex:none;width:18px;height:18px;border-radius:5px;box-shadow:inset 0 0 0 1.5px var(--fdt-ink-3);background:#fff}
.fdt-flt-opt:hover i{box-shadow:inset 0 0 0 1.5px var(--fdt-ink)}
.fdt-flt-opt.is-on i{background:var(--fdt-ember) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.500 4.500L19 7.500'/%3E%3C/svg%3E") center/13px no-repeat;box-shadow:none}
.fdt-flt-opt.is-on{font-weight:650}
.fdt-flt-opt span{flex:1;display:flex;align-items:center;gap:7px}
.fdt-flt-opt small{margin-left:auto;color:var(--fdt-ink-3);font-weight:450;font-size:.8rem}
.fdt-dot{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--fdt-line);filter:saturate(1.9) brightness(.86)}
.fdt-flt-link:hover{color:var(--fdt-ember)!important}

.fdt-toolbar{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;padding-bottom:16px}
.fdt-toolbar-count{margin:0 auto 0 0;font:650 1.1rem var(--fdt-display);font-stretch:88%}
.fdt-toolbar-filter{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:6px 14px;border:0;border-radius:var(--fdt-btn-r);box-shadow:inset 0 0 0 1.5px var(--fdt-ink);background:none;color:var(--fdt-ink);font:600 .93rem var(--fdt-body);cursor:pointer}
.fdt-sort{display:flex;align-items:center;gap:8px;font-size:.93rem}
.fdt-sort label{color:var(--fdt-ink-2)}
.fdt-sort select{min-height:42px;padding:6px 34px 6px 12px;border:0;border-radius:var(--fdt-btn-r);box-shadow:inset 0 0 0 1.5px var(--fdt-line);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b190f' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9.500 6 6 6-6'/%3E%3C/svg%3E") right 10px center/15px no-repeat;color:var(--fdt-ink);font:600 .93rem var(--fdt-body);-webkit-appearance:none;appearance:none;cursor:pointer}
.fdt-pages{margin-top:44px}
.fdt-pages ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.fdt-pages a,.fdt-pages span.page-numbers{display:inline-flex;align-items:center;gap:6px;min-width:44px;min-height:44px;padding:6px 14px;justify-content:center;border-radius:var(--fdt-btn-r);color:var(--fdt-ink);font-weight:600;text-decoration:none}
.fdt-pages a{box-shadow:inset 0 0 0 1.5px var(--fdt-line)}
.fdt-pages a:hover{box-shadow:inset 0 0 0 1.5px var(--fdt-ink)}
.fdt-pages .current{background:var(--fdt-ink);color:#fff}
.fdt-pages .fdt-icon{width:1em;height:1em}

/* ------------------------------------------------------------------ 9. Product page */
.fdt-product{padding-bottom:var(--fdt-space)}
.fdt-notices:empty{display:none}
.fdt-pp{display:grid;gap:28px;padding-top:18px;grid-template-areas:"head" "gallery" "buy"}
.fdt-buy-head{grid-area:head;min-width:0}
.fdt-buy-head .fdt-cta{margin-top:18px}
.fdt-buy-asof{margin:6px 0 0;font-size:.82rem;color:var(--fdt-ink-3)}
.fdt-price-was.is-listed small{font-size:.78em;color:var(--fdt-ink-3)}
.fdt-gallery{grid-area:gallery;min-width:0}
.fdt-stage{position:relative;aspect-ratio:1;border-radius:var(--fdt-r);background:var(--fdt-tint,#fff);box-shadow:inset 0 0 0 1px var(--fdt-line-2);overflow:hidden;isolation:isolate}
.fdt-slide{position:absolute;inset:0;display:grid;place-items:center;margin:0;padding:clamp(10px,3%,26px)}
.fdt-slide img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply}
.fdt-stage-nav,.fdt-stage-zoom{position:absolute;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:var(--fdt-ink);cursor:pointer;box-shadow:0 1px 5px -1px rgba(43,25,15,.35)}
.fdt-stage-prev{left:10px;top:calc(50% - 21px)}
.fdt-stage-next{right:10px;top:calc(50% - 21px)}
.fdt-stage-zoom{right:10px;top:10px}
.fdt-stage-count{position:absolute;left:12px;bottom:12px;padding:3px 10px;border-radius:12px;background:rgba(255,255,255,.94);font-size:.78rem;font-weight:600;font-variant-numeric:tabular-nums}
.fdt-thumbs{display:flex;gap:8px;margin:10px 0 0;padding:2px 2px 6px;list-style:none;overflow-x:auto;scrollbar-width:thin}
.fdt-thumbs button{display:block;width:66px;height:66px;padding:0;border:0;border-radius:calc(var(--fdt-r)*.7);background:var(--fdt-tint,#fff);box-shadow:inset 0 0 0 1px var(--fdt-line);overflow:hidden;cursor:pointer}
.fdt-thumbs button[aria-current=true]{box-shadow:inset 0 0 0 2.5px var(--fdt-ink)}
.fdt-thumbs img{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}

.fdt-buy{grid-area:buy;min-width:0}
.fdt-buy .fdt-verdict{margin-top:0}
.fdt-buy-brand{margin:0 0 6px;font-size:.92rem;color:var(--fdt-ink-3)}
.fdt-buy-brand a{color:var(--fdt-ink-2);font-weight:600}
.fdt-site .fdt-buy-name{font-size:calc(clamp(1.45rem,1.1rem + 1.35vw,2rem)*var(--fdt-h-scale));line-height:1.18}
.fdt-buy-rating{margin:12px 0 0}
.fdt-buy-rating a{text-decoration:none}
.fdt-buy-rating a:hover span span{text-decoration:underline}
.fdt-buy-rating .fdt-rating{font-size:.95rem}
.fdt-buy-price{margin-top:18px}
.fdt-price-big .fdt-price-now{font-size:clamp(2rem,1.5rem + 1.7vw,2.7rem)}
.fdt-price-big .fdt-price-was{font-size:1.05rem}
.fdt-price-big .fdt-price-off{display:none}
.fdt-buy-save{margin:4px 0 0;color:var(--fdt-leaf);font-weight:650}
.fdt-verdict{display:flex;align-items:center;gap:16px;margin-top:20px;padding:12px 16px 12px 12px;border-radius:var(--fdt-r);box-shadow:inset 0 0 0 1.5px var(--fdt-line);color:var(--fdt-ink)!important;text-decoration:none;transition:box-shadow .15s}
.fdt-verdict:hover{box-shadow:inset 0 0 0 1.5px var(--fdt-ink)}
.fdt-verdict .fdt-rings{width:78px;flex:none}
.fdt-verdict b{display:block;font:650 1.3rem/1.15 var(--fdt-display);font-stretch:88%}
.fdt-verdict small{display:block;margin-top:2px;color:var(--fdt-ink-2);font-size:.88rem}
.fdt-buy-why{margin-top:18px}
.fdt-site .fdt-buy-why h2{font:650 .95rem var(--fdt-body);letter-spacing:0}
.fdt-buy-why .fdt-why{font-size:.96rem;color:var(--fdt-ink)}
.fdt-buy-chips{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 0;padding:0;list-style:none}
.fdt-buy-chips li{padding:4px 11px;border-radius:999px;background:var(--fdt-shell);font-size:.86rem;font-weight:550}

/* The buy button is WooCommerce's own form, so add-ons attached around it keep working. */
.fdt-cta{margin-top:22px}
.fdt-cta form.cart{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.fdt-cta .single_add_to_cart_button{flex:1 1 220px;display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:58px;padding:14px 24px;border:0;border-radius:var(--fdt-btn-r);background:var(--fdt-ember);color:#fff;font:700 1.12rem/1.2 var(--fdt-body);cursor:pointer;transition:background-color .15s}
.fdt-cta .single_add_to_cart_button:hover{background:var(--fdt-ember-dark)}
.fdt-cta[data-fdt-cta-out] .single_add_to_cart_button::after{content:"";width:1.05em;height:1.05em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 6h10v10M18 6 6.500 17.500'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 6h10v10M18 6 6.500 17.500'/%3E%3C/svg%3E") center/contain no-repeat}
.fdt-cta .quantity .qty{width:84px;height:58px;padding:0 8px;border:1.5px solid var(--fdt-line);border-radius:var(--fdt-btn-r);font:600 1.05rem var(--fdt-body);text-align:center;color:var(--fdt-ink);background:#fff}
.fdt-cta .stock{margin:0 0 10px;font-size:.92rem;color:var(--fdt-ink-2)}
.fdt-cta-plain form.cart~*{display:none}
.fdt-buy-tools{display:flex;align-items:center;gap:8px 26px;flex-wrap:wrap;margin-top:12px}
.fdt-buy-tools .fdt-cmp-ui{min-height:44px;padding:8px 18px;font-size:.92rem}
.fdt-buy-note{margin:12px 0 0;font-size:.84rem;color:var(--fdt-ink-3);max-width:60ch}
.fdt-buy-note+.fdt-buy-note{margin-top:5px}
.fdt-addons{margin-top:22px;padding-top:18px;border-top:1px solid var(--fdt-line);font-size:.95rem}
.fdt-addons:empty{display:none}
.fdt-site .fdt-addons>h2{font:650 1rem var(--fdt-body);letter-spacing:0;margin-bottom:10px}
.fdt-addons-after{margin-bottom:var(--fdt-space)}

.fdt-buybar{position:fixed;left:0;right:0;bottom:0;z-index:55;background:#fff;border-top:1px solid var(--fdt-line);box-shadow:0 -10px 30px -18px rgba(43,25,15,.35)}
.fdt-buybar .fdt-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:10px}
.fdt-buybar-info{display:flex;flex-direction:column;min-width:0}
.fdt-buybar-name{font-size:.86rem;color:var(--fdt-ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fdt-buybar-price{font:700 1.25rem var(--fdt-display);font-stretch:84%;display:flex;align-items:center;gap:12px}
.fdt-buybar .fdt-btn{flex:none}

/* ------------------------------------------------------------------ 10. Panels on product page */
.fdt-pp-panels{margin-top:clamp(40px,6vw,76px)}
.fdt-panel{padding-top:16px;margin-bottom:44px;border-top:2px solid var(--fdt-ink);break-inside:avoid}
.fdt-site .fdt-panel>h2{font-size:calc(1.45rem*var(--fdt-h-scale));margin-bottom:16px}
.fdt-scoring-grid{display:grid;gap:26px 48px;align-items:center}
.fdt-scoring-fig{width:min(230px,62vw);margin-inline:auto;text-align:center}
.fdt-scoring-fig p{margin:12px 0 0;font:650 1.15rem var(--fdt-display)}
.fdt-parts{display:grid;gap:18px 40px;margin:0;padding:0;list-style:none}
.fdt-part-top{display:flex;justify-content:space-between;gap:12px;font-weight:650}
.fdt-part-top b{font:700 1.05rem var(--fdt-display);font-variant-numeric:tabular-nums}
.fdt-part-bar{height:8px;margin:6px 0 8px;border-radius:4px;background:var(--fdt-ring-track);overflow:hidden}
.fdt-part-bar i{display:block;height:100%;border-radius:4px;background:var(--fdt-ring-1)}
.fdt-part-2 .fdt-part-bar i{background:var(--fdt-ring-2)}
.fdt-part-3 .fdt-part-bar i{background:var(--fdt-ring-3)}
.fdt-part-4 .fdt-part-bar i{background:var(--fdt-ring-4)}
.fdt-part p{margin:0;font-size:.88rem;color:var(--fdt-ink-2)}

.fdt-glance dl,.fdt-log-figs{margin:0}
.fdt-glance dl>div{display:grid;grid-template-columns:minmax(120px,34%) 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--fdt-line)}
.fdt-glance dl>div:last-child{border-bottom:0}
.fdt-glance dt{color:var(--fdt-ink-2);font-size:.93rem}
.fdt-glance dd{margin:0;font-weight:550}

.fdt-fit-form{display:flex;gap:14px;flex-wrap:wrap;margin:4px 0 16px}
.fdt-fit-form label{display:flex;flex-direction:column;gap:5px;font-size:.88rem;font-weight:600;flex:1 1 130px}
.fdt-fit-form input{height:46px;padding:0 12px;border:1.5px solid var(--fdt-line);border-radius:var(--fdt-btn-r);background:#fff;color:var(--fdt-ink);font:600 1.05rem var(--fdt-body)}
.fdt-fit-form input:focus{outline:0;border-color:var(--fdt-ink)}
/* The room is drawn to the shape the visitor types, so the box grows to hold it: at a fixed
   height a nearly square room spilled out of the bottom and over the answer under it. */
.fdt-fit-plan{display:grid;place-items:center;min-height:190px;padding:14px;margin-bottom:12px;border-radius:var(--fdt-r);background:var(--fdt-shell)}
.fdt-fit-room{position:relative;width:60%;max-width:100%;max-height:250px;aspect-ratio:1.2;border:2px solid var(--fdt-ink);background:#fff;transition:width .25s,aspect-ratio .25s}
.fdt-fit-room i{position:absolute;left:0;bottom:0;display:block;background:color-mix(in srgb,var(--fdt-ember) 28%,#fff);border:1.5px solid var(--fdt-ember);transition:width .25s,height .25s}
.fdt-fit-room.is-over{border-color:var(--fdt-ember)}
.fdt-fit-out{margin:0 0 6px;font-weight:600}

.fdt-log-since{color:var(--fdt-ink-2);font-size:.93rem}
.fdt-log-chart{display:block;width:100%;height:110px;margin:6px 0 14px;overflow:visible}
.fdt-log-chart polyline{fill:none;stroke:var(--fdt-ink);stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.fdt-log-chart circle{fill:var(--fdt-ember)}
.fdt-log-figs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.fdt-log-figs dt{font-size:.84rem;color:var(--fdt-ink-2)}
.fdt-log-figs dd{margin:2px 0 0;font:700 1.25rem var(--fdt-display);font-stretch:84%;font-variant-numeric:tabular-nums}
.fdt-log-note{display:flex;gap:7px;align-items:center;margin:14px 0 0;color:var(--fdt-leaf);font-weight:650;font-size:.93rem}

.fdt-specs table{width:100%;border-collapse:collapse}
.fdt-specs th,.fdt-specs td{padding:10px 0;border-bottom:1px solid var(--fdt-line);text-align:left;vertical-align:top}
.fdt-specs tr:last-child th,.fdt-specs tr:last-child td{border-bottom:0}
.fdt-specs th{width:38%;padding-right:14px;font-weight:450;color:var(--fdt-ink-2);font-size:.93rem}
.fdt-specs td{font-weight:550;overflow-wrap:anywhere}
.fdt-desc .fdt-prose{max-width:78ch}
.fdt-desc .fdt-fold.is-folded{max-height:15em}
.fdt-similar{padding-bottom:0}

/* ------------------------------------------------------------------ 11. Shortlist, compare, toast */
.fdt-row{display:grid;grid-template-columns:78px 1fr auto;gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid var(--fdt-line)}
.fdt-row .fdt-tile{border-radius:calc(var(--fdt-r)*.7)}
.fdt-row-name{display:block;color:var(--fdt-ink)!important;font-weight:600;font-size:.95rem;line-height:1.3;text-decoration:none}
.fdt-row-name:hover{text-decoration:underline}
.fdt-row-meta{display:flex;align-items:center;gap:12px;margin:5px 0 6px;font:700 1.1rem var(--fdt-display);font-stretch:84%}
.fdt-row-remove{padding:4px 0;border:0;background:none;color:var(--fdt-ink-3);font:500 .82rem var(--fdt-body);text-decoration:underline;cursor:pointer}
.fdt-row-remove:hover{color:var(--fdt-ember)}
.fdt-note{padding:26px 0;color:var(--fdt-ink-2)}

.fdt-sheet{width:min(1180px,calc(100vw - 20px));max-width:none;max-height:calc(100dvh - 20px);margin:auto;border-radius:calc(var(--fdt-r) + 4px);overflow:hidden}
.fdt-sheet[open]{display:flex;flex-direction:column;animation:fdt-rise .2s ease-out}
@keyframes fdt-rise{from{transform:translateY(18px);opacity:0}}
.fdt-sheet-body{overflow:auto;padding:0 22px 26px;overscroll-behavior:contain}
.fdt-cmp-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:calc(150px + var(--fdt-n,2)*200px)}
.fdt-cmp-table th,.fdt-cmp-table td{padding:12px 14px;border-bottom:1px solid var(--fdt-line);text-align:left;vertical-align:top;font-size:.95rem}
.fdt-cmp-table tbody th{width:150px;padding-left:0;font-weight:450;color:var(--fdt-ink-2);font-size:.9rem;position:sticky;left:0;background:#fff;z-index:1}
.fdt-cmp-table thead td{padding-top:20px;vertical-align:bottom}
.fdt-cmp-table thead th{width:150px;position:sticky;left:0;background:#fff}
.fdt-cmp-item .fdt-tile{width:120px;margin-bottom:10px}
.fdt-cmp-item .fdt-row-name{margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fdt-cmp-item .fdt-btn{width:100%;margin-bottom:6px}
.fdt-cmp-score{display:flex;align-items:center;gap:12px;font:650 1rem var(--fdt-display)}
.fdt-cmp-score .fdt-rings{width:62px}
.fdt-cmp-table .fdt-big{font:700 1.3rem var(--fdt-display);font-stretch:84%;font-variant-numeric:tabular-nums}
.fdt-best{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--fdt-leaf) 14%,#fff);color:var(--fdt-leaf);font:650 .74rem/1.6 var(--fdt-body);vertical-align:middle;white-space:nowrap}

.fdt-cmpbar{position:fixed;left:0;right:0;bottom:0;z-index:58;background:var(--fdt-ink);color:#fff}
.fdt-cmpbar .fdt-wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-block:10px}
.fdt-cmpbar p{margin:0;font-weight:600}
.fdt-cmpbar div div{display:flex;align-items:center;gap:6px}
.fdt-cmpbar-clear{padding:8px 12px;border:0;background:none;color:#e6d9cb;font:500 .92rem var(--fdt-body);text-decoration:underline;cursor:pointer}
.fdt-toast{position:fixed;left:50%;bottom:92px;z-index:120;transform:translateX(-50%);max-width:min(460px,calc(100vw - 32px));padding:12px 18px;border-radius:var(--fdt-btn-r);background:var(--fdt-ink);color:#fff;font-weight:550;font-size:.94rem;box-shadow:0 12px 30px -12px rgba(0,0,0,.5)}

.fdt-lightbox{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#fff}
.fdt-lightbox[open]{display:grid;place-items:center}
.fdt-lightbox img{max-width:100vw;max-height:100dvh;object-fit:contain}
.fdt-lightbox .fdt-x{position:absolute;right:14px;top:14px;background:var(--fdt-shell)}
.fdt-lightbox .fdt-stage-nav{position:fixed}

/* ------------------------------------------------------------------ 12. Pages, guides, comments */
/* Inner pages. The band at the top: shell background, faint growth rings in the corner,
   breadcrumb, a small word, the heading, a line of text and whatever follows. */
.fdt-page-hero{position:relative;padding:4px 0 clamp(30px,4vw,46px);background:var(--fdt-shell);overflow:hidden;isolation:isolate}
.fdt-page-hero.is-compact{padding-bottom:22px}
.fdt-page-rings{position:absolute;right:-180px;top:-220px;z-index:-1;width:620px;height:620px;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 30px,color-mix(in srgb,var(--fdt-ink) 7%,transparent) 30px 32px);-webkit-mask-image:radial-gradient(circle,#000 25%,transparent 70%);mask-image:radial-gradient(circle,#000 25%,transparent 70%);pointer-events:none}
.fdt-page-hero-in{max-width:calc(900px + var(--fdt-gutter)*2)}
.fdt-page-hero .fdt-crumbs{padding-top:20px}
.fdt-page-hero .fdt-kicker{margin:22px 0 14px}
.fdt-page-hero .fdt-crumbs+.fdt-kicker{margin-top:22px}
.fdt-page-hero h1{margin:0;max-width:20ch;letter-spacing:-.025em}
.fdt-page-hero .fdt-crumbs+h1{margin-top:18px}
.fdt-page-hero-text{margin:14px 0 0;max-width:58ch;color:var(--fdt-ink-2);font-size:1.08rem;line-height:1.55}
.fdt-page-hero .fdt-search-page{margin-top:22px}
.fdt-page-hero-link{margin:14px 0 0}
.fdt-page-hero-btns{margin:18px 0 0}
.fdt-page-hero-meta{margin-top:16px}
.fdt-page-hero.is-center{text-align:center}
.fdt-page-hero.is-center .fdt-page-hero-in{max-width:calc(720px + var(--fdt-gutter)*2)}
.fdt-page-hero.is-center h1,.fdt-page-hero.is-center .fdt-page-hero-text{margin-inline:auto}
.fdt-page-hero.is-center .fdt-page-rings{right:50%;top:-320px;transform:translateX(50%)}
.fdt-page-hero.is-center .fdt-search-page{margin-inline:auto}
.fdt-nf-hero{padding-top:clamp(36px,6vw,80px);padding-bottom:clamp(44px,6vw,80px)}
.fdt-nf-hero h1{font-size:calc(var(--fdt-h1)*1.15)}
.fdt-section-soft{background:var(--fdt-shell)}
/* Plain pages and the blog list. */
.fdt-page-body{padding-block:clamp(28px,4vw,44px) var(--fdt-space)}
.fdt-page-full{padding-bottom:var(--fdt-space)}
.fdt-page-built .fdt-content{max-width:none}
.fdt-page-prose{max-width:72ch;font-size:1.06rem;line-height:1.65}
.fdt-blog{padding-block:clamp(28px,4vw,44px) var(--fdt-space)}
.fdt-nf{padding-top:var(--fdt-space)}
.fdt-empty-box{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:520px;padding:28px;border-radius:22px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line)}
.fdt-empty-box p{margin:0;color:var(--fdt-ink-2);font-size:1.05rem}
.fdt-empty-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:color-mix(in srgb,var(--fdt-ember) 10%,#fff);color:var(--fdt-ember)}
.fdt-empty-icon .fdt-icon{width:24px;height:24px}
/* The newest guide on the blog list is one wide card: photo left, words right. */
.fdt-post-wide .fdt-post-text{padding:18px 20px 20px}
.fdt-post-wide h3{font-size:1.35rem}
.fdt-post-wide .fdt-post-excerpt{-webkit-line-clamp:4;font-size:1rem}
/* A guide: the thin reading line, the text beside its side column. */
.fdt-progress{position:sticky;top:0;z-index:40;height:3px;margin-bottom:-3px;pointer-events:none;opacity:0;transition:opacity .3s}
.fdt-progress.is-on{opacity:1}
.fdt-progress i{display:block;height:100%;background:var(--fdt-ember);transform:scaleX(0);transform-origin:left}
.fdt-post-layout{display:grid;gap:40px;padding-block:clamp(28px,4vw,48px) var(--fdt-space)}
.fdt-post-main{min-width:0;max-width:760px}
.fdt-post-cover{margin-bottom:30px;border-radius:22px;overflow:hidden;box-shadow:0 0 0 1px var(--fdt-line-2)}
.fdt-post-cover img{display:block;width:100%}
.fdt-post-prose{max-width:none;font-size:1.08rem;line-height:1.68}
.fdt-post-prose>p:first-of-type{font-size:1.22rem;line-height:1.55;color:var(--fdt-ink)}
.fdt-post-prose h2{position:relative;padding-top:18px;margin-top:2em;font-size:calc(1.6rem*var(--fdt-h-scale));letter-spacing:-.02em;scroll-margin-top:90px}
.fdt-post-prose h2::before{content:"";position:absolute;left:0;top:0;width:34px;height:4px;border-radius:2px;background:var(--fdt-ember)}
.fdt-post-prose h3{scroll-margin-top:90px}
.fdt-post-prose img{display:block;max-width:100%;height:auto;border-radius:18px;box-shadow:0 0 0 1px var(--fdt-line-2),0 24px 40px -32px rgba(43,25,15,.5)}
.fdt-post-prose figure{margin:1.6em 0}
.fdt-post-prose figcaption{margin-top:8px;color:var(--fdt-ink-3);font-size:.86rem}
.fdt-post-prose table{display:block;overflow-x:auto;margin:1.4em 0;border-radius:16px;box-shadow:0 0 0 1px var(--fdt-line);font-size:.95rem}
.fdt-post-prose thead th{background:var(--fdt-shell);font-weight:700}
.fdt-post-prose th,.fdt-post-prose td{padding:11px 14px;border-bottom:1px solid var(--fdt-line-2);white-space:nowrap}
.fdt-post-prose tr:last-child td{border-bottom:0}
.fdt-post-prose blockquote{margin:1.6em 0;padding:4px 0 4px 20px;border-left:4px solid var(--fdt-ember);color:var(--fdt-ink);font-size:1.12rem;font-weight:550}
.fdt-post-prose a{color:var(--fdt-ember);text-decoration:underline;text-underline-offset:.16em;text-decoration-thickness:1.5px}
.fdt-post-prose hr{margin:2.4em 0;border:0;border-top:1px solid var(--fdt-line)}
/* Product cards inside a guide ([fdt_picks]): the live picks, two across in the text column. */
.fdt-guide-picks{margin:1.4em 0 2em}
.fdt-guide-few{margin:10px 0 0;font-size:.9rem;color:var(--fdt-ink-2)}
.fdt-card-lead{outline:2px solid var(--fdt-ember);outline-offset:3px;border-radius:17px}
.fdt-card-lead .fdt-card-tag{background:var(--fdt-ember)}
.fdt-byline{display:flex;align-items:center;gap:14px;margin-top:18px;text-align:left}
.fdt-byline-img{flex:none;width:52px;height:52px;border-radius:50%;object-fit:cover}
.fdt-byline-page .fdt-byline-img{width:84px;height:84px}
.fdt-byline-name{margin:0;font-weight:650}
.fdt-byline-name a{color:var(--fdt-ink)}
.fdt-byline-bio{margin:3px 0 0;max-width:62ch;color:var(--fdt-ink-2);font-size:.92rem;line-height:1.5}
.fdt-post-related .fdt-side-title{grid-column:1/-1;margin:0 0 2px}
.fdt-cat-guides{margin-top:52px}
.fdt-cat-guides .fdt-posts{margin-top:18px}
.fdt-post-prose .fdt-guide-picks .fdt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.fdt-post-prose .fdt-guide-picks .fdt-card-name a{text-decoration:none}
.fdt-post-prose .fdt-guide-picks img{border-radius:0;box-shadow:none}
.fdt-post-nav{display:grid;gap:10px;margin-top:48px;padding-top:28px;border-top:1px solid var(--fdt-line)}
.fdt-post-nav-link{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line);color:var(--fdt-ink);text-decoration:none;transition:transform .35s cubic-bezier(.19,.9,.22,1),box-shadow .35s}
.fdt-post-nav-link:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--fdt-line),0 20px 30px -24px rgba(43,25,15,.55)}
.fdt-post-nav-link.is-next{text-align:right;justify-content:flex-end}
.fdt-post-nav-link .fdt-icon{flex:none;width:18px;height:18px;color:var(--fdt-ember);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fdt-post-nav-link.is-prev:hover .fdt-icon{transform:translateX(-4px)}
.fdt-post-nav-link.is-next:hover .fdt-icon{transform:translateX(4px)}
.fdt-post-nav-link small{display:block;margin-bottom:2px;color:var(--fdt-ink-3);font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.fdt-post-nav-link b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:650;font-size:.95rem;line-height:1.3}
/* The side column: the contents list and the picks, following the reader on desktop. */
.fdt-post-side{min-width:0}
.fdt-post-side-in{display:grid;gap:14px}
.fdt-side-title{margin:0 0 12px;font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--fdt-ink-3)}
.fdt-toc,.fdt-side-picks{padding:18px 20px;border-radius:20px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line)}
.fdt-toc ol{margin:0;padding:0;list-style:none;counter-reset:fdt-toc}
.fdt-toc li{counter-increment:fdt-toc}
.fdt-toc li.is-h3{padding-left:14px}
.fdt-toc li.is-h3 a::before{content:""}
.fdt-toc a{position:relative;display:flex;gap:10px;padding:7px 0 7px 14px;color:var(--fdt-ink-2);font-size:.9rem;line-height:1.35;text-decoration:none;transition:color .2s}
.fdt-toc a::before{content:counter(fdt-toc);flex:none;min-width:1.4em;color:var(--fdt-ink-3);font-weight:700;font-size:.78rem;line-height:1.7}
.fdt-toc a::after{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:2px;background:var(--fdt-ember);transform:scaleY(0);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.fdt-toc a:hover{color:var(--fdt-ink)}
.fdt-toc a.is-active{color:var(--fdt-ember);font-weight:650}
.fdt-toc a.is-active::after{transform:none}
.fdt-side-picks .fdt-post-go{margin-top:10px;padding-top:4px}
.fdt-pick{display:grid;grid-template-columns:60px 1fr auto;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--fdt-line-2);color:var(--fdt-ink)!important;text-decoration:none}
.fdt-pick:last-of-type{border-bottom:0}
.fdt-pick .fdt-tile{border-radius:14px}
.fdt-pick .fdt-tile-img{transition:transform .6s cubic-bezier(.19,.9,.22,1)}
.fdt-pick:hover .fdt-tile-img{transform:scale(1.08)}
.fdt-pick-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.fdt-pick-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.88rem;font-weight:600;line-height:1.3;transition:color .2s}
.fdt-pick:hover .fdt-pick-name{color:var(--fdt-ember)}
.fdt-pick-price{font:700 .95rem var(--fdt-display);letter-spacing:-.01em}
.fdt-pick-score{width:42px}
/* The About page: three numbered steps, the numbers bar, and a closing band. */
.fdt-about-page .fdt-about-grid{gap:20px 56px}
.fdt-about-page .fdt-about-text{max-width:66ch}
.fdt-about-facts{padding:0 0 var(--fdt-space)}
.fdt-about-facts .fdt-wrap{position:static}
.fdt-steps{display:grid;gap:14px;margin:0;padding:0;list-style:none;counter-reset:none}
.fdt-step{position:relative;display:flex;flex-direction:column;gap:10px;padding:24px 22px 24px;border-radius:22px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line);transition:transform .45s cubic-bezier(.19,.9,.22,1),box-shadow .45s}
.fdt-step:hover{transform:translateY(-6px);box-shadow:0 0 0 1px var(--fdt-line),0 36px 52px -36px rgba(43,25,15,.65)}
.fdt-step-n{position:absolute;right:18px;top:16px;font:800 2.6rem/1 var(--fdt-display);letter-spacing:-.06em;color:color-mix(in srgb,var(--fdt-ink) 8%,transparent)}
.fdt-step-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:color-mix(in srgb,var(--fdt-ember) 10%,#fff);color:var(--fdt-ember);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fdt-step-icon .fdt-icon{width:22px;height:22px}
.fdt-step:hover .fdt-step-icon{transform:rotate(-8deg) scale(1.08)}
.fdt-step:nth-child(2) .fdt-step-icon{background:color-mix(in srgb,var(--fdt-honey) 20%,#fff);color:color-mix(in srgb,var(--fdt-honey) 72%,var(--fdt-ink))}
.fdt-step:nth-child(3) .fdt-step-icon{background:color-mix(in srgb,var(--fdt-leaf) 13%,#fff);color:var(--fdt-leaf)}
.fdt-step h3{margin:4px 0 0;font-size:1.12rem;letter-spacing:-.012em}
.fdt-step p{margin:0;color:var(--fdt-ink-2);font-size:.95rem;line-height:1.55}
.fdt-trust .fdt-step{padding-right:22px}
.fdt-cta-band{position:relative;background:var(--fdt-ink);color:#fff;overflow:hidden;isolation:isolate}
.fdt-cta-band .fdt-page-rings{right:-200px;top:auto;bottom:-260px;background:repeating-radial-gradient(circle,transparent 0 30px,rgba(255,255,255,.08) 30px 32px)}
.fdt-cta-band-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px}
.fdt-cta-band h2{margin:0;max-width:18ch;color:#fff;letter-spacing:-.025em}
.fdt-cta-band-btns{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.fdt-cta-band .fdt-btn .fdt-icon{width:16px;height:16px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fdt-cta-band .fdt-btn:hover .fdt-icon{transform:translateX(4px)}
.fdt-cta-band .fdt-btn-line{color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}
.fdt-cta-band .fdt-btn-line:hover{background:#fff;color:var(--fdt-ink)!important}
/* The Contact page: details beside the message area, a note about orders, quick answers. */
.fdt-contact-layout{display:grid;gap:18px;padding-block:clamp(28px,4vw,48px) var(--fdt-space)}
.fdt-contact-grid{display:grid;gap:18px}
.fdt-contact-card{padding:26px 24px;border-radius:22px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line)}
.fdt-contact-card h2{margin:0 0 18px;font-size:1.3rem;letter-spacing:-.015em}
.fdt-contact-rows{display:grid;gap:4px;margin:0;padding:0;list-style:none}
.fdt-contact-rows li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--fdt-line-2)}
.fdt-contact-rows li:last-child{border-bottom:0}
.fdt-contact-rows li>span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.fdt-contact-rows small{font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--fdt-ink-3)}
.fdt-contact-rows a,.fdt-contact-rows b{font-weight:650;font-size:1.02rem;color:var(--fdt-ink);text-decoration:none;overflow-wrap:anywhere}
.fdt-contact-rows a:hover{color:var(--fdt-ember)}
.fdt-contact-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:14px;background:color-mix(in srgb,var(--fdt-ember) 10%,#fff);color:var(--fdt-ember)}
.fdt-contact-icon .fdt-icon{width:20px;height:20px}
.fdt-contact-rows li:nth-child(2) .fdt-contact-icon{background:color-mix(in srgb,var(--fdt-honey) 20%,#fff);color:color-mix(in srgb,var(--fdt-honey) 72%,var(--fdt-ink))}
.fdt-contact-rows li:nth-child(3) .fdt-contact-icon{background:color-mix(in srgb,var(--fdt-leaf) 13%,#fff);color:var(--fdt-leaf)}
.fdt-contact-rows li:nth-child(4) .fdt-contact-icon{background:color-mix(in srgb,var(--fdt-ink) 8%,#fff);color:var(--fdt-ink)}
.fdt-contact-socials{display:flex;gap:8px;margin-top:4px}
.fdt-contact-socials a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--fdt-shell);color:var(--fdt-ink);transition:background-color .2s,color .2s,transform .3s cubic-bezier(.2,.8,.2,1)}
.fdt-contact-socials a:hover{background:var(--fdt-ember);color:#fff;transform:translateY(-3px)}
.fdt-contact-socials .fdt-icon{width:18px;height:18px}
.fdt-contact-hours{display:flex;align-items:center;gap:8px;margin:18px 0 0;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--fdt-leaf) 10%,#fff);color:color-mix(in srgb,var(--fdt-leaf) 80%,var(--fdt-ink));font-size:.9rem;font-weight:600}
.fdt-contact-hours .fdt-icon{flex:none;width:18px;height:18px;color:var(--fdt-leaf)}
.fdt-contact-form{display:flex;flex-direction:column}
.fdt-contact-note{margin:0 0 18px;color:var(--fdt-ink-2);font-size:1.02rem;line-height:1.55}
.fdt-contact-form .fdt-btn{align-self:flex-start}
.fdt-contact-form .fdt-btn .fdt-icon{width:18px;height:18px}
.fdt-contact-content input[type=text],.fdt-contact-content input[type=email],.fdt-contact-content input[type=tel],.fdt-contact-content textarea{width:100%;padding:11px 14px;border:1.5px solid var(--fdt-line);border-radius:12px;font:inherit;color:var(--fdt-ink);background:#fff}
.fdt-contact-content input:focus,.fdt-contact-content textarea:focus{outline:0;border-color:var(--fdt-ember);box-shadow:0 0 0 3px color-mix(in srgb,var(--fdt-ember) 18%,transparent)}
.fdt-contact-content input[type=submit],.fdt-contact-content button[type=submit]{display:inline-flex;align-items:center;min-height:46px;padding:11px 20px;border:0;border-radius:var(--fdt-btn-r);background:var(--fdt-ember);color:#fff;font:650 1rem var(--fdt-body);cursor:pointer}
.fdt-contact-content input[type=submit]:hover,.fdt-contact-content button[type=submit]:hover{background:var(--fdt-ember-dark)}
.fdt-contact-orders{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;padding:22px 24px;border-radius:22px;background:color-mix(in srgb,var(--fdt-ember) 7%,#fff);box-shadow:0 0 0 1px color-mix(in srgb,var(--fdt-ember) 22%,transparent)}
.fdt-contact-orders>div{flex:1 1 320px;min-width:0}
.fdt-contact-orders h2{margin:0 0 6px;font-size:1.12rem;letter-spacing:-.012em}
.fdt-contact-orders p{margin:0;color:var(--fdt-ink-2);font-size:.95rem;line-height:1.55}
.fdt-contact-orders-icon{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:16px;background:var(--fdt-ember);color:#fff}
.fdt-contact-orders-icon .fdt-icon{width:24px;height:24px}
.fdt-contact-orders .fdt-btn .fdt-icon{width:16px;height:16px}
.fdt-faq{margin-top:18px}
.fdt-faq h2{margin:0 0 16px;font-size:1.5rem;letter-spacing:-.02em}
.fdt-faq-list{display:grid;gap:10px}
.fdt-faq-item{border-radius:18px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line);transition:box-shadow .3s}
.fdt-faq-item[open]{box-shadow:0 0 0 1px var(--fdt-line),0 20px 30px -24px rgba(43,25,15,.45)}
.fdt-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;cursor:pointer;list-style:none;font-weight:650;font-size:1.02rem;color:var(--fdt-ink)}
.fdt-faq-item summary::-webkit-details-marker{display:none}
.fdt-faq-item summary:hover{color:var(--fdt-ember)}
.fdt-faq-item summary .fdt-icon{flex:none;width:18px;height:18px;color:var(--fdt-ember);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fdt-faq-item[open] summary .fdt-icon{transform:rotate(180deg)}
.fdt-faq-item p{margin:0;padding:0 20px 18px;color:var(--fdt-ink-2);line-height:1.6;animation:fdt-rise .35s cubic-bezier(.2,.75,.2,1) both}
/* Comments. */
.fdt-post-comments{max-width:calc(760px + var(--fdt-gutter)*2);padding-bottom:var(--fdt-space)}
.fdt-comments{padding:24px;border-radius:22px;background:#fff;box-shadow:0 0 0 1px var(--fdt-line)}
.fdt-comments h2,.fdt-comments .comment-reply-title{margin:0 0 16px;font-size:1.3rem}
.fdt-comment-list{margin:0 0 24px;padding:0;list-style:none}
.fdt-comment-list li{padding:14px 0;border-bottom:1px solid var(--fdt-line)}
.fdt-comments textarea,.fdt-comments input[type=text],.fdt-comments input[type=email],.fdt-comments input[type=url]{width:100%;max-width:560px;padding:11px 14px;border:1.5px solid var(--fdt-line);border-radius:12px;font:inherit;color:var(--fdt-ink);background:#fff;transition:border-color .2s,box-shadow .2s}
.fdt-comments textarea:focus,.fdt-comments input:focus{outline:0;border-color:var(--fdt-ember);box-shadow:0 0 0 3px color-mix(in srgb,var(--fdt-ember) 18%,transparent)}
.fdt-comments label{display:block;margin-bottom:4px;font-weight:600;font-size:.92rem}

/* ------------------------------------------------------------------ 13. Cart, checkout, account (fonts, colours and buttons only) */
.fdt-page-shop .wc-block-components-button:not(.is-link),.fdt-page-shop .woocommerce-button,.fdt-page-shop .woocommerce button.button,.fdt-page-shop .woocommerce a.button{background:var(--fdt-ember);color:#fff;border:0;border-radius:var(--fdt-btn-r);font-weight:650;padding:12px 20px;text-decoration:none;cursor:pointer}
.fdt-page-shop .wc-block-components-button:not(.is-link):hover,.fdt-page-shop .woocommerce button.button:hover,.fdt-page-shop .woocommerce a.button:hover{background:var(--fdt-ember-dark);color:#fff}
.fdt-site .woocommerce-message,.fdt-site .woocommerce-info,.fdt-site .woocommerce-error{margin:0 0 20px;padding:14px 18px;border-radius:var(--fdt-r);background:var(--fdt-shell);list-style:none}
.fdt-site .woocommerce-error{background:color-mix(in srgb,var(--fdt-ember) 10%,#fff)}

/* ------------------------------------------------------------------ 14. Footer, phone bar */
.fdt-disclosure{background:var(--fdt-shell);border-top:1px solid var(--fdt-line);padding-block:22px;font-size:.88rem;color:var(--fdt-ink-2)}
.fdt-disclosure p{margin:0;max-width:92ch}
.fdt-disclosure p+p{margin-top:6px}
/* The footer: a bark-brown band with faint growth rings. A search box with a heading
   at the top, then the logo on a white plate with the about text, contact rows and
   social circles, beside three link columns (counts beside categories, icons beside the
   tools; links slide right behind an orange dash on hover). A darker base line with the
   copyright, the trademark line and a round back-to-top button. */
.fdt-footer{position:relative;background:var(--fdt-ink);color:#e6d9c9;overflow:hidden;isolation:isolate}
.fdt-footer .fdt-page-rings{right:-220px;top:-260px;background:repeating-radial-gradient(circle,transparent 0 30px,rgba(255,255,255,.07) 30px 32px)}
.fdt-footer-find{display:grid;gap:18px;align-items:center;padding-block:clamp(34px,5vw,52px) clamp(28px,4vw,40px);border-bottom:1px solid rgba(255,255,255,.1)}
.fdt-site .fdt-footer-find h2{margin:0;color:#fff;font-size:clamp(1.35rem,1.1rem + 1vw,1.8rem);letter-spacing:-.02em}
.fdt-footer-find p{margin:8px 0 0;max-width:48ch;color:#bfae9b;font-size:.98rem}
.fdt-search-dark{margin:0;max-width:560px;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.16)}
.fdt-search-dark:hover{box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.32)}
.fdt-search-dark:focus-within{background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1.5px var(--fdt-ember)}
.fdt-search-dark input[type=search]{color:#fff}
.fdt-search-dark input[type=search]::placeholder{color:#a89481}
.fdt-search-dark .fdt-search-key{background:rgba(255,255,255,.1);box-shadow:none;color:#bfae9b}
/* Email sign-up: in the footer on the dark band, and on the product page as a plain panel. */
.fdt-footer-news{display:grid;gap:18px;align-items:center;padding-block:clamp(28px,4vw,40px);border-bottom:1px solid rgba(255,255,255,.1)}
.fdt-site .fdt-footer-news h2{margin:0;color:#fff;font-size:clamp(1.25rem,1.05rem + .9vw,1.6rem);letter-spacing:-.02em}
.fdt-footer-news p{margin:8px 0 0;max-width:48ch;color:#bfae9b;font-size:.96rem}
.fdt-news{display:flex;flex-wrap:wrap;gap:10px;margin:0;max-width:560px}
.fdt-news-field{position:relative;display:flex;flex:1 1 220px;align-items:center;gap:10px;padding:0 16px;border-radius:var(--fdt-btn-r);background:#fff;box-shadow:inset 0 0 0 1.5px var(--fdt-line);transition:box-shadow .2s}
.fdt-news-field:focus-within{box-shadow:inset 0 0 0 1.5px var(--fdt-ember)}
.fdt-news-field svg{width:19px;height:19px;flex:none;color:var(--fdt-ink-3)}
.fdt-news input[type=email]{flex:1;min-width:0;height:52px;border:0;background:none;color:var(--fdt-ink);font:500 1rem var(--fdt-body)}
.fdt-news input[type=email]:focus{outline:0}
.fdt-news .fdt-btn{flex:none;height:52px}
.fdt-news .fdt-btn:disabled{opacity:.6;cursor:progress}
.fdt-news-note{flex:1 0 100%;margin:0;color:var(--fdt-ink-3);font-size:.86rem}
.fdt-news.is-done .fdt-news-note{color:var(--fdt-leaf);font-weight:600}
.fdt-news.is-bad .fdt-news-note{color:var(--fdt-ember);font-weight:600}
.fdt-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.fdt-news-dark .fdt-news-field{background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.16)}
.fdt-news-dark .fdt-news-field:focus-within{background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1.5px var(--fdt-ember)}
.fdt-news-dark .fdt-news-field svg{color:#a89481}
.fdt-news-dark input[type=email]{color:#fff}
.fdt-news-dark input[type=email]::placeholder{color:#a89481}
.fdt-news-dark .fdt-news-note{color:#bfae9b}
.fdt-news-dark.is-done .fdt-news-note{color:#9ccf8f}
.fdt-news-panel .fdt-news-lead{margin:0 0 14px;color:var(--fdt-ink-2)}

.fdt-footer-grid{display:grid;gap:34px 40px;padding-block:clamp(36px,5vw,56px) clamp(40px,5vw,60px)}
.fdt-footer .fdt-logo{display:inline-flex;padding:10px 14px;border-radius:14px;background:#fff;box-shadow:0 14px 28px -18px rgba(0,0,0,.6);transition:transform .35s cubic-bezier(.19,.9,.22,1)}
.fdt-footer .fdt-logo:hover{transform:translateY(-3px)}
.fdt-footer .fdt-logo-img{height:calc(var(--fdt-logo-h)*.8)}
.fdt-footer-brand p{margin:18px 0 0;max-width:34ch;color:#bfae9b;font-size:.95rem;line-height:1.55}
.fdt-contact{margin:16px 0 0;padding:0;list-style:none;font-size:.93rem}
.fdt-contact li{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px;color:#e6d9c9}
.fdt-contact .fdt-icon{flex:none;width:18px;height:18px;margin-top:.1em;color:var(--fdt-ember)}
.fdt-contact a{color:#e6d9c9;text-decoration:none}
.fdt-contact a:hover{color:#fff;text-decoration:underline;text-underline-offset:.16em}
.fdt-social{display:flex;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.fdt-social a{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;transition:background-color .2s,transform .3s cubic-bezier(.2,.8,.2,1)}
.fdt-social a:hover{background:var(--fdt-ember);transform:translateY(-3px)}
.fdt-social .fdt-icon{width:18px;height:18px}
.fdt-site .fdt-footer-col h2{margin:6px 0 14px;color:#fff;font:700 .82rem var(--fdt-display);letter-spacing:.06em;text-transform:uppercase}
.fdt-footer-col ul{margin:0;padding:0;list-style:none}
.fdt-footer-col li{margin-bottom:2px}
.fdt-footer-col a,.fdt-footer-col button{position:relative;display:inline-flex;align-items:center;gap:8px;padding:5px 0 5px 0;border:0;background:none;color:#cdbba8;font:inherit;font-size:.95rem;text-decoration:none;cursor:pointer;text-align:left;transition:color .2s,padding-left .3s cubic-bezier(.2,.8,.2,1)}
.fdt-footer-col a::before,.fdt-footer-col button::before{content:"";position:absolute;left:0;top:50%;width:0;height:2px;border-radius:1px;background:var(--fdt-ember);transform:translateY(-50%);transition:width .3s cubic-bezier(.2,.8,.2,1)}
.fdt-footer-col a:hover,.fdt-footer-col button:hover{color:#fff;padding-left:18px}
.fdt-footer-col a:hover::before,.fdt-footer-col button:hover::before{width:11px}
.fdt-footer-n{padding:1px 7px;border-radius:999px;background:rgba(255,255,255,.1);color:#bfae9b;font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums}
.fdt-footer-col a:hover .fdt-footer-n{background:var(--fdt-ember);color:#fff}
.fdt-footer-tools .fdt-icon{flex:none;width:16px;height:16px;color:var(--fdt-ember)}
.fdt-footer-guides a{display:flex;align-items:flex-start;line-height:1.35}
.fdt-footer-guides a span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fdt-footer-all{color:#fff!important;font-weight:650}
.fdt-footer-all .fdt-icon{width:14px;height:14px;margin-top:.2em;color:var(--fdt-ember)}
.fdt-footer-base{background:color-mix(in srgb,var(--fdt-ink) 82%,#000);color:#bfae9b;font-size:.84rem}
.fdt-footer-base .fdt-wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 30px;padding-block:16px}
.fdt-footer-base p{margin:0}
.fdt-footer-tm{flex:1 1 320px;text-align:right}
.fdt-footer-top{display:inline-flex;align-items:center;gap:8px;padding:6px 6px 6px 14px;border:0;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font:650 .84rem var(--fdt-body);cursor:pointer;transition:background-color .2s,transform .3s cubic-bezier(.2,.8,.2,1)}
.fdt-footer-top .fdt-icon{order:2;width:14px;height:14px;padding:7px;box-sizing:content-box;border-radius:50%;background:var(--fdt-ember);transform:rotate(180deg);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fdt-footer-top:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}
.fdt-footer-top:hover .fdt-icon{transform:rotate(180deg) translateY(2px)}

.fdt-bar{position:fixed;left:0;right:0;bottom:0;z-index:57;display:none;grid-auto-flow:column;grid-auto-columns:1fr;background:#fff;border-top:1px solid var(--fdt-line);padding-bottom:env(safe-area-inset-bottom)}
.fdt-bar a,.fdt-bar button{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 7px;border:0;background:none;color:var(--fdt-ink-2);font:600 .7rem var(--fdt-body);text-decoration:none;cursor:pointer}
.fdt-bar .fdt-icon{width:23px;height:23px}
.fdt-bar [aria-current=page]{color:var(--fdt-ember)}
.fdt-bar .fdt-count{position:absolute;top:3px;left:calc(50% + 4px)}

/* ------------------------------------------------------------------ Wider screens */
@media (min-width:600px){
	.fdt-grid{gap:22px 18px}
	.fdt-finish-grid{grid-template-columns:repeat(auto-fill,minmax(124px,1fr))}
	.fdt-posts{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fdt-about-points{grid-template-columns:repeat(3,minmax(0,1fr))}
	.fdt-about-points li{flex-direction:column;gap:12px}
	.fdt-parts{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fdt-ringlist{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:760px){
	.fdt-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
	.fdt-pieces-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(170px,15.5vw,230px);gap:16px}
	.fdt-piece-info{left:20px;bottom:18px}
	.fdt-piece-go{right:16px;bottom:16px;width:44px;height:44px}
	.fdt-piece-count{left:16px;top:16px}
	.fdt-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fdt-footer-brand{grid-column:1/-1}
	.fdt-footer-find{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}
	.fdt-footer-find .fdt-search{margin-left:auto;width:100%}
	.fdt-footer-news{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}
	.fdt-footer-news .fdt-news{margin-left:auto;width:100%}
	.fdt-hero+.fdt-facts{margin-top:-46px}
	.fdt-facts-bar{grid-template-columns:repeat(var(--fdt-n,4),minmax(0,1fr));padding:8px}
	.fdt-facts-bar li{padding:22px 20px;gap:16px}
	.fdt-facts-bar li+li::before{content:"";position:absolute;left:-1px;top:24%;width:1px;height:52%;background:var(--fdt-line)}
	.fdt-fact-icon{width:52px;height:52px}
	.fdt-about-grid{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
	.fdt-scoring-grid{grid-template-columns:230px 1fr}
	.fdt-pp-panels{columns:2;column-gap:56px}
	.fdt-scoring,.fdt-desc{column-span:all}
}
@media (min-width:900px){
	.fdt-post-layout.has-side{grid-template-columns:minmax(0,1fr) 300px;gap:56px}
	.fdt-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
	.fdt-contact-grid.has-details{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
	.fdt-post-side-in{position:sticky;top:96px}
	.fdt-post-nav{grid-template-columns:1fr 1fr}
	.fdt-posts.has-wide .fdt-post-wide{grid-column:1/-1}
	.fdt-post-wide{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center}
	.fdt-post-wide .fdt-post-thumb{aspect-ratio:4/3;margin:6px 0 6px 6px}
	.fdt-post-wide .fdt-post-text{padding:28px 32px}
	.fdt-post-wide h3{font-size:1.6rem;line-height:1.2}
	.fdt-posts{grid-template-columns:repeat(3,minmax(0,1fr))}
	.fdt-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,5.4vw,92px)}
	.fdt-hero-grid::after{display:block}
	.fdt-scoreband-grid{grid-template-columns:minmax(260px,380px) 1fr;gap:clamp(40px,7vw,110px)}
	.fdt-scoreband-fig{max-width:none}
	.fdt-pp{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);grid-template-areas:"gallery head" "gallery buy";gap:0 clamp(32px,4.5vw,68px);align-items:start}
	.fdt-buy{margin-top:22px}
	.fdt-gallery{position:sticky;top:130px}
	.fdt-listing-grid{grid-template-columns:238px minmax(0,1fr)}
	.fdt-filters{position:sticky;top:128px;max-height:calc(100dvh - 148px);overflow-y:auto;scrollbar-width:thin;padding-right:6px}
	.fdt-toolbar-filter{display:none}
}
@media (min-width:1040px){
	.fdt-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
	.fdt-grid-shop{grid-template-columns:repeat(var(--fdt-cols),minmax(0,1fr))}
	.fdt-footer-grid{grid-template-columns:1.5fr 1fr 1fr 1.3fr 1fr}
	.fdt-footer-brand{grid-column:auto}
}

/* ------------------------------------------------------------------ Phones and small tablets */
@media (max-width:899px){
	.fdt-burger{display:inline-flex}
	.fdt-nav{display:none}
	.fdt-header-row{flex-wrap:wrap;gap:8px 10px;padding-block:9px}
	.fdt-logo{margin-right:auto}
	.fdt-logo-img,.fdt-header.is-stuck .fdt-logo-img{height:calc(var(--fdt-logo-h)*.76)}
	.fdt-header.is-stuck .fdt-header-row{padding-block:9px}
	.fdt-search,.fdt-search:focus-within{order:5;flex:1 0 100%;max-width:none;height:46px}
	.fdt-search button{width:36px;height:36px}
	.fdt-search-key{display:none}
	.fdt-tool{height:42px;padding:0 10px}
	.fdt-tool-label{display:none}
	.fdt-tool .fdt-count{left:22px;top:2px}
	.fdt-has-bar .fdt-tools .fdt-tool[data-fdt-open=fdt-shortlist]{display:none}
	.fdt-hero::before{width:560px;height:560px;right:-300px;top:-280px}
	.fdt-has-bar .fdt-bar{display:grid}
	.fdt-has-bar{padding-bottom:calc(58px + env(safe-area-inset-bottom))}
	.fdt-has-bar .fdt-buybar,.fdt-has-bar .fdt-cmpbar{bottom:calc(57px + env(safe-area-inset-bottom))}
	.fdt-has-bar .fdt-toast{bottom:140px}
	.fdt-strip{font-size:.78rem}
	.fdt-filters{display:none;position:fixed;inset:0 0 0 auto;z-index:130;width:min(340px,90vw);padding:0 20px 28px;background:#fff;overflow-y:auto;overscroll-behavior:contain}
	.fdt-filters-open .fdt-filters{display:block;box-shadow:0 0 0 100vmax rgba(43,25,15,.5);animation:fdt-in-right .22s ease-out}
	.fdt-filters-head{position:sticky;top:0;z-index:2;background:#fff;padding-top:14px}
	.fdt-filters-head .fdt-x{display:grid;margin-left:auto}
	.fdt-buybar-name{display:none}
	.fdt-cmp-table tbody th,.fdt-cmp-table thead th{width:104px}
	.fdt-sheet-body{padding-inline:14px}
}
@media (max-width:520px){
	.fdt-ask{flex-direction:column;padding:8px}
	.fdt-ask .fdt-btn{width:100%}
	.fdt-match{border-radius:22px}
	.fdt-match-picks{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto}
	.fdt-pickcard-lead{grid-row:auto}
	.fdt-pickcard-lead .fdt-tile{flex:none;aspect-ratio:16/10;min-height:0}
	.fdt-pickcard-side{min-height:92px}
	.fdt-match-read{min-height:92px}
}
/* Phones: the product card is drawn smaller all over, so two fit side by side without
   crowding: smaller rings, heart, name, price, pill and buttons, tighter padding. */
@media (max-width:599px){
	.fdt-grid{gap:22px 10px}
	.fdt-card{border-radius:16px}
	.fdt-card-media{padding:5px 5px 0}
	.fdt-card-media .fdt-tile{border-radius:12px}
	.fdt-tile-score{right:9px;bottom:-18px;width:44px;height:44px;padding:3px}
	.fdt-card-media .fdt-save{right:10px;top:10px;width:32px;height:32px}
	.fdt-card-media .fdt-save .fdt-icon{width:16px;height:16px}
	.fdt-card-tag{left:10px;top:10px;max-width:calc(100% - 54px);padding:5px 9px 5px 7px;font-size:.66rem}
	.fdt-rank{left:10px;top:10px;min-width:26px;height:26px;font-size:.8rem}
	.fdt-card-body{gap:4px;padding:11px 11px 11px}
	.fdt-card.has-score .fdt-card-body{padding-top:26px}
	.fdt-card-brand{font-size:.7rem}
	.fdt-card.has-score .fdt-card-brand{max-width:calc(100% - 52px);margin-top:-17px;margin-bottom:3px}
	.fdt-site .fdt-card-name{min-height:2.5em;font-size:.86rem;line-height:1.25}
	.fdt-card .fdt-rating{font-size:.74rem;gap:4px}
	.fdt-card .fdt-price{gap:2px 6px}
	.fdt-card .fdt-price-now{font-size:1.1rem}
	.fdt-card .fdt-price-was{font-size:.74rem}
	.fdt-card .fdt-price-off{padding:2px 7px;font-size:.66rem}
	.fdt-card-foot{gap:6px;padding-top:10px}
	.fdt-card-buy{min-height:38px;gap:6px;padding:5px 6px 5px 12px;border-radius:11px;font-size:.78rem}
	.fdt-card-buy .fdt-icon{width:12px;height:12px;padding:5px}
	.fdt-card .fdt-cmp-ui{min-height:34px;padding:4px 10px;border-radius:10px;font-size:.76rem;gap:5px}
	.fdt-cmp-ico,.fdt-cmp-ico .fdt-icon{width:15px;height:15px}
	.fdt-why{font-size:.8rem}
}

/* ------------------------------------------------------------------ 15. Motion, print */
/* Rings draw themselves the first time they come into view. The top of the home page
   arrives in sequence, and its panel plays through the example requests. */
@keyframes fdt-rise{from{opacity:0;transform:translateY(22px)}}
@keyframes fdt-panel-in{from{opacity:0;transform:translateY(30px) scale(.965)}}
@keyframes fdt-card-in{from{opacity:0;transform:translateY(18px) scale(.94)}}
@keyframes fdt-pop{from{opacity:0;transform:translateY(8px) scale(.96)}}
@keyframes fdt-bob{50%{transform:translateY(-7px)}}
@keyframes fdt-breathe{50%{transform:scale(1.07)}}
@keyframes fdt-blink{50%{opacity:0}}
@keyframes fdt-dot{0%,60%,100%{transform:none;opacity:.45}30%{transform:translateY(-5px);opacity:1}}
@keyframes fdt-live{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--fdt-leaf) 55%,transparent)}100%{box-shadow:0 0 0 9px transparent}}
@keyframes fdt-fill{from{width:0}to{width:100%}}
@keyframes fdt-bump{40%{transform:scale(1.5)}}
@keyframes fdt-skel{to{background-position:-220% 0}}
@keyframes fdt-shine{0%,72%{transform:translateX(0) skewX(-20deg)}100%{transform:translateX(460%) skewX(-20deg)}}
@media (prefers-reduced-motion:no-preference){
	.fdt-hero-copy>*{animation:fdt-rise .7s cubic-bezier(.2,.75,.2,1) both}
	.fdt-hero-copy>:nth-child(2){animation-delay:.08s}
	.fdt-hero-copy>:nth-child(3){animation-delay:.18s}
	.fdt-hero-copy>:nth-child(4){animation-delay:.27s}
	.fdt-hero-copy>:nth-child(5){animation-delay:.35s}
	.fdt-match{animation:fdt-panel-in .9s cubic-bezier(.19,.9,.22,1) .18s both}
	.fdt-hero-grid::after{animation:fdt-breathe 9s ease-in-out infinite}
	.fdt-hero::before{animation:fdt-breathe 16s ease-in-out infinite}
	.fdt-match-picks .fdt-pickcard{animation:fdt-card-in .6s cubic-bezier(.19,.9,.22,1) both}
	.fdt-match-picks .fdt-pickcard:nth-child(2){animation-delay:.09s}
	.fdt-match-picks .fdt-pickcard:nth-child(3){animation-delay:.18s}
	.fdt-facts.is-ready .fdt-facts-bar li{opacity:0;transform:translateY(18px)}
	.fdt-facts.is-in .fdt-facts-bar li{opacity:1;transform:none;transition:opacity .6s ease,transform .7s cubic-bezier(.19,.9,.22,1),background-color .25s}
	.fdt-facts.is-in .fdt-facts-bar li:nth-child(2){transition-delay:.09s,.09s,0s}
	.fdt-facts.is-in .fdt-facts-bar li:nth-child(3){transition-delay:.18s,.18s,0s}
	.fdt-facts.is-in .fdt-facts-bar li:nth-child(4){transition-delay:.27s,.27s,0s}
	.fdt-save[aria-pressed=true] .fdt-icon{animation:fdt-bump .45s cubic-bezier(.2,.8,.2,1)}
	.fdt-count.is-bump{animation:fdt-bump .45s cubic-bezier(.2,.8,.2,1)}
	[data-fdt-reveal].is-ready>*{opacity:0;transform:translateY(28px) scale(.97)}
	[data-fdt-reveal].is-in>*{opacity:1;transform:none;transition:opacity .7s ease,transform .8s cubic-bezier(.19,.9,.22,1)}
	[data-fdt-reveal].is-in>:nth-child(2){transition-delay:.07s}
	[data-fdt-reveal].is-in>:nth-child(3){transition-delay:.14s}
	[data-fdt-reveal].is-in>:nth-child(4){transition-delay:.21s}
	[data-fdt-reveal].is-in>:nth-child(5){transition-delay:.28s}
	[data-fdt-reveal].is-in>:nth-child(6){transition-delay:.35s}
	[data-fdt-reveal].is-in>:nth-child(7){transition-delay:.42s}
	[data-fdt-reveal].is-in>:nth-child(8){transition-delay:.49s}
	[data-fdt-reveal].is-in>:nth-child(9){transition-delay:.56s}
	[data-fdt-reveal].is-in>:nth-child(10){transition-delay:.63s}
	.fdt-match-chips li{animation:fdt-pop .4s cubic-bezier(.19,.9,.22,1) both}
	.fdt-match-chips li:nth-child(2){animation-delay:.07s}
	.fdt-match-chips li:nth-child(3){animation-delay:.14s}
	.fdt-match-chips li:nth-child(4){animation-delay:.21s}
	.fdt-match-chips .fdt-skel,.fdt-waiting-row,.fdt-pickcard-skel{animation:fdt-skel 1.1s linear infinite}
	.fdt-match .is-pop{animation:fdt-pop .36s cubic-bezier(.19,.9,.22,1) both}
	.fdt-match-query span.is-typing::after,.fdt-ask-hint b::after{animation:fdt-blink .8s steps(1) infinite}
	.fdt-dots i{animation:fdt-dot 1.1s ease-in-out infinite}
	.fdt-dots i:nth-child(2){animation-delay:.15s}
	.fdt-dots i:nth-child(3){animation-delay:.3s}
	.fdt-match.is-playing .fdt-match-steps button.is-on::after{animation:fdt-fill var(--fdt-hold,5s) linear both}
	.fdt-match.is-held .fdt-match-steps button.is-on::after{animation-play-state:paused}
	.fdt-ask .fdt-btn::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:fdt-shine 5.5s ease-in-out 1.6s infinite}

	[data-fdt-draw].is-waiting .fdt-ring{stroke-dashoffset:100;stroke-dasharray:100 100}
	[data-fdt-draw] .fdt-ring{transition:stroke-dashoffset 1.1s cubic-bezier(.2,.7,.2,1),stroke-dasharray 1.1s cubic-bezier(.2,.7,.2,1)}
	[data-fdt-draw] .fdt-ring-2{transition-delay:.12s}
	[data-fdt-draw] .fdt-ring-3{transition-delay:.24s}
	[data-fdt-draw] .fdt-ring-4{transition-delay:.36s}
}
@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	.fdt-site *,.fdt-site *::before,.fdt-site *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media print{
	.fdt-strip,.fdt-header,.fdt-footer,.fdt-bar,.fdt-buybar,.fdt-cmpbar,.fdt-filters,.fdt-save,.fdt-cmp{display:none!important}
}
