.contact-section{padding:76px 0 86px;background:#f1e8dc;border-top:1px solid var(--line)}
.contact-grid{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:clamp(36px,7vw,110px);align-items:start}
.contact-copy h2{font-size:clamp(2.5rem,4vw,4rem);margin:0 0 22px}
.contact-copy>p:not(.eyebrow){max-width:410px;color:var(--soft)}
.contact-copy .contact-required{margin-top:26px;font-size:.83rem;color:var(--soft)}
.contact-form{padding:34px;background:var(--white);border-top:2px solid var(--copper);box-shadow:0 14px 36px #2b1e180d}
.contact-form label{display:block;font-size:.85rem;font-weight:700;color:var(--ink)}
.contact-form>label,.contact-form .field-row{margin-bottom:20px}
.contact-form .field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:8px;padding:12px 13px;border:1px solid #bbac9b;border-radius:2px;background:#fffdfa;color:var(--ink);font:400 1rem/1.4 Arial,Helvetica,sans-serif}
.contact-form textarea{resize:vertical;min-height:150px}
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:2px solid var(--wine);outline-offset:2px;border-color:var(--wine)}
.contact-form .form-status{padding:12px 14px;margin:0 0 9px;border-left:3px solid var(--copper);background:#f4ebdf;color:var(--ink);font-size:.86rem}
.contact-form .form-privacy{margin:0 0 19px;font-size:.79rem;color:var(--soft)}
.contact-form button:disabled{opacity:.6;cursor:not-allowed}
.contact-form .privacy-check{display:flex;align-items:start;gap:10px;margin:0 0 23px;font-weight:400;line-height:1.5}
.privacy-check input{margin-top:4px;accent-color:var(--wine)}
.privacy-check a{color:var(--wine);font-weight:700}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.legal-page{max-width:900px;padding-top:70px;padding-bottom:85px}
.legal-page h1{font-size:clamp(3rem,5vw,5rem);margin:0 0 20px}
.legal-page .lead{margin-bottom:45px}
.legal-page section{border-top:1px solid var(--line);padding:24px 0 15px}
.legal-page h2{font-size:1.65rem;margin:0 0 10px}
.legal-page section p{color:var(--soft);max-width:720px}
.legal-page>.text-link,.legal-page>p:last-child{margin-top:32px}
.cookie-notice[hidden]{display:none}
.cookie-notice{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;max-width:880px;margin:0 auto;padding:18px 20px;display:flex;align-items:center;gap:22px;justify-content:space-between;background:var(--white);color:var(--ink);border:1px solid var(--copper);box-shadow:0 15px 45px #281b1840}
.cookie-notice strong{font:400 1.25rem Georgia,serif}
.cookie-notice p{margin:5px 0 0;font-size:.87rem;line-height:1.45;color:var(--soft)}
.cookie-notice a{color:var(--wine);font-weight:700}
.cookie-notice button{flex:none;padding:10px 14px;background:var(--wine);color:#fff;border:1px solid var(--wine);border-radius:2px;font-size:.82rem;font-weight:700;cursor:pointer}
.cookie-notice button:hover{background:#3f1a21}
.cookie-notice button:focus-visible{outline:3px solid var(--copper);outline-offset:3px}
@media(max-width:700px){.contact-section{padding:48px 0 60px}.contact-grid{display:block}.contact-copy{margin-bottom:25px}.contact-copy h2{font-size:2.6rem}.contact-form{padding:21px}.contact-form .field-row{grid-template-columns:1fr}.legal-page{padding-top:48px;padding-bottom:65px}.cookie-notice{left:10px;right:10px;bottom:10px;align-items:stretch;display:block;padding:15px}.cookie-notice button{margin-top:12px;width:100%}}
@media(max-width:680px){.main-nav a[href$="#contact"]{display:inline!important;color:var(--wine);font-weight:700}.main-nav .nav-fiverr{display:none}}
