.contact-page{background:var(--background);color:var(--foreground);min-height:100vh}.contact-page .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.contact-hero{text-align:center;background:var(--background);padding:9rem 0 5rem;position:relative;overflow:hidden}.contact-hero .contact-hero-grid{opacity:.6;pointer-events:none;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 20%,#0000 70%);mask-image:radial-gradient(#000 20%,#0000 70%)}.contact-hero .contact-hero-gradient{pointer-events:none;background:radial-gradient(at 30% 20%,#3b82f640,#0000 55%),radial-gradient(at 70% 70%,#ef44441f,#0000 55%),radial-gradient(at 80% 20%,#a855f71a,#0000 55%);position:absolute;inset:0}.contact-hero .contact-hero-orb{filter:blur(70px);pointer-events:none;border-radius:50%;position:absolute}.contact-hero .contact-hero-orb.orb-1{background:#3b82f640;width:420px;height:420px;top:-140px;left:-120px}.contact-hero .contact-hero-orb.orb-2{background:#a855f733;width:360px;height:360px;bottom:-120px;right:-100px}.contact-hero .container{z-index:1;position:relative}.contact-hero .contact-eyebrow{color:var(--primary-glow);text-transform:uppercase;letter-spacing:1.5px;background:#3b82f61a;border:1px solid #3b82f640;border-radius:999px;align-items:center;gap:8px;margin-bottom:24px;padding:8px 16px;font-size:13px;font-weight:700;display:inline-flex}.contact-hero .contact-title{color:var(--foreground);letter-spacing:-.02em;margin:0 0 20px;font-family:Sohne,Plus Jakarta Sans,sans-serif;font-size:clamp(36px,6vw,60px);font-weight:800;line-height:1.1}.contact-hero .contact-title em{background:linear-gradient(135deg, var(--primary-glow), var(--accent-purple));-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.contact-hero .contact-sub{color:var(--muted-foreground);max-width:600px;margin:0 auto;font-size:17px;line-height:1.6}.contact-body{padding:20px 0 100px;position:relative}.contact-grid{grid-template-columns:minmax(280px,380px) 1fr;align-items:start;gap:28px;display:grid}.contact-info{flex-direction:column;gap:14px;display:flex}.contact-card{background:var(--surface);border:1px solid var(--border);color:inherit;box-shadow:var(--shadow-card);border-radius:18px;align-items:flex-start;gap:16px;padding:22px;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;display:flex}.contact-card:hover{background:var(--surface-elevated);box-shadow:var(--shadow-elevated),0 0 40px -10px #3b82f64d;border-color:#3b82f666;transform:translateY(-2px)}.contact-card .contact-card-icon{width:46px;height:46px;color:var(--primary-glow);background:#3b82f61f;border:1px solid #3b82f633;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-card .contact-card-label{color:var(--primary-glow);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px;font-size:11px;font-weight:700}.contact-card .contact-card-value{color:var(--foreground);word-break:break-word;margin-bottom:4px;font-size:17px;font-weight:600}.contact-card .contact-card-note{color:var(--muted-foreground);font-size:13px}.contact-promise{background:#22c55e0f;border:1px dashed #22c55e4d;border-radius:14px;gap:12px;padding:18px;display:flex}.contact-promise .contact-promise-icon{color:var(--success);flex-shrink:0;padding-top:2px}.contact-promise .contact-promise-title{color:var(--foreground);margin-bottom:2px;font-size:14px;font-weight:700}.contact-promise .contact-promise-text{color:var(--muted-foreground);font-size:13px;line-height:1.5}.contact-form-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:20px;padding:clamp(28px,4vw,44px);position:relative;overflow:hidden}.contact-form-card:before{content:"";pointer-events:none;background:radial-gradient(at 100% 0,#3b82f614,#0000 60%);position:absolute;inset:0}.contact-form-card>*{z-index:1;position:relative}.contact-form-card .contact-form-title{color:var(--foreground);letter-spacing:-.01em;margin:0 0 6px;font-family:Sohne,Plus Jakarta Sans,sans-serif;font-size:26px;font-weight:700}.contact-form-card .contact-form-sub{color:var(--muted-foreground);margin:0 0 24px;font-size:14px}.contact-form{flex-direction:column;gap:16px;display:flex}.contact-form .contact-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.contact-form label{display:block}.contact-form label>span{color:var(--foreground);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.contact-form input,.contact-form textarea{border:1px solid var(--input);width:100%;color:var(--foreground);background:#0a0e2799;border-radius:12px;outline:none;padding:14px 16px;font-family:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s,background .2s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--primary);background:#0a0e27e6;box-shadow:0 0 0 4px #3b82f626}.contact-form textarea{resize:vertical;min-height:140px}.contact-alert{border:1px solid #0000;border-radius:10px;padding:12px 14px;font-size:14px}.contact-alert.contact-alert-ok{color:#4ade80;background:#22c55e1f;border-color:#22c55e4d}.contact-alert.contact-alert-err{color:#fca5a5;background:#ef44441f;border-color:#ef44444d}.contact-submit{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:var(--primary-foreground);letter-spacing:.01em;cursor:pointer;box-shadow:var(--shadow-glow);border:none;border-radius:12px;align-self:flex-start;align-items:center;gap:10px;padding:14px 32px;font-size:15px;font-weight:700;transition:transform .15s,box-shadow .2s,filter .2s;display:inline-flex}.contact-submit:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 0 60px -5px #3b82f6b3}.contact-submit:active:not(:disabled){transform:translateY(0)}.contact-submit:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}@media (max-width:860px){.contact-grid{grid-template-columns:1fr}.contact-hero{padding:7rem 0 3rem}.contact-body{padding:10px 0 70px}}
