.contact-hero{position:relative;overflow:hidden;padding:154px 0 96px;background:radial-gradient(circle at 5% 18%,#ddfbfd 0,transparent 25%),radial-gradient(circle at 88% 25%,#e9e4ff 0,transparent 31%),linear-gradient(145deg,#fbfcff,#f7f4ff)}
.contact-hero:before{content:"";position:absolute;width:520px;height:520px;right:-245px;top:-130px;border:1px solid #7048ed25;border-radius:50%}
.contact-hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:84px;align-items:center;position:relative;z-index:1}
.contact-intro h1{max-width:690px;font-size:clamp(52px,5.1vw,76px)}
.contact-intro .lead{max-width:680px}
.contact-channels{margin-top:38px;border-top:1px solid #dcddeb;max-width:680px}
.contact-channels>a,.contact-channels>div{min-height:68px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;border-bottom:1px solid #dcddeb;transition:.22s}
.contact-channels>a:hover{padding-left:8px;color:var(--purple)}
.contact-channels small,.contact-channels strong{display:block}.contact-channels small{color:#878b9d;font-size:11px}.contact-channels strong{font:700 14px Manrope,sans-serif}.contact-channels>a>b{font-size:16px}
.channel-mark{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#ede9ff;color:var(--purple);font-size:9px;font-weight:800}
.contact-portrait{position:relative;padding:14px 14px 56px;background:#fff;border:1px solid #e2def1;border-radius:28px;box-shadow:0 30px 75px rgba(43,30,92,.17)}
.contact-portrait>img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:19px;filter:saturate(.94) contrast(1.02)}
.portrait-note{position:absolute;left:-34px;bottom:19px;max-width:245px;padding:18px 20px;background:linear-gradient(135deg,#111744,#312069);border-radius:15px;color:#fff;box-shadow:0 18px 45px rgba(15,13,46,.28)}
.portrait-note span,.portrait-note strong{display:block}.portrait-note span{margin-bottom:5px;color:var(--cyan);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.portrait-note strong{font:700 15px/1.4 Manrope,sans-serif}
.availability{position:absolute;right:-24px;top:35px;display:flex;align-items:center;gap:10px;padding:12px 15px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 38px rgba(35,26,78,.14)}
.availability i{width:9px;height:9px;border-radius:50%;background:#22c7a8;box-shadow:0 0 0 6px #22c7a819}.availability span,.availability strong,.availability small{display:block}.availability strong{font-size:12px}.availability small{color:var(--muted);font-size:10px}
.enquiry{background:#fff}.enquiry-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:86px;align-items:start}.enquiry-copy>p{color:var(--muted);font-size:17px}.good-start{margin-top:34px;padding:23px 25px;border:1px solid #dedbea;border-radius:18px;background:linear-gradient(145deg,#fbfaff,#f4fcfd)}.good-start>span{font:700 14px Manrope,sans-serif}.good-start ul{list-style:none;padding:10px 0 0;margin:0}.good-start li{position:relative;padding:7px 0 7px 20px;color:#5f6478;font-size:14px}.good-start li:before{content:"";position:absolute;left:0;top:15px;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--purple),var(--cyan))}
.form-card{padding:34px;border:1px solid #e2e2ec;border-radius:24px;background:#fff;box-shadow:0 24px 65px rgba(36,28,78,.1)}.form-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px;padding-bottom:18px;border-bottom:1px solid var(--line)}.form-heading span{font:700 20px Manrope,sans-serif}.form-heading small{color:#858a9d}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-card label{display:block;margin-bottom:19px;color:#303448;font-size:12px;font-weight:700}.form-card input,.form-card select,.form-card textarea{width:100%;margin-top:7px;padding:14px 15px;border:1px solid #dcdde7;border-radius:10px;background:#fbfbfd;color:var(--ink);font:14px 'DM Sans',sans-serif;outline:none;transition:.2s}.form-card textarea{min-height:155px;resize:vertical}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:var(--purple);background:#fff;box-shadow:0 0 0 4px #7048ed12}.form-card input::placeholder,.form-card textarea::placeholder{color:#a1a5b3}.form-submit{display:flex;justify-content:space-between;align-items:center;gap:25px}.form-submit p{max-width:260px;margin:0;color:#858a9c;font-size:11px}.form-submit .btn{border:0;cursor:pointer;white-space:nowrap}
.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-status{margin:-7px 0 23px;padding:12px 14px;border-radius:10px;font-size:13px;font-weight:600}.form-status.success{color:#087a68;background:#e8faf6;border:1px solid #bceee3}.form-status.error{color:#9b2f42;background:#fff0f2;border:1px solid #f3cad1}
.response-path{padding:100px 0;background:linear-gradient(130deg,#080d2a,#151443 65%,#2e186b);color:#fff}.response-path .heading>p{color:#b5b9cc}.response-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.response-steps article{position:relative;min-height:255px;padding:29px;background:linear-gradient(145deg,#ffffff12,#ffffff06);border:1px solid #ffffff18;border-radius:19px}.response-steps article:not(:last-child):after{content:"→";position:absolute;z-index:2;right:-23px;top:47px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--cyan);color:var(--navy);font-weight:800}.response-steps article>span{color:var(--cyan);font-size:11px;font-weight:800;letter-spacing:.12em}.response-steps article>div{margin-top:72px}.response-steps h3{font-size:21px}.response-steps p{margin-bottom:0;color:#adb2c7;font-size:14px}
.conversation-fit{background:#f7f7fb}.fit-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:100px}.fit-list{border-top:1px solid #dddde7}.fit-list article{display:grid;grid-template-columns:48px 1fr;gap:13px;padding:23px 5px;border-bottom:1px solid #dddde7}.fit-list b{padding-top:4px;color:var(--purple);font-size:11px}.fit-list h3{font-size:19px}.fit-list p{margin:6px 0 0;color:var(--muted);font-size:14px}
.contact-close{padding:20px 0 105px;background:#f7f7fb}.contact-close-box{padding:54px 60px;border-radius:25px;background:linear-gradient(115deg,#7048ed,#3b247c);color:#fff;position:relative;overflow:hidden}.contact-close-box:after{content:"";position:absolute;width:280px;height:280px;border:1px solid #ffffff25;border-radius:50%;right:-70px;top:-110px}.contact-close-box>span{color:#90f4ff;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.contact-close-box h2{max-width:730px;margin:8px 0 20px;font-size:clamp(34px,4vw,51px);letter-spacing:-.04em}.contact-close-box a{position:relative;z-index:1;display:inline-flex;gap:12px;align-items:center;font-weight:700;border-bottom:1px solid #ffffff66;padding-bottom:4px}.contact-close-box a b{color:var(--cyan)}
@media(max-width:1024px){.contact-hero-grid{gap:45px}.enquiry-grid,.fit-grid{gap:52px}.portrait-note{left:12px}.availability{right:12px}.response-steps article{padding:24px}}
@media(max-width:820px){.contact-hero{padding:125px 0 78px}.contact-hero-grid,.enquiry-grid,.fit-grid{grid-template-columns:1fr}.contact-portrait{max-width:620px;margin:auto}.contact-portrait>img{aspect-ratio:16/12}.enquiry-grid,.fit-grid{gap:48px}.response-steps{grid-template-columns:1fr}.response-steps article{min-height:auto;display:grid;grid-template-columns:45px 1fr;gap:12px}.response-steps article>div{margin:0}.response-steps article:not(:last-child):after{content:"↓";right:26px;top:auto;bottom:-23px}.contact-close-box{padding:45px}}
@media(max-width:580px){.contact-hero{padding-top:112px}.contact-intro h1{font-size:43px}.contact-channels strong{font-size:13px}.contact-portrait{padding:9px 9px 67px}.portrait-note{bottom:15px;left:15px;max-width:220px}.availability{top:22px}.enquiry{padding-top:70px}.form-card{padding:24px 19px}.form-row{grid-template-columns:1fr;gap:0}.form-heading,.form-submit{align-items:flex-start;flex-direction:column}.form-heading{gap:4px}.form-submit{gap:18px}.form-submit .btn{width:100%}.response-path{padding:75px 0}.contact-close-box{padding:35px 25px}.contact-close-box h2{font-size:34px}.contact-close-box a{font-size:14px;word-break:break-word}}
