.contact-page-hero{padding:140px 24px 80px;text-align:center;position:relative;overflow:hidden}.contact-page-hero .page-hero-content{position:relative;z-index:1;max-width:720px;margin:0 auto}.contact-page-hero .hero-title{display:block;font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1.05;letter-spacing:-2px;margin:0;padding-bottom:.15em}.contact-page-hero .hero-badge{display:inline-flex;align-items:center;gap:8px}.contact-hero-mask{overflow:hidden}.contact-hero-mask-lead{margin:.75rem 0 .5rem}.contact-hero-mask-h1{margin-bottom:1rem}.contact-hero-lead{font-family:var(--font-display);font-size:clamp(1.1rem,2.4vw,1.5rem);font-weight:700;color:var(--text-muted);margin:0}.contact-page-hero .hero-sub{color:var(--text-muted);font-size:1.1rem;line-height:1.8;max-width:580px;margin:0 auto}.contact-hero-p{text-align:left;color:var(--text-muted);font-size:.95rem;line-height:1.8;margin-bottom:1.25rem}.quick-contact{padding:60px 0;background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.qc-rail{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px;margin-bottom:-4px}.qc-rail-item{flex:1 1 220px;min-width:220px;scroll-snap-align:start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;text-decoration:none;color:var(--text);display:flex;flex-direction:column;gap:.6rem;transition:transform .15s ease,border-color .2s ease}.qc-rail-item:active{transform:scale(.98)}@media (hover:hover){.qc-rail-item:hover{border-color:var(--accent);box-shadow:0 20px 50px rgba(0,212,255,.1)}}.qc-rail-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent)}.qc-rail-icon-call{background:rgba(0,212,255,.1);border:1px solid rgba(0,212,255,.2)}.qc-rail-icon-wa{background:rgba(37,211,102,.1);border:1px solid rgba(37,211,102,.2);color:#25d366}.qc-rail-icon-email{background:rgba(124,58,237,.1);border:1px solid rgba(124,58,237,.2);color:#7c3aed}.qc-rail-icon-map{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.2);color:#f59e0b}.qc-rail-text{display:flex;flex-direction:column;gap:2px}.qc-rail-text strong{font-family:var(--font-display);font-size:.97rem;font-weight:700}.qc-rail-text small{color:var(--text-muted);font-size:.8rem;line-height:1.4}.qc-rail-value{display:flex;align-items:center;gap:6px;color:var(--accent);font-size:.85rem;font-weight:600;margin-top:auto}.qc-rail-arrow{display:inline-block;transition:transform .15s ease}.qc-rail-item:active .qc-rail-arrow,.qc-rail-item:focus-visible .qc-rail-arrow{transform:translateX(3px)}@media (prefers-reduced-motion:reduce){.qc-rail-item:active{transform:none}.qc-rail-item:active .qc-rail-arrow,.qc-rail-item:focus-visible .qc-rail-arrow{transform:none}}.contact-main{padding:100px 0;background:var(--bg)}.contact-main-grid{display:grid;grid-template-columns:1fr 1.3fr;grid-template-areas:"head form" "details form";-moz-column-gap:80px;column-gap:80px;row-gap:0;align-items:start}.contact-info-head{grid-area:head}.contact-form-wrap{grid-area:form}.contact-info-details{grid-area:details}.contact-info-head .section-label{display:block;margin-bottom:.75rem}.contact-info-head h2{font-family:var(--font-display);font-size:clamp(1.9rem,3vw,2.6rem);font-weight:800;letter-spacing:-1px;margin-bottom:1.25rem;line-height:1.1}.contact-info-head>p{color:var(--text-muted);line-height:1.8;font-size:.97rem;margin-bottom:2.5rem}.contact-detail-list{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2.5rem}.cdl-item{gap:1rem}.cdl-icon,.cdl-item{display:flex;align-items:center}.cdl-icon{width:50px;height:50px;background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.2);border-radius:12px;color:var(--accent);justify-content:center;flex-shrink:0}.cdl-item small{display:block;color:var(--text-dim);font-size:.75rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:2px}.cdl-item strong{font-size:.95rem}.cdl-item a{color:var(--text);transition:var(--transition)}.cdl-item a:hover{color:var(--accent)}.address-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;margin-bottom:2rem}.address-card h4{font-family:var(--font-display);font-size:.95rem;font-weight:700;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.address-card p{color:var(--text-muted);font-size:.88rem;line-height:1.75}.address-card .hours-row{display:flex;justify-content:space-between;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:.85rem}.hours-row .open-badge{color:var(--text-muted);font-weight:600;font-size:.8rem}.hours-row .open-badge--open{color:#34d399}.hours-row .open-badge--closed{color:#f87171}.office-map{margin-top:1rem;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border)}.office-map iframe{display:block;width:100%;height:200px;border:none}.contact-social-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dim);margin-bottom:1rem}.contact-social-icons{display:flex;gap:.75rem;flex-wrap:wrap}.contact-form-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2.5rem}#contactForm{scroll-margin-top:90px}.contact-form-wrap h3{font-family:var(--font-display);font-size:1.35rem;font-weight:700;margin-bottom:.5rem}.contact-form-wrap>p{color:var(--text-muted);font-size:.9rem;margin-bottom:2rem}.contact-form-wrap .field-control{position:relative}.contact-form-wrap .field-control input,.contact-form-wrap .field-control select,.contact-form-wrap .field-control textarea{display:block}.contact-form-wrap .field-control:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:center;transition:transform .25s ease;pointer-events:none}.contact-form-wrap .field-control:focus-within:after{transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.contact-form-wrap .field-control:after{transition:none}}.contact-form-wrap .field-control input:-webkit-autofill,.contact-form-wrap .field-control input:-webkit-autofill:focus,.contact-form-wrap .field-control input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px var(--bg) inset;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.contact-form-wrap .form-note{color:var(--text-muted);font-size:.85rem;margin-top:.75rem}.cfs{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.6rem;padding:1.5rem 0}.cfs-check-circle{opacity:.35}.cfs-check-circle,.cfs-check-mark{stroke:var(--accent)}.cfs-heading{font-family:var(--font-display);font-size:1.3rem;font-weight:700;outline:none}.cfs-body{color:var(--text-muted);font-size:.92rem;line-height:1.7;max-width:32ch}.cfs-reset{margin-top:.5rem;cursor:pointer;background:none;font-family:var(--font-body)}.contact-faq{padding:80px 0;background:var(--bg2)}.contact-faq .section-label,.contact-faq .section-title{text-align:center;margin-left:auto;margin-right:auto}.contact-faq .section-title{margin-bottom:3rem}.contact-faq-list{max-width:820px;margin:0 auto}.contact-faq-item{border:1px solid var(--border);border-radius:12px;margin-bottom:10px;overflow:hidden;transition:border-color .25s ease;background:var(--surface)}.contact-faq-item.open{border-color:rgba(0,212,255,.3)}.contact-faq-q{width:100%;background:none;border:none;text-align:left;padding:18px 22px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;transition:background .2s ease}.contact-faq-q:hover{background:rgba(0,212,255,.04)}.contact-faq-item.open .contact-faq-q{background:rgba(0,212,255,.06)}.contact-faq-q-text{font-family:var(--font-display);font-size:.93rem;font-weight:700;color:#fff;line-height:1.4}.contact-faq-icon{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:rgba(0,212,255,.1);border:1px solid rgba(0,212,255,.25);display:flex;align-items:center;justify-content:center;transition:transform .3s ease,background .2s ease}.contact-faq-item.open .contact-faq-icon{transform:rotate(45deg);background:rgba(0,212,255,.2)}.contact-faq-a{max-height:0;overflow:hidden;will-change:max-height;transition:max-height .35s cubic-bezier(.4,0,.2,1)}.contact-faq-item.open .contact-faq-a{will-change:auto}.contact-faq-a-inner{padding:0 22px 18px;font-size:.88rem;color:var(--text-muted);line-height:1.75;opacity:0;transform:translateY(-4px);transition:opacity .25s ease .05s,transform .25s ease .05s}.contact-faq-item.open .contact-faq-a-inner{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.contact-faq-a,.contact-faq-a-inner,.contact-faq-icon,.contact-faq-item{transition:none}}.next-steps{padding:80px 0;background:var(--bg)}.next-steps .section-label,.next-steps .section-title{text-align:center;margin-left:auto;margin-right:auto}.next-steps .section-title{margin-bottom:3rem}.pf-flow-track{display:flex;flex-direction:column;max-width:640px;margin:0 auto}.pf-flow-node{position:relative;display:flex;gap:20px;padding-bottom:30px}.pf-flow-node:last-child{padding-bottom:0}.pf-flow-dot{flex-shrink:0;width:14px;height:14px;margin-top:4px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(0,212,255,.15);position:relative;z-index:1}.pf-flow-line{position:absolute;left:6px;top:22px;bottom:-6px;width:2px;background:linear-gradient(var(--accent),var(--border));opacity:.4}.pf-flow-body{padding-top:0}.pf-flow-label{display:block;font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:var(--text);margin-bottom:4px}.pf-flow-caption{font-size:.88rem;color:var(--text-muted);line-height:1.65;margin:0;max-width:60ch}.flow-line-wrap{position:relative;max-width:640px;margin:0 auto}.flow-line-progress{position:absolute;top:0;bottom:0;left:6px;width:2px;background:var(--accent);transform-origin:top;pointer-events:none}@media (max-width:640px){.next-steps{padding:60px 0}.pf-flow-node{gap:16px;padding-bottom:24px}}.contact-cta{padding:48px 0;background:var(--bg2);border-top:1px solid var(--border);text-align:center}.contact-cta-inner{display:flex;flex-direction:column;align-items:center;gap:1.25rem}.contact-cta-text{font-size:1.05rem;color:var(--text);max-width:50ch}.contact-cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media (hover:hover){.contact-cta-actions .btn-ghost-white:hover,.contact-cta-actions .btn-primary:hover{transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.contact-cta-actions .btn-ghost-white:hover,.contact-cta-actions .btn-primary:hover{transform:none}}@media (max-width:1024px){.contact-main-grid{grid-template-columns:1fr;grid-template-areas:"head" "form" "details";gap:50px}}@media (max-width:768px){.contact-page-hero{padding:100px 16px 60px}.quick-contact{padding:50px 0}.contact-main{padding:70px 0}.contact-form-wrap{padding:1.75rem}.contact-faq{padding:60px 0}}@media (max-width:400px){.qc-rail-item{min-width:200px}}