/* Surgical additions for the client-approved Option A revision. */
.site-header { top: 0; }
.eyebrow, .post-cat { text-transform: none; letter-spacing: .025em; }
.journey-b { background: #f4f5f4; }
.journey-tabs { display:flex; overflow-x:auto; border-bottom:1px solid #d7dcda; margin-bottom:44px; scrollbar-width:none; }
.journey-tabs::-webkit-scrollbar { display:none; }
.journey-tab { flex:1 0 155px; padding:16px 18px; border:0; border-bottom:2px solid transparent; background:transparent; color:#5e696e; font:500 13px/1.4 Poppins,sans-serif; text-align:left; cursor:pointer; }
.journey-tab .n { display:block; color:#a68c4b; font:400 25px/1 "DM Serif Display",serif; margin-bottom:8px; }
.journey-tab.active { color:#592130; border-bottom-color:#b79c55; }
.journey-panel { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); align-items:center; gap:clamp(32px,5vw,72px); }
.journey-panel[hidden] { display:none; }
.journey-panel h3 { font:400 clamp(34px,4vw,50px)/1.08 "DM Serif Display",serif; color:#592130; margin-bottom:18px; }
.journey-panel p { max-width:50ch; color:#4b575d; margin-bottom:24px; }
.journey-panel img { width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; }
.stage-links { display:flex; flex-wrap:wrap; gap:10px 18px; }
.stage-links a { color:#592130; font-weight:500; border-bottom:1px solid #c8b06e; padding-bottom:3px; }
.service-icon { font-family:"DM Serif Display",serif; font-size:26px; line-height:1; }
.portrait-pending { aspect-ratio:4/5; display:grid; place-items:end start; background:linear-gradient(145deg,#e6e7e5,#cfd4d3); padding:18px; color:#592130; }
.portrait-pending span { font-family:"DM Serif Display",serif; font-size:22px; }
.specialist-team .person img { width:100%; height:268px; aspect-ratio:4/5; object-fit:cover; object-position:center 16%; }
.service-hero h1 { font-size:clamp(56px,6.2vw,84px); line-height:.98; }
.service-hero-grid { padding-top:28px; padding-bottom:44px; }
.service-hero-photo,.service-hero-photo img { min-height:500px; height:500px; }
.inner-hero-grid { padding-top:34px; padding-bottom:48px; }
.inner-hero-photo,.inner-hero-photo img { min-height:500px; height:500px; }
.cta-panel { background:#592130; color:#fff; padding:clamp(72px,8vw,112px) 0; }
.cta-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(460px,1.2fr); gap:clamp(48px,7vw,100px); align-items:start; }
.cta-panel h2 { color:#fff; font:400 clamp(40px,4.8vw,62px)/1.04 "DM Serif Display",serif; margin:14px 0 20px; }
.cta-panel .eyebrow { color:#dbc982; }
.aged-phone { display:inline-flex; flex-direction:column; color:#fff; font:400 clamp(30px,3.2vw,42px)/1.15 "DM Serif Display",serif; margin-top:34px; }
.aged-phone span { font:500 14px/1.5 Poppins,sans-serif; color:#dbc982; margin-bottom:4px; }
.cta-panel form { background:#fff; color:#303a3f; padding:32px; }
.cta-panel .form-success { grid-column:1/-1; padding:16px; background:#edf3ef; color:#21452d; }
.field-error { display:block; min-height:18px; color:#9b283c; font-size:12px; }
.guided-step[hidden] { display:none; }
.step-status { color:#7a6736; font-weight:600; margin:10px 0 22px; }
.guided-actions { display:flex; gap:12px; align-items:center; }
.site-footer .office a { color:inherit; }
@media (max-width:900px) { .journey-panel,.cta-grid { grid-template-columns:1fr; } .journey-panel img { order:-1; } .cta-grid { gap:38px; } }
@media (max-width:620px) { .journey-tabs { margin-left:-20px; margin-right:-20px; padding-left:20px; } .cta-panel form { padding:24px 20px; } .hero-actions { align-items:stretch; } .service-hero-photo,.service-hero-photo img,.inner-hero-photo,.inner-hero-photo img { min-height:380px; height:380px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; } }
