/* Atelier Editorial v2.5 · Structural distinctions preserved: never flatten all themes into one template. */
.portal-site{--atelier-reading-width:76ch;--atelier-public-shadow:0 6px 30px #0e244014}
.portal-site .portal-header{box-shadow:0 3px 18px #00000009}
.portal-site .portal-logo{letter-spacing:-.035em}
.portal-site .public-container{max-width:min(100% - 36px,1360px)}
.portal-site .section-heading{position:relative;margin-bottom:20px}
.portal-site .section-heading h2:after{content:'';display:block;width:32px;height:3px;background:var(--accent);margin-top:8px}
.portal-site .story-card{border-radius:var(--card-radius,12px)}
.portal-site .story-card .card-copy h3{font-weight:850}
.portal-site .story-card .card-copy small{letter-spacing:.03em}
.portal-site .article-body{min-width:0}
.portal-site .story-page .article-body>h1{max-width:23ch;letter-spacing:-.06em;line-height:1.11}
.portal-site .article-copy{max-width:var(--atelier-reading-width)}
.portal-site .article-copy :is(h2,h3){letter-spacing:-.034em;text-wrap:balance}
.portal-site .article-copy :is(ul,ol){padding-left:1.5em}
.portal-site .article-copy li{line-height:1.85}
.portal-site .article-copy blockquote{margin:27px 0;border-left:4px solid var(--accent);padding:15px 19px;background:color-mix(in srgb,var(--brand),white 94%);border-radius:0 12px 12px 0}
.portal-site .article-copy img{max-width:100%;height:auto;border-radius:12px}
.atelier-reading-progress{position:fixed;inset:0 0 auto;height:4px;background:transparent;z-index:120;pointer-events:none}
.atelier-reading-progress>span{display:block;width:0%;height:100%;background:linear-gradient(90deg,var(--brand),var(--accent));transition:width .08s linear;box-shadow:0 1px 8px #00000024}
.portal-site .atelier-read-time{font-weight:760}
.portal-site .atelier-copy-link,.portal-site .atelier-print{border:1px solid color-mix(in srgb,var(--brand),transparent 70%);background:transparent;border-radius:9px;color:var(--brand);padding:8px 12px;min-height:38px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;transition:background .2s}
.portal-site .atelier-copy-link:hover,.portal-site .atelier-print:hover{background:color-mix(in srgb,var(--brand),transparent 92%)}
.portal-site .atelier-copy-feedback{font-size:12px;color:var(--brand);font-weight:750}
/* Newsroom / editorial designs: classic serif headlines and rules, not newspaper color swap. */
.portal-site:is(.layout-editorial,.layout-newspaper,.layout-broadsheet) .main-hero .hero-gradient h1{font-family:Georgia,serif;font-weight:750;letter-spacing:-.058em}
.portal-site:is(.layout-editorial,.layout-newspaper,.layout-broadsheet) .section-heading{border-bottom:2px solid currentColor;padding-bottom:13px}
.portal-site:is(.layout-editorial,.layout-newspaper,.layout-broadsheet) .section-heading h2:after{display:none}
.portal-site:is(.layout-editorial,.layout-newspaper,.layout-broadsheet) .story-card h3{font-family:Georgia,serif;font-weight:700}
/* Magazine features: elevated covers, asymmetric composition. */
.portal-site:is(.layout-magazine,.layout-mosaic,.layout-showcase) .story-grid{gap:21px}
.portal-site:is(.layout-magazine,.layout-mosaic,.layout-showcase) .story-card{overflow:hidden;box-shadow:var(--atelier-public-shadow);background:var(--premium-surface,#fff)}
.portal-site:is(.layout-magazine,.layout-mosaic,.layout-showcase) .story-card .card-copy{padding:clamp(13px,2vw,20px)}
.portal-site:is(.layout-magazine,.layout-mosaic,.layout-showcase) .hero-minor{box-shadow:0 19px 39px #091b3a22}
/* Sport/arena: bold, compact typography and emphatic category bars. */
.portal-site:is(.layout-arena,.layout-sport,.layout-scoreboard) .story-card h3{text-transform:none;font-weight:950;letter-spacing:-.045em}
.portal-site:is(.layout-arena,.layout-sport,.layout-scoreboard) .section-heading h2{text-transform:uppercase;letter-spacing:-.045em;font-weight:950}
.portal-site:is(.layout-arena,.layout-sport,.layout-scoreboard) .story-label{font-weight:900;text-transform:uppercase}
/* City / local portals: scannable guides and warm surfaces. */
.portal-site:is(.layout-regional,.layout-local,.layout-directory) .about-widget{border-top:4px solid var(--brand);box-shadow:var(--atelier-public-shadow)}
.portal-site:is(.layout-regional,.layout-local,.layout-directory) .story-card{border:1px solid color-mix(in srgb,var(--brand),transparent 84%)}
/* Minimal/technology: geometric, dense, sharp hierarchy. */
.portal-site:is(.layout-minimal,.layout-tech,.layout-grid) .story-card .card-image{border-radius:5px}
.portal-site:is(.layout-minimal,.layout-tech,.layout-grid) .section-heading h2:after{width:100%;height:1px;opacity:.35}
.portal-site:is(.layout-minimal,.layout-tech,.layout-grid) .story-card h3{letter-spacing:-.045em}
.portal-site.premium-dark .article-copy blockquote{background:#ffffff0b}
.portal-site.premium-dark .atelier-copy-link,.portal-site.premium-dark .atelier-print{color:#e5eeff;border-color:#ffffff55}
@media(max-width:730px){.portal-site .public-container{max-width:calc(100% - 28px)}.portal-site .story-page .article-body>h1{font-size:clamp(29px,7.2vw,46px)}.portal-site .article-share{flex-wrap:wrap;gap:8px}.portal-site .section-heading{margin-bottom:17px}}
@media(prefers-reduced-motion:reduce){.atelier-reading-progress>span{transition:none}}
@media print{.portal-site .atelier-reading-progress,.portal-site .article-share,.portal-site .return-link,.portal-site .portal-footer,.portal-site .public-nav,.portal-site .news-sidebar{display:none!important}.portal-site .article-grid{display:block}.portal-site .article-body{max-width:none}.portal-site .article-copy{max-width:none}}
