/* Contact begins with the working form. No introductory scroll is required. */
.contact-folio{--ct-paper:#e3edf0;--ct-ink:#193e53;max-width:1800px;margin:auto;padding:126px var(--side) 64px;background:radial-gradient(ellipse at 90% 25%,#285d7640,transparent 50%);color:#cce2ef}
.contact-folio h1,.contact-folio h2,.contact-folio h3{font-family:var(--ui);font-weight:400}
.ct-composition{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(0,1fr);gap:clamp(38px,5vw,76px);align-items:start}
.ct-message{position:relative;padding:clamp(26px,2.8vw,38px);background:var(--ct-paper);color:var(--ct-ink);border:1px solid #f2fbffa6;scroll-margin-top:25px;box-shadow:0 25px 75px #0015221f}
.ct-message:before{content:'';position:absolute;left:-1px;right:-1px;top:-1px;height:3px;background:linear-gradient(90deg,#6fa9c8,#c2dce8)}
.ct-form-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.ct-form-heading h1{font-size:40px;line-height:1.1;letter-spacing:-.055em;margin:0;text-wrap:nowrap}
.ct-form-heading>p{font-size:10px;line-height:1.5;color:#4c6f84;margin:0;white-space:nowrap}
.ct-form-heading>p>span{color:#3c7d9f;margin-right:4px;font-size:13px}
.ct-form-intro{font-size:13px;line-height:1.6;color:#466a80;margin:10px 0 18px;padding-bottom:14px;border-bottom:1px solid #8cabbe55}
.contact-folio .ct-form .layout-form-fields-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 26px}
.contact-folio .ct-form .layout-field-group-subject,.contact-folio .ct-form .layout-field-group-message,.contact-folio .ct-form .layout-field-type-submit{grid-column:1/-1}
.contact-folio .ct-form .layout-field-type-recaptcha_v3{display:none}
.contact-folio .ct-form label{font-size:12px;line-height:1.5;font-weight:400;letter-spacing:0;color:#466d83;margin:0 0 6px;transition:color .2s}
.contact-folio .ct-form .layout-field-required label:after{content:' *';color:#3f7999}
.contact-folio .ct-form input,.contact-folio .ct-form textarea{font-size:16px;line-height:1.5;border:1px solid transparent;border-bottom-color:#8aa8ba99;background:#f8fcfd66;border-radius:0;color:#173f55;padding:9px 12px;min-height:44px;transition:background .25s,border-color .25s,box-shadow .25s}
.contact-folio .ct-form textarea{height:80px;min-height:80px;resize:vertical}
.contact-folio .ct-form input:hover,.contact-folio .ct-form textarea:hover{background:#f7fcfe;border-bottom-color:#5b8ba5}
.contact-folio .ct-form input:focus,.contact-folio .ct-form textarea:focus{outline:2px solid #5a9cbd;outline-offset:2px;background:#f9fdff;border-color:#4b8eaf;box-shadow:0 4px 18px #65899d0d}
.contact-folio .ct-form .layout-field-group:focus-within label{color:#164c6a}
.contact-folio .ct-form input:user-invalid,.contact-folio .ct-form textarea:user-invalid{border-color:#a05b52;background:#fff8f5}
.contact-folio .ct-form [type=submit]{display:flex;justify-content:space-between;align-items:center;gap:25px;width:100%;min-height:50px;padding:11px 20px;margin:0;border:1px solid #234f68;border-radius:0;background:#234f68;color:#edf7fc;font-size:12px;letter-spacing:.035em;text-align:left;transition:color .35s,border-color .35s}
.contact-folio .ct-form [type=submit]:before{background:#c4deeb}
.contact-folio .ct-form [type=submit]:hover,.contact-folio .ct-form [type=submit]:focus-visible{color:#153e56;border-color:#699ab6}
.contact-folio .ct-form [type=submit]:focus-visible{outline:2px solid #438cb4;outline-offset:4px}
.contact-folio .ct-form [type=submit]>svg{width:22px;height:22px;flex:none;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.contact-folio .ct-form [type=submit]:hover>svg{transform:translateX(4px)}
.contact-folio .ct-form [type=submit]:disabled{opacity:.65;cursor:wait}
.continuum-site .ct-form .form-preview-note{font-size:10px;line-height:1.6;color:#4d7085;margin:14px 0 0;max-width:none}
.contact-folio .ct-form .contact-feedback{display:flex;align-items:flex-start;gap:15px;margin:20px 0 0;padding:18px;border:1px solid #88b2c5;border-left:3px solid #43819e;border-radius:0;background:#d4e6ee;color:#244f65}
.ct-form .contact-feedback__content{display:flex;flex-direction:column;gap:6px;min-width:0}
.ct-form .contact-feedback__title{font-size:16px;line-height:1.35;font-weight:500;color:#204d64}
.ct-form .contact-feedback__message{font-size:13px;line-height:1.65;color:#496e82}
.ct-form .contact-feedback__alternative{font-size:12px;line-height:1.5;color:#1c5d7d;text-decoration:underline;text-underline-offset:4px;margin-top:5px;width:fit-content}
.contact-folio .ct-form .contact-feedback[data-state=error]{background:#f4e7e1;border-color:#c5aaa0;border-left-color:#9c5b48;color:#754432}
.ct-form .contact-feedback[data-state=error] .contact-feedback__title{color:#754432}
.ct-form .contact-feedback[data-state=error] .contact-feedback__message{color:#795f54}
.ct-form .contact-feedback[data-state=pending] .contact-feedback__icon{width:18px;height:18px;margin-top:3px;border:1.5px solid #7ca5b966;border-top-color:#306782;border-radius:50%;animation:ct-pending .9s linear infinite}
@keyframes ct-pending{to{transform:rotate(360deg)}}
/* Direct contact sits next to the form; the original photograph supports the
   consultation option instead of creating a separate page introduction. */
.ct-connections{min-width:0}
.ct-direct{padding:32px 0 0}
.ct-connect-title{font-size:40px;line-height:1.1;letter-spacing:-.05em;color:#d6e9f3;margin:0 0 26px;text-wrap:balance}
.ct-direct h3{font-size:10px;line-height:1.5;letter-spacing:.015em;color:#8eb4ca;margin:0 0 10px}
.ct-email>a{position:relative;display:block;width:fit-content;max-width:100%;font-size:clamp(16px,1.4vw,22px);line-height:1.5;letter-spacing:-.02em;color:#c4dfef;overflow-wrap:anywhere;padding:0 27px 9px 0;border-bottom:1px solid #99bfd542;transition:color .25s}
.ct-email>a>svg{position:absolute;right:0;bottom:15px;width:18px;height:18px;transition:transform .35s}
.ct-email>a:hover,.ct-email>a:focus-visible{color:#f0faff}.ct-email>a:hover>svg{transform:translateX(3px)}
.ct-address{margin-top:22px}
.ct-address address{font-style:normal;font-size:25px;line-height:1.35;letter-spacing:-.025em;color:#b8d7e9;max-width:340px;text-wrap:balance}
.ct-consultation{margin-top:26px}
.ct-photograph{position:relative;overflow:hidden;margin:0;width:100%;max-width:496px;aspect-ratio:496/271;border:1px solid #b4d7e744;background:#37627b}
.ct-photograph img{width:100%;height:100%;object-fit:cover;filter:saturate(.65)}
.ct-photograph:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#143c5110,#113d532b);pointer-events:none}
.ct-consultation-copy{position:relative;z-index:1;margin:-88px 16px 0 -16px;padding:24px 25px 18px;background:linear-gradient(135deg,#c0dfed26,#89bad31c);border:1px solid #c3e3f352;box-shadow:inset 0 1px #e2f4fc24,0 18px 45px #051d2b26;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px)}
.ct-consultation-copy h2{font-size:30px;line-height:1.1;letter-spacing:-.04em;color:#d3e9f5;max-width:350px;text-wrap:balance;margin:0 0 18px}
.ct-schedule{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:12px;border-top:1px solid #afd3e45c;color:#d2eaf7;transition:color .25s}
.ct-schedule>span{font-size:10px;letter-spacing:.04em;line-height:1.5}
.ct-schedule>i{display:grid;place-items:center;width:36px;height:36px;border:1px solid #b4d6e666;border-radius:50%;background:#b4d8ec14;transition:background .35s,border-color .35s}
.ct-schedule svg{width:19px;height:19px;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.ct-schedule:hover,.ct-schedule:focus-visible{color:#f1fbff}
.ct-schedule:hover>i{background:#c6e5f044;border-color:#d4eff9}
.ct-schedule:hover svg{transform:translateX(4px)}
@media(min-width:1600px){.ct-composition{gap:85px}.ct-message{padding:38px 44px}.ct-direct{padding-top:38px}}
@media(max-width:1100px) and (min-width:761px){.contact-folio{padding-top:120px}.ct-composition{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:34px}.ct-message{padding:28px}.ct-connect-title{font-size:34px}.ct-direct{padding-top:28px}.ct-email>a{font-size:16px}.ct-address address{font-size:23px}.ct-consultation-copy{margin-left:-12px;margin-right:8px;padding:22px}.ct-consultation-copy h2{font-size:27px}}
/* Common laptop heights keep the complete form, including Submit, in view. */
@media(min-width:761px) and (max-height:800px){.contact-folio{padding-top:112px;padding-bottom:38px}.ct-message{padding:24px 28px}.ct-form-heading h1{font-size:36px}.ct-form-intro{margin:9px 0 16px;padding-bottom:12px}.contact-folio .ct-form .layout-form-fields-wrapper{row-gap:13px}.contact-folio .ct-form textarea{height:76px;min-height:76px}.ct-direct{padding-top:24px}.ct-consultation{margin-top:22px}}
@media(max-width:760px){.contact-folio{padding:104px 12px 45px;background:radial-gradient(ellipse at 100% 0%,#285d7655,transparent 40%)}.ct-composition{display:flex;flex-direction:column;gap:38px}.ct-message{padding:20px;width:100%;scroll-margin-top:20px}.ct-form-heading{gap:15px}.ct-form-heading h1{font-size:32px;line-height:1.1}.ct-form-heading>p{font-size:10px}.ct-form-intro{font-size:12px;line-height:1.5;margin:8px 0 14px;padding:0;border:0}.contact-folio .ct-form .layout-form-fields-wrapper{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.contact-folio .ct-form .layout-field-group-email,.contact-folio .ct-form .layout-field-group-phone{grid-column:1/-1}.contact-folio .ct-form label{font-size:11px;line-height:1.5;margin-bottom:5px}.contact-folio .ct-form input{padding:9px 10px;min-height:44px}.contact-folio .ct-form textarea{height:72px;min-height:72px}.contact-folio .ct-form [type=submit]{min-height:46px;padding:10px 16px;font-size:11px}.continuum-site .ct-form .form-preview-note{font-size:10px;line-height:1.6;margin-top:12px}.ct-connections{width:100%;padding:0 13px}.ct-direct{padding:0}.ct-connect-title{font-size:35px;margin-bottom:25px}.ct-email>a{font-size:18px}.ct-address{margin-top:25px}.ct-address address{font-size:27px;max-width:340px}.ct-consultation{margin-top:28px}.ct-consultation-copy{margin:-55px 8px 0 -8px;padding:24px}.ct-consultation-copy h2{font-size:29px;max-width:350px}.ct-schedule{padding-top:14px}.ct-schedule>i{width:40px;height:40px}.contact-folio .ct-form .contact-feedback{padding:16px;gap:12px}.ct-form .contact-feedback__title{font-size:15px}.ct-form .contact-feedback__message{font-size:12px}}
@media(max-width:340px){.contact-folio{padding-inline:10px}.ct-message{padding:18px 16px}.ct-form-heading{gap:10px}.ct-form-heading h1{font-size:29px}.ct-form-heading>p{font-size:9px}.ct-connections{padding:0 13px}.ct-connect-title{font-size:32px}.ct-email>a{font-size:16px}.ct-address address{font-size:25px}.ct-consultation-copy h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.ct-schedule,.ct-schedule i,.ct-schedule svg,.ct-email>a,.ct-email>a>svg,.contact-folio .ct-form label,.contact-folio .ct-form input,.contact-folio .ct-form textarea,.contact-folio .ct-form [type=submit],.contact-folio .ct-form [type=submit]:before,.contact-folio .ct-form [type=submit]>svg{transition:none!important}.ct-form .contact-feedback[data-state=pending] .contact-feedback__icon{animation:none}}

/* RK-14: keep the form first; offer consultation without personal contact data. */
.continuum-site[data-page="/contact-us/"] .ct-connections{padding-top:26px}
.continuum-site[data-page="/contact-us/"] .ct-connect-title{margin:0 0 22px}
.continuum-site[data-page="/contact-us/"] .ct-consultation{margin:0}
.continuum-site[data-page="/contact-us/"] .ct-photograph{width:100%;max-width:none;aspect-ratio:3/2;border:0}
.continuum-site[data-page="/contact-us/"] .ct-photograph img{display:block;width:100%;max-width:none;height:100%;object-fit:cover;object-position:50% 50%}
@media(min-width:761px) and (max-height:800px){.continuum-site[data-page="/contact-us/"] .ct-connections{padding-top:24px}.continuum-site[data-page="/contact-us/"] .ct-photograph{aspect-ratio:1.6}}
@media(max-width:760px){.continuum-site[data-page="/contact-us/"] .ct-connections{padding-top:0}.continuum-site[data-page="/contact-us/"] .ct-connect-title{font-size:29px;margin-bottom:20px}.continuum-site[data-page="/contact-us/"] .ct-photograph{aspect-ratio:1.6}}
/* A compact inset ribbon shares the form edge without extending its silhouette. */
.continuum-site .ct-protection{position:absolute;z-index:1;right:-1px;bottom:-1px;display:inline-flex;align-items:center;gap:5px;margin:0;padding:2px 8px;border:1px solid #87adbf70;border-radius:6px 0 0 0;background:linear-gradient(135deg,#244e61,#17394c);box-shadow:inset 0 1px #dcebf018;color:#e6f3f8;font-size:10px;font-weight:500;line-height:1.2;white-space:nowrap;text-decoration:none;transition:background .2s,border-color .2s}
.continuum-site .ct-protection>svg{flex:none;width:12px;height:12px;stroke:#b7d8e6;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.continuum-site .ct-protection-prefix{margin-right:3px;font-size:8px;font-weight:400;color:#b9d0dc}
.continuum-site .ct-protection:hover{background:#28556b;border-color:#a9cbdc;color:#fff}
.continuum-site .ct-protection:focus-visible{outline:2px solid #438cb4;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.continuum-site .ct-protection{transition:none}}

/* Desktop columns share one row: the photograph absorbs available height. */
@media(min-width:761px){
 .continuum-site[data-page="/contact-us/"] .ct-composition{align-items:stretch}
 .continuum-site[data-page="/contact-us/"] .ct-connections{position:relative;display:grid;grid-template-rows:minmax(0,1fr);min-height:0;padding-top:0}
 .continuum-site[data-page="/contact-us/"] .ct-connect-title{position:absolute;z-index:2;top:27px;left:27px;right:27px;margin:0;font-size:clamp(24px,2.5vw,36px);line-height:1.15;text-align:left;text-wrap:balance;color:#eff8fc;text-shadow:0 2px 16px #072b3c70;pointer-events:none}
 .continuum-site[data-page="/contact-us/"] .ct-consultation{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0}
 .continuum-site[data-page="/contact-us/"] .ct-photograph{min-height:0;aspect-ratio:auto}
 .continuum-site[data-page="/contact-us/"] .ct-photograph img{position:absolute;inset:0;object-position:50% 50%}
 .continuum-site[data-page="/contact-us/"] .ct-photograph:after{background:linear-gradient(180deg,#0a2c4080,transparent 36%,#113d531c)}
}

/* Match the taller desktop frame with a native launch photo, without stretching. */
.continuum-site[data-page="/contact-us/"] .ct-photograph picture{display:block;width:100%;height:100%}
@media(min-width:761px){.continuum-site[data-page="/contact-us/"] .ct-photograph img{object-fit:cover;object-position:58% 50%;filter:saturate(.82)}}

.continuum-site[data-page="/contact-us/"] .ct-photograph .ct-loop-video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;z-index:0}
.continuum-site[data-page="/contact-us/"] .ct-photograph:after{z-index:1}

@media(min-width:1101px){.continuum-site[data-page="/contact-us/"] .ct-photograph .ct-loop-video{object-position:40% 50%}}
@media(min-width:761px) and (max-width:1100px){.continuum-site[data-page="/contact-us/"] .ct-photograph .ct-loop-video{object-position:62% 50%}}

@media(min-width:761px) and (max-width:1100px){.continuum-site[data-page="/contact-us/"] .ct-connect-title{top:15px}}

/* Native portrait cinemagraph: copy uses quiet sky at wide sizes. */
.continuum-site[data-page="/contact-us/"] .ct-consultation{position:relative;isolation:isolate;display:block;min-height:0;overflow:hidden}
.continuum-site[data-page="/contact-us/"] .ct-connect-title{position:absolute;z-index:3;top:22px;left:23px;right:23px;padding:0;margin:0;color:#f0f6f8;font-size:14px;font-weight:500;line-height:1.12;letter-spacing:.01em;text-shadow:0 2px 20px #0b2b4140;pointer-events:none}
.continuum-site[data-page="/contact-us/"] .ct-photograph{position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto}
.continuum-site[data-page="/contact-us/"] .ct-photograph picture{position:absolute;inset:0;z-index:0}
.continuum-site[data-page="/contact-us/"] .ct-photograph img{object-fit:cover;object-position:50% 50%;filter:none}
.continuum-site[data-page="/contact-us/"] .ct-photograph .ct-loop-video{z-index:1;object-fit:cover;object-position:50% 50%}
.continuum-site[data-page="/contact-us/"] .ct-photograph:after{z-index:2;background:linear-gradient(180deg,#103246a6,transparent 37%)}
.continuum-site[data-page="/contact-us/"] .ct-consultation-copy{position:absolute;z-index:3;inset:49px 23px auto;margin:0;display:flex;flex-direction:column;gap:13px;padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.continuum-site[data-page="/contact-us/"] .ct-consultation-copy h2{max-width:15ch;margin:0;font-size:25px;line-height:1.15;text-wrap:initial}
.continuum-site[data-page="/contact-us/"] .ct-schedule{width:fit-content;gap:10px;margin:0;padding:7px 10px;border:1px solid #def1f37a;border-radius:30px;background:#163d505c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.continuum-site[data-page="/contact-us/"] .ct-schedule>i{width:22px;height:22px;flex:none;border:0;background:none}
.continuum-site[data-page="/contact-us/"] .ct-schedule>span{font-size:9px}
@media(min-width:761px){.continuum-site[data-page="/contact-us/"] .ct-composition{grid-template-columns:minmax(0,1fr) clamp(280px,28vw,350px)}}
/* Narrower panels keep the action beneath the footage, clear of the rocket. */
@media(max-width:1199px){
 .continuum-site[data-page="/contact-us/"] .ct-consultation{display:flex;flex-direction:column}
 .continuum-site[data-page="/contact-us/"] .ct-photograph{position:relative;inset:auto;flex:1;height:auto}
 .continuum-site[data-page="/contact-us/"] .ct-consultation-copy{position:relative;inset:auto;flex:none;padding:20px 22px;gap:15px;background:linear-gradient(135deg,#143749,#183c4b);border-top:1px solid #def0f42a}
 .continuum-site[data-page="/contact-us/"] .ct-consultation-copy h2{max-width:none;font-size:24px}
 .continuum-site[data-page="/contact-us/"] .ct-schedule{width:100%;justify-content:space-between;padding:10px 0 0;border:0;border-top:1px solid #afd3e45c;border-radius:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none}
 .continuum-site[data-page="/contact-us/"] .ct-schedule>i{width:30px;height:30px;border:1px solid #b4d6e666}
}
@media(max-width:760px){
 .continuum-site[data-page="/contact-us/"] .ct-consultation{width:100%;max-width:320px;aspect-ratio:auto;margin-inline:auto}
 .continuum-site[data-page="/contact-us/"] .ct-photograph{flex:none;aspect-ratio:9/14}
}
