:root{--contact-navy:#061a33;--contact-navy-2:#0b294d;--contact-gold:#d8ad55;--contact-cream:#f7f5ef;--contact-ink:#10243e;--contact-border:rgba(8,31,59,.14)}
.contact-hero{position:relative;overflow:hidden;padding:132px 0 112px;background:radial-gradient(circle at 76% 34%,rgba(216,173,85,.12),transparent 27%),linear-gradient(115deg,#061a33 0%,#0b2749 100%);color:#fff}
.contact-hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:110px;background:linear-gradient(174deg,transparent 49%,rgba(255,255,255,.035) 50%)}
.contact-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 620px) 500px;
    justify-content: space-between;
    gap: 90px;
    align-items: center;
}

.contact-hero__content {
    position: relative;
    z-index: 3;
    min-width: 0;
    max-width: 620px;
}
.contact-hero h1 {
    position: relative;
    z-index: 3;
    max-width: 620px;
    margin: 0;
    font-size: clamp(4rem, 5.4vw, 6rem);
    line-height: .96;
    letter-spacing: -.05em;
}

.contact-hero__visual {
    position: relative;
    z-index: 2;
    width: 500px;
    min-width: 0;
    min-height: 560px;
    display: grid;
    place-items: center;
    justify-self: end;
}
.contact-eyebrow,.contact-section-label{display:block;margin-bottom:22px;color:var(--contact-gold);font-size:.72rem;font-weight:900;letter-spacing:.18em}
.contact-hero h1{max-width:760px;color:#fff;margin:0;font-size:clamp(3.5rem,6.2vw,6.7rem);line-height:.96;letter-spacing:-.055em}
.contact-hero p{max-width:700px;margin:34px 0 0;color:rgba(255,255,255,.76);font-size:1.12rem;line-height:1.75}
.contact-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}
.contact-hero .btn-outline{border-color:rgba(255,255,255,.38);color:#fff}
.contact-hero .btn-outline:hover{background:#fff;color:var(--contact-navy)}
.contact-hero__visual{min-height:560px;display:grid;place-items:center}
.conversation-map{position:relative;width:520px;height:560px;isolation:isolate
 flex: 0 0 auto;}
.conversation-map:before{content:"";position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,rgba(216,173,85,.14),rgba(216,173,85,.045) 38%,transparent 69%);filter:blur(2px);z-index:-2}
.conversation-map__beam{position:absolute;top:-120px;left:50%;width:245px;height:430px;transform:translateX(-50%);background:linear-gradient(to bottom,rgba(244,226,176,.16),rgba(216,173,85,.045) 54%,transparent 100%);clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);filter:blur(13px);z-index:-1}
.conversation-map__orbit{position:absolute;left:50%;top:50%;width:430px;height:430px;transform:translate(-50%,-50%);border:1px solid rgba(216,173,85,.4);border-radius:50%;box-shadow:inset 0 0 42px rgba(216,173,85,.03),0 0 38px rgba(216,173,85,.04)}
.conversation-map__center{position:absolute;left:50%;top:50%;width:190px;height:190px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;border:2px solid var(--contact-gold);border-radius:50%;background:linear-gradient(145deg,#10365f,#061a33);box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 60px rgba(216,173,85,.15);text-align:center;z-index:3}
.conversation-map__center small{color:var(--contact-gold);font-size:.68rem;font-weight:900;letter-spacing:.17em}
.conversation-map__center strong{margin-top:8px;color:#fff;font-size:1.5rem;line-height:1.05}
.conversation-map__center span{max-width:130px;margin-top:11px;color:rgba(255,255,255,.63);font-size:.72rem;line-height:1.45}
.conversation-map__step{position:absolute;width:215px;min-height:122px;padding:22px 22px 20px;border:1px solid rgba(216,173,85,.55);border-radius:17px;background:linear-gradient(145deg,rgba(13,43,78,.97),rgba(5,24,47,.98));box-shadow:0 20px 42px rgba(0,0,0,.24);z-index:4}

.conversation-map__step>span{display:block;margin-bottom:9px;color:var(--contact-gold);font-size:.64rem;font-weight:900;letter-spacing:.14em}
.conversation-map__step strong{display:block;color:#fff;font-size:1.08rem}
.conversation-map__step p{margin:8px 0 0;color:rgba(255,255,255,.65);font-size:.75rem;line-height:1.5}
.conversation-map__step--listen{left:-5px;top:42px}

.conversation-map__step--explore{right:-10px;top:76px}

.conversation-map__step--recommend{left:-8px;bottom:42px}

.conversation-map__step--partner{right:-10px;bottom:24px}

.conversation-map__connectors {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    overflow: visible;
    pointer-events: none;
}

.conversation-map__connectors line {
    fill: none;
    stroke: rgba(216, 173, 85, .62);
    stroke-width: 1.5;
    marker-end: url(#contact-arrow);
}

.conversation-map__connectors marker path {
    fill: var(--contact-gold);
}
.contact-inquiry{padding:120px 0;background:#fff}
.contact-inquiry__grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:88px;align-items:start}
.contact-inquiry h2,.contact-section-header h2,.contact-faq h2{margin:0;color:var(--contact-ink);font-size:clamp(2.7rem,4.3vw,4.6rem);line-height:1.03;letter-spacing:-.045em}
.contact-inquiry__intro>p,.contact-faq__grid>div>p{margin:28px 0;color:#526175;font-size:1.05rem;line-height:1.7}
.next-panel{margin-top:42px;padding:28px;border-left:3px solid var(--contact-gold);background:var(--contact-cream)}
.next-panel span{font-size:.7rem;font-weight:900;letter-spacing:.14em;color:var(--contact-ink)}.next-panel p{margin:12px 0 0;color:#536177;line-height:1.6}
.contact-form{padding:42px;border:1px solid var(--contact-border);border-radius:22px;background:#fbfbfa;box-shadow:0 26px 60px rgba(6,26,51,.08)}
.contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.contact-form label,.interest-fieldset legend{display:block;margin-bottom:20px;color:var(--contact-ink);font-size:.85rem;font-weight:800;letter-spacing:.02em}
.contact-form label span{font-weight:500;color:#7b8593}
.contact-form input,.contact-form textarea{width:100%;margin-top:9px;padding:15px 16px;border:1px solid rgba(8,31,59,.18);border-radius:9px;background:#fff;color:var(--contact-ink);font:inherit;outline:none;transition:border-color .2s,box-shadow .2s}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--contact-gold);box-shadow:0 0 0 3px rgba(216,173,85,.14)}
.interest-fieldset{margin:12px 0 24px;padding:0;border:0}.interest-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.interest-grid label{position:relative;margin:0}.interest-grid input{position:absolute;opacity:0;pointer-events:none}.interest-grid span{display:flex;min-height:58px;align-items:center;padding:14px 16px;border:1px solid rgba(8,31,59,.16);border-radius:10px;background:#fff;color:var(--contact-ink);font-weight:700;cursor:pointer;transition:.2s}
.interest-grid input:checked+span{border-color:var(--contact-gold);background:rgba(216,173,85,.12);box-shadow:inset 4px 0 0 var(--contact-gold)}
.contact-form__message{margin-top:8px}.contact-form__submit{display:inline-flex;align-items:center;gap:42px;margin-top:5px;padding:17px 22px;border:1px solid var(--contact-navy);background:var(--contact-navy);color:#fff}.contact-form__submit span:last-child{color:var(--contact-gold);font-size:1.4rem}.contact-form__note{margin:14px 0 0;color:#768194;font-size:.78rem}
.contact-steps{padding:116px 0;background:var(--contact-cream)}.contact-section-header{max-width:900px;margin-bottom:54px}.contact-steps__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.contact-steps article{position:relative;min-height:260px;padding:32px;border:1px solid var(--contact-border);border-radius:16px;background:#fff}.contact-steps article:not(:last-child):after{content:"→";position:absolute;right:-16px;top:50%;z-index:2;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--contact-gold);color:var(--contact-navy);font-weight:900}.contact-steps article>span{color:var(--contact-gold);font-size:.72rem;font-weight:900;letter-spacing:.14em}.contact-steps h3{margin:34px 0 14px;color:var(--contact-ink);font-size:1.55rem}.contact-steps p{margin:0;color:#5e6c7d;line-height:1.65}
.contact-faq{padding:120px 0;background:#fff}.contact-faq__grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:88px}.faq-list details{border-top:1px solid var(--contact-border)}.faq-list details:last-child{border-bottom:1px solid var(--contact-border)}.faq-list summary{display:flex;justify-content:space-between;gap:24px;padding:25px 0;color:var(--contact-ink);font-size:1.08rem;font-weight:800;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--contact-gold);font-size:1.5rem;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:760px;margin:-4px 0 26px;color:#5e6c7d;line-height:1.7}
.contact-closing{padding:112px 0;background:linear-gradient(118deg,#d5a74a,#ddb457 48%,#d2a244);text-align:center}.contact-closing__inner{max-width:1050px}.contact-closing__inner>span{display:block;margin-bottom:24px;color:var(--contact-navy);font-size:.72rem;font-weight:900;letter-spacing:.17em}.contact-closing h2{margin:0;color:var(--contact-navy);font-size:clamp(2.7rem,4.8vw,5rem);line-height:1.04;letter-spacing:-.045em}.contact-closing__button{display:inline-flex;align-items:center;gap:34px;margin-top:38px;background:var(--contact-navy);color:#fff}.contact-closing__button span{color:var(--contact-gold)}
.signature-statement{padding:44px 0;background:#081b34;text-align:center}.signature-statement p{margin:0;color:rgba(255,255,255,.74);font-size:clamp(1.15rem,2vw,1.65rem);font-weight:700;letter-spacing:-.015em}
.global-footer{padding:76px 0 28px;background:#031126;color:#fff;border-top:1px solid rgba(216,173,85,.3)}.global-footer__grid{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:80px}.global-footer .site-logo{color:#fff!important;font-size:2.2rem}.global-footer .site-logo span{color:var(--contact-gold)!important}.global-footer__brand p{max-width:360px;margin:20px 0 0;color:rgba(255,255,255,.58);line-height:1.6}.global-footer h2{margin:0 0 20px;color:var(--contact-gold);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}.global-footer nav{display:flex;flex-direction:column;gap:11px}.global-footer nav a{color:rgba(255,255,255,.68);text-decoration:none}.global-footer nav a:hover{color:#fff}.global-footer__bottom{display:flex;justify-content:space-between;gap:30px;margin-top:58px;padding-top:24px;border-top:1px solid rgba(255,255,255,.11);color:rgba(255,255,255,.48);font-size:.8rem}.global-footer__bottom p{margin:0}.global-footer__bottom div{display:flex;gap:24px}.global-footer__bottom a{color:inherit}
@media(max-width:1280px){.contact-hero__grid,.contact-inquiry__grid,.contact-faq__grid{grid-template-columns:1fr}.contact-hero__visual{min-height:500px}.contact-steps__grid{grid-template-columns:1fr 1fr}.contact-steps article:nth-child(2):after{display:none}.global-footer__grid{grid-template-columns:1.2fr .8fr .8fr;gap:40px}
 gap: 70px;}
@media(max-width:720px){.contact-hero{padding:100px 0 82px}.contact-hero h1{font-size:3.2rem}.contact-hero__visual{min-height:360px}.connection-field{transform:scale(.72)}.contact-inquiry,.contact-steps,.contact-faq,.contact-closing{padding:82px 0}.contact-form{padding:26px}.contact-form__row,.interest-grid,.contact-steps__grid,.global-footer__grid{grid-template-columns:1fr}.contact-steps article:after{display:none!important}.contact-faq__grid{gap:45px}.global-footer__bottom{flex-direction:column}.global-footer__grid{gap:42px}}

/* =========================================
   CONTACT HERO — FINAL LAYOUT OVERRIDE
========================================= */

.contact-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 620px) 500px;
    justify-content: space-between;
    gap: 90px;
    align-items: center;
}

.contact-hero__content {
    position: relative;
    z-index: 3;
    min-width: 0;
    max-width: 620px;
}

.contact-hero h1 {
    position: relative;
    z-index: 3;
    max-width: 620px;
    margin: 0;
    font-size: clamp(4rem, 5.4vw, 6rem);
    line-height: .96;
    letter-spacing: -.05em;
}

.contact-hero__visual {
    position: relative;
    z-index: 2;
    width: 500px;
    min-width: 0;
    min-height: 560px;
    display: grid;
    place-items: center;
    justify-self: end;
}


/* Stack before the headline and graphic collide */

@media (max-width: 1280px) {

    .contact-hero__grid {
        grid-template-columns: 1fr;
        gap: 70px;
    }

    .contact-hero__content,
    .contact-hero h1 {
        max-width: 760px;
    }

    .contact-hero__visual {
        width: 100%;
        min-height: 560px;
        justify-self: center;
    }
}