*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--site-body);background:var(--site-ivory);color:var(--site-ink);overflow-x:hidden;line-height:var(--site-leading-body);}
.page-header{padding-top:0;background:var(--site-stone);}
.page-header-inner{max-width:1140px;margin:0 auto;padding:4rem 2.5rem;display:grid;grid-template-columns:1fr 260px;gap:4rem;align-items:center;}
.ph-eyebrow{font-size:var(--site-size-label);letter-spacing:0.25em;text-transform:uppercase;font-weight:600;color:var(--site-accent-ink);margin-bottom:1rem;display:flex;align-items:center;gap:0.75rem;}
.ph-eyebrow::before{content:'';display:block;width:2rem;height:2px;background:var(--site-stone);}
.ph-title{font-family:var(--site-display);font-size:var(--site-size-display);letter-spacing:0.02em;line-height:var(--site-leading-heading);color:var(--site-ink);margin-bottom:1.25rem;}
.ph-title span{color:var(--site-accent-ink);}
.ph-desc{color:var(--site-muted);max-width:480px;margin-bottom:2rem;}
.ph-signals{display:flex;gap:2rem;flex-wrap:wrap;}
.signal{display:flex;align-items:center;gap:0.5rem;font-size:var(--site-size-label);letter-spacing:0.12em;text-transform:uppercase;font-weight:600;color:var(--site-muted);}
.signal-dot{width:6px;height:6px;border-radius:50%;background:var(--site-stone);flex-shrink:0;}
.portrait-wrap{position:relative;}
.portrait-wrap img{width:100%;border-radius:2px;display:block;filter:grayscale(15%);}
.portrait-wrap::before{content:'';position:absolute;inset:-8px;border:2px solid var(--site-accent-ink);opacity:0.3;border-radius:2px;pointer-events:none;}
.portrait-caption{margin-top:0.75rem;text-align:center;font-size:var(--site-size-label);letter-spacing:0.2em;text-transform:uppercase;color:var(--site-muted);}
.form-section{max-width:1140px;margin:0 auto;padding:4rem 2.5rem 6rem;display:grid;grid-template-columns:1fr 320px;gap:5rem;align-items:start;}
.form-intro-eyebrow{font-size:var(--site-size-label);letter-spacing:0.22em;text-transform:uppercase;font-weight:600;color:var(--site-accent-ink);margin-bottom:0.6rem;}
.form-intro-title{font-family:var(--site-display);font-size:var(--site-size-card);letter-spacing:0.03em;color:var(--site-ink);margin-bottom:0.75rem;}
.form-intro-body{color:var(--site-muted);}
.sidebar{background:var(--site-stone);border-radius:2px;padding:2rem 1.75rem;position:sticky;top:88px;}
.sb-eyebrow{font-size:var(--site-size-label);letter-spacing:0.22em;text-transform:uppercase;font-weight:600;color:var(--site-accent-ink);margin-bottom:0.4rem;}
.sb-name{font-family:var(--site-display);font-size:var(--site-size-card);letter-spacing:0.05em;color:var(--site-ink);line-height:var(--site-leading-heading);margin-bottom:0.2rem;}
.sb-title{font-size:var(--site-size-label);letter-spacing:0.14em;text-transform:uppercase;color:var(--site-muted);margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--site-rule);}
.sb-item{display:flex;gap:0.75rem;margin-bottom:1rem;align-items:flex-start;}
.sb-icon{flex-shrink:0;width:28px;height:28px;background:rgba(0,26,114,0.06);border-radius:2px;display:flex;align-items:center;justify-content:center;}
.sb-icon svg{width:13px;height:13px;stroke:var(--site-accent-ink);}
.sb-label{font-size:var(--site-size-label);letter-spacing:0.14em;text-transform:uppercase;color:var(--site-muted);font-weight:600;margin-bottom:0.1rem;}
.sb-value{font-size:var(--site-size-small);color:var(--site-ink);}
.sb-value a{color:var(--site-accent-ink);text-decoration:none;}
.sb-value a:hover{color:var(--site-ink);}
.sb-divider{height:1px;background:rgba(0,26,114,0.08);margin:1.5rem 0;}
.sb-promise{color:var(--site-muted);font-style:italic;}
.intake-form{margin-top:3rem;}
.form-fieldset{border:none;padding:0;margin:0 0 3.5rem 0;}
.form-legend{font-family:var(--site-display);font-size:var(--site-size-card);letter-spacing:0.04em;color:var(--site-ink);margin-bottom:2rem;padding-bottom:0.75rem;border-bottom:2px solid var(--site-rule);display:block;width:100%;}
.form-grid{display:flex;flex-direction:column;}
.form-group{display:flex;flex-direction:column;gap:0.55rem;margin-bottom:2rem;}
.form-group.half-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem;}
.form-group label,.half-field label{font-size:var(--site-size-caption);letter-spacing:0.08em;text-transform:uppercase;font-weight:600;color:var(--site-ink);}
.half-field{display:flex;flex-direction:column;gap:0.55rem;}
.req{color:var(--site-accent-ink);margin-left:2px;}
.form-group input,.form-group select,.form-group textarea,
.half-field input,.half-field select{font-family:var(--site-body);font-size:var(--site-size-body);color:var(--site-ink);background:var(--site-paper);border:1.5px solid rgba(0,0,0,0.15);padding:0.9rem 1.1rem;border-radius:2px;transition:border-color var(--ease),box-shadow var(--ease);outline:none;width:100%;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus,
.half-field input:focus,.half-field select:focus{border-color:var(--site-accent-ink);box-shadow:0 0 0 3px rgba(0,26,114,0.12);}
.form-group textarea{resize:vertical;min-height:120px;}
.form-group select,.half-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23756E64' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer;}
.radio-group,.checkbox-group{display:flex;flex-direction:column;gap:0.85rem;margin-top:0.5rem;}
.check-row,.radio-row{display:flex;align-items:center;gap:0.85rem;cursor:pointer;}
.check-row input,.radio-row input{width:18px;height:18px;accent-color:var(--site-accent-ink);cursor:pointer;flex-shrink:0;}
.check-row span,.radio-row span{font-size:var(--site-size-body);color:var(--site-ink);line-height:1.4;}
.form-submit-row{margin-top:2.5rem;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;}
.btn-submit{font-family:var(--site-body);font-size:var(--site-size-caption);letter-spacing:0.18em;text-transform:uppercase;font-weight:600;background:var(--site-bronze);color:var(--site-paper);border:none;padding:1rem 2.5rem;border-radius:2px;cursor:pointer;transition:background var(--ease),transform var(--ease);}
.btn-submit:hover{background:var(--site-bronze);transform:translateY(-1px);}
.btn-submit:disabled{opacity:0.55;cursor:not-allowed;transform:none;}
.submit-note{font-size:var(--site-size-caption);color:var(--site-muted);}
.success-panel{display:none;background:var(--site-ivory);border:1.5px solid var(--site-accent-ink);border-radius:2px;padding:2.5rem 2rem;text-align:center;margin-top:2rem;}
.success-panel.visible{display:block;}
.success-icon{font-size:2.5rem;margin-bottom:1rem;}
.success-title{font-family:var(--site-display);font-size:var(--site-size-card);letter-spacing:0.04em;color:var(--site-ink);margin-bottom:0.75rem;}
.success-body{font-size:var(--site-size-small);color:var(--site-muted);line-height:var(--site-leading-body);}
.success-body a{color:var(--site-ink);}
@media(max-width:900px){.page-header-inner,.form-section{grid-template-columns:1fr;gap:2.5rem;}
.portrait-wrap{max-width:220px;}
.sidebar{position:static;}}
@media(max-width:640px){.page-header-inner{padding:2.5rem 1.5rem;}
.form-section{padding:2.5rem 1.5rem 4rem;}
.form-group.half-row{grid-template-columns:1fr;}}
.form-feedback{border-left:3px solid var(--site-primary);background:var(--site-secondary);color:var(--site-ink);padding:18px 22px;margin-bottom:20px;line-height:1.6}.form-feedback[hidden]{display:none}
