.contact-page main{background:#f2efe9;color:#171717}
.contact-page .phero{min-height:0;height:auto;padding:calc(var(--nav) + 52px) 0 60px}
.contact-page .phero-in{padding-top:0;padding-bottom:0}
.contact-page .crumb{margin-bottom:40px;color:#69665f}
.contact-page .phero .label{color:#69665f;margin-bottom:20px}
.contact-page .phero h1{font-size:clamp(40px,5vw,72px);line-height:1.18;letter-spacing:-.045em;margin:20px 0 24px}
.contact-page .phero .lead{font-size:17px;line-height:1.8;max-width:680px;color:#57554f}
.contact-page .entries{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid #cecac2;border-bottom:1px solid #cecac2;gap:0}
.contact-page .entry{padding:28px 22px;min-width:0;border:0;border-right:1px solid #d9d5cd;position:relative;transition:background .15s}
.contact-page .entry:first-child{padding-left:0}
.contact-page .entry:last-child{border-right:0}
.contact-page .entry:hover,.contact-page .entry:focus-visible{background:#e8e4dc}
.contact-page .entry h3{font-size:19px;line-height:1.4;margin:0 0 12px;font-weight:550}
.contact-page .entry p{font-size:14px;line-height:1.7;margin:0;color:#625f58}
.contact-layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);gap:clamp(40px,7vw,110px);padding-top:64px;align-items:start}
.contact-aside{padding-top:8px}
.contact-aside h2{font-size:clamp(24px,2.4vw,34px);line-height:1.4;letter-spacing:-.025em;margin:0 0 20px;font-weight:500}
.contact-aside p{font-size:15px;line-height:1.9;color:#625f58;margin-bottom:32px}
.contact-aside>a{font-size:clamp(15px,1.4vw,19px);text-decoration:underline;text-underline-offset:6px}
.contact-aside small{display:block;font-size:12px;color:#69665f;margin-top:14px}
.contact-page .cform{margin:0;max-width:none;padding:32px;background:#faf9f6;border:1px solid #dedad2;border-radius:12px}
.form-intro{margin-bottom:28px}.form-intro h2{font-size:23px;font-weight:550;margin:0 0 8px}.form-intro p{font-size:13px;color:#69665f;line-height:1.6;margin:0}
.contact-page .cform .fg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}
.contact-page .cform label{font-family:var(--sans);font-size:13px;line-height:1.5;letter-spacing:0;color:#4f4d47;margin:0;gap:9px}
.contact-page .cform input,.contact-page .cform textarea{width:100%;min-width:0;border:1px solid #d1cdc5;background:#fff;padding:13px 14px;border-radius:6px;font-size:16px;line-height:1.5;min-height:52px;transition:border-color .15s}
.contact-page .cform input::placeholder,.contact-page .cform textarea::placeholder{color:#87837b;font-size:14px}
.contact-page .cform input:focus,.contact-page .cform textarea:focus{outline:2px solid #242424;outline-offset:2px;border-color:#242424}
.contact-page .contact-choice{gap:9px}
.contact-page .choice-trigger{min-height:52px;padding:13px 14px;border-radius:6px;border-color:#d1cdc5;background:white;line-height:1.5}
.contact-page .cform .full{margin:24px 0}
.contact-page .cform textarea{resize:vertical;min-height:140px}
.contact-page .cform .meta{font-size:12px;color:#69665f;line-height:1.7;margin:14px 0 0}
.contact-page .cform .btn{min-height:50px;font-size:15px}
.contact-page .sec{padding-bottom:80px}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:30px}.contact-aside p{margin-bottom:16px}.contact-aside h2 br,.contact-aside p br{display:none}.contact-page .entries{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-page .entry:first-child{padding-left:20px}.contact-page .entry{padding:22px 20px;border-bottom:1px solid #d9d5cd}.contact-page .entry:nth-child(3){border-right:0}}
@media(max-width:560px){.contact-page .phero{padding-top:calc(var(--nav) + 28px);padding-bottom:36px}.contact-page .crumb{margin-bottom:28px}.contact-page .phero .lead{font-size:15px}.contact-page .phero .lead br{display:none}.contact-page .entries{grid-template-columns:1fr}.contact-page .entry,.contact-page .entry:first-child{padding:18px 2px;border-right:0}.contact-page .entry:last-child{border-bottom:0}.contact-page .entry h3{font-size:17px;margin-bottom:5px}.contact-page .entry p{font-size:13px}.contact-layout{padding-top:36px}.contact-page .cform{padding:22px 18px}.contact-page .cform .fg{grid-template-columns:1fr;gap:19px}.contact-page .cform .btn{width:100%;justify-content:space-between}.contact-page .sec{padding-bottom:48px}}

/* Balanced contact-page proportions across wide and compact screens. */
.contact-page main .wrap{max-width:1440px}
.contact-page .phero{padding:calc(var(--nav) + 32px) 0 40px}
.contact-page .phero-in{display:grid;grid-template-columns:1.15fr 1fr;column-gap:clamp(40px,7vw,100px);align-items:end}
.contact-page .phero-in>nav{grid-column:1/-1}
.contact-page .crumb{margin:0 0 32px}
.contact-page .phero .label{grid-column:1/-1;margin:0 0 16px}
.contact-page .phero h1{font-size:clamp(44px,4.2vw,64px);line-height:1.2;margin:0;max-width:none}
.contact-page .phero .lead{font-size:16px;line-height:1.9;margin:0 0 5px;max-width:440px}
.contact-page .phero .lead br{display:none}
.contact-page .entry{padding-top:24px;padding-bottom:24px}
.contact-layout{padding-top:44px;grid-template-columns:minmax(220px,.85fr) minmax(0,1.65fr);gap:clamp(32px,5vw,72px)}
.contact-page .cform{padding:28px}
@media(max-width:900px){.contact-page .phero-in{grid-template-columns:1fr;gap:0}.contact-page .phero .lead{margin:22px 0 0;max-width:580px}.contact-layout{grid-template-columns:1fr;gap:26px}.contact-page .phero{padding-bottom:32px}}
@media(max-width:560px){.contact-page .phero{padding-top:calc(var(--nav) + 24px)}.contact-page .crumb{margin-bottom:24px}.contact-page .phero h1{font-size:40px}.contact-page .phero .lead{font-size:15px}.contact-page .entry{padding-top:16px;padding-bottom:16px}.contact-layout{padding-top:30px}.contact-page .cform{padding:22px 18px}}