/* Responsive reading layouts. Content reflows; page overflow is never hidden. */
:where(main,section,article,aside,nav,header,footer,form,fieldset,div){min-width:0}
body{overflow-wrap:anywhere}
img,video,svg{max-width:100%}
input,select,textarea{max-width:100%}
.atlas-mobile-area{display:none}
.member-suggestion-head,.member-suggestion-body{min-width:0}
.member-suggestion-body{min-height:0}

@media(max-width:760px){
 :root{--mobile-gutter:clamp(1rem,5vw,1.5rem)}
 html{scroll-padding-top:1rem;-webkit-text-size-adjust:100%;text-size-adjust:100%}
 body{font-size:1rem;line-height:1.85}
 h1,h2,h3{word-break:normal;overflow-wrap:anywhere;text-wrap:pretty;letter-spacing:0}
 button,a,summary,input,select,textarea{-webkit-tap-highlight-color:#174f831f;touch-action:manipulation}
 button,summary{min-height:44px}
 input,select,textarea{font-size:1rem;min-height:48px}
 button,a{white-space:normal}
 button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:2px}

 .masthead{padding:0 var(--mobile-gutter)}
 .topline,html[lang=en] .topline{gap:.75rem;padding:1rem 0 .65rem}
 .topline .brand,html[lang=en] .topline .brand{font-size:1.4rem;line-height:1.4;max-width:100%;gap:.55rem}
 .brand-mark{width:2.5rem;height:2.5rem}
 .brand-title{min-width:0}
 .member-navigation{min-height:0;gap:.6rem;font-size:.875rem;align-items:stretch;grid-template-columns:repeat(auto-fit,minmax(min(100%,7.5rem),1fr))}
 .member-navigation>a{min-height:46px;padding:.65rem .5rem;line-height:1.5}
 .header-settings{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,5rem),1fr));align-items:start;gap:.5rem;font-size:.875rem}
 .header-settings .reader-settings,.header-settings .reader-settings[open],.header-settings .site-menu{position:static;margin:0;max-width:none;width:auto;top:auto;right:auto;border:0;background:transparent;box-shadow:none;padding:0}
 .header-settings summary{display:flex;align-items:center;justify-content:center;min-height:44px;list-style:none;font-size:.875rem;line-height:1.5;border:1px solid var(--line);border-radius:5px;padding:.4rem .2rem;background:white}
 .header-settings summary::-webkit-details-marker{display:none}
 .header-settings details[open]>summary{background:var(--pale);border-color:var(--ink)}
 .header-settings .reader-settings-panel,.header-settings .site-menu>div{position:absolute;left:0;right:0;top:calc(100% + .4rem);width:auto;max-width:100%;max-height:65dvh;overflow:auto;z-index:20;padding:1rem;background:white;border:1px solid var(--line);border-radius:6px;box-shadow:0 10px 28px #17263e24}
 .header-settings .reader-settings-panel label{display:grid;gap:.5rem;padding:0;font-size:.875rem}
 .header-settings .reader-settings-panel select{width:100%;font-size:1rem;min-height:48px}
 .header-settings .reader-settings-panel p{font-size:.875rem;line-height:1.7}
 .header-settings .site-menu>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem .65rem}
 .header-settings .site-menu a{display:flex;align-items:center;min-height:44px;font-size:.875rem;padding:.5rem .25rem}
 .header-settings .language-bar{display:block;margin:0;width:100%}
 .header-settings .language-bar select{width:100%;max-width:100%;min-height:44px;font-size:1rem;padding:.4rem .25rem}
 .masthead>.primary-nav{grid-template-columns:repeat(auto-fit,minmax(min(100%,6rem),1fr));gap:0 .45rem;font-size:.875rem;min-height:0;padding:0;white-space:normal}
 .primary-nav>a{min-height:48px;padding:.6rem .15rem;line-height:1.5;text-align:center}
 .breadcrumbs{padding:0 var(--mobile-gutter);font-size:.8125rem;margin-top:1rem;gap:.35rem .5rem}
 .breadcrumbs a{display:inline-flex;align-items:center;min-height:32px}

 .page-intro,.feature-heading,.article-head{padding:1.5rem var(--mobile-gutter) 1rem}
 .page-intro h1,.feature-heading h1,.article-head h1,.feature-preview h1,.news-article-heading h1,.member-shell .member-content h1{font-size:clamp(1.5rem,6vw,1.875rem);line-height:1.5}
 .article-title-tools{display:flex;flex-direction:column;align-items:flex-start;gap:.85rem;margin-bottom:1rem}
 .article-title-tools>h1{flex:auto;width:100%;max-width:100%}
 .favorite-control{padding:0;max-width:100%}
 .favorite-button,.member-content .favorite-button{min-height:46px;font-size:.875rem;padding:.65rem .85rem;line-height:1.5;white-space:normal;max-width:100%}
 .favorite-feedback{font-size:.875rem;max-width:100%}
 .article-layout{padding:0 var(--mobile-gutter)}
 .article-body,.scene-prose,.feature-preview,.news-article{overflow-wrap:anywhere}
 .article-body>p,.scene-prose>p,.feature-preview p,.feature-preview li,.news-article p,.day-part p{font-size:1rem;line-height:1.95}
 .article-body>h2,.scene-prose h2,.feature-preview h2,.news-article h2{font-size:1.3rem;line-height:1.6}
 .news-list,.news-article{width:auto;margin-left:var(--mobile-gutter);margin-right:var(--mobile-gutter)}
 .news-meta,.meta{flex-wrap:wrap;gap:.3rem .75rem;font-size:.8125rem}
 .news-list-item{padding:1.3rem 0}
 .news-list-item h2{font-size:1.2rem;line-height:1.6}
 .news-filters,.news-kind-filter{gap:.6rem}
 .news-kind-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
 .news-kind-filter button{min-height:46px;padding:.55rem .45rem;font-size:.875rem;line-height:1.5}
 .news-filters .filter-inline{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem}
 .filter-inline select{font-size:1rem;min-width:0}

 .atlas-front{margin:1rem 0 0;display:flex;flex-direction:column}
 .atlas-front-copy{padding:1.75rem var(--mobile-gutter)}
 .atlas-front h1,html[lang=en] .atlas-front h1{font-size:clamp(1.65rem,6.6vw,2rem);line-height:1.55;margin:1rem 0}
 .atlas-front-copy>p{font-size:1rem;line-height:1.85}
 .atlas-front .primary{max-width:100%;gap:1rem;justify-content:space-between;padding:.85rem 1rem;font-size:1rem}
 .atlas-front .front-jumps{font-size:.875rem;display:grid;grid-template-columns:1fr;gap:.25rem;margin-top:1.1rem}
 .front-jumps a{min-height:44px;display:flex;align-items:center;line-height:1.6}
 .atlas-front-copy>small{font-size:.8125rem;margin-top:1rem}
 .atlas-front>figure{height:auto;min-height:0;aspect-ratio:auto;display:block;width:100%}
 .atlas-front>figure>img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
 .atlas-front figcaption,.atlas-scene>.atlas-image-frame figcaption,.atlas-era figcaption,.atlas-finale figcaption,.lead-art figcaption{position:static;inset:auto;max-width:100%;width:100%;display:block;margin:0;border-radius:0;background:#f1f4f8;color:#536278;padding:.6rem .85rem;font-size:.8125rem;line-height:1.7}
 .article-figure figcaption,.atlas-scene-figure figcaption,.day-part figcaption{font-size:.8125rem;line-height:1.75}
 figcaption small,.atlas-era figcaption small,.atlas-scene-figure figcaption small{font-size:.75rem;line-height:1.7;opacity:1;color:inherit}
 .atlas,.atlas-linear{padding:1.4rem var(--mobile-gutter) 2rem}
 .atlas-heading{display:block}
 .atlas-heading>p{white-space:normal;font-size:.875rem;margin:.5rem 0}
 .atlas-intro{font-size:.9375rem;line-height:1.8}
 .atlas-intro>span{font-size:.8125rem}
 .atlas-controls,html[lang=en] .atlas-controls{padding:.75rem}
 .control-label{font-size:.875rem}
 .year-buttons{grid-template-columns:repeat(auto-fit,minmax(min(100%,4.5rem),1fr));gap:.4rem}
 .area-buttons{grid-template-columns:repeat(auto-fit,minmax(min(100%,5rem),1fr));gap:.4rem}
 .year-buttons button,.area-buttons button,html[lang=en] .area-buttons button{min-height:46px;font-size:.875rem;padding:.55rem .2rem;line-height:1.5}
 .atlas-scene-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
 .atlas-scene-actions button{min-height:46px;font-size:.875rem;padding:.65rem .45rem;line-height:1.5}
 .atlas-scene-actions button:last-child:nth-child(odd){grid-column:1/-1}
 .atlas-next{gap:.75rem}.atlas-next button{flex:1;min-height:46px;font-size:.875rem;padding:.65rem .5rem}
 .atlas-details>summary{font-size:.9375rem;line-height:1.7;min-height:48px;padding:.85rem 0}
 .saved-scenes summary>span{display:block;margin:0;font-size:.8125rem}
 .atlas-resume,.atlas-status,.atlas-connections{font-size:.875rem}
 .scene-page{padding:0 var(--mobile-gutter)}
 .scene-page .scene-cover,.scene-page .scene-prose,.scene-page .scene-share,.scene-page .scene-observations{margin-left:0;margin-right:0}
 .scene-page .scene-prose{padding:1rem 0}
 .scene-cover img{height:auto;max-height:none}

 .atlas-matrix{overflow:visible;border:0;max-width:100%}
 .atlas-matrix table,.atlas-matrix tbody{display:block;width:100%;min-width:0}
 .atlas-matrix thead{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
 .atlas-matrix tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1.5rem;border:1px solid var(--line);border-radius:6px;overflow:hidden}
 .atlas-matrix th:first-child{position:static;width:auto;grid-column:1/-1;padding:.85rem 1rem;font-size:1.35rem;text-align:left}
 .atlas-matrix td{min-width:0;border:0;border-top:1px solid var(--line)}
 .atlas-matrix td:nth-child(odd){border-left:1px solid var(--line)}
 .atlas-matrix td a{min-height:100%;height:100%;padding:.8rem;font-size:.875rem;line-height:1.75}
 .atlas-mobile-area{display:block;font-size:.75rem;font-weight:700;color:#536278;margin-bottom:.35rem}

 .reading,.theme-section,.feature-home{padding:1.75rem var(--mobile-gutter)}
 .story-grid,.preview-grid,.search-results,.feature-home>div,.journey-controls,.search-controls,.day-part{grid-template-columns:minmax(0,1fr)}
 .story-card+.story-card{border-left:0;padding-left:0}
 .story-card h3,.preview-card h3{font-size:1.25rem;line-height:1.6}
 .story-card p,.preview-card p,.feature-home p{font-size:1rem;line-height:1.85}
 .section-top{flex-wrap:wrap;gap:.6rem}
 .section-top h2,.theme-section h2,.feature-home>h2{font-size:1.4rem;line-height:1.6}
 .theme-section{margin:0;padding-top:0}.theme-list>a{gap:.85rem}.theme-list h3{font-size:1.15rem}
 .feature-home{margin:0 auto}.feature-home>div a{padding:1rem 0}
 .journey-controls,.search-controls{margin-inline:var(--mobile-gutter);padding:1rem;gap:1rem}
 .journey-controls select,.search-controls input,.search-controls select,.favorite-search input{font-size:1rem;min-height:48px}
 .journey-controls button,.search-controls button{width:100%;justify-self:stretch;min-height:48px;font-size:1rem}
 .day-result,.search-results{padding:0 var(--mobile-gutter)}
 .day-part{gap:1rem}.day-part h3{font-size:1.3rem}
 .feature-actions{display:flex;flex-direction:column;align-items:stretch;gap:.65rem}
 .feature-actions button{width:100%;min-height:48px;font-size:.9375rem;line-height:1.6}
 .feature-preview{padding:1.5rem var(--mobile-gutter)}
 .plain-page{padding:0 var(--mobile-gutter) 2rem;max-width:100%}
 .membership-offer{margin-inline:var(--mobile-gutter);padding:1.25rem}
 .membership-offer h2,.member-faq h2{font-size:1.4rem}
 .primary,.form-button,.member-button{max-width:100%;white-space:normal;line-height:1.6;gap:1rem}
 .follow-band{padding:1.5rem var(--mobile-gutter);flex-direction:column;align-items:flex-start;gap:.75rem}
 .follow-band a{white-space:normal;font-size:1rem;line-height:1.7}
 footer{padding:2rem var(--mobile-gutter) 1.5rem;gap:1.2rem}
 footer>div:nth-child(2){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .8rem;width:100%;font-size:.875rem}
 footer>div:nth-child(2)>a{display:flex;align-items:center;min-height:44px;line-height:1.7}
 .footer-brand{max-width:100%;font-size:1.25rem;gap:.55rem}

 .member-shell{padding:1rem var(--mobile-gutter)}
 .member-top{gap:.5rem;padding-bottom:.85rem}
 .member-top>a{max-width:100%;font-size:1.1rem;line-height:1.6}
 .member-top img{width:2.5rem;height:2.5rem;flex-shrink:0}
 .member-top nav{min-height:44px;gap:.75rem}
 .member-content{padding:1.5rem 0 2rem}
 .member-shell .member-content h2{font-size:1.3rem;line-height:1.6}
 .member-shell .member-content button,.member-shell .member-button{max-width:100%;min-height:48px;font-size:.9375rem;line-height:1.6;white-space:normal}
 .member-content .account-card{padding:1.1rem;margin:1.25rem 0}
 .member-content .account-note,.member-content .favorite-search{font-size:.9375rem}
 .account-tabs{gap:.5rem;display:grid;grid-template-columns:1fr 1fr;font-size:.875rem}
 .account-tabs>a{display:flex;align-items:center;justify-content:center;min-height:48px;line-height:1.6;text-align:center}
 .member-content .favorite-row h3{font-size:1rem;line-height:1.7}
 .member-content .favorite-remove{font-size:.875rem;min-height:44px}
 .account-feature-list>a,.account-footer a{min-height:44px;font-size:.9375rem;line-height:1.7}

 .member-suggestion{right:var(--mobile-gutter);bottom:max(.75rem,env(safe-area-inset-bottom));width:min(24rem,calc(100% - 2 * var(--mobile-gutter)));max-height:60vh;max-height:60dvh;display:flex;flex-direction:column;padding:0;overflow:hidden;border-radius:10px}
 .member-suggestion-head{position:relative;flex:0 0 auto;min-height:3.5rem;padding:.9rem 3.25rem .35rem 1rem}
 .member-suggestion .member-suggestion-label{margin:0;font-size:.8125rem;line-height:1.6}
 .member-suggestion-close{top:.35rem;right:.25rem;min-height:44px;min-width:44px;width:2.75rem;height:2.75rem}
 .member-suggestion-body{overflow:auto;overscroll-behavior:contain;padding:.4rem 1rem 1rem}
 .member-suggestion h2{font-size:1.1rem;line-height:1.5;margin:0 0 .55rem}
 .member-suggestion p{font-size:.875rem;line-height:1.65}
 .member-suggestion .member-suggestion-price{font-size:1rem;margin:.65rem 0}
 .member-suggestion-link{min-height:46px;padding:.7rem .85rem;font-size:.875rem;line-height:1.6;gap:.65rem}
 .member-suggestion .member-suggestion-note{font-size:.8125rem;line-height:1.65}
 html[data-read-size=largest] .header-settings{grid-template-columns:1fr 1fr}
 html[data-read-size=largest] .header-settings .language-bar{grid-column:1/-1}
}
@media(max-width:379px){.atlas-matrix tbody tr{grid-template-columns:1fr}.atlas-matrix td:nth-child(odd){border-left:0}}
@media(max-width:760px) and (max-height:500px){.member-suggestion{max-height:75dvh}.member-suggestion h2{font-size:1rem}.member-suggestion-head{padding-top:.7rem}.member-suggestion-body{padding-bottom:.75rem}}
@media(min-width:761px) and (max-width:1050px){.topline .brand,html[lang=en] .topline .brand{max-width:100%}.member-navigation>a{white-space:normal}.header-settings{max-width:100%}.article-title-tools>h1{min-width:0}}
