.contact-v2-page{background:var(--pe-paper);}
.contact-hero{position:relative;overflow:hidden;background:linear-gradient(146deg,#0d100d,#141812 62%,#101310);color:var(--pe-white);padding:clamp(72px,7vw,96px) 0 clamp(68px,6.5vw,88px)}
.contact-hero .pe-hero__circ{background:rgba(249,247,241,.032);opacity:1}
.contact-hero__inner{position:relative;z-index:1}
.contact-hero h1{margin:0;font-family:var(--pe-serif);font-size:clamp(54px,5.3vw,72px);font-weight:400;line-height:.99;letter-spacing:-.047em}
.contact-hero p{margin:26px 0 0;max-width:810px;color:rgba(249,247,241,.72);font-size:18px;line-height:1.6}
.contact-intake{padding:clamp(78px,8vw,112px) 0 clamp(86px,8vw,118px);background:var(--pe-paper)}
.contact-intake__lead{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:clamp(46px,7vw,96px);align-items:start;padding-bottom:42px;border-bottom:1px solid rgba(21,23,19,.26)}
.contact-intake__lead h2{margin:0;max-width:760px;font-family:var(--pe-serif);font-size:clamp(38px,4vw,50px);font-weight:400;line-height:1.02;letter-spacing:-.038em;text-wrap:unset}
.contact-intake__lead p{margin:5px 0 0;max-width:570px;color:var(--pe-muted);font-size:17px;line-height:1.63}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.52fr) minmax(265px,.48fr);gap:clamp(56px,7vw,94px);align-items:start;padding-top:48px}
.contact-form-shell{min-width:0}
.contact-form{transition:opacity .2s ease,transform .2s ease}
.contact-form[data-state="sending"]{opacity:.66;pointer-events:none}
.contact-form[data-state="leaving"]{opacity:0;transform:translateY(-5px)}
.contact-form__status{min-height:0;margin:0 0 0;padding:0;overflow:hidden;color:var(--pe-ink);font-size:14px;line-height:1.5;transition:min-height .18s ease,margin .18s ease,padding .18s ease}
.contact-form__status:not(:empty){min-height:48px;margin-bottom:26px;padding:13px 15px;border-left:2px solid var(--pe-clay);background:var(--pe-clay-wash)}
.contact-fields{display:grid;gap:28px 30px}
.contact-fields--identity{grid-template-columns:1fr 1fr}
.contact-fields--context{grid-template-columns:1fr 1fr;margin-top:30px}
.contact-field{min-width:0}
.contact-field--subject{margin-top:30px}
.contact-field--message{margin-top:34px}
.contact-field label{display:flex;align-items:baseline;gap:8px;margin-bottom:9px;color:var(--pe-ink);font-size:13px;font-weight:700;line-height:1.3}
.contact-field label span,.contact-field__heading>span{color:var(--pe-muted);font-size:11px;font-weight:500}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:1px solid #b6bab1;border-radius:0;background-color:rgba(251,250,246,.72);color:var(--pe-ink);font:450 15px/1.35 var(--pe-sans);box-shadow:none;transition:border-color var(--estate-motion-fast) ease,box-shadow var(--estate-motion-fast) ease,background-color var(--estate-motion-fast) ease}
.contact-field input,.contact-field select{min-height:var(--estate-control-height);padding:0 var(--estate-control-pad-x)}
.contact-field textarea{min-height:190px;padding:14px 15px;resize:vertical;line-height:1.55}
.contact-field input:hover,.contact-field select:hover,.contact-field textarea:hover{border-color:#92988f}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:0;border-color:var(--pe-verdigris);background-color:var(--pe-paper-bright);box-shadow:0 0 0 3px rgba(82,117,107,.13)}
.contact-field [aria-invalid="true"]{border-color:#9a6256;box-shadow:0 0 0 2px rgba(154,98,86,.11)}
.contact-field__heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px}
.contact-field__help{margin:9px 0 0;max-width:720px;color:var(--pe-muted);font-size:12.5px;line-height:1.48;transition:opacity .16s ease,transform .16s ease}
.contact-field__help.is-changing{opacity:.15;transform:translateY(2px)}
.contact-field__error{min-height:0;margin:6px 0 0;color:#845147;font-size:12px;line-height:1.4}
.contact-submit-row{display:flex;align-items:center;gap:22px;margin-top:32px;padding-top:28px;border-top:1px solid var(--pe-line-soft)}
.contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:168px;min-height:50px;padding:0 20px;border:1px solid var(--pe-night);background:var(--pe-night);color:var(--pe-white);font:700 14px/1 var(--pe-sans);cursor:pointer;transition:background .17s ease,border-color .17s ease,transform .17s ease}
.contact-submit:hover,.contact-submit:focus-visible{background:#20251f;border-color:#20251f}
.contact-submit:active{transform:translateY(1px)}
.contact-submit__arrow{transition:transform .17s ease}
.contact-submit:hover .contact-submit__arrow,.contact-submit:focus-visible .contact-submit__arrow{transform:translateX(3px)}
.contact-submit-row p{margin:0;color:var(--pe-muted);font-size:13px}
.contact-privacy-note{margin:17px 0 0;max-width:690px;color:var(--pe-muted);font-size:11.5px;line-height:1.48}
.contact-privacy-note a{text-underline-offset:3px}
.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-rail{padding-left:34px;border-left:1px solid rgba(21,23,19,.23)}
.contact-rail section{padding:0 0 25px;margin:0 0 25px;border-bottom:1px solid var(--pe-line-soft)}
.contact-rail h3{margin:0 0 8px;font-size:11px;font-weight:750;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;color:var(--pe-muted)}
.contact-rail a{color:var(--pe-ink);text-decoration:none}
.contact-rail a:hover,.contact-rail a:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.contact-phone{display:block;margin:2px 0 8px;font-family:var(--pe-serif);font-size:30px;line-height:1.08;letter-spacing:-.025em}
.contact-rail p{margin:0;color:var(--pe-muted);font-size:12.5px;line-height:1.5}
.contact-rail__channel>a{font-size:15px;font-weight:620}
.contact-rail__links{display:grid;gap:7px}
.contact-rail__links a{font-size:13px}
.contact-rail__note{margin-top:3px!important;padding-top:4px;color:#646960!important;font-size:11.5px!important}
.contact-received{min-height:520px;padding:32px 0 0;opacity:0;transform:translateY(7px);transition:opacity .22s ease,transform .22s ease}
.contact-received.is-visible{opacity:1;transform:none}
.contact-received__mark{display:grid;place-items:center;width:42px;height:42px;margin-bottom:28px;border:1px solid #7e9186;border-radius:50%;color:var(--pe-verdigris);font-size:18px}
.contact-received h3{margin:0;max-width:15ch;font-family:var(--pe-serif);font-size:clamp(36px,3.8vw,48px);font-weight:400;line-height:1.02;letter-spacing:-.037em}
.contact-received>p{max-width:570px;margin:20px 0 0;color:var(--pe-muted);font-size:16px;line-height:1.6}
.contact-received__receipt{margin:34px 0 0;border-top:1px solid rgba(21,23,19,.26);max-width:580px}
.contact-received__receipt>div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--pe-line-soft)}
.contact-received__receipt dt{font-size:11px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--pe-muted)}
.contact-received__receipt dd{margin:0;font-size:13px}
.contact-received__email{font-size:13px!important}
.contact-reset{display:inline-flex;align-items:center;gap:9px;margin-top:28px;font-size:13px;font-weight:650;text-decoration:none}
.contact-reset span{transition:transform .17s ease}.contact-reset:hover span,.contact-reset:focus-visible span{transform:translateX(3px)}
@media(max-width:980px){
  .contact-intake__lead{grid-template-columns:1fr;gap:23px}.contact-intake__lead p{max-width:680px}
  .contact-layout{grid-template-columns:1fr;gap:56px}.contact-rail{padding-left:0;padding-top:34px;border-left:0;border-top:1px solid rgba(21,23,19,.23);display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px}
  .contact-rail section{margin:0;padding:0 22px 0 0;border-bottom:0;border-right:1px solid var(--pe-line-soft)}.contact-rail section:nth-of-type(3){border-right:0}.contact-rail__other{grid-column:1/-1!important;border-right:0!important;padding-top:8px!important}.contact-rail__links{grid-template-columns:repeat(5,max-content);gap:10px 24px}.contact-rail__note{grid-column:1/-1}
}
@media(max-width:680px){
  .contact-hero{padding:58px 0 62px}.contact-hero .pe-hero__circ{background:rgba(249,247,241,.032);opacity:1}.contact-hero h1{font-size:40px;line-height:1.04}.contact-hero p{margin-top:25px;font-size:16px;line-height:1.58}
  .contact-intake{padding:68px 0 76px}.contact-intake__lead{padding-bottom:34px}.contact-intake__lead h2{font-size:32px;line-height:1.04}.contact-intake__lead p{font-size:16px;line-height:1.58}
  .contact-layout{padding-top:36px;gap:48px}.contact-fields--identity,.contact-fields--context{grid-template-columns:1fr;gap:22px}.contact-fields--context,.contact-field--subject{margin-top:22px}.contact-field--message{margin-top:27px}.contact-field__heading{display:block}.contact-field__heading>span{display:block;margin:-2px 0 8px}
  .contact-field input,.contact-field select{min-height:50px}.contact-field textarea{min-height:180px}
  .contact-submit-row{display:block;margin-top:28px;padding-top:24px}.contact-submit{width:100%}.contact-submit-row p{margin-top:12px}.contact-privacy-note{margin-top:14px}
  .contact-rail{display:block;padding-top:32px}.contact-rail section{padding:0 0 22px;margin:0 0 22px;border-right:0;border-bottom:1px solid var(--pe-line-soft)}.contact-rail__other{padding-top:0!important}.contact-rail__links{grid-template-columns:1fr 1fr;gap:8px 20px}.contact-rail__note{margin-top:0!important}
  .contact-received{min-height:440px;padding-top:10px}.contact-received h3{font-size:36px}.contact-received__receipt>div{grid-template-columns:1fr;gap:4px}
}
@media(prefers-reduced-motion:reduce){
  .contact-form,.contact-form__status,.contact-field input,.contact-field select,.contact-field textarea,.contact-field__help,.contact-submit,.contact-submit__arrow,.contact-received,.contact-reset span{transition:none!important;scroll-behavior:auto!important}
}

/* R10 operational submission polish */
.contact-form__status[data-kind="progress"]{border-left-color:#71877b;background:rgba(82,117,107,.075);color:#4e5c53}
.contact-form__status[data-kind="exception"]{border-left-color:#9a6256;background:rgba(154,98,86,.075)}
.contact-form[data-state="sending"] .contact-submit__arrow{position:relative;width:13px;height:13px;color:transparent;transform:none!important}
.contact-form[data-state="sending"] .contact-submit__arrow::after{content:"";position:absolute;inset:0;border:1.5px solid rgba(249,247,241,.42);border-top-color:rgba(249,247,241,.96);border-radius:50%;animation:contact-submit-spin .8s linear infinite}
.contact-form[data-state="sending"] .contact-submit{cursor:wait}
@keyframes contact-submit-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.contact-form[data-state="sending"] .contact-submit__arrow::after{animation:none;border-color:rgba(249,247,241,.78)}}
.contact-received{scroll-margin-top:84px}
@media(max-width:680px){.contact-received{scroll-margin-top:70px}}

/* Governed AI Review intent handoff — contextual only; generic Contact remains unchanged. */
.contact-review-context{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:30px 0 0;padding:18px 0;border-top:1px solid rgba(21,23,19,.22);border-bottom:1px solid rgba(21,23,19,.22)}
.contact-review-context[hidden]{display:none!important}
.contact-review-context>div{display:flex;align-items:baseline;gap:18px;min-width:0}
.contact-review-context strong{font-size:15px;font-weight:720;color:var(--pe-ink)}
.contact-review-context span{font-size:13px;line-height:1.45;color:var(--pe-muted)}
.contact-review-context a{flex:0 0 auto;color:var(--pe-ink);font-size:13px;font-weight:650;text-decoration:none}
.contact-review-context a:hover,.contact-review-context a:focus-visible{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.contact-review-context{align-items:flex-start;padding:16px 0}.contact-review-context>div{display:grid;gap:5px}.contact-review-context a{padding-top:1px}}
