.hero{min-height:100dvh;padding:calc(var(--nav-height) + 80px) var(--container-padding-x) 120px;background:var(--ink);isolation:isolate;align-items:center;display:flex;position:relative;overflow:hidden}.hero__glow{aspect-ratio:1;background:radial-gradient(circle, var(--blue-soft) 0%, transparent 60%);pointer-events:none;z-index:0;filter:blur(1px);opacity:0;width:min(900px,90vw);animation:heroGlowIn 1.4s .2s var(--ease-out) forwards, heroGlowDrift 14s 1.6s ease-in-out infinite;position:absolute;top:30%;left:-8%}@keyframes heroGlowIn{to{opacity:1}}@keyframes heroGlowDrift{0%,to{transform:translate(0)scale(1)}33%{transform:translate(40px,-24px)scale(1.06)}66%{transform:translate(-32px,18px)scale(.96)}}.hero__content{z-index:1;width:100%;max-width:var(--max-width);margin:0 auto;position:relative}.hero__eyebrow{font-family:var(--font-mono);font-size:var(--fs-eyebrow);letter-spacing:.06em;color:var(--blue-light);opacity:0;transition:opacity .8s var(--ease-out-expo), transform .8s var(--ease-out-expo);align-items:center;gap:8px;margin-bottom:36px;font-weight:500;display:inline-flex;transform:translateY(24px)}.hero__eyebrow-mark{color:var(--blue)}.hero__headline{font-family:var(--font-sans);font-weight:500;font-size:var(--fs-display);letter-spacing:-.04em;color:var(--text);max-width:16ch;margin:0 0 44px;line-height:.95}.hero__line{opacity:0;transition:opacity var(--reveal-duration-hero) var(--ease-out-expo), transform var(--reveal-duration-hero) var(--ease-out-expo);will-change:transform, opacity;display:block;transform:translateY(56px)}.hero__headline em{font-family:var(--font-serif);color:var(--text);font-style:italic;font-weight:400}.hero__highlight{color:var(--blue);text-shadow:0 0 40px var(--blue-glow);animation:4s ease-in-out 2s infinite heroHighlightPulse}@keyframes heroHighlightPulse{0%,to{text-shadow:0 0 40px var(--blue-glow)}50%{text-shadow:0 0 60px #2b4effb3}}.hero__period{font-family:var(--font-mono);color:var(--blue);font-weight:400}.hero__ctas{opacity:0;transition:opacity .8s var(--ease-out-expo), transform .8s var(--ease-out-expo);flex-wrap:wrap;gap:14px;display:flex;transform:translateY(24px)}.hero__content.is-visible .hero__eyebrow{opacity:1;transition-delay:.2s;transform:translateY(0)}.hero__content.is-visible .hero__line{opacity:1;transform:translateY(0)}.hero__content.is-visible .hero__line:first-child{transition-delay:.36s}.hero__content.is-visible .hero__line:nth-child(2){transition-delay:.54s}.hero__content.is-visible .hero__line:nth-child(3){transition-delay:.72s}.hero__content.is-visible .hero__ctas{opacity:1;transition-delay:1s;transform:translateY(0)}.hero__meta{right:var(--container-padding-x);font-family:var(--font-mono);letter-spacing:.2em;color:var(--text-faint);z-index:1;flex-direction:column;align-items:center;gap:12px;font-size:10px;display:flex;position:absolute;bottom:56px}.hero__meta-line{background:linear-gradient(to bottom, var(--blue) 0%, var(--text-faint) 40%, transparent 100%);width:1px;height:56px;position:relative;overflow:hidden}.hero__meta-line:after{content:"";background:linear-gradient(to bottom, transparent 0%, var(--blue) 50%, transparent 100%);animation:2.4s ease-in-out infinite heroScrollCue;position:absolute;inset:0}@keyframes heroScrollCue{0%{opacity:0;transform:translateY(-100%)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(100%)}}@media (max-width:880px){.hero{padding:calc(var(--nav-height) + 48px) var(--container-padding-x) 88px}.hero__headline{max-width:14ch}.hero__meta{display:none}}@media (max-width:480px){.hero__ctas .ui-btn{width:100%}}
.about__grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:80px;display:grid}.about__head{top:calc(var(--nav-height) + 36px);flex-direction:column;gap:28px;display:flex;position:sticky}.about__title{font-size:var(--fs-h1);letter-spacing:-.03em;color:var(--text);text-wrap:balance;font-weight:500;line-height:.98}.about__title em{font-family:var(--font-serif);font-style:italic;font-weight:400}.about__body{flex-direction:column;gap:28px;max-width:56ch;display:flex}.about__lede{color:var(--text);letter-spacing:-.005em;font-size:22px;font-weight:400;line-height:1.45}.about__lede em{font-family:var(--font-serif);color:var(--text);font-style:italic;font-weight:400}.about__body p{color:var(--text-muted);font-size:17px;line-height:1.6}.about__quote{border-top:1px solid var(--rule);margin:24px 0 0;padding:32px 0 0;position:relative}.about__quote-mark{font-family:var(--font-serif);color:var(--blue);opacity:.4;pointer-events:none;font-size:96px;font-style:italic;line-height:1;position:absolute;top:12px;left:-8px}.about__quote p{font-family:var(--font-serif);color:var(--text);letter-spacing:-.01em;z-index:1;max-width:30ch;font-size:26px;font-style:italic;font-weight:400;line-height:1.4;position:relative}.about__quote em{color:var(--blue-light);font-style:italic}.about__body{--reveal-delay:.2s}.about__lede,.about__body>p,.about__quote{opacity:0;transition:opacity .6s var(--ease-out-expo), transform .6s var(--ease-out-expo);transform:translateY(20px)}.about.is-visible .about__lede{opacity:1;transition-delay:.36s;transform:translateY(0)}.about.is-visible .about__body>p{opacity:1;transition-delay:.5s;transform:translateY(0)}.about.is-visible .about__quote{opacity:1;transition-delay:.64s;transform:translateY(0)}.about__quote-mark{transform-origin:50%;transition:transform 1.1s var(--ease-out-expo) .7s, opacity .8s ease .7s;transform:scale(.6)}.about.is-visible .about__quote-mark{transform:scale(1)}@media (max-width:880px){.about__grid{grid-template-columns:1fr;gap:36px}.about__head{position:static}.about__lede{font-size:19px}.about__quote p{font-size:22px}}
.features__header{flex-direction:column;gap:24px;max-width:30ch;margin-bottom:92px;display:flex}.features__title{font-size:var(--fs-h2);letter-spacing:-.02em;color:var(--text);font-weight:500;line-height:1.05}.features__list{grid-template-columns:repeat(4,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}.features__item{border-top:1px solid var(--rule);flex-direction:column;gap:16px;padding:36px 24px 0 0;display:flex;position:relative}.features__item:before{content:"";background:var(--blue);width:0;height:1px;transition:width .9s var(--ease-out-expo) calc(var(--reveal-delay,0s) + .2s);position:absolute;top:-1px;left:0}.features.is-visible .features__item:before{width:100%}.features__index,.features__item-title,.features__item-desc{transition:color var(--transition-fast)}.features__item:hover .features__item-title,.features__item:hover .features__index{color:var(--blue-light)}.features__item+.features__item{padding-left:28px}.features__index{font-family:var(--font-mono);letter-spacing:.06em;color:var(--blue);font-size:11px;font-weight:500}.features__item-title{font-family:var(--font-sans);letter-spacing:-.015em;color:var(--text);font-size:22px;font-weight:500;line-height:1.2}.features__item-desc{color:var(--text-muted);max-width:32ch;font-size:15px;line-height:1.55}@media (max-width:1080px){.features__list{grid-template-columns:1fr 1fr}}@media (max-width:680px){.features__header{margin-bottom:56px}.features__list{grid-template-columns:1fr}.features__item+.features__item{padding-left:0}}
.proof__header{flex-direction:column;gap:24px;max-width:24ch;margin-bottom:80px;display:flex}.proof__title{font-size:var(--fs-h2);letter-spacing:-.02em;color:var(--text);font-weight:500;line-height:1.05}.proof__title em{font-family:var(--font-serif);font-style:italic;font-weight:400}.proof__stats{border-top:1px solid var(--rule);grid-template-columns:repeat(3,1fr);gap:36px;padding-top:56px;display:grid;position:relative}.proof__stats:before{content:"";background:var(--blue);width:0;height:1px;transition:width 1.1s var(--ease-out-expo) .2s;position:absolute;top:-1px;left:0}.proof.is-visible .proof__stats:before{width:100%}.proof__stat{opacity:0;transition:opacity .8s var(--ease-out-expo), transform .8s var(--ease-out-expo);flex-direction:column;gap:14px;display:flex;transform:translateY(24px)}.proof__stat:first-child{transition-delay:.4s}.proof__stat:nth-child(2){transition-delay:.54s}.proof__stat:nth-child(3){transition-delay:.68s}.proof.is-visible .proof__stat{opacity:1;transform:translateY(0)}.proof__stat-value{font-family:var(--font-sans);letter-spacing:-.04em;color:var(--text);font-size:clamp(48px,6vw,72px);font-weight:500;line-height:.95}.proof__stat-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:11px}@media (max-width:880px){.proof__stats{grid-template-columns:1fr;gap:24px}}
.approach__container{grid-template-columns:.85fr 1.15fr;align-items:start;gap:80px;display:grid}.approach__header{top:calc(var(--nav-height) + 36px);flex-direction:column;gap:28px;display:flex;position:sticky}.approach__title{font-size:var(--fs-h1);letter-spacing:-.03em;color:var(--text);font-weight:500;line-height:.98}.approach__list{margin:0;padding:0;list-style:none;position:relative}.approach__step{border-top:1px solid var(--rule);grid-template-columns:24px 1fr;gap:36px;padding:36px 0 56px;display:grid;position:relative}.approach__step-dot{animation:2.4s ease-in-out infinite approachDotPulse}@keyframes approachDotPulse{0%,to{box-shadow:0 0 0 4px #2b4eff2e}50%{box-shadow:0 0 0 6px #2b4eff4d}}.approach__step:last-child{padding-bottom:0}.approach__step:before{content:"";background:var(--rule);width:1px;position:absolute;top:36px;bottom:-1px;left:11px}.approach__step:last-child:before{display:none}.approach__step-marker{justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:relative}.approach__step-dot{background:var(--blue);border-radius:999px;width:10px;height:10px;box-shadow:0 0 0 4px #2b4eff2e}.approach__step-body{flex-direction:column;gap:10px;max-width:56ch;display:flex}.approach__step-index{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-faint);font-size:11px;font-weight:500}.approach__step-title{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--text);font-size:28px;font-weight:500;line-height:1.1}.approach__step-desc{color:var(--text-muted);font-size:16px;line-height:1.6}@media (max-width:880px){.approach__container{grid-template-columns:1fr;gap:36px}.approach__header{position:static}.approach__step{grid-template-columns:16px 1fr;gap:20px;padding:24px 0 36px}.approach__step:before{top:24px;left:7px}.approach__step-marker{width:16px;height:16px}.approach__step-dot{width:8px;height:8px;box-shadow:0 0 0 3px #2b4eff2e}.approach__step-title{font-size:22px}}
.services__header{flex-direction:column;gap:24px;margin-bottom:80px;display:flex}.services__title{font-size:var(--fs-h1);letter-spacing:-.03em;color:var(--text);font-weight:500;line-height:1}.services__grid{background:var(--rule);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.services__card{background:var(--ink);color:var(--text);opacity:0;transform:translateY(var(--reveal-distance-y));transition:opacity var(--reveal-duration) var(--ease-out-expo), transform var(--reveal-duration) var(--ease-out-expo), background-color var(--transition-smooth), box-shadow var(--transition-smooth);transition-delay:var(--card-delay,0s);flex-direction:column;gap:18px;padding:56px 36px 44px;text-decoration:none;display:flex;position:relative;overflow:hidden}.services.is-visible .services__card{opacity:1;transform:translateY(0)}.services__card:after{content:"";background:var(--blue);transform-origin:0;height:2px;transition:transform .35s var(--ease-out);position:absolute;inset:auto 0 0;transform:scaleX(0)}.services__card:hover{background-color:var(--ink-2);z-index:1;transform:translateY(-6px)scale(1.02);box-shadow:0 14px 40px #0006}.services__card:hover:after{transform:scaleX(1)}.services__index{font-family:var(--font-mono);letter-spacing:.06em;color:var(--blue);font-size:11px;font-weight:500}.services__card-title{font-family:var(--font-sans);letter-spacing:-.025em;color:var(--text);transition:color var(--transition-fast);font-size:30px;font-weight:500;line-height:1.05}.services__card:hover .services__card-title{color:var(--blue-light)}.services__card-desc{color:var(--text-muted);flex-grow:1;margin-bottom:28px;font-size:16px;line-height:1.55}.services__card-cta{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text);align-items:center;gap:8px;font-size:12px;font-weight:500;display:inline-flex}.services__card-cta span{transition:transform var(--transition-fast);display:inline-block}.services__card:hover .services__card-cta span{transform:translate(4px)}@media (max-width:880px){.services__grid{grid-template-columns:1fr}.services__card{padding:40px 24px}.services__card-title{font-size:26px}}
.faq__layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:80px;display:grid}.faq__header{top:calc(var(--nav-height) + 36px);flex-direction:column;gap:24px;display:flex;position:sticky}.faq__title{font-size:var(--fs-h1);letter-spacing:-.03em;color:var(--text);font-weight:500;line-height:.98}.faq__lede{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-muted);margin-top:8px;font-size:12px}.faq__jump{color:var(--blue-light);transition:color var(--transition-fast);border-bottom:1px solid;text-decoration:none}.faq__jump:hover{color:var(--blue)}.faq__list{border-top:1px solid var(--rule)}.faq__item{border-bottom:1px solid var(--rule);opacity:0;transition:opacity var(--reveal-duration) var(--ease-out-expo), transform var(--reveal-duration) var(--ease-out-expo);transition-delay:calc(var(--faq-delay,0s) + .15s);transform:translateY(40px)}.faq.is-visible .faq__item{opacity:1;transform:translateY(0)}.faq__summary{cursor:pointer;transition:color var(--transition-fast);grid-template-columns:auto 1fr auto;align-items:baseline;gap:24px;padding:28px 8px 28px 0;list-style:none;display:grid}.faq__summary::-webkit-details-marker{display:none}.faq__q-mark{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-faint);min-width:38px;font-size:11px;font-weight:500}.faq__q-text{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--text);font-size:19px;font-weight:500;line-height:1.35}.faq__chevron{font-family:var(--font-mono);color:var(--blue);transition:transform var(--transition-fast);font-size:18px;font-weight:300;line-height:1}.faq__item[open] .faq__chevron{transform:rotate(45deg)}.faq__item:hover .faq__q-text{color:var(--blue-light)}.faq__answer{max-width:64ch;padding:0 0 28px 62px}.faq__answer p{font-family:var(--font-sans);color:var(--text-muted);font-size:16px;line-height:1.65}.faq__item[open] .faq__answer{animation:faqAnswerOpen .28s var(--ease-out)}@keyframes faqAnswerOpen{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:880px){.faq__layout{grid-template-columns:1fr;gap:36px}.faq__header{position:static}.faq__summary{grid-template-columns:auto 1fr auto;gap:16px;padding:22px 0}.faq__q-mark{min-width:32px;font-size:10px}.faq__q-text{font-size:17px}.faq__answer{padding:0 0 24px 48px}}
.contact{background:var(--blue);color:#fff;padding:var(--section-padding-y) 0;isolation:isolate;position:relative;overflow:hidden}.contact:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 80% 0,#ffffff2e 0%,#0000 50%),radial-gradient(circle at 0 100%,#00000029 0%,#0000 60%);position:absolute;inset:0}.contact__container{z-index:1;max-width:var(--max-width);padding:0 var(--container-padding-x);grid-template-columns:1fr 1.1fr;align-items:start;gap:80px;margin:0 auto;display:grid;position:relative}.contact__head{flex-direction:column;gap:28px;display:flex}.contact__eyebrow{font-family:var(--font-mono);font-size:var(--fs-eyebrow);letter-spacing:.06em;color:#fff;opacity:.85;font-weight:500}.contact__title{font-family:var(--font-sans);font-size:var(--fs-h1);letter-spacing:-.03em;color:#fff;text-wrap:balance;font-weight:500;line-height:.96}.contact__title em{font-family:var(--font-serif);color:#fff;font-style:italic;font-weight:400}.contact__lede{color:#ffffffe6;max-width:38ch;font-size:17px;line-height:1.55}.contact__direct{border-top:1px solid #ffffff2e;flex-direction:column;gap:12px;margin:8px 0 0;padding:24px 0 0;list-style:none;display:flex}.contact__direct li{font-family:var(--font-mono);letter-spacing:.02em;color:#fff;grid-template-columns:80px 1fr;align-items:baseline;gap:16px;font-size:13px;display:grid}.contact__direct-label{letter-spacing:.14em;text-transform:uppercase;color:#ffffffb3;font-size:10px}.contact__direct a{color:#fff;transition:border-color var(--transition-fast);border-bottom:1px solid #fff6;padding-bottom:1px;text-decoration:none}.contact__direct a:hover{border-bottom-color:#fff}.contact__form{color:var(--ink);--reveal-delay:.15s;background:#fff;border-radius:4px;flex-direction:column;gap:24px;padding:44px 40px;display:flex;position:relative;box-shadow:0 24px 60px #0000002e}.contact__row{grid-template-columns:1fr 1fr;gap:24px;display:grid}.contact__field{flex-direction:column;gap:8px;display:flex}.contact__label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--paper-ink);font-size:11px;font-weight:500}.contact__input{font-family:var(--font-sans);color:var(--ink);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);appearance:none;background:#fff;border:1px solid #d8d6d0;border-radius:2px;padding:12px 14px;font-size:15px}.contact__input::placeholder{color:#a0a0a8}.contact__input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #2b4eff2e}.contact__textarea{resize:vertical;min-height:120px;line-height:1.55}.contact__select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%231a1a1c' d='M6 8 0 0h12z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:10px 7px;padding-right:38px}.contact__status-wrap{min-height:0}.contact__status{font-family:var(--font-sans);border:1px solid;border-radius:2px;padding:12px 14px;font-size:14px}.contact__status--success{color:#14532d;background:#ecfdf5;border-color:#86efac}.contact__status--error{color:#7f1d1d;background:#fef2f2;border-color:#fca5a5}.contact__submit{font-family:var(--font-sans);letter-spacing:.01em;color:#fff;background:var(--ink);cursor:pointer;transition:background-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);border:0;border-radius:999px;justify-content:center;align-self:flex-start;align-items:center;gap:10px;padding:14px 22px;font-size:14px;font-weight:600;display:inline-flex}.contact__submit:hover:not(:disabled){background:#2c2c34;transform:translateY(-1px);box-shadow:0 6px 16px #0000002e}.contact__submit:disabled{opacity:.7;cursor:progress}.contact__submit-arrow{transition:transform var(--transition-fast);display:inline-block}.contact__submit:hover:not(:disabled) .contact__submit-arrow{transform:translate(3px)}@media (max-width:880px){.contact__container{grid-template-columns:1fr;gap:36px}.contact__form{padding:32px 24px}.contact__row{grid-template-columns:1fr;gap:20px}}
