.page-contact {
  --contact-purple-1:#1b0a2f;
  --contact-purple-2:#34135b;
  --contact-purple-3:#5b2a8d;
  --contact-purple-soft:#f4eff9;
  --contact-purple-line:#d9cbe8;
}
.page-contact .contact-hero {
  min-height: 720px;
  padding: 9.5rem 0 6rem;
  background:
    radial-gradient(circle at 82% 22%, rgba(139,84,196,.34), transparent 31%),
    radial-gradient(circle at 12% 88%, rgba(101,52,155,.28), transparent 34%),
    linear-gradient(135deg, var(--contact-purple-1) 0%, var(--contact-purple-2) 52%, #42196d 100%);
}
.contact-hero-grid {display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:5rem;align-items:center;}
.contact-hero-copy h1{max-width:14ch;}
.contact-hero-copy .lead{max-width:58ch;color:rgba(255,255,255,.82);}
.contact-hero-actions{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem;}
.contact-hero-panel{padding:1.1rem;border:1px solid rgba(255,255,255,.2);border-radius:32px;background:rgba(255,255,255,.08);box-shadow:0 30px 70px rgba(8,2,17,.28);backdrop-filter:blur(12px);}
.contact-hero-panel-label{padding:.65rem .9rem 1rem;color:rgba(255,255,255,.72);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;}
.hero-route{display:grid;grid-template-columns:50px 1fr;gap:.3rem 1rem;align-items:center;padding:1.15rem 1.25rem;border-radius:22px;text-decoration:none;margin:.55rem 0;transition:transform .25s ease,box-shadow .25s ease;}
.hero-route:hover{transform:translateY(-3px);box-shadow:0 15px 32px rgba(9,3,18,.24)}
.hero-route span{grid-row:1/3;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);overflow:hidden;padding:7px}
.hero-route span img{width:100%;height:100%;object-fit:contain;display:block}
.hero-route strong{font-family:'Playfair Display',serif;font-size:1.18rem;line-height:1.05;}
.hero-route small{font-size:.77rem;opacity:.78;}
.hero-route-baxter{background:#3e4f83;color:#fff}.hero-route-dragonfly{background:#164e3a;color:#fff}.hero-route-dnav{background:#6f2024;color:#fff}
.contact-purpose{background:#fff;padding:5.6rem 0;}
.contact-purpose-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:5rem;align-items:center;}
.contact-purpose-grid .lead{margin-top:1.1rem;max-width:54ch;}
.contact-purpose-pills{display:grid;gap:.8rem;}
.contact-purpose-pill{display:grid;grid-template-columns:210px 1fr;gap:1.4rem;align-items:center;padding:1.25rem 1.5rem;border:1px solid var(--contact-purple-line);border-radius:999px;background:linear-gradient(90deg,#fff,var(--contact-purple-soft));box-shadow:0 8px 22px rgba(44,20,75,.06)}
.contact-purpose-pill b{font-family:'Playfair Display',serif;font-size:1.05rem}.contact-purpose-pill span{color:var(--ink-soft);font-size:.88rem;}
.contact-enquiry-section{padding:6.4rem 0;background:linear-gradient(180deg,#f7f4f9 0%,#eee7f5 100%);}
.contact-enquiry-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:4.5rem;align-items:start;}
.contact-enquiry-intro{padding-top:1rem}.contact-enquiry-intro>.p,.contact-enquiry-intro>p{color:var(--ink-soft);line-height:1.75;max-width:48ch;margin-top:1.2rem;}
.contact-direct-card{margin:2rem 0 2.2rem;padding:1.2rem 1.35rem;border-radius:20px;background:var(--contact-purple-2);color:#fff;display:flex;flex-direction:column;gap:.25rem;box-shadow:0 18px 36px rgba(49,18,86,.2)}
.contact-direct-card span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;opacity:.68}.contact-direct-card a{color:#fff;font-weight:700;text-decoration:none;font-size:1.02rem;}
.contact-expectations{display:grid;gap:.85rem}.contact-expectations>div{display:grid;grid-template-columns:38px 1fr;gap:.8rem;align-items:start}.contact-expectations span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--contact-purple-3);font-size:.72rem;font-weight:800;border:1px solid var(--contact-purple-line)}.contact-expectations p{font-size:.88rem;line-height:1.55;color:var(--ink-soft);}
.contact-form-card{background:#fff;border:1px solid rgba(82,42,121,.14);border-radius:30px;padding:2.2rem;box-shadow:0 30px 70px rgba(45,19,73,.13);}
.contact-form-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;padding-bottom:1.35rem;margin-bottom:1.4rem;border-bottom:1px solid var(--contact-purple-line)}.contact-form-heading span{font-family:'Playfair Display',serif;font-size:1.45rem;font-weight:600}.contact-form-heading small{color:var(--muted);font-size:.72rem;}
.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{margin-bottom:1rem}.field label{display:block;font-size:.75rem;font-weight:700;margin-bottom:.45rem;color:#3d2d48;letter-spacing:.02em}.field input,.field select,.field textarea{width:100%;padding:.9rem 1rem;border-radius:14px;border:1px solid #d9d0df;background:#fbfafc;color:var(--ink);font:inherit}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(91,42,141,.13);border-color:#6d3a9f}.contact-submit{width:100%;justify-content:center;border-radius:999px;margin-top:.25rem}.form-note{font-size:.72rem;color:var(--muted);text-align:center;margin-top:.9rem;line-height:1.5}
.contact-programmes{padding:6rem 0;background:#fff}.contact-programmes-head{display:grid;grid-template-columns:1fr .55fr;gap:3rem;align-items:end;margin-bottom:2.2rem}.contact-programmes-head>p{color:var(--ink-soft);line-height:1.65;}
.contact-programme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.contact-programme-card{min-height:245px;border-radius:28px;padding:1.6rem;display:flex;flex-direction:column;text-decoration:none;position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.contact-programme-card:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-55px;bottom:-70px;background:rgba(255,255,255,.34)}.contact-programme-card:hover{transform:translateY(-5px);box-shadow:0 22px 42px rgba(35,17,53,.14)}.contact-programme-number{width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.94);display:grid;place-items:center;overflow:hidden;padding:8px}.contact-programme-number img{width:100%;height:100%;object-fit:contain;display:block}.contact-programme-card div{margin-top:auto;position:relative;z-index:1}.contact-programme-card h3{font-family:'Playfair Display',serif;font-size:1.45rem;margin-bottom:.5rem}.contact-programme-card p{font-size:.86rem;line-height:1.55;max-width:28ch}.contact-programme-card b{margin-top:1.1rem;font-size:.78rem;position:relative;z-index:1}.contact-programme-card h3{color:#fff!important}
.contact-programme-baxter{background:#3e4f83;color:#fff}.contact-programme-dragonfly{background:#164e3a;color:#fff}.contact-programme-dnav{background:#6f2024;color:#fff}
.contact-close{padding:5.2rem 0;background:linear-gradient(135deg,var(--contact-purple-1),var(--contact-purple-3));color:#fff}.contact-close-inner{display:flex;justify-content:space-between;gap:3rem;align-items:center}.contact-close h2{font-family:'Playfair Display',serif;font-size:clamp(2rem,4vw,3.35rem);line-height:1.02;max-width:18ch}.contact-close .eyebrow{color:#d8c1ef}.contact-close-btn{background:#fff;color:var(--contact-purple-2);border-radius:999px;padding:.95rem 1.4rem;white-space:nowrap}.contact-close-btn:hover{background:#f4edf9}
@media(max-width:980px){.page-contact .contact-hero{min-height:auto}.contact-hero-grid,.contact-purpose-grid,.contact-enquiry-grid,.contact-programmes-head{grid-template-columns:1fr}.contact-hero-grid{gap:2.5rem}.contact-purpose-grid,.contact-enquiry-grid{gap:2.6rem}.contact-programme-grid{grid-template-columns:1fr}.contact-programme-card{min-height:210px}.contact-close-inner{align-items:flex-start;flex-direction:column}.contact-purpose-pill{grid-template-columns:1fr;border-radius:24px;gap:.35rem}}
@media(max-width:640px){.page-contact .contact-hero{padding:7.5rem 0 4rem}.contact-hero-panel{border-radius:24px}.contact-form-row{grid-template-columns:1fr}.contact-form-card{padding:1.25rem;border-radius:22px}.contact-form-heading{align-items:flex-start;flex-direction:column}.contact-purpose,.contact-enquiry-section,.contact-programmes{padding:4.2rem 0}.contact-hero-actions{flex-direction:column}.contact-hero-actions .btn{width:100%;justify-content:center}}
