@import url('montserrat-dsp.css');
html:has(#ecoz-landing){scroll-behavior:auto}
.preview-header{height:84px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e5e9ee;box-sizing:border-box;gap:30px}
.preview-header a,.preview-footer a{color:#000F5C;text-decoration:none}.dsp-brand{display:flex;align-items:center;gap:25px}.dsp-brand img{object-fit:contain}.dsp-brand span{font-size:16px;letter-spacing:1.6px;font-weight:600}.preview-header nav{display:flex;gap:32px;font-size:16px;font-weight:600}.preview-header nav a:hover{color:#fc511f}
:where(#ecoz-landing){--blue:var(--e-global-color-f8055f5,#001789);--ink:var(--e-global-color-3d9a9ce,#000F5C);--green:var(--e-global-color-bea36b5,#00AE19);--orange:var(--e-global-color-59301f4,#FC511F);--line:var(--e-global-color-95797fd,#E7E7E7);--dsp-text:var(--e-global-color-secondary,#54595F);--ecoz-font-family:"Montserrat",sans-serif;color:var(--ink);font-family:"Montserrat",sans-serif;isolation:isolate;background:#fff}
:where(#ecoz-landing) *{box-sizing:border-box}
:where(#ecoz-landing) h1,:where(#ecoz-landing) h2,:where(#ecoz-landing) h3,:where(#ecoz-landing) p{margin:0;padding:0}
:where(#ecoz-landing) a{color:inherit;text-decoration:none}
:where(#ecoz-landing) img{display:block;max-width:100%;height:auto}
:where(#ecoz-landing) button{font-family:inherit;cursor:pointer}
:where(#ecoz-landing) button,:where(#ecoz-landing) a,:where(#ecoz-landing) summary{-webkit-tap-highlight-color:transparent}
:where(#ecoz-landing) :focus-visible{outline:3px solid #fc511f;outline-offset:5px}
:where(#ecoz-landing) section[id],:where(#ecoz-landing) aside[id]{scroll-margin-top:88px}
:where(#ecoz-landing) .skip{position:absolute;z-index:100;top:-300px;left:20px;background:#fff;padding:15px;border:2px solid var(--blue)}:where(#ecoz-landing) .skip:focus{top:15px}
:where(#ecoz-landing) .eco-nav{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:12px 5%;height:78px;border-bottom:1px solid rgba(10,23,59,.1);background:rgba(255,255,255,.96);backdrop-filter:blur(16px)}
:where(#ecoz-landing) .eco-wordmark{font-size:37px;letter-spacing:-3px;font-weight:500;line-height:1;color:var(--green);display:flex;align-items:baseline}
:where(#ecoz-landing) .eco-wordmark span{font-weight:800;font-style:italic}:where(#ecoz-landing) .eco-wordmark i{font-size:16px;align-self:flex-start;letter-spacing:0;margin:4px 0 0 5px;font-style:normal}
:where(#ecoz-landing) .eco-nav-links{display:flex;gap:28px;font-size:16px;font-weight:600}:where(#ecoz-landing) .eco-nav-links a:hover{color:var(--orange)}
:where(#ecoz-landing) .button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid transparent;border-radius:100px;padding:20px 28px;line-height:1.3;font-size:16px;font-weight:700;transition:transform 1s,background .25s,color .25s;min-height:54px}
:where(#ecoz-landing) .button:hover{transform:translateY(-4px)}:where(#ecoz-landing) .button span{font-size:20px;font-weight:400;line-height:1}
:where(#ecoz-landing) .button-blue{color:#fff;background:var(--blue)}:where(#ecoz-landing) .button-blue:hover{background:var(--ink);color:var(--orange)}
:where(#ecoz-landing) .button-small{padding:13px 21px;min-height:44px;font-size:16px;gap:22px}:where(#ecoz-landing) .button-white{background:#fff;color:var(--blue)}:where(#ecoz-landing) .button-outline{color:#fff;border-color:#7383c4;background:transparent}
:where(#ecoz-landing) .text-link{font-size:16px;font-weight:600;display:inline-flex;align-items:center;gap:38px;border-bottom:1px solid #aeb8cc;padding-bottom:10px;line-height:1.5}
:where(#ecoz-landing) .text-link:hover{color:var(--orange);border-color:var(--orange)}:where(#ecoz-landing) .text-link span{font-size:20px}
:where(#ecoz-landing) .eyebrow{font-size:16px;font-weight:600;letter-spacing:1.9px;line-height:1.6;text-transform:uppercase}
:where(#ecoz-landing) .status-dot{display:inline-block;height:6px;width:6px;border-radius:50%;background:var(--green);margin-right:8px;vertical-align:2px}
:where(#ecoz-landing) .story{height:auto;position:relative;background:#f4f7f8}
:where(#ecoz-landing).is-animated .story{height:510svh}
:where(#ecoz-landing) .story-stage{height:calc(100svh - 78px);min-height:580px;max-height:1100px;position:relative;overflow:clip;background:radial-gradient(ellipse at 73% 48%,#fff 0%,#f5f8f9 45%,#edf1f4 100%)}
:where(#ecoz-landing).is-animated .story-stage{position:sticky;top:78px;max-height:none}
:where(#ecoz-landing) .stage-watermark{position:absolute;right:-3%;top:14%;font-size:clamp(220px,34vw,650px);font-weight:800;letter-spacing:-.09em;line-height:1;color:#e8edef;user-select:none;pointer-events:none;opacity:.8}
:where(#ecoz-landing) .stage-line{position:absolute;border:1px solid #dce3e6;border-radius:50%;width:55vw;height:55vw;max-height:900px;max-width:900px;right:-5%;top:-24%;opacity:.6;pointer-events:none}.stage-line-two{transform:translate(0,100px) scale(.82)}
:where(#ecoz-landing) .story-copy{position:absolute;width:43%;left:7%;top:9%;z-index:4}
:where(#ecoz-landing) .story-copy[hidden]{display:none}
:where(#ecoz-landing) .story h1,:where(#ecoz-landing) .story h2{font-size:clamp(40px,5.4vw,90px);line-height:1.015;letter-spacing:-.068em;font-weight:500;margin-top:26px}
:where(#ecoz-landing) .story h1 span,:where(#ecoz-landing) .story h2 span{color:var(--blue)}
:where(#ecoz-landing) .story-description{font-size:clamp(16px,1.08vw,16px);line-height:1.8;color:var(--dsp-text);max-width:355px;margin-top:25px}
:where(#ecoz-landing) .story .text-link,:where(#ecoz-landing) .story .button{margin-top:28px}
:where(#ecoz-landing) .story-note{font-size:16px;margin-top:30px;color:var(--blue);font-weight:600}
:where(#ecoz-landing) .scene{position:absolute;inset:0 0 0 40%;z-index:2;pointer-events:none}
:where(#ecoz-landing) .scene-canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .4s}
:where(#ecoz-landing).is-webgl .scene-canvas{opacity:1}:where(#ecoz-landing).is-webgl .scene-fallback{opacity:0;visibility:hidden}
:where(#ecoz-landing) .scene-fallback{position:absolute;width:auto;height:85%;max-width:none;top:4%;left:27%;object-fit:contain;filter:drop-shadow(0 24px 25px #10234e1a)}
:where(#ecoz-landing) .scene-caption{position:absolute;z-index:5;bottom:20%;right:7%;font-size:16px;letter-spacing:1.2px;display:flex;align-items:center;gap:14px;font-weight:600;color:#5f6b7a}
:where(#ecoz-landing) .caption-line{height:1px;width:45px;background:#9eacb7}
:where(#ecoz-landing) .story-bottom{position:absolute;z-index:6;bottom:32px;left:7%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:24px}
:where(#ecoz-landing) .scroll-hint{font-size:16px;letter-spacing:1px;font-weight:600;display:flex;align-items:center;gap:14px}
:where(#ecoz-landing) .scroll-hint>span{display:flex;align-items:center;justify-content:center;border:1px solid #aab8c5;width:34px;height:44px;border-radius:30px;font-size:17px;color:var(--blue)}
:where(#ecoz-landing) .story-progress{display:none;gap:22px}:where(#ecoz-landing).is-animated .story-progress{display:flex}
:where(#ecoz-landing) .story-progress button{border:0;border-top:1px solid #b9c5cd;background:transparent;color:#526274;text-align:left;min-width:68px;padding:12px 0 0;font-size:16px;letter-spacing:.6px;display:flex;gap:7px;align-items:baseline}
:where(#ecoz-landing) .story-progress button b{font-size:16px;font-weight:500}:where(#ecoz-landing) .story-progress button.is-active{border-color:var(--blue);color:var(--blue)}
:where(#ecoz-landing) .skip-motion{font-size:16px;font-weight:500}:where(#ecoz-landing) .skip-motion span{margin-left:10px}
:where(#ecoz-landing) .story-track{height:2px;position:absolute;z-index:6;bottom:0;left:0;right:0;background:#e0e6e9}:where(#ecoz-landing) .story-track span{display:block;background:var(--blue);height:100%;width:0;transition:none}
:where(#ecoz-landing) .section-shell{padding:100px 7%;max-width:1700px;margin:auto}
:where(#ecoz-landing) .section-kicker{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:22px;border-bottom:1px solid var(--line);font-size:16px;letter-spacing:1.5px;font-weight:500;margin-bottom:55px;line-height:1.7}
:where(#ecoz-landing) .section-kicker a{letter-spacing:0;text-transform:none;font-size:16px}
:where(#ecoz-landing) .section-kicker a:hover{color:var(--orange)}
:where(#ecoz-landing) .manifesto-heading{display:grid;grid-template-columns:1.4fr .75fr;gap:80px;align-items:end;margin-bottom:70px}
:where(#ecoz-landing) h2{font-size:clamp(32px,4vw,64px);letter-spacing:-.055em;line-height:1.12;font-weight:500}
:where(#ecoz-landing) h2 span{color:var(--blue)}:where(#ecoz-landing) .manifesto-heading>p,:where(#ecoz-landing) .section-intro>p{font-size:16px;line-height:1.9;color:var(--dsp-text);max-width:330px}
:where(#ecoz-landing) .benefit-list{border-top:1px solid var(--line)}
:where(#ecoz-landing) .benefit-list article{display:grid;grid-template-columns:60px 1fr 1.2fr 25px;gap:35px;padding:28px 0;border-bottom:1px solid var(--line);align-items:center}
:where(#ecoz-landing) .benefit-num{font-size:16px;color:#718095}:where(#ecoz-landing) .benefit-list h3{font-size:21px;letter-spacing:-.6px;font-weight:500;line-height:1.3}:where(#ecoz-landing) .benefit-list p{font-size:16px;line-height:1.9;color:var(--dsp-text);max-width:370px}:where(#ecoz-landing) .benefit-list article>span:last-child{font-size:23px;color:var(--blue)}
:where(#ecoz-landing) .detail-section{display:grid;grid-template-columns:1fr 1fr;background:#f7f7f7;overflow:hidden}
:where(#ecoz-landing) .detail-photo{height:670px;background:#E7E7E7;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
:where(#ecoz-landing) .detail-photo img{height:88%;width:auto;max-width:85%;object-fit:contain;z-index:2;transform:rotate(-13deg);filter:drop-shadow(0 28px 18px #153b2d26)}
:where(#ecoz-landing) .photo-orbit{position:absolute;border:1px solid #C4C4C4;border-radius:50%;width:660px;height:660px;opacity:.7;transform:rotate(-20deg) scaleX(.7)}
:where(#ecoz-landing) .orbit-two{transform:rotate(35deg) scaleX(.75);width:540px;height:540px}
:where(#ecoz-landing) .detail-photo-caption{position:absolute;bottom:32px;left:12%;font-size:16px;letter-spacing:1.7px;color:var(--blue);z-index:3}
:where(#ecoz-landing) .detail-copy{padding:80px 14% 70px 12%;align-self:center}
:where(#ecoz-landing) .detail-copy h2{margin:20px 0 25px}:where(#ecoz-landing) .detail-copy>p:not(.eyebrow){font-size:16px;line-height:1.9;color:var(--dsp-text)}
:where(#ecoz-landing) .detail-spec{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid #d4dfd9;font-size:16px;gap:15px}:where(#ecoz-landing) .detail-spec:first-of-type{margin-top:25px}:where(#ecoz-landing) .detail-spec strong{font-weight:500;color:var(--blue)}
:where(#ecoz-landing) .small-note{font-size:16px;line-height:1.9;color:#687789;margin-top:20px}:where(#ecoz-landing) .detail-copy p.small-note{font-size:16px;margin-top:20px}
:where(#ecoz-landing) .section-intro{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:60px}
:where(#ecoz-landing) .range-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:start}
:where(#ecoz-landing) .range-visual{background:#f7f7f7;position:relative;min-height:425px;display:flex;align-items:center;justify-content:center;overflow:hidden}
:where(#ecoz-landing) .range-visual img{mix-blend-mode:multiply;width:100%}:where(#ecoz-landing) .range-visual>span{position:absolute;bottom:22px;left:25px;font-size:16px;letter-spacing:1px;color:var(--dsp-text)}
:where(#ecoz-landing) .range-tabs{display:flex;flex-wrap:wrap;gap:7px;padding-bottom:22px;border-bottom:1px solid var(--line)}
:where(#ecoz-landing) .range-tabs button{border:1px solid #d7dfe6;border-radius:100px;padding:11px 16px;font-size:16px;font-weight:500;color:var(--ink);background:#fff;transition:background .2s,color .2s}
:where(#ecoz-landing) .range-tabs button[aria-selected=true]{color:#fff;background:var(--blue);border-color:var(--blue)}
:where(#ecoz-landing) .range-panel{padding-top:25px;min-height:300px}:where(#ecoz-landing) .range-panel-label{font-size:16px;letter-spacing:1px;color:#738094;line-height:1.6}
:where(#ecoz-landing) .range-panel ul{padding:0;margin:12px 0 25px;list-style:none}:where(#ecoz-landing) .range-panel li{padding:13px 0;border-bottom:1px solid #e9edf0}
:where(#ecoz-landing) .range-panel strong{font-size:16px;font-weight:600;display:block;margin-bottom:5px}:where(#ecoz-landing) .range-panel li span{font-size:16px;line-height:1.7;color:var(--dsp-text);display:block}
:where(#ecoz-landing) .data-section{background:var(--blue);color:#fff;position:relative;overflow:hidden}
:where(#ecoz-landing) .data-section .section-kicker{border-color:#ffffff30;color:#c3cfee}
:where(#ecoz-landing) .data-grid{display:grid;grid-template-columns:1.15fr .8fr;gap:100px;align-items:center}
:where(#ecoz-landing) .data-pretitle{font-size:16px;letter-spacing:1px;color:#c1d0e8;display:block}
:where(#ecoz-landing) .giant-number{font-size:clamp(110px,19vw,300px);font-weight:500;letter-spacing:-.09em;line-height:1.13;white-space:nowrap;display:block;position:relative}
:where(#ecoz-landing) .giant-number>span{font-size:.36em;letter-spacing:-.07em;margin-left:4px}:where(#ecoz-landing) .giant-number sup{font-size:.13em;vertical-align:top;line-height:2.5;letter-spacing:0;margin-left:15px}
:where(#ecoz-landing) .data-number-sub{font-size:16px;display:block;letter-spacing:-.3px}
:where(#ecoz-landing) .material-comparison{margin-top:45px;max-width:370px}:where(#ecoz-landing) .material-comparison>div{display:grid;grid-template-columns:135px 1fr 55px;align-items:center;gap:12px;margin-bottom:14px}
:where(#ecoz-landing) .material-comparison span{font-size:16px;letter-spacing:.7px;color:#b8c7e5}:where(#ecoz-landing) .material-comparison b{font-size:16px;font-weight:400;text-align:right}
:where(#ecoz-landing) .material-bar{height:5px;width:100%;background:#ffffff16}:where(#ecoz-landing) .material-bar i{display:block;width:100%;height:100%;background:#fff}:where(#ecoz-landing) .material-bar.eco i{width:2%;min-width:3px;background:var(--orange)}
:where(#ecoz-landing) .data-copy h2{font-size:clamp(36px,4.6vw,74px);margin:20px 0 25px;color:#fff}:where(#ecoz-landing) .data-copy>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#c5d0e9;margin-bottom:28px}
:where(#ecoz-landing) .data-copy .button{width:100%}:where(#ecoz-landing) .data-download{font-size:16px;display:flex;justify-content:space-between;margin-top:20px;padding:0 6px 16px;border-bottom:1px solid #ffffff45}:where(#ecoz-landing) .data-download:hover{color:var(--orange)}
:where(#ecoz-landing) .pdf-meta{display:block;font-size:16px;letter-spacing:1px;margin:15px 6px 0;color:#c2ceeb}
:where(#ecoz-landing) .data-footnote{font-size:16px;line-height:1.9;color:#c3cde7;max-width:950px;padding-top:40px;margin-top:50px;border-top:1px solid #ffffff30}
:where(#ecoz-landing) .professional-top{display:flex;justify-content:space-between;align-items:center;gap:60px;margin-bottom:65px}
:where(#ecoz-landing) .experience-stamp{display:flex;align-items:center;gap:24px;border-left:1px solid var(--line);padding-left:40px}:where(#ecoz-landing) .experience-stamp b{font-size:85px;letter-spacing:-8px;font-weight:500;color:var(--blue);line-height:1}:where(#ecoz-landing) .experience-stamp span{font-size:16px;letter-spacing:1px;line-height:1.9;color:#6c7585}
:where(#ecoz-landing) .audiences{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
:where(#ecoz-landing) .audiences article{padding:32px 30px 0 0}:where(#ecoz-landing) .audiences article+article{border-left:1px solid var(--line);padding-left:30px}
:where(#ecoz-landing) .audiences .eyebrow{font-size:16px;letter-spacing:1px;color:#68788b}
:where(#ecoz-landing) .audiences h3{font-size:29px;letter-spacing:-1.1px;line-height:1.2;font-weight:500;margin:25px 0 20px}
:where(#ecoz-landing) .audiences p:not(.eyebrow){font-size:16px;line-height:1.9;color:var(--dsp-text);min-height:105px}:where(#ecoz-landing) .audiences .text-link{font-size:16px;gap:20px;margin-top:25px}
:where(#ecoz-landing) .faq-section{background:#f5f7f8;max-width:none;display:grid;grid-template-columns:.9fr 1.4fr;gap:80px}
:where(#ecoz-landing) .faq-section h2{margin:20px 0 30px}:where(#ecoz-landing) .faq-list details{border-bottom:1px solid #dce2e8}:where(#ecoz-landing) .faq-list details:first-child{border-top:1px solid #dce2e8}
:where(#ecoz-landing) summary{list-style:none;padding:24px 0;font-size:16px;font-weight:500;line-height:1.7;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer}
:where(#ecoz-landing) summary::-webkit-details-marker{display:none}:where(#ecoz-landing) summary span{font-size:20px;font-weight:400;color:var(--blue)}:where(#ecoz-landing) details[open] summary span{transform:rotate(45deg)}
:where(#ecoz-landing) .faq-list p{font-size:16px;line-height:1.95;color:var(--dsp-text);padding:0 40px 24px 0}
:where(#ecoz-landing) .contact-section{background:var(--blue);color:#fff;position:relative;overflow:hidden}:where(#ecoz-landing) .contact-section:after{content:'ecoZ';position:absolute;right:-90px;top:10px;line-height:1;font-size:36vw;font-weight:700;letter-spacing:-.08em;color:#ffffff06;pointer-events:none}
:where(#ecoz-landing) .contact-section .section-shell{position:relative;z-index:1}:where(#ecoz-landing) .contact-section .eyebrow{color:#bac9ee}
:where(#ecoz-landing) .contact-section h2{font-size:clamp(70px,10.5vw,168px);line-height:.97;letter-spacing:-.065em;margin:38px 0 50px}:where(#ecoz-landing) .contact-section h2 span{color:var(--orange)}
:where(#ecoz-landing) .contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:50px}:where(#ecoz-landing) .contact-bottom>p{font-size:16px;line-height:1.9;color:#c4cfeb}
:where(#ecoz-landing) .contact-buttons{display:flex;gap:10px}:where(#ecoz-landing) .contact-buttons .button{gap:25px;font-size:16px}
:where(#ecoz-landing) .contact-direct{display:flex;gap:35px;border-top:1px solid #ffffff40;margin-top:50px;padding-top:25px;font-size:16px;color:#c2cdec}
:where(#ecoz-landing) .contact-direct a:hover{color:#fff}:where(#ecoz-landing) .related-systems{display:flex;align-items:center;gap:35px;padding-top:38px;padding-bottom:38px}:where(#ecoz-landing) .related-systems p{font-size:16px;color:#667385;margin-right:auto}:where(#ecoz-landing) .related-systems a{font-size:16px;font-weight:600;white-space:nowrap}
.preview-footer{border-top:1px solid #e1e5e9;padding:35px 7%;display:flex;gap:45px;align-items:center;color:#6a7886}.preview-footer p{font-size:16px;line-height:1.8;margin:0}.preview-footer>a{font-size:16px;margin-left:auto}
:where(#ecoz-landing) .steps-fallback{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
:where(#ecoz-landing).is-animated .steps-fallback{display:none}:where(#ecoz-landing) .steps-fallback h2{margin:22px 0}:where(#ecoz-landing) .steps-fallback ol{padding-left:18px;font-size:16px;line-height:1.9;color:#596a7d}:where(#ecoz-landing) .steps-fallback li{margin:18px 0}:where(#ecoz-landing) .steps-fallback img{max-height:450px;width:auto;object-fit:contain}
@media(min-width:1600px){:where(#ecoz-landing) .story-copy{top:12%}:where(#ecoz-landing) .story h1,:where(#ecoz-landing) .story h2{font-size:90px}}
@media(max-height:760px) and (min-width:801px){:where(#ecoz-landing) .story-stage{min-height:490px}:where(#ecoz-landing) .story-copy{top:7%}:where(#ecoz-landing) .story h1,:where(#ecoz-landing) .story h2{font-size:min(4.6vw,7.6vh);margin-top:18px}:where(#ecoz-landing) .story-description{font-size:16px;margin-top:17px;line-height:1.7}:where(#ecoz-landing) .story .text-link,:where(#ecoz-landing) .story .button{margin-top:18px}:where(#ecoz-landing) .scene-caption{bottom:23%}:where(#ecoz-landing) .story-bottom{bottom:23px}}
@media(max-width:1100px){.preview-header nav{gap:20px}.dsp-brand span{display:none}:where(#ecoz-landing) .eco-nav-links{gap:18px;font-size:16px}:where(#ecoz-landing) .story-progress{gap:14px}:where(#ecoz-landing) .story-progress button{min-width:55px}:where(#ecoz-landing) .scroll-hint{font-size:16px}:where(#ecoz-landing) .skip-motion{display:none}:where(#ecoz-landing) .section-shell{padding:80px 6%}:where(#ecoz-landing) .manifesto-heading{gap:35px}:where(#ecoz-landing) .range-layout{gap:35px}:where(#ecoz-landing) .data-grid{gap:55px}:where(#ecoz-landing) .detail-copy{padding:55px 10%}:where(#ecoz-landing) .detail-photo{height:610px}:where(#ecoz-landing) .contact-bottom{align-items:start;flex-direction:column;gap:25px}:where(#ecoz-landing) .range-visual{min-height:400px}:where(#ecoz-landing) .audiences h3{font-size:25px}:where(#ecoz-landing) .audiences p:not(.eyebrow){min-height:130px}}
@media(max-width:800px){.preview-header{height:62px;padding:0 6%}.preview-header .dsp-brand img{width:58px;height:35px}.preview-header nav a:not(:last-child){display:none}.preview-header nav{font-size:16px}:where(#ecoz-landing) .eco-nav{height:64px;padding:9px 6%;gap:20px}:where(#ecoz-landing) .eco-wordmark{font-size:30px}:where(#ecoz-landing) .eco-nav-links{display:none}:where(#ecoz-landing) .button-small{font-size:16px;padding:11px 17px;min-height:40px;gap:16px}:where(#ecoz-landing) section[id]{scroll-margin-top:74px}:where(#ecoz-landing).is-animated .story{height:440svh}:where(#ecoz-landing) .story-stage{height:calc(100svh - 64px);min-height:610px}:where(#ecoz-landing).is-animated .story-stage{top:64px}:where(#ecoz-landing) .story-copy{left:7%;top:5%;width:86%;pointer-events:none}:where(#ecoz-landing) .story-copy a{pointer-events:auto}:where(#ecoz-landing) .story .eyebrow{font-size:16px;letter-spacing:1.2px}:where(#ecoz-landing) .story h1,:where(#ecoz-landing) .story h2{font-size:clamp(35px,6.5vw,52px);line-height:1.03;margin-top:15px;letter-spacing:-.06em}:where(#ecoz-landing) .story h1 br:nth-of-type(2){display:none}:where(#ecoz-landing) .story h1 span{display:block}:where(#ecoz-landing) .story h1 span br{display:none}:where(#ecoz-landing) .story-description{font-size:16px;line-height:1.7;margin-top:16px;max-width:225px}:where(#ecoz-landing) .story .text-link{font-size:16px;gap:20px;margin-top:18px;padding-bottom:5px}:where(#ecoz-landing) .story .button{margin-top:15px;padding:13px 20px;min-height:42px;font-size:16px}:where(#ecoz-landing) .story-note{font-size:16px;margin-top:16px}:where(#ecoz-landing) .scene{inset:24% -5% 2% 15%;height:70%}:where(#ecoz-landing) .scene-fallback{height:85%;top:5%;left:29%}:where(#ecoz-landing) .stage-watermark{top:44%;font-size:60vw;right:-5%}:where(#ecoz-landing) .stage-line{width:110vw;height:110vw;top:32%;right:-40%}:where(#ecoz-landing) .scene-caption{right:7%;bottom:16%;font-size:16px;letter-spacing:.7px;gap:9px}:where(#ecoz-landing) .caption-line{width:20px}:where(#ecoz-landing) .story-bottom{left:7%;right:7%;bottom:20px;display:block}:where(#ecoz-landing) .scroll-hint{font-size:16px;letter-spacing:1px;margin-bottom:15px}:where(#ecoz-landing) .scroll-hint>span{width:21px;height:26px;font-size:16px;border-radius:20px}:where(#ecoz-landing) .story-progress{gap:12px;justify-content:space-between}:where(#ecoz-landing) .story-progress button{flex:1;font-size:16px;padding-top:9px;min-width:0;gap:7px}:where(#ecoz-landing) .story-progress button b{font-size:16px}:where(#ecoz-landing) .section-shell{padding:65px 7%}:where(#ecoz-landing) .section-kicker{font-size:16px;letter-spacing:.9px;margin-bottom:35px;padding-bottom:16px;align-items:start}:where(#ecoz-landing) .section-kicker>span:last-child{max-width:46%;text-align:right}:where(#ecoz-landing) .section-kicker a{font-size:16px}:where(#ecoz-landing) h2{font-size:36px}:where(#ecoz-landing) .manifesto-heading{display:block;margin-bottom:40px}:where(#ecoz-landing) .manifesto-heading>p{margin-top:28px;font-size:16px;max-width:100%}:where(#ecoz-landing) .benefit-list article{grid-template-columns:25px 1fr 18px;gap:16px;padding:23px 0}:where(#ecoz-landing) .benefit-list h3{font-size:20px}:where(#ecoz-landing) .benefit-list p{grid-column:2;font-size:16px}:where(#ecoz-landing) .benefit-list article>span:last-child{grid-column:3;grid-row:1}:where(#ecoz-landing) .detail-section{grid-template-columns:1fr}:where(#ecoz-landing) .detail-photo{height:440px}:where(#ecoz-landing) .detail-photo img{height:90%}:where(#ecoz-landing) .detail-copy{padding:55px 7%}:where(#ecoz-landing) .detail-copy>p:not(.eyebrow){max-width:440px}:where(#ecoz-landing) .section-intro{display:block;margin-bottom:35px}:where(#ecoz-landing) .section-intro>p{margin-top:25px;max-width:100%;font-size:16px}:where(#ecoz-landing) .range-layout{grid-template-columns:1fr;gap:30px}:where(#ecoz-landing) .range-visual{min-height:280px}:where(#ecoz-landing) .range-tabs{gap:7px}:where(#ecoz-landing) .range-tabs button{font-size:16px;padding:11px 14px}:where(#ecoz-landing) .range-panel{min-height:0;padding-top:22px}:where(#ecoz-landing) .range-panel li{padding:15px 0}:where(#ecoz-landing) .range-panel strong{font-size:16px}:where(#ecoz-landing) .range-panel li span{font-size:16px}:where(#ecoz-landing) .data-grid{grid-template-columns:1fr;gap:45px}:where(#ecoz-landing) .giant-number{font-size:clamp(140px,48vw,260px);margin:12px 0}:where(#ecoz-landing) .data-number-sub{font-size:16px}:where(#ecoz-landing) .material-comparison{margin-top:32px;max-width:none}:where(#ecoz-landing) .data-copy h2{font-size:48px}:where(#ecoz-landing) .data-copy h2 br:nth-of-type(2){display:none}:where(#ecoz-landing) .data-copy>p:not(.eyebrow){font-size:16px}:where(#ecoz-landing) .data-footnote{font-size:16px;margin-top:40px;padding-top:25px}:where(#ecoz-landing) .professional-top{display:block;margin-bottom:35px}:where(#ecoz-landing) .experience-stamp{padding:25px 0 0;margin-top:35px;border:0;border-top:1px solid var(--line);gap:25px}:where(#ecoz-landing) .experience-stamp b{font-size:65px;letter-spacing:-6px}:where(#ecoz-landing) .audiences{grid-template-columns:1fr}:where(#ecoz-landing) .audiences article,:where(#ecoz-landing) .audiences article+article{border-left:0;border-bottom:1px solid var(--line);padding:30px 0}:where(#ecoz-landing) .audiences h3{font-size:30px;margin:18px 0}:where(#ecoz-landing) .audiences p:not(.eyebrow){min-height:0;font-size:16px}:where(#ecoz-landing) .audiences .text-link{font-size:16px;margin-top:24px}:where(#ecoz-landing) .faq-section{grid-template-columns:1fr;gap:35px}:where(#ecoz-landing) summary{font-size:16px;padding:22px 0}:where(#ecoz-landing) .faq-list p{font-size:16px;padding-right:10px}:where(#ecoz-landing) .contact-section h2{font-size:clamp(62px,16vw,115px);margin:35px 0}:where(#ecoz-landing) .contact-bottom{gap:25px}:where(#ecoz-landing) .contact-bottom>p{font-size:16px}:where(#ecoz-landing) .contact-buttons{flex-direction:column;width:100%;gap:12px}:where(#ecoz-landing) .contact-buttons .button{font-size:16px}:where(#ecoz-landing) .contact-direct{gap:24px;flex-wrap:wrap;font-size:16px;line-height:1.5;margin-top:30px}:where(#ecoz-landing) .related-systems{flex-wrap:wrap;gap:25px;padding-top:30px;padding-bottom:30px}:where(#ecoz-landing) .related-systems p{width:100%;font-size:16px}.preview-footer{padding:30px 7%;gap:22px;flex-wrap:wrap}.preview-footer img{width:58px}.preview-footer p{font-size:16px}.preview-footer>a{margin-left:0;font-size:16px}:where(#ecoz-landing) .steps-fallback{grid-template-columns:1fr;gap:25px}:where(#ecoz-landing) .steps-fallback img{max-height:350px;margin:auto}}
@media(max-width:800px) and (max-height:720px){:where(#ecoz-landing) .story-stage{min-height:0;height:calc(100svh - 64px)}:where(#ecoz-landing) .story-copy{top:4%}:where(#ecoz-landing) .story h1,:where(#ecoz-landing) .story h2{font-size:clamp(28px,6.4vw,40px);margin-top:11px}:where(#ecoz-landing) .story-description{max-width:195px;font-size:16px;margin-top:10px;line-height:1.6}:where(#ecoz-landing) .story .text-link{font-size:16px;margin-top:10px}:where(#ecoz-landing) .scene{inset:26% -10% 7% 18%;height:64%}:where(#ecoz-landing) .scene-caption{bottom:21%;font-size:16px}:where(#ecoz-landing) .story-bottom{bottom:15px}:where(#ecoz-landing) .scroll-hint{margin-bottom:12px}:where(#ecoz-landing) .story-note{font-size:16px;margin-top:10px}:where(#ecoz-landing) .story .button{padding:10px 15px;min-height:35px;font-size:16px;gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}:where(#ecoz-landing) *,:where(#ecoz-landing) *:before,:where(#ecoz-landing) *:after{animation:none!important;transition:none!important}:where(#ecoz-landing) .button:hover{transform:none}:where(#ecoz-landing) .story{height:auto!important}:where(#ecoz-landing) .story-stage{position:relative!important;top:auto!important}:where(#ecoz-landing) .steps-fallback{display:grid!important}:where(#ecoz-landing) .story-progress{display:none!important}}

:where(#ecoz-landing) .scene-svg{position:absolute;inset:-5% -3% -1% -1%;pointer-events:none}:where(#ecoz-landing) .scene-svg svg{width:100%;height:100%;overflow:visible}:where(#ecoz-landing).is-svg .scene-fallback{opacity:0;visibility:hidden}:where(#ecoz-landing).is-svg .scene-canvas{display:none}

@media(max-width:800px){:where(#ecoz-landing) .scene-svg{inset:-4% -3% -3% -10%}}

/* Keep the first scene entirely inside the preview viewport, including its corporate header. */
.preview-header + :where(#ecoz-landing) .story-stage{height:calc(100svh - 162px);min-height:570px}
@media(max-width:800px){.preview-header + :where(#ecoz-landing) .story-stage{height:calc(100svh - 126px);min-height:610px}}
@media(max-width:800px) and (max-height:720px){.preview-header + :where(#ecoz-landing) .story-stage{height:calc(100svh - 126px);min-height:0}}
:where(#ecoz-landing) .scene-svg{inset:3% -3% 0% -1%}
:where(#ecoz-landing) .scene-caption{bottom:14%}
@media(max-width:800px){:where(#ecoz-landing) .scene-svg{inset:0 -3% 0 -10%}:where(#ecoz-landing) .scene-caption{bottom:16%}}
@media(min-width:801px) and (max-height:760px){.preview-header + :where(#ecoz-landing) .story-stage{min-height:0}}

:where(#ecoz-landing) .video-link{margin-top:25px;font-size:16px}
@media(max-width:800px) and (min-height:721px){:where(#ecoz-landing) .scene{inset:28% -5% 2% 15%;height:66%}}
@media(max-width:800px) and (max-height:720px){:where(#ecoz-landing) .scene{inset:42% -10% 7% 18%;height:48%}}

/* DSP brand consistency: explicit typography prevents Elementor widget overrides. */
:where(#ecoz-landing) :is(h1,h2,h3,h4,h5,h6,p,a,li,button,label,input,textarea,select,summary,small,span,strong,b){font-family:var(--ecoz-font-family)}
:where(#ecoz-landing) .eco-wordmark img{width:86px;height:47px;object-fit:contain}
:where(#ecoz-landing) .button-white:hover,:where(#ecoz-landing) .button-outline:hover{color:var(--orange)}
:where(#ecoz-landing) .button-outline:hover{border-color:var(--orange)}
:where(#ecoz-landing) .range-tabs button:not([aria-selected="true"]):hover{color:var(--orange);border-color:var(--orange)}
@media(max-width:800px){:where(#ecoz-landing) .eco-wordmark img{width:72px;height:39px}}

/* Same photographic reconstruction in the no-WebGL image sequence. */
:where(#ecoz-landing) .scene-frames{position:absolute;inset:0;pointer-events:none}
:where(#ecoz-landing) .scene-frames img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 18px #00178912)}
:where(#ecoz-landing).is-sequence .scene-canvas{display:none}
:where(#ecoz-landing).is-sequence .scene-fallback{opacity:0;visibility:hidden}
@media(max-width:800px){:where(#ecoz-landing) .scene-caption{display:none}}
@media(max-width:800px) and (max-height:720px){:where(#ecoz-landing) .scene{height:44%}}
@media(max-width:800px) and (max-height:720px){:where(#ecoz-landing) .story-copy-3 h2 br:nth-of-type(2){display:none}}

/* Product contrast: DSP blue supports the natural translucent polymer. */
:where(#ecoz-landing) .story{background:var(--ink);color:#fff}
:where(#ecoz-landing) .story-stage{background:radial-gradient(ellipse at 75% 43%,#3454b8 0%,#122d99 29%,#001789 55%,#000f5c 100%)}
:where(#ecoz-landing) .story :is(h1,h2),:where(#ecoz-landing) .story .eyebrow{color:#fff}
:where(#ecoz-landing) .story :is(h1,h2) span{color:#d6dfff}
:where(#ecoz-landing) .story-description{color:#e0e6fb}
:where(#ecoz-landing) .story-note{color:#fff}
:where(#ecoz-landing) .story .text-link{color:#fff;border-color:#ffffff80}
:where(#ecoz-landing) .story .text-link:hover{color:#fff;border-color:var(--orange)}
:where(#ecoz-landing) .story .button-blue{background:#fff;color:var(--blue)}
:where(#ecoz-landing) .story .button-blue:hover{background:#fff;color:var(--orange)}
:where(#ecoz-landing) .stage-watermark{color:#cbd8ff;opacity:.055}
:where(#ecoz-landing) .stage-line{border-color:#afc1ff;opacity:.13}
:where(#ecoz-landing) .scene-caption{color:#e0e6fb}
:where(#ecoz-landing) .caption-line{background:#c1cff5}
:where(#ecoz-landing) .scroll-hint>span{color:#fff;border-color:#ffffff70}
:where(#ecoz-landing) .story-progress button{color:#dce4ff;border-color:#ffffff50}
:where(#ecoz-landing) .story-progress button.is-active{color:#fff;border-color:#fc511f}
:where(#ecoz-landing) .story-track{background:#ffffff25}
:where(#ecoz-landing) .story-track span{background:#fc511f}
:where(#ecoz-landing) .skip-motion{color:#fff}
:where(#ecoz-landing) .scene-frames img{filter:drop-shadow(0 18px 20px #00082435)}

/* Visual links to the other real DSP systems. */
:where(#ecoz-landing) .related-visual{display:block;padding-top:70px;padding-bottom:70px}
:where(#ecoz-landing) .related-intro{margin-bottom:35px}
:where(#ecoz-landing) .related-intro h2{margin-top:18px;font-size:clamp(30px,3.2vw,48px)}
:where(#ecoz-landing) .related-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
:where(#ecoz-landing) .related-system-card{background:#f1f4f8;border-radius:22px;overflow:clip;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;min-height:310px}
:where(#ecoz-landing) .related-system-photo{height:280px;padding:25px;display:flex;align-items:center;justify-content:center;background:radial-gradient(#fff,#e7edf4)}
:where(#ecoz-landing) .related-system-photo img{max-height:240px;width:100%;object-fit:contain}
:where(#ecoz-landing) .related-system-copy{padding:28px 25px}
:where(#ecoz-landing) .related-system-copy h3{font-size:22px;letter-spacing:-.03em;line-height:1.2;margin:16px 0}
:where(#ecoz-landing) .related-system-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#54595f}
:where(#ecoz-landing) .related-system-copy .text-link{font-size:16px;margin-top:22px;gap:16px}
@media(max-width:1000px){:where(#ecoz-landing) .related-system-card{grid-template-columns:1fr}.related-system-photo{height:240px}}
@media(max-width:600px){:where(#ecoz-landing) .related-grid{grid-template-columns:1fr}}

/* Theme integration: the page owns its scene; DSP retains its header/footer. */
#ecoz-landing .eco-nav-links a{color:var(--ink)}
#ecoz-landing .eco-nav-links a:hover{color:var(--orange)}
#ecoz-landing .eco-nav{top:var(--ecoz-site-offset,0px)}
#ecoz-landing .story-stage{height:calc(100svh - 78px - var(--ecoz-site-offset,0px))}
#ecoz-landing.is-animated .story-stage{top:calc(78px + var(--ecoz-site-offset,0px))}
@media(max-width:800px){#ecoz-landing .story-stage{height:calc(100svh - 64px - var(--ecoz-site-offset,0px))}#ecoz-landing.is-animated .story-stage{top:calc(64px + var(--ecoz-site-offset,0px))}}

/* Preserve the frame's containment against Elementor's generic image height:auto rule. */
#ecoz-landing .scene-frames img{width:100%;height:100%;max-width:none;object-fit:contain}
#ecoz-landing .scene-fallback{height:85%;width:auto;max-width:none;object-fit:contain}
#ecoz-landing .scene-canvas{width:100%;height:100%}
@media(min-width:801px) and (max-height:740px){
#ecoz-landing .story-stage{min-height:0}
#ecoz-landing .story-copy{top:6%}
#ecoz-landing .story h1,#ecoz-landing .story h2{font-size:clamp(30px,3.3vw,44px);margin-top:16px}
#ecoz-landing .story-description{font-size:16px;line-height:1.65;margin-top:15px}
#ecoz-landing .story-note{font-size:16px;margin-top:16px}
#ecoz-landing .story .text-link,#ecoz-landing .story .button{margin-top:16px}
}

/* The changing sticky header must not make Chrome re-anchor the scene to its focused controls. */
#ecoz-landing{overflow-anchor:none}
#ecoz-landing .story-progress button{background:transparent;color:#c9d5ff}
#ecoz-landing .story-progress button.is-active{color:#fc511f;border-color:#fc511f}
#ecoz-landing .story-progress button:hover{color:#fc511f;background:#ffffff0a}

/* DSP legibility and scroll typography · 2.1.0. Product motion is unchanged. */
#ecoz-landing{font-size:16px;font-weight:500;--ecoz-nav-height:80px}
#ecoz-landing:not(.elementor-element-edit-mode){overflow-x:clip}
#ecoz-landing :is(p,a,li,button,label,input,textarea,select,summary,small){font-weight:500}
#ecoz-landing .eco-nav{height:var(--ecoz-nav-height);gap:24px}
#ecoz-landing .eco-nav-links{font-size:16px;font-weight:500;gap:24px}
#ecoz-landing .button-small{font-size:16px;font-weight:500;padding:13px 20px;gap:16px}
#ecoz-landing .eco-nav .eco-nav-cta-label,#ecoz-landing .eco-nav .eco-nav-cta-label span{font-size:16px;font-weight:500;line-height:1.25}
#ecoz-landing .eco-nav .eco-nav-cta-label span{white-space:nowrap}
#ecoz-landing .story-stage{height:calc(100svh - var(--ecoz-nav-height) - var(--ecoz-site-offset,0px));min-height:0}
#ecoz-landing.is-animated .story-stage{top:calc(var(--ecoz-nav-height) + var(--ecoz-site-offset,0px))}
#ecoz-landing .stage-watermark{opacity:.025}
#ecoz-landing .stage-chapters{position:absolute;inset:0 0 105px 39%;z-index:1;pointer-events:none;user-select:none;overflow:clip}
#ecoz-landing .stage-chapter{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:clamp(72px,8.1vw,164px);font-weight:800;letter-spacing:-.065em;line-height:1;color:#dbe5ff;opacity:0;transform-origin:50% 50%;will-change:transform,opacity}
#ecoz-landing .stage-chapter>span{display:block;opacity:.29}
#ecoz-landing .stage-chapter.is-current{opacity:1}
#ecoz-landing .story-copy{width:45%;left:6%;top:8%;will-change:transform,opacity}
#ecoz-landing.is-animated .story-copy[hidden]{display:block;visibility:hidden;pointer-events:none}
#ecoz-landing .story :is(h1,h2){font-size:clamp(44px,5.2vw,88px);font-weight:750;letter-spacing:-.055em;line-height:1.04;margin-top:24px}
#ecoz-landing .story-description{font-size:clamp(16px,1.35vw,20px);font-weight:500;line-height:1.65;max-width:440px;margin-top:24px}
#ecoz-landing .story-note{font-size:16px;line-height:1.5;margin-top:24px}
#ecoz-landing .story .eyebrow{font-size:16px;font-weight:500;letter-spacing:.09em;line-height:1.5}
#ecoz-landing .story .text-link{font-size:16px}
#ecoz-landing .scene{inset:0 0 64px 40%;height:auto}
#ecoz-landing .scene-caption{top:26px;bottom:auto;right:6%;max-width:38%;font-size:16px;font-weight:500;line-height:1.5;letter-spacing:.015em;gap:12px}
#ecoz-landing .scene-caption .caption-line{width:28px;flex-shrink:0}
#ecoz-landing .story-bottom{left:6%;right:6%;bottom:24px;display:grid;grid-template-columns:1fr auto 1fr;gap:18px 24px;align-items:center}
#ecoz-landing .scroll-hint{grid-column:1/-1;justify-self:center;font-size:16px;font-weight:500;letter-spacing:.035em;line-height:1.5;margin:0;text-align:center;gap:12px}
#ecoz-landing .scroll-hint>span{width:28px;height:34px;font-size:20px;flex-shrink:0}
#ecoz-landing .story-progress{grid-column:2;gap:22px;justify-self:center}
#ecoz-landing .story-progress button{font-size:16px;letter-spacing:0;line-height:1.4;padding-top:12px;min-width:112px;gap:8px;font-weight:500}
#ecoz-landing .story-progress button b{font-size:16px;font-weight:500}
#ecoz-landing .skip-motion{grid-column:3;font-size:16px;line-height:1.5;justify-self:end}
#ecoz-landing .section-kicker{flex-wrap:wrap}
#ecoz-landing .material-comparison>div{grid-template-columns:minmax(0,1.4fr) minmax(20px,1fr) 70px}
@media(min-width:801px) and (max-height:760px){
 #ecoz-landing .story-copy{top:5%;width:45%}
 #ecoz-landing .story :is(h1,h2){font-size:clamp(34px,4vw,58px);margin-top:12px}
 #ecoz-landing .story-description{font-size:16px;line-height:1.5;margin-top:14px;max-width:420px}
 #ecoz-landing .story-note,#ecoz-landing .story .text-link,#ecoz-landing .story .button{margin-top:14px}
 #ecoz-landing .story-bottom{bottom:16px;gap:10px 20px}
 #ecoz-landing .scene{bottom:72px}
 #ecoz-landing .scene-caption{display:none}
}
@media(max-width:1100px) and (min-width:801px){
 #ecoz-landing .scene-caption{display:none}
 #ecoz-landing .story-progress{gap:16px}
 #ecoz-landing .story-progress button{min-width:106px}
 #ecoz-landing .story-bottom{grid-template-columns:1fr auto}
 #ecoz-landing .story-progress{grid-column:1;justify-self:start}
 #ecoz-landing .skip-motion{grid-column:2}
}
@media(min-width:801px) and (max-height:650px){
 #ecoz-landing .story-copy{top:4%}
 #ecoz-landing .story :is(h1,h2){font-size:clamp(30px,3.4vw,48px)}
 #ecoz-landing .story :is(h1,h2) br{display:none}
 #ecoz-landing .story :is(h1,h2) span{display:block}
 #ecoz-landing .story .button{padding:12px 20px;min-height:44px}
}
@media(max-width:800px){
 #ecoz-landing{--ecoz-nav-height:80px}
 #ecoz-landing .eco-nav{padding:10px 5%;gap:12px}
 #ecoz-landing .eco-nav-links{display:none}
 #ecoz-landing .eco-wordmark img{width:72px;height:40px}
 #ecoz-landing .eco-nav .button-small{max-width:204px;padding:12px 14px;gap:12px;line-height:1.25;text-align:left}
 #ecoz-landing .story-copy{left:6%;top:4%;width:88%}
 #ecoz-landing .story :is(h1,h2){font-size:clamp(30px,7.8vw,46px);line-height:1.03;margin-top:12px;letter-spacing:-.05em}
 #ecoz-landing .story :is(h1,h2) br{display:none}
 #ecoz-landing .story :is(h1,h2) span{display:block}
 #ecoz-landing .story-description{font-size:16px;line-height:1.5;margin-top:14px;max-width:100%}
 #ecoz-landing .story-note{font-size:16px;line-height:1.4;margin-top:12px}
 #ecoz-landing .story .eyebrow{font-size:16px;letter-spacing:.04em}
 #ecoz-landing .story .text-link,#ecoz-landing .story .button{margin-top:14px;font-size:16px}
 #ecoz-landing .scene{inset:var(--ecoz-copy-clearance,36%) -7% 135px 0;height:auto}
 #ecoz-landing .stage-chapters{inset:var(--ecoz-copy-clearance,36%) 2% 135px}
 #ecoz-landing .stage-chapter{font-size:clamp(48px,12vw,90px);letter-spacing:-.06em}
 #ecoz-landing .stage-chapter>span{opacity:.34}
 #ecoz-landing .story-bottom{left:6%;right:6%;bottom:16px;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
 #ecoz-landing .scroll-hint{width:100%;justify-content:center;font-size:16px;letter-spacing:0;gap:8px}
 #ecoz-landing .story-progress{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;width:100%}
 #ecoz-landing .story-progress button{font-size:16px;min-width:0;padding:8px 0 0;line-height:1.3;gap:8px}
 #ecoz-landing .story-progress button b{font-size:16px}
 #ecoz-landing .skip-motion{display:none}
}
@media(max-width:360px){
 #ecoz-landing .eco-wordmark img{width:64px;height:36px}
 #ecoz-landing .eco-nav .button-small{max-width:185px}
 #ecoz-landing .story-progress{gap:8px 12px}
}
/* Small-height phones keep the product legible; full instructions remain below. */
@media(max-width:800px) and (max-height:700px){
 #ecoz-landing.is-animated .story-description,#ecoz-landing.is-animated .story-note,#ecoz-landing.is-animated .story-copy .text-link,#ecoz-landing.is-animated .story-copy .button{display:none}
 #ecoz-landing.is-animated .story :is(h1,h2){font-size:clamp(27px,7.3vw,38px)}
 #ecoz-landing .scene{inset:var(--ecoz-copy-clearance,38%) -10% 135px 0;height:auto}
 #ecoz-landing .stage-chapters{inset:var(--ecoz-copy-clearance,38%) 2% 135px}
 #ecoz-landing.is-animated.has-started .scroll-hint{display:none}
 #ecoz-landing.is-animated.has-started .scene{bottom:92px}
 #ecoz-landing.is-animated.has-started .stage-chapters{bottom:92px}
 #ecoz-landing.is-animated .steps-fallback{display:grid}
}
#ecoz-landing:not(.is-animated) .stage-chapters{display:none}
#ecoz-landing:not(.is-animated) .story-copy{transform:none!important;opacity:1!important}
#ecoz-landing:not(.is-animated) .story-stage{height:auto;display:flex;flex-direction:column;padding:48px 6% 32px}
#ecoz-landing:not(.is-animated) .story-copy:not([hidden]){position:relative;left:auto;top:auto;width:100%;max-width:760px;order:1}
#ecoz-landing:not(.is-animated) .scene{position:relative;inset:auto;height:380px;width:100%;order:2;margin-top:24px}
#ecoz-landing:not(.is-animated) .scene-fallback{top:0;left:50%;transform:translateX(-50%);height:100%}
#ecoz-landing:not(.is-animated) .story-bottom{position:relative;inset:auto;order:3;display:flex;justify-content:flex-end;margin-top:20px}
#ecoz-landing:not(.is-animated) :is(.story-progress,.scroll-hint,.scene-caption){display:none}
@media(prefers-reduced-motion:reduce){#ecoz-landing .stage-chapters{display:none}}
