:root{--d:#102e34;--i:#1c3338;--t:#266970;--m:#80d1c7;--v:#957fef;--p:#f3f7f5;--u:#60777b;--g:#087f57}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--p);color:var(--i);font:16px/1.55 Arial,sans-serif}
body:before{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--v),var(--m),var(--t))}
.w{width:min(1120px,calc(100% - 40px));margin:auto}
header{background:var(--d)}
header .w{min-height:86px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font-size:40px;font-weight:700;letter-spacing:-2px}
.mark{width:43px;height:43px;border:3px solid;border-radius:50%;position:relative}
.mark:before,.mark:after{content:"";position:absolute;border:3px solid;border-radius:50%}
.mark:before{inset:7px}
.mark:after{inset:15px}
nav{display:flex;gap:22px}
nav a{color:#c8d5d6;text-decoration:none;font-size:14px;font-weight:700}
.hero{color:#fff;background:radial-gradient(60% 120% at 5% 0%,#957fefcc,transparent 60%),radial-gradient(50% 100% at 92% 42%,#80d1c7aa,transparent 58%),linear-gradient(135deg,#24314f,#245b60 74%,var(--d))}
.hero .w{min-height:500px;display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center;padding:58px 0}
.ey{color:var(--m);font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}
.hero h1{font-size:clamp(56px,8vw,92px);line-height:.86;margin:16px 0;letter-spacing:-.05em}
.hero h1 small{display:block;margin-top:18px;font-size:14px;letter-spacing:0;color:#d4dfe0}
.hero p{max-width:560px;color:#d7e1e2}
.hero strong{color:var(--m)}
.cut{font-size:12px;opacity:.82;margin-top:22px}
.chart{margin:0;padding:22px;border:1px solid #ffffff26;border-radius:24px;background:#102e3438}
.chart svg{width:100%;display:block}
.chart line{stroke:#ffffff24}
.chart path{fill:none;stroke:var(--m);stroke-width:4}
.chart circle{fill:var(--v);stroke:#fff;stroke-width:2}
.chart text{fill:#d8e2e3;font-size:12px}
.chart figcaption{margin-top:12px;color:#d8e2e3;font-size:13px}
.snapshot{padding:55px 0;background:var(--d);color:#fff}
.snapgrid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:15px}
.snap{padding:24px;border:1px solid #ffffff1c;border-radius:22px;background:#ffffff0e}
.snap h2,.snap h3{margin:8px 0 14px;line-height:1.2}
.drivers div{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px 0;border-top:1px solid #ffffff1a}
.drivers span{color:#c8d4d5}
.note{font-size:12px;color:#c8d4d5}
.markets{padding:70px 0;background:linear-gradient(#e7f0ed,#f5f8f6)}
.intro h2,.watch h2{font-size:34px;margin:6px 0 25px}
details{margin:17px 0;border-radius:24px;background:#fff;box-shadow:0 16px 48px #1c333811;overflow:hidden}
summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto auto;gap:20px;align-items:center;padding:24px 27px}
summary::-webkit-details-marker{display:none}
summary:after{content:"＋";font-size:25px;color:var(--t)}
details[open] summary:after{content:"−"}
summary h3{margin:0;font-size:28px}
summary p{margin:7px 0 0;color:var(--u)}
.kpis{display:grid;grid-template-columns:175px 155px;gap:16px;text-align:right}
.kpis span{color:var(--u);font-size:11px;text-transform:uppercase}
.kpis b{display:block;color:var(--i);font-size:23px;line-height:1.15;text-transform:none}
.spread{color:var(--v)!important}
.inside{padding:0 27px 27px}
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px}
.twocol article{padding:20px;border-radius:17px;background:#f1f6f4}
.twocol h4,.inside>h4{color:var(--t);font-size:20px;margin:0 0 10px}
.supgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.sup{padding:15px;border-top:4px solid var(--m);border-radius:15px;background:#f5f8f7}
.sup.hi{border-color:var(--v)}
.sup small,.sup em{display:block;color:var(--u);font-style:normal;font-size:13px}
.sup b{display:block;font-size:20px;margin:7px 0}
.mask{display:block;width:var(--w);height:18px;margin:8px 0;border-radius:5px;background:linear-gradient(90deg,#cbd2d3,#e8ebec 48%,#c2cbcd);filter:blur(3px)}
.watch{padding:60px 0;background:#fff}
.watchgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.watchcard{padding:20px;border:1px solid #1c333817;border-radius:20px;background:#f7faf9}
.watchcard h3{margin:8px 0}
.banner{padding:0 0 60px;background:#fff}
.banner .w{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:32px 36px;border-radius:28px;background:var(--d);color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:99px;background:#fff;color:var(--d);font-weight:700;text-decoration:none;border:1px solid #1c333824;cursor:pointer}
.cta{padding:68px 0}
.ctagrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px}
.cta h2{font-size:clamp(38px,5vw,56px);line-height:.98;margin:8px 0 15px}
form{padding:30px;border-radius:26px;background:#fff;box-shadow:0 15px 45px #1c33380d}
.frow{display:grid;grid-template-columns:1.2fr 1fr auto;gap:12px;margin:12px 0;align-items:end}
label{display:block;font-size:12px;font-weight:700;margin-bottom:5px}
input{width:100%;height:52px;border:1px solid #b9cbca;border-radius:13px;padding:0 12px;background:#fff;color:var(--i);font:16px Arial}
.remove{height:52px;border:1px solid #d7b4b0;border-radius:13px;background:#fff;color:#a23129;font-weight:700}
.actions{display:flex;justify-content:space-between;gap:10px;margin-top:16px}
.primary{background:var(--d);color:#fff}
#err{min-height:22px;color:#a23129;font-weight:700}
footer{background:var(--d);color:#b9c9ca;padding:30px 0}
.legal{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}
footer a{color:var(--m)}
@media(max-width:850px){nav{display:none}.hero .w,.snapgrid,.twocol,.watchgrid,.ctagrid{grid-template-columns:1fr}.hero .w{min-height:0;padding:44px 0}.kpis{text-align:left}.supgrid{grid-template-columns:1fr 1fr}.banner .w{grid-template-columns:1fr}summary{grid-template-columns:1fr auto}.kpis{grid-column:1/-1;grid-template-columns:1fr 1fr}}
@media(max-width:560px){.w{width:calc(100% - 28px)}.brand{font-size:32px}.mark{width:38px;height:38px}.supgrid,.frow,.kpis{grid-template-columns:1fr}.hero h1{font-size:58px}summary{padding:18px}.inside{padding:0 18px 20px}.remove{width:100%}.actions{flex-direction:column}.btn{width:100%}}
.chart{position:relative;padding:18px 20px 14px;overflow:visible}
.chart svg{overflow:visible}
.chart .axis-title{font-size:13px;font-weight:700}
.chart .axis-value{font-size:12px}
.chart .month{font-size:13px;font-weight:700}
.chart .point-value{font-size:12px;font-weight:700;pointer-events:none}
.chart .chart-point{cursor:help;outline:none}
.chart .chart-point:focus circle:not(.hit-area),.chart .chart-point:hover circle:not(.hit-area){stroke-width:4}
.chart .hit-area{fill:transparent;stroke:none;pointer-events:all}
.chart-tooltip{position:absolute;z-index:5;pointer-events:none;transform:translate(-50%,calc(-100% - 12px));padding:8px 10px;border-radius:9px;background:#fff;color:var(--d);font-size:12px;font-weight:700;white-space:nowrap;box-shadow:0 8px 24px #07191d55}
.chart-tooltip[hidden]{display:none}
@media(max-width:560px){.chart{padding:14px 10px 10px}.chart .point-value{font-size:11px}.chart .month{font-size:12px}}
.hero-copy h1{font-size:clamp(52px,6.5vw,78px);line-height:.92;margin:14px 0 10px}
.hero-copy .hero-lead{display:block;font-size:.34em;line-height:1.05;letter-spacing:-.02em;margin-bottom:8px;color:#fff}
.hero-copy h1 small{max-width:520px;line-height:1.3}
.hero-copy>p{margin:12px 0 0;max-width:600px}
.hero-copy .hero-assumption{margin:7px 0 18px;color:#cbd8d9;font-size:11px;line-height:1.4}
.watch h2{margin-bottom:4px}
.watch-subtitle{max-width:700px;margin:0 0 25px;color:var(--u)}
.sample-link{margin-top:20px;font-weight:700}
.sample-link a{color:var(--t);text-underline-offset:3px}
@media(max-width:850px){.hero-copy h1{font-size:clamp(48px,10vw,72px)}}
@media(max-width:560px){.hero-copy h1{font-size:48px}.hero-copy .hero-lead{font-size:.38em}.hero-copy>p{font-size:15px}}
.hero-copy h1{margin:14px 0 12px}
.hero-copy h1 small{font-size:.28em;margin-top:13px;line-height:1.15;color:#fff}
.hero-promise{font-size:20px;line-height:1.35;margin:0 0 22px!important;color:#e8f0f0!important}
.hero-cta{width:max-content;margin:0 0 14px;background:#fff;color:var(--d)}
.hero-assumption{margin:0!important;color:#cbd8d9!important;font-size:11px!important;line-height:1.4!important}
@media(max-width:560px){.hero-promise{font-size:18px}.hero-cta{width:100%}}
.method-grid{grid-template-columns:1fr 1.15fr}
.explainer-card p{color:#d6e1e2;margin:10px 0 0}
.method-rows{margin-top:14px}
.method-rows>div{display:grid;grid-template-columns:1fr auto;gap:18px;padding:13px 0;border-top:1px solid #ffffff1a;align-items:start}
.method-rows strong,.method-rows small{display:block}
.method-rows small{margin-top:3px;color:#c8d4d5;font-size:13px;line-height:1.35}
.method-rows b{white-space:nowrap}
.chart-heading{margin:0 0 8px;color:#fff;font-size:18px;line-height:1.2}
.chart .point-value{font-size:10px}
.chart .axis-title{font-size:12px}
@media(max-width:850px){.method-grid{grid-template-columns:1fr}}
@media(max-width:560px){.method-rows>div{grid-template-columns:1fr}.method-rows b{margin-top:-4px}.chart-heading{font-size:16px}.chart .point-value{font-size:9px}}
.chart{align-self:center}
.chart svg{width:100%;height:auto;aspect-ratio:620/260}
.chart .chart-point{pointer-events:all;touch-action:manipulation}
.chart-tooltip{max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis}
@media(max-width:560px){.chart{padding:16px 12px 12px}}
