/* Contact page only; shared consultation modal and footer keep their styles. */
.contact-page #main-content.contact-minimal{--ink:#29312e;--ink-soft:#687067;--accent:#b35d38;--line:#e5ded3;background:#faf8f3;color:var(--ink)}
.contact-page #main-content.contact-minimal .container{width:calc(100% - 64px);max-width:1200px;margin-inline:auto}
.contact-page #main-content.contact-minimal section{padding:40px 0!important;min-height:0!important;background:#faf8f3!important;color:var(--ink)!important}
.contact-page #main-content.contact-minimal .contact-main-section{background:#f3eee6!important}
.contact-page #main-content.contact-minimal section::before,.contact-page #main-content.contact-minimal section::after{display:none!important}
.contact-page #main-content.contact-minimal h1{font-size:44px!important;line-height:1.12!important;letter-spacing:-1.2px;color:var(--ink)!important;max-width:20ch!important;margin:12px 0 18px!important}
.contact-page #main-content.contact-minimal h2{font-family:Georgia,serif;font-size:32px!important;font-weight:400;line-height:1.2;letter-spacing:-.6px;color:var(--ink)!important;margin:10px 0 14px}
.contact-page #main-content.contact-minimal p{font-size:14px;line-height:1.7;color:var(--ink-soft)!important;margin:0 0 12px}
.contact-page #main-content.contact-minimal .eyebrow{font-size:10px!important;letter-spacing:1.6px;color:#b35d38!important;margin-bottom:12px}
.contact-page #main-content.contact-minimal .section-lead{font-size:14px!important}
.contact-page #main-content.contact-minimal .btn{min-height:44px;padding:12px 20px;font-size:12px;border-radius:24px!important;box-shadow:none!important;line-height:1.4}
.contact-page #main-content.contact-minimal .btn-primary{background:#b35d38!important;border:1px solid #b35d38!important;color:#fff!important}
.contact-page #main-content.contact-minimal .btn-primary:hover{background:#944527!important;border-color:#944527!important}
.contact-page #main-content.contact-minimal .btn-secondary{background:transparent!important;color:var(--ink)!important;border:1px solid #cfc3b6!important}
.contact-page #main-content.contact-minimal a:focus-visible,.contact-page #main-content.contact-minimal button:focus-visible{outline:2px solid #b35d38;outline-offset:4px}
.contact-page #main-content.contact-minimal .services-hero-layout{display:grid;grid-template-columns:1.2fr 1fr!important;gap:44px!important;align-items:center}
.contact-page #main-content.contact-minimal .hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.contact-page #main-content.contact-minimal .services-hero-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}
.contact-page #main-content.contact-minimal .services-hero-tags span{padding:6px 9px;background:#f4ede3!important;border:1px solid var(--line)!important;border-radius:5px!important;font-size:10px!important;color:var(--ink-soft)!important}
.contact-page #main-content.contact-minimal .services-hero-visual{display:grid!important;gap:30px!important;padding:24px!important;background:#f0e6d9!important;min-height:0!important;border:1px solid var(--line)!important;border-radius:12px!important}
.contact-page #main-content.contact-minimal .visual-route-card{position:relative!important;display:block!important;padding:22px!important;background:#fffdf9!important;border:1px solid #e0d4c4!important;border-radius:8px!important;box-shadow:none!important;width:100%!important;transform:none!important}
.contact-page #main-content.contact-minimal .visual-route-card:not(:last-child)::after{content:'\2193';position:absolute;left:50%;top:calc(100% + 1px);height:28px;line-height:28px;font-size:22px;color:#b35d38;transform:translateX(-50%)}
.contact-page #main-content.contact-minimal .visual-route-card span{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#b35d38!important;margin-bottom:12px}
.contact-page #main-content.contact-minimal .visual-route-card strong{display:block;font-family:Georgia,serif;font-size:22px!important;font-weight:400;line-height:1.4;color:var(--ink)!important;margin-bottom:12px}
.contact-page #main-content.contact-minimal .visual-route-card small{display:block;font-size:13px;line-height:1.6;color:var(--ink-soft)!important}
.contact-page #main-content.contact-minimal .contact-layout{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:30px;align-items:start}
.contact-page #main-content.contact-minimal .contact-next-steps{position:relative;grid-column:1/-1;display:grid;grid-template-columns:1fr 26px 1fr 26px 1fr;gap:12px;align-items:center;padding:22px;background:#fff!important;border:1px solid var(--line);border-radius:10px!important;box-shadow:none;margin:0;min-height:0}
.contact-page #main-content.contact-minimal .contact-next-steps::before,.contact-page #main-content.contact-minimal .contact-next-steps::after{display:none!important}
.contact-page #main-content.contact-minimal .next-step{display:flex;align-items:flex-start;gap:12px;padding:0;background:transparent;border:0;box-shadow:none;transform:none}
.contact-page #main-content.contact-minimal .next-step-num{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid #d6b498;border-radius:50%;background:#faf5ed;color:#b35d38!important;font-family:Georgia,serif;font-size:18px;opacity:1;position:static;line-height:1}
.contact-page #main-content.contact-minimal .next-step-text{display:block;min-width:0}
.contact-page #main-content.contact-minimal .next-step-text strong{display:block;font-size:13px;font-weight:500;color:var(--ink)!important;line-height:1.5;margin-bottom:6px}
.contact-page #main-content.contact-minimal .next-step-text span{display:block;font-size:12px;color:var(--ink-soft)!important;line-height:1.6}
.contact-page #main-content.contact-minimal .next-step-arrow{font-size:0!important;display:grid;place-items:center;position:static;transform:none;color:#b35d38!important;margin:0}
.contact-page #main-content.contact-minimal .next-step-arrow::after{content:'\2192';font-size:22px}
.contact-page #main-content.contact-minimal .contact-copy{min-width:0;position:static;display:block}
.contact-page #main-content.contact-minimal .contact-copy>p:not(.eyebrow){font-size:13px}
.contact-page #main-content.contact-minimal .contact-info-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.contact-page #main-content.contact-minimal .contact-info-list article{display:block;padding:18px;background:#fff;border:1px solid var(--line);border-radius:8px!important;min-width:0}
.contact-page #main-content.contact-minimal .contact-info-list article:last-child{grid-column:1/-1}
.contact-page #main-content.contact-minimal .contact-info-list article>span{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#b35d38!important;margin-bottom:10px}
.contact-page #main-content.contact-minimal .contact-info-list a{font-size:13px;color:#944527!important;overflow-wrap:anywhere}
.contact-page #main-content.contact-minimal .contact-info-list p{font-size:13px;margin-bottom:10px}
.contact-page #main-content.contact-minimal .contact-map-embed{margin-top:16px;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#f6f1e9}
.contact-page #main-content.contact-minimal .contact-map-embed iframe{width:100%;height:240px}
.contact-page #main-content.contact-minimal .contact-form-card{display:block;min-width:0;padding:28px;background:#fffdf9!important;border:1px solid #ded2c2!important;border-radius:12px!important;box-shadow:0 12px 32px #46301c06;scroll-margin-top:110px}
.contact-page #main-content.contact-minimal .form-heading{margin-bottom:22px;padding:0;border:0}
.contact-page #main-content.contact-minimal .form-heading h2{font-size:29px!important}
.contact-page #main-content.contact-minimal .form-heading p:not(.eyebrow){font-size:13px;margin-bottom:0}
.contact-page #main-content.contact-minimal .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
.contact-page #main-content.contact-minimal .form-grid label:not(.form-hp){display:block;min-width:0;margin:0}
.contact-page #main-content.contact-minimal .form-grid label>span{display:block;font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:#944527;font-weight:600;line-height:1.5;margin-bottom:7px}
.contact-page #main-content.contact-minimal .form-grid input:not([type=hidden]),.contact-page #main-content.contact-minimal .form-grid select,.contact-page #main-content.contact-minimal .form-grid textarea{box-sizing:border-box;width:100%;min-width:0;padding:12px;font:inherit;font-size:13px;line-height:1.5;color:#29312e;background:#fff;border:1px solid #d6cbbd;border-radius:5px;box-shadow:none;min-height:45px}
.contact-page #main-content.contact-minimal .form-grid input::placeholder,.contact-page #main-content.contact-minimal .form-grid textarea::placeholder{color:#80817b;opacity:1}
.contact-page #main-content.contact-minimal .form-grid textarea{min-height:120px;resize:vertical}
.contact-page #main-content.contact-minimal .form-grid :is(input,select,textarea):focus{border-color:#b35d38;outline:2px solid #b35d3826;outline-offset:1px}
.contact-page #main-content.contact-minimal .form-full{grid-column:1/-1}
.contact-page #main-content.contact-minimal .form-submit-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.contact-page #main-content.contact-minimal .form-privacy-note{font-size:11px;line-height:1.7;margin:14px 0 0}
.contact-page #main-content.contact-minimal .form-privacy-note a{color:#944527!important;text-decoration:underline;text-underline-offset:3px}
.contact-page #main-content.contact-minimal .form-status:empty{display:none}
.contact-page #main-content.contact-minimal .form-success-panel{grid-column:1/-1;border-radius:8px;padding:22px;background:#ecf1e8;color:#29312e;border:1px solid #cdd8c6}
.contact-page #main-content.contact-minimal .form-success-panel[hidden]{display:none!important}
.contact-page #main-content.contact-minimal .contact-layout{grid-template-areas:'steps steps' 'copy form' 'success success'}
.contact-page #main-content.contact-minimal .contact-next-steps{grid-area:steps!important}
.contact-page #main-content.contact-minimal .contact-copy{grid-area:copy!important}
.contact-page #main-content.contact-minimal .contact-form-card{grid-area:form!important}
.contact-page #main-content.contact-minimal .form-success-panel{grid-area:success!important}
.contact-page #main-content.contact-minimal .next-step{flex-direction:row!important;align-items:flex-start!important}
.contact-page #main-content.contact-minimal .form-grid label>span{color:#944527!important}
.contact-page #main-content.contact-minimal .form-grid :is(input,select,textarea){border-color:#d6cbbd!important;border-radius:5px!important;font-weight:400!important}
@media(max-width:1000px){
 .contact-page #main-content.contact-minimal .services-hero-layout{gap:24px!important}
 .contact-page #main-content.contact-minimal h1{font-size:38px!important}
 .contact-page #main-content.contact-minimal .contact-layout{gap:22px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important}
 .contact-page #main-content.contact-minimal .contact-info-list{grid-template-columns:1fr}
 .contact-page #main-content.contact-minimal .contact-form-card{padding:22px}
}
@media(max-width:800px){
 .contact-page #main-content.contact-minimal .contact-layout{grid-template-areas:'steps' 'copy' 'form' 'success'}
 .contact-page #main-content.contact-minimal .services-hero-layout,.contact-page #main-content.contact-minimal .contact-layout{grid-template-columns:1fr!important;gap:24px!important}
 .contact-page #main-content.contact-minimal .contact-info-list{grid-template-columns:1fr 1fr}
 .contact-page #main-content.contact-minimal .contact-next-steps{grid-template-columns:1fr;gap:12px}
 .contact-page #main-content.contact-minimal .next-step-arrow{justify-self:start;margin-left:5px}
 .contact-page #main-content.contact-minimal .next-step-arrow::after{content:'\2193'}
}
@media(max-width:540px){
 .contact-page #main-content.contact-minimal .container{width:calc(100% - 40px)}
 .contact-page #main-content.contact-minimal section{padding:30px 0!important}
 .contact-page #main-content.contact-minimal h1{font-size:31px!important;letter-spacing:-.7px}
 .contact-page #main-content.contact-minimal h2{font-size:27px!important}
 .contact-page #main-content.contact-minimal .services-hero-visual{padding:16px!important}
 .contact-page #main-content.contact-minimal .visual-route-card{padding:18px!important}
 .contact-page #main-content.contact-minimal .visual-route-card strong{font-size:21px!important}
 .contact-page #main-content.contact-minimal .form-grid,.contact-page #main-content.contact-minimal .contact-info-list{grid-template-columns:1fr}
 .contact-page #main-content.contact-minimal .contact-form-card{padding:20px}
 .contact-page #main-content.contact-minimal .form-submit-row{flex-direction:column}
 .contact-page #main-content.contact-minimal .contact-map-embed iframe{height:220px}
}
