:root{--navy:#0e4774;--blue:#127dc1;--sky:#50c9f4;--ink-950:#07111c;--ink-900:#0b1724;--bg:#fff;--bg-alt:#f3f6f9;--surface:#fff;--surface-2:#eef3f8;--text:#0b1724;--text-2:#3f4f61;--muted:#6a7a8c;--line:#0b17241a;--line-strong:#0b17242e;--accent:var(--blue);--accent-strong:var(--navy);--accent-soft:#127dc11a;--focus:#1d9bf0;--shadow:0 30px 60px -30px #0b172459;--shadow-sm:0 2px 10px #0b17240f;--font-display:"Sora", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--container:1320px;--gutter:clamp(1.25rem, 4vw, 2.5rem);--header-h:76px;--radius-sm:10px;--radius:18px;--radius-lg:28px;--ease:cubic-bezier(.2, .7, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b1724;--bg-alt:#0e1d2e;--surface:#12243a;--surface-2:#172c45;--text:#eef4fa;--text-2:#b8c6d5;--muted:#8698ad;--line:#ffffff17;--line-strong:#ffffff2e;--accent:#4fb3ee;--accent-strong:#8fd3f7;--accent-soft:#50c9f41f;--shadow:0 30px 60px -30px #000000b3;--shadow-sm:0 2px 10px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0b1724;--bg-alt:#0e1d2e;--surface:#12243a;--surface-2:#172c45;--text:#eef4fa;--text-2:#b8c6d5;--muted:#8698ad;--line:#ffffff17;--line-strong:#ffffff2e;--accent:#4fb3ee;--accent-strong:#8fd3f7;--accent-soft:#50c9f41f;--shadow:0 30px 60px -30px #000000b3;--shadow-sm:0 2px 10px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:var(--header-h)}html.no-scroll{overflow:hidden}body{font-family:var(--font-body);color:var(--text-2);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.7;transition:background-color .3s,color .3s;overflow-x:clip}img,svg,video,iframe{max-width:100%;display:block}img{height:auto}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.025em;color:var(--text);text-wrap:balance;margin:0 0 .5em;font-weight:700;line-height:1.12}h2{font-size:clamp(2rem,1.3rem + 3vw,3.75rem)}h3{letter-spacing:-.015em;font-size:clamp(1.1rem,1rem + .4vw,1.35rem)}p{text-wrap:pretty;margin:0 0 1em}a{color:var(--accent);text-underline-offset:3px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}ul,ol{margin:0;padding:0;list-style:none}em{color:var(--accent);font-style:normal}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}::selection{background:var(--sky);color:var(--ink-900)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:1000;color:#fff;background:var(--navy);border-radius:var(--radius-sm);padding:.75rem 1.1rem;font-weight:600;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:1rem}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(5rem,3rem + 8vw,9rem);position:relative}.section--alt{background:var(--bg-alt)}.eyebrow{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.75rem;margin-bottom:1.1rem;font-size:.78rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:32px;height:1.5px}.eyebrow--light{color:var(--sky)}.lead{color:var(--text);font-size:clamp(1.1rem,1rem + .45vw,1.3rem);line-height:1.6}.section-heading{max-width:760px;margin-bottom:clamp(2.5rem,2rem + 2vw,4rem)}.section-heading--center{text-align:center;margin-inline:auto}.section-heading__lead{max-width:600px;color:var(--muted);font-size:1.1rem}.section-heading--center .section-heading__lead{margin-inline:auto}.btn{min-height:48px;font-family:var(--font-display);white-space:nowrap;transition:background-color .25s, color .25s, border-color .25s, transform .25s var(--ease), box-shadow .25s;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.btn svg{transition:transform .25s var(--ease)}.btn:hover svg{transform:translate(2px,-2px)}.btn:active{transform:scale(.98)}.btn--primary{color:#fff;background:var(--blue);box-shadow:0 10px 30px -10px #127dc1cc}.btn--primary:hover{background:var(--navy)}.btn--glass{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-color:#ffffff59}.btn--glass:hover{color:var(--ink-900);background:#fff}.btn--ghost{color:var(--text);border-color:var(--line-strong);background:0 0}.btn--ghost:hover{border-color:var(--accent);color:var(--accent)}.btn--lg{min-height:56px;padding:1rem 1.9rem;font-size:1rem}.btn--block{width:100%}.icon-btn{width:44px;height:44px;color:var(--text);border:1.5px solid var(--line-strong);background:0 0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;transition:background-color .25s,color .25s,border-color .25s;display:inline-grid}.icon-btn:hover{color:#fff;background:var(--blue);border-color:var(--blue)}.icon-btn--glass{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border-color:#ffffff4d;width:52px;height:52px}.icon-btn--glass:hover{color:var(--ink-900);background:#fff;border-color:#fff}.link-arrow{font-family:var(--font-display);color:var(--text);border-bottom:1.5px solid var(--accent);align-items:center;gap:.5rem;padding-bottom:.2rem;font-weight:600;text-decoration:none;display:inline-flex}.link-arrow svg{transition:transform .25s var(--ease)}.link-arrow:hover svg{transform:translate(4px)}.checklist{gap:.85rem;margin:1.75rem 0 2.25rem;display:grid}.checklist li{align-items:flex-start;gap:.8rem;display:flex}.checklist svg{box-sizing:content-box;color:var(--accent);background:var(--accent-soft);border-radius:50%;flex-shrink:0;margin-top:.15em;padding:4px}.checklist strong{color:var(--text)}.tag{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#07111c80;border:1px solid #fff3;border-radius:999px;padding:.35rem .8rem;font-size:.7rem;font-weight:600;display:inline-block}.header{z-index:100;color:var(--text);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px);border-bottom:1px solid var(--line);transition:background-color .4s,border-color .4s,color .4s;position:fixed;inset:0 0 auto}.header--over-hero{color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000}.header--open{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}.header__progress{background:linear-gradient(90deg, var(--blue), var(--sky));transform-origin:0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.header--over-hero .header__progress{opacity:0}.header__inner{height:var(--header-h);justify-content:space-between;align-items:center;gap:1rem;display:flex}.header__brand img{width:auto;height:46px}.header__nav{display:none}.header__nav ul{gap:.25rem;display:flex}.header__nav a{font-family:var(--font-display);color:inherit;opacity:.8;border-radius:999px;padding:.55rem 1rem;font-size:.92rem;font-weight:500;text-decoration:none;transition:opacity .2s;display:block;position:relative}.header__nav a:hover,.header__nav a[aria-current]{opacity:1}.header__pill{background:var(--accent-soft);border-radius:999px;position:absolute;inset:0}.header--over-hero .header__pill{background:#ffffff26}.header__label{position:relative}.header__actions{align-items:center;gap:.6rem;display:flex}.header .icon-btn{color:inherit;border-color:color-mix(in srgb, currentColor 25%, transparent)}.header .icon-btn:hover{color:#fff}.header__cta,.header__login{display:none}.menu-btn{width:44px;height:44px;color:inherit;background:0 0;border:0;padding:0;position:relative}.menu-btn span{height:2px;transition:transform .35s var(--ease), top .35s var(--ease);background:currentColor;border-radius:2px;position:absolute;left:10px;right:10px}.menu-btn span:first-child{top:17px}.menu-btn span:last-child{top:25px}.menu-btn[aria-expanded=true] span:first-child{top:21px;transform:rotate(45deg)}.menu-btn[aria-expanded=true] span:last-child{top:21px;transform:rotate(-45deg)}.mobile-menu{inset:var(--header-h) 0 0 0;padding:2rem var(--gutter) 2.5rem;background:var(--bg);flex-direction:column;justify-content:space-between;display:flex;position:fixed;overflow-y:auto}.mobile-menu ul{display:grid}.mobile-menu li a{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);border-bottom:1px solid var(--line);align-items:baseline;gap:1rem;padding:.7rem 0;font-size:clamp(2rem,9vw,3rem);font-weight:700;text-decoration:none;display:flex}.mobile-menu li a[aria-current]{color:var(--accent)}.mobile-menu__num{letter-spacing:0;color:var(--muted);font-size:.8rem;font-weight:500}.mobile-menu__foot{gap:.5rem;margin-top:2rem;display:grid}.mobile-menu__foot a:not(.btn){color:var(--text-2);font-size:1.05rem;text-decoration:none}.mobile-menu__foot .btn{margin-bottom:.75rem}.mobile-menu__login{align-items:center;gap:.5rem;display:inline-flex}@media (width>=640px){.header__cta{display:inline-flex}.header__login{display:inline-grid}}@media (width>=960px){:root{--header-h:88px}.header__brand img{height:54px}.header__nav{display:block}.menu-btn{display:none}}.hero{color:#fff;background:var(--ink-950);isolation:isolate;touch-action:pan-y;flex-direction:column;justify-content:flex-end;min-height:max(100svh,620px);display:flex;position:relative;overflow:hidden}.hero__media,.hero__image{z-index:-2;position:absolute;inset:0}.hero__image img{object-fit:cover;width:100%;height:100%}.hero__shade{background:linear-gradient(#07111cb3 0%,#07111c00 28%),linear-gradient(#07111c1a 25%,#07111c8c 60%,#07111cf2 100%),linear-gradient(90deg,#07111c99 0%,#07111c00 65%);position:absolute;inset:0}.hero__content{padding-top:calc(var(--header-h) + 3rem);padding-bottom:2rem}.hero__copy{max-width:900px;min-height:15rem}.hero__title{font-family:var(--font-display);letter-spacing:-.04em;text-wrap:balance;margin:0 0 1.5rem;font-size:clamp(2.5rem,1.4rem + 5.2vw,6rem);font-weight:700;line-height:1.02}.hero__word{vertical-align:top;margin-bottom:-.08em;padding-bottom:.08em;display:inline-block;overflow:hidden}.hero__word>span{display:inline-block}.hero__text{color:#ffffffd1;max-width:580px;font-size:clamp(1rem,.95rem + .35vw,1.2rem)}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.hero__bar{border-top:1px solid #ffffff24;margin-top:clamp(2rem,5vh,4rem);padding-block:1.75rem 2rem}.hero__bar-inner{align-items:center;gap:1.5rem;display:flex}.hero__counter{font-family:var(--font-display);color:#fff9;font-variant-numeric:tabular-nums;margin:0;font-size:.9rem}.hero__counter strong{color:#fff;font-size:1.15rem}.hero__dots{flex:1;gap:.5rem;max-width:420px;display:flex}.hero__dot{background:0 0;border:0;flex:1;height:24px;padding:0;position:relative}.hero__dot:before{content:"";background:#ffffff40;height:2px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.hero__dot-fill{background:var(--sky);width:0;height:2px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.hero__dot-fill[data-state=done]{width:100%}.hero__dot-fill[data-state=active]{animation:linear forwards fill}@keyframes fill{to{width:100%}}.hero__arrows{gap:.5rem;margin-left:auto;display:none}.hero__scroll{letter-spacing:.12em;text-transform:uppercase;color:#ffffffbf;align-items:center;gap:.4rem;font-size:.82rem;font-weight:500;text-decoration:none;display:none}.hero__scroll svg{animation:2s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(4px)}}@media (width>=640px){.hero__arrows{display:flex}}@media (width>=960px){.hero__scroll{display:inline-flex}}.about__grid{align-items:center;gap:clamp(3rem,2rem + 4vw,6rem);display:grid}.about__copy h2{max-width:14ch}.about__media{padding:0 12% 14% 0;position:relative}.about__img{border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.about__img img{object-fit:cover;width:100%;height:100%}.about__img--main{aspect-ratio:4/5}.about__img--second{aspect-ratio:1;border:6px solid var(--bg);width:48%;position:absolute;bottom:0;right:0}.about__badge{width:118px;height:118px;font-family:var(--font-display);text-align:center;color:#fff;background:var(--blue);border-radius:50%;place-items:center;line-height:1.1;display:grid;position:absolute;top:8%;right:4%;box-shadow:0 20px 40px -15px #127dc1cc}.about__badge span{letter-spacing:.15em;text-transform:uppercase;opacity:.85;align-self:end;font-size:.72rem}.about__badge strong{align-self:start;font-size:1.75rem}@media (width>=960px){.about__grid{grid-template-columns:1.05fr 1fr}}.stats{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);margin:clamp(4rem,3rem + 4vw,7rem) 0 0;display:grid}.stat{flex-direction:column-reverse;padding:1.75rem 1rem 0 0;display:flex}.stat dd{font-family:var(--font-display);letter-spacing:-.04em;color:var(--text);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(2.75rem,2rem + 3vw,4.5rem);font-weight:700;line-height:1}.stat dt{color:var(--muted);margin-top:.6rem;font-size:.92rem}@media (width>=960px){.stats{grid-template-columns:repeat(4,1fr)}.stat+.stat{border-left:1px solid var(--line);padding-left:2rem}}.marquee{border-block:1px solid var(--line);margin-top:clamp(4rem,3rem + 4vw,7rem);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee__track{width:max-content;animation:40s linear infinite marquee;display:flex}.marquee:hover .marquee__track{animation-play-state:paused}.marquee__group{display:flex}.marquee__group span{font-family:var(--font-display);letter-spacing:-.03em;color:#0000;-webkit-text-stroke:1.2px var(--text-2);white-space:nowrap;align-items:center;gap:2.5rem;padding:1.4rem 1.25rem;font-size:clamp(1.75rem,1.2rem + 2.5vw,3.5rem);font-weight:700;display:inline-flex}.marquee__group span:nth-child(2n){color:var(--text);-webkit-text-stroke:0}.marquee__group i{background:var(--sky);border-radius:50%;width:14px;height:14px;margin-left:1.25rem}@keyframes marquee{to{transform:translate(-50%)}}.services__grid{gap:3rem;display:grid}.services__visual{top:calc(var(--header-h) + 2rem);aspect-ratio:4/5;max-height:calc(100vh - var(--header-h) - 4rem);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--surface-2);display:none;position:sticky;overflow:hidden}.services__visual-img{position:absolute;inset:0}.services__visual-img img{object-fit:cover;width:100%;height:100%}.services__visual-caption{font-family:var(--font-display);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#07111c8c;border:1px solid #fff3;border-radius:999px;align-items:center;gap:.6rem;padding:.7rem 1.1rem;font-weight:600;display:inline-flex;position:absolute;bottom:1.25rem;left:1.25rem}.services__list{border-top:1px solid var(--line-strong)}.service{border-bottom:1px solid var(--line-strong)}.service h3{margin:0}.service button{width:100%;font-family:var(--font-display);letter-spacing:-.025em;text-align:left;color:var(--text);background:0 0;border:0;align-items:center;gap:1.25rem;padding:1.6rem 0;font-size:clamp(1.25rem,1rem + 1.2vw,1.9rem);font-weight:600;transition:color .25s;display:flex}.service button:hover,.service--open button{color:var(--accent)}.service__num{letter-spacing:0;color:var(--muted);font-size:.8rem;font-weight:500}.service__title{flex:1}.service__toggle{transition:transform .35s var(--ease);flex-shrink:0}.service--open .service__toggle{transform:rotate(45deg)}.service__panel{overflow:hidden}.service__body{padding:0 0 1.75rem 2.6rem}.service__body p{max-width:520px;font-size:1.05rem}.service__mobile-img{aspect-ratio:16/10;border-radius:var(--radius);margin-bottom:1.25rem;overflow:hidden}.service__mobile-img img{object-fit:cover;width:100%;height:100%}@media (width<=639.98px){.service__body{padding-left:0}}@media (width>=960px){.services__grid{grid-template-columns:.9fr 1.1fr;align-items:start;gap:clamp(3rem,5vw,6rem)}.services__visual{display:block}.service__mobile-img{display:none}}.projects__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem 3rem;margin-bottom:clamp(2.5rem,2rem + 2vw,4rem);display:flex}.projects__head .section-heading{margin-bottom:0}.filters{background:var(--surface-2);border-radius:999px;max-width:100%;padding:.3rem;display:inline-flex;overflow-x:auto}.filter{font-family:var(--font-display);white-space:nowrap;color:var(--text-2);background:0 0;border:0;border-radius:999px;padding:.65rem 1.2rem;font-size:.9rem;font-weight:600;transition:color .25s;position:relative}.filter[aria-pressed=true]{color:#fff}.filter__pill{background:var(--blue);border-radius:999px;position:absolute;inset:0;box-shadow:0 8px 20px -8px #127dc1cc}.filter__label{position:relative}@media (width<=639.98px){.filters{width:100%;display:flex}.filter{flex:1;padding-inline:.5rem}}.filter sup{opacity:.75;margin-left:.15rem;font-size:.68rem}.projects__grid{grid-template-columns:1fr;grid-auto-flow:dense;gap:1.25rem;display:grid}.project-card{border-radius:var(--radius-lg);background:var(--surface-2);min-height:380px;position:relative;overflow:hidden}.project-card a{color:#fff;border-radius:inherit;text-decoration:none;display:block;position:absolute;inset:0}.project-card__media{position:absolute;inset:0}.project-card__media img{object-fit:cover;width:100%;height:100%;transition:transform 1s var(--ease)}.project-card a:hover img,.project-card a:focus-visible img{transform:scale(1.06)}.project-card__overlay{background:linear-gradient(#07111c00 30%,#07111c40 55%,#07111ce0 100%);flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:clamp(1.25rem,1rem + 1vw,2rem);display:flex;position:absolute;inset:0}.project-card__overlay .tag{position:absolute;top:clamp(1.25rem,1rem + 1vw,2rem);left:clamp(1.25rem,1rem + 1vw,2rem)}.project-card h3{color:#fff;max-width:90%;margin-bottom:.4rem;font-size:clamp(1.25rem,1.05rem + .8vw,1.75rem)}.project-card__loc{color:#fffc;align-items:center;gap:.4rem;max-width:calc(100% - 64px);margin:0;font-size:.9rem;display:flex}.project-card__go{width:52px;height:52px;color:var(--ink-900);opacity:.9;transition:transform .4s var(--ease), background-color .3s, color .3s, opacity .3s;background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:clamp(1.25rem,1rem + 1vw,2rem);right:clamp(1.25rem,1rem + 1vw,2rem);transform:scale(.85)}.project-card a:hover .project-card__go,.project-card a:focus-visible .project-card__go{color:#fff;background:var(--blue);opacity:1;transform:scale(1)rotate(45deg)}@media (width>=640px){.projects__grid{grid-template-columns:repeat(2,1fr)}.project-card{min-height:420px}.project-card--wide{grid-column:span 2}}@media (width>=960px){.projects__grid{grid-template-columns:repeat(3,1fr)}.project-card{min-height:460px}}.modal{width:100%;max-width:100%;height:100%;max-height:100%;color:var(--text-2);background:0 0;border:0;margin:0;padding:0;overflow:hidden}.modal::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#07111cbf}.modal__sheet{background:var(--bg);flex-direction:column;height:100%;display:flex}.modal__topbar{padding:.85rem var(--gutter);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;display:flex}.modal__counter{font-family:var(--font-display);color:var(--muted);margin:0;font-size:.85rem}.modal__counter strong{color:var(--text)}.modal__body{overscroll-behavior:contain;flex:1;overflow-y:auto}.gallery{touch-action:pan-y}.gallery__stage{aspect-ratio:4/3;background:var(--ink-950);position:relative;overflow:hidden}.gallery__img{position:absolute;inset:0}.gallery__img img{object-fit:cover;width:100%;height:100%}.gallery__nav{gap:.5rem;display:flex;position:absolute;bottom:1rem;right:1rem}.gallery__thumbs{padding:.85rem var(--gutter);gap:.6rem;display:flex;overflow-x:auto}.gallery__thumb{aspect-ratio:4/3;border-radius:var(--radius-sm);opacity:.55;background:0 0;border:2px solid #0000;flex-shrink:0;width:88px;padding:0;transition:opacity .25s,border-color .25s;overflow:hidden}.gallery__thumb img{object-fit:cover;width:100%;height:100%}.gallery__thumb:hover,.gallery__thumb[aria-current=true]{opacity:1}.gallery__thumb[aria-current=true]{border-color:var(--accent)}.modal__content{padding:2rem var(--gutter) 3rem}.modal__content h2{font-size:clamp(1.9rem,1.4rem + 2vw,3rem)}.modal__loc{color:var(--muted);align-items:center;gap:.45rem;display:flex}.modal__loc svg{color:var(--accent)}.modal__content .lead{margin-top:1.5rem}.modal__pager{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:.75rem;margin-top:2.5rem;padding-top:2rem;display:grid}.modal__pager button{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:.25rem;padding:1rem 1.1rem;transition:border-color .25s;display:grid}.modal__pager button:last-child{text-align:right}.modal__pager button:last-child small{justify-content:flex-end}.modal__pager button:hover{border-color:var(--accent)}.modal__pager small{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.3rem;font-size:.72rem;font-weight:600;display:flex}.modal__pager span{font-family:var(--font-display);color:var(--text);font-weight:600;line-height:1.3}@media (width>=960px){.modal{padding:2.5vh 2.5vw}.modal__sheet{border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 40px 80px -20px #0009}.modal__body{grid-template-columns:1.35fr 1fr;display:grid;overflow:hidden}.gallery{background:var(--ink-950);flex-direction:column;min-height:0;display:flex}.gallery__stage{aspect-ratio:auto;flex:1}.gallery__thumbs{padding-inline:1rem}.modal__content{overscroll-behavior:contain;padding:3rem clamp(2rem,3vw,3.5rem);overflow-y:auto}}.process{color:#ffffffc7;background:var(--ink-900);isolation:isolate;overflow:hidden}.process h2,.process h3{color:#fff}.process .eyebrow{color:var(--sky)}.process .section-heading__lead{color:#ffffffb3}.process__bg{z-index:-1;opacity:.16;position:absolute;inset:0}.process__bg img{object-fit:cover;filter:grayscale();width:100%;height:100%}.process__bg:after{content:"";background:linear-gradient(180deg, var(--ink-900), transparent 40%, var(--ink-900));position:absolute;inset:0}.process__track{position:relative}.process__line{display:none}.process__steps{gap:2.5rem;display:grid}.process__step{padding-left:4.5rem;position:relative}.process__num{width:52px;height:52px;font-family:var(--font-display);color:var(--sky);background:var(--ink-950);border:1.5px solid #50c9f480;border-radius:50%;place-items:center;font-weight:700;display:grid;position:absolute;top:0;left:0}.process__step p{max-width:340px}@media (width>=960px){.process__line{background:#ffffff26;height:1.5px;display:block;position:absolute;top:26px;left:0;right:0}.process__line span{background:linear-gradient(90deg, var(--blue), var(--sky));transform-origin:0;height:100%;display:block}.process__steps{grid-template-columns:repeat(4,1fr);gap:2rem}.process__step{padding:5rem 0 0}}.purpose__grid{gap:clamp(3rem,2rem + 4vw,6rem);display:grid}.tabs{border-bottom:1px solid var(--line-strong);gap:.25rem;display:flex;overflow-x:auto}.tab{font-family:var(--font-display);white-space:nowrap;color:var(--muted);background:0 0;border:0;align-items:center;gap:.5rem;padding:1rem 1.1rem;font-weight:600;transition:color .25s;display:inline-flex;position:relative}.tab[aria-selected=true],.tab:hover{color:var(--text)}.tab__line{background:var(--accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.purpose__panel{min-height:12rem;padding-top:2rem}.purpose__panel blockquote{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);margin:0;font-size:clamp(1.6rem,1.1rem + 2.2vw,2.9rem);font-weight:600;line-height:1.2}.values__title{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem;font-size:.8rem}.value{border-top:1px solid var(--line);gap:1.25rem;padding:1.25rem 0;display:flex}.value__num{font-family:var(--font-display);color:var(--accent);padding-top:.2rem;font-size:.85rem;font-weight:600}.value h4{margin-bottom:.2rem;font-size:1.1rem}.value p{margin:0;font-size:.97rem}@media (width>=960px){.purpose__grid{grid-template-columns:1.2fr 1fr;align-items:start}}.contact__grid{gap:clamp(3rem,2rem + 3vw,5rem);display:grid}.contact-list{gap:1.5rem;display:grid}.contact-list li{gap:1rem;display:flex}.contact-list__icon{width:48px;height:48px;color:var(--accent);background:var(--accent-soft);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.contact-list h3{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 .15rem;font-size:.8rem}.contact-list p{color:var(--text);overflow-wrap:anywhere;margin:0}.contact-list a{color:var(--text);text-decoration:none}.contact-list a:hover{color:var(--accent);text-decoration:underline}.contact-list__row{align-items:center;gap:.35rem;display:flex}.copy-btn{width:32px;height:32px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex-shrink:0;place-items:center;padding:0;display:inline-grid}.copy-btn:hover{color:var(--accent);background:var(--accent-soft)}.form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);scroll-margin-top:calc(var(--header-h) + 1rem);padding:clamp(1.5rem,1rem + 2.5vw,3rem)}.form-card--flash{animation:form-flash 1.5s var(--ease)}@keyframes form-flash{0%,to{box-shadow:0 0 0 0 #50c9f400, var(--shadow)}25%{box-shadow:0 0 0 6px #50c9f499, var(--shadow)}}.contact-list .contact-list__hint{color:var(--muted);margin-top:.1rem;font-size:.82rem}.form-card__title{margin-bottom:.4rem;font-size:1.5rem}.form-card__title:focus,.form-done h3:focus{outline:none}.form-card__sub{color:var(--muted);margin-bottom:1.5rem}.form-card__sub strong{color:var(--text)}.form-alert{color:var(--text);border-radius:var(--radius-sm);background:#e5484d1a;border:1px solid #e5484d59;gap:.75rem;margin-bottom:1.15rem;padding:.9rem 1rem;font-size:.92rem;display:flex}.form-alert svg{color:#e5484d;flex-shrink:0}.form-alert p{margin:0}.btn:disabled{opacity:.75;cursor:progress}.field input:disabled,.field select:disabled,.field textarea:disabled{opacity:.7}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form-row{gap:0 1rem;display:grid}.field{gap:.4rem;margin-bottom:1.15rem;display:grid}.field label{color:var(--text);font-size:.88rem;font-weight:600}.field label span{color:var(--muted);font-weight:400}.field input,.field select,.field textarea{width:100%;min-height:52px;color:var(--text);background:var(--bg);border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);padding:.8rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.field textarea{resize:vertical;min-height:140px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.field [aria-invalid=true]{border-color:#e5484d}.field__error{color:#e5484d;font-size:.85rem}.form-note{text-align:center;color:var(--muted);margin:.9rem 0 0;font-size:.85rem}.form-done{text-align:center;padding:2rem 0}.form-done__icon{color:#fff;background:var(--blue);border-radius:50%;place-items:center;width:64px;height:64px;margin-bottom:1.25rem;display:inline-grid}.map{border-radius:var(--radius-lg);background:var(--surface-2);margin-top:clamp(3rem,2rem + 3vw,5rem);overflow:hidden}.map iframe{border:0;width:100%;height:clamp(320px,45vw,480px)}:root[data-theme=dark] .map iframe{filter:invert(.9)hue-rotate(180deg)saturate(.8)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .map iframe{filter:invert(.9)hue-rotate(180deg)saturate(.8)}}@media (width>=640px){.form-row{grid-template-columns:1fr 1fr}}@media (width>=960px){.contact__grid{grid-template-columns:1fr 1.1fr;align-items:start}}.footer{color:#ffffffb3;background:var(--ink-950);padding-top:clamp(4rem,3rem + 5vw,8rem)}.footer a{color:#fffc;text-decoration:none;transition:color .2s}.footer a:hover{color:var(--sky)}.footer__cta{border-bottom:1px solid #ffffff1f;padding-bottom:clamp(3rem,2rem + 4vw,6rem)}.footer .footer__big{font-family:var(--font-display);letter-spacing:-.045em;color:#fff;flex-wrap:wrap;align-items:center;gap:.2em .35em;font-size:clamp(2.4rem,1.2rem + 6vw,7rem);font-weight:700;line-height:1;display:inline-flex}.footer__big svg{width:.8em;height:.8em;color:var(--sky);transition:transform .4s var(--ease)}.footer__big:hover svg{transform:rotate(45deg)}.footer__grid{gap:2.5rem;padding-block:clamp(3rem,2rem + 3vw,5rem);display:grid}.footer__brand img{width:auto;height:56px;margin-bottom:1.25rem}.footer__brand p{max-width:360px}.footer h2{letter-spacing:.18em;text-transform:uppercase;color:#fff;margin-bottom:1rem;font-size:.78rem;font-weight:600}.footer ul{gap:.55rem;display:grid}.footer p{overflow-wrap:anywhere}.footer__bottom{border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.75rem;font-size:.875rem;display:flex}.footer__bottom p{margin:0}.footer__links{flex-wrap:wrap;gap:.5rem 1.75rem;display:flex}.footer__top{align-items:center;gap:.4rem;display:inline-flex}@media (width>=640px){.footer__grid{grid-template-columns:1fr 1fr}}@media (width>=1100px){.footer__grid{grid-template-columns:1.6fr 1fr 1.2fr 1.2fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee__track,.hero__scroll svg{animation:none}.hero__dot-fill[data-state=active]{width:100%;animation:none}}
