/* PRE97 screenshot-audit refinements — additive and regression-safe. */

/* Shared visual rhythm */
body{--pre97-section-gap:clamp(1.4rem,2.6vw,2.5rem)}
.page-hero,.section{scroll-margin-top:84px}
.site-footer{padding-top:1.55rem;padding-bottom:1.55rem;align-items:flex-start}
.site-footer p{margin:.15rem 0 .65rem}
.live-chat-fallback{max-width:calc(100vw - 32px)}

/* Directory: national-first language gets the space; results do not. */
.professional-directory-page .professional-directory-hero{padding-top:clamp(2rem,4vw,3.4rem);padding-bottom:clamp(1.7rem,3vw,2.7rem)}
.professional-directory-page .professional-directory-hero h1{max-width:850px;font-size:clamp(2.35rem,4.8vw,4.15rem);line-height:.98}
.professional-directory-page .directory-trust-row{padding-top:1rem;padding-bottom:1rem}
.professional-directory-page .directory-search-section{align-items:start;padding-top:2rem;padding-bottom:2rem}
.professional-directory-page .directory-search-section>.card{padding:clamp(1rem,2vw,1.5rem)}
.professional-directory-page .directory-results-section{padding-top:2rem;padding-bottom:2.25rem}
.professional-directory-page #professionalResults,
.professional-directory-page #firmResults{display:grid;grid-template-columns:1fr;gap:.8rem;align-items:start}
.professional-directory-page .professional-card{align-self:start;min-height:0!important;height:auto!important;padding:1.15rem 1.35rem;gap:.3rem;border-radius:14px}
.professional-directory-page .professional-card p{margin:.2rem 0}
.professional-directory-page .professional-card h2{font-size:clamp(1.45rem,2.5vw,1.85rem);line-height:1.12;margin:.08rem 0 .15rem}
.professional-directory-page .professional-card .profile-label-row{margin:.25rem 0}
.professional-directory-page .professional-card .button-row{margin-top:.45rem}
.professional-directory-page .compare-profile-control{margin:.45rem 0 0!important;display:inline-flex!important;width:max-content}
.professional-directory-page .directory-market-overview{margin-top:1rem}
.professional-directory-page .directory-founder-card{align-self:start}
.professional-directory-page .directory-active-filters{margin-top:.7rem}
.professional-directory-page .directory-filter-chip{margin:.2rem .2rem .2rem 0}

/* Public professional/firm profile pages */
.professional-profile-page .professional-profile-shell,
.firm-profile-page .professional-profile-shell{padding-top:1.35rem;padding-bottom:2rem}
.professional-profile-page .profile-hero,
.firm-profile-page .profile-hero{padding:1.5rem 1.55rem;margin-bottom:1rem}
.professional-profile-page .profile-hero h1,
.firm-profile-page .profile-hero h1{font-size:clamp(2.25rem,4.2vw,3.65rem);line-height:1;letter-spacing:-.04em;margin:.35rem 0 .8rem}
.profile-detail-grid{align-items:start!important;gap:1rem}
.profile-detail-grid>.card{align-self:start;min-height:0!important}
.public-sources-card{margin-top:1rem}
.public-sources-card li{margin:.4rem 0}
.professional-profile-page .card p,
.firm-profile-page .card p{margin:.45rem 0}

/* Profile review / claim choice */
.profile-review-page .page-hero{padding-top:2.2rem;padding-bottom:2.1rem}
.profile-review-page .page-hero h1{font-size:clamp(2.35rem,4.5vw,3.8rem);max-width:760px;line-height:1}
.profile-review-page .section{padding-top:2rem;padding-bottom:2rem}
.profile-review-page .card{padding:1.25rem 1.4rem}
.profile-review-page .cards.three{gap:.8rem}
.profile-review-page .cards.three>.card{min-height:0}

/* Attorney tour: professional, dense, scannable. */
.attorney-partner-tour-page .tour-hero{padding-top:2.2rem;padding-bottom:2.2rem;align-items:start}
.attorney-partner-tour-page .tour-hero h1{font-size:clamp(2.45rem,4.9vw,4.2rem);line-height:.98;max-width:900px}
.attorney-partner-tour-page .tour-proof-grid{gap:.7rem;margin-top:1rem}
.attorney-partner-tour-page .tour-step{padding-top:2.1rem;padding-bottom:2.1rem}
.attorney-partner-tour-page .tour-step-content>h2{margin-top:.25rem}
.attorney-partner-tour-page .tour-step-content>p{max-width:950px}
.attorney-partner-tour-page .tour-mode-bar{margin-top:0}
.attorney-partner-tour-page .tour-step-nav{top:70px}

