@font-face{font-family:Fraunces;src:url(/fonts/fraunces-variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/fonts/fraunces-variable-italic.woff2)format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Hanken Grotesk;src:url(/fonts/hanken-grotesk-variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--paper:#f6f4ee;--paper-2:#efebe1;--paper-3:#e6dfd1;--card:#fdfbf6;--ink:#172128;--ink-2:#3a464e;--ink-3:#6d777d;--accent:#2c564a;--accent-2:#1e4037;--gold:#a87c3d;--line:#ddd5c6;--line-strong:#c7bdab;--ok:#2e6b4f;--warn:#9a6a2f;--serif:"Fraunces", Georgia, "Songti SC", serif;--sans:"Hanken Grotesk", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--maxw:1340px;--gutter:clamp(1rem, 4vw, 3rem);--radius:10px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}h1,h2,h3,h4{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);margin:0 0 .5em;font-weight:620;line-height:1.12}p{margin:0 0 1em}.wrap{width:100%;max-width:var(--maxw);padding-inline:var(--gutter);margin-inline:auto}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.6rem;font-size:.78rem;font-weight:650;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);width:22px;height:1px}.section-head{max-width:46rem;margin-bottom:clamp(1.6rem,3vw,2.6rem)}.section-head h2{font-size:clamp(1.55rem,3.2vw,2.3rem)}.section-head p{color:var(--ink-2);margin:0;font-size:1.02rem}.site-header{z-index:50;background:color-mix(in srgb, var(--paper) 92%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header .bar{justify-content:space-between;align-items:center;gap:1rem;padding-block:.85rem;display:flex}.mast{align-items:baseline;gap:.7rem;display:flex}.mast .mark{font-family:var(--serif);letter-spacing:.01em;color:var(--ink);font-size:1.28rem;font-weight:750}.mast .mark em{color:var(--accent);font-style:normal}.mast .kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border-left:1px solid var(--line-strong);padding-left:.7rem;font-size:.72rem}.nav-links{align-items:center;gap:clamp(.6rem,2vw,1.4rem);font-size:.94rem;display:flex}.nav-links a{color:var(--ink-2);font-weight:540}.nav-links a:hover{color:var(--accent);text-decoration:none}.nav-links a.active{color:var(--accent);text-underline-offset:4px;text-decoration:underline 1.5px}.lang{position:relative}.lang summary{cursor:pointer;color:var(--ink);border:1px solid var(--line-strong);background:var(--card);user-select:none;border-radius:6px;align-items:center;gap:.35rem;padding:.3rem .5rem;font-size:.86rem;font-weight:650;list-style:none;display:inline-flex}.lang summary::-webkit-details-marker{display:none}.lang summary .arrow{color:var(--ink-3);font-size:.6rem}.lang[open] summary{border-color:var(--accent)}.lang .menu{background:var(--card);border:1px solid var(--line-strong);border-radius:8px;min-width:9.5rem;padding:.3rem;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 30px -18px #17212873}.lang .menu a{color:var(--ink-2);border-radius:5px;padding:.45rem .6rem;font-size:.9rem}.lang .menu a:hover{background:var(--paper-2);text-decoration:none}.lang .menu a.current{color:var(--accent);font-weight:700}.hero{border-bottom:1px solid var(--line);padding-block:clamp(2.5rem,6vw,5rem) clamp(2rem,5vw,4rem)}.hero .grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(2rem,5vw,4.5rem);display:grid}.hero h1{margin:.6rem 0 .9rem;font-size:clamp(2.1rem,5.4vw,3.55rem)}.hero h1 .accent{color:var(--accent);font-style:italic}.hero .lead{color:var(--ink-2);max-width:36rem;font-size:clamp(1.02rem,1.6vw,1.18rem)}.cta-row{flex-wrap:wrap;gap:.8rem;margin-top:1.6rem;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:7px;align-items:center;gap:.5rem;padding:.72rem 1.3rem;font-size:.98rem;font-weight:650;display:inline-flex}.btn:hover{text-decoration:none}.btn.primary{background:var(--accent);color:#fbfaf6}.btn.primary:hover{background:var(--accent-2)}.btn.ghost{color:var(--ink);border-color:var(--line-strong);background:0 0}.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}.hero .figure{position:relative}.hero .figure img{border-radius:var(--radius);border:1px solid var(--line-strong);aspect-ratio:16/10;object-fit:cover;width:100%}.hero .figure:after{content:"";border-radius:var(--radius);pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #1721280a}.stat-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.stat{text-align:center;border-right:1px solid var(--line);padding:1.1rem 1rem}.stat:last-child{border-right:none}.stat .n{font-family:var(--serif);color:var(--ink);font-size:clamp(1.4rem,2.4vw,1.9rem);font-weight:680}.stat .l{color:var(--ink-3);letter-spacing:.04em;font-size:.8rem}.section{padding-block:clamp(2.6rem,6vw,4.6rem)}.section.tint{background:var(--paper-2);border-block:1px solid var(--line)}.grid-products{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1.2rem;display:grid}.product{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;overflow:hidden}.product:hover{border-color:var(--line-strong);transform:translateY(-3px);box-shadow:0 18px 40px -30px #17212880}.product .ph{background:var(--paper-2);aspect-ratio:1/.82;border-bottom:1px solid var(--line);place-items:center;padding:1.2rem;display:grid;position:relative}.product .ph img{object-fit:contain;mix-blend-mode:multiply;width:auto;max-height:100%}.product .badge{background:var(--accent);color:#f7f5ee;letter-spacing:.05em;text-transform:uppercase;border-radius:4px;padding:.28rem .55rem;font-size:.7rem;font-weight:700;position:absolute;top:.7rem;left:.7rem}.product .body{flex-direction:column;flex:1;gap:.55rem;padding:1.1rem 1.15rem 1.2rem;display:flex}.product .brand{letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);font-size:.74rem}.product .name{font-family:var(--serif);color:var(--ink);font-size:1.18rem;font-weight:650;line-height:1.2}.product .sum{color:var(--ink-2);flex:1;font-size:.92rem}.product .row{border-top:1px dashed var(--line-strong);justify-content:space-between;align-items:center;gap:.8rem;margin-top:.2rem;padding-top:.7rem;display:flex}.price{color:var(--ink-3);font-size:.82rem}.price b{color:var(--ink);font-size:1.05rem}.score-pill{align-items:baseline;gap:.25rem;display:inline-flex}.score-pill .v{font-family:var(--serif);color:var(--accent);font-size:1.4rem;font-weight:720}.score-pill .of{color:var(--ink-3);font-size:.78rem}.product .off{color:var(--accent);font-size:.86rem;font-weight:620}.product .off:hover{color:var(--accent-2)}.table-scroll{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow-x:auto}table.compare{border-collapse:collapse;width:100%;min-width:820px;font-size:.9rem}table.compare th,table.compare td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.85rem 1rem}table.compare thead th{background:var(--paper-2);font-family:var(--serif);font-size:.98rem;font-weight:650;position:sticky;top:0}table.compare thead th .brand{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.15rem;font-size:.68rem;font-weight:650;display:block}table.compare tbody th{color:var(--ink-2);white-space:nowrap;background:var(--card);font-weight:650;position:sticky;left:0}table.compare tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--paper-2) 55%, transparent)}table.compare .score{color:var(--accent);font-weight:700}table.compare .note{color:var(--ink-3);font-size:.8rem}table.compare .price{color:var(--ink);font-weight:650}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1.2rem;display:grid}.step{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem 1.25rem;position:relative}.step .no{font-family:var(--serif);color:var(--gold);letter-spacing:.06em;font-size:1rem;font-weight:700}.step h3{margin:.4rem 0 .5rem;font-size:1.12rem}.step p{color:var(--ink-2);margin:0;font-size:.93rem}.proscons{grid-template-columns:1fr 1fr;gap:1rem;margin-top:.2rem;display:grid}.proscons .box{border-radius:8px;padding:.9rem 1rem;font-size:.9rem}.proscons .pros{background:color-mix(in srgb, var(--ok) 9%, var(--card));border:1px solid color-mix(in srgb, var(--ok) 28%, var(--line))}.proscons .cons{background:color-mix(in srgb, var(--warn) 8%, var(--card));border:1px solid color-mix(in srgb, var(--warn) 26%, var(--line))}.proscons .h{letter-spacing:.06em;text-transform:uppercase;margin-bottom:.45rem;font-size:.74rem;font-weight:700}.proscons .pros .h{color:var(--ok)}.proscons .cons .h{color:var(--warn)}.proscons ul{margin:0;padding-left:1.05rem}.proscons li{margin-bottom:.3rem}.proscons li:last-child{margin-bottom:0}.faq{max-width:52rem}.faq details{border:1px solid var(--line);background:var(--card);border-radius:8px;margin-bottom:.6rem}.faq summary{cursor:pointer;font-weight:650;font-family:var(--serif);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.15rem;font-size:1.04rem;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary .pm{font-family:var(--sans);color:var(--accent);font-size:1.1rem;font-weight:700}.faq details[open] summary .pm{transform:rotate(45deg)}.faq .a{color:var(--ink-2);padding:0 1.15rem 1.1rem;font-size:.96rem}.faq .a p{margin:0 0 .6rem}.faq .a p:last-child{margin:0}.article{max-width:46rem}.article h2{margin-top:2.2rem;font-size:clamp(1.4rem,2.6vw,1.9rem)}.article h2:first-child{margin-top:0}.article p{color:var(--ink-2)}.article .lead{color:var(--ink);font-size:1.12rem}.article ul{color:var(--ink-2);padding-left:1.2rem}.article li{margin-bottom:.4rem}.cta-band{background:var(--accent-2);color:#eef0e8;border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:clamp(1.8rem,4vw,3rem);display:flex}.cta-band h2{color:#fbfaf5;margin:0 0 .3rem;font-size:clamp(1.4rem,3vw,2rem)}.cta-band p{color:#cdd6cc;margin:0}.cta-band .btn.primary{color:var(--accent-2);background:#f6f4ee}.cta-band .btn.primary:hover{background:#fff}.site-footer{border-top:1px solid var(--line);background:var(--paper-2);padding-block:2.6rem}.site-footer .grid{grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem;display:grid}.site-footer .mast .mark{font-size:1.15rem}.site-footer p{color:var(--ink-3);max-width:26rem;font-size:.88rem}.site-footer h4{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:.82rem;font-family:var(--sans);margin-bottom:.7rem;font-weight:700}.site-footer ul{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.site-footer ul a{color:var(--ink-2);font-size:.92rem}.site-footer ul a:hover{color:var(--accent)}.site-footer .fine{border-top:1px solid var(--line);color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:.6rem;margin-top:2rem;padding-top:1.2rem;font-size:.8rem;display:flex}@media (width<=900px){.hero .grid{grid-template-columns:1fr}.site-footer .grid{grid-template-columns:1fr 1fr}.proscons{grid-template-columns:1fr}}@media (width<=640px){.site-header .bar{flex-wrap:wrap}.nav-links{border-top:1px solid var(--line);order:3;justify-content:space-between;gap:.5rem;width:100%;padding-top:.6rem;font-size:.9rem}.stat-panel{grid-template-columns:1fr}.stat{border-right:none;border-bottom:1px solid var(--line)}.stat:last-child{border-bottom:none}.site-footer .grid{grid-template-columns:1fr}.mast .kicker{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;transform:none!important}}
