:root{--c:#101417;--i:#F6F2EA;--g:#C9A875;--s:#8A9A86;--ink:#1c2125}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--i);color:var(--ink);font:1.0625rem/1.7 system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.1;letter-spacing:-.01em}
h1{font-size:clamp(2.4rem,6vw,5rem);margin:.3em 0}h2{font-size:clamp(1.6rem,3vw,2.4rem)}
a{color:inherit;text-underline-offset:.2em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--g);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--g);padding:.5rem;z-index:9}
.hd{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:1.2rem clamp(1rem,5vw,4rem);background:var(--c);color:var(--i)}
.hd nav{display:flex;gap:1.5rem;flex-wrap:wrap}.hd a{text-decoration:none}
.brand{display:flex;gap:.6rem;align-items:center;font-family:Georgia,serif;font-size:1.5rem}.mark{width:30px;fill:var(--g)}
main{padding:0 clamp(1rem,5vw,4rem) 4rem;max-width:1400px;margin:auto}
.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:center;min-height:75vh;padding:3rem 0}
.hero .art{background:var(--c);border-radius:50% 50% 50% 8%;aspect-ratio:1;display:grid;place-items:center;animation:rise 1.2s ease both}
.hero .art .mark{width:45%;fill:var(--g)}@keyframes rise{from{opacity:0;transform:translateY(24px)}}
.lead{font-size:1.25rem;max-width:60ch}p,li{max-width:68ch}
.btn{display:inline-block;background:var(--c);color:var(--i);padding:.9rem 1.6rem;border:0;border-radius:999px;text-decoration:none;cursor:pointer;font:inherit;transition:background .2s,color .2s}
.btn:hover{background:var(--g);color:var(--c)}.btn.ghost{background:none;color:var(--c);box-shadow:inset 0 0 0 1px var(--c)}
.sec{padding:3rem 0}.sec.dark{background:var(--c);color:var(--i);margin:0 calc(-1*clamp(1rem,5vw,4rem));padding:4rem clamp(1rem,5vw,4rem)}.sec.dark a{color:var(--g)}
.cats{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;border-top:1px solid #0003}
.cats li{padding:1.4rem 1rem 1.4rem 0;border-bottom:1px solid #0003}.cats b{display:block;font-family:Georgia,serif;font-size:1.3rem;font-weight:400}.cats span{color:#4a5258}
.tool{display:grid;gap:1rem;max-width:520px;margin:2rem 0}label{display:grid;gap:.3rem}
input,select{font:inherit;padding:.7rem;border:1px solid #0006;border-radius:6px;background:#fff}
.res{max-width:60ch}.res .box{background:var(--c);color:var(--i);padding:1.5rem;border-radius:12px}.res .box b{color:var(--g)}.err{color:#8a1c1c}
.bc{padding:1rem 0;font-size:.9rem}.note{color:#4a5258}
.ft{background:var(--c);color:var(--i);padding:3rem clamp(1rem,5vw,4rem);display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.ft a{display:block}.fine{grid-column:1/-1;opacity:.7;font-size:.9rem}
@media(max-width:800px){.hero{grid-template-columns:1fr}.hero .art{max-width:280px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}}
progress{width:100%;max-width:520px;height:6px;accent-color:var(--g)}fieldset{border:0;padding:0;margin:2rem 0}legend{font:1.6rem Georgia,serif;margin-bottom:1rem}fieldset .btn{margin:.3rem .3rem .3rem 0}
.tw{overflow-x:auto}table{border-collapse:collapse;width:100%;margin-top:1.5rem}th,td{text-align:left;padding:.7rem;border-bottom:1px solid #0003;vertical-align:top}
.card{border-left:3px solid var(--g);padding:.5rem 1rem;margin:1rem 0}h3{font-family:Georgia,serif;font-weight:400}
.intro{position:fixed;inset:0;background:var(--c);color:var(--i);display:flex;gap:.8rem;align-items:center;justify-content:center;font:2rem Georgia,serif;z-index:99;pointer-events:none;animation:ix 1.4s ease forwards}.intro .mark{animation:rise .9s ease both}
@keyframes ix{0%,65%{opacity:1}100%{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){.intro{display:none}}
body{overflow-x:hidden}
.hero2{position:relative;width:100vw;margin-left:calc(50% - 50vw);min-height:min(92vh,900px);display:flex;align-items:flex-end;color:var(--i);overflow:hidden;background:var(--c)}
.hero2 picture{position:absolute;inset:0}.hero2 img{width:100%;height:100%;object-fit:cover;object-position:62% 40%;animation:kb 22s ease-out both}
.hero2:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101417f0 0%,#101417b3 42%,#10141726 100%),linear-gradient(0deg,#101417cc,transparent 40%)}
.hero2 .ov{position:relative;z-index:1;padding:clamp(2rem,6vw,5rem);max-width:820px}.hero2 h1{margin-top:0}.hero2 .lead{color:#F6F2EAdd}
.btn.gold{background:var(--g);color:var(--c)}.btn.gold:hover{background:var(--i)}.btn.ghost.light{color:var(--i);box-shadow:inset 0 0 0 1px var(--i)}.btn.ghost.light:hover{background:var(--i);color:var(--c)}
@keyframes kb{from{transform:scale(1.07)}to{transform:scale(1)}}
.ph{margin:1.5rem 0;overflow:hidden;border-radius:4px}.ph img,.tile img{display:block;width:100%;height:auto;object-fit:cover;transition:transform 1.4s ease}.ph:hover img,.tile:hover img{transform:scale(1.035)}.ph figcaption{padding:.5rem 0;opacity:.75}
.ph img{aspect-ratio:16/9}.split{display:grid;grid-template-columns:1fr 1.3fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}.split .ph{margin:0}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:1rem}.tile{position:relative;display:block;overflow:hidden;color:var(--i);text-decoration:none;border-radius:4px}.tile img{aspect-ratio:4/3}
.tile span{position:absolute;left:0;right:0;bottom:0;padding:2.5rem 1.2rem 1.1rem;font:1.4rem Georgia,serif;background:linear-gradient(0deg,#101417dd,transparent)}
@media(max-width:800px){.split{grid-template-columns:1fr}.hero2 .ov{padding-bottom:3rem}}
@media(prefers-reduced-motion:reduce){.hero2 img{animation:none}.ph img,.tile img{transition:none}}

/* ---- Premium catalogus (gedeelde componenten) ---- */
:root{--card:#fff;--line:#1c212522;--shadow:0 1px 2px #10141710,0 12px 32px -12px #10141733}
.catfilter{max-width:none;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;align-items:end;margin:2rem 0 1rem;padding:1.2rem;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.catfilter label{font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;color:#4a5258}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:1.5rem;margin:1.5rem 0}
.pcard{display:flex;flex-direction:column;margin:0;padding:0;border:1px solid var(--line);border-left:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease}
.pcard:hover{transform:translateY(-4px);box-shadow:0 2px 4px #10141712,0 22px 40px -14px #10141755}
.pvl{display:block;text-decoration:none}
.pv{position:relative;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;background:radial-gradient(120% 120% at 20% 10%,#2a3238 0%,var(--c) 70%);color:var(--g)}
.pv:before{content:"";position:absolute;inset:12px;border:1px solid #c9a87544;border-radius:10px}
.pv .pm{font:clamp(3rem,8vw,4.5rem)/1 Georgia,serif;letter-spacing:.02em}
.pv .pn{position:absolute;bottom:.9rem;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#F6F2EA99}
.pv.has{background:#fff}.pv.has img{width:100%;height:100%;object-fit:contain}.pv.has:before{display:none}
.pb{display:flex;flex-direction:column;gap:.5rem;padding:1.2rem 1.2rem 1.3rem;flex:1}
.eb{margin:0;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#7a6641;font-weight:600}.eb span{color:#6a737a;font-weight:400}
.pcard h3{margin:0;font-size:1.3rem;line-height:1.25}.pcard h3 a{text-decoration:none}.pcard h3 a:hover{text-decoration:underline;text-decoration-color:var(--g)}
.sn{margin:0;color:#4a5258;font-size:.95rem;line-height:1.5;flex:1}
.act{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.6rem;padding-top:.9rem;border-top:1px solid var(--line)}
.btn.sm{padding:.55rem 1.1rem;font-size:.92rem}
.cmp{margin-left:auto;display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem;color:#4a5258;cursor:pointer}
.cmp input{width:1.15rem;height:1.15rem;accent-color:var(--c);margin:0}
#cmpgo{margin-top:.5rem}
/* productpagina */
.pp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(1.5rem,4vw,4rem);align-items:center;padding:1rem 0 2rem}
.pp .pv{border-radius:20px;box-shadow:var(--shadow)}.pp h1{font-size:clamp(2rem,4.5vw,3.4rem)}
.shops{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.2rem}.shops .note{margin:0}
.specs{display:grid;grid-template-columns:minmax(120px,220px) 1fr;margin:1rem 0 2rem;border-top:1px solid var(--line)}
.specs dt,.specs dd{margin:0;padding:.9rem 0;border-bottom:1px solid var(--line)}.specs dt{font-weight:600;color:#4a5258}.specs ul{margin:0;padding-left:1.1rem}
@media(max-width:900px){.catfilter{grid-template-columns:1fr 1fr}.catfilter label:first-child{grid-column:1/-1}}
@media(max-width:700px){.pp{grid-template-columns:1fr}.specs{grid-template-columns:1fr}.specs dt{border-bottom:0;padding-bottom:0}.catfilter{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.pcard,.pcard:hover{transform:none;transition:none}}

/* ---- Luxe laag: header, home, categorieën, footer ---- */
html{-webkit-text-size-adjust:100%}
body{background:linear-gradient(180deg,#F6F2EA 0,#F6F2EA 60%,#EFE8DA 100%);background-attachment:fixed}
.hd{position:sticky;top:0;z-index:50;background:#101417ee;backdrop-filter:blur(14px);border-bottom:1px solid #c9a87533}
.hd nav a{position:relative;font-size:.95rem;letter-spacing:.02em;padding:.3rem 0}
.hd nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--g);transition:right .3s ease}
.hd nav a:hover:after{right:0}
.brand span{letter-spacing:.04em}
main>h1{position:relative;padding-bottom:.5rem}main>h1:after{content:"";display:block;width:72px;height:2px;margin-top:.8rem;background:linear-gradient(90deg,var(--g),transparent)}
h2{margin-top:0}
.btn.gold{box-shadow:0 8px 24px -10px #c9a875aa}.btn.gold:hover{box-shadow:0 12px 28px -10px #c9a875}
.hero2 h1{text-shadow:0 2px 30px #0008}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:#c9a87555;margin:0 calc(-1*clamp(1rem,5vw,4rem));border-block:1px solid #c9a87555}
.stats div{background:var(--c);color:var(--i);padding:1.6rem 1rem;text-align:center}
.stats b{display:block;font:2.6rem/1.1 Georgia,serif;color:var(--g);font-weight:400}.stats span{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;opacity:.8}
.catgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:1.2rem}
.cg{position:relative;display:flex;flex-direction:column;gap:.5rem;padding:1.6rem;background:#fff;border:1px solid var(--line);border-radius:16px;text-decoration:none;box-shadow:var(--shadow);transition:transform .25s,border-color .25s;overflow:hidden}
.cg:hover{transform:translateY(-4px);border-color:var(--g)}
.cg .cn{position:absolute;right:1.1rem;top:.6rem;font:3rem Georgia,serif;color:#c9a87566}
.cg b{font:1.4rem/1.2 Georgia,serif;font-weight:400;max-width:80%}.cg span{color:#4a5258;font-size:.95rem}.cg em{margin-top:auto;font-style:normal;color:#7a6641;font-size:.9rem;letter-spacing:.04em}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;counter-reset:s}
.steps li{counter-increment:s;max-width:none;padding:1.6rem;border-top:2px solid var(--g);background:#ffffff80;border-radius:0 0 12px 12px}
.steps li:before{content:counter(s,decimal-leading-zero);display:block;font:2rem Georgia,serif;color:#b99552;margin-bottom:.4rem}
.steps b{display:block;font:1.3rem Georgia,serif;font-weight:400;margin-bottom:.3rem}.steps span{color:#4a5258}
.trust{text-align:center}.trust .lead{margin:1rem auto 0}
.fav{position:absolute;top:.7rem;right:.7rem;z-index:2;width:2.4rem;height:2.4rem;border-radius:50%;border:1px solid #c9a87577;background:#101417cc;color:var(--g);font-size:1.2rem;line-height:1;cursor:pointer;transition:transform .2s,background .2s}
.fav:hover{transform:scale(1.1)}.fav[aria-pressed=true]{background:var(--g);color:var(--c)}
.pcard{position:relative}.pcard[hidden]{display:none}
.card{background:#ffffffb0;border-radius:0 12px 12px 0}
.tool{background:#fff;padding:1.5rem;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.tool .btn,.tool button{justify-self:start}
.res .box{background:radial-gradient(120% 140% at 10% 0,#2a3238,var(--c));border:1px solid #c9a87544}
table{background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}th{background:var(--c);color:var(--g);font-weight:400;letter-spacing:.06em}
.ft{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2rem;padding-top:4rem;border-top:2px solid var(--g)}
.ft b{display:block;color:var(--g);font:400 .8rem system-ui;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.6rem}.ft .fb{font:1.6rem Georgia,serif;text-transform:none;letter-spacing:.02em;color:var(--i)}
.ft a{text-decoration:none;padding:.15rem 0;opacity:.85}.ft a:hover{opacity:1;color:var(--g)}
@supports(animation-timeline:view()){.pcard,.cg,.steps li{animation:fup linear both;animation-timeline:view();animation-range:entry 0% cover 22%}@keyframes fup{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}}
@media(max-width:800px){.hd{padding:.8rem 1rem}.hd nav{gap:.4rem 1rem;font-size:.9rem}.hero2{min-height:78vh}.stats b{font-size:2rem}}

/* ---- Neutrale productkaart (geen foto) ---- */
.pv.pvn{background:linear-gradient(160deg,#fbf8f2 0%,#efe6d4 100%);color:var(--ink);flex-direction:column;gap:.35rem;padding:1.4rem;text-align:center}
.pv.pvn:before{inset:10px;border-color:#c9a87566}
.pvx{display:block;width:44px;height:44px;margin-bottom:.4rem}
.pvmark{width:100%;height:100%;fill:var(--g);display:block}
.pvb{font:1.2rem/1.2 Georgia,serif;letter-spacing:.02em;color:var(--c)}
.pvc{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:#7a6641}
.pv.pvn .pn{display:none}
.pp .pv.pvn{min-height:340px}
.pp>*{min-width:0}.pp .pv.pvn{min-height:0;aspect-ratio:4/3}
@media(max-width:700px){.pp{grid-template-columns:minmax(0,1fr)}.pp .pv.pvn{aspect-ratio:4/3}}

/* ---- Typografische kaart (zonder foto) ---- */
.pcard.notext{border-top:2px solid var(--g);border-left:1px solid var(--line)}
.pcard.notext .pb{padding-top:1.4rem}
.pcard.notext h3{font-size:1.55rem;line-height:1.15;margin:.2rem 0 .4rem}
.pcard.notext .sn{font-size:.92rem}
.pcard.notext .pvl{display:none}
/* productpagina zonder foto */
.pfacts{padding:2.2rem;border-left:2px solid var(--g);background:#fff;border-radius:0 16px 16px 0;box-shadow:var(--shadow)}
.pfacts .pfname{font:clamp(1.6rem,3vw,2.2rem)/1.15 Georgia,serif;margin:.3rem 0 1rem;color:var(--ink)}
.pfacts ul{margin:0;padding-left:1.1rem;color:#4a5258}.pfacts li{margin:.35rem 0}
/* editorial: eerste product op home breed */
.cards.ed .pcard:first-child{grid-column:span 2}
@media(max-width:700px){.cards.ed .pcard:first-child{grid-column:auto}}
.catfilter select,.catfilter input{width:100%;min-width:0}.catfilter>label{min-width:0}
@media(max-width:1180px){.catfilter{grid-template-columns:1fr 1fr}.catfilter label:first-child{grid-column:1/-1}}

/* ---- Premium v2: categorie-vlakken, productpagina, kernfeiten ---- */
.pv.pvn.pvplate{background:radial-gradient(120% 90% at 50% 0%,#fffdf8 0%,#f3ead8 62%,#e9dcc3 100%);gap:.7rem;padding:1.2rem}
.pv.pvn.pvplate:before{inset:14px;border:1px solid #c9a87559;border-radius:12px}
.pvx{width:60px;height:60px;fill:none;stroke:#8a6d3b;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;transition:transform .45s cubic-bezier(.2,.7,.2,1),stroke .3s}
.pvc{position:relative;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:#7a6641;font-weight:600}
.pcard:hover .pvx{transform:translateY(-3px) scale(1.04);stroke:#B08A4E}
.pcard .pv.pvn.pvplate{aspect-ratio:4/3}
.pvbig{aspect-ratio:4/3;border-radius:20px}
.pvbig .pvx{width:112px;height:112px;stroke-width:1}
.pvbig .pvc{font-size:.78rem}
.ppi{display:flex;flex-direction:column;gap:.2rem}
.ppi h1{margin:.2rem 0 .3rem}
.kf{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.2rem 1.5rem;margin:1.4rem 0 .6rem;padding:1.2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.kf div{margin:0;min-width:0}
.kf dt{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#6a737a;margin:0 0 .25rem}
.kf dd{margin:0;color:var(--ink);font-size:1.02rem;line-height:1.45}
.pp .shops{margin-top:1rem}
.pp .btn.ghost{color:var(--ink);box-shadow:inset 0 0 0 1px #1c212566}
.pp .btn.ghost:hover{background:var(--c);color:var(--i);box-shadow:none}
.pp .shops .note{margin:.4rem 0 0}
.pp h1{letter-spacing:-.02em}
.catfilter .btn{align-self:end}
@media(max-width:700px){.pvbig .pvx{width:84px;height:84px}.kf{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.pvx{transition:none}.pcard:hover .pvx{transform:none}}
@media(max-width:800px){.hd{flex-direction:column;align-items:stretch;gap:.5rem;padding:.8rem 1rem .5rem}.hd{width:100%;max-width:100vw;min-width:0}.brand{align-self:flex-start}.hd nav{flex-wrap:nowrap;overflow-x:auto;gap:1.1rem;padding-bottom:.25rem;scrollbar-width:none;-webkit-overflow-scrolling:touch;font-size:.92rem;min-width:0;width:100%;max-width:100%}.hd nav::-webkit-scrollbar{display:none}.hd nav a{white-space:nowrap;flex:none}}
@media(max-width:800px){.hero2 img{object-position:34% 30%}}

/* ---- Keuzehulpen v2: BedFinder en Match ---- */
.bfwrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start;margin-top:1.5rem}
.bfmeet{background:linear-gradient(170deg,#fffdf8 0%,#f3ead8 100%);border:1px solid var(--line);border-radius:20px;padding:1.6rem;box-shadow:var(--shadow)}
.bfmeet h2{font-size:1.5rem;margin:0 0 .8rem}
.bfsvg{width:100%;height:auto;display:block;background:#fff8;border-radius:12px;border:1px dashed #c9a87555}
.bfbed{fill:#ece0c8;stroke:#8a6d3b;stroke-width:1.4;transition:all .5s cubic-bezier(.2,.7,.2,1)}
.bfdog{fill:var(--c);transition:all .5s cubic-bezier(.2,.7,.2,1)}
.bfdimw,.bfdimh{stroke:#8a6d3b;stroke-width:1.2;stroke-dasharray:4 3}
.bfmeet .note{margin:.8rem 0 0;min-height:1.5em}
.bfsteps{margin:1.2rem 0 0;padding-left:1.2rem;color:#4a5258;font-size:.95rem}.bfsteps li{margin:.35rem 0}
.bfform{max-width:none;margin:0;padding:1.8rem;display:grid;gap:1.2rem}
.bfform fieldset{margin:0;padding:0;border:0;display:grid;gap:1rem;grid-template-columns:1fr 1fr}
.bfform fieldset legend{font:1.3rem Georgia,serif;margin-bottom:.4rem;display:flex;align-items:center;gap:.6rem}
.bfform label small{font-size:.8rem;color:#6a737a;line-height:1.35}
.bfform input,.bfform select{padding:.8rem .9rem;font-size:1rem}
.stepno{display:inline-grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--c);color:var(--g);font:.9rem system-ui,sans-serif}
.bfprog{display:grid;gap:.4rem}.bfprog p{margin:0}
.bfprog progress{width:100%;max-width:none;height:8px;border-radius:99px}
.bfform button{justify-self:start}
.res .box{animation:qin .5s ease both}
.res .box small{opacity:.85}
@media(max-width:820px){.bfwrap{grid-template-columns:1fr}.bfform fieldset{grid-template-columns:1fr}}
@media(max-width:700px){.bfform{padding:1.2rem}}

/* Match */
.qwrap{margin-top:1.2rem;min-height:320px}
.qwrap progress{margin-bottom:1.6rem}
.qwrap h2{font-size:clamp(1.7rem,3.6vw,2.6rem);margin:.4rem 0 1.4rem;max-width:22ch}
h2[tabindex="-1"]:focus{outline:none}
.qstep .eb{margin:0}
.opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1rem;max-width:860px}
.opt{position:relative;display:flex;align-items:center;gap:1rem;text-align:left;font:inherit;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.3rem 1.4rem;cursor:pointer;box-shadow:var(--shadow);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease}
.opt strong{font:1.25rem/1.25 Georgia,serif;font-weight:400}
.opt:hover{transform:translateY(-3px);border-color:var(--g);box-shadow:0 2px 4px #10141710,0 18px 36px -16px #10141766}
.opt:focus-visible{outline:3px solid var(--g);outline-offset:3px}
.optk{flex:none;display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;border:1px solid #c9a87599;color:#7a6641;font:1rem system-ui,sans-serif;letter-spacing:.04em;transition:background .25s,color .25s}
.opt:hover .optk{background:var(--c);color:var(--g);border-color:var(--c)}
.qres{max-width:860px}
.qres h2{font-size:clamp(1.7rem,3.4vw,2.4rem);margin:.4rem 0 1rem}
.crit{list-style:none;padding:0;margin:0 0 1.6rem;display:grid;gap:.6rem}
.crit li{position:relative;padding:.9rem 1rem .9rem 2.6rem;background:#fff;border-radius:12px;border:1px solid var(--line);color:#3a4248}
.crit li:before{content:"";position:absolute;left:1.1rem;top:1.35rem;width:.55rem;height:.55rem;border-radius:50%;background:var(--g)}
.qprod h3{font:1.4rem Georgia,serif;font-weight:400;margin:1.6rem 0 .8rem}
.minis{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:1rem}
.mini{display:grid;gap:.25rem;padding:1.1rem 1.2rem;background:#fff;border:1px solid var(--line);border-radius:14px;text-decoration:none;box-shadow:var(--shadow);transition:transform .25s,border-color .25s}
.mini:hover{transform:translateY(-3px);border-color:var(--g)}
.mini strong{font:1.15rem/1.3 Georgia,serif;font-weight:400}
.qact{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
@keyframes qin{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.qin{animation:qin .45s ease both}
.qin .opt{animation:qin .5s ease both}
.qin .opt:nth-child(2){animation-delay:.05s}.qin .opt:nth-child(3){animation-delay:.1s}.qin .opt:nth-child(4){animation-delay:.15s}
@media(prefers-reduced-motion:reduce){.qin,.qin .opt,.res .box{animation:none}.opt,.mini,.bfbed,.bfdog{transition:none}.opt:hover,.mini:hover{transform:none}}
.bfprog progress{appearance:none;-webkit-appearance:none;border:0;background:#e8dfcc;overflow:hidden}
.bfprog progress::-webkit-progress-bar{background:#e8dfcc;border-radius:99px}
.bfprog progress::-webkit-progress-value{background:linear-gradient(90deg,#B08A4E,var(--g));border-radius:99px;transition:width .4s ease}
.bfprog progress::-moz-progress-bar{background:var(--g);border-radius:99px}
.bfsvg .bfdog{fill:#3a4248}
.bfform fieldset label{align-content:start}
.qwrap progress{appearance:none;-webkit-appearance:none;border:0;height:6px;background:#e8dfcc;border-radius:99px;overflow:hidden;max-width:520px;width:100%}
.qwrap progress::-webkit-progress-bar{background:#e8dfcc}
.qwrap progress::-webkit-progress-value{background:linear-gradient(90deg,#B08A4E,var(--g));transition:width .4s ease}
.qwrap progress::-moz-progress-bar{background:var(--g)}
.res ul{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.6rem;max-width:60ch}
.res ul li{max-width:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.9rem 1.1rem;box-shadow:var(--shadow);color:#3a4248;line-height:1.5}
#pr{-webkit-appearance:none;appearance:none;background:#e8dfcc;color:var(--g)}
#pr::-webkit-progress-bar{background:#e8dfcc!important}
#pr::-webkit-progress-value{background:linear-gradient(90deg,#B08A4E,var(--g))!important}
#bfp{-webkit-appearance:none;appearance:none;background:#e8dfcc;color:var(--g)}
#bfp::-webkit-progress-bar{background:#e8dfcc!important}
#bfp::-webkit-progress-value{background:linear-gradient(90deg,#B08A4E,var(--g))!important}
#bfp::-moz-progress-bar{background:var(--g)}
