/* Consistent editorial layout, replacing the competing bento rules. */
:root{--wrap:min(1180px,calc(100% - 48px))}
body{background:#fff;line-height:1.6}
.page-hero{min-height:410px;padding:66px 24px;background:var(--p0)}
.page-hero:before{background:linear-gradient(100deg,#ffffffed,#f5eef9d9)}
.page-hero-content{max-width:920px;margin:auto;text-align:center}
.page-hero h1{max-width:none;margin:20px auto;font-size:clamp(40px,5vw,64px);line-height:1.15;letter-spacing:-.04em}
.page-hero p{max-width:760px;margin:0 auto;font-size:clamp(17px,2vw,22px);line-height:1.65;text-wrap:balance}
.page-hero-actions{margin-top:26px}
.featured{padding:64px 0}
.feature{grid-template-columns:1fr 1fr;min-height:0;border-radius:22px;box-shadow:0 12px 34px #2f104d0b}
.feature-image{min-height:360px}
.feature-copy{padding:36px 40px}
.feature-copy h2{font-size:clamp(27px,2.8vw,36px);line-height:1.3;letter-spacing:-.03em;margin:16px 0}
.feature-copy p{font-size:16px;margin:0;line-height:1.8}
.meta{font-size:12px;font-weight:600;letter-spacing:.04em}
.read{font-weight:600;font-size:14px;min-height:44px;align-items:center}
.articles{padding:64px 0;background:var(--p0);overflow:visible;scroll-margin-top:100px}
.articles:before,.article:before{display:none}
.section-head{align-items:start;border:0;padding:0;margin-bottom:28px;gap:40px}
.section-head h2{font-size:clamp(30px,3.2vw,42px);line-height:1.25;letter-spacing:-.035em}
.section-head p{max-width:440px;font-size:16px;line-height:1.8}
.eyebrow{font-weight:600;font-size:12px;margin-bottom:12px;letter-spacing:.1em}
.filters{position:static;top:auto;width:auto;display:flex;flex-wrap:wrap;overflow:visible;gap:10px;padding:0;border:0;background:none;box-shadow:none;backdrop-filter:none;margin-bottom:28px;border-radius:0}
.filter{font-size:14px;font-weight:500;padding:0 20px;transition:background .2s,color .2s,border-color .2s}
.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.grid .article:nth-child(n){grid-column:auto;display:flex;flex-direction:column;background:#fff;color:var(--ink);min-width:0;border:1px solid var(--line);border-radius:18px;box-shadow:0 6px 20px #2f104d06;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.grid .article.hide,.grid .article[hidden]{display:none!important}
.grid .article:nth-child(n) .article-image{height:auto;min-height:0;aspect-ratio:16/10;flex-shrink:0}
.article-image img,.feature-image img{display:block;transition:transform .35s ease}
.article-image:after{display:none}
.grid .article:nth-child(n) .article-body{padding:24px;display:flex;flex:1;flex-direction:column;justify-content:flex-start}
.article h3{font-size:21px;line-height:1.45;letter-spacing:-.025em;font-weight:600;margin:12px 0}
.grid .article:nth-child(n) p{font-size:15px;color:var(--muted);line-height:1.8}
.grid .article:nth-child(n) .meta,.grid .article:nth-child(n) .read{color:var(--p7)}
.article .read{padding-top:18px;margin-top:auto;font-size:14px}
.newsletter{padding:64px 0}
.newsletter+.newsletter{padding-top:0}
.newsbox{grid-template-columns:1fr 1fr;gap:48px;padding:40px;border-radius:22px;box-shadow:none;background:var(--p8)}
.newsbox h2{font-size:clamp(27px,3vw,36px);line-height:1.3;letter-spacing:-.03em}
.newsbox p{font-size:15px;line-height:1.8;color:#f0e6f6}
.subscribe{border-radius:12px;min-height:52px}
.subscribe input{font-size:16px;min-height:44px}
.subscribe:focus-within{outline:2px solid #e6b7ff;outline-offset:3px}
.newsbox .btn{font-size:14px;font-weight:600;box-shadow:none}
.footer{padding:52px 0 24px;background:var(--p0);border-top:1px solid var(--line)}
.footer-grid{grid-template-columns:1.5fr repeat(4,minmax(0,1fr));gap:32px}
.footer-brand p{max-width:260px;line-height:1.8}
.footer-col{font-size:14px;gap:12px}
.footer-col h3{font-weight:600;letter-spacing:.03em}
.footer-col a:hover{color:var(--p7)}
a:focus-visible,button:focus-visible{outline:3px solid #a75bd1;outline-offset:4px;border-radius:6px}
@media(hover:hover) and (pointer:fine){.grid .article:nth-child(n):hover{transform:translateY(-4px);border-color:#c7a1dc;box-shadow:0 12px 28px #2f104d12}}
@media(max-width:980px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-copy{padding:28px}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.newsbox{gap:32px}}
@media(max-width:760px){.feature,.newsbox{grid-template-columns:1fr}.feature-image{min-height:0;height:auto;aspect-ratio:16/9}.section-head{display:block}.section-head p{margin-top:16px}.page-hero{min-height:360px;padding:52px 24px}}
@media(max-width:520px){:root{--wrap:calc(100% - 36px)}.grid{grid-template-columns:1fr}.featured,.articles,.newsletter{padding:48px 0}.newsletter+.newsletter{padding-top:0}.newsbox{padding:28px 22px}.feature-copy{padding:26px 22px}.article p{font-size:16px!important}.subscribe{flex-direction:column;gap:8px;border-radius:12px;padding:8px}.subscribe input{border:0!important;border-radius:6px;min-height:48px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.footer-brand{grid-column:1/-1}.bottom{gap:12px}.filter{padding:0 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.grid .article:nth-child(n):hover,.article:hover img,.feature:hover img{transform:none}}
