.contact{--ct-canvas:#f7f4ef;--ct-card:#ffffff;--ct-navy:#0b253a;--ct-gold:#c5a070;--ct-teal:#0f766e;--ct-ink:#10212b;--ct-muted:#3a4650;--ct-border:rgba(11,37,58,0.12);--ct-radius:12px;--ct-shadow:0 16px 48px rgba(11,37,58,0.12);background:var(--ct-canvas);color:var(--ct-ink);padding-top:calc(80px + clamp(2rem, 5vh, 3.5rem));padding-bottom:clamp(4rem,8vh,6rem)}.contact h1,.contact h2{font-family:Cormorant Garamond,serif;color:var(--ct-navy);letter-spacing:-.02em;font-weight:500;line-height:1.12;margin:0}.contact h1{font-size:clamp(2rem,3.8vw,3rem)}.contact h2{font-size:clamp(1.75rem,3vw,2.35rem);color:#ffffff}.contact a,.contact button:not(.btn),.contact input,.contact label,.contact p,.contact select,.contact textarea{font-family:Raleway,sans-serif}.contact a{color:inherit;text-decoration:none}.contact a:hover{color:var(--ct-navy)}.contact a:focus-visible,.contact button:not(.btn):focus-visible,.contact input:focus-visible,.contact select:focus-visible,.contact textarea:focus-visible{outline:2px solid var(--ct-gold);outline-offset:3px}.contact-stage{position:relative;width:min(1440px,calc(100% - clamp(2rem, 5vw, 4rem)));margin:0 auto;min-height:clamp(36rem,72vh,44rem)}.contact-stage-loading{min-height:50vh}.contact-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.55fr);min-height:clamp(36rem,72vh,44rem);border-radius:0;overflow:hidden}.contact-left,.contact-right{padding:clamp(2rem,4vw,3.5rem);display:flex;flex-direction:column;gap:clamp(1.75rem,3vw,2.5rem)}.contact-left{background:var(--ct-canvas);padding-right:clamp(1.5rem,3vw,2rem);z-index:1}.contact-right{position:relative;background:var(--ct-navy);color:rgba(255,255,255,.88);padding-left:clamp(1.5rem,3vw,2rem);overflow:hidden}.contact-right:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400' viewBox='0 0 400 400'%3E%3Cg fill='none' stroke='%23c5a070' stroke-width='0.75' opacity='0.22'%3E%3Cpath d='M0 80 C80 40 160 120 240 80 S400 40 400 80'/%3E%3Cpath d='M0 140 C90 100 180 180 270 140 S400 100 400 140'/%3E%3Cpath d='M0 200 C70 160 170 240 260 200 S400 160 400 200'/%3E%3Cpath d='M0 260 C100 220 200 300 300 260 S400 220 400 260'/%3E%3Cpath d='M0 320 C80 280 180 360 280 320 S400 280 400 320'/%3E%3C/g%3E%3C/svg%3E");background-size:420px 420px;opacity:.35;pointer-events:none}.contact-right>*{position:relative;z-index:1}.contact-left-heading,.contact-right-heading{display:flex;flex-direction:column;gap:.65rem;max-width:28rem}.contact-eyebrow{font-size:.7rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--ct-gold);margin:0}.contact-eyebrow-light{color:rgba(197,160,112,.95)}.contact-rule{display:block;width:48px;height:1px;background:var(--ct-gold);margin-top:.2rem}.contact-intro{font-size:.875rem;line-height:1.7;color:var(--ct-muted);margin:0;max-width:34rem}.contact-intro-light{color:rgba(255,255,255,.72)}.contact-info-list{display:flex;flex-direction:column;gap:1.35rem;max-width:26rem}.contact-info-row{display:flex;align-items:flex-start;gap:1rem}.ct-icon-ring{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1.25px solid var(--ct-gold);border-radius:50%;color:var(--ct-gold);flex-shrink:0}.ct-icon-ring svg{width:1rem;height:1rem}.contact-info-copy{display:flex;flex-direction:column;gap:.2rem;padding-top:.15rem}.contact-info-label{font-size:.78rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ct-gold);margin:0}.contact-info-value{font-family:Cormorant Garamond,serif;font-size:1.14rem;font-weight:600;color:var(--ct-navy);line-height:1.45}.contact-info-value a{font-family:inherit;font-size:inherit;font-weight:inherit;color:var(--ct-navy)}.contact-info-value a:hover{color:var(--ct-teal)}.contact-info-note{font-size:.85rem;font-weight:500;color:var(--ct-muted)}.contact-info-note a{color:var(--ct-teal)}.contact-map-card{display:flex;flex-direction:column;gap:.85rem;margin-top:auto}.contact-map-frame{position:relative;border-radius:var(--ct-radius);overflow:hidden;border:1px solid rgba(197,160,112,.25);background:rgba(0,0,0,.25);aspect-ratio:4/3;min-height:12rem}.contact-map-frame iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(20%) contrast(1.05) brightness(.82)}.contact-map-pin{position:absolute;top:50%;left:50%;transform:translate(-50%,-100%);display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:50% 50% 50% 0;transform:translate(-50%,-100%) rotate(-45deg);background:var(--ct-gold);color:var(--ct-navy);box-shadow:0 8px 20px rgba(0,0,0,.35);pointer-events:none}.contact-map-pin svg{width:1.1rem;height:1.1rem;transform:rotate(45deg)}.contact-directions{display:inline-flex;align-items:center;gap:.55rem;align-self:flex-start;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ct-gold);padding:.35rem 0}.contact a.contact-directions:hover,.contact a.contact-directions:hover svg,.contact-directions:hover,.contact-directions:hover svg{color:#ffffff}.contact-directions svg:last-child{width:.95rem;height:.95rem}.contact-form-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(34rem,calc(100% - 2rem));background:var(--ct-card);border-radius:var(--ct-radius);box-shadow:var(--ct-shadow);border:1px solid rgba(11,37,58,.06);padding:clamp(1.35rem,2.5vw,1.85rem);z-index:5;display:flex;flex-direction:column}.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-field{display:flex;flex-direction:column;gap:.45rem}.contact-field-full{grid-column:1/-1}.contact-field label{font-size:.72rem;font-weight:600;letter-spacing:.04em;color:var(--ct-muted)}.contact-input-wrap{position:relative}.contact-input-wrap svg{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:rgba(58,70,80,.45);pointer-events:none}.contact-field textarea,.contact-input-wrap input,.contact-input-wrap select{width:100%;font-size:.875rem;color:var(--ct-ink);background:#ffffff;border:1px solid var(--ct-border);border-radius:8px;padding:.78rem 2.35rem .78rem .85rem;transition:border-color .2s ease,box-shadow .2s ease}.contact-field textarea{padding:.85rem;resize:vertical;min-height:7.5rem;line-height:1.55}.contact-field textarea:focus,.contact-input-wrap input:focus,.contact-input-wrap select:focus{border-color:rgba(15,118,110,.45);box-shadow:0 0 0 3px rgba(15,118,110,.08);outline:none}.contact-input-wrap-select select{appearance:none;cursor:pointer}.contact-input-wrap-select select:invalid{color:rgba(58,70,80,.65)}.contact-hero-cta{align-self:center;margin-top:1rem}.contact-privacy{display:flex;align-items:flex-start;gap:.45rem;margin:.85rem 0 0;font-size:.72rem;line-height:1.5;color:rgba(58,70,80,.75)}.contact-privacy svg{width:.85rem;height:.85rem;flex-shrink:0;margin-top:.1rem}.contact-feedback{margin:.75rem 0 0;font-size:.82rem;line-height:1.5;padding:.65rem .75rem;border-radius:8px}.contact-feedback-success{color:#0f5132;background:rgba(15,118,110,.1);border:1px solid rgba(15,118,110,.2)}.contact-feedback-error{color:#842029;background:rgba(194,65,12,.08);border:1px solid rgba(194,65,12,.18)}@media (min-width:1920px) and (max-width:2559px){.contact-form-card{top:calc(50% + 100px);transform:translate(-50%,-50%) scale(.9)}}@media (min-width:2560px){.contact-form-card{top:calc(42% - 20px);left:46%}}@media (max-width:1099px){.contact-split,.contact-stage{min-height:auto}.contact-split{grid-template-columns:1fr}.contact-left,.contact-right{padding:clamp(1.75rem,4vw,2.5rem)}.contact-right{padding-top:clamp(2rem,5vw,3rem);padding-bottom:clamp(2.5rem,6vw,3.5rem)}.contact-form-card{position:static;transform:none;width:min(34rem,100%);margin:-2rem auto 0}.contact-info-list,.contact-left-heading,.contact-right-heading{max-width:none}}@media (max-width:699px){.contact{padding-top:calc(70px + 1.5rem)}.contact-form-grid{grid-template-columns:1fr}.contact-form-card{margin-top:-1.25rem;width:100%}.contact-map-frame{min-height:14rem}}@media (prefers-reduced-motion:reduce){.contact-form-card,.contact-info-row,.contact-left-heading>*,.contact-right-heading>*{animation:none!important;transition:none!important}}