/* Fluid generator (Smooth scale between breakpoints) - Generate with Finsweet Chrome extension */
html { font-size: 1rem }
/*html { font-size: calc(-0.00222717149220486rem + 1.1135857461024499vw) }*/
@media screen and (max-width:1440px) { html { font-size: calc(-0.00222717149220486rem + 1.1135857461024499vw); } }
@media screen and (max-width:991px) { html { font-size: 1rem; } }
@media screen and (max-width:320px) { html { font-size: calc(-0.003134796238244514rem + 5.015673981191222vw); } }
/* Desktop sizes scale with the fluid root font-size, mobile sizes stay fixed */
:root{--section-space:5.5rem;--card-pad:4.5rem;--footer-pad:3.5rem;--form-pad:2.5rem;--fs-hero:5.5rem;--fs-h2:4.875rem;--fs-h2-reserver:4.875rem;--fs-h2-temoignages:4rem;--fs-quote:2.375rem;--fs-footer-tagline:2.5rem;--fs-wordmark:12.875rem;--badge-size:13.75rem;--badge-top:-4.125rem;--badge-right:5.625rem;--fs-hero-eyebrow:0.7812rem}
@media (max-width:990px){:root{--section-space:3.5rem;--card-pad:2rem;--footer-pad:2rem;--form-pad:1.5rem;--fs-hero:3rem;--fs-h2:2.625rem;--fs-h2-reserver:2.75rem;--fs-h2-temoignages:2.5rem;--fs-quote:1.75rem;--fs-footer-tagline:1.75rem;--fs-wordmark:2.5rem;--badge-size:4.5rem;--badge-top:-2.5rem;--badge-right:1.5rem;--fs-hero-eyebrow:0.625rem}}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
[id]{scroll-margin-top:6.875rem}
header{position:sticky;top:0;z-index:100;background:#F9F6F0}
body{margin:0;background:#F9F6F0;position:relative}
*{box-sizing:border-box}
a{color:#1F1E1C}a:hover{color:#B83F1C}
.nav-link,.btn-accent,.btn-yellow,.btn-dark,.btn-outline,.btn-light,.btn-toggle,.btn-link,.btn-accent>span,.btn-dark>span{transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.nav-link:hover{background:#EFE8D8!important;color:#1F1E1C!important}
.btn-accent:hover{background:#F26F4A!important;color:#1F1E1C!important}
.btn-yellow:hover{background:#F7DC7E!important;color:#1F1E1C!important}
.btn-dark:hover{background:#EC5C34!important;color:#1F1E1C!important}
.btn-dark:hover>span{background:#1F1E1C!important;color:#EC5C34!important}
.btn-outline:hover{background:#1F1E1C!important;color:#F6F1E7!important}
.btn-light:hover{background:#F6F1E7!important;border-color:#F6F1E7!important;color:#1F1E1C!important}
.btn-toggle[aria-pressed="false"]:hover{background:#EFE8D8!important}
.btn-toggle[aria-pressed="true"]:hover{background:#33312D!important}
.btn-link:hover{color:#B83F1C!important;border-color:#B83F1C!important}
.temoignage-layer{transition:opacity .45s ease .15s,transform .45s cubic-bezier(.2,.7,.2,1) .15s}
.temoignage-layer[aria-hidden="true"]{opacity:0;transform:translateY(.75rem);visibility:hidden;transition:opacity .2s ease,transform 0s .2s,visibility 0s .2s}
@media (prefers-reduced-motion:reduce){.nav-link,.btn-accent,.btn-yellow,.btn-dark,.btn-outline,.btn-light,.btn-toggle,.btn-link,.btn-accent>span,.btn-dark>span,.temoignage-layer,.temoignage-layer[aria-hidden="true"]{transition:none}}
input,textarea,select,button{font:inherit;color:inherit}
:focus-visible{outline:0.1875rem solid #EC5C34;outline-offset:0.1875rem}
.main-nav{display:flex;flex-wrap:wrap;gap:0.25rem}
.menu-toggle{display:none}
.menu-cta{display:none!important}
.menu-toggle{align-items:center;justify-content:center;width:3rem;height:3rem;padding:0;border-radius:62.4375rem;background:transparent;border:0.0938rem solid #1F1E1C;cursor:pointer}
.menu-toggle path{transform-box:fill-box;transform-origin:center;transition:transform .3s cubic-bezier(.65,0,.35,1),opacity .2s ease}
.menu-toggle[aria-expanded="true"] .line-top{transform:translateY(0.3125rem) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .line-mid{opacity:0}
.menu-toggle[aria-expanded="true"] .line-bottom{transform:translateY(-0.3125rem) rotate(-45deg)}
@media (max-width:990px){
.header-bar{flex-wrap:nowrap!important}
.menu-toggle{display:inline-flex;flex-shrink:0}
.header-cta{margin-left:auto}
.main-nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;flex-wrap:nowrap;gap:0.25rem;padding:0.75rem 1.5rem 1.5rem;background:#F9F6F0;border-bottom:0.0938rem solid #1F1E1C;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .35s cubic-bezier(.65,0,.35,1),visibility 0s .35s}
.main-nav.is-open{visibility:visible;clip-path:inset(0 0 -0.625rem 0);transition:clip-path .4s cubic-bezier(.65,0,.35,1),visibility 0s}
.main-nav>*{opacity:0;transform:translateY(-0.5rem);transition:opacity .2s ease,transform .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}
.main-nav.is-open>*{opacity:1;transform:none;transition-duration:.35s,.35s,.2s,.2s,.2s}
.main-nav.is-open>:nth-child(1){transition-delay:.08s,.08s,0s,0s,0s}
.main-nav.is-open>:nth-child(2){transition-delay:.12s,.12s,0s,0s,0s}
.main-nav.is-open>:nth-child(3){transition-delay:.16s,.16s,0s,0s,0s}
.main-nav.is-open>:nth-child(4){transition-delay:.2s,.2s,0s,0s,0s}
.main-nav.is-open>:nth-child(5){transition-delay:.24s,.24s,0s,0s,0s}
.main-nav.is-open>:nth-child(6){transition-delay:.28s,.28s,0s,0s,0s}
.main-nav.is-open>:nth-child(7){transition-delay:.32s,.32s,0s,0s,0s}
.main-nav .nav-link{padding:0.875rem 1rem!important;font-size:1.125rem!important}
.stack-mobile{flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;grid-template-columns:1fr!important}
.stack-mobile>*{flex:0 0 auto!important;max-width:none!important}
.bleed{margin-inline:-1.5rem;border-radius:0!important}
.hero{margin-top:0!important}
.page{padding-bottom:0!important}
}
@media (max-width:600px){
.header-cta{display:none!important}
.menu-cta{display:inline-flex!important;justify-content:center;margin-top:0.75rem}
}
@media (prefers-reduced-motion:reduce){.menu-toggle path,.main-nav,.main-nav.is-open,.main-nav>*,.main-nav.is-open>*{transition:none!important}}
body::after{content:"";position:absolute;inset:0;background:url(./assets/grain.png) 0 0/208px 256px;mix-blend-mode:overlay;opacity:.12;pointer-events:none;z-index:9999}
.legal-content h2{margin:0 0 1.25rem;font-size:1.75rem;font-weight:500;letter-spacing:-0.03em;line-height:1.1}
.legal-content p{margin:0 0 1rem}
.legal-content ul{margin:0 0 1rem;padding-left:1.25rem;display:flex;flex-direction:column;gap:0.75rem}
.legal-content dl{margin:0;display:flex;flex-direction:column;border-top:0.0625rem solid #D9D1C1}
.legal-content dl>div{display:grid;grid-template-columns:14rem minmax(0,1fr);gap:0.25rem 1.5rem;padding:0.875rem 0;border-bottom:0.0625rem solid #D9D1C1}
.legal-content dt{font-weight:600}
.legal-content dd{margin:0}
.legal-content article>:last-child{margin-bottom:0}
@media (max-width:990px){.legal-toc{position:static!important}.legal-content dl>div{grid-template-columns:1fr}}
.consent{position:fixed;left:1.5rem;bottom:1.5rem;z-index:200;width:min(26rem,calc(100% - 3rem));display:flex;flex-direction:column;gap:0.75rem;padding:1.5rem;border-radius:1.75rem;border:0.0938rem solid #1F1E1C;background:#FFFFFF;color:#1F1E1C;box-shadow:0.5rem 0.5rem 0 #1F1E1C;font-family:'Inter Tight','Helvetica Neue',Arial,sans-serif;font-size:0.9375rem;line-height:1.5;transform-origin:0 100%}
/* Slides up with a slight tilt, then the offset shadow "stamps" in and the content follows */
.consent.is-visible{animation:consent-in .7s cubic-bezier(.34,1.4,.64,1) both,consent-shadow .35s ease-out .45s both}
.consent.is-visible>*{animation:consent-item .45s cubic-bezier(.2,.7,.2,1) both}
.consent.is-visible>:nth-child(1){animation-delay:.25s}
.consent.is-visible>:nth-child(2){animation-delay:.32s}
.consent.is-visible>:nth-child(3){animation-delay:.39s}
@keyframes consent-in{from{opacity:0;transform:translateY(calc(100% + 2rem)) rotate(-4deg)}40%{opacity:1}to{opacity:1;transform:none}}
@keyframes consent-shadow{from{box-shadow:0 0 0 #1F1E1C}to{box-shadow:0.5rem 0.5rem 0 #1F1E1C}}
@keyframes consent-item{from{opacity:0;transform:translateY(0.5rem)}to{opacity:1;transform:none}}
.consent-title{margin:0;font-family:'Geist Mono',ui-monospace,Menlo,monospace;font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;color:#5E5A52}
.consent-text{margin:0}
.consent-text a{text-underline-offset:0.1875rem}
.consent-actions{display:flex;gap:0.625rem;margin-top:0.25rem}
.consent-actions button{flex:1;min-height:3rem;padding:0 1.125rem;border-radius:62.4375rem;border:0.0938rem solid #1F1E1C;font-size:0.9375rem;font-weight:600;cursor:pointer}
.consent-actions .btn-outline{background:#FFFFFF}
.consent-actions .btn-yellow{background:#F2CD52}
@media (max-width:600px){.consent{left:1rem;bottom:1rem;width:calc(100% - 2rem)}}
@media (prefers-reduced-motion:reduce){.consent.is-visible,.consent.is-visible>*{animation:consent-fade .3s ease both}}
@keyframes consent-fade{from{opacity:0}to{opacity:1}}
