.contact-hero{padding-top:calc(var(--nav-height) + clamp(3rem, 6vw, 5rem));padding-bottom:clamp(2rem,4vw,4rem);text-align:left;position:relative;overflow:hidden}.contact-hero-bg{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(108,60,233,.1) 0,transparent 70%),radial-gradient(ellipse 60% 80% at 80% 80%,rgba(108,60,233,.06) 0,transparent 60%),linear-gradient(180deg,var(--color-bg) 0,#EDE8FF 60%,var(--color-bg) 100%)}.contact-hero .container{position:relative;z-index:1}.contact-hero h1{margin-bottom:1rem}.contact-hero h1 .accent{font-style:italic;color:var(--color-accent)}.contact-hero-subtitle{font-size:clamp(1rem,2vw,1.25rem);color:var(--color-text-muted);max-width:600px;font-weight:300;line-height:1.6}.contact-section{background:var(--color-white)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(2rem,5vw,4rem);gap:clamp(2rem,5vw,4rem)}.contact-info h2{margin-bottom:1rem}.contact-info>p{color:var(--color-text-muted);font-size:1.05rem;margin-bottom:2rem}.contact-details{display:flex;flex-direction:column;gap:1.25rem}.contact-detail{display:flex;align-items:flex-start;gap:1rem}.contact-detail .icon{width:40px;height:40px;border-radius:var(--radius-sm);background:var(--color-accent-glow);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.contact-detail .detail-label{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-light)}.contact-detail .detail-value{font-size:.95rem;color:var(--color-text);margin-top:.15rem}.contact-social-links{display:flex;gap:1rem;margin-top:2rem}.contact-social-link{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;border-radius:var(--radius-full);border:1.5px solid var(--color-border);font-size:.85rem;font-weight:500;color:var(--color-text-muted);transition:all .3s ease}.contact-social-link:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.contact-form-wrapper{background:var(--color-bg);border-radius:var(--radius-lg);padding:clamp(1.5rem,3vw,2.5rem)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.8rem 1rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:.95rem;color:var(--color-text);background:var(--color-white);outline:none;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.form-group textarea{resize:vertical;min-height:120px}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.contact-form-wrapper .btn{width:100%;justify-content:center;margin-top:.5rem}.form-success{text-align:center;padding:3rem 1rem}.form-success .success-icon{font-size:2.5rem;margin-bottom:1.5rem;color:var(--color-accent);width:80px;height:80px;line-height:80px;border-radius:50%;background:rgba(108,60,233,.1);margin-left:auto;margin-right:auto;display:flex;align-items:center;justify-content:center}.form-success h3{font-family:var(--font-display);font-size:1.5rem;margin-bottom:.75rem;color:var(--color-accent)}.form-success p{color:var(--color-text-muted);max-width:400px;margin:0 auto}.form-error{background:#FEF2F2;color:#DC2626;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem}@keyframes spin{to{transform:rotate(1turn)}}.btn-loading{display:inline-flex;align-items:center;gap:.5rem}.btn-loading svg{animation:spin 1s linear infinite}@media (max-width:1024px){.contact-grid{grid-template-columns:1fr;gap:2.5rem}}@media (max-width:768px){.form-group input[type=date]{height:48px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-row{grid-template-columns:1fr}.contact-social-links{flex-wrap:wrap;gap:.75rem}.contact-social-link{min-height:44px;padding:.65rem 1.2rem}.form-group input,.form-group select{font-size:16px;padding:.85rem 1rem}.form-group textarea{font-size:16px}}@media (max-width:480px){.contact-hero h1{font-size:clamp(2rem,8vw,3rem)}.contact-form-wrapper{padding:1.25rem}}