/*
 * ExamTopics Editorial — visual polish layer
 * Self-contained, designed to sit after editorial-hub.css and editorial-pages.css.
 * No extra JS, no external assets, no changes to existing post content.
 */
:root {
    --et-edge:#e0e7ee;
    --et-soft:#f4f7fa;
    --et-deep:#142e47;
    --et-link:#285db9;
    --et-shadow:0 14px 36px rgba(20,46,71,.055);
    --et-motion:cubic-bezier(.2,.78,.29,.97);
}
html { scroll-padding-top:110px; }
body { background:#fff; }
body :is(.et-hub,.et-site-header__inner,.et-footer) a:focus-visible,
body .et-search input:focus-visible { outline:3px solid #3261d1; outline-offset:3px; }
::selection { background:#d8e6fb; color:#142b44; }

/* Restrained masthead, with distinct navigation priority. */
#masthead.site-header {
    position:sticky;
    top:0;
    z-index:100;
    box-shadow:0 6px 24px rgba(18,42,64,.038);
    border-bottom:1px solid #e3eaf0;
}
body.admin-bar #masthead.site-header { top:32px; }
#masthead .et-site-header__inner { min-height:80px; }
.et-brand__symbol {
    background:linear-gradient(145deg,#214767,#11263e);
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 7px 16px rgba(16,45,73,.13);
    border-radius:10px;
}
.et-brand__type strong { font-size:19px; font-weight:750; letter-spacing:-.048em; }
.et-brand__type small { letter-spacing:.22em; }
.et-site-nav { gap:26px; }
.et-site-nav a { font-size:12px; font-weight:650; letter-spacing:-.007em; transition:color .18s ease,border-color .18s ease; }
.et-site-nav a:hover { color:#2555ac; }
.et-header-catalog {
    padding:13px 18px;
    background:#173a59;
    border-color:#173a59;
    box-shadow:0 4px 10px rgba(25,58,89,.08);
}
.et-header-catalog:hover { transform:translateY(-1px); }
.et-header-search { border-radius:50%; }
.et-header-search:hover { background:#f0f5fa; }

/* Consistent grids, white space and editorial dividers. */
.et-hub { color:#1c3044; }
.et-hub :is(#certifications,#vendors,#topics,#latest,.et-lead-section) { scroll-margin-top:110px; }
.et-hub-topline { padding-top:20px; padding-bottom:21px; margin-bottom:30px; }
.et-hub-topline__edition { letter-spacing:.14em; }
.et-hub-topline__catalog { border-bottom-color:#c3d1dd; }
.et-section-heading .et-section-kicker { color:#3260b8; }
.et-section-heading .et-section-note { color:#7c8a99; }
.et-section-intro p { color:#66758a; }
.et-hub .et-search {
    border-radius:5px;
    border-color:#d5dfe9;
    box-shadow:0 12px 30px rgba(31,59,85,.062);
    transition:box-shadow .2s ease,border-color .2s ease;
}
.et-hub .et-search:focus-within {
    border-color:#6591dd;
    box-shadow:0 0 0 3px rgba(62,110,195,.10),0 12px 24px rgba(31,59,85,.06);
}
.et-hub .et-search button { border-radius:3px; transition:background .18s ease; }

/* Hero: warmer accent, finer type scale, stronger hierarchy. */
.et-hero { align-items:stretch; }
.et-hero__content { padding:39px 0 47px; }
.et-hero .et-overline { color:#64738a; margin-bottom:23px; }
.et-hero h1 { letter-spacing:-.055em; margin-bottom:27px; }
.et-hero h1 em { color:#2d5fba; }
.et-hero__intro { max-width:560px; line-height:1.85; color:#607184; }
.et-hero__panel {
    background:linear-gradient(155deg,#102b45 0%,#13334f 64%,#183d57 100%);
    border:1px solid #193c5b;
    border-radius:6px;
    box-shadow:0 18px 35px rgba(12,37,60,.10);
}
.et-hero__panel:after {
    content:""; position:absolute; inset:0; z-index:-1; opacity:.16; pointer-events:none;
    background-image:linear-gradient(rgba(211,232,244,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(211,232,244,.14) 1px,transparent 1px);
    background-size:46px 46px; mask-image:linear-gradient(to left,#000,transparent 78%);
}
.et-hero__panel-title { margin:30px 0 20px; font-size:clamp(37px,3.6vw,49px); }
.et-hero__panel-rows { display:flex; flex-direction:column; }
.et-hero__panel-rows>a {
    display:grid;
    grid-template-columns:22px minmax(88px,114px) minmax(0,1fr) 15px;
    align-items:center;
    gap:9px;
    padding:12px 4px;
    border-top:1px solid rgba(221,238,253,.17);
    text-decoration:none;
    color:#fff;
    transition:padding .2s ease,background .2s ease;
}
.et-hero__panel-rows>a:hover,.et-hero__panel-rows>a:focus-visible {
    background:rgba(255,255,255,.07);
    color:#fff;
    padding-left:9px;
}
.et-hero__panel-rows>a strong { font-size:12px; font-weight:700; color:#f4f8fd; }
.et-hero__panel-rows>a>span:nth-child(3) { font-size:10px; line-height:1.5; color:#adbfce; }
.et-hero__panel-rows>a>span:last-child { justify-self:end; color:#e6bf82; font-size:17px; }
.et-hero__panel-number { font-size:10px; color:#a3b7ca; letter-spacing:.09em; }
.et-hero__panel-footer {
    color:#f1f7fc!important;
    text-decoration:none!important;
    background:#245175;
    transition:background .18s ease;
}
.et-hero__panel-footer:hover { background:#306d96; color:#fff!important; }
.et-topic-rail { margin-bottom:69px; }
.et-topic-rail a { transition:background .18s ease; }
.et-topic-rail a:hover { color:#275aba; background:#eaf1fb; }

/* Authored graphic treatments: distinct topics without generic stock photos. */
.et-artwork {
    --et-art-a:#122d48; --et-art-b:#255172; --et-art-highlight:#e9be83;
    display:flex; flex-direction:column; position:relative; isolation:isolate; overflow:hidden;
    width:100%; height:100%; min-height:100%;
    background:linear-gradient(148deg,var(--et-art-a) 0%,var(--et-art-b) 100%);
    color:#fff; text-align:left;
}
.et-artwork--cloud { --et-art-a:#163a56; --et-art-b:#2d6585; --et-art-highlight:#8dc4db; }
.et-artwork--ai { --et-art-a:#202d4c; --et-art-b:#546187; --et-art-highlight:#f2c078; }
.et-artwork--security { --et-art-a:#322b40; --et-art-b:#76576c; --et-art-highlight:#f0b88c; }
.et-artwork--network { --et-art-a:#123b47; --et-art-b:#257380; --et-art-highlight:#abdcc7; }
.et-artwork--data { --et-art-a:#153c48; --et-art-b:#487982; --et-art-highlight:#c6d8a0; }
.et-artwork::before {
    content:""; position:absolute; inset:0; z-index:-1; opacity:.27;
    background-image:linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.10) 1px,transparent 1px);
    background-size:29px 29px;
    mask-image:linear-gradient(to bottom,transparent,#000);
}
.et-artwork::after {
    content:""; position:absolute; z-index:0; pointer-events:none;
    right:-8%; top:-20%; width:67%; height:140%;
    background:radial-gradient(ellipse,rgba(255,255,255,.11),transparent 62%);
    transform:rotate(-19deg);
}
.et-artwork__head {
    display:flex; align-items:center; justify-content:space-between;
    gap:12px; padding:18px 20px 0; z-index:2;
    color:#d6e7ef; font-size:8px; font-weight:750; letter-spacing:.16em; line-height:1.4;
}
.et-artwork__square { display:block; flex:none; width:11px; height:11px; border:1px solid var(--et-art-highlight); transform:rotate(45deg); opacity:.9; }
.et-artwork__ring {
    position:absolute; z-index:0; width:60%; aspect-ratio:1;
    left:59%; top:18%;
    border:1px solid rgba(255,255,255,.20); border-radius:50%;
    box-shadow:0 0 0 27px rgba(255,255,255,.035),0 0 0 55px rgba(255,255,255,.026);
    transform:rotate(-18deg);
}
.et-artwork__rays {
    position:absolute; z-index:0; right:-2%; top:32%; width:58%; height:60%;
    background:repeating-linear-gradient(132deg,rgba(255,255,255,.14) 0 1px,transparent 1px 18px);
    mask-image:radial-gradient(ellipse,#000 6%,transparent 72%);
}
.et-artwork__monogram {
    display:block; position:relative; z-index:1; flex:1; align-self:flex-start;
    padding:8px 18px 0 19px;
    color:#f5f8fa; text-shadow:0 3px 18px rgba(10,30,48,.11);
    font-family:Georgia,'Times New Roman',serif; font-size:clamp(75px,7vw,102px); line-height:1.12; letter-spacing:-.10em; font-weight:700;
    white-space:nowrap;
}
.et-artwork__monogram>span { color:var(--et-art-highlight); }
.et-artwork__foot {
    display:flex; justify-content:space-between; align-items:center; gap:10px;
    padding:12px 20px 14px; margin:0 0 0; position:relative; z-index:2;
    border-top:1px solid rgba(255,255,255,.23);
    color:#e2ebf2; font-size:9px; letter-spacing:.07em; font-weight:650; line-height:1.5;
}
.et-artwork__foot>span:last-child { color:var(--et-art-highlight); font-size:18px; line-height:1; }
.et-artwork--feature { position:absolute; inset:0; min-height:405px; border-radius:0; }
.et-artwork--feature .et-artwork__head { padding:31px 34px 0; font-size:10px; }
.et-artwork--feature .et-artwork__square { width:14px; height:14px; }
.et-artwork--feature .et-artwork__monogram { font-size:clamp(154px,19vw,245px); padding-left:27px; padding-top:12px; }
.et-artwork--feature .et-artwork__foot { padding:23px 34px 25px; font-size:11px; }
.et-artwork--feature .et-artwork__ring { width:75%; left:47%; top:6%; }

/* Lead story treatment: calmer and less boxy. */
.et-lead {
    border:1px solid #e0e6ed;
    border-radius:5px;
    box-shadow:var(--et-shadow);
    overflow:hidden;
    background:#f4f7fa;
}
.et-lead__body { padding-left:clamp(32px,5vw,68px); padding-right:clamp(32px,5vw,68px); background:#f4f7fa; }
.et-lead h2 { letter-spacing:-.048em; font-weight:650; line-height:1.23; }
.et-lead__body p { font-size:13px; color:#607389; line-height:1.9; }
.et-lead__visual:hover .et-artwork__monogram { transform:translateX(6px); }
.et-lead__visual .et-artwork__monogram { transition:transform .3s var(--et-motion); }

/* Balanced magazine cards: equal-height rhythm and readable headlines. */
.et-latest-grid { gap:22px; align-items:stretch; }
.et-article-card {
    display:flex; flex-direction:column;
    border:1px solid #e2e8ef;
    border-radius:5px;
    overflow:hidden;
    box-shadow:0 2px 8px rgba(18,47,73,.025);
    background:#fff;
    transition:transform .24s var(--et-motion),box-shadow .24s ease,border-color .24s ease;
}
.et-article-card:hover { transform:translateY(-4px); box-shadow:0 18px 32px rgba(22,48,70,.10); border-color:#cbd8e5; }
.et-article-card__media { display:block; height:184px; flex:none; border-bottom:1px solid #e9edf2; }
.et-article-card__media img { transition:transform .35s var(--et-motion); }
.et-article-card:hover .et-article-card__media img { transform:scale(1.045); }
.et-article-card__body { flex:1; display:flex; flex-direction:column; padding:21px 23px 23px; }
.et-article-card__body .et-article-card__meta { font-size:9px; margin-bottom:13px; line-height:1.6; }
.et-article-card h3 { font-size:17px; font-weight:700; letter-spacing:-.02em; line-height:1.46; margin-bottom:11px; }
.et-article-card h3 a { color:#1c3044; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.et-article-card h3 a:hover { color:#245abd; }
.et-article-card__body p {
    font-size:11px; line-height:1.82; color:#6d7e90;
    overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3;
    margin:0 0 18px;
}
.et-article-card__link { margin-top:auto; align-self:flex-start; color:#2256af!important; font-size:10px; border-bottom-color:#a9bcd9; }
.et-article-card__link:hover { color:#163c7b!important; }

/* Certification paths: subtle category color and real focus affordance. */
.et-spotlight-grid { gap:13px; }
.et-spotlight-grid>a {
    border:1px solid #e1e7ee;
    border-top:3px solid #7298c4;
    border-radius:4px;
    background:#fff;
    box-shadow:0 4px 17px rgba(21,50,78,.03);
    min-height:175px;
    transition:transform .23s var(--et-motion),border-color .2s ease,box-shadow .2s ease;
}
.et-spotlight-grid>a:nth-child(3n + 2) { border-top-color:#45989b; }
.et-spotlight-grid>a:nth-child(3n) { border-top-color:#d8a85c; }
.et-spotlight-grid>a:hover { background:#f7faff; transform:translateY(-4px); box-shadow:var(--et-shadow); border-color:#b7cadc; }
.et-spotlight-grid strong { font-size:17px; }
.et-spotlight__vendor { letter-spacing:.13em; }
.et-spotlight__exam { color:#6b7d90; }

/* Vendor directory: sharper brand marks and quieter copy. */
.et-vendor-grid { gap:13px; }
.et-vendor {
    background:#fff;
    border-color:#e1e7ed;
    border-radius:5px;
    min-height:177px;
    transition:transform .22s var(--et-motion),box-shadow .22s ease,border-color .22s ease;
}
.et-vendor:hover { transform:translateY(-3px); box-shadow:0 14px 29px rgba(20,52,79,.065); border-color:#b8cade; }
.et-vendor__mark { border-radius:10px; font-size:15px; box-shadow:inset 0 0 0 1px rgba(35,78,110,.045); }
.et-vendor__text strong { font-size:14px; letter-spacing:-.015em; }
.et-vendor__text small { color:#75879a; }

/* Technical subject index — authoritative without template clutter. */
.et-subject { transition:background .19s ease; }
.et-subject strong { letter-spacing:-.035em; }
.et-subject:hover { background:#eaf2fa; }

/* Reading experience: narrower measures, intuitive navigation and calmer ancillary UI. */
.et-article-head { max-width:930px; }
.et-hub .et-article-head h1 { font-size:clamp(38px,4.45vw,61px); font-weight:700; letter-spacing:-.052em; }
.et-reading-layout { grid-template-columns:minmax(0,740px) minmax(215px,258px); }
.et-reading-body p { color:#364a5b; }
.et-reading-body h2 { scroll-margin-top:118px; }
.et-reading-toc a { border-radius:3px; transition:background .18s ease,color .18s ease; }
.et-reading-toc a:hover { background:#f1f5fa; padding-left:5px; }
.et-reading-sidebar__bottom { border-top-color:#3863b3; }
.et-reading-endbar { margin-top:50px; }

/* More intentional empty-state panels and pagination. */
.et-search-page__head { border-radius:5px; background:linear-gradient(130deg,#edf3f9,#f8fafc); }
.et-search-empty { border-radius:5px; }
.et-pagination .page-numbers { border-radius:3px; padding:9px 13px; }
.et-pagination a.page-numbers:hover { background:#f0f5fb; border-color:#c1d2e5; color:#265bb3; }

/* Editorial footer presentation */
#colophon.site-footer { background:#10293f; }
.et-footer__nav a:hover { text-decoration:underline; text-underline-offset:3px; }
.et-footer__bottom { color:#acc1d1; }

/* Adaptive design: preserve hierarchy without cramped, overflowing columns. */
@media (max-width:1160px) {
    .et-site-nav { gap:18px; }
    #masthead .et-site-header__inner { gap:17px; }
    .et-hero__panel-rows>a { grid-template-columns:20px minmax(75px,93px) minmax(0,1fr) 12px; gap:7px; }
    .et-hero__panel-rows>a>span:nth-child(3) { font-size:9px; }
}
@media (max-width:910px) {
    .et-site-nav { gap:12px; }
    .et-site-nav a { font-size:11px; }
    .et-header-catalog { padding:12px 13px; font-size:10px; }
    .et-article-card__body { padding:19px 19px 22px; }
}
@media (max-width:820px) {
    #masthead .et-site-header__inner { min-height:72px; }
    .et-hero { gap:19px; }
    .et-hero__panel { min-height:0; }
    .et-hero__panel-rows>a { grid-template-columns:25px minmax(115px,140px) minmax(0,1fr) 16px; }
    .et-artwork--feature { min-height:290px; }
    .et-artwork--feature .et-artwork__monogram { font-size:clamp(130px,22vw,220px); }
    .et-reading-layout { display:block; }
}
@media (max-width:600px) {
    body.admin-bar #masthead.site-header { top:46px; }
    #masthead .et-site-header__inner { min-height:69px; }
    .et-brand__type strong { font-size:17px; }
    .et-hub-topline { margin-bottom:17px; }
    .et-hero__content { padding:16px 0 24px; }
    .et-hero h1 { font-size:clamp(42px,10vw,61px); }
    .et-hero__intro { font-size:14px; }
    .et-hero__panel { padding:21px 21px 0; }
    .et-hero__panel-rows>a { grid-template-columns:21px minmax(97px,114px) minmax(0,1fr) 15px; gap:8px; padding:13px 0; }
    .et-hero__panel-rows>a strong { font-size:11px; }
    .et-hero__panel-rows>a>span:nth-child(3) { font-size:9px; }
    .et-hero__panel-footer { margin:15px -21px 0; padding:17px 21px; }
    .et-hub .et-lead-section,.et-hub .et-directory,.et-hub .et-pathway,.et-hub .et-latest,.et-hub .et-subjects,.et-hub .et-spotlight { margin-bottom:55px; }
    .et-lead { border-radius:4px; }
    .et-lead__body { padding:29px 24px 32px; }
    .et-article-card__media { height:198px; }
    .et-article-card__body { padding:20px; }
    .et-spotlight-grid>a { min-height:170px; }
    .et-vendor-grid { gap:9px; }
    .et-vendor { min-height:160px; }
    .et-artwork__monogram { font-size:102px; }
    .et-artwork--feature { min-height:225px; }
    .et-artwork--feature .et-artwork__monogram { font-size:150px; }
    .et-artwork--feature .et-artwork__head { padding:18px 22px 0; font-size:9px; }
    .et-artwork--feature .et-artwork__foot { padding:14px 22px; font-size:9px; }
    .et-reading-body h2 { scroll-margin-top:95px; }
    .et-reading-toc a:hover { padding-left:0; }
}
@media (max-width:400px) {
    .et-hero__panel-rows>a { grid-template-columns:17px minmax(80px,95px) minmax(0,1fr) 13px; gap:5px; }
    .et-hero__panel-rows>a>span:nth-child(3) { font-size:8px; }
    .et-spotlight-grid>a { padding:14px 12px; }
    .et-spotlight-grid strong { font-size:13px; }
    .et-vendor__text strong { font-size:12px; }
    .et-artwork__head { font-size:7px; padding-left:14px; padding-right:14px; }
    .et-artwork__foot { padding-left:14px; padding-right:14px; }
}
@media (prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto; }
    .et-hub *,.et-site-header__inner * { transition:none!important; animation:none!important; }
}
