/* Content views only: header, footer, homepage and module widgets retain their styles. */
.crasc-content-view main :is(.resource-hero,.article-hero){padding:48px 0 36px}
.crasc-content-view main :is(.resource-hero-grid,.article-hero-grid){display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:40px}
.crasc-content-view main .article-hero-grid.no-media,.crasc-content-view main .resource-hero-grid:has(.resource-hero-copy:only-child){grid-template-columns:minmax(0,1fr)}
.crasc-content-view main :is(.resource-hero-copy,.article-hero-copy){min-width:0}
.crasc-content-view main :is(.resource-hero-copy,.article-hero-copy) h1{margin:0;font-size:clamp(28px,3.4vw,44px);line-height:1.2;color:var(--crasc-bordeaux);overflow-wrap:anywhere}
.crasc-content-view main :is(.resource-hero-copy,.article-hero-copy)>p{max-width:680px;margin-block:20px 0;font-size:17px;line-height:1.8;color:#505050}
.crasc-content-view main :is(.resource-hero-image,.article-hero-image){min-width:0;max-width:520px;width:100%;justify-self:center;overflow:hidden;border-radius:16px;background:#f4f2f2}
.crasc-content-view main :is(.resource-hero-image,.article-hero-image) img{display:block;width:100%;height:auto;max-height:390px;object-fit:contain;margin:0}
.crasc-content-view main .article-category-link a{display:inline-flex;padding:6px 12px;margin-block-end:16px;border-radius:999px;background:#f4e9eb;color:var(--crasc-bordeaux);font-size:13px;font-weight:700;text-decoration:none}
.crasc-content-view main .article-date{margin-block:16px;color:#666;font-size:14px}
.crasc-content-view main :is(.content-section,.articles-section){padding:36px 0 60px}
.crasc-content-view main .reading-layout{max-width:820px}
.crasc-content-view main .prose-reading{width:100%;max-width:820px;margin-inline:auto;font-size:17px;line-height:1.85;overflow-wrap:anywhere}
.crasc-content-view main .nx-region-body>.prose-reading{width:min(820px,calc(100% - 40px))}
.crasc-content-view main .prose-reading h2{font-size:27px;line-height:1.35;margin-block:1.5em .6em;color:var(--crasc-bordeaux)}
.crasc-content-view main .prose-reading h3{font-size:22px;line-height:1.4;margin-block:1.4em .6em}
.crasc-content-view main .prose-reading p{margin-block:0 1.2em}
.crasc-content-view main .prose-reading img{display:block;max-width:100%;height:auto;margin:24px auto}
.crasc-content-view main .prose-reading blockquote{margin:24px 0;padding:18px 24px;border-inline-start:3px solid var(--crasc-bordeaux);background:#f8f5f5}
.crasc-content-view main .prose-reading table{display:block;max-width:100%;overflow:auto}
.crasc-content-view main .category-content-body{display:grid;gap:32px;min-width:0}
.crasc-content-view main :is(.category-child-grid,.article-grid){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.crasc-content-view main :is(.category-child-card,.article-card){min-width:0;border:1px solid #e8e1e2;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(50,25,30,.04)}
.crasc-content-view main .category-child-card{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.crasc-content-view main :is(.category-child-media,.article-card-media){display:block;aspect-ratio:16/10;overflow:hidden;background:#f4f2f2}
.crasc-content-view main :is(.category-child-media,.article-card-media) img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.crasc-content-view main :is(.category-child-card,.article-card):hover img{transform:scale(1.03)}
.crasc-content-view main :is(.category-child-body,.article-card-body){padding:22px}
.crasc-content-view main .category-child-body{display:grid;gap:12px}
.crasc-content-view main :is(.category-child-body strong,.article-card h2){margin:0;font-size:20px;line-height:1.45;overflow-wrap:anywhere}
.crasc-content-view main .article-card h2 a{color:#303030;text-decoration:none}
.crasc-content-view main .category-child-body small,.crasc-content-view main .article-card-body p{font-size:15px;line-height:1.7;color:#666}
.crasc-content-view main .article-meta{font-size:13px;color:#666;margin-block-end:12px}
.crasc-content-view main .text-link,.crasc-content-view main .category-child-body>span{display:inline-flex;gap:8px;margin-block-start:14px;color:var(--crasc-bordeaux);font-weight:700;text-decoration:none}
.crasc-content-view main a:focus-visible{outline:2px solid var(--crasc-bordeaux);outline-offset:4px}
@media(max-width:1000px){.crasc-content-view main :is(.category-child-grid,.article-grid){grid-template-columns:repeat(2,minmax(0,1fr))}.crasc-content-view main :is(.resource-hero-grid,.article-hero-grid){gap:28px}}
@media(max-width:700px){.crasc-content-view main :is(.resource-hero-grid,.article-hero-grid,.category-child-grid,.article-grid){grid-template-columns:minmax(0,1fr)}.crasc-content-view main :is(.resource-hero,.article-hero){padding:28px 0 20px}.crasc-content-view main :is(.content-section,.articles-section){padding:24px 0 40px}.crasc-content-view main .prose-reading{font-size:16px}.crasc-content-view main .nx-region-body>.prose-reading{width:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){.crasc-content-view main :is(.category-child-media,.article-card-media) img{transition:none}.crasc-content-view main :is(.category-child-card,.article-card):hover img{transform:none}}

/* Article: editorial column; Core layout owns sidebar presence and spans. */
.crasc-article-view main [data-section-id="article-body"]{padding-block:40px 56px}
.crasc-article-view main .article-hero{padding:0 0 28px;background:none;border:0}
.crasc-article-view main .article-hero .site-container{width:100%;max-width:none;margin:0;padding:0}
.crasc-article-view main .article-hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:28px}
.crasc-article-view main .article-hero-copy h1{max-width:850px;color:#292929;font-size:clamp(30px,3.7vw,48px);font-weight:800;line-height:1.15}
.crasc-article-view main .article-hero-copy>p{max-width:none;font-size:18px;line-height:1.7;color:#505050;padding-inline-start:20px;border-inline-start:3px solid var(--crasc-bordeaux)}
.crasc-article-view main .article-category-link a{padding:0;background:none;border-radius:0;font-size:13px;letter-spacing:.03em}
.crasc-article-view main .article-date{padding-block:12px;margin-block:18px;border-block:1px solid #e8e2e3;font-size:13px}
.crasc-article-view main .article-hero-image{max-width:none;width:100%;border-radius:10px;background:#f6f5f5}
.crasc-article-view main .article-hero-image img{width:100%;height:auto;max-height:500px;object-fit:contain}
.crasc-article-view main .prose-reading{max-width:850px;font-size:17px;line-height:1.9}
.crasc-article-view main [data-column-id="article-sidebar-col"]{min-width:0;border-inline-start:1px solid #e8e2e3;padding-inline-start:24px}
@media(max-width:700px){.crasc-article-view main [data-section-id="article-body"]{padding-block:26px 36px}.crasc-article-view main [data-column-id="article-sidebar-col"]{border-inline-start:0;border-block-start:1px solid #e8e2e3;padding-inline-start:0;padding-block-start:24px}.crasc-article-view main .article-hero-copy>p{font-size:16px}.crasc-article-view main .prose-reading{font-size:16px}}

@media(max-width:800px){.crasc-article-view main [data-column-id="article-sidebar-col"]{border-inline-start:0;border-block-start:1px solid #e8e2e3;padding-inline-start:0;padding-block-start:24px}}

/* Page: keep the previous title/image layout; change the reading surface. */
.crasc-page-view main .prose-reading{background:#fff;border:1px solid #e9e3e4;border-radius:12px;padding:32px;box-shadow:0 6px 22px rgba(50,25,30,.04)}
.crasc-home-page #main-content{padding-block-start:32px}
@media(max-width:600px){.crasc-page-view main .prose-reading{padding:20px;border-radius:10px}.crasc-home-page #main-content{padding-block-start:24px}}

/* Article reading surface; the sidebar stays outside this panel. */
.crasc-article-view main [data-column-id="article-main-col"]{align-self:start;background:#fff;border:1px solid #e6dfe1;border-radius:16px;padding:clamp(22px,3vw,40px);box-shadow:0 8px 28px rgba(45,25,30,.07)}
.crasc-article-view main .article-content-section>.reading-layout{background:#fff;border:1px solid #e6dfe1;border-radius:16px;padding:clamp(22px,3vw,40px);box-shadow:0 8px 28px rgba(45,25,30,.07)}
@media(max-width:600px){.crasc-article-view main [data-column-id="article-main-col"],.crasc-article-view main .article-content-section>.reading-layout{padding:20px 18px;border-radius:12px}}

/* Article without sidebar: constrain the whole panel, not only its text. */
.crasc-article-view main [data-column-id="article-main-col"]:only-child{width:100%;max-width:820px;justify-self:center}
.crasc-article-view main .article-hero-image{background:transparent}
.crasc-article-view main .article-hero-image img{max-height:none;width:100%;height:auto;object-fit:initial}
.crasc-article-view main [data-column-id="article-main-col"] .prose-reading{max-width:none;width:100%}

/* Inter-widget spacing belongs to the layout position, for every content view. */
main .nx-position-role-blocks{display:flex;flex-direction:column;gap:24px;min-width:0}
main .nx-position-role-blocks>.nx-block{margin-block:0;min-width:0}
/* Restrained content typography; site header and navigation untouched. */
.crasc-content-view main :is(.resource-hero-copy,.article-hero-copy) h1{font-size:clamp(26px,2.5vw,34px);line-height:1.3;font-weight:700}
.crasc-content-view main :is(.resource-hero-copy,.article-hero-copy)>p{font-size:16px;line-height:1.75}
.crasc-content-view main .prose-reading{font-size:16px;line-height:1.85}
.crasc-content-view main .prose-reading h2{font-size:24px;line-height:1.4}
.crasc-content-view main .prose-reading h3{font-size:20px;line-height:1.45}
.crasc-content-view main :is(.category-child-body strong,.article-card h2){font-size:17px;line-height:1.5}
.crasc-content-view main .article-card-body p{font-size:14px;line-height:1.75}
main :is(.nx-core-text-block,.nx-block-address){font-size:15px;line-height:1.8}
main :is(.nx-block-title,.nx-article-list-block>h3,.nx-menu-block>h3,.nx-contact-widget .form-heading h3){font-size:18px;line-height:1.5}
.site-shell .og-modern-list__featured-body h2{font-size:clamp(21px,2vw,28px);line-height:1.35}
.site-shell .og-modern-list__section-title{font-size:23px;line-height:1.4}
.site-shell :is(.og-modern-list__card h3,.oratio-modern-widget__row h3,.oratio-modern-widget__card h3){font-size:16px;line-height:1.5}
.site-shell .oratio-modern-widget__featured-copy strong{font-size:clamp(22px,2.3vw,32px);line-height:1.25}
@media(max-width:600px){main .nx-position-role-blocks{gap:20px}}

/* 404: isolated styling, existing Core translations and home URL. */
.error-section{padding:clamp(40px,7vw,88px) 0}
.error-section .error-inner{max-width:720px;padding:clamp(28px,5vw,56px);text-align:center;background:#fff;border:1px solid #e7dfe1;border-radius:20px;box-shadow:0 12px 36px rgba(45,25,30,.06)}
.error-section .section-kicker{display:block;margin:0 0 20px;padding:0;color:var(--crasc-bordeaux);font-size:clamp(72px,12vw,128px);font-weight:800;line-height:1;letter-spacing:-.04em}
.error-section h1{margin:0;font-size:clamp(24px,3vw,32px);line-height:1.4;color:#303030}
.error-section p{max-width:480px;margin:18px auto 28px;font-size:16px;line-height:1.8;color:#666}
.error-section .button{min-height:46px;padding:12px 24px;border-radius:9px;background:var(--crasc-bordeaux);border-color:var(--crasc-bordeaux);color:#fff;font-size:15px;font-weight:600;line-height:1.5;transition:background-color .2s ease}
.error-section .button:hover{background:#57262c;border-color:#57262c}
.error-section .button:focus-visible{outline:3px solid var(--crasc-gold);outline-offset:4px}
@media(max-width:600px){.error-section{padding-block:32px}.error-section .error-inner{padding:30px 22px;border-radius:14px}}
@media(prefers-reduced-motion:reduce){.error-section .button{transition:none}}