/* Professional signup / authority-verification: account first, details second. */
.professional-signup-page .professional-signup-hero{padding-top:2rem!important;padding-bottom:1.5rem!important}
.professional-signup-page .professional-signup-hero h1{font-size:clamp(2.35rem,4.5vw,3.85rem);line-height:.98;max-width:760px}
.professional-signup-page .professional-signup-hero .lead{max-width:760px;font-size:1.05rem}
.professional-signup-page .signup-status-stack{align-self:start}
.professional-signup-page .signup-assurance-row{gap:.4rem;margin-top:.85rem}
.professional-signup-page .professional-signup-layout{max-width:1180px;grid-template-columns:minmax(220px,.31fr) minmax(0,1fr);gap:1rem;padding-top:1.45rem;padding-bottom:2rem}
.professional-signup-page .signup-side-card{top:78px;padding:1rem 1.1rem}
.professional-signup-page .signup-side-card h2{font-size:1.3rem;margin:.8rem 0 .35rem}
.professional-signup-page .numbered-list li{margin:.55rem 0;grid-template-columns:28px 1fr}
.professional-signup-page .numbered-list li:before{width:26px;height:26px;font-size:.82rem}
.professional-signup-page .signup-main-card{padding:1.25rem 1.4rem}
.professional-signup-page .signup-progress{margin-bottom:1rem}
.professional-signup-page .signup-fieldset{padding-top:1rem;margin-bottom:1rem}
.professional-signup-page .signup-account-section .form-grid{gap:.65rem}
.professional-signup-page .signup-profile-details{margin-top:.8rem;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fbfdfe}
.professional-signup-page .signup-profile-details>summary{padding:.9rem 1rem;cursor:pointer}
.professional-signup-page .signup-profile-details:not([open]){box-shadow:none}
.professional-signup-page .signup-details-body{padding:0 1rem 1rem}
.professional-signup-page .signup-membership-preference{opacity:.82}
.professional-signup-page input::placeholder,
.professional-signup-page textarea::placeholder{color:#75838c;opacity:.72;font-style:italic}
.professional-signup-page .sticky-signup-action{padding:.8rem 0 .15rem}
.professional-signup-page .terms-fieldset .check{padding:.65rem .75rem;border:1px solid var(--line);border-radius:12px;background:#fbfdfe;margin:.55rem 0!important}
.password-control-wrap{position:relative}
.password-control-wrap input{padding-right:4.8rem!important}
.password-visibility-toggle{position:absolute;right:.55rem;top:50%;transform:translateY(-36%);border:0;background:transparent;color:var(--navy);font-weight:800;cursor:pointer;padding:.35rem}
.claim-context-note{margin:.25rem 0 .9rem;padding:.75rem .85rem;border-left:4px solid var(--teal);background:#f4faf8;border-radius:0 10px 10px 0}
.claim-context-note strong{color:var(--navy)}

/* Professional/owner authentication surfaces */
.professional-auth-shell{min-height:auto!important;padding-top:2.5rem!important;padding-bottom:2.5rem!important}
.professional-auth-card{box-shadow:0 10px 28px rgba(18,61,95,.08)}

/* Laptop-specific corrections based on 1366px QA screenshots. */
@media (max-width:1180px){
  .professional-signup-page .professional-signup-layout{grid-template-columns:1fr;max-width:900px}
  .professional-signup-page .signup-side-card{position:static;display:grid;grid-template-columns:1fr 1fr;gap:1rem;order:2}
  .professional-signup-page .signup-side-card .numbered-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem 1rem}
  .professional-signup-page .signup-side-divider{display:none}
  .attorney-partner-tour-page .tour-hero{grid-template-columns:1fr}
}
@media (max-width:820px){
  .professional-signup-page .signup-side-card{display:block}
  .professional-signup-page .signup-side-card .numbered-list{display:block}
  .professional-directory-page .professional-card{padding:1rem}
  .profile-detail-grid{grid-template-columns:1fr!important}
  .attorney-partner-tour-page .tour-step-nav{position:static}
}
@media (max-width:600px){
  .professional-signup-page .signup-main-card{padding:1rem}
  .professional-signup-page .professional-signup-hero{padding:1.5rem 1rem!important}
  .professional-directory-page .professional-directory-hero{padding:1.6rem 1rem}
  .site-footer{padding:1.35rem 1rem}
}
