/* Readability and contact actions across phones and tablets. */
.hero-free{display:inline-flex;align-items:center;gap:.6rem;padding:.6rem .9rem;border-radius:12px;background:var(--teal-soft);color:var(--teal-dark);font-weight:750;margin:.2rem 0 .4rem;line-height:1.5}
.hero-free span{font-size:1.2em}
.book-panel{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.5rem,4vw,3rem);background:var(--cream)}
.book-image-link{display:block;max-width:280px;margin:auto}
.book-cover{width:100%;height:auto;object-fit:contain}
.book-copy{min-width:0;max-width:680px}
.book-copy h2{font-size:clamp(2rem,4vw,3.2rem)}
.book-subtitle{font-size:clamp(1.12rem,2vw,1.35rem);line-height:1.45;color:var(--teal-dark)}
.book-copy .button{gap:.65rem;margin-top:.5rem}
@media(max-width:980px){
 .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .guide-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-grid>*,.hero-grid>*,.section-heading>*,.split>*,.contact-grid>*,.guide-purpose>*,.guide-feature-layout>*,.areas-home>*{min-width:0}
 .button{max-width:100%;white-space:normal;text-align:center}
 .site-footer a{overflow-wrap:anywhere}
 .article-table th,.article-table td{overflow-wrap:break-word}
}
@media(max-width:700px){
 html{scroll-padding-top:80px}
 body{padding-bottom:calc(66px + env(safe-area-inset-bottom,0px))}
 .shell,.narrow{width:calc(100% - 32px)}
 .section{padding-block:2.75rem}
 .header-inner{gap:.5rem;min-height:64px}
 .wordmark{min-width:0}.wordmark-name{font-size:clamp(1rem,4.7vw,1.2rem);letter-spacing:-.02em}
 .mobile-menu{flex-shrink:0}
 .mobile-menu nav{max-height:calc(100dvh - 150px);overflow-y:auto;width:min(290px,100vw - 32px)}
 .mobile-menu nav[hidden]{display:none}
 .mobile-menu button,.mobile-menu nav a{min-height:44px}
 .hero-grid{grid-template-columns:minmax(0,1fr);padding-block:2.5rem;gap:1.5rem}
 .hero-copy h1{font-size:clamp(2.3rem,10.8vw,3.3rem);line-height:1.08}
 .hero-intro,.lead{font-size:1.1rem;line-height:1.65}
 .hero-free{font-size:.95rem;align-items:flex-start}
 .hero-orientation{margin-top:.25rem;padding:1.3rem}
 .page-hero{padding:2.5rem 0 2rem}
 .page-hero h1{font-size:clamp(2.05rem,8.8vw,2.8rem);line-height:1.13;overflow-wrap:break-word}
 .breadcrumbs{line-height:1.6;margin-bottom:1.3rem;overflow-wrap:break-word}
 h2{font-size:clamp(1.7rem,7.4vw,2.2rem);line-height:1.16}
 .article-body h2{font-size:clamp(1.45rem,6.3vw,1.9rem);line-height:1.2;margin-top:2.25rem}
 .article-body{max-width:100%;font-size:1rem;line-height:1.75}
 .article-body p,.article-body li{overflow-wrap:break-word}
 .button-row{display:flex;flex-direction:column;gap:.7rem;align-items:stretch}
 .button-row .button,.cta-actions .button,.contact-primary .button{width:100%;min-height:48px;padding:.85rem 1rem;line-height:1.35}
 .cta-actions{width:100%;align-items:stretch}
 .button:not(.button-outline):not(.button-light):not(.button-light-outline):not(.button-quiet){background:var(--coral-dark);border-color:var(--coral-dark)}
 .button:not(.button-outline):not(.button-light):not(.button-light-outline):not(.button-quiet):hover{background:#984234;border-color:#984234}
 .guide-home-grid,.guide-side-list{grid-template-columns:minmax(0,1fr)}
 .guide-card,.guide-row{padding:1.35rem;min-height:0}
 .guide-card h3{font-size:1.45rem;line-height:1.2}
 .guide-row h2{font-size:1.65rem;line-height:1.2}
 .article-meta{flex-wrap:wrap;gap:.4rem 1rem}
 .orientation-path>a{padding:1.5rem 1rem}
 .service-rows a{gap:.75rem;padding-block:1.2rem}
 .service-rows a>div{min-width:0}
 .area-tags span{overflow-wrap:break-word}
 .article-table{display:table;width:100%;table-layout:fixed;font-size:.92rem;line-height:1.5}
 .article-table th,.article-table td{padding:.65rem;overflow-wrap:break-word}
 .article-table th:first-child,.article-table td:first-child{width:26%}
 .book-panel{grid-template-columns:minmax(0,1fr);padding:1.5rem;gap:1.5rem}
 .book-image-link{width:min(62%,220px)}
 .book-copy h2{font-size:2rem}
 .book-copy .button{width:100%;min-height:48px}
 .site-footer a{display:flex;align-items:center;min-height:44px;overflow-wrap:anywhere}
 .footer-grid{gap:1.5rem}
 .contact-form input,.contact-form textarea,.contact-form select{font-size:16px;min-width:0;width:100%}
 .contact-form{padding:1.4rem}
 .mobile-actions{height:calc(66px + env(safe-area-inset-bottom,0px));padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}
 .consent{bottom:calc(76px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 110px - env(safe-area-inset-bottom,0px));padding:1rem;left:.75rem;right:.75rem}
 .consent-actions{gap:.5rem}
 .consent-actions .button{flex:1 1 100%;min-height:44px}
 .consent-options label{display:flex;gap:.6rem;align-items:flex-start;padding-block:.35rem;min-height:44px}
 .consent-options input{flex-shrink:0;margin-top:.4rem}
 .article-aside{position:static}
}
