/* Main landing refresh 2026-09-11. Additive styles; existing tools and routes remain unchanged. */
html { scroll-padding-top:80px; }
body { --text-muted:#657386; }
:focus-visible { outline:3px solid #c8963e; outline-offset:4px; }
.fade-up { opacity:1; transform:none; }
.top-bar { height:64px; padding-inline:max(20px, calc((100% - 1120px)/2)); box-shadow:none; border-bottom:1px solid #ffffff1f; }
.top-bar .logo-text { font-size:.95rem; }
.top-bar .logo-text span { font-size:.8rem; }
.top-bar .cta-call { color:#142b42; min-height:44px; font-size:.9rem; }
.hero { margin-top:64px; padding:48px max(24px, calc((100% - 1120px)/2)) 44px; background:#193956; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:40px; align-items:center; }
.hero-content { grid-column:1; grid-row:1; width:100%; min-width:0; max-width:none; margin:0; padding:0; }
.hero-bg-photo { position:relative; grid-column:2; grid-row:1; width:100%; height:100%; min-height:460px; background-position:center 30%; border-radius:14px; overflow:hidden; }
.hero-bg-photo::after { background:linear-gradient(90deg,#19395633 0%,#19395600 50%); }
.hero::before,.hero::after { display:none; }
.hero-badge { margin-bottom:18px; font-size:.875rem; background:transparent; padding:0; border:0; color:#efc778; }
.hero h1 { font-size:clamp(2rem,3.5vw,3rem); line-height:1.35; letter-spacing:-.045em; margin-bottom:14px; }
.hero h1 em { color:#edbd66; }
.hero p { font-size:1rem; line-height:1.8; color:#e0e8f1; margin-bottom:0; }
.hero .price-bar { padding:0; margin:24px 0 20px; background:transparent; border:0; }
.hero .price-bar-inner { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; max-width:none; text-align:left; }
.hero .price-chip { min-width:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:4px; padding:16px 18px; border-radius:10px; border:1px solid #ffffff30; background:#fff; }
.hero .chip-label { font-size:.95rem; font-weight:600; color:#40556a; }
.hero .chip-amount { color:#193956; font-size:1.5rem; font-weight:800; letter-spacing:-.04em; white-space:nowrap; }
.hero .price-bar-note { grid-column:1/-1; font-size:.875rem; line-height:1.75; color:#d9e5f0; margin-top:0; word-break:keep-all; }
.hero .price-bar-note b { color:#fff; }
.hero .price-bar-note a { color:#f0c778; text-decoration:underline; text-underline-offset:3px; }
.hero-ctas { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:0; }
.hero-ctas .btn-primary,.hero-ctas .btn-secondary { min-width:0; min-height:52px; font-size:1rem; padding:13px 10px; border-radius:8px; box-shadow:none; }
.hero-ctas .btn-primary { color:#152f47; background:#d6a44d; }
.hero-ctas .btn-secondary { border-color:#92a8bc; background:transparent; }
.hero-tools { display:flex; align-items:center; flex-wrap:wrap; gap:6px 16px; margin-top:12px; }
.hero-tools>a,.planner-open { display:inline-flex; align-items:center; min-height:44px; padding:0; background:transparent; border:0; color:#efc778; font:inherit; font-size:.875rem; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.trust-bar { padding:22px 24px; min-height:0; background:#f5f8fb; }
.trust-items { width:100%; max-width:1080px; gap:24px; grid-template-columns:1.8fr 1fr 1fr; align-items:center; }
.trust-item .number,.trust-item.ti-stat .number { font-size:1.55rem; }
.trust-item .label { font-size:.875rem; margin-top:6px; color:#40556a; }
.trust-note { max-width:420px; font-size:.8rem; margin-top:6px; color:#586c7e; }
.trust-note #gh-stat-at { display:block; }
.urgency { background:#fff; color:#193956; box-shadow:none; border:0; border-left:3px solid #c8963e; border-radius:0; padding:4px 0 4px 16px; margin:24px 0; }
.urgency-icon { display:none; }
.urgency-text h3 { font-size:1rem; color:#193956; }
.urgency-text p { font-size:.875rem; color:#566a7d; }
.consult { padding:56px 24px; background:#f2f5f9; border-block:1px solid #dce4ec; }
.consult::before,.consult::after { display:none; }
.consult-inner { max-width:1080px; display:grid; grid-template-columns:.8fr 1.2fr; gap:52px; align-items:start; }
.consult-header { text-align:left; padding-top:18px; }
.consult-header .section-label { color:#87601e; font-size:.875rem; }
.consult-header .section-title { color:#193956; font-size:2rem; letter-spacing:-.045em; }
.consult-header .section-desc { color:#536579; font-size:1rem; }
.consult-points { margin-top:24px; border-top:1px solid #d4dfe9; padding-top:18px; color:#40556a; font-size:1rem; }
.consult-points li { margin-bottom:12px; }
.consult-points a { color:#193956; text-decoration:underline; text-underline-offset:4px; }
.consult-price-note { margin-top:18px; color:#536579; font-size:.875rem; }
.form-card { padding:28px; border-radius:12px; border:1px solid #dce4ec; box-shadow:0 8px 30px #19395608; }
#consultForm { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
#consultForm .form-group { min-width:0; margin-bottom:18px; }
#consultForm .form-group:nth-of-type(5),#consultForm>.form-consent,#consultForm>.form-submit,#consultForm>.form-note { grid-column:1/-1; }
.form-group label { font-size:.9rem; }
.form-group input,.form-group select,.form-group textarea { min-height:46px; font-size:1rem; background:#fff; border-radius:7px; padding:11px 12px; }
.form-group select { padding-right:30px; }
.form-group textarea { min-height:92px; }
.form-note { font-size:.875rem; color:#586b7e; }
.form-consent { font-size:.875rem; }
.form-submit { background:#193956; color:#fff; box-shadow:none; border-radius:8px; min-height:52px; }
.form-submit:hover { background:#254d72; }
.form-submit:disabled { opacity:.65; cursor:wait; }
.section-title { letter-spacing:-.035em; }
.services,.why-us,.process,.faq,.attorney-profile,.columns { padding-block:56px; }
.evidence.has-case-toggle.is-collapsed .ev-card:nth-child(n+4) { display:none; }
.evidence .ev-toggle { display:block; min-height:48px; margin:24px auto 0; padding:12px 24px; border:1px solid #193956; border-radius:8px; font:inherit; font-size:1rem; font-weight:700; color:#193956; background:#fff; cursor:pointer; }
.evidence .ev-toggle:hover { background:#eef3f8; }
.evidence.has-case-toggle .ev-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.evidence .ev-inner { max-width:1080px; }
.evidence .ev-body p { font-size:.95rem; line-height:1.75; }
.evidence .ev-note { font-size:.875rem; line-height:1.8; }
button.faq-q { width:100%; border:0; background:transparent; text-align:left; font-family:inherit; font-size:1rem; min-height:54px; }
.faq-a-inner { font-size:1rem; }
.faq-item.active .faq-a { max-height:2200px; }
.mid-cta-phone,.pricing-cta-phone,.bottom-cta .cta-form { color:#162f46; }
.top-bar .cta-call:hover,.btn-primary:hover { color:#162f46; }
@media(min-width:768px){.hero .hero-attorney-card{display:none!important;}.evidence .ev-doc{aspect-ratio:4/3;overflow:hidden;}.evidence .ev-doc img{height:100%;width:100%;object-fit:contain;}}
@media(max-width:900px){.consult-inner{gap:28px;grid-template-columns:.75fr 1.25fr;}.hero{gap:24px;}.hero .price-chip{padding:14px 12px;}.hero .chip-amount{font-size:1.35rem;}}
@media(max-width:767px){
  .top-bar{padding-inline:16px;height:60px;}.hero{display:block;margin-top:60px;padding:28px 20px 24px;}.hero-content{padding:0;max-width:560px;margin-inline:auto;}.hero h1{font-size:2rem;}.hero-badge{font-size:.8rem;margin-bottom:13px;}.hero .price-bar{margin-top:20px;}.hero .price-chip{padding:13px 15px;}.hero .chip-amount{font-size:1.4rem;}.hero-bg-photo{position:absolute;top:0;right:0;width:100%;height:100%;min-height:0;border-radius:0;}.hero-bg-photo.loaded{opacity:.1;}.hero-attorney-card{max-width:560px;padding:12px 14px;margin-top:18px;gap:12px;border-radius:10px;}.hero-attorney-photo{width:56px;height:56px;}.hero-attorney-name{font-size:1rem;}.hero-attorney-title{font-size:.8rem;margin-bottom:5px;}.hero-attorney-tag{font-size:.75rem;padding:2px 7px;}.trust-items{grid-template-columns:1.6fr 1fr;gap:18px;}.trust-note{font-size:.8rem;}.trust-item .label{font-size:.8rem;}.trust-bar{padding:20px;}.consult{padding:32px 20px;}.consult-inner{display:block;max-width:600px;}.consult-header{padding-top:0;margin-bottom:22px;}.consult-header .section-title{font-size:1.65rem;}.consult-points{display:none;}.consult-price-note{margin-top:10px;}.form-card{padding:22px 18px;}#consultForm{display:block;}.evidence.has-case-toggle .ev-grid{grid-template-columns:1fr;}.evidence{padding:40px 20px;}.evidence .ev-toggle{width:100%;}.hero-ctas{grid-template-columns:1fr 1fr;}.hero-ctas .btn-primary,.hero-ctas .btn-secondary{font-size:.95rem;padding:12px 8px;}.hero-ctas svg{display:none;}.bottom-cta .cta-phone,.bottom-cta .cta-form{font-size:.95rem;min-height:48px;}body{padding-bottom:86px;}
}
@media(max-width:360px){.hero-ctas{grid-template-columns:1fr;}.hero .price-chip{padding:12px 10px;}.hero .chip-amount{font-size:1.25rem;}.top-bar .logo-text{font-size:.8rem;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}}

/* Keep the high-resolution portrait proportional on desktop. */
.hero-portrait{display:contents;}
.hero-portrait-caption{display:none;}
@media(min-width:768px){
 .hero-portrait{display:block;grid-column:2;grid-row:1;align-self:start;justify-self:center;width:100%;max-width:380px;margin:0;background:#ffffff0a;border:1px solid #ffffff26;border-radius:16px;overflow:hidden;box-shadow:0 16px 40px #071e3026;}
 .hero .hero-bg-photo{display:block;position:relative;inset:auto;width:100%;height:auto;min-height:0;aspect-ratio:1448/1086;background-size:contain;background-repeat:no-repeat;background-position:center;border-radius:0;}
 .hero .hero-bg-photo::after{display:none;}
 .hero-portrait-caption{display:block;padding:22px 24px 24px;color:#fff;}
 .hero-portrait-caption strong{display:block;font-size:1.35rem;line-height:1.5;}
 .hero-portrait-caption span{display:block;margin-top:4px;font-size:.95rem;color:#e0e8f1;}
 .hero .hero-portrait-caption p{margin:16px 0 0;padding-top:14px;border-top:1px solid #ffffff26;font-size:.85rem;line-height:1.7;color:#efc778;word-break:keep-all;}
}

/* Desktop: introduction and portrait above a full-width cost comparison. */
@media(min-width:768px){
 .hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:48px;row-gap:24px;padding-top:36px;}
 .hero .hero-content{display:contents;}
 .hero-intro{grid-column:1;grid-row:1;align-self:center;min-width:0;}
 .hero .hero-portrait{grid-column:2;grid-row:1;max-width:360px;align-self:center;justify-self:end;}
 .hero .oh-fee.price-bar{grid-column:1/-1;grid-row:2;max-width:none;width:100%;margin:8px 0 0;}
 .hero .oh-fee-grid{gap:20px;}
 .hero .oh-fee-card{padding:22px 24px 18px;}
 .hero .oh-fee-heading{font-size:21px;margin-bottom:16px;}
 .hero .oh-fee-card-head{margin-bottom:18px;font-size:20px;}
 .hero .oh-fee-equation span{font-size:12px;}
 .hero .hero-ctas{grid-column:1/-1;grid-row:3;justify-self:center;width:100%;max-width:680px;margin:0;}
 .hero .hero-tools{grid-column:1/-1;grid-row:4;justify-content:center;margin:0;}
}
