.contact-page { background:#050918; }
.contact-page .page { position:relative; z-index:1; }
.cosmos { position:fixed; inset:0; overflow:hidden; pointer-events:none; background:radial-gradient(ellipse at 22% 53%,#122e6059,transparent 43%),radial-gradient(ellipse at 2% 90%,#1b255345,transparent 48%),radial-gradient(ellipse at 85% 7%,#13224c3b,transparent 48%),#050918; }
.cosmos::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,transparent 30%,#05091844 65%,#05091888); }
#starfield { display:block; width:100%; height:100%; }
.contact-page .topbar { border-color:#b6c9ff20; }
.contact-main { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.94fr); gap:clamp(2rem,5vw,5rem); padding-block:clamp(2.5rem,5vw,5rem); align-items:center; }
.contact-story { min-width:0; }
.contact-story h1 { width:auto; font-size:clamp(2.6rem,4.3vw,5rem); line-height:1.03; letter-spacing:-.06em; }
.contact-intro { max-width:31rem; font-size:1.08rem; line-height:1.65; color:var(--soft); margin:1.1rem 0 0; }
.planet-scene { position:relative; margin:.5rem -1rem 0; isolation:isolate; }
.planet-scene::before { content:''; pointer-events:none; position:absolute; inset:9% 12%; border-radius:50%; background:radial-gradient(circle,#204cd322,transparent 66%); filter:blur(22px); }
.contact-page .orb { width:min(100%,30rem); margin-inline:auto; transform:none; background:radial-gradient(circle,#18316e20,transparent 68%); }
.contact-page .controls { margin-top:-1.3rem; position:relative; z-index:2; }
.contact-page .hint { font-size:.7rem; color:#b5c7e6; }
.contact-page .motion { background:#09142a66; border-color:#b6c9ff36; backdrop-filter:blur(12px); }
.contact-location { display:flex; align-items:center; gap:.75rem; margin-top:1.7rem; color:var(--soft); font-size:.87rem; }
.contact-location strong { display:block; font-weight:500; }
.contact-location a { display:inline-block; padding-top:.3rem; color:var(--white); }
.location-dot { width:7px; height:7px; flex:none; background:#a7bfff; border-radius:50%; box-shadow:0 0 18px #678cff80; }
.contact-panel { position:relative; border:1px solid #bacfff29; border-radius:22px; padding:clamp(1.3rem,3vw,2.5rem); background:linear-gradient(145deg,#15213cdd,#0b1427e8); backdrop-filter:blur(24px); box-shadow:inset 0 1px 0 #ffffff0b,0 25px 75px #0003; }
.contact-panel-heading { margin-bottom:1.5rem; }
.contact-panel-heading .section-label { margin-bottom:.65rem; }
.contact-panel h2 { font-size:clamp(1.6rem,2.3vw,2.3rem); letter-spacing:-.045em; line-height:1.15; margin:0; }
.contact-panel-heading > p:last-child { color:var(--soft); margin:.65rem 0 0; }
.contact-panel .inquiry-form { background:none; border:0; padding:0; }
.contact-panel .form-fields { gap:1.1rem; }
.contact-panel .form-fields :is(input,select,textarea) { background:#060f21ad; border-color:#a8c0ef30; border-radius:8px; transition:border-color .25s,background .25s,box-shadow .25s; }
.contact-panel .form-fields :is(input,select,textarea):focus { border-color:#8faeff; background:#0a1731; box-shadow:0 0 0 3px #7495ff12; }
.contact-panel .form-fields label { font-size:.84rem; }
.contact-panel .form-actions { gap:.5rem 1.1rem; }
.contact-panel .form-actions > p { flex-basis:100%; line-height:1.6; color:#aab9d4; margin-top:.35rem; }
.contact-page .footer { background:#05091840; }
@media(max-width:900px) { .contact-main { grid-template-columns:1fr; max-width:44rem; margin-inline:auto; } .contact-story h1 { font-size:clamp(2.65rem,7vw,4rem); } .contact-page .orb { width:min(100%,23rem); } .contact-intro { max-width:34rem; } .contact-location { justify-content:center; } .contact-page .controls { margin-top:-.5rem; } }
@media(max-width:430px) { .contact-main { gap:2.2rem; padding-block:2.5rem; } .contact-story h1 { font-size:2.55rem; } .contact-intro { font-size:1rem; } .contact-panel { border-radius:16px; padding:1.15rem; } .contact-page .hint { font-size:.63rem; } .planet-scene { margin-inline:0; } }
