@import "https://fonts.googleapis.com/css2?family=Cossette+Texte:ital,wght@0,400;0,700;1,400;1,700&display=swap";@import "https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&display=swap";:root{--bg-primary:#fcfaf8;--bg-secondary:#f3f0ea;--text-primary:#171515;--text-secondary:#35302f;--accent-red:#c82a31;--border-subtle:#e6e0d9;--border-strong:#a69e9c;--font-family-display:"Inter", sans-serif;--font-family-body:"EB Garamond", serif;--font-family-label:"Public Sans", sans-serif;--font-family-header-footer:"Cossette Texte", serif;--font-size-display:72px;--font-weight-display:800;--line-height-display:1;--letter-spacing-display:-.04em;--font-size-headline-lg:42px;--font-weight-headline-lg:700;--line-height-headline-lg:1.1;--letter-spacing-headline-lg:-.02em;--font-size-headline-md:28px;--font-weight-headline-md:700;--line-height-headline-md:1.2;--font-size-body-lg:22px;--font-weight-body-lg:400;--line-height-body-lg:1.6;--font-size-body-md:19px;--font-weight-body-md:400;--line-height-body-md:1.6;--font-size-label:11px;--font-weight-label:500;--line-height-label:1.2;--letter-spacing-label:.2em;--font-size-footer:10px;--font-weight-footer:400;--line-height-footer:1;--letter-spacing-footer:.15em;--section-padding:120px;--container-max:1440px;--gutter:40px;--stack-lg:48px;--stack-md:24px;--stack-sm:8px;--text-width-max:540px;--radius-lg:24px;--radius-md:12px}*{box-sizing:border-box;border-radius:0;margin:0;padding:0}html{scroll-behavior:smooth}::selection{background-color:var(--accent-red);color:#fff}body{font-family:var(--font-family-body);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,.display{font-family:var(--font-family-display);font-size:var(--font-size-display);font-weight:var(--font-weight-display);line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-display)}h2,.headline-lg{font-family:var(--font-family-display);font-size:var(--font-size-headline-lg);font-weight:var(--font-weight-headline-lg);line-height:var(--line-height-headline-lg);letter-spacing:var(--letter-spacing-headline-lg)}h3,.headline-md{font-family:var(--font-family-display);font-size:var(--font-size-headline-md);font-weight:var(--font-weight-headline-md);line-height:var(--line-height-headline-md)}p,.body-lg{font-size:var(--font-size-body-lg);font-weight:var(--font-weight-body-lg);line-height:var(--line-height-body-lg);max-width:var(--text-width-max)}p.body-md{font-size:var(--font-size-body-md);font-weight:var(--font-weight-body-md);line-height:var(--line-height-body-md)}.label-caps{font-family:var(--font-family-label);font-size:var(--font-size-label);font-weight:var(--font-weight-label);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label);text-transform:uppercase}.footer-caps{font-family:var(--font-family-header-footer);font-size:var(--font-size-footer);font-weight:var(--font-weight-footer);line-height:var(--line-height-footer);letter-spacing:var(--letter-spacing-footer);text-transform:uppercase}nav,footer,nav .label-caps{font-family:var(--font-family-header-footer)}.container{max-width:var(--container-max);padding:0 var(--gutter);margin:0 auto}.split-layout{gap:var(--gutter);grid-template-columns:5fr 7fr;align-items:start;display:grid}.glass-panel{-webkit-backdrop-filter:blur(24px)saturate(180%);padding:var(--gutter);border-radius:var(--radius-lg);background:#ffffff59;border:1px solid #fff9;overflow:hidden;box-shadow:0 8px 32px #0000000a}.split-layout__anchor{top:var(--section-padding);position:sticky}.split-layout__cascade{gap:var(--section-padding);flex-direction:column;display:flex}@media (width<=1024px){.split-layout{grid-template-columns:1fr}.split-layout__anchor{margin-bottom:var(--section-padding);position:static}}.mt-section{margin-top:var(--section-padding)}.mb-section{margin-bottom:var(--section-padding)}.py-section{padding-top:calc(var(--section-padding) * .5);padding-bottom:calc(var(--section-padding) * .5)}.section-divider{background-color:#0000;border:0;border-top:1rem outset #fff;width:8vw;margin-left:calc(50% - 50vw)}.mt-stack-lg{margin-top:var(--stack-lg)}.mb-stack-lg{margin-bottom:var(--stack-lg)}.mt-stack-md{margin-top:var(--stack-md)}.mb-stack-md{margin-bottom:var(--stack-md)}.mt-stack-sm{margin-top:var(--stack-sm)}.mb-stack-sm{margin-bottom:var(--stack-sm)}.text-accent{color:var(--accent-red)}.split-layout__cascade--masonry>*{will-change:transform;transition:transform .5s cubic-bezier(.16,1,.3,1),filter .5s}.split-layout__cascade--masonry>:hover,.split-layout__cascade--masonry>.reveal.is-visible:hover{z-index:10;transition:transform .4s cubic-bezier(.16,1,.3,1),filter .4s;position:relative;transform:translateY(-8px)scale(1.02)}.nav-link{position:relative;color:var(--text-primary)!important;text-decoration:none!important}.nav-link:after{content:"";background-color:var(--text-primary);transform-origin:100% 100%;width:100%;height:1px;transition:transform .3s cubic-bezier(.65,0,.35,1);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.nav-link:hover:after{transform-origin:0 100%;transform:scaleX(1)}.reveal{opacity:0;will-change:opacity, transform;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.split-layout__cascade--masonry>.reveal:nth-child(2n){transition-delay:.1s}@keyframes topo-drift{0%{transform:translate(0)translateY(0)scale(1)}to{transform:translate(-2%)translateY(-1%)scale(1.02)}}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:100;opacity:0;pointer-events:none;background-color:#17151566;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;left:0}.modal-overlay.is-open{opacity:1;pointer-events:auto}.modal-container{width:90%;max-width:600px;max-height:90vh;transition:transform .4s cubic-bezier(.16,1,.3,1);position:relative;overflow-y:auto;transform:translateY(20px)}.modal-container::-webkit-scrollbar{width:6px}.modal-container::-webkit-scrollbar-track{background:0 0}.modal-container::-webkit-scrollbar-thumb{background-color:var(--border-strong)}.modal-overlay.is-open .modal-container{transform:translateY(0)}.modal-close{cursor:pointer;color:var(--text-primary);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;transition:transform .3s;display:flex;position:absolute;top:24px;right:24px}.modal-close:hover{transform:scale(1.1)}.contact-form{flex-direction:column;gap:24px;margin-top:32px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-label{font-family:var(--font-family-label);font-size:var(--font-size-label);font-weight:var(--font-weight-label);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;color:var(--text-secondary)}.form-input,.form-select,.form-textarea{border:1px solid var(--border-strong);width:100%;font-family:var(--font-family-body);color:var(--text-primary);border-radius:var(--radius-md);appearance:none;background:#ffffff80;padding:16px;font-size:18px;transition:all .3s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--text-primary);background:#fffc;outline:none}.form-textarea{resize:vertical;min-height:120px}.form-select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right 16px center;background-repeat:no-repeat;background-size:16px}.btn-primary{background-color:var(--text-primary);color:var(--bg-primary);border:1px solid var(--text-primary);font-family:var(--font-family-label);font-size:var(--font-size-label);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;cursor:pointer;border-radius:var(--radius-md);width:100%;margin-top:16px;padding:16px 32px;font-weight:700;transition:all .3s}.btn-primary:hover{color:var(--text-primary);background-color:#0000}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.form-success{text-align:center;padding:48px 0;display:none}.form-success.is-visible{flex-direction:column;align-items:center;gap:16px;display:flex}
