/* Self-contained banner: every selector is scoped to .m4y-banner. */
.m4y-banner,.m4y-banner *{box-sizing:border-box}
.m4y-banner{container-type:inline-size;position:relative;isolation:isolate;overflow:hidden;width:100%;border:1px solid #24482d;border-radius:22px;background:#030a05;color:#fff;font-family:Arial,Helvetica,sans-serif;text-align:left}
.m4y-banner .m4y-inner{position:relative;display:grid;grid-template-columns:minmax(160px,.8fr) minmax(240px,1.55fr) auto;align-items:center;gap:30px;padding:32px 36px 24px;z-index:1}
.m4y-banner .m4y-brand{align-self:start;padding-top:3px}
.m4y-banner .m4y-label{display:flex;align-items:center;gap:7px;margin:0 0 16px;color:#b5cdbb;font-size:9px;font-weight:600;line-height:1.4;letter-spacing:1.8px;text-transform:uppercase}
.m4y-banner .m4y-label::before{content:"";width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:#5bbd74}
.m4y-banner .m4y-wordmark{display:block;white-space:nowrap;color:#fff;font-size:25px;font-weight:700;line-height:1.2;letter-spacing:-1.2px}
.m4y-banner .m4y-wordmark span{color:#47dec6}
.m4y-banner .m4y-copy{border-left:1px solid #29402e;padding-left:30px}
.m4y-banner .m4y-title{max-width:520px;margin:0;color:#fff;font-size:clamp(24px,3.2cqi,36px);font-weight:600;line-height:1.18;letter-spacing:-1.1px;text-wrap:balance}
.m4y-banner .m4y-title span{color:#76d18a}
.m4y-banner .m4y-description{margin:12px 0 0;color:#c7d4c9;font-size:12px;line-height:1.65}
.m4y-banner .m4y-action{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.m4y-banner .m4y-cta{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:14px 18px;border:1px solid transparent;border-radius:40px;background:#ffffff;color:#08120b;font-family:inherit;font-size:12px;font-weight:700;line-height:1.4;text-decoration:none;white-space:nowrap;transition:background .18s,transform .18s}
.m4y-banner .m4y-cta svg{display:block;width:18px;height:18px;flex:0 0 18px}
.m4y-banner .m4y-cta:hover{background:#e4f6e8;transform:translateY(-2px);color:#08120b}
.m4y-banner .m4y-cta:focus-visible{outline:3px solid #fff;outline-offset:5px}
.m4y-banner .m4y-destination{color:#b5cdbb;font-size:9px;line-height:1.5}
.m4y-banner .m4y-disclosure{position:relative;z-index:1;margin:0;padding:13px 36px;border-top:1px solid #29402e;color:#b8c8bb;font-size:11px;line-height:1.6}
.m4y-banner .m4y-art{position:absolute;z-index:-1;right:-40px;top:-100px;width:340px;height:340px;opacity:.34;transform:rotate(-12deg);pointer-events:none}
.m4y-banner::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 74% 110%,#286b3c 0,transparent 64%);z-index:-1}
@container(max-width:850px){.m4y-banner .m4y-inner{grid-template-columns:1fr auto;gap:22px;padding:25px}.m4y-banner .m4y-brand{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:0}.m4y-banner .m4y-label{order:2;margin:0}.m4y-banner .m4y-copy{border:0;padding:0}.m4y-banner .m4y-title{font-size:27px}.m4y-banner .m4y-disclosure{padding:12px 25px}.m4y-banner .m4y-wordmark{font-size:23px}}
@container(max-width:530px){.m4y-banner .m4y-inner{grid-template-columns:minmax(0,1fr);gap:24px;padding:25px 23px}.m4y-banner .m4y-brand{grid-column:auto;gap:12px}.m4y-banner .m4y-wordmark{font-size:24px}.m4y-banner .m4y-label{font-size:8px;letter-spacing:1px}.m4y-banner .m4y-title{font-size:32px;max-width:330px}.m4y-banner .m4y-description{font-size:12px;max-width:270px}.m4y-banner .m4y-action{gap:9px}.m4y-banner .m4y-cta{width:100%;justify-content:space-between;min-height:50px;font-size:12px;padding:15px 18px}.m4y-banner .m4y-destination{align-self:center}.m4y-banner .m4y-disclosure{padding:13px 23px;font-size:11px}.m4y-banner .m4y-art{right:-120px;top:30px;opacity:.28}}
@media(prefers-reduced-motion:reduce){.m4y-banner .m4y-cta{transition:none}.m4y-banner .m4y-cta:hover{transform:none}}

.m4y-banner .m4y-logo{display:block;width:205px;max-width:100%;height:auto;object-fit:contain;object-position:left center}.m4y-banner .m4y-cta{padding:7px 8px 7px 20px;min-height:50px;gap:16px}.m4y-banner .m4y-cta svg{width:35px;height:35px;flex-basis:35px;padding:9px;border-radius:50%;background:#5bbd74;color:#07160c}.m4y-banner .m4y-title{font-weight:700;letter-spacing:-1px}.m4y-banner .m4y-art{opacity:.13}.m4y-banner .m4y-description{max-width:330px;font-size:13px}.m4y-banner .m4y-brand{min-width:0}
@container(max-width:850px){.m4y-banner .m4y-logo{width:200px}}@container(max-width:530px){.m4y-banner .m4y-logo{width:180px}.m4y-banner .m4y-cta{padding:7px 8px 7px 20px}.m4y-banner .m4y-label{font-size:8px;letter-spacing:.6px;gap:4px}.m4y-banner .m4y-title{font-size:31px}.m4y-banner .m4y-disclosure{font-size:11px}}@container(max-width:330px){.m4y-banner .m4y-brand{flex-wrap:wrap}.m4y-banner .m4y-label{order:0}}

/* Optical logo alignment: keep the original artwork intact. */
.m4y-banner .m4y-brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;align-self:center;gap:12px;padding:0}
.m4y-banner .m4y-logo{position:relative;left:-8px;width:240px;max-width:100%;height:auto;flex:0 0 auto}
.m4y-banner .m4y-brand .m4y-label{order:2;margin:0}
@container(max-width:850px){.m4y-banner .m4y-brand{flex-direction:row;justify-content:space-between;align-items:center;gap:18px}.m4y-banner .m4y-logo{width:230px}}
@container(max-width:530px){.m4y-banner .m4y-brand{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:10px}.m4y-banner .m4y-logo{width:220px}.m4y-banner .m4y-brand .m4y-label{order:2}}

@property --m4y-v3-edge-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
/* Motion v3: entrance + one edge-light pass, then rest. */
.m4y-banner .m4y-brand{animation:m4y-v3-enter .55s cubic-bezier(.2,.7,.25,1) .08s both}
.m4y-banner .m4y-copy{animation:m4y-v3-enter .6s cubic-bezier(.2,.7,.25,1) .22s both}
.m4y-banner .m4y-action{animation:m4y-v3-enter .6s cubic-bezier(.2,.7,.25,1) .38s both}
.m4y-banner::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:inherit;padding:1px;background:conic-gradient(from var(--m4y-v3-edge-angle),transparent 0deg 285deg,rgba(124,240,157,.15) 305deg,#a0f3b3 330deg,transparent 355deg);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;opacity:0;animation:m4y-v3-edge 2.8s linear .65s 1 both}
.m4y-banner .m4y-cta svg{transition:transform .22s ease,background-color .22s ease}
.m4y-banner .m4y-cta:hover svg,.m4y-banner .m4y-cta:focus-visible svg{transform:translateX(2px);background:#7bd592}
@keyframes m4y-v3-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes m4y-v3-edge{0%{opacity:0;--m4y-v3-edge-angle:0deg}10%{opacity:.85}90%{opacity:.85}100%{opacity:0;--m4y-v3-edge-angle:360deg}}
@media(prefers-reduced-motion:reduce){.m4y-banner .m4y-brand,.m4y-banner .m4y-copy,.m4y-banner .m4y-action{animation:none;opacity:1;transform:none}.m4y-banner::after{animation:none;opacity:0}.m4y-banner .m4y-cta svg{transition:none}.m4y-banner .m4y-cta:hover svg,.m4y-banner .m4y-cta:focus-visible svg{transform:none}}

/* Placement rules are scoped; keep theme and article content untouched. */
.ith-partner-slot{width:100%;min-width:0;clear:both;margin:36px 0}
.ith-partner-slot .m4y-banner{margin:0!important;max-width:none!important}
.ith-partner-slot .m4y-brand,.ith-partner-slot .m4y-copy,.ith-partner-slot .m4y-action{min-width:0}
.ith-partner-slot .m4y-title{font-family:Arial,Helvetica,sans-serif!important;font-size:clamp(24px,3.2cqi,36px)!important;line-height:1.18!important;margin:0!important;color:white!important;letter-spacing:-1px!important}
.ith-partner-slot .m4y-description{font:400 13px/1.65 Arial,Helvetica,sans-serif!important;margin:12px 0 0!important;color:#c7d4c9!important}
.ith-partner-slot .m4y-disclosure{font:400 11px/1.6 Arial,Helvetica,sans-serif!important;margin:0!important;color:#b8c8bb!important}
.ith-partner-slot .m4y-logo{border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important}
.ith-partner-slot .m4y-cta{font-family:Arial,Helvetica,sans-serif!important;text-decoration:none!important;color:#08120b!important}
.ith-partner-slot .m4y-banner.ith-ads-idle .m4y-brand,.ith-partner-slot .m4y-banner.ith-ads-idle .m4y-copy,.ith-partner-slot .m4y-banner.ith-ads-idle .m4y-action{animation:none;opacity:1;transform:none}
.ith-partner-slot .m4y-banner.ith-ads-idle::after{animation:none;opacity:0}
@container(max-width:850px){.ith-partner-slot .m4y-title{font-size:27px!important}}
@container(max-width:530px){.ith-partner-slot .m4y-title{font-size:31px!important}}

.ith-partner-slot{scroll-margin-top:130px}

/* Purpose-designed compact leaderboard / mobile placement. */
.m4y-banner.m4y-compact{height:90px;border-radius:12px}
.m4y-banner.m4y-compact .m4y-inner{height:65px;display:grid;grid-template-columns:160px minmax(0,1fr) auto;gap:18px;padding:10px 18px 0;align-items:center}
.m4y-banner.m4y-compact .m4y-brand{grid-column:auto;grid-row:auto;display:block;padding:0;align-self:center}
.m4y-banner.m4y-compact .m4y-logo{width:160px;max-width:100%;left:-5px;height:auto}
.m4y-banner.m4y-compact .m4y-copy{padding-left:18px;border-left:1px solid #29402e;align-self:center}
.m4y-banner.m4y-compact .m4y-title{font:700 18px/1.12 Arial,Helvetica,sans-serif!important;letter-spacing:-.4px!important;margin:0!important;max-width:none}
.m4y-banner.m4y-compact .m4y-action{gap:0;align-self:center}
.m4y-banner.m4y-compact .m4y-cta{min-height:38px;height:38px;padding:4px 5px 4px 13px;gap:9px;font:700 10px/1 Arial,Helvetica,sans-serif!important}
.m4y-banner.m4y-compact .m4y-cta svg{width:28px;height:28px;flex-basis:28px;padding:7px}
.m4y-banner.m4y-compact .m4y-cta-short{display:none}
.m4y-banner.m4y-compact .m4y-disclosure{height:23px;border:0;padding:2px 18px 7px;white-space:nowrap;font:400 10px/14px Arial,Helvetica,sans-serif!important;margin:0!important}
.m4y-banner.m4y-compact .m4y-art{top:-95px;right:-30px;width:230px;height:230px}
@container(max-width:620px){
 .m4y-banner.m4y-compact{height:100px}
 .m4y-banner.m4y-compact .m4y-inner{height:75px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:32px 19px;gap:5px 12px;padding:9px 15px 0}
 .m4y-banner.m4y-compact .m4y-brand{grid-column:1;grid-row:1;min-width:0}
 .m4y-banner.m4y-compact .m4y-logo{width:140px;left:-4px}
 .m4y-banner.m4y-compact .m4y-copy{grid-column:1/-1;grid-row:2;border:0;padding:0}
 .m4y-banner.m4y-compact .m4y-title{font-size:14px!important;line-height:19px!important;letter-spacing:-.2px!important;white-space:nowrap}
 .m4y-banner.m4y-compact .m4y-title br{display:none}
 .m4y-banner.m4y-compact .m4y-title br::after{content:' '}
 .m4y-banner.m4y-compact .m4y-title span::before{content:' '}
 .m4y-banner.m4y-compact .m4y-action{grid-column:2;grid-row:1}
 .m4y-banner.m4y-compact .m4y-cta{height:32px;min-height:32px;padding:3px 4px 3px 10px;gap:7px;width:auto}
 .m4y-banner.m4y-compact .m4y-cta svg{width:24px;height:24px;flex-basis:24px;padding:6px}
 .m4y-banner.m4y-compact .m4y-cta-full{display:none}.m4y-banner.m4y-compact .m4y-cta-short{display:inline}
 .m4y-banner.m4y-compact .m4y-disclosure{height:23px;padding:0 15px 7px;font-size:10px!important}
}
/* Fixed medium rectangle, including readable risk line. */
.m4y-banner.m4y-square{width:300px;height:250px;border-radius:16px}
.m4y-banner.m4y-square .m4y-inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:12px;padding:17px 20px 0;height:216px}
.m4y-banner.m4y-square .m4y-brand{display:flex;flex-direction:column;align-items:flex-start;gap:5px;align-self:flex-start;justify-content:flex-start}
.m4y-banner.m4y-square .m4y-label{order:0;margin:0;font-size:8px;letter-spacing:.8px}
.m4y-banner.m4y-square .m4y-logo{width:210px;left:-7px;max-width:100%}
.m4y-banner.m4y-square .m4y-copy{padding:0;border:0}
.m4y-banner.m4y-square .m4y-title{font:700 25px/1.07 Arial,Helvetica,sans-serif!important;letter-spacing:-.6px!important;margin:0!important}
.m4y-banner.m4y-square .m4y-action{width:100%;gap:0}
.m4y-banner.m4y-square .m4y-cta{width:100%;height:39px;min-height:39px;justify-content:space-between;padding:4px 5px 4px 14px;font:700 11px/1 Arial,Helvetica,sans-serif!important}
.m4y-banner.m4y-square .m4y-cta svg{width:29px;height:29px;flex-basis:29px;padding:7px}
.m4y-banner.m4y-square .m4y-disclosure{height:32px;padding:8px 12px;font:400 10px/14px Arial,Helvetica,sans-serif!important;white-space:nowrap;margin:0!important}
.m4y-banner.m4y-square .m4y-art{width:240px;height:240px;right:-80px;top:10px}

/* Rectangle appears only where a true 300px sidebar fits. */
.ith-partner-slot--sidebar{display:none}
.ith-partner-slot--articles{max-width:728px;margin:32px auto}
@media(min-width:1200px){
 .itr-reading-page .itr-reading-grid:has(.ith-partner-slot--sidebar){max-width:1080px;grid-template-columns:300px minmax(0,740px);gap:40px}
 .ith-partner-slot--sidebar{display:block;width:300px;margin:20px 0 0}
}

.ith-partner-slot{container-type:inline-size}

@container(max-width:300px){.m4y-banner.m4y-compact .m4y-logo{width:120px}.m4y-banner.m4y-compact .m4y-title{font-size:12px!important;letter-spacing:-.2px!important}.m4y-banner.m4y-compact .m4y-disclosure{font-size:9px!important}.m4y-banner.m4y-compact .m4y-inner{gap:5px 8px}}

/* Keep the full rectangle in view on shorter desktops; TOC remains scrollable. */
@media(min-width:1200px){.itr-reading-page .itr-sidebar:has(.ith-partner-slot--sidebar) .itr-toc{max-height:clamp(96px,calc(100dvh - 500px),300px)}}
