
body.contact-page{background:#fff}
.contact-page main{background:#fff;color:#091225}
.contact-page .contact-hero{padding:48px 0 58px;background:radial-gradient(circle at 80% 12%,rgba(85,52,255,.07),transparent 30%),linear-gradient(180deg,#fff,#f9fbff)}
.contact-page .contact-kicker{font-size:.78rem;font-weight:800;letter-spacing:.16em;color:#563dff;text-transform:uppercase}
.contact-page .contact-title{font-size:clamp(3.1rem,5vw,5rem);line-height:1.01;letter-spacing:-.05em;margin:10px 0 14px}
.contact-page .contact-lead{font-size:1.06rem;color:#56647a;max-width:700px;line-height:1.65;margin:0}
.contact-page .contact-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:36px;margin-top:34px;align-items:stretch}
.contact-page .contact-info{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-page .contact-card{padding:22px;border:1px solid #e0e8f3;border-radius:16px;background:#fff;box-shadow:0 8px 26px rgba(35,64,112,.05)}
.contact-page .contact-icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid #d6dfff;border-radius:12px;color:#563dff;font-size:1.25rem;margin-bottom:14px}
.contact-page .contact-card h3{font-size:.9rem;margin:0 0 6px}
.contact-page .contact-card p,.contact-page .contact-card a{font-size:.82rem;color:#5a687b;line-height:1.5;margin:0;text-decoration:none}
.contact-page .contact-form{padding:28px;border:1px solid #dfe7f2;border-radius:19px;background:#fff;box-shadow:0 18px 48px rgba(30,58,108,.09)}
.contact-page .contact-form h2{font-size:1.45rem;margin:0 0 5px}.contact-page .contact-form>p{color:#637084;font-size:.85rem;margin:0 0 20px}
.contact-page .contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-page .contact-field{display:flex;flex-direction:column;gap:7px}.contact-page .contact-full{grid-column:1/-1}
.contact-page label{font-size:.76rem;font-weight:750;color:#26344b}
.contact-page input,.contact-page textarea,.contact-page select{width:100%;border:1px solid #d9e2ee;border-radius:11px;background:#fbfcff;padding:12px 13px;font:inherit;color:#111a2c;outline:none}
.contact-page textarea{min-height:130px;resize:vertical}
.contact-page input:focus,.contact-page textarea:focus,.contact-page select:focus{border-color:#765cff;box-shadow:0 0 0 3px rgba(118,92,255,.10)}
.contact-page .contact-consent{display:flex;gap:9px;align-items:flex-start;margin:15px 0 18px;color:#68758a;font-size:.73rem;line-height:1.4}.contact-page .contact-consent input{width:auto;margin-top:2px}
.contact-page .contact-submit{width:100%;justify-content:center}
.contact-page .contact-note{margin-top:13px;text-align:center;font-size:.7rem;color:#7a8798}
.contact-page .contact-cta{padding:0 0 56px}
.contact-page .contact-cta-box{display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;padding:29px 31px;border-radius:18px;color:#fff;background:radial-gradient(circle at 90% 45%,rgba(159,79,255,.52),transparent 25%),linear-gradient(100deg,#1738f0,#4d20d8 58%,#07143a)}
.contact-page .contact-cta h2{font-size:1.48rem;margin:0 0 5px}.contact-page .contact-cta p{margin:0;color:#e5e8ff;font-size:.86rem}.contact-page .contact-actions{display:flex;gap:11px;flex-wrap:wrap}

/* Correct rendering for Quote CTA on Contact only. Global rollout comes later. */
.contact-page .site-header .btn.btn-outline,
.contact-page header.site-header .btn.btn-outline{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:0 18px!important;border:1px solid #b9c6dc!important;border-radius:10px!important;background:#fff!important;color:#17233a!important;line-height:1!important;white-space:nowrap!important;text-decoration:none!important;box-shadow:none!important}

@media(max-width:950px){.contact-page .contact-grid{grid-template-columns:1fr}}
@media(max-width:680px){.contact-page .contact-info,.contact-page .contact-fields{grid-template-columns:1fr}.contact-page .contact-full{grid-column:auto}.contact-page .contact-cta-box{grid-template-columns:1fr}.contact-page .contact-actions{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:440px){.contact-page .contact-actions{grid-template-columns:1fr}}

/* Contact V2 — restore approved office hero */
.contact-page .contact-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);
  gap:36px;
  align-items:center;
}
.contact-page .contact-hero-copy{min-width:0}
.contact-page .contact-office{
  min-width:0;
  border-radius:20px;
  overflow:hidden;
  border:1px solid #e0e8f3;
  background:#fff;
  box-shadow:0 20px 55px rgba(29,61,111,.11);
}
.contact-page .contact-office img{
  display:block;
  width:100%;
  height:390px;
  object-fit:cover;
  object-position:center;
}
@media(max-width:950px){
  .contact-page .contact-hero-grid{grid-template-columns:1fr}
  .contact-page .contact-office img{height:340px}
}
@media(max-width:600px){
  .contact-page .contact-office img{height:260px}
}
