:root{--ink:#173a3f;--ink-2:#244e52;--paper:#f6f2e9;--white:#fff;--mint:#dcefe7;--mint-2:#527b6c;--orange:#9e351c;--orange-dark:#8f2f19;--sand:#eee4d4;--line:#d9d5ca;--muted:#4d5b5e;--shadow:0 18px 50px rgba(23,58,63,.1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Avenir Next,Avenir,Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.65}
img{display:block;max-width:100%}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
button,input{font:inherit}
.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.reading{width:min(820px,calc(100% - 40px));margin-inline:auto}
.skip{position:fixed;left:12px;top:10px;z-index:1000;transform:translateY(-150%);padding:10px 14px;background:var(--white);border-radius:8px;color:var(--ink)}
.skip:focus{transform:none}
.truth-strip{background:var(--ink);color:var(--white);font-size:.77rem;letter-spacing:.02em}
.truth-strip .shell{min-height:36px;display:flex;align-items:center;gap:22px}
.truth-strip span{margin-right:auto;color:#b9decf;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.truth-strip a{text-decoration:none}
.truth-strip a:hover,.truth-strip a:focus-visible{text-decoration:underline}
.site-header{position:sticky;top:0;z-index:50;background:rgba(246,242,233,.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(23,58,63,.12)}
.header-row{min-height:82px;display:flex;align-items:center;gap:32px}
.brand{display:block;flex:0 0 auto}
.brand img{width:224px;height:auto}
.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:22px;font-size:.83rem;font-weight:750}
.desktop-nav a{text-decoration:none;line-height:1.25}
.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--orange-dark)}
.mobile-menu{display:none;margin-left:auto;position:relative}
.mobile-menu summary{min-height:48px;display:flex;align-items:center;gap:12px;padding:0 14px;border:1px solid var(--ink);border-radius:12px;font-weight:800;cursor:pointer;list-style:none}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu summary span{font-size:1.35rem}
.mobile-menu[open] summary span{transform:rotate(45deg)}
.mobile-menu nav{position:absolute;right:0;top:58px;width:min(330px,calc(100vw - 40px));display:grid;background:var(--white);padding:12px;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.mobile-menu nav a{min-height:48px;display:flex;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line);text-decoration:none;font-weight:700}
.mobile-menu nav a:last-child{border-bottom:0}
.hero{padding:36px 0 28px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(460px,1.12fr);align-items:center;gap:48px}
.hero h1,.article-hero h1,.not-found h1{max-width:15ch;margin:12px 0 18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,5.2vw,4.8rem);line-height:.96;letter-spacing:-.05em;font-weight:600}
.hero .lead,.article-hero .lead{max-width:650px;margin:0;color:#435c60;font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.55}
.hero figure{position:relative;margin:0;border-radius:32px;overflow:hidden;box-shadow:var(--shadow);background:var(--mint)}
.hero figure:before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.7);border-radius:20px;z-index:1;pointer-events:none}
.hero figure img{width:100%;height:470px;object-fit:cover;object-position:center}
.hero figcaption{position:absolute;left:32px;bottom:26px;z-index:2;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.9);font-size:.76rem;font-weight:800}
.eyebrow{margin:0 0 8px;color:var(--orange-dark);font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.16em}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:28px}
.button,.deal-cta,.shop-path>a{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:12px 21px;border:0;border-radius:999px;background:var(--ink);color:var(--white);font-weight:850;text-decoration:none;cursor:pointer}
.button:hover,.button:focus-visible,.deal-cta:hover,.deal-cta:focus-visible,.shop-path>a:hover,.shop-path>a:focus-visible{background:var(--orange-dark);outline:3px solid rgba(233,102,63,.2);outline-offset:3px}
.text-link{font-weight:850;color:var(--ink)}
.article-hero{padding:54px 0 42px;background:linear-gradient(135deg,var(--mint),#f0f6ef 58%,var(--sand))}
.article-hero h1{max-width:22ch;font-size:clamp(2.7rem,4.7vw,4.45rem);line-height:1}
.article-hero .hero-actions{margin-top:24px}
.answer-bar{background:var(--ink);color:var(--white)}
.answer-bar .shell{display:grid;grid-template-columns:150px 1fr;gap:28px;align-items:start;padding-block:24px}
.answer-bar span{color:#b9decf;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.15em}
.answer-bar p{max-width:900px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.23rem;line-height:1.5}
.section{padding:74px 0}
.section-heading{max-width:760px;margin-bottom:32px}
.section-heading h2,.editorial h2,.field-note h2,.calculator-section h2,.faq-layout h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.6rem);line-height:1.04;letter-spacing:-.035em;font-weight:600}
.section-heading.split{max-width:none;display:grid;grid-template-columns:1fr minmax(280px,.72fr);gap:60px;align-items:end}
.section-heading.split>p{margin:0;color:var(--muted)}
.universe-section{padding-top:90px}
.universe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.universe-grid>a{min-height:290px;display:flex;flex-direction:column;padding:26px;border:1px solid var(--line);border-radius:24px;background:var(--white);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
.universe-grid>a:nth-child(even){background:var(--mint)}
.universe-grid>a:hover,.universe-grid>a:focus-visible{transform:translateY(-4px);box-shadow:var(--shadow);outline:none}
.universe-grid span{font-family:Georgia,Times New Roman,serif;color:var(--orange);font-size:2rem}
.universe-grid h3{margin:42px 0 10px;font-size:1.35rem;line-height:1.2}
.universe-grid p{margin:0 0 22px;color:var(--muted)}
.universe-grid strong{margin-top:auto;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.editorial{position:relative}
.editorial.tinted{background:var(--white)}
.editorial .reading,.field-note .reading{position:relative}
.section-number{position:absolute;right:calc(100% + 38px);top:-13px;color:var(--mint-2);font-family:Georgia,Times New Roman,serif;font-size:3.6rem;line-height:1}
.editorial h2,.field-note h2{margin-bottom:26px}
.editorial p,.field-note p{font-size:1.06rem;color:#354f53}
.editorial p+p,.field-note p+p{margin-top:20px}
.field-note{background:var(--mint)}
.field-note .reading{padding-left:26px;border-left:5px solid var(--orange)}
.calculator-section{background:var(--white)}
.calculator-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:start}
.calculator-grid>div>p:last-child{color:var(--muted)}
.calculator{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:24px;border-radius:26px;background:var(--ink);color:var(--white);box-shadow:var(--shadow)}
.calculator label{display:grid;gap:7px;font-size:.75rem;font-weight:800}
.calculator input{width:100%;min-height:48px;padding:10px 12px;border:1px solid rgba(255,255,255,.25);border-radius:10px;background:#fff;color:var(--ink)}
.calculator button{grid-column:1/-1;min-height:48px;border:0;border-radius:12px;background:var(--orange);color:var(--white);font-weight:900;cursor:pointer}
.calculator-result{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:5px 20px;margin-top:6px;padding:16px;border-radius:14px;background:rgba(255,255,255,.1)}
.calculator-result span{color:var(--mint-2);font-size:.75rem}
.deals{background:#edf3ee}
.deal-filters{position:sticky;top:92px;z-index:20;display:flex;gap:8px;overflow:auto;margin:0 0 24px;padding:10px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px)}
.deal-filters button{min-height:42px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--ink);font-weight:850;cursor:pointer;white-space:nowrap}
.deal-filters button.active,.deal-filters button:hover,.deal-filters button:focus-visible{border-color:var(--ink);background:var(--ink);color:var(--white)}
.deal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.deal-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--white);box-shadow:0 5px 22px rgba(23,58,63,.05)}
.deal-card[hidden]{display:none}
.deal-media{position:relative;height:260px;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(180deg,#fff,#f7f7f3);overflow:hidden}
.deal-media img{width:100%;height:100%;object-fit:contain;transition:transform .25s ease}
.deal-media:hover img{transform:scale(1.035)}
.remise-badge{position:absolute;z-index:2;top:14px;left:14px;display:inline-flex;min-width:62px;height:62px;align-items:center;justify-content:center;border-radius:50%;background:var(--orange);color:var(--white);font-family:Georgia,Times New Roman,serif;font-size:1.05rem;font-weight:900;box-shadow:0 7px 20px rgba(182,62,34,.25)}
.deal-copy{display:flex;flex:1;flex-direction:column;padding:20px}
.deal-meta{display:flex;flex-wrap:wrap;gap:6px 12px;margin:0 0 10px;color:var(--orange-dark);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.deal-meta span+span{color:var(--muted)}
.deal-copy h3{margin:0 0 12px;font-size:1.02rem;line-height:1.35}
.deal-copy h3 a{text-decoration:none}
.deal-copy h3 a:hover,.deal-copy h3 a:focus-visible{text-decoration:underline}
.rating{display:flex;flex-wrap:wrap;gap:5px;margin:auto 0 10px;color:var(--muted);font-size:.73rem}
.rating>span:first-child{color:#c17426;letter-spacing:-.08em}
.rating strong{color:var(--ink)}
.rating.no-rating{font-style:italic}
.remise-scale{height:5px;overflow:hidden;border-radius:999px;background:#e4e5df}
.remise-scale span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),#f2ae5d)}
.remise-note{margin:7px 0 14px;color:var(--muted);font-size:.68rem}
.deal-cta{min-height:44px;width:100%;justify-content:space-between;padding:9px 15px;font-size:.78rem}
.reviews-section{background:var(--ink);color:var(--white)}
.reviews-section .section-heading>p,.reviews-section .eyebrow{color:#ffd8cc}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.reviews-grid .review-card{min-width:0;display:flex;flex-direction:column;padding:24px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(255,255,255,.06)}
.stars{margin:0;color:#f2b05d;letter-spacing:.05em}
.reviews-grid blockquote{margin:18px 0 24px;font-family:Georgia,Times New Roman,serif;font-size:1.05rem;line-height:1.55}
.reviews-grid footer{display:grid;gap:2px;margin-top:auto;color:#bed0cf;font-size:.72rem}
.reviews-grid footer strong{color:var(--white)}
.faq-section{background:var(--white)}
.faq-layout{width:min(1080px,calc(100% - 40px));display:grid;grid-template-columns:.63fr 1.37fr;gap:70px;align-items:start}
.faq-list details{border-top:1px solid var(--line)}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{min-height:66px;display:flex;align-items:center;padding:12px 40px 12px 0;font-weight:850;cursor:pointer;list-style:none;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;right:8px;color:var(--orange);font-size:1.5rem}
.faq-list details[open] summary:after{content:"−"}
.faq-list details p{margin:0;padding:0 40px 22px 0;color:var(--muted)}
.shop-path{background:var(--orange);color:var(--white)}
.shop-path .shell{min-height:150px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.shop-path .eyebrow{color:#fff}
.shop-path div>div{display:grid;gap:3px}
.shop-path strong{font-family:Georgia,Times New Roman,serif;font-size:1.65rem}
.shop-path span{color:#fff}
.shop-path>a{background:var(--white);color:var(--ink)}
.related{padding:50px 0;background:var(--sand)}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.related-grid a{display:grid;gap:8px;min-height:140px;padding:20px;border:1px solid rgba(23,58,63,.16);border-radius:18px;background:rgba(255,255,255,.6);text-decoration:none}
.related-grid span{color:var(--orange-dark);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.related-grid strong{line-height:1.35}
.site-footer{padding:64px 0 24px;background:#102d31;color:var(--white)}
.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:38px}
.footer-grid h2{margin:0 0 14px;color:#b9decf;font-size:.77rem;text-transform:uppercase;letter-spacing:.08em}
.footer-grid a{display:block;margin:8px 0;color:#d5e1df;font-size:.82rem;text-decoration:none}
.footer-grid a:hover,.footer-grid a:focus-visible{text-decoration:underline}
.footer-grid p{margin:0;color:#bfcfcd;font-size:.86rem}
.footer-kicker{margin-bottom:12px!important;color:var(--white)!important;font-family:Georgia,Times New Roman,serif;font-size:1.55rem!important;line-height:1.2}
.commercial-data-notice{margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);color:#bfcfcd;font-size:.76rem}
.footer-last{display:flex;justify-content:space-between;gap:20px;margin-top:20px;color:#8eaaa7;font-size:.7rem}
.legal h2{margin:42px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:2rem}
.legal address{font-style:normal}
.not-found{min-height:65vh;display:flex;align-items:center;padding:80px 0}
.not-found h1{max-width:15ch}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
@media(max-width:1080px){.desktop-nav{display:none}.mobile-menu{display:block}.hero-grid{grid-template-columns:1fr 1fr;gap:28px}.hero figure img{height:460px}.deal-grid{grid-template-columns:repeat(3,1fr)}.universe-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.section-number{position:static;display:block;margin-bottom:12px}.related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.shell,.reading,.faq-layout{width:min(100% - 28px,1180px)}.truth-strip .shell{min-height:38px}.truth-strip a{display:none}.header-row{min-height:70px}.brand img{width:185px}.hero{padding-top:20px}.hero-grid{display:flex;flex-direction:column-reverse;gap:24px}.hero figure{width:100%;border-radius:20px}.hero figure img{height:300px}.hero figure:before{inset:12px}.hero figcaption{left:20px;bottom:18px}.hero h1{font-size:clamp(2.65rem,13vw,4.1rem)}.article-hero h1{font-size:clamp(2.45rem,11vw,3.4rem)}.article-hero{padding:40px 0 34px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button,.hero-actions .text-link{width:100%;text-align:center}.answer-bar .shell{grid-template-columns:1fr;gap:8px}.answer-bar p{font-size:1.08rem}.section{padding:56px 0}.section-heading.split{grid-template-columns:1fr;gap:16px}.universe-grid{grid-template-columns:1fr}.universe-grid>a{min-height:220px}.universe-grid h3{margin-top:26px}.calculator-grid{grid-template-columns:1fr;gap:24px}.calculator{grid-template-columns:1fr}.calculator button,.calculator-result{grid-column:auto}.deal-filters{top:79px}.deal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.deal-media{height:210px;padding:13px}.deal-copy{padding:15px}.remise-badge{min-width:52px;height:52px}.reviews-grid{grid-template-columns:1fr}.faq-layout{grid-template-columns:1fr;gap:28px}.shop-path .shell{grid-template-columns:1fr;padding-block:28px}.shop-path>a{width:100%}.related-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-last{flex-direction:column}.commercial-data-notice{line-height:1.6}}
@media(max-width:430px){.deal-grid{grid-template-columns:1fr}.deal-media{height:280px}.mobile-menu summary{padding-inline:11px;font-size:.78rem}.brand img{width:160px}.hero figure img{height:240px}.section-heading h2,.editorial h2,.field-note h2,.calculator-section h2,.faq-layout h2{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
