/* Public article pages. Scoped to keep the private areas and legacy modules unchanged. */
.public-article-page{--article-dark:#102f42;--article-ink:#112b3c;--article-teal:#139e96;--article-cyan:#0ba9c5;--article-soft:#eef7f8;--article-line:#d7e5e9;--article-muted:#607985;background:#fff}
.public-article-page .public-content{padding:0}
.ad-article-page{color:var(--article-ink);overflow:clip}
body.public-site.public-article-page{--article-sticky-top:118px;overflow-x:clip}
.ad-article-hero{position:relative;padding:78px 0 82px;border-bottom:1px solid var(--article-line);background:radial-gradient(circle at 88% 12%,#c8f3ee 0,transparent 27%),linear-gradient(135deg,#f5fafb 0,#eaf6f7 100%)}
.ad-article-hero:before{position:absolute;inset:0;background-image:linear-gradient(#0f789108 1px,transparent 1px),linear-gradient(90deg,#0f789108 1px,transparent 1px);background-size:48px 48px;content:"";mask-image:linear-gradient(90deg,transparent,#000 65%,#000)}
.ad-article-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);align-items:center;gap:75px}
.ad-article-topic{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid #a9d8dc;border-radius:999px;background:#ffffffaa;color:#087b79;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.ad-article-topic:hover{border-color:var(--article-teal);color:var(--article-dark)}.ad-article-topic .ad-icon{width:17px;height:17px}
.ad-article-hero h1{max-width:920px;margin:23px 0 22px;color:var(--article-ink);font-size:clamp(43px,5.25vw,72px);font-weight:700;line-height:1.01;letter-spacing:-.055em}
.ad-article-lead{max-width:820px;margin:0;color:#52707d;font-size:18px;line-height:1.65}
.ad-article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:32px}.ad-article-meta>*+*{padding-left:22px;border-left:1px solid #bdd3d8}.ad-article-author{display:flex;align-items:center;gap:11px;color:var(--article-ink)}.ad-article-author>img,.ad-article-author>span:first-child{width:48px;height:48px;border-radius:50%;object-fit:cover}.ad-article-author>span:first-child{display:grid;place-items:center;background:#d9eff0;color:#168c91}.ad-article-author .ad-icon{width:23px}.ad-article-author>span:last-child,.ad-article-meta-item{display:grid;gap:2px}.ad-article-meta small{color:#6e8791;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.ad-article-meta strong,.ad-article-meta time{color:var(--article-ink);font-size:13px;font-weight:700}
.ad-article-visual{position:relative;min-height:370px}.ad-article-visual:before,.ad-article-visual:after{position:absolute;border:1px solid #5ccdc750;border-radius:50%;content:""}.ad-article-visual:before{width:360px;height:360px;right:-40px;top:5px}.ad-article-visual:after{width:260px;height:260px;right:10px;top:55px}
.ad-article-visual-card{position:absolute;z-index:1;inset:35px 0 25px 20px;display:flex;flex-direction:column;padding:31px;border:1px solid #345467;border-radius:26px;background:var(--article-dark);color:#fff;box-shadow:0 32px 70px #102f4238;transform:rotate(2deg)}
.ad-article-visual-icon{display:grid;width:58px;height:58px;place-items:center;border-radius:17px;background:#1a5061;color:#5fd1c1}.ad-article-visual-icon .ad-icon{width:28px;height:28px}.ad-article-visual-label{margin-top:24px;color:#8dc3ca;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.ad-article-wave{display:flex;align-items:center;gap:8px;height:92px;margin:15px 0}.ad-article-wave i{display:block;flex:1;height:var(--bar);max-width:9px;border-radius:8px;background:linear-gradient(180deg,#61d6bd,#0aa9c5)}.ad-article-wave i:nth-child(3n){opacity:.58}.ad-article-visual-footer{display:flex;justify-content:space-between;gap:20px;margin-top:auto;padding-top:18px;border-top:1px solid #ffffff20;color:#c8dde2;font-size:11px}.ad-article-visual-footer span:first-child{font-weight:700}
.ad-article-layout{display:grid;grid-template-columns:260px minmax(0,1fr);align-items:start;gap:clamp(28px,4vw,64px);padding-top:88px;padding-bottom:105px}
.ad-article-main{min-width:0}.ad-article-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:38px}.ad-article-tags a{padding:8px 11px;border:1px solid var(--article-line);border-radius:999px;background:#f8fbfc;color:#3d6975;font-size:11px;font-weight:700}.ad-article-tags a:hover{border-color:#7ac9c6;background:#eaf8f6;color:#087d78}
.ad-article-content{color:#375967;font-size:17px;line-height:1.82}.ad-article-content>p:first-of-type{margin-top:0}.ad-article-content p{margin:0 0 24px}.ad-article-content p:empty,.ad-article-content p:has(>br:only-child){display:none}.ad-article-content h2,.ad-article-content h3,.ad-article-content h4{scroll-margin-top:100px;color:var(--article-ink);font-weight:700;letter-spacing:-.03em}.ad-article-content h2{margin:66px 0 22px;padding-top:10px;font-size:36px;line-height:1.15}.ad-article-content h2:before{display:block;width:42px;height:3px;margin-bottom:18px;border-radius:5px;background:linear-gradient(90deg,var(--article-teal),var(--article-cyan));content:""}.ad-article-content h3{margin:45px 0 16px;font-size:26px;line-height:1.24}.ad-article-content h4{margin:34px 0 14px;font-size:21px}.ad-article-content strong{color:#173f50;font-weight:700}.ad-article-content a{color:#087e88;text-decoration:underline;text-decoration-color:#54bfc280;text-decoration-thickness:1px;text-underline-offset:3px}.ad-article-content a:hover{color:#075b67;text-decoration-color:currentColor}.ad-article-content ul,.ad-article-content ol{display:grid;gap:11px;margin:0 0 28px;padding-left:24px}.ad-article-content li::marker{color:var(--article-teal);font-weight:800}.ad-article-content blockquote{margin:38px 0;padding:27px 30px;border-left:4px solid var(--article-teal);border-radius:0 16px 16px 0;background:var(--article-soft);color:#274e5c;font-size:19px}.ad-article-content img{display:block;width:auto;max-width:100%;height:auto;margin:38px auto;border-radius:19px;box-shadow:0 18px 48px #102f4218}.ad-article-content figure{max-width:100%;margin:38px 0}.ad-article-content figcaption{margin-top:10px;color:#718894;font-size:12px;text-align:center}.ad-article-content iframe,.ad-article-content video{display:block;max-width:100%;margin:36px auto;border:0;border-radius:18px}.ad-article-content table{display:block;width:100%;margin:36px 0;border-collapse:collapse;overflow-x:auto}.ad-article-content th,.ad-article-content td{padding:14px;border:1px solid var(--article-line);text-align:left}.ad-article-content th{background:var(--article-soft);color:var(--article-ink)}
.ad-article-sidebar{position:sticky;top:var(--article-sticky-top);align-self:start;display:flex;flex-direction:column;gap:14px;min-width:0;max-height:calc(100vh - var(--article-sticky-top) - 24px);max-height:calc(100dvh - var(--article-sticky-top) - 24px)}.ad-article-toc{display:flex;flex-direction:column;min-height:0;padding:24px 19px;border:1px solid var(--article-line);border-radius:19px;background:#f8fbfc}.ad-article-side-kicker{color:var(--article-teal);font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.ad-article-toc h2{margin:8px 0 19px;color:var(--article-ink);font-size:23px;letter-spacing:-.025em}.ad-article-toc ol{display:grid;gap:0;min-height:0;margin:0;padding:0 6px 0 0;list-style:none;counter-reset:toc;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8bbfc0 #edf5f6;scrollbar-gutter:stable}.ad-article-toc li{position:relative;border-top:1px solid #dfebee;counter-increment:toc}.ad-article-toc li:first-child{border-top:0}.ad-article-toc a{display:grid;grid-template-columns:25px minmax(0,1fr);gap:7px;padding:11px 0;color:#54707b;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.ad-article-toc a:before{color:#12a39b;font-size:10px;font-weight:800;content:counter(toc,decimal-leading-zero)}.ad-article-toc a:hover{color:var(--article-dark)}.ad-article-toc a:focus-visible{outline:2px solid var(--article-teal);outline-offset:-2px;border-radius:4px}.ad-article-toc-level-3 a{padding-left:13px;font-size:12px}.ad-article-all{display:grid;flex-shrink:0;grid-template-columns:39px 1fr 18px;align-items:center;gap:12px;padding:18px;border-radius:15px;background:var(--article-dark);color:#fff}.ad-article-all>.ad-icon:first-child{width:39px;height:39px;padding:9px;border-radius:10px;background:#1b4b5d;color:#61cfbd}.ad-article-all>.ad-icon:last-child{width:18px}.ad-article-all span{display:grid}.ad-article-all small{color:#8cb9c2;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.ad-article-all strong{font-size:12px}
.ad-article-cta{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:23px;margin-top:72px;padding:30px;border-radius:21px;background:linear-gradient(135deg,#eaf8f6,#f3f9fa);border:1px solid #cbe5e6}.ad-article-cta>span{display:grid;width:55px;height:55px;place-items:center;border-radius:15px;background:var(--article-dark);color:#5fd2c0}.ad-article-cta>span .ad-icon{width:26px}.ad-article-cta small{color:#078f88;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.ad-article-cta h2{margin:5px 0 7px;color:var(--article-ink);font-size:25px;line-height:1.15}.ad-article-cta p{margin:0;color:#58717d;font-size:13px;line-height:1.55}.ad-article-cta .ad-button{white-space:nowrap}
.ad-article-related{padding:95px 0 105px;background:var(--article-dark);color:#fff}.ad-article-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.ad-article-heading>div>span{color:#61cfbd;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.ad-article-heading h2{margin:10px 0 0;color:#fff;font-size:42px;letter-spacing:-.04em}.ad-article-heading>a{display:flex;align-items:center;gap:10px;color:#b9d1d7;font-size:12px;font-weight:700}.ad-article-heading>a .ad-icon{width:18px}.ad-article-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.ad-article-related-grid article{position:relative;display:flex;min-height:255px;flex-direction:column;padding:27px;border:1px solid #345264;border-radius:18px;background:#14384b;overflow:hidden}.ad-article-related-grid article:hover{border-color:#5a8797;transform:translateY(-2px)}.ad-article-related-number{position:absolute;right:17px;top:9px;color:#ffffff09;font-size:74px;font-weight:800}.ad-article-related-grid small{position:relative;color:#66ccbd;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.ad-article-related-grid h3{position:relative;margin:19px 0 25px;font-size:20px;line-height:1.3;letter-spacing:-.02em}.ad-article-related-grid h3 a{color:#fff}.ad-article-related-link{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid #ffffff17;color:#b8d0d5;font-size:11px;font-weight:700}.ad-article-related-link .ad-icon{width:17px}
@media(max-width:1050px){body.public-site.public-article-page{--article-sticky-top:102px}.ad-article-hero-grid{grid-template-columns:minmax(0,1.3fr) 280px;gap:45px}.ad-article-layout{grid-template-columns:220px minmax(0,1fr);gap:32px}.ad-article-cta{grid-template-columns:50px 1fr}.ad-article-cta .ad-button{grid-column:2;justify-self:start}.ad-article-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.ad-article-hero{padding:52px 0 58px}.ad-article-hero-grid{grid-template-columns:1fr}.ad-article-hero h1{font-size:45px}.ad-article-lead{font-size:16px}.ad-article-visual{display:none}.ad-article-layout{grid-template-columns:1fr;padding-top:60px;padding-bottom:75px}.ad-article-sidebar{position:static;grid-row:1;max-height:none;overflow:visible;scrollbar-gutter:auto}.ad-article-toc{padding:23px}.ad-article-content{font-size:16px}.ad-article-content h2{font-size:31px}.ad-article-content h3{font-size:23px}.ad-article-related{padding:70px 0 78px}.ad-article-heading h2{font-size:35px}}
@media(max-width:540px){.ad-article-hero h1{font-size:38px}.ad-article-meta{align-items:flex-start;gap:15px}.ad-article-meta>*+*{padding-left:15px}.ad-article-author{width:100%}.ad-article-author+.ad-article-meta-item{padding-left:0;border-left:0}.ad-article-layout{gap:48px}.ad-article-tags{margin-bottom:30px}.ad-article-content h2{margin-top:52px;font-size:28px}.ad-article-cta{grid-template-columns:1fr;padding:25px}.ad-article-cta .ad-button{grid-column:1;width:100%}.ad-article-related-grid{grid-template-columns:1fr}.ad-article-heading{align-items:flex-start;flex-direction:column}.ad-article-related-grid article{min-height:220px}}
.public-article-page #article h2,.public-article-page #article h3,.public-article-page #article h4{color:var(--article-ink)}
@media(max-width:780px){.public-article-page #article h2{font-size:31px}.public-article-page #article h3{font-size:23px}}
@media(max-width:540px){.public-article-page #article h2{margin-top:52px;font-size:28px}}

/* The related-article trio fills the tablet grid without leaving an empty card slot. */
@media(max-width:1050px) and (min-width:541px){.ad-article-related-grid>article:last-child:nth-child(odd){grid-column:1/-1}}
