*{box-sizing:border-box}html{scroll-behavior:smooth}:root{--navy:#0C3B6E;--blue:#00AEEF;--sky:#A7D8F0;--slate:#6B7280;--ink:#102A43;--light:#F4F8FB;--line:#D9E6EF;--max:1180px}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);line-height:1.6}a{text-decoration:none;color:inherit}.container{width:min(var(--max),calc(100% - 40px));margin:auto}header{position:relative;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:270px}.navlinks{display:flex;gap:25px;font-weight:750;color:#29465F}.navlinks a{padding:30px 0;position:relative}.navlinks a:hover,.navlinks .active{color:var(--blue)}.navlinks .active:after{content:"";position:absolute;left:0;right:0;bottom:21px;height:2px;background:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:7px;padding:14px 21px;font-weight:800;border:1px solid transparent;white-space:nowrap}.primary{background:var(--blue);color:#fff}.primary:hover{background:#0097d0}.outline{border-color:#7AAAC4;color:var(--navy);background:#fff}.white{background:#fff;color:var(--navy)}.hero{overflow:hidden;background:linear-gradient(115deg,#f8fcff 0%,#edf7fb 52%,#d6ebf4 100%);border-bottom:1px solid var(--line);position:relative}.hero:after{display:none}.hero-grid{min-height:650px;display:grid;grid-template-columns:1.02fr .98fr;gap:25px;align-items:center}.hero-copy{padding:72px 0}.eyebrow,.kicker{font-size:12px;letter-spacing:3.5px;font-weight:900;text-transform:uppercase}.eyebrow{color:var(--navy);margin-bottom:18px}h1{font-size:clamp(46px,6vw,76px);line-height:1.01;letter-spacing:-2.6px;color:var(--navy);margin:0 0 24px}h1 span{color:#278FBD}.lead{font-size:20px;color:#405A70;max-width:650px;margin:0 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions .primary span{margin-left:10px}.proof{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px;padding-top:22px;border-top:1px solid #c9dce6}.proof strong{display:block;color:var(--navy);font-size:13px}.proof span{display:block;color:var(--slate);font-size:12px;margin-top:3px}
.photo-hero{height:590px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:visible}.photo-hero:before{display:none}.hero-photo-frame{width:min(430px,88%);height:560px;border-radius:28px;overflow:hidden;box-shadow:0 28px 70px #0c3b6e30;border:1px solid #ffffffcc;background:#fff;transform:rotate(0deg)}.hero-photo-frame img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center}
.section{padding:92px 0}.challenge{background:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.kicker{color:var(--blue)}h2{font-size:clamp(33px,4vw,49px);line-height:1.08;letter-spacing:-1px;color:var(--navy);margin:12px 0 18px}h3{color:var(--navy);font-size:21px;margin:10px 0}.muted{color:#536B80}.solution-card{border:1px solid var(--line);border-radius:18px;padding:42px;background:#fff;box-shadow:0 18px 55px #0c3b6e12}.quote{font-size:25px;line-height:1.3;font-weight:850;color:var(--navy);margin-top:26px}.quote span{color:var(--blue)}.dark-band{background:var(--navy);color:#eaf5fb}.dark-band h2,.dark-band h3{color:#fff}.band-heading{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:end}.band-heading>p{font-size:17px;color:#c7d9e6}.light-kicker{color:#71d8ff}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:50px;border-top:1px solid #ffffff25}.service-grid>div{padding:27px 25px 12px 0;border-right:1px solid #ffffff25;margin-right:25px}.service-grid>div:last-child{border-right:0;margin-right:0}.service-grid span{font-size:11px;letter-spacing:2px;color:#71d8ff;font-weight:900}.service-grid p{color:#c7d9e6;font-size:14px}.center-head{text-align:center;max-width:760px;margin:auto}.center-head .muted{font-size:17px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:45px}.benefit{padding:28px 22px;border:1px solid var(--line);border-radius:15px;background:#fff}.icon{width:44px;height:44px;border-radius:8px;display:grid;place-items:center;background:#e7f6fc;color:var(--navy);font-size:12px;font-weight:900}.facility{background:var(--light)}.facility-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:center}.text-link{display:inline-block;color:var(--navy);font-weight:850;margin-top:12px}.industry-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.industry-grid span{padding:15px 17px;background:#fff;border:1px solid var(--line);font-weight:750;color:#31516d}.cta{background:linear-gradient(110deg,#0C3B6E,#07598c);color:#fff;padding:75px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{color:#fff}.cta p{color:#dcebf5;font-size:17px;max-width:650px}.cta .kicker{color:#71d8ff}footer{background:#062d52;color:#d9e8f3;padding:46px 0 22px}.footgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:35px}.footlogo{width:245px}.foot-title{color:#fff;font-weight:850;margin-bottom:8px}.footlinks{display:grid;gap:7px;font-size:14px}.footgrid p{margin:7px 0;font-size:14px}.footgrid a:hover{color:#71d8ff}.legal{border-top:1px solid #ffffff22;margin-top:30px;padding-top:18px;font-size:12px;color:#9eb6c8;display:flex;justify-content:space-between}@media(max-width:980px){.navlinks{display:none}.hero-grid,.split,.facility-grid,.band-heading{grid-template-columns:1fr}.hero-copy{padding:62px 0 20px}.hero-visual{height:520px}.photo-hero{height:520px}.hero-photo-frame{height:500px;width:min(430px,92%)}.benefits{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr 1fr}.service-grid>div:nth-child(2){border-right:0;margin-right:0}.cta-inner{flex-direction:column;align-items:flex-start}.footgrid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.container{width:calc(100% - 28px)}.nav{min-height:72px}.logo{width:220px}.hero-copy{padding:50px 0 5px}h1{font-size:45px}.hero-visual{transform:scale(.82);margin:-35px 0;height:460px}.hero-photo-frame{height:520px}.proof{grid-template-columns:1fr}.section{padding:65px 0}.benefits,.service-grid,.industry-grid,.footgrid{grid-template-columns:1fr}.service-grid>div{border-right:0;border-bottom:1px solid #ffffff25;margin-right:0}.service-grid>div:last-child{border-bottom:0}.legal{flex-direction:column;gap:8px}.solution-card{padding:28px}.hero-actions .btn{width:100%}}

/* Titan launch additions */
.offerings{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:45px}
.offering{position:relative;padding:36px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 55px #0c3b6e12}
.offering.featured{border:2px solid #8ccfe9;box-shadow:0 22px 60px #0c3b6e18}
.offering-top{display:flex;align-items:center;justify-content:space-between;gap:15px}
.offering-tag{display:inline-block;padding:6px 10px;border-radius:999px;background:#e7f6fc;color:var(--navy);font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.offering h3{font-size:31px;margin:14px 0 8px}
.offering p{color:#536B80}
.offering ul{margin:24px 0;padding:0;list-style:none;display:grid;gap:11px}
.offering li{position:relative;padding-left:23px;color:#31516d}
.offering li:before{content:'✓';position:absolute;left:0;color:var(--blue);font-weight:900}
.service-note{margin-top:28px;padding:30px 34px;border-radius:18px;background:var(--light);border:1px solid var(--line)}
.service-note h3{font-size:25px;margin-bottom:5px}
.service-note p{color:#536B80;max-width:760px}
.service-note-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:22px}
.service-note-grid span{padding:11px 10px;text-align:center;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:800;color:#31516d}
.form-note{font-size:12px;color:#6B7280;margin:10px 0 0}
.pagehero{padding:85px 0 55px;background:var(--light);border-bottom:1px solid var(--line)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{padding:30px 24px;border:1px solid var(--line);border-radius:15px;background:#fff}
.card p{color:#536B80}
@media(max-width:980px){.offerings{grid-template-columns:1fr}.service-note-grid{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.service-note-grid{grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr}.offering{padding:28px}}

/* Contact form */
.form{width:100%;max-width:620px}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.form label{display:block;color:var(--navy);font-weight:750;font-size:14px}
.form input,.form select,.form textarea{display:block;width:100%;margin-top:6px;padding:12px 13px;border:1px solid #b9ccd9;border-radius:7px;background:#fff;color:var(--ink);font:inherit;font-weight:400}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid #b9e7f7;outline-offset:1px;border-color:var(--blue)}
.form>label{margin-bottom:18px}
.form textarea{min-height:130px;resize:vertical}
.form .btn{margin-top:2px}
@media(max-width:600px){.formgrid{grid-template-columns:1fr;gap:18px}}

/* V4.3: explicit offering and contact-form layout */
.offerings .offering{display:block;width:100%;min-width:0;}
.offerings .offering h3{display:block;}
.offerings .offering ul{display:grid;width:100%;}
.offerings .offering .text-link{display:inline-block;}
.split > .story{min-width:0;width:100%;}
.story .form{display:block;width:100%;max-width:620px;}
.story .formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 18px;}
.story .formgrid label,.story .form > label{display:block;width:100%;}
@media(max-width:600px){.story .formgrid{grid-template-columns:1fr;}}

/* V4.4: real form submission UI */
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;}
.form-frame{position:absolute;width:1px;height:1px;border:0;opacity:0;pointer-events:none;}
.form-note.form-success{color:#1f7a4d;font-weight:750;}
.form-note.form-error{color:#b42318;font-weight:750;}
.form .btn:disabled{opacity:.7;cursor:wait;}

/* Titan contact information */
.nav-contact{color:var(--navy);font-weight:850;font-size:14px;white-space:nowrap}
.nav-contact:hover{color:var(--blue)}
@media(max-width:980px){.nav-contact{display:none}}
