/* Procedural identity: no decorative asset blocks article loading. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:fade-out .16s ease both}
::view-transition-new(root){animation:fade-in .35s ease both}
@keyframes fade-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes fade-in{from{opacity:0;transform:translateY(10px)}}
.security-edition .hero-visual,.security-edition .article-visual{isolation:isolate}
.security-edition .hero-visual img,.security-edition .card img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s ease}
.security-edition .card a:hover img{transform:scale(1.025);filter:saturate(1.12)}
.security-edition .desk-menu{box-shadow:0 18px 60px #100c2033;border-top:2px solid #b090ec}
.security-edition .topic-filters button{transition:background .2s,color .2s,border-color .2s,transform .2s}
.security-edition .topic-filters button:hover{transform:translateY(-2px)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.security-edition img,.topic-filters button{transition:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}.section-mast h1,.article-head h1,.hero-copy h1{animation:none!important}}
/* Official source media retains its full frame, including chart axes and labels. */
body.security-edition:has(.section-mast) .section-mast{display:grid;grid-template-columns:1fr 1fr;column-gap:42px;align-content:center;align-items:start;padding:32px 0}
.section-mast>.eyebrow,.section-mast>h1,.section-mast>.deck,.section-mast>.desk-scope{grid-column:1}
.desk-official-cover{grid-column:2;grid-row:1/5;margin:0;align-self:center;min-width:0}
.desk-official-cover img{display:block;width:100%;height:auto;max-height:290px;object-fit:contain;background:#151020}
.desk-official-cover figcaption{font:400 11px/1.6 Arial,sans-serif;color:#d9cce9;margin-top:12px}
.desk-official-cover figcaption a{text-decoration:underline;text-underline-offset:3px}
.official-media{margin:38px 0;padding:24px 0;border-block:1px solid var(--rule)}
.official-media>.eyebrow{display:block;margin-bottom:15px}
.official-media video,.official-animation img{display:block;width:100%;height:auto;max-height:580px;object-fit:contain;background:#100c20}
.official-media figcaption{font:400 12px/1.6 Arial,sans-serif;color:var(--muted);margin:12px 0 0}
.official-media figcaption a{text-decoration:underline}
.official-animation button{margin-top:12px;font-size:12px}
.security-edition .article-visual .article-image{object-fit:contain;aspect-ratio:auto;max-height:650px}
@media(max-width:760px){body.security-edition:has(.section-mast) .section-mast{display:block}.desk-official-cover{margin-top:24px}.desk-official-cover img{max-height:220px}}
.official-media iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;background:#100c20}

/* Shared article cards, based on the Data desk. */
body.security-edition:has(.cards) main.wrap .cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:stretch}
body.security-edition:has(.cards) main.wrap .card{display:flex;flex-direction:column;padding:0;border:1px solid var(--rule);border-radius:8px;background:var(--panel);overflow:hidden;box-shadow:0 3px 12px #20132d06;transition:border-color .2s,box-shadow .2s}
body.security-edition:has(.cards) main.wrap .card[hidden]{display:none}
body.security-edition:has(.cards) main.wrap .card:hover{transform:none;border-color:var(--accent);box-shadow:0 10px 30px #20132d12}
body.security-edition:has(.cards) main.wrap .card>a{display:flex;flex-direction:column;gap:0;padding:0 26px;flex:1;color:inherit}
body.security-edition:has(.cards) main.wrap .card .card-image{width:calc(100% + 52px);max-width:none;margin:0 -26px 25px;height:auto;aspect-ratio:16/9;object-fit:contain;background:#ebe8f0;border-radius:0;border-bottom:1px solid var(--rule);transform:none}
body.security-edition:has(.cards) main.wrap .card .tag{display:none}
body.security-edition:has(.cards) main.wrap .card h3{font-size:clamp(25px,2.3vw,33px);line-height:1.13;font-stretch:85%;letter-spacing:-.02em;margin:0 0 14px;max-width:none;text-wrap:pretty}
body.security-edition:has(.cards) main.wrap .card .deck{font:400 15px/1.65 var(--sans);color:var(--muted);margin:0 0 22px;max-width:none}
body.security-edition:has(.cards) main.wrap .card .card-topics{margin:0 26px 18px;gap:6px}
body.security-edition:has(.cards) main.wrap .card .card-topics a{background:var(--bg);border-radius:20px;padding:6px 10px;font-size:11px}
body.security-edition:has(.cards) main.wrap .card .meta{margin:0 26px;padding:15px 0 18px;border-top:1px solid var(--rule);font-size:11px;letter-spacing:.02em;color:var(--muted)}
body.security-edition:has(.cards) main.wrap .card .meta .card-read{float:right;color:var(--accent);font-weight:600}
body.security-edition:has(.section-mast) .filterable-desk{margin-top:38px}
body.security-edition:has(.section-mast) .filterable-desk .desk-controls{padding:18px 0}
body.security-edition:has(.section-mast) .filterable-desk .filter-status{margin:22px 0}
@media(max-width:760px){body.security-edition:has(.cards) main.wrap .cards{grid-template-columns:1fr;gap:24px}body.security-edition:has(.cards) main.wrap .card h3{font-size:28px}body.security-edition:has(.cards) main.wrap .card>a{padding-inline:20px}body.security-edition:has(.cards) main.wrap .card .card-image{width:calc(100% + 40px);margin-inline:-20px}body.security-edition:has(.cards) main.wrap .card .card-topics,body.security-edition:has(.cards) main.wrap .card .meta{margin-inline:20px}}
.card-read{float:right;color:var(--accent);font-weight:600;margin-left:10px}
/* Section titles navigate; the adjacent arrow controls topic menus. */
.security-edition .subject-nav{grid-template-columns:1.65fr repeat(4,1fr)}
.security-edition .nav-desk{display:flex;align-items:stretch;min-width:0}
.security-edition .subject-nav .desk-link{display:flex;align-items:center;flex:1;min-width:0;padding:17px 8px 17px 18px;font:600 15px/1.3 Arial,sans-serif;white-space:normal;text-decoration:none;border:0;background:none;border-radius:0}
.security-edition .nav-desk .desk-toggle{width:34px;flex:none;padding:12px 8px;justify-content:center;border-left:1px solid var(--rule)}
.security-edition .desk-link[aria-current=page]{color:var(--accent)}
@media(max-width:760px){.security-edition .subject-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.security-edition .nav-desk:first-child{grid-column:1/-1}.security-edition .subject-nav .desk-link{font-size:14px;padding:14px 12px}.security-edition .nav-desk .desk-toggle{width:40px}}

/* Editorial list rows, with the image and story details read side by side. */
body.security-edition:has(.cards) main.wrap .cards{display:flex;flex-direction:column;gap:22px}
body.security-edition:has(.cards) main.wrap .card{--row-image:32%;display:block;position:relative;padding:24px;background:var(--panel)}
body.security-edition:has(.cards) main.wrap .card>a{display:block;padding:0 0 0 calc(var(--row-image) + 28px);min-height:110px}
body.security-edition:has(.cards) main.wrap .card .card-image{position:absolute;left:24px;top:24px;width:calc((100% - 48px)*.32);height:calc(100% - 48px);max-height:280px;aspect-ratio:auto;object-fit:contain;margin:0;border:0;border-radius:4px;background:#ebe8f0}
body.security-edition:has(.cards) main.wrap .card h3{font-size:clamp(25px,2.4vw,34px);margin-bottom:12px}
body.security-edition:has(.cards) main.wrap .card .deck{margin-bottom:18px}
body.security-edition:has(.cards) main.wrap .card .card-topics{margin:0 0 14px calc(var(--row-image) + 28px)}
body.security-edition:has(.cards) main.wrap .card .meta{margin:0 0 0 calc(var(--row-image) + 28px);padding-bottom:0}
@media(max-width:760px){
.security-edition .subject-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:0;scrollbar-width:thin;scrollbar-color:var(--accent) var(--panel);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding-bottom:4px}
.security-edition .nav-desk{flex:0 0 auto;position:static;border-bottom:0}
.security-edition .nav-desk:first-child{grid-column:auto}
.security-edition .subject-nav .desk-link{white-space:nowrap;padding:15px 12px;font-size:14px}
.security-edition .nav-desk .desk-toggle{width:34px}
.security-edition header.wrap{position:relative}
.security-edition .desk-menu{top:100%;z-index:30;left:0;right:0;max-height:55vh}
body.security-edition:has(.cards) main.wrap .card{--row-image:29%;padding:16px}
body.security-edition:has(.cards) main.wrap .card>a{padding-left:calc(var(--row-image) + 16px);min-height:88px}
body.security-edition:has(.cards) main.wrap .card .card-image{left:16px;top:16px;width:calc((100% - 32px)*.29);height:110px;max-height:none}
body.security-edition:has(.cards) main.wrap .card h3{font-size:22px;line-height:1.16}
body.security-edition:has(.cards) main.wrap .card .deck{font-size:13px;line-height:1.55}
body.security-edition:has(.cards) main.wrap .card .card-topics{margin-left:calc(var(--row-image) + 16px);margin-top:8px}
body.security-edition:has(.cards) main.wrap .card .meta{margin:14px 0 0;font-size:10px;padding-top:12px}
}
@media(max-width:760px){.security-edition .subject-nav{position:static}.security-edition header.wrap{z-index:25}}
/* Security reference: elevated official cover above the subject band. */
body.security-edition:has(.section-mast) .section-mast:has(.desk-official-cover){grid-template-columns:7fr 5fr;column-gap:40px;margin-top:56px;padding:64px 0 64px;align-items:center}
body.security-edition:has(.section-mast) .section-mast:has(.desk-official-cover) h1{font-size:clamp(46px,6.2vw,88px);line-height:.98;margin:16px 0 24px}
.section-mast:has(.desk-official-cover) .desk-scope{display:none}
.section-mast:has(.desk-official-cover) .desk-official-cover{position:relative;align-self:start;margin:-100px 0 0;grid-row:1/5}
.desk-official-cover>a{display:block;position:relative;box-shadow:0 26px 50px #0007}
.desk-official-cover img{max-height:420px;aspect-ratio:auto;object-fit:contain}
.desk-official-cover>a::before,.desk-official-cover>a::after{content:'';position:absolute;z-index:1;width:26px;height:26px;border:2px solid #b69be2;pointer-events:none}
.desk-official-cover>a::before{top:14px;left:14px;border-right:0;border-bottom:0}.desk-official-cover>a::after{bottom:14px;right:14px;border-left:0;border-top:0}
.desk-official-cover figcaption{font-size:12px;margin-top:14px}
@media(max-width:760px){body.security-edition:has(.section-mast) .section-mast:has(.desk-official-cover){display:block;margin-top:32px;padding:36px 0 28px}body.security-edition:has(.section-mast) .section-mast:has(.desk-official-cover) h1{font-size:46px}.section-mast:has(.desk-official-cover) .desk-official-cover{margin:28px 0 0}.desk-official-cover img{max-height:360px}}
body.security-edition:has(.section-mast) .section-mast:has(.desk-official-cover){position:relative;isolation:isolate;box-shadow:none;clip-path:none;background:transparent}
.section-mast:has(.desk-official-cover)::before{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:calc((100% - 100vw)/2);right:calc((100% - 100vw)/2);background:var(--cover);pointer-events:none}
body.security-edition:has(.desk-official-cover){overflow-x:clip}

/* Homepage: three equally sized stories per subject row. */
@media(min-width:761px){
body.security-edition:has(.cards) main.wrap .section[aria-labelledby]>.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.security-edition:has(.cards) main.wrap .section[aria-labelledby]>.cards>.card{display:flex;flex-direction:column;grid-column:auto;min-width:0;padding:20px}
body.security-edition:has(.cards) main.wrap .section[aria-labelledby]>.cards>.card>a{display:block;min-height:0;padding:0;flex:1}
body.security-edition:has(.cards) main.wrap .section[aria-labelledby]>.cards>.card .card-image{position:static;width:100%;height:auto;max-height:none;aspect-ratio:16/9;margin:0 0 20px;object-fit:contain}
body.security-edition:has(.cards) main.wrap .section[aria-labelledby]>.cards>.card h3{font-size:clamp(22px,2vw,28px);line-height:1.16}
body.security-edition:has(.cards) main.wrap .section[aria-labelledby]>.cards>.card .card-topics{margin:0 0 14px}
body.security-edition:has(.cards) main.wrap .section[aria-labelledby]>.cards>.card .meta{margin:0;font-size:10px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
body.security-edition:has(.cards) main.wrap .section[aria-labelledby]>.cards>.card .meta .card-read{margin-left:0}
}

/* A still cover remains visible until a requested preview is ready. */
.cover-motion{display:block;position:relative;overflow:hidden}
.cover-motion .preview-still{display:block;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;object-fit:contain!important;position:static!important;aspect-ratio:inherit}
.cover-motion .cover-preview-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#17151b;opacity:0;pointer-events:none;transition:opacity .15s}
.cover-motion.is-previewing .cover-preview-video{opacity:1}
.cover-motion-label{position:absolute;left:10px;bottom:10px;padding:5px 8px;border-radius:4px;background:#19151de6;color:#fff;font:500 10px/1.3 Arial,sans-serif;letter-spacing:.02em;pointer-events:none}
.cover-motion.is-previewing .cover-motion-label{opacity:0}
@media(hover:none),(prefers-reduced-motion:reduce){.cover-motion-label{font-size:0}.cover-motion-label::after{content:'Video in article';font-size:10px}}
@media(prefers-reduced-motion:reduce){.cover-motion .cover-preview-video{transition:none}}

@media(max-width:760px){.cover-motion-label{left:4px;bottom:4px;padding:3px 5px;font-size:0}.cover-motion-label::after{content:"Video";font-size:9px}}

.cover-motion .preview-still{object-position:center!important;object-fit:contain!important;background:#17151b!important}
.security-edition .article-visual .cover-motion,.desk-official-cover .cover-motion{aspect-ratio:16/9}
.cover-motion.is-previewing .cover-motion-label{opacity:0}
@media(hover:none),(prefers-reduced-motion:reduce){.cover-motion-label{display:none}}
@media(max-width:760px){.cover-motion-label::after{content:"GIF"}}

/* Navbar overview pages share the subject desk's header and list rhythm. */
.news-selection-sources{margin:48px 0;padding:24px;border:1px solid var(--rule);border-radius:8px;background:var(--panel);font:14px/1.7 var(--sans)}
.news-selection-sources summary{cursor:pointer;font-weight:600}.news-selection-sources section{padding:20px 0;border-top:1px solid var(--rule)}
.security-edition .overview-directory{display:flex;flex-direction:column;gap:22px;margin:38px 0 64px}
.security-edition .overview-directory .directory-card{display:grid;grid-template-columns:32% 1fr;gap:28px;align-items:center;border:1px solid var(--rule);border-radius:8px;padding:24px;background:var(--panel)}
.directory-image{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;border-radius:4px;overflow:hidden}
.directory-card strong{display:block;font-size:clamp(24px,3vw,36px);line-height:1.2;letter-spacing:-.025em}.directory-card>span>span{display:block;margin-top:12px;color:var(--muted);font-size:14px}
.watch-header{margin:48px 0 28px;max-width:1100px}.watch-header h1{font-size:clamp(32px,4.5vw,58px);line-height:1.08;letter-spacing:-.03em;margin:16px 0}
main.wrap:has(.watch-header)>.official-media{max-width:1100px;margin:0 0 36px;width:100%}.watch-context{max-width:1100px;margin-bottom:64px}
@media(max-width:760px){.security-edition .overview-directory .directory-card{padding:16px;grid-template-columns:29% 1fr;gap:16px}.directory-card strong{font-size:22px}.watch-header{margin-top:28px}}

/* Entity names and key topics are available before the reader enters the body. */
.article-header-context{width:100%;margin-top:22px;display:grid;gap:12px}
.article-entities,.article-topic-tags{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.article-header-context .context-label{font:600 10px/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#c2b4df;margin-right:5px;min-width:48px}
.article-entities a,.article-topic-tags a,.article-topic-tags>span:not(.context-label){font:500 11px/1.4 var(--sans);letter-spacing:0;text-transform:none;border:1px solid #cab8e766;border-radius:4px;padding:5px 8px;color:#f1eafb;white-space:normal}
.article-entities a:hover,.article-topic-tags a:hover{background:#ffffff15;border-color:#e3d4ff}
.article-topic-tags>span:not(.context-label){color:#d6cce6;background:#ffffff08;border-color:#cab8e733}
html body.security-edition .article-aside{display:block!important;padding:22px;background:var(--cover,#25202f);color:#f6f0ff;border-radius:6px}
.article-aside .reading-label{font:600 10px/1.4 var(--sans);color:#c2b4df;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px}
.article-aside h2{font-size:22px;line-height:1.15;margin:0 0 18px;text-transform:none;letter-spacing:-.02em;color:inherit}
.article-aside a{font:400 12px/1.5 var(--sans);color:#e4dbef;display:flex;gap:9px;border-color:#cab8e744!important;padding:9px 10px!important}
.article-aside a:hover{color:#fff;background:#ffffff0b}
.guide-number{font-size:10px;color:#b8a2d7;min-width:14px;padding-top:2px}
@media(max-width:760px){html body.security-edition .article-aside{position:static;max-width:none;margin:0 0 24px;padding:20px}.article-aside h2{font-size:24px}.article-header-context{margin-top:18px}.article-header-context .context-label{min-width:44px}.article-entities a,.article-topic-tags a,.article-topic-tags>span:not(.context-label){font-size:11px}}

.security-edition .article-aside h2{font-size:22px;line-height:1.15;text-transform:none;letter-spacing:-.02em;margin:0 0 18px;color:inherit}
