.contact{border-top:1px solid var(--border);position:relative;overflow:hidden}.contact:before{content:"";pointer-events:none;background:radial-gradient(#c8a97e0d,#0000 65%);width:70%;height:55%;position:absolute;top:-10%;left:50%;transform:translate(-50%)}.contact-wrapper{max-width:var(--max-width);opacity:0;margin:0 auto;padding:0 24px;transition:opacity .8s,transform .8s;transform:translateY(32px)}.contact-wrapper.visible{opacity:1;transform:translateY(0)}.contact-hero{border-bottom:1px solid var(--border);padding:120px 0 80px}.contact-hero-inner{max-width:720px}.contact-label{font-family:var(--font-heading);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);border-radius:var(--radius);border:1px solid #c8a97e33;margin-bottom:24px;padding:6px 14px;font-size:.6875rem;font-weight:600;display:inline-block}.contact-headline{font-family:var(--font-heading);letter-spacing:-.035em;color:var(--text);margin:0 0 24px;font-size:clamp(2.25rem,5vw,3.5rem);font-weight:700;line-height:1.12}.contact-headline-accent{color:var(--accent)}.contact-subtitle{color:var(--text-muted);letter-spacing:.01em;max-width:540px;margin:0;font-size:1.125rem;font-weight:300;line-height:1.7}.contact-body{grid-template-columns:340px 1fr;align-items:start;gap:80px;padding:80px 0 120px;display:grid}.contact-details{flex-direction:column;gap:40px;display:flex;position:sticky;top:120px}.contact-detail-block{flex-direction:column;gap:8px;display:flex}.contact-detail-label{font-family:var(--font-heading);letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);font-size:.625rem;font-weight:600}.contact-email-link{font-family:var(--font-heading);color:var(--accent);letter-spacing:-.01em;font-size:1.25rem;font-weight:600;text-decoration:none;transition:color .2s}.contact-email-link:hover{color:#d4b892}.contact-detail-value{font-family:var(--font-heading);color:var(--text-muted);font-size:.9375rem;font-weight:500}.contact-expectations{flex-direction:column;gap:16px;display:flex}.contact-expect-list{flex-direction:column;gap:0;display:flex}.contact-expect-item{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 0;display:flex}.contact-expect-item:first-child{border-top:1px solid var(--border)}.contact-expect-key{font-family:var(--font-heading);color:var(--text-muted);min-width:80px;font-size:.8125rem;font-weight:500}.contact-expect-divider{background:var(--border);flex:1;height:1px}.contact-expect-val{font-family:var(--font-heading);color:var(--text);letter-spacing:-.01em;font-size:.8125rem;font-weight:600}.contact-form-card{background:linear-gradient(140deg,#c8a97e11,#0000 34%),linear-gradient(#ffffff0a,#0000 80%),#121212d1;padding:48px;position:relative;overflow:hidden;box-shadow:0 36px 100px #00000038}.contact-form-card:before{content:"";background:linear-gradient(90deg,var(--accent),transparent);height:2px;position:absolute;top:0;left:0;right:0}.contact-form-intro{margin-bottom:28px}.contact-form-intro h3{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text);margin:0 0 10px;font-size:1.25rem;font-weight:600}.contact-form-intro p{color:var(--text-muted);margin:0;font-size:.9375rem;font-weight:300;line-height:1.6}.contact-form{flex-direction:column;gap:24px;display:flex}.build-selector{gap:14px;display:grid}.build-selector-label{font-family:var(--font-heading);letter-spacing:.15em;text-transform:uppercase;color:var(--text-dim);font-size:.6875rem;font-weight:600}.build-selector-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.build-option{min-height:52px;color:var(--text-muted);font-family:var(--font-heading);letter-spacing:.01em;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff13;border-radius:0;padding:10px 0;font-size:.8125rem;font-weight:600;transition:color .2s,border-color .2s,background .2s,transform .2s}.build-option:hover,.build-option.active{color:var(--text);background:linear-gradient(#c8a97e0d,#0000);border-color:#c8a97e6b;transform:translateY(-1px)}.contact-form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-field{flex-direction:column;gap:8px;display:flex}.form-field label{font-family:var(--font-heading);letter-spacing:.15em;text-transform:uppercase;color:var(--text-dim);font-size:.6875rem;font-weight:600}.form-field input,.form-field select,.form-field textarea{background:var(--bg);border-radius:var(--radius);color:var(--text);font-family:var(--font-body);border:1px solid #ffffff16;padding:14px 16px;font-size:1rem;transition:border-color .25s,background .25s}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--text-dim);font-weight:300}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{background:#c8a97e08;border-color:#c8a97e66;outline:none}.form-field select{cursor:pointer;appearance:none;color:var(--text-muted);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%235a5a5a' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:40px}.form-field select option{background:var(--card);color:var(--text-muted)}.form-field textarea{resize:vertical;min-height:120px}.contact-form-footer{align-items:center;gap:20px;margin-top:8px;display:flex}.btn-submit{letter-spacing:.04em;padding:16px 36px;font-size:.9375rem}.btn-submit.sent{color:var(--accent);background:#c8a97e26;border-color:#c8a97e4d}.contact-form-note{color:var(--text-dim);letter-spacing:.02em;max-width:280px;margin:0;font-size:.75rem;line-height:1.45}.contact-sms-consent{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.contact-sms-consent input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:2px}.contact-sms-consent span{color:var(--text-dim);font-size:.6875rem;line-height:1.55}.contact-consent-note{color:var(--text-dim);opacity:.75;margin:14px 0 0;font-size:.6875rem;line-height:1.55}.contact-consent-note a{color:inherit;text-decoration:underline}.contact-consent-note a:hover{color:var(--text-muted)}.booking-calendar{flex-direction:column;gap:16px;display:flex}.booking-calendar-intro p{color:var(--text-muted);margin:0;font-size:.9375rem;line-height:1.55}.lead-routed{flex-direction:column;gap:28px;display:flex}.lead-routed-steps{gap:22px;padding-left:6px;display:grid;position:relative}.lead-routed-steps:before{content:"";background:linear-gradient(#c8a97e73,#c8a97e1f);width:1px;position:absolute;top:10px;bottom:10px;left:9px}.lead-routed-step{opacity:0;animation:.5s forwards leadRouteIn;animation-delay:var(--route-step-delay,0s);align-items:flex-start;gap:16px;display:flex;position:relative;transform:translateY(8px)}.lead-routed-dot{z-index:1;background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px;position:relative;box-shadow:0 0 12px #c8a97ecc}.lead-routed-step strong{color:var(--text);font-family:var(--font-heading);font-size:.9375rem;font-weight:650;display:block}.lead-routed-step div span{color:var(--text-muted);margin-top:3px;font-size:.8125rem;line-height:1.5;display:block}.lead-routed-reset{color:var(--text-muted);font-family:var(--font-heading);text-underline-offset:4px;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.8125rem;font-weight:600;text-decoration:underline}.lead-routed-reset:hover{color:var(--accent)}@keyframes leadRouteIn{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.lead-routed-step{opacity:1;animation:none;transform:none}}.booking-calendar-frame{background:0 0;border:none;border-radius:8px;width:100%;min-height:640px;overflow:hidden}.contact-form-error{color:#e08a7a;letter-spacing:.02em;max-width:280px;margin:0;font-size:.75rem;line-height:1.45}.contact-form-error a{color:var(--accent);text-decoration:underline}@media (max-width:1000px){.contact-body{grid-template-columns:1fr;gap:48px}.contact-details{flex-flow:wrap;gap:32px;position:relative;top:auto}.contact-detail-block,.contact-expectations{flex:1;min-width:200px}}@media (max-width:600px){.contact-hero{padding:80px 0 48px}.contact-body{padding:48px 0 80px}.contact-form-card{padding:32px 24px}.contact-form-row{grid-template-columns:1fr;gap:24px}.build-selector-grid{grid-template-columns:1fr}.contact-form-footer{flex-direction:column;align-items:flex-start;gap:12px}.contact-details{flex-direction:column}}
