/* Twin Global Contact — simplified direct-contact experience */
.contact-main{overflow:clip;background:#fff}
.contact-page .site-header{background:rgba(255,255,255,.97)}
.contact-hero{position:relative;isolation:isolate;display:grid;min-height:min(780px,calc(100svh - var(--header-height)));align-items:center;overflow:hidden;color:#fff;background:#0d2a3e}
.contact-hero__media{position:absolute;inset:0;z-index:-2;display:block;margin:0}
.contact-hero__media img{width:100%;height:100%;object-fit:cover;object-position:64% center;filter:saturate(.9) contrast(1.03)}
.contact-hero:before{position:absolute;inset:0;z-index:-1;content:"";background:linear-gradient(90deg,rgba(6,25,39,.98) 0%,rgba(7,31,46,.94) 34%,rgba(9,42,63,.67) 59%,rgba(9,42,63,.2) 100%)}
.contact-hero:after{position:absolute;right:-11rem;bottom:-20rem;z-index:-1;width:38rem;height:38rem;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 5rem rgba(255,255,255,.025),0 0 0 10rem rgba(255,255,255,.017);content:""}
.contact-hero__inner{position:relative;z-index:1;padding-block:clamp(5rem,9vw,8rem)}
.contact-hero__copy{max-width:54rem}
.contact-hero__eyebrow{color:#83d9d7}
.contact-hero h1{max-width:52rem;color:#fff;font-size:clamp(2.85rem,5.6vw,5.45rem);line-height:.98;letter-spacing:-.052em}
.contact-hero__lead{max-width:46rem;margin-top:1.35rem;color:rgba(255,255,255,.84);font-size:clamp(1.05rem,1.55vw,1.26rem);line-height:1.58}
.contact-hero__actions{display:flex;flex-wrap:wrap;gap:.8rem 1rem;align-items:center;margin-top:1.8rem}
.contact-hero__phone{display:inline-flex;min-height:3rem;gap:.65rem;align-items:center;padding:.7rem 1rem;border:1px solid rgba(255,255,255,.4);border-radius:999px;color:#fff!important;background:rgba(255,255,255,.08);font-weight:800;backdrop-filter:blur(8px);transition:background .2s,border-color .2s,transform .2s}
.contact-hero__phone:hover{border-color:#fff;background:rgba(255,255,255,.15);transform:translateY(-1px)}
.contact-hero__phone:focus-visible{outline:3px solid rgba(131,217,215,.55);outline-offset:3px}
.contact-hero__phone svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-section{position:relative;padding-block:clamp(4.25rem,7vw,6.4rem)}
.contact-heading{display:grid;max-width:58rem;gap:.55rem;margin-bottom:clamp(2rem,4vw,3.2rem)}
.contact-heading h2{max-width:45rem}
.contact-heading>p:last-child{max-width:48rem;color:var(--color-muted);font-size:var(--text-body-lg)}
.contact-direct{background:#fff}
.contact-direct__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.contact-direct__card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.1rem;padding:clamp(1.4rem,3vw,2rem);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:linear-gradient(145deg,#fff,#f8fbfd);box-shadow:var(--shadow-sm);transition:transform .2s,border-color .2s,box-shadow .2s}
.contact-direct__card:hover{transform:translateY(-2px);border-color:rgba(35,131,197,.36);box-shadow:var(--shadow-md)}
.contact-direct__icon{display:grid;width:3.3rem;height:3.3rem;place-items:center;border-radius:1rem;color:#fff;background:linear-gradient(145deg,var(--color-brand-blue-700),var(--color-brand-teal));box-shadow:0 10px 24px rgba(35,131,197,.2)}
.contact-direct__icon svg{width:1.45rem;height:1.45rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-direct__label{color:var(--color-brand-teal);font-size:.74rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.contact-direct__value{display:inline-block;max-width:100%;margin-top:.34rem;color:var(--color-navy-950);font-size:clamp(1.08rem,2vw,1.55rem);font-weight:850;line-height:1.25;overflow-wrap:anywhere}
.contact-direct__note{margin-top:.55rem;color:var(--color-muted);font-size:.9rem}
.contact-offices{background:linear-gradient(180deg,#f5f9fb,#eef5f7)}
.contact-office-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.contact-office-card{position:relative;min-height:18rem;padding:1.45rem;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}
.contact-office-card:after{position:absolute;right:-3.2rem;bottom:-3.6rem;width:9rem;height:9rem;border:1px solid rgba(35,131,197,.1);border-radius:50%;content:"";box-shadow:0 0 0 1.8rem rgba(35,131,197,.035)}
.contact-office-card--hq{border-top:4px solid var(--color-brand-teal);box-shadow:var(--shadow-md)}
.contact-office-card__icon{display:grid;width:2.75rem;height:2.75rem;place-items:center;border-radius:.85rem;color:var(--color-brand-blue-800);background:var(--color-surface-blue)}
.contact-office-card__icon svg{width:1.35rem;height:1.35rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-office-card__meta{margin-top:1.25rem;color:var(--color-brand-teal);font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.contact-office-card h3{margin-top:.32rem;color:var(--color-navy-950);font-size:clamp(1.15rem,1.7vw,1.38rem)}
.contact-office-card address{margin-top:.85rem;color:var(--color-muted);font-style:normal;line-height:1.65}
.contact-final{background:#fff}
.contact-final__panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding:clamp(1.7rem,4vw,3rem);border:1px solid rgba(13,42,62,.12);border-radius:var(--radius-2xl);background:linear-gradient(135deg,#eef7fb,#eef8f6);box-shadow:var(--shadow-md)}
.contact-final__panel h2{margin-top:.2rem}
.contact-final__panel>div>p:last-child{margin-top:.55rem;color:var(--color-muted)}
@media(max-width:72rem){.contact-office-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:63.99rem){.contact-hero{min-height:680px}.contact-hero__media img{object-position:61% center}.contact-direct__grid{grid-template-columns:1fr}.contact-final__panel{grid-template-columns:1fr}.contact-final__panel .btn{width:fit-content}}
@media(max-width:47.99rem){.contact-hero{min-height:650px}.contact-hero__media img{object-position:54% center}.contact-hero:before{background:linear-gradient(90deg,rgba(6,25,39,.96),rgba(8,35,52,.72))}.contact-hero__inner{padding-block:4.5rem 5.2rem}.contact-hero__actions{align-items:stretch}.contact-hero__actions .btn,.contact-hero__phone{width:100%;justify-content:center}.contact-office-grid{grid-template-columns:1fr}.contact-office-card{min-height:auto}.contact-final__panel .btn{width:100%}}
@media(max-width:31rem){.contact-hero h1{font-size:2.55rem}.contact-direct__card{grid-template-columns:1fr}.contact-direct__icon{width:3rem;height:3rem}}
@media(prefers-reduced-motion:reduce){.contact-direct__card,.contact-hero__phone{transition:none}.contact-direct__card:hover,.contact-hero__phone:hover{transform:none}}
