/* Shared Atlas-inspired palette, no new animation or layout system. */
[hidden]{display:none!important}
body{overflow-wrap:break-word}
.wrap,header{min-width:0}
a,button,summary{touch-action:manipulation}
button:disabled{cursor:wait;opacity:.75}
.small-cta,nav a,.text-link,.services a,footer a,.footer-links a,.link-button{min-height:44px;display:inline-flex;align-items:center}
nav a{padding:4px 0}.small-cta{white-space:nowrap}
.hero h1{font-size:clamp(38px,4.3vw,64px)}
.hero .actions{flex-wrap:wrap;gap:12px 24px}.hero .button{min-height:52px}
.eyebrow{font-size:11px;letter-spacing:1.2px}
.section-head>p,.show-copy>p:not(.eyebrow),.steps p,.personal p,.contact-grid>div>p:not(.eyebrow),details p{font-size:15px}
.services p{font-size:14px;min-height:150px}.services a{font-size:12px;gap:12px}
.tags span{font-size:10px}.tags{min-height:58px}
.micro,.contact-grid>div>p.contact-note{font-size:13px}.show-copy ul{font-size:14px}
.section-head{align-items:flex-start}.section-head>p{padding-top:30px}
.contact form h3{margin-bottom:14px}
label{font-size:14px;margin-top:18px}
input,select,textarea{font-size:16px;min-height:46px;max-width:100%}
input[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:#ffb7ac}
.field-error{font-size:14px;color:#ffb7ac;margin-top:6px}
.error-summary{border:1px solid #ffb7ac;border-radius:6px;padding:14px;color:#ffcbc3;margin:16px 0}
.error-summary ul{padding-left:20px;margin:8px 0 0}
.error-summary a{display:inline-block;padding:5px 0;text-decoration:underline}
.form-note{font-size:13px;margin-top:10px}
.form-note a,.legal-page a:not(.button){text-decoration:underline;text-underline-offset:3px}
#form-status,#copy-status{font-size:14px;color:#a5e6f2;margin-top:12px}
.email-preview{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}
.email-preview h4{font-size:18px;margin:0;line-height:1.4}
.preview-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
.contact .preview-actions .button{width:auto;margin:0;font-size:13px;white-space:normal}
.secondary-button{background:#14243b;color:var(--ink);border:1px solid #6c839f;padding:12px 16px;border-radius:6px;min-height:46px;cursor:pointer}
.secondary-button:hover{background:#20344d}
.link-button{background:none;border:0;color:var(--ink);font-size:14px;text-decoration:underline;cursor:pointer;padding:8px 0}
.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px;border-top:1px solid var(--line);padding-top:12px;padding-bottom:24px;font-size:14px}
footer>span,footer small,footer>a:not(.logo){font-size:13px}
.mobile-cta{display:none}
.legal-page{max-width:850px;padding-top:55px;padding-bottom:70px}
.legal-page h1{font-size:clamp(36px,6vw,52px);line-height:1.2;margin-bottom:24px}
.legal-page h2{font-size:24px;letter-spacing:-.02em;margin:32px 0 12px;line-height:1.3}
.legal-page p,.legal-page li{font-size:16px;color:var(--muted);margin-bottom:14px;line-height:1.75}
.legal-page .eyebrow{color:var(--orange);font-size:12px}.legal-page .button{margin:18px 0}
.not-found{min-height:65vh}.not-found .code{font:700 96px Manrope,Arial,sans-serif;color:var(--orange);line-height:1.2}
dialog{background:#111e33;color:var(--ink);border:1px solid #49617d;border-radius:12px;padding:28px;max-width:540px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow:auto}
dialog::backdrop{background:#030a14bb}dialog h2{font-size:28px;margin-bottom:16px}
dialog p{font-size:15px;line-height:1.65;margin:12px 0}dialog a{text-decoration:underline}
.consent-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.consent-actions .secondary-button{flex:1;min-width:180px}
.consent-status{color:#a5e6f2}
:focus-visible{outline:3px solid #70d9ef;outline-offset:4px}
.error-summary:focus,#preview-heading:focus{outline:2px solid #70d9ef;outline-offset:5px}
@media(max-width:1050px){.services p{min-height:115px}.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero h1{font-size:44px}.section-head{gap:28px}.trust-strip{gap:16px}.trust-strip>span:first-child{margin-right:0}.contact-grid{gap:30px}.tags{min-height:35px}}
@media(max-width:700px){
 html{scroll-padding-top:20px}body{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
 .hero{grid-template-columns:minmax(0,1fr);padding-top:26px}.hero h1{font-size:clamp(34px,9.6vw,48px);line-height:1.13}
 .hero .eyebrow{font-size:10px;letter-spacing:.7px}.hero .lead{font-size:16px;margin-top:18px}
 .hero .actions{margin-top:22px}.hero .button{width:100%;justify-content:space-between;font-size:14px;padding:14px 18px}
 .hero .micro{font-size:12px}.hero-art{margin-top:0;min-height:0}.small-cta{font-size:12px;padding:8px 10px}
 .section-head>p{padding-top:0}.services{grid-template-columns:minmax(0,1fr)}.services article{padding:24px}
 .services h3{font-size:23px;margin-top:18px}.services p{min-height:0;font-size:15px}
 .services a{font-size:14px;width:100%;padding-top:14px;padding-bottom:8px;justify-content:space-between}
 .tags{min-height:0;margin:18px 0}.tags span{font-size:11px}
 .showcase,.contact-grid,.faq-section{grid-template-columns:minmax(0,1fr)}
 .personal>div{min-width:0;flex-basis:100%}.personal a{margin-left:0;white-space:normal}
 .steps{grid-template-columns:minmax(0,1fr);gap:28px}.steps h3{font-size:22px}.steps p{font-size:15px}
 .contact h2{font-size:42px}.contact form{padding:22px 18px}.contact .email{font-size:21px;overflow-wrap:anywhere}
 .contact .button{padding:14px;font-size:13px;gap:12px}.preview-actions>*{width:100%!important}footer>span{width:auto}
 .mobile-cta{display:flex;position:fixed;left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom,0px));background:#70d9ef;color:#082238;border:1px solid #a5e6f2;min-height:48px;padding:12px 18px;border-radius:7px;justify-content:space-between;align-items:center;font-size:15px;font-weight:700;z-index:20;box-shadow:0 3px 18px #0006}
 .legal-page{padding-top:36px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
