.contact-hero{align-items:center;min-height:55vh;padding:140px 0 80px;display:flex;position:relative;overflow:hidden}.contact-hero:before{content:"";pointer-events:none;background:radial-gradient(#00bcd40f 0%,#0097a708 40%,#0000 70%);width:1200px;height:800px;position:absolute;top:-20%;left:50%;transform:translate(-50%)}.contact-hero:after{content:"";background:var(--grad);opacity:.3;height:1px;position:absolute;bottom:0;left:0;right:0}.contact-hero .hero-inner{text-align:center;max-width:700px;margin:0 auto}.contact-hero .hero-inner h1{font-family:var(--font-d);letter-spacing:-2px;margin-bottom:18px;font-size:clamp(2.8rem,6vw,4.2rem);font-weight:800;line-height:1.08}.contact-hero .hero-inner p{color:var(--text-2);max-width:560px;margin:0 auto;font-size:1.1rem;line-height:1.7}.contact-main{padding:100px 0}.contact-grid{grid-template-columns:1fr 420px;align-items:start;gap:80px;display:grid}.form-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-xl);padding:48px;position:relative;overflow:hidden}.form-card:before{display:none}.form-card h2{font-family:var(--font-d);letter-spacing:-.5px;margin-bottom:6px;font-size:1.8rem;font-weight:700}.form-card .form-sub{color:var(--text-2);margin-bottom:36px;font-size:.95rem}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-group{margin-bottom:24px}.form-group label{color:var(--text-2);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:.82rem;font-weight:600;display:block}.form-group input,.form-group textarea{border:1px solid var(--border);border-radius:var(--r-md);color:#fff;width:100%;font-family:var(--font);transition:border-color var(--dur) var(--ease), box-shadow var(--dur);background:#ffffff08;outline:none;padding:14px 18px;font-size:.95rem}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-3)}.form-group input:focus,.form-group textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #00bcd41a}.form-group textarea{resize:vertical;min-height:140px}.form-submit{margin-top:8px}.form-submit .btn-primary{justify-content:center;width:100%;padding:16px 36px;font-size:1rem}.form-note{text-align:center;color:var(--text-3);margin-top:16px;font-size:.8rem}.form-note i{color:var(--teal);margin-right:4px}.form-success{text-align:center;padding:60px 20px;display:none}.form-success.show{display:block}.form-success .success-icon{border:2px solid var(--teal);width:80px;height:80px;color:var(--teal);background:#00bcd41a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;font-size:2rem;display:flex}.form-success h3{font-family:var(--font-d);margin-bottom:10px;font-size:1.6rem;font-weight:700}.form-success p{color:var(--text-2);max-width:360px;margin:0 auto;font-size:.95rem}.contact-sidebar{position:sticky;top:100px}.info-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-xl);transition:border-color var(--dur), transform var(--dur);margin-bottom:24px;padding:40px}.info-card:hover{border-color:#00bcd426;transform:translateY(-2px)}.info-card-header{align-items:center;gap:14px;margin-bottom:20px;display:flex}.info-icon{border-radius:var(--r-md);width:48px;height:48px;color:var(--teal);background:#00bcd414;border:1px solid #00bcd41f;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.info-card-header h3{font-family:var(--font-d);font-size:1.15rem;font-weight:700}.info-card-header p{color:var(--text-3);margin-top:2px;font-size:.8rem}.info-detail{color:var(--text-2);font-size:.95rem;line-height:1.7}.info-detail a{color:var(--teal);transition:opacity var(--dur)}.info-detail a:hover{opacity:.75}.info-detail .label{text-transform:uppercase;letter-spacing:1px;color:var(--text-3);margin-top:14px;margin-bottom:4px;font-size:.75rem;font-weight:600}.info-detail .label:first-child{margin-top:0}.social-strip{gap:12px;margin-top:20px;display:flex}.social-strip a{border:1px solid var(--border);border-radius:var(--r-md);width:44px;height:44px;color:var(--text-3);transition:var(--dur);background:#ffffff08;justify-content:center;align-items:center;font-size:1.05rem;display:flex}.social-strip a:hover{color:var(--teal);background:#00bcd414;border-color:#00bcd433;transform:translateY(-2px)}.hero-badge{border-radius:var(--r-pill);color:var(--teal);background:#00bcd414;border:1px solid #00bcd426;align-items:center;gap:8px;margin-bottom:24px;padding:8px 18px;font-size:.8rem;font-weight:600;display:inline-flex}.hours-grid{gap:10px;margin-top:8px;display:grid}.hours-row{border-radius:var(--r-sm);background:#ffffff05;justify-content:space-between;align-items:center;padding:10px 14px;font-size:.85rem;display:flex}.hours-row .day{color:var(--text-2);font-weight:500}.hours-row .time{color:var(--teal);font-weight:600}.status-badge{border-radius:var(--r-pill);color:var(--teal);background:#00bcd414;align-items:center;gap:6px;margin-top:14px;padding:6px 14px;font-size:.78rem;font-weight:600;display:inline-flex}.status-dot{background:var(--teal);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite statusPulse}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.3}}.cta-banner{background:var(--bg-2);text-align:center;padding:100px 0;position:relative;overflow:hidden}.cta-banner:before{content:"";pointer-events:none;background:radial-gradient(circle,#00bcd40f 0%,#0000 70%);width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cta-banner h2{font-family:var(--font-d);letter-spacing:-1px;margin-bottom:16px;font-size:clamp(2rem,4vw,3rem);font-weight:700;position:relative}.cta-banner p{color:var(--text-2);max-width:520px;margin:0 auto 36px;font-size:1.05rem;line-height:1.7;position:relative}.cta-links{flex-wrap:wrap;justify-content:center;gap:16px;display:flex;position:relative}@media (max-width:1024px){.contact-grid{grid-template-columns:1fr;gap:48px}.contact-sidebar{grid-template-columns:1fr 1fr;gap:20px;display:grid;position:static}.contact-sidebar .info-card{margin-bottom:0}}@media (max-width:768px){.contact-hero{min-height:auto;padding:100px 0 50px}.contact-hero .hero-inner h1{letter-spacing:-1px}.form-card{padding:32px 24px}.form-row,.contact-sidebar{grid-template-columns:1fr}}@media (max-width:480px){.info-card{padding:24px}.contact-hero{padding:100px 0 40px}}
