*{box-sizing:border-box}body{margin:0;background:#f1ebdf;color:#293b43;font-family:'Avenir Next',Arial,sans-serif}header{padding:27px 6%;display:flex;justify-content:space-between;gap:25px;align-items:center;border-bottom:1px solid #293b4320}a{color:inherit;text-underline-offset:4px;font-size:13px}.brand{font:29px 'Iowan Old Style',Georgia,serif;text-decoration:none;color:#294565}main{max-width:1100px;margin:70px auto;padding:0 6%;display:grid;grid-template-columns:1fr 1fr;gap:80px}h1{font:400 52px/1.05 'Iowan Old Style',Georgia,serif;letter-spacing:-.04em;margin:20px 0 25px}.intro p{font-size:15px;line-height:1.7;max-width:360px}.intro .preview{font-size:11px;color:#68777a}.notice{border-left:2px solid #b09c6b;padding-left:14px;color:#677476}form{background:#fbf8f0;padding:30px;box-shadow:0 8px 25px #4a463511}label{display:block;font-size:12px;margin:0 0 8px}input,select,textarea{display:block;width:100%;font:15px 'Avenir Next',Arial,sans-serif;color:#293b43;background:#fffef9;border:1px solid #b2bab3;border-radius:2px;padding:11px;margin:0 0 21px}textarea{resize:vertical}button{font:14px 'Avenir Next',Arial,sans-serif;background:#294565;color:white;border:0;padding:13px 20px;cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #b19043;outline-offset:4px}#form-status{font-size:12px;line-height:1.6;color:#64716b;margin-bottom:0}@media(max-width:700px){header{padding:22px 6%}.brand{font-size:24px}header a{font-size:11px}main{grid-template-columns:1fr;gap:25px;margin:35px auto}h1{font-size:45px}form{padding:23px}}

@font-face{font-family:ContactSans;src:url('assets/fonts/source-sans3.woff2') format('woff2');font-weight:200 900;font-display:swap}
@font-face{font-family:ContactSerif;src:url('assets/fonts/source-serif4.woff2') format('woff2');font-weight:200 900;font-display:swap}
@font-face{font-family:ContactBrand;src:url('assets/fonts/fraunces.ttf') format('truetype');font-weight:100 900;font-display:swap}
body,input,select,textarea,button{font-family:ContactSans,sans-serif}
h1{font-family:ContactSerif,serif;font-variation-settings:"wght" 400,"opsz" 48}
.brand{font-family:ContactBrand,serif;font-variation-settings:"SOFT" 0,"WONK" 0,"opsz" 48;display:inline-flex;flex-direction:column;align-items:flex-start}
.brand-descriptor{align-self:flex-end;font:400 10px/1.2 ContactSans,sans-serif;margin:1px 3.2em 0 0}
label{font-size:14px;line-height:1.35}.brand-descriptor{font-size:12px}form{border:1px solid #ded7c8;box-shadow:1px 2px 3px #3c352511,0 8px 22px #3c35250c;background:linear-gradient(110deg,#fffdf8,#f8f4eb)}button:disabled{opacity:.65;cursor:wait}#form-status[data-state="error"]{color:#873c2c}#form-status[data-state="success"]{color:#2c5944}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#background-details{margin:18px 0}#background-details summary{cursor:pointer;min-height:44px;padding:12px 0}#background-details summary:focus-visible{outline:2px solid #173449;outline-offset:3px}.identity-fields{display:grid;gap:0 18px}
@media(min-width:600px){.identity-fields{grid-template-columns:1fr 1fr}}
@media(max-width:999px){main{max-width:760px;grid-template-columns:1fr;gap:25px;margin:35px auto}form{width:100%;min-width:0}.intro p{max-width:560px}}
@media(min-width:1000px){main{max-width:1100px;grid-template-columns:minmax(280px,1fr) minmax(500px,1.5fr);gap:48px}}
.preferences{border:0;padding:0;margin:20px 0}.preferences legend{font-weight:500;margin-bottom:9px}.preference-options{display:flex;flex-wrap:wrap;gap:8px}.preference-options label{position:relative;margin:0;cursor:pointer}.preference-options input{position:absolute;opacity:0;width:1px;min-height:0;height:1px;margin:0}.preference-options span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 13px;border:1px solid #8e998d;border-radius:22px;font-size:15px;background:#fffdf6}.preference-options input:checked+span{background:#173449;color:#fff8e8;border-color:#173449}.preference-options input:focus-visible+span{outline:2px solid #173449;outline-offset:3px}.field-help{font-size:13px;line-height:1.45;color:#53615a;margin:9px 0}
.booking-option a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}.booking-option a:focus-visible{outline:2px solid #173449;outline-offset:4px}
@media(max-width:900px){input,select,textarea{font-size:16px;min-height:44px}button{min-height:44px}.brand-descriptor{font-size:12px}}
/* P-anchored consulting/modernization lockup. */
.brand{display:block;white-space:nowrap;padding:0 76px 15px 0;line-height:1}
.brand-p{position:relative;display:inline-block}
.brand-p .brand-consulting,.brand-p .brand-modernization{position:absolute;top:76%;font:400 12px/1 ContactSans,sans-serif;letter-spacing:0;white-space:nowrap}
.brand-p .brand-consulting{right:100%;margin-right:1px}
.brand-p .brand-modernization{left:42%;margin-left:2px}
@media(max-width:600px){header{flex-wrap:wrap;gap:12px}header>a:last-child{margin-left:auto}}

/* The consultation stays on the same desk; the form is a single paper sheet. */
body{background:#30271f url('assets/walnut-material-preview-2026-09-08.webp') center top/1536px auto repeat;color:#fff8e8}
header{border-bottom:1px solid #e5d1a82e}
header>a:last-child{font-size:15px;min-height:44px;display:inline-flex;align-items:center}
main{margin-top:48px;margin-bottom:64px}
h1{letter-spacing:-.045em}
.intro p{font-size:17px;line-height:1.65}
.notice{border-color:#d3b781;color:#e8decc}
.intro .preview{color:#e8decc}
form{color:#263b31;background:linear-gradient(110deg,#fffdf6ed,#f3ecdfed),url('assets/paper-material.webp') center/440px;border-color:#eee4cf;box-shadow:0 2px 3px #130c0733,0 18px 48px #130c0740}
input,select,textarea{color:#263b31;background:#fffefa;border-color:#a5afa2}
button{background:#225b43;color:#fff8e8;border:1px solid #c1cfb280;min-height:48px}
button:hover:not(:disabled){background:#2b6b50}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #225b43;outline-offset:4px}
header a:focus-visible,.intro a:focus-visible{outline:3px solid #fff8e8;outline-offset:4px;box-shadow:0 0 0 7px #173e2d}
@media(max-width:999px){main{margin-top:28px}}
