/* Shared editorial contract v2026.09.05-03.
   Classic article layout from the mono-city and NOVA materials. */
[data-editorial-version]{--editorial-width:46rem;--editorial-wide:1180px}
.q-skip{position:fixed;top:-100px;left:18px;padding:12px 18px;z-index:2000;background:var(--color-bg-card);color:var(--color-heading);border:1px solid var(--color-border-strong);border-radius:8px}.q-skip:focus{top:76px}
[data-editorial-layout="article"] .art-container{max-width:var(--editorial-width);width:100%;margin-inline:auto;padding-inline:20px}
[data-editorial-layout="article"] .art__head h1{font-family:var(--font-display);font-size:clamp(1.9rem,1.1rem + 2.4vw,2.65rem);line-height:1.17;font-weight:600;letter-spacing:.01em;text-transform:uppercase;text-wrap:balance;color:var(--color-heading);margin:0 0 20px}
[data-editorial-layout="article"] .art__meta{font-size:12px;line-height:1.7;color:var(--color-text-60);gap:8px 20px}[data-editorial-layout="article"] .art__meta a:hover{color:var(--color-teal)}
[data-editorial-layout="article"] .art__cover{aspect-ratio:auto;border-radius:18px;border:1px solid var(--color-border-md);background:var(--color-bg-card);overflow:hidden;margin-bottom:40px}
[data-editorial-layout="article"] .art__cover>img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
[data-editorial-layout="article"] .art__cover figcaption{padding:17px 20px;font-size:13px;line-height:1.75;color:var(--color-text-60)}
[data-editorial-layout="article"] .art__body{font-size:17px;line-height:1.75}
[data-editorial-layout="article"] .art__body>h2{margin-top:64px;margin-bottom:22px;font-family:var(--font-display);font-size:clamp(23px,1.05rem + .9vw,29px);line-height:1.22;font-weight:600;letter-spacing:.01em;scroll-margin-top:96px}
[data-editorial-layout="article"] .art__body>h3{margin-top:38px;margin-bottom:16px}
[data-editorial-layout="article"] .art__body>p+p{margin-top:24px}
[data-editorial-layout="article"] .art__body>p,.art__body>li{line-height:1.75}
[data-editorial-layout="article"] .art__body>.art-quote{margin-block:40px;padding:7px 0 7px 23px;border-left:3px solid var(--color-teal);font-size:23px;line-height:1.45}
.art-summary{margin:0 0 42px;padding:24px;border-block:1px solid var(--color-border-md)}.art-summary__head{font:600 11px/1.5 var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--color-teal);margin-bottom:15px}.art-summary ul{display:grid;gap:12px;list-style:none}.art-summary li{position:relative;padding-left:22px;font-size:14px;line-height:1.7;color:var(--color-text-80)}.art-summary li:before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--color-teal);box-shadow:0 0 0 4px var(--tint-teal-08)}
.art-evidence{margin-block:36px;padding:24px;border:1px solid var(--color-border-md);border-left:3px solid var(--color-purple);border-radius:0 16px 16px 0;background:var(--color-bg-card);font-size:15px;line-height:1.75}.art-evidence>span{display:block;font:600 11px/1.4 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--color-teal);margin-bottom:12px}
.art-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-block:36px}.art-steps>div{padding:22px;border:1px solid var(--color-border-md);border-radius:16px;background:var(--color-bg-card)}.art-steps b{display:block;font:500 29px/1 var(--font-display);color:var(--color-teal);margin-bottom:13px}.art-steps strong{font-size:15px;display:block;margin-bottom:9px}.art-steps p{font-size:14px;line-height:1.75}
.art-table{margin-block:36px;border:1px solid var(--color-border-md);border-radius:16px;overflow-x:auto;max-width:100%;font-size:13px;line-height:1.7}.art-table table{border-collapse:collapse;width:100%;min-width:570px}.art-table caption{text-align:left;padding:17px 20px;color:var(--color-text-60);font-size:12px;border-bottom:1px solid var(--color-border-md)}.art-table th,.art-table td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--color-border-md)}.art-table th{color:var(--color-heading);font:600 12px/1.5 var(--font-display);text-transform:uppercase;letter-spacing:.03em;background:var(--color-bg-card)}.art-table td:first-child{font-weight:600;color:var(--color-heading)}.art-table tr:last-child td{border-bottom:0}
.art-faq{margin-top:54px}.art-faq details{padding:18px 0;border-bottom:1px solid var(--color-border-md)}.art-faq summary{position:relative;list-style:none;padding-right:30px;cursor:pointer;font-size:16px;font-weight:600;line-height:1.65;color:var(--color-heading)}.art-faq summary::-webkit-details-marker{display:none}.art-faq summary:after{content:"+";position:absolute;right:0;top:0;color:var(--color-teal);font-size:22px;font-weight:400}.art-faq details[open] summary:after{content:"−"}.art-faq details p{font-size:15px;line-height:1.8;margin-top:16px;color:var(--color-text-60)}
.art-sources{padding-top:16px;margin-top:42px;border-top:1px solid var(--color-border-md)}.art-sources h2{margin-top:20px}.art-sources ol{list-style:decimal!important;display:grid;gap:17px;padding-left:22px!important;font-size:12px;line-height:1.8}.art-sources li{scroll-margin-top:96px}.art-sources li span{display:block;margin-top:4px;color:var(--color-text-60)}.art-sources>p{font-size:11px;line-height:1.75;color:var(--color-text-60);margin-top:24px!important}.art-cta .art-cta__note{font-size:11px;line-height:1.7;margin:18px 0 0;color:var(--color-text-60)}
/* One recommendation component for every article and case. No text overlays. */
.q-related{position:relative;left:50%;transform:translateX(-50%);width:min(1180px,calc(100vw - 40px));margin:64px 0 0;padding:38px 0 64px;border-top:1px solid var(--color-border-md);font-family:var(--font-body);color:var(--color-text-80);text-align:left}
.q-related__header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 28px}.q-related__eyebrow{font:600 11px/1.5 var(--font-display);letter-spacing:.13em;text-transform:uppercase;color:var(--color-teal);margin:0 0 10px}.q-related__header h2{font:500 clamp(27px,3vw,36px)/1.2 var(--font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--color-heading);margin:0}.q-related__all{font-size:12px;white-space:nowrap;color:var(--color-text-60);text-decoration:none;border:0}.q-related__all:hover{color:var(--color-teal)}
.q-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}
.q-card{display:flex;flex-direction:column;min-width:0;color:inherit;text-decoration:none!important;border:0!important;background:transparent;border-radius:0;padding:0;gap:0;transition:transform .2s}
.q-card__media{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:17px;background:var(--color-bg-card);border:1px solid var(--color-border-md)}.q-card__media img{display:block;width:100%;height:100%;object-fit:cover;border:0!important;border-radius:0!important;transition:transform .35s ease}
.q-card__body{display:flex;flex:1;flex-direction:column;padding-top:18px}.q-card__meta{display:block;font-size:11px;line-height:1.5;color:var(--color-text-60);margin-bottom:10px}.q-card .q-card__title{font:500 clamp(22px,2.3vw,28px)/1.24 var(--font-display);color:var(--color-heading);letter-spacing:.005em;text-transform:none;text-wrap:pretty;margin:0 0 13px}.q-card .q-card__summary{font:400 14px/1.75 var(--font-body);color:var(--color-text-60);margin:0 0 20px}.q-card__action{display:flex;align-items:center;justify-content:space-between;gap:14px;font:500 12px/1.5 var(--font-body);color:var(--color-teal);border-top:1px solid var(--color-border-md);padding-top:13px;margin-top:auto}.q-card__action>span{font-size:20px}.q-card:hover .q-card__media img{transform:scale(1.035)}.q-card:hover .q-card__title{color:var(--color-teal)}.q-card:focus-visible{outline:2px solid var(--color-teal);outline-offset:6px;border-radius:12px}
/* Invitation remains in the page gutter, never behind a cookie notice. */
.q-promo{z-index:80}.q-promo[hidden]{display:none!important}.q-promo__close{width:36px;height:36px}.q-promo__pip{margin-right:22px}.q-promo:focus-within{outline:1px solid var(--color-teal)}
.q-preview{width:min(1180px,calc(100% - 40px));margin-inline:auto;padding:100px 0 64px}.q-preview__head{margin:22px 0 45px;max-width:900px}.q-preview__head h1{font:500 clamp(36px,5.4vw,68px)/1.1 var(--font-display);letter-spacing:-.02em;margin:16px 0 22px;color:var(--color-heading)}.q-preview__head>p{max-width:750px;line-height:1.75;color:var(--color-text-60)}.q-preview__note{padding:16px 20px;margin-top:28px;border:1px solid var(--color-border-md);border-radius:12px;font-size:13px;line-height:1.7}.q-preview__group{padding:30px 0 48px;border-top:1px solid var(--color-border-md)}.q-preview__group>h2{font:500 32px/1.2 var(--font-display);margin-bottom:26px;color:var(--color-heading)}.q-preview__nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.q-preview__nav a{padding:8px 14px;border:1px solid var(--color-border-md);border-radius:22px;font-size:12px;color:var(--color-teal)}
@media(max-width:800px){.q-related__grid{gap:18px}.q-card .q-card__title{font-size:23px}.q-card .q-card__summary{font-size:13px}}
@media(max-width:600px){[data-editorial-layout="article"] .art-container{padding-inline:18px}[data-editorial-layout="article"] .art__head h1{font-size:31px;line-height:1.2}[data-editorial-layout="article"] .art__body{font-size:16px}[data-editorial-layout="article"] .art__body>h2{margin-top:48px;font-size:25px}[data-editorial-layout="article"] .art__cover figcaption{padding:15px 17px;font-size:12px}.art-steps{grid-template-columns:1fr}.art-summary{padding:20px 0}.art-summary li{font-size:13px}.art-evidence{padding:20px;font-size:14px}.art-table th,.art-table td{padding:13px}.art-faq summary{font-size:15px}.q-related{width:calc(100vw - 36px);margin-top:44px;padding-top:30px;padding-bottom:42px}.q-related__header{display:block}.q-related__header h2{font-size:28px}.q-related__all{display:inline-block;margin-top:15px}.q-related__grid{grid-template-columns:1fr;gap:34px}.q-card .q-card__title{font-size:27px}.q-card .q-card__summary{font-size:14px}.q-card__body{padding-top:16px}.q-preview{width:calc(100% - 36px);padding-top:82px}.q-preview__head h1{font-size:42px}.q-preview__head>p{font-size:15px}.q-promo{bottom:12px;left:12px;right:12px}.q-promo__pip{font-size:10px;margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){.q-card,.q-card__media img,.q-promo{transition:none!important}.q-card:hover .q-card__media img{transform:none}}
/* Persistent reading navigation: original article column, a separate left rail. */
.q-reading-content{min-width:0}
.art-toc.q-article-nav{min-width:0;margin:0 0 40px;padding:22px;border:1px solid var(--color-border-md);border-radius:14px;background:var(--color-bg-card);font-size:12px;line-height:1.55}
.q-article-nav__eyebrow{flex:none;font:600 10px/1.5 var(--font-display);letter-spacing:.13em;text-transform:uppercase;color:var(--color-text-60);margin:0 0 16px}
.art-toc.q-article-nav ol{display:grid;grid-template-columns:minmax(0,1fr);gap:3px;list-style:none;min-height:0;margin:0;padding:0}
.q-article-nav__links li{margin:0;padding:0;min-width:0}
.q-article-nav__links a{display:block;padding:7px 8px 7px 13px;border:0;border-left:2px solid var(--color-border-md);font:400 12px/1.55 var(--font-body);color:var(--color-text-60);text-decoration:none;transition:color .15s,border-color .15s}
.q-article-nav__links a:hover,.q-article-nav__links a[aria-current]{color:var(--color-heading);border-left-color:var(--color-teal);background:var(--tint-teal-08)}
.q-article-nav a:focus-visible{outline:2px solid var(--color-teal);outline-offset:2px}
.q-article-nav__cta{flex:none;margin-top:22px;padding-top:18px;border-top:1px solid var(--color-border-md)}
.q-article-nav__cta>a{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font:600 13px/1.5 var(--font-body);color:var(--color-teal);text-decoration:none;border:0}
.q-article-nav__cta>a:hover{color:var(--color-purple)}
.q-article-nav__cta>span{display:block;font:400 11px/1.65 var(--font-body);color:var(--color-text-60);margin-top:8px}
[data-editorial-layout="article"] .art [id]{scroll-margin-top:calc(var(--header-h) + 28px)}
html:has(body[data-editorial-layout="article"]){scroll-padding-top:0}
/* Reset every old bottom-banner breakpoint. The viewport center is invariant. */
.q-promo{left:auto;top:50%;bottom:auto;max-height:calc(100dvh - var(--header-h) - 40px);overflow:auto;overscroll-behavior:contain}
@media(min-width:801px){
 [data-editorial-layout="article"] .art-container{max-width:min(46rem,calc(100vw - 208px));margin-left:188px;margin-right:20px}
 .q-reading-layout{display:grid;grid-template-columns:164px minmax(0,1fr);column-gap:24px;width:calc(100% + 188px);margin-left:-188px;align-items:start}
 .art-toc.q-article-nav{position:sticky;top:calc(var(--header-h) + 28px);display:flex;flex-direction:column;max-height:calc(100dvh - var(--header-h) - 56px);margin:0;padding:0;border:0;border-radius:0;background:transparent}
 .art-toc.q-article-nav ol{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}
}
@media(min-width:1100px){
 [data-editorial-layout="article"] .art-container{max-width:min(46rem,calc(100vw - 448px));margin-inline:auto}
 .q-reading-layout{grid-template-columns:192px minmax(0,1fr);width:calc(100% + 216px);margin-left:-216px}
}
@media(min-width:1280px){
 .q-reading-layout{grid-template-columns:208px minmax(0,1fr);column-gap:48px;width:calc(100% + 256px);margin-left:-256px}
 .q-promo{width:clamp(12.5rem,calc((100vw - 46rem)/2 - 40px),16.5rem)}
}
@media(max-width:599px){.q-promo{right:12px;width:min(13rem,calc(100vw - 24px))}.q-article-nav__links a{font-size:13px;padding-block:8px}.q-article-nav__cta>a{font-size:14px}}
@media print{.q-related,.q-promo,.q-progress,.q-article-nav{display:none!important}.q-reading-layout{display:block;width:auto;margin:0}}
