/* WZX FIX9-D | Mobile polish, legibility and low-CLS refinements.
   Incremental: compatible with style.css / r5.css / fix8b.css / fix9a.css / fix9c.css / wzx_author_card.css.
   No SEO tag, URL, CMS or database changes. */
:root { --wzx9d-border: #e9e3d9; --wzx9d-text: #1b344f; }
/* Make long titles, links and rich-text media safe in narrow viewports. */
:where(.container,.wrap,.wzx-body,.wzx-article,.wzx-rich,.editable-content,.case-story-copy,.wzx-author-card,.wzx9-card,.wzx9c-related){min-width:0}
:where(.wzx-rich,.editable-content,.article-container,.article-detail,.case-story-copy,.wzx9-card,.wzx-author-card__main) {overflow-wrap:anywhere;word-break:normal}
:where(.wzx-rich,.editable-content,.case-story-copy) :is(img,video,iframe,svg){max-width:100%}
:where(.wzx-rich,.editable-content,.case-story-copy) :is(img,video){height:auto}
:where(.wzx-rich,.editable-content,.case-story-copy) :is(table,pre){max-width:100%;overflow-x:auto}
:where(.wzx-rich,.editable-content,.case-story-copy) table{display:block;white-space:normal}
:where(.wzx-rich,.editable-content,.case-story-copy) a:not(.btn):not(.wzx-cta){text-underline-offset:3px;text-decoration-thickness:1px}
:where(.wzx-rich,.editable-content,.case-story-copy) :is(h2,h3,h4){scroll-margin-top:95px;text-wrap:pretty}
/* Keep portrait/cards at predictable proportions; below-the-fold images already have native lazy loading. */
.hero-photo-wrap>img,.about-photo img,.r5-hero-photo img,.credibility-photo img{width:100%;object-fit:cover}
.article-visual img{display:block;width:100%;height:100%;object-fit:cover}
.wzx9-card,.wzx9c-related-grid a,.practice-card{min-width:0}
.wzx-author-card__portrait img{aspect-ratio:2/3}
.wzx-author-card__qr img{aspect-ratio:1/1}
/* Responsive navigation, focus rings and touch targets. */
:where(.nav-links,.wzx-nav,.r5-hero-actions,.hero-buttons,.wzx-author-card__actions) a:focus-visible{outline:3px solid #b68b55;outline-offset:3px}
:where(.wzx9-card,.wzx9c-related-grid a,.practice-card){-webkit-tap-highlight-color:transparent}
/* Desktop and tablet reading comfort. */
@media(min-width:691px){
  .wzx-article .wzx-rich{font-size:16px;line-height:2.08}
  .wzx-article .wzx-rich>p{margin:0 0 1.1em}
  .wzx-article .wzx-rich :is(h2,h3){line-height:1.48}
  .wzx9c-related-grid a{min-height:96px}
}
@media(max-width:980px){
  .nav-links.is-open{max-height:calc(100vh - 70px);overflow-y:auto;overscroll-behavior:contain}
  .wzx9c-related-grid{gap:11px}
  .article-grid,.practice-grid{align-items:stretch}
}
@media(max-width:690px){
  html{scroll-padding-top:72px}
  .container{width:calc(100% - 32px)}
  .site-header{height:64px}
  .head-inner{gap:8px}
  .nav-links{top:63px;max-height:calc(100vh - 63px);padding-bottom:25px}
  .nav-toggle{min-width:44px;min-height:44px;display:grid;align-content:center;justify-items:center}
  .hero-layout{min-height:0}
  .hero-text{padding:30px 0 16px}
  .hero h1{font-size:clamp(29px,8.3vw,36px);line-height:1.38;letter-spacing:.015em;text-wrap:pretty}
  .hero-intro{font-size:14px;line-height:1.88}
  .hero-buttons{gap:10px;margin:19px 0 17px}
  .hero-buttons .btn{min-height:44px}
  .hero-photo-area{margin:0 auto 18px;width:min(100%,410px)}
  .hero-photo-wrap{width:min(78%,340px);height:285px;padding:8px}
  .photo-label{left:-18px;bottom:14px;max-width:90%;padding:9px 12px}
  .practice-overlap{padding-top:10px}
  .practice-grid{gap:10px}
  .practice-card{min-height:0;padding:15px 13px}
  .practice-card h3{font-size:15px;line-height:1.47}
  .practice-card p{font-size:12px;line-height:1.66;min-height:0;margin-bottom:10px}
  .about-section{padding:34px 0 37px}
  .about-layout{gap:17px}
  .about-highlights{gap:9px}
  .credibility-layout{gap:18px}
  .credibility-copy p{line-height:1.9}
  .heading-inline h2{font-size:clamp(22px,6vw,26px);line-height:1.42}
  .section-title-line{gap:10px;align-items:start}
  .article-grid{grid-template-columns:1fr}
  .article-card{grid-template-columns:minmax(95px,34%) minmax(0,1fr)}
  .article-detail{min-width:0;padding:12px 13px}
  .article-detail h3{font-size:15px;line-height:1.52}
  .article-detail p{font-size:12px;line-height:1.62}
  .wzx9-section{padding:28px 0 34px}
  .wzx9-container{padding:0 16px}
  .wzx9-card{padding:18px 17px;gap:8px}
  .wzx9-card h3{font-size:17px;line-height:1.55}
  .wzx9c-related{margin:19px 0 24px;padding:18px 16px}
  .wzx9c-related-grid{grid-template-columns:1fr;gap:10px}
  .wzx9c-related-grid a{min-height:0;padding:14px}
  .wzx9c-quick{margin:12px 0 20px;padding:12px 0}
  .wzx-hero{padding:28px 0}
  .wzx-hero-title{line-height:1.38!important}
  .wzx-body{padding-top:25px;padding-bottom:58px}
  .wzx-article{min-width:0}
  .wzx-article h1,.full-article-title{font-size:clamp(23px,6.5vw,29px);line-height:1.5;letter-spacing:0}
  .wzx-article .summary{font-size:14px;line-height:1.82}
  .wzx-rich,.wzx-article .wzx-rich,.editable-content{font-size:15px;line-height:2.02}
  .wzx-rich :is(h2,h3),.editable-content :is(h2,h3){line-height:1.55;margin-top:1.48em;margin-bottom:.55em}
  .wzx-rich p,.editable-content p{margin-bottom:1.05em}
  .wzx-rich li,.editable-content li{padding-left:0;margin:0 0 .55em}
  .case-story-hero{padding:31px 0}
  .case-story-hero h1{font-size:clamp(24px,6.3vw,30px);line-height:1.48}
  .case-story-body{padding:23px 0 55px}
  .case-story-copy{padding:21px 18px;line-height:1.95}
  .case-story-copy h2{font-size:19px}
  .case-story-aside{position:static!important;gap:10px}
  .case-story-aside img{height:210px!important;max-height:210px;object-fit:cover}
  .r5-hero h1{font-size:clamp(29px,8.1vw,35px)}
  .r5-hero-photo{width:min(80%,340px)}
  .r5-method-card{padding:20px}
  .r5-contact-number{overflow-wrap:anywhere}
  .r5-form-body input,.r5-form-body select,.r5-result textarea{font-size:16px}
  .r5-appointment-section{scroll-margin-top:76px}
  .wzx-author-card{max-width:100%;gap:12px;margin:23px 0;padding:16px}
  .wzx-author-card h2{font-size:20px!important}
  .wzx-author-card__bio{font-size:13px!important;line-height:1.85!important}
  .wzx-author-card__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
  .wzx-author-card__qr{min-width:0}
  .footer-bottom{padding-bottom:max(77px,calc(66px + env(safe-area-inset-bottom,0px)))}
  .mobile-bar{height:calc(60px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px)}
  .mobile-bar a{min-height:44px}
}
@media(max-width:420px){
  .brand-primary{font-size:18px}
  .brand small{font-size:8px}
  .hero-photo-wrap{height:265px}
  .hero-facts{gap:8px 12px}
  .practice-card{padding:13px 11px}
  .practice-card h3{font-size:14.5px}
  .practice-card p{font-size:11.5px}
  .wzx-author-card{grid-template-columns:75px minmax(0,1fr);padding:12px;gap:10px}
  .wzx-author-card__actions{gap:7px}
  .wzx-author-card__actions a{padding:9px 11px;font-size:12px}
  .wzx-author-card__qr{grid-template-columns:96px minmax(0,1fr)}
  .wzx-author-card__qr img{width:96px;height:96px}
  .wzx-author-card__role{line-height:1.55}
}
@media(max-width:350px){
  .hero-buttons{display:grid;grid-template-columns:1fr}
  .practice-grid{gap:7px}
  .practice-card{padding:11px 10px}
  .article-card{grid-template-columns:100px minmax(0,1fr)}
  .article-detail h3{font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  .wzx9-card,.wzx9c-related-grid a,.practice-card{transition:none!important;transform:none!important}
}
@media print{
  .mobile-bar,.site-header .nav-toggle,.r5-mobile-cta{display:none!important}
  .wzx-author-card{box-shadow:none!important;break-inside:avoid}
}
