:root{--contact-wine:#330003;--contact-wine-soft:#4a080a;--contact-gold:#f1bc32;--contact-cream:#fff8ec;--contact-muted:#685a50;--contact-line:#3300031f}.contact-page{background:var(--contact-cream);color:var(--contact-wine);margin:0;font-family:Fraunces,Georgia,serif;overflow-x:hidden}.contact-container{width:min(1120px,100% - 40px);margin:0 auto}.contact-hero{background:linear-gradient(135deg, var(--contact-wine-soft), var(--contact-wine));color:#fff8ec;text-align:center;padding:88px 0 82px}.contact-eyebrow{color:var(--contact-gold);letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;font-size:.76rem;font-weight:900}.contact-hero h1,.contact-channels h2,.contact-form-panel h2{margin:0;font-family:Fraunces,Georgia,serif;line-height:1.08}.contact-hero h1{font-size:clamp(2.4rem,5vw,4.25rem)}.contact-hero p:last-child{color:#fff8ecc7;max-width:620px;margin:18px auto 0;font-size:1.05rem;line-height:1.7}.contact-content{padding:74px 0}.contact-intents{border-bottom:1px solid var(--brand-line);background:#fff;padding:28px 0}.contact-intents__grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.contact-intents a{border:1px solid var(--brand-line);background:var(--brand-surface);min-height:96px;color:inherit;box-shadow:var(--brand-shadow-sm);border-radius:8px;gap:5px;padding:20px;text-decoration:none;transition:border-color .25s,transform .25s,box-shadow .25s;display:grid}.contact-intents a:hover,.contact-channel:hover{border-color:var(--brand-gold);box-shadow:var(--brand-shadow-md);transform:translateY(-3px)}.contact-intents span{color:var(--brand-gold);text-transform:uppercase;font-size:.78rem;font-weight:900}.contact-intents strong{max-width:260px;line-height:1.35}.contact-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:34px;display:grid}.contact-channels,.contact-form-panel{border:1px solid var(--contact-line);background:#fff;border-radius:8px;box-shadow:0 16px 36px #33000314}.contact-channels{padding:30px}.contact-channels h2,.contact-form-panel h2{color:var(--contact-wine);font-size:1.55rem}.contact-channel{border:1px solid var(--contact-line);color:inherit;border-radius:8px;gap:4px;margin-top:18px;padding:17px;text-decoration:none;transition:border-color .25s,transform .25s,box-shadow .25s;display:grid}.contact-channel span{color:var(--contact-muted);text-transform:uppercase;font-size:.8rem;font-weight:800}.contact-channel strong{font-size:.98rem;line-height:1.45}.contact-hours{color:var(--contact-muted);margin-top:20px;line-height:1.7}.contact-form-panel{padding:32px}.contact-form{gap:18px;margin-top:22px;display:grid}.contact-form-row{gap:7px;display:grid}.contact-form label{font-size:.86rem;font-weight:800}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--contact-line);width:100%;color:var(--contact-wine);font:inherit;background:#fff;border-radius:8px;padding:12px 13px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--contact-gold);outline:0;box-shadow:0 0 0 3px #f1bc3233}.contact-form small,.contact-note--error{color:#b42318}.contact-note{margin:16px 0 0;font-weight:800}.contact-note--success{color:#157347}.contact-form button{background:var(--contact-gold);color:var(--contact-wine);cursor:pointer;border:0;border-radius:999px;justify-self:start;padding:13px 22px;font-weight:900}.contact-location{padding:20px 0 80px}.contact-location__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(28px,5vw,70px);display:grid}.contact-location h2{margin:8px 0 14px;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.contact-location__actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.contact-location__actions a{border:1px solid var(--contact-wine);color:var(--contact-wine);border-radius:10px;padding:12px 18px;font-weight:700;text-decoration:none}.contact-location iframe{border:0;border-radius:20px;width:100%;min-height:380px;box-shadow:0 20px 50px #33000329}@media (width<=820px){.contact-intents__grid,.contact-grid,.contact-location__grid{grid-template-columns:1fr}.contact-content{padding:52px 0}}
