.celatris-site{background:#050b10;color:#eef3f7}
.celatris-site [hidden]{display:none!important}
/* Shared header geometry across the homepage and every interior route. */
.celatris-site .site-nav{height:92px;margin-inline:auto;flex-wrap:nowrap}
.site-nav .cosmic-logo,.site-nav nav,.site-nav .nav-contact{flex-shrink:0;white-space:nowrap}
.site-nav nav{align-items:center}
.site-nav nav a{position:relative;line-height:1.75}
.site-nav nav a[aria-current="page"]{color:#fff;position:relative}
.site-nav nav a[aria-current="page"]:after{content:'';height:1px;background:#a6bed3;position:absolute;bottom:-9px;left:0;right:0}
.celatris-site .section-link{margin-top:45px}
.celatris-site .nexus-statements article:focus-visible{outline:1px solid #a9cde566;outline-offset:8px}
.site-pause{position:fixed;bottom:25px;right:26px;width:43px;height:43px;display:grid;place-items:center;border:1px solid #acc7da30;border-radius:50%;background:#101a22de;backdrop-filter:blur(14px);color:#d7e5f0;font-size:18px;z-index:40;transition:background .25s}
.site-pause:hover{background:#263540}
.site-footer{position:relative;z-index:2;background:#080f15;border-top:1px solid #bcd0dd20;padding:68px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr 1fr;gap:65px;padding-bottom:62px}
.footer-grid h2{font-size:12px;color:#8194a3;text-transform:uppercase;letter-spacing:.07em;margin:0 0 24px;line-height:1.5}
.footer-grid>div>a:not(.cosmic-logo){display:block;font-size:14px;color:#b7c3cc;line-height:1.7;margin-bottom:12px;max-width:max-content}
.footer-grid>div>a:hover{color:white}
.footer-grid p{font-size:14px;color:#8c9ba6;line-height:1.9;margin-bottom:17px}
.footer-brand .cosmic-logo{display:inline-block;margin-bottom:25px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #bcd0dd1b;padding-top:24px;padding-right:40px;font-size:12px;color:#788b99}
.footer-bottom>div{display:flex;gap:25px;color:#aebbc4;font-size:13px}
.interior-hero{height:82svh;min-height:690px;max-height:1050px}
.interior-title{position:absolute;inset:29% 0 auto;pointer-events:none}
.interior-title .micro{margin-bottom:25px;color:#8da5b7}
.interior-title h1{font-size:clamp(64px,5.8vw,94px);letter-spacing:-.05em;line-height:1.09;max-width:72%;margin-bottom:30px}
.interior-lead{font-size:18px;line-height:1.9;max-width:600px;color:#9caeba}
.plain-hero .interior-title{position:relative;inset:auto;padding-top:90px;padding-bottom:65px;pointer-events:auto}
.plain-hero h1{max-width:100%}
.plain-hero .interior-lead{max-width:730px}
.service-index{position:sticky;top:0;z-index:12;border-block:1px solid #bfd5e126;background:#081018ec;backdrop-filter:blur(18px)}
.service-index>.wrap{display:flex;justify-content:space-between;gap:35px}
.service-index a{font-size:14px;display:flex;gap:20px;align-items:center;padding:22px 0;color:#bac7d1;border-bottom:1px solid transparent}
.service-index a:hover,.service-index a[aria-current="location"]{color:#fff;border-color:#bddcf5}
.service-index span{font-size:12px;color:#7390a7}
.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding:110px 0;border-bottom:1px solid #bad4e321;scroll-margin-top:80px}
.service-heading .micro{color:#8da6ba;margin-bottom:30px}
.service-heading h2{font-size:clamp(40px,3.8vw,61px);letter-spacing:-.045em;line-height:1.16;margin-bottom:32px;max-width:560px}
.service-heading>p:not(.micro){font-size:18px;line-height:1.9;max-width:520px}
.service-deliverables>.micro{color:#7690a5;margin-bottom:13px}
.service-deliverables ul{padding:0;margin:0;list-style:none}
.service-deliverables li{padding:23px 0;border-bottom:1px solid #bad4e31c}
.service-deliverables h3{font-size:22px;line-height:1.35;letter-spacing:-.025em;margin-bottom:10px}
.service-deliverables p{font-size:16px;line-height:1.85}
.service-topics{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:27px}
.service-topics span{font-size:12px;color:#95adbe}
.page-cta{padding-block:120px 130px}
.page-cta .micro{color:#819bab;margin-bottom:26px}
.page-cta h2{font-size:clamp(54px,5.6vw,88px);letter-spacing:-.05em;line-height:1.12;margin-bottom:25px}
.page-cta>p:not(.micro){font-size:18px;line-height:1.9;max-width:660px;margin-bottom:34px}
.about-mission{display:grid;grid-template-columns:1fr 2fr;gap:100px;padding-block:105px 120px}
.about-mission>.micro{padding-top:12px;color:#819caf}
.about-mission h2{font-size:clamp(52px,5vw,80px);letter-spacing:-.05em;line-height:1.12;margin-bottom:36px}
.about-mission p:not(.micro){font-size:20px;line-height:1.9;max-width:730px;margin-bottom:25px}
.about-mission .text-link{margin-top:10px}
.about-principles{background:#0b141c;padding:95px 0 110px;border-block:1px solid #acc4d51a}
.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:100px;margin-bottom:65px}
.section-heading .micro{padding-top:9px;color:#859eb0}
.section-heading h2{font-size:54px;line-height:1.12;letter-spacing:-.045em;width:66.66%}
.principle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:45px}
.principle-grid article,.approach-grid article{border-top:1px solid #c7d9e52a;padding-top:24px}
.principle-grid .micro,.approach-grid .micro{color:#7e9aaf}
.principle-grid h3{font-size:26px;letter-spacing:-.035em;line-height:1.28;margin:35px 0 22px}
.principle-grid p,.approach-grid p{font-size:16px;line-height:1.9}
.about-approach{padding-top:100px}
.approach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:80px}
.approach-grid h3{font-size:37px;letter-spacing:-.035em;margin:30px 0 24px}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;padding-bottom:120px;padding-top:20px;align-items:start}
.contact-info{padding-top:22px}
.contact-info>.micro{color:#829bb0;margin-bottom:23px}
.contact-email{display:inline-block;font-size:clamp(23px,2.5vw,37px);letter-spacing:-.03em;line-height:1.4;border-bottom:1px solid #a4c2d34d;padding-bottom:12px}
.contact-info dl{margin-top:50px}
.contact-info dl>div{margin-bottom:32px}
.contact-info dt{font-size:12px;color:#7891a5;margin-bottom:8px;text-transform:uppercase;letter-spacing:.045em}
.contact-info dd{font-size:16px;line-height:1.85;color:#afbec9;margin:0}
.contact-form-panel{padding:40px;background:#0c161f;border:1px solid #b5cedc21}
.form-intro{font-size:20px;color:#d1dde5;margin-bottom:35px;letter-spacing:-.025em}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.form-field{margin-bottom:24px}
.form-field label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;line-height:1.7;color:#d1dce4;margin-bottom:10px}
.form-field label span{color:#7e93a2;font-size:12px}
.form-field input,.form-field textarea,.form-field select{width:100%;font:16px/1.6 var(--font);padding:13px 14px;background:#080f16;color:#e4edf4;border:1px solid #a0bbcf36;border-radius:0;outline:none;transition:border .2s;color-scheme:dark}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#b3d5ed;box-shadow:0 0 0 1px #b3d5ed}
.form-field textarea{resize:vertical;min-height:150px}
.form-field ::placeholder{color:#687f91}
.form-field [aria-invalid="true"]{border-color:#d59b8b}
.field-error{font-size:13px;color:#e9b7a9;margin-top:7px;line-height:1.6}
.form-note{font-size:13px;line-height:1.85;color:#8e9eab;margin-bottom:27px}
.form-note a{color:#ccdce8;text-decoration:underline;text-underline-offset:3px}
.message-preview .micro{color:#8daabd;margin-bottom:25px}
.message-preview h2{font-size:42px;letter-spacing:-.045em;line-height:1.12;margin-bottom:25px;outline:none}
.message-preview>p:not(.micro){font-size:16px;line-height:1.85}
.message-recipient{margin-top:25px;padding:13px 0;border-top:1px solid #adc5d532;font-size:14px;color:#c0ced8}
.message-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:15px/1.8 var(--font);color:#b8c8d4;background:#080f16;padding:24px;max-height:380px;overflow:auto;border:1px solid #adc5d51a}
.message-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin:25px 0 16px}
.text-button{border:0;border-bottom:1px solid #adc5d55c;background:none;color:#c8d8e4;font-size:13px;padding:6px 0}
#copy-status{font-size:13px;color:#9ab3c6;min-height:24px;margin-top:12px}
.legal-page .plain-hero .interior-title{padding-bottom:75px}
.legal-page .plain-hero h1{font-size:clamp(56px,5.8vw,92px)}
.legal-layout{display:grid;grid-template-columns:290px 1fr;gap:100px;padding-bottom:130px;align-items:start}
.legal-index{position:sticky;top:45px;border-top:1px solid #acc6d632;padding-top:24px;max-height:calc(100vh - 90px);overflow:auto}
.legal-index .micro{color:#7f99ac;margin-bottom:20px}
.legal-index a{display:block;font-size:13px;line-height:1.65;color:#8da1b0;margin-bottom:13px;padding-right:10px}
.legal-index a:hover,.legal-index a[aria-current="location"]{color:#e7f0f7}
.legal-copy{max-width:870px}
.legal-section{padding:32px 0 36px;border-top:1px solid #acc6d632;scroll-margin-top:40px}
.legal-section h2{font-size:29px;letter-spacing:-.03em;line-height:1.3;margin-bottom:24px}
.legal-section h3{font-size:18px;line-height:1.5;margin:23px 0 10px}
.legal-section p,.legal-section li,.legal-id{font-size:16px;line-height:1.9;color:#a5b5c1}
.legal-section p+p{margin-top:16px}
.legal-section ul{padding-left:21px;margin:15px 0 22px}
.legal-section a{color:#d0e0ed;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-id span{display:block}
.legal-id b{color:#d4e1eb;font-weight:500}
.not-found{padding-block:120px 150px}
.not-found h1{font-size:90px;letter-spacing:-.05em;margin:25px 0}
.not-found p:not(.micro){margin-bottom:30px;font-size:18px}
@media(max-width:1250px){.footer-grid{gap:35px}.site-nav{gap:35px}.site-nav nav{gap:25px;margin-left:0}.contact-layout{gap:55px}.contact-form-panel{padding:30px}.service-detail{gap:75px}.legal-layout{gap:60px;grid-template-columns:250px 1fr}.interior-title h1{font-size:68px}.interior-lead{max-width:560px}.principle-grid{gap:28px}.principle-grid h3{font-size:24px}.about-mission{gap:65px}}
@media(prefers-reduced-motion:reduce){.service-index{scroll-behavior:auto}}

/* One centered content frame across every route and viewport. */
.celatris-site{--content-max:1680px;--content-width:88%}
.celatris-site .wrap,.celatris-site .flow-chapter{width:var(--content-width);max-width:var(--content-max);margin-inline:auto}
