
body.ec-ui{--red:#e2231a;--red2:#ff3b30;--ink:#0c0d0f;--ink2:#17191d;--paper:#f5f4f1;--paper2:#ecebe6;--mute:#6b6e75;--line:rgba(12,13,15,.12);--ease:cubic-bezier(.2,.8,.2,1)}
:where(body.ec-ui) *{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.ec-ui{font-family:Manrope,system-ui,sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased}
:where(body.ec-ui) h1,:where(body.ec-ui) h2,:where(body.ec-ui) h3,:where(body.ec-ui) h4,:where(body.ec-ui) .d{font-family:Onest,system-ui,sans-serif;letter-spacing:-.025em;font-weight:700;line-height:1.02}
:where(body.ec-ui) a{color:inherit;text-decoration:none}
:where(body.ec-ui) img{display:block;max-width:100%}
:where(body.ec-ui) button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
:where(body.ec-ui) a:focus-visible,:where(body.ec-ui) button:focus-visible{outline:2px solid var(--red2);outline-offset:4px}
:where(body.ec-ui) .wrap{width:min(1320px,100% - 64px);margin-inline:auto}
:where(body.ec-ui) .eyebrow{font:600 12px/1 Onest;letter-spacing:.18em;text-transform:uppercase;color:var(--red);display:inline-flex;gap:10px;align-items:center}
:where(body.ec-ui) .eyebrow:before{content:"";width:22px;height:2px;background:currentColor}
:where(body.ec-ui) .btn{display:inline-flex;align-items:center;gap:12px;padding:16px 26px;border-radius:999px;font:600 14px/1 Onest;letter-spacing:.02em;text-transform:uppercase;transition:transform .4s var(--ease),background .3s,color .3s;position:relative;overflow:hidden;will-change:transform}
:where(body.ec-ui) .btn i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.18);font-style:normal;transition:transform .4s var(--ease)}
:where(body.ec-ui) .btn:hover i{transform:translateX(4px) rotate(-45deg)}
:where(body.ec-ui) .btn-red{background:var(--red);color:#fff}
:where(body.ec-ui) .btn-red:hover{background:var(--ink)}
:where(body.ec-ui) .btn-ghost{border:1px solid currentColor}
:where(body.ec-ui) .btn-ghost:hover{background:#fff;color:var(--ink)}
:where(body.ec-ui) .btn-dark{background:var(--ink);color:#fff}
:where(body.ec-ui) .btn-dark:hover{background:var(--red)}

/* NAV */
:where(body.ec-ui) .nav{position:fixed;inset:0 0 auto;z-index:50;transition:background .4s,box-shadow .4s,transform .5s var(--ease)}
:where(body.ec-ui) .nav .wrap{display:flex;align-items:center;justify-content:space-between;height:84px;gap:24px}
:where(body.ec-ui) .nav .logo{height:38px;display:block;position:relative;flex:none}
:where(body.ec-ui) .nav .logo img{height:100%;width:auto;transition:opacity .3s}
:where(body.ec-ui) .nav .logo .lk{position:absolute;inset:0;opacity:0}
:where(body.ec-ui) .nav.solid{background:rgba(245,244,241,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
:where(body.ec-ui) .nav.solid .logo .lw{opacity:0}
:where(body.ec-ui) .nav.solid .logo .lk{opacity:1}
:where(body.ec-ui) .nav.hide{transform:translateY(-100%)}
:where(body.ec-ui) .links{display:flex;gap:22px;color:#fff;font:500 14px Onest;white-space:nowrap}
:where(body.ec-ui) .nav .btn{flex:none}
:where(body.ec-ui) .nav.solid .links{color:var(--ink)}
:where(body.ec-ui) .links a{position:relative;padding:6px 0}
:where(body.ec-ui) .links a:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}
:where(body.ec-ui) .links a:hover:after{transform:scaleX(1);transform-origin:left}
:where(body.ec-ui) .burger{display:none;width:46px;height:46px;border-radius:50%;background:var(--red);position:relative}
:where(body.ec-ui) .burger span{position:absolute;left:14px;right:14px;height:2px;background:#fff;transition:transform .4s var(--ease),opacity .3s}
:where(body.ec-ui) .burger span:nth-child(1){top:17px}
:where(body.ec-ui) .burger span:nth-child(2){top:23px}
:where(body.ec-ui) .burger span:nth-child(3){top:29px}
body.ec-ui.menu .burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.ec-ui.menu .burger span:nth-child(2){opacity:0}
body.ec-ui.menu .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
:where(body.ec-ui) .mnav{position:fixed;inset:0;z-index:49;background:var(--ink);color:#fff;display:flex;flex-direction:column;justify-content:flex-start;padding:100px 28px max(28px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;clip-path:circle(0 at calc(100% - 45px) 42px);transition:clip-path .7s var(--ease)}
body.ec-ui.menu .mnav{clip-path:circle(150% at calc(100% - 45px) 42px)}
:where(body.ec-ui) .mnav a{flex:none;font:700 clamp(24px,4.8svh,40px)/1.2 Onest;letter-spacing:-.03em;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);opacity:0;transform:translateY(20px);transition:opacity .5s,transform .6s var(--ease)}
body.ec-ui.menu .mnav a{opacity:1;transform:none}
body.ec-ui.menu .mnav a:nth-child(2){transition-delay:.06s}
body.ec-ui.menu .mnav a:nth-child(3){transition-delay:.12s}
body.ec-ui.menu .mnav a:nth-child(4){transition-delay:.18s}
body.ec-ui.menu .mnav a:nth-child(5){transition-delay:.24s}
:where(body.ec-ui) .mnav .mc{margin-top:30px;font:500 15px Manrope;color:#9a9da3;line-height:1.8}

/* HERO */
:where(body.ec-ui) .hero{position:relative;height:100svh;min-height:620px;color:#fff;overflow:hidden;background:#000}
:where(body.ec-ui) .hero video,:where(body.ec-ui) .hero .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.08);will-change:transform}
:where(body.ec-ui) .hero .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.15) 40%,rgba(0,0,0,.75))}
:where(body.ec-ui) #fog{position:absolute;inset:0;width:100%;height:100%;z-index:2;cursor:none;touch-action:pan-y}
:where(body.ec-ui) .hero .content{position:absolute;inset:auto 0 0;z-index:3;padding-bottom:clamp(40px,7vh,80px);pointer-events:none}
:where(body.ec-ui) .hero .content .wrap{display:grid;grid-template-columns:1fr auto;align-items:end;gap:40px}
:where(body.ec-ui) .hero .hero-title{font-size:clamp(46px,8.2vw,128px);font-weight:700;letter-spacing:-.045em}
:where(body.ec-ui) .hero .hero-title .ln{display:block;overflow:hidden;padding-bottom:.06em}
:where(body.ec-ui) .hero .hero-title .ln>span{display:block;transform:translateY(110%);transition:transform 1.2s var(--ease)}
:where(body.ec-ui) .hero.in .hero-title .ln>span{transform:none}
:where(body.ec-ui) .hero.in .hero-title .ln:nth-child(2)>span{transition-delay:.12s}
:where(body.ec-ui) .hero .hero-title em{font-style:normal;color:var(--red2)}
:where(body.ec-ui) .hero .sub{max-width:440px;font-size:17px;line-height:1.55;color:rgba(255,255,255,.82);margin:22px 0 30px;opacity:0;transform:translateY(16px);transition:1s var(--ease) .5s}
:where(body.ec-ui) .hero.in .sub,:where(body.ec-ui) .hero.in .ctas{opacity:1;transform:none}
:where(body.ec-ui) .hero .ctas{display:flex;gap:12px;flex-wrap:wrap;pointer-events:auto;opacity:0;transform:translateY(16px);transition:1s var(--ease) .65s}
:where(body.ec-ui) .badge20{width:150px;height:150px;position:relative;pointer-events:auto}
:where(body.ec-ui) .badge20 svg{width:100%;height:100%;animation:spin 18s linear infinite}
:where(body.ec-ui) .badge20 b{position:absolute;inset:0;display:grid;place-items:center;font:800 46px Onest;letter-spacing:-.04em}
:where(body.ec-ui) .badge20 b small{display:block;font:600 10px Onest;letter-spacing:.2em;text-align:center;margin-top:-6px}
@keyframes spin{to{transform:rotate(360deg)}}
:where(body.ec-ui) .hint{position:absolute;z-index:3;top:50%;left:50%;transform:translate(-50%,-50%);font:600 12px Onest;letter-spacing:.2em;text-transform:uppercase;display:flex;gap:12px;align-items:center;pointer-events:none;transition:opacity .8s;color:#fff}
:where(body.ec-ui) .hint .dot{width:44px;height:44px;border-radius:50%;border:1.5px solid #fff;display:grid;place-items:center;animation:wipe 2.4s var(--ease) infinite}
@keyframes wipe{0%,100%{transform:translateX(-14px)}50%{transform:translateX(14px)}}
:where(body.ec-ui) .squeegee{position:absolute;z-index:4;width:90px;height:90px;margin:-45px 0 0 -45px;pointer-events:none;border-radius:50%;border:1.5px solid rgba(255,255,255,.7);opacity:0;transition:opacity .3s,width .3s,height .3s}
:where(body.ec-ui) .scrolldown{position:absolute;z-index:3;left:50%;bottom:18px;width:1px;height:46px;background:rgba(255,255,255,.25);overflow:hidden}
:where(body.ec-ui) .scrolldown:after{content:"";position:absolute;left:0;top:-50%;width:100%;height:50%;background:#fff;animation:drop 1.8s var(--ease) infinite}
@keyframes drop{to{top:110%}}

/* STATS */
:where(body.ec-ui) .stats{background:var(--ink);color:#fff;padding:clamp(70px,10vw,130px) 0}
:where(body.ec-ui) .stats .top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:60px}
:where(body.ec-ui) .stats h2{font-size:clamp(34px,4.4vw,64px);max-width:12ch}
:where(body.ec-ui) .stats .top p{max-width:380px;color:#a2a5ab;line-height:1.6}
:where(body.ec-ui) .sgrid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.12)}
:where(body.ec-ui) .stat{padding:38px 28px 40px 0;border-bottom:1px solid rgba(255,255,255,.12);position:relative}
:where(body.ec-ui) .stat:not(:nth-child(3n)){border-right:1px solid rgba(255,255,255,.12)}
:where(body.ec-ui) .stat:nth-child(3n+2),:where(body.ec-ui) .stat:nth-child(3n){padding-left:28px}
:where(body.ec-ui) .stat .n{font:700 clamp(46px,5.6vw,86px)/1 Onest;letter-spacing:-.05em;display:flex;align-items:baseline;gap:6px}
:where(body.ec-ui) .stat .n sup{font-size:.42em;color:var(--red2);font-weight:600}
:where(body.ec-ui) .stat .n small{font-size:.32em;font-weight:500;letter-spacing:0;color:#a2a5ab}
:where(body.ec-ui) .stat p{margin-top:12px;color:#a2a5ab;font-size:15px}
:where(body.ec-ui) .stat:before{content:"";position:absolute;left:0;top:-1px;height:2px;width:0;background:var(--red);transition:width 1.4s var(--ease)}
:where(body.ec-ui) .stat.vis:before{width:60px}
:where(body.ec-ui) .stat:nth-child(3n+2):before,:where(body.ec-ui) .stat:nth-child(3n):before{left:28px}

/* SECTION BASE */
:where(body.ec-ui) section{position:relative}
:where(body.ec-ui) .sec{padding:clamp(80px,11vw,150px) 0}
:where(body.ec-ui) .h2{font-size:clamp(38px,5.2vw,76px);margin:18px 0 0}
:where(body.ec-ui) .lead{font-size:clamp(17px,1.4vw,20px);line-height:1.6;color:#3b3e44}
:where(body.ec-ui) .rv{opacity:0;transform:translateY(40px);transition:opacity 1s var(--ease),transform 1.1s var(--ease)}
:where(body.ec-ui) .rv.vis{opacity:1;transform:none}
:where(body.ec-ui) .words .w{display:inline-block;opacity:.12;transition:opacity .5s}
:where(body.ec-ui) .words .w.on{opacity:1}

/* ABOUT */
:where(body.ec-ui) .about .grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,7vw,110px);align-items:center}
:where(body.ec-ui) .about .big{font:600 clamp(26px,2.9vw,42px)/1.22 Onest;letter-spacing:-.025em;margin:26px 0 30px}
:where(body.ec-ui) .about .big b{color:var(--red);font-weight:600}
:where(body.ec-ui) .about .txt p{margin-bottom:16px;line-height:1.7;color:#3b3e44}
:where(body.ec-ui) .about .txt p strong{color:var(--ink)}
:where(body.ec-ui) .stack{position:relative;aspect-ratio:4/5}
:where(body.ec-ui) .stack figure{position:absolute;border-radius:22px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.35)}
:where(body.ec-ui) .stack figure img{width:100%;height:100%;object-fit:cover;transform:scale(1.15);will-change:transform}
:where(body.ec-ui) .stack .f1{inset:0 18% 18% 0}
:where(body.ec-ui) .stack .f2{inset:46% 0 0 34%;border:8px solid var(--paper)}
:where(body.ec-ui) .stack .tag{position:absolute;left:-18px;bottom:12%;background:var(--red);color:#fff;padding:18px 22px;border-radius:16px;font:600 14px/1.35 Onest;z-index:2;box-shadow:0 20px 40px -12px rgba(226,35,26,.5)}
:where(body.ec-ui) .stack .tag b{display:block;font-size:32px;letter-spacing:-.03em}

/* SERVICES */
:where(body.ec-ui) .services{background:var(--paper2)}
:where(body.ec-ui) .svh{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:56px}
:where(body.ec-ui) .svh p{max-width:420px}
:where(body.ec-ui) .svx{display:grid;grid-template-columns:minmax(300px,.85fr) 1.4fr;gap:40px;align-items:start}
:where(body.ec-ui) .svlist{display:flex;flex-direction:column;position:sticky;top:110px}
:where(body.ec-ui) .svb{display:flex;align-items:center;gap:18px;padding:20px 4px;border-top:1px solid var(--line);text-align:left;font:600 clamp(18px,1.6vw,23px) Onest;letter-spacing:-.02em;color:#8b8e94;transition:color .35s,padding .5s var(--ease);position:relative}
:where(body.ec-ui) .svb:last-child{border-bottom:1px solid var(--line)}
:where(body.ec-ui) .svb .no{font:600 12px Onest;letter-spacing:.1em;color:#a6a8ad;width:24px}
:where(body.ec-ui) .svb .ar{margin-left:auto;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:transparent;transition:.4s var(--ease);font-size:16px;color:transparent}
:where(body.ec-ui) .svb:hover{color:var(--ink)}
:where(body.ec-ui) .svb.act{color:var(--ink);padding-left:14px}
:where(body.ec-ui) .svb.act .no{color:var(--red)}
:where(body.ec-ui) .svb.act .ar{background:var(--red);color:#fff;transform:rotate(-45deg)}
:where(body.ec-ui) .svb:before{content:"";position:absolute;left:0;top:50%;width:4px;height:0;background:var(--red);transform:translateY(-50%);transition:height .5s var(--ease)}
:where(body.ec-ui) .svb.act:before{height:60%}
:where(body.ec-ui) .svp{background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 30px 70px -40px rgba(0,0,0,.35)}
:where(body.ec-ui) .svp .ph{aspect-ratio:16/9;overflow:hidden;position:relative;background:#ddd}
:where(body.ec-ui) .svp .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease),opacity .6s,clip-path 1s var(--ease)}
:where(body.ec-ui) .svp .ph .pill{position:absolute;left:20px;top:20px;background:rgba(12,13,15,.75);backdrop-filter:blur(8px);color:#fff;padding:9px 14px;border-radius:999px;font:600 12px Onest;letter-spacing:.06em;z-index:2}
:where(body.ec-ui) .svp .body{padding:clamp(26px,3.4vw,46px)}
:where(body.ec-ui) .svp h3{font-size:clamp(28px,2.8vw,40px);margin-bottom:14px}
:where(body.ec-ui) .svp .intro{font:500 18px/1.55 Manrope;color:var(--ink);margin-bottom:20px}
:where(body.ec-ui) .svp .more p{line-height:1.72;color:#4a4d53;margin-bottom:14px}
:where(body.ec-ui) .svp .more ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin:8px 0 18px}
:where(body.ec-ui) .svp .more li{display:flex;gap:10px;line-height:1.45;color:#2c2f34;font-size:15px}
:where(body.ec-ui) .svp .more li:before{content:"";flex:none;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--red) url("../icons/check.svg")}
:where(body.ec-ui) .svp .more h4{font-size:19px;margin:22px 0 12px}
:where(body.ec-ui) .svp .acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
:where(body.ec-ui) .svp .anim>*{animation:up .7s var(--ease) both}
:where(body.ec-ui) .svp .anim>*:nth-child(2){animation-delay:.06s}
:where(body.ec-ui) .svp .anim>*:nth-child(3){animation-delay:.12s}
:where(body.ec-ui) .svp .anim>*:nth-child(4){animation-delay:.18s}
@keyframes up{from{opacity:0;transform:translateY(18px)}}
:where(body.ec-ui) .wcard{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:10px 0 20px}
:where(body.ec-ui) .wcard div{background:var(--paper);border-radius:16px;padding:18px}
:where(body.ec-ui) .wcard b{display:block;font:600 16px Onest;margin-bottom:6px}
:where(body.ec-ui) .wcard span{font-size:14px;line-height:1.55;color:#55585e}

/* WHY */
:where(body.ec-ui) .why{background:var(--ink);color:#fff;overflow:hidden}
:where(body.ec-ui) .why .h2{max-width:14ch}
:where(body.ec-ui) .whyg{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:60px}
:where(body.ec-ui) .wc{border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:30px 26px 34px;min-height:260px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:border-color .4s,transform .6s var(--ease)}
:where(body.ec-ui) .wc:after{content:"";position:absolute;inset:0;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(226,35,26,.28),transparent 60%);opacity:0;transition:opacity .4s}
:where(body.ec-ui) .wc:hover{border-color:rgba(226,35,26,.6);transform:translateY(-6px)}
:where(body.ec-ui) .wc:hover:after{opacity:1}
:where(body.ec-ui) .wc .ic{width:52px;height:52px;border-radius:14px;background:rgba(226,35,26,.14);display:grid;place-items:center;margin-bottom:auto;color:var(--red2)}
:where(body.ec-ui) .wc h3{font-size:22px;margin:40px 0 10px;position:relative;z-index:1}
:where(body.ec-ui) .wc p{color:#a2a5ab;line-height:1.6;font-size:15px;position:relative;z-index:1}
:where(body.ec-ui) .values{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:70px;border-top:1px solid rgba(255,255,255,.12)}
:where(body.ec-ui) .values div{padding:34px 30px 0 0}
:where(body.ec-ui) .values b{font:700 clamp(28px,3vw,44px) Onest;letter-spacing:-.03em;display:block;margin-bottom:10px}
:where(body.ec-ui) .values b:after{content:".";color:var(--red2)}
:where(body.ec-ui) .values span{color:#a2a5ab;line-height:1.6}
:where(body.ec-ui) .quote{margin-top:90px;font:600 clamp(26px,3.6vw,54px)/1.15 Onest;letter-spacing:-.03em;max-width:22ch}
:where(body.ec-ui) .quote:before{content:"„";color:var(--red2)}

/* HISTORY */
:where(body.ec-ui) .hist{overflow:clip}
:where(body.ec-ui) .hist .head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}
:where(body.ec-ui) .hist .head p{max-width:420px}
:where(body.ec-ui) .track{display:flex;gap:18px;padding:10px 0 30px;will-change:transform}
:where(body.ec-ui) .hs{height:300vh}
:where(body.ec-ui) .hs .pin{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
:where(body.ec-ui) .yr{flex:none;width:clamp(260px,24vw,340px);background:#fff;border-radius:24px;padding:30px 28px;min-height:320px;display:flex;flex-direction:column;box-shadow:0 20px 50px -30px rgba(0,0,0,.25);position:relative}
:where(body.ec-ui) .yr .y{font:800 64px/1 Onest;letter-spacing:-.05em}
:where(body.ec-ui) .yr .y:before{content:"";display:block;width:34px;height:3px;background:var(--red);margin-bottom:18px}
:where(body.ec-ui) .yr p{margin:16px 0 auto;line-height:1.55;color:#3b3e44}
:where(body.ec-ui) .yr .dur{margin-top:24px;padding-top:18px;border-top:1px dashed var(--line);font:600 15px Onest}
:where(body.ec-ui) .yr .dur span{color:var(--red)}
:where(body.ec-ui) .yr.first{background:var(--red);color:#fff}
:where(body.ec-ui) .yr.first p{color:rgba(255,255,255,.9)}
:where(body.ec-ui) .yr.first .y:before{background:#fff}
:where(body.ec-ui) .yr.first .dur{border-color:rgba(255,255,255,.35)}
:where(body.ec-ui) .yr.first .dur span{color:#fff}
:where(body.ec-ui) .prog{height:2px;background:var(--line);margin-top:20px;position:relative}
:where(body.ec-ui) .prog i{position:absolute;inset:0;background:var(--red);transform-origin:left;transform:scaleX(0)}

/* SECTORS */
:where(body.ec-ui) .sectors{background:var(--paper2)}
:where(body.ec-ui) .sector-hint{margin-top:22px;font-size:14px;color:var(--mute)}
:where(body.ec-ui) .sector-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:38px}
:where(body.ec-ui) .sector-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s,border-color .3s}
:where(body.ec-ui) .sector-card:hover{transform:translateY(-5px);box-shadow:0 24px 48px -30px rgba(12,13,15,.35);border-color:rgba(226,35,26,.45)}
:where(body.ec-ui) .sector-card-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--paper)}
:where(body.ec-ui) .sector-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
:where(body.ec-ui) .sector-card:hover .sector-card-photo img{transform:scale(1.04)}
:where(body.ec-ui) .sector-card-number{position:absolute;top:14px;left:14px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--red);font:600 11px Onest}
:where(body.ec-ui) .sector-card-copy{display:flex;flex-direction:column;flex:1;padding:24px 22px 20px}
:where(body.ec-ui) .sector-card h3{font-size:23px;line-height:1.15;margin-bottom:12px}
:where(body.ec-ui) .sector-card-copy p{font-size:13px;line-height:1.65;color:var(--mute);margin-bottom:22px}
:where(body.ec-ui) .sector-card-action{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;font:600 13px Onest}
:where(body.ec-ui) .sector-card-action i{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:var(--paper);color:var(--red);font-style:normal;font-size:18px;transition:background .3s,color .3s}
:where(body.ec-ui) .sector-card:hover .sector-card-action i{background:var(--red);color:#fff}
:where(body.ec-ui) .sector-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:40px}
:where(body.ec-ui) .sector-enhanced .sector-content{display:none}
:where(body.ec-ui) .sector-source{min-width:0;background:#fff;border-radius:24px;overflow:hidden;scroll-margin-top:100px}
:where(body.ec-ui) .sector-cover{height:260px;background:var(--paper);overflow:hidden}
:where(body.ec-ui) .sector-cover img{width:100%;height:100%;object-fit:cover}
:where(body.ec-ui) .sector-body{padding:34px 32px 16px}
:where(body.ec-ui) .sector-body h3{font-size:clamp(28px,3vw,40px);line-height:1.12;margin:20px 0 18px}
:where(body.ec-ui) .sector-body p{font-size:16px;line-height:1.75;color:#4a4d53;margin-bottom:18px}
:where(body.ec-ui) .sector-body .sector-intro{font-size:19px;font-weight:700;line-height:1.5;color:var(--ink)}
:where(body.ec-ui) .sector-tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
:where(body.ec-ui) .sector-tags span{background:var(--paper);border-radius:999px;padding:8px 12px;font:600 12px/1.4 Onest}
:where(body.ec-ui) .sector-body h4{font-size:20px;line-height:1.3;margin:28px 0 14px}
:where(body.ec-ui) .sector-body ul{list-style:none;margin-bottom:24px}
:where(body.ec-ui) .sector-body li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid var(--line);font-size:15px;line-height:1.65}
:where(body.ec-ui) .sector-body li:before{content:"";position:absolute;left:0;top:16px;width:18px;height:18px;border-radius:50%;background:var(--red) url("../icons/check.svg")}
:where(body.ec-ui) .sector-actions{display:flex;gap:10px;padding:18px 28px calc(18px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}
:where(body.ec-ui) .sector-actions .btn{flex:1;justify-content:center;padding-inline:16px}
:where(body.ec-ui) .sector-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(680px,100%);height:100dvh;max-height:none;max-width:none;padding:0;border:0;background:#fff;color:var(--ink);overflow-y:auto;overscroll-behavior:contain;box-shadow:-24px 0 80px rgba(0,0,0,.18)}
:where(body.ec-ui) .sector-dialog[open]{animation:sector-enter .45s var(--ease)}
:where(body.ec-ui) .sector-dialog::backdrop{background:rgba(12,13,15,.5);backdrop-filter:blur(4px);animation:sector-fade .3s ease}
:where(body.ec-ui) .sector-dialog-bar{position:sticky;top:0;height:0;z-index:2}
:where(body.ec-ui) .sector-close{position:absolute;top:max(16px,env(safe-area-inset-top));right:16px;width:48px;height:48px;border-radius:50%;background:#fff;display:grid;place-items:center;font:400 30px/1 Onest;box-shadow:0 6px 24px rgba(0,0,0,.18)}
:where(body.ec-ui) .sector-close:hover{background:var(--red);color:#fff}
:where(body.ec-ui) .sector-dialog .sector-actions{position:sticky;bottom:0;z-index:1}
:where(body.ec-ui) .sector-modal-open{overflow:hidden}
:where(body.ec-ui) .sectors .secnote .btn{flex:none;white-space:nowrap}
@keyframes sector-enter{from{transform:translateX(100%)}}
@keyframes sector-fade{from{opacity:0}}
:where(body.ec-ui) .secnote{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:40px;padding:30px 34px;background:var(--ink);color:#fff;border-radius:24px}
:where(body.ec-ui) .secnote p{font:600 clamp(18px,1.8vw,24px)/1.35 Onest;letter-spacing:-.015em}

/* CLIENTS */
:where(body.ec-ui) .clients{padding:clamp(80px,9vw,120px) 0;overflow:hidden}
:where(body.ec-ui) .clients .head{text-align:center;margin-bottom:46px}
:where(body.ec-ui) .marq{display:flex;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
:where(body.ec-ui) .marq+.marq{margin-top:14px}
:where(body.ec-ui) .mrow{display:flex;gap:14px;padding-right:14px;flex:none;animation:mq 46s linear infinite}
:where(body.ec-ui) .marq.rev .mrow{animation-direction:reverse;animation-duration:52s}
:where(body.ec-ui) .marq:hover .mrow{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-100%)}}
:where(body.ec-ui) .cl{flex:none;height:84px;padding:0 34px;border:1px solid var(--line);border-radius:18px;display:flex;align-items:center;gap:12px;font:700 22px Onest;letter-spacing:-.02em;color:#2a2c31;background:#fff;white-space:nowrap;transition:color .3s,border-color .3s}
:where(body.ec-ui) .cl small{font:600 10px Onest;letter-spacing:.14em;text-transform:uppercase;color:#9a9da3}
:where(body.ec-ui) .cl:hover{color:var(--red);border-color:var(--red)}
:where(body.ec-ui) .ctype{display:flex;justify-content:center;gap:10px;margin-top:34px;flex-wrap:wrap}
:where(body.ec-ui) .ctype span{padding:10px 16px;border-radius:999px;background:var(--paper2);font:600 13px Onest}

/* CERTS + CTA */
:where(body.ec-ui) .certs .grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;align-items:stretch}
:where(body.ec-ui) .cert{border-radius:24px;padding:34px;background:#fff;display:flex;flex-direction:column;gap:20px;position:relative;overflow:hidden}
:where(body.ec-ui) .cert .seal{width:96px;height:96px;position:relative}
:where(body.ec-ui) .cert .seal svg{width:100%;height:100%;animation:spin 24s linear infinite}
:where(body.ec-ui) .cert .seal b{position:absolute;inset:0;display:grid;place-items:center;font:800 15px Onest;color:var(--red)}
:where(body.ec-ui) .cert h3{font-size:30px}
:where(body.ec-ui) .cert p{color:#55585e;line-height:1.6}
:where(body.ec-ui) .cert.intro{background:transparent;padding:0;justify-content:center}
:where(body.ec-ui) .cta{background:var(--red);color:#fff;overflow:hidden}
:where(body.ec-ui) .cta .wrap{position:relative;z-index:2}
:where(body.ec-ui) .cta h2{font-size:clamp(40px,6.4vw,100px);letter-spacing:-.045em;max-width:15ch}
:where(body.ec-ui) .cta p{max-width:520px;font-size:19px;line-height:1.55;margin:26px 0 34px;color:rgba(255,255,255,.9)}
:where(body.ec-ui) .cta .btn{background:#fff;color:var(--ink)}
:where(body.ec-ui) .cta .btn:hover{background:var(--ink);color:#fff}
:where(body.ec-ui) .cta .bub{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.55),rgba(255,255,255,.08) 45%,rgba(255,255,255,0) 70%);border:1px solid rgba(255,255,255,.35);pointer-events:none;will-change:transform}
:where(body.ec-ui) .cta .trust{font:700 clamp(18px,2vw,26px) Onest;margin-top:46px;opacity:.95}

/* FEEDBACK */
:where(body.ec-ui) .fb .grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,90px);align-items:start}
:where(body.ec-ui) .fbcard{background:#fff;border-radius:28px;padding:clamp(24px,3vw,40px);box-shadow:0 30px 70px -40px rgba(0,0,0,.3);min-width:0}
:where(body.ec-ui) .fbsteps{display:flex;gap:6px;margin-bottom:28px}
:where(body.ec-ui) .fbsteps i{flex:1;height:4px;border-radius:4px;background:var(--paper2);overflow:hidden;position:relative}
:where(body.ec-ui) .fbsteps i:after{content:"";position:absolute;inset:0;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
:where(body.ec-ui) .fbsteps i.on:after{transform:scaleX(1)}
:where(body.ec-ui) .fbpane{display:none}
:where(body.ec-ui) .fbpane.act{display:block;animation:up .6s var(--ease)}
:where(body.ec-ui) .fbpane h3{font-size:24px;margin-bottom:6px}
:where(body.ec-ui) .fbpane .hint2{color:var(--mute);font-size:14px;margin-bottom:20px}
:where(body.ec-ui) .rate{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}
:where(body.ec-ui) .rate span{font-size:15px;line-height:1.35}
:where(body.ec-ui) .stars{display:flex;gap:4px;flex:none}
:where(body.ec-ui) .stars button{width:34px;height:34px;border-radius:10px;background:var(--paper);font:700 14px Onest;color:#8b8e94;transition:background .25s,color .25s,transform .25s var(--ease)}
:where(body.ec-ui) .stars button.on{background:var(--red);color:#fff}
:where(body.ec-ui) .stars button:active{transform:scale(.88)}
:where(body.ec-ui) .fld{display:block;margin-bottom:14px}
:where(body.ec-ui) .fld span{display:block;font:600 13px Onest;margin-bottom:8px}
:where(body.ec-ui) .fld input,:where(body.ec-ui) .fld textarea,:where(body.ec-ui) .fld select{width:100%;padding:15px 16px;border-radius:14px;border:1px solid var(--line);background:var(--paper);font:500 15px Manrope;color:var(--ink);outline:none;transition:border-color .3s,background .3s}
:where(body.ec-ui) .fld input:focus,:where(body.ec-ui) .fld textarea:focus,:where(body.ec-ui) .fld select:focus{border-color:var(--red);background:#fff}
:where(body.ec-ui) .fld textarea{min-height:110px;resize:vertical}
:where(body.ec-ui) .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
:where(body.ec-ui) .chk{display:flex;gap:10px;align-items:center;font-size:14px;margin:6px 0 14px}
:where(body.ec-ui) .chk input{accent-color:var(--red);width:18px;height:18px}
:where(body.ec-ui) .fbnav{display:flex;justify-content:space-between;margin-top:24px;gap:10px}
:where(body.ec-ui) .done{text-align:center;padding:30px 0}
:where(body.ec-ui) .done .ok{width:84px;height:84px;border-radius:50%;background:var(--red);margin:0 auto 20px;display:grid;place-items:center}

/* CONTACT */
:where(body.ec-ui) .contact{background:var(--ink);color:#fff}
:where(body.ec-ui) .contact .grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px)}
:where(body.ec-ui) .contact .lead{color:#a2a5ab}
:where(body.ec-ui) .cform{background:var(--ink2);border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:clamp(24px,3vw,40px)}
:where(body.ec-ui) .cform .fld input,:where(body.ec-ui) .cform .fld textarea,:where(body.ec-ui) .cform .fld select{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);color:#fff}
:where(body.ec-ui) .cform .fld input:focus,:where(body.ec-ui) .cform .fld textarea:focus,:where(body.ec-ui) .cform .fld select:focus{background:rgba(255,255,255,.07);border-color:var(--red2)}
:where(body.ec-ui) .cform .fld select option{color:#000}
:where(body.ec-ui) .chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
:where(body.ec-ui) .chips button{padding:10px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.18);font:600 13px Onest;transition:.3s}
:where(body.ec-ui) .chips button.on{background:var(--red);border-color:var(--red)}
:where(body.ec-ui) .cinfo{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:40px}
:where(body.ec-ui) .ci{border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:22px;transition:border-color .3s,background .3s}
:where(body.ec-ui) .ci:hover{border-color:var(--red2);background:rgba(226,35,26,.07)}
:where(body.ec-ui) .ci small{display:block;font:600 11px Onest;letter-spacing:.14em;text-transform:uppercase;color:#7d8087;margin-bottom:10px}
:where(body.ec-ui) .ci b{font:600 18px/1.35 Onest;letter-spacing:-.01em}
:where(body.ec-ui) .ci em{font-style:normal;display:block;color:#a2a5ab;font-size:14px;margin-top:4px}
:where(body.ec-ui) .ci.big{grid-column:1/-1;display:flex;align-items:center;gap:18px}
:where(body.ec-ui) .ci.big .av{width:112px;height:112px;border-radius:16px;object-fit:cover;flex:none}
:where(body.ec-ui) .ci.big>div{min-width:0}
@media (max-width:640px){
:where(body.ec-ui) .ci.big{gap:14px;padding:18px}
:where(body.ec-ui) .ci.big .av{width:88px;height:88px}}
:where(body.ec-ui) .map{margin-top:12px;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:20px;position:relative}
:where(body.ec-ui) .map svg{width:100%;height:auto;display:block}
:where(body.ec-ui) .map .lab{position:absolute;left:20px;top:16px;font:600 11px Onest;letter-spacing:.14em;text-transform:uppercase;color:#7d8087}
:where(body.ec-ui) footer{background:#08090a;color:#a2a5ab;padding:70px 0 30px}
:where(body.ec-ui) footer .grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
:where(body.ec-ui) footer img{height:40px;width:auto;margin-bottom:20px}
:where(body.ec-ui) footer h4{color:#fff;font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}
:where(body.ec-ui) footer a{display:block;padding:5px 0;transition:color .3s}
:where(body.ec-ui) footer a:hover{color:#fff}
:where(body.ec-ui) footer .bot{display:flex;justify-content:space-between;gap:20px;margin-top:60px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:13px;flex-wrap:wrap}
:where(body.ec-ui) .toast{position:fixed;left:50%;bottom:24px;visibility:hidden;transform:translate(-50%,240%);background:var(--ink);color:#fff;padding:14px 20px;border-radius:14px;z-index:90;font:600 14px Onest;transition:transform .6s var(--ease);box-shadow:0 20px 40px -10px rgba(0,0,0,.5)}
:where(body.ec-ui) .toast.on{transform:translate(-50%,0);visibility:visible}
:where(body.ec-ui) .sbar{position:fixed;top:0;left:0;height:3px;background:var(--red);z-index:60;transform-origin:left;transform:scaleX(0)}
:where(body.ec-ui) .fcall{display:none}

/* CONTENT: SECTOR DETAILS, PROJECTS AND QUESTIONS */
:where(body.ec-ui) .content-head{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:44px}
:where(body.ec-ui) .content-head h2{max-width:16ch;margin-top:18px}
:where(body.ec-ui) .content-head .lead{max-width:350px}
:where(body.ec-ui) .disclosure{border-top:1px solid var(--line)}
:where(body.ec-ui) .disclosure summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;list-style:none;padding:22px 0;font:600 18px/1.4 Onest;letter-spacing:-.015em}
:where(body.ec-ui) .disclosure summary::-webkit-details-marker{display:none}
:where(body.ec-ui) .disclosure summary::marker{content:""}
:where(body.ec-ui) .disclosure summary:focus-visible{outline:2px solid var(--red);outline-offset:5px;border-radius:4px}
:where(body.ec-ui) .disclosure summary i{flex:none;width:30px;height:30px;position:relative;border:1px solid var(--line);border-radius:50%;transition:background .2s}
:where(body.ec-ui) .disclosure summary i:before,:where(body.ec-ui) .disclosure summary i:after{content:"";position:absolute;background:var(--red);width:10px;height:2px;left:9px;top:13px}
:where(body.ec-ui) .disclosure summary i:after{transform:rotate(90deg);transition:transform .2s}
:where(body.ec-ui) .disclosure[open]>summary i:after{transform:rotate(0)}
:where(body.ec-ui) .disclosure[open]>summary i{background:rgba(226,35,26,.06)}
:where(body.ec-ui) .disclosure-body{padding:0 44px 24px 0;max-width:76ch}
:where(body.ec-ui) .disclosure-body p{color:#4a4d53;font-size:16px;line-height:1.75}
:where(body.ec-ui) .projects{background:var(--paper)}
:where(body.ec-ui) .story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
:where(body.ec-ui) .story-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;display:flex;flex-direction:column}
:where(body.ec-ui) .story-card .eyebrow{font-size:10px;line-height:1.5;letter-spacing:.1em}
:where(body.ec-ui) .story-card .eyebrow:before{width:14px;flex:none}
:where(body.ec-ui) .story-card h3{font-size:clamp(24px,2.3vw,32px);line-height:1.12;margin:28px 0 14px;overflow-wrap:anywhere}
:where(body.ec-ui) .story-card p{font-size:15px;line-height:1.75;color:#55585e;margin-bottom:16px}
:where(body.ec-ui) .story-card .story-intro{font-weight:700;color:var(--ink);line-height:1.5}
:where(body.ec-ui) .story-card time{display:block;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font:500 12px Onest;color:var(--mute)}
:where(body.ec-ui) .project-archive{margin-top:30px;border-bottom:1px solid var(--line)}
:where(body.ec-ui) .project-archive>summary{padding:24px 0}
:where(body.ec-ui) .project-archive>.story-grid{padding-bottom:28px}
:where(body.ec-ui) .faq{background:#fff}
:where(body.ec-ui) .faq-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:46px 56px;align-items:start}
:where(body.ec-ui) .faq-group{min-width:0}
:where(body.ec-ui) .faq-group h3{font-size:23px;line-height:1.2;margin-bottom:20px}
:where(body.ec-ui) .faq-group .disclosure:last-child{border-bottom:1px solid var(--line)}
:where(body.ec-ui) .content-tail{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);margin-top:48px;padding-top:30px}
:where(body.ec-ui) .content-tail p{font:600 22px/1.4 Onest}
:where(body.ec-ui) .ci b{overflow-wrap:anywhere}

/* MOBILE */
@media (max-width:1180px){
:where(body.ec-ui) .links,:where(body.ec-ui) .nav .btn{display:none}
:where(body.ec-ui) .burger{display:block}}
@media (max-width:980px){
:where(body.ec-ui) .links,:where(body.ec-ui) .nav .btn{display:none}
:where(body.ec-ui) .burger{display:block}
:where(body.ec-ui) .wrap{width:calc(100% - 32px)}
:where(body.ec-ui) .nav .wrap{height:70px}
:where(body.ec-ui) .nav .logo{height:32px}
:where(body.ec-ui) .hero .content .wrap{grid-template-columns:1fr}
:where(body.ec-ui) .badge20{position:absolute;right:0;top:-150px;width:96px;height:96px}
:where(body.ec-ui) .hero .content .wrap{position:relative}
:where(body.ec-ui) .badge20 b{font-size:32px}
:where(body.ec-ui) .hero .hero-title{font-size:clamp(42px,12.4vw,64px)}
:where(body.ec-ui) .hero .sub{font-size:16px;margin:16px 0 22px}
:where(body.ec-ui) .hero .ctas .btn{flex:1;justify-content:center;padding:15px 12px;font-size:12px;white-space:nowrap}
:where(body.ec-ui) .hero .ctas .btn i{display:none}
:where(body.ec-ui) .stats .top{flex-direction:column;align-items:start;margin-bottom:34px}
:where(body.ec-ui) .sgrid{grid-template-columns:1fr 1fr}
:where(body.ec-ui) .stat,:where(body.ec-ui) .stat:nth-child(3n+2),:where(body.ec-ui) .stat:nth-child(3n){padding:26px 14px 28px 0;border-right:0!important}
:where(body.ec-ui) .stat:nth-child(odd){border-right:1px solid rgba(255,255,255,.12)!important}
:where(body.ec-ui) .stat:nth-child(even){padding-left:16px}
:where(body.ec-ui) .stat:nth-child(even):before{left:16px}
:where(body.ec-ui) .stat:nth-child(odd):before{left:0}
:where(body.ec-ui) .stat .n{font-size:36px}
:where(body.ec-ui) .stat:nth-child(3) .n{font-size:26px}
:where(body.ec-ui) .stat p{font-size:13px}
:where(body.ec-ui) .about .grid,:where(body.ec-ui) .svx,:where(body.ec-ui) .fb .grid,:where(body.ec-ui) .contact .grid{grid-template-columns:1fr}
:where(body.ec-ui) .content-head{flex-direction:column;align-items:start;gap:20px;margin-bottom:30px}
:where(body.ec-ui) .content-head .lead{max-width:50ch}
:where(body.ec-ui) .story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
:where(body.ec-ui) .story-grid>.story-card:first-child{grid-column:1/-1}
:where(body.ec-ui) .story-card{padding:26px}
:where(body.ec-ui) .faq-groups{gap:36px 28px}
:where(body.ec-ui) .stack{aspect-ratio:1/1;margin-top:10px}
:where(body.ec-ui) .stack .tag{left:0}
:where(body.ec-ui) .svh,:where(body.ec-ui) .hist .head{flex-direction:column;align-items:start}
:where(body.ec-ui) .svlist{display:none}
:where(body.ec-ui) .svp{display:none}
:where(body.ec-ui) .acc{display:flex!important;flex-direction:column;gap:10px}
:where(body.ec-ui) .whyg{grid-template-columns:1fr 1fr;gap:10px}
:where(body.ec-ui) .wc{min-height:220px;padding:22px 18px}
:where(body.ec-ui) .wc h3{font-size:18px;margin-top:26px}
:where(body.ec-ui) .wc p{font-size:14px}
:where(body.ec-ui) .values{grid-template-columns:1fr}
:where(body.ec-ui) .values div{padding:26px 0 0}
:where(body.ec-ui) .hs{height:auto}
:where(body.ec-ui) .hs .pin{position:static;height:auto;overflow:visible}
:where(body.ec-ui) .track{overflow-x:auto;scroll-snap-type:x mandatory;transform:none!important;padding:6px 16px 20px;margin:0 -16px;scrollbar-width:none}
:where(body.ec-ui) .track::-webkit-scrollbar{display:none}
:where(body.ec-ui) .yr{scroll-snap-align:center;width:78vw;min-height:290px}
:where(body.ec-ui) .sector-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
:where(body.ec-ui) .secnote{flex-direction:column;align-items:start;padding:24px}
:where(body.ec-ui) .cl{height:66px;font-size:18px;padding:0 22px}
:where(body.ec-ui) .certs .grid{grid-template-columns:1fr}
:where(body.ec-ui) .row2,:where(body.ec-ui) .cinfo{grid-template-columns:1fr}
:where(body.ec-ui) .rate{flex-direction:column;align-items:start;gap:8px}
:where(body.ec-ui) .stars button{width:44px;height:40px}
:where(body.ec-ui) footer .grid{grid-template-columns:1fr 1fr}
:where(body.ec-ui) footer .grid>div:first-child{grid-column:1/-1}
:where(body.ec-ui) .fcall{display:flex;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:45;gap:8px;transform:translateY(160%);transition:transform .6s var(--ease)}
:where(body.ec-ui) .fcall.on{transform:none}
:where(body.ec-ui) .fcall a{flex:1;display:flex;justify-content:center;align-items:center;gap:8px;padding:15px;border-radius:16px;font:600 14px Onest;box-shadow:0 14px 30px -10px rgba(0,0,0,.45)}
:where(body.ec-ui) .fcall a:first-child{background:var(--ink);color:#fff}
:where(body.ec-ui) .fcall a:last-child{background:var(--red);color:#fff}
:where(body.ec-ui) .toast{bottom:90px}
}
:where(body.ec-ui) .acc{display:none}
:where(body.ec-ui) .ai{background:#fff;border-radius:22px;overflow:hidden;scroll-margin-top:96px}
:where(body.ec-ui) .service-heading{font:inherit;letter-spacing:normal;line-height:normal}
:where(body.ec-ui) .ai>.service-heading>button{width:100%;display:flex;align-items:center;gap:14px;padding:14px;text-align:left}
:where(body.ec-ui) .ai>.service-heading>button img{width:64px;height:64px;border-radius:14px;object-fit:cover;flex:none}
:where(body.ec-ui) .ai>.service-heading>button b{font:600 17px/1.25 Onest;letter-spacing:-.015em;flex:1}
:where(body.ec-ui) .ai>.service-heading>button i{width:34px;height:34px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-style:normal;transition:transform .5s var(--ease),background .3s;flex:none}
:where(body.ec-ui) .ai.open>.service-heading>button i{transform:rotate(45deg);background:var(--red);color:#fff}
:where(body.ec-ui) .ai .ab{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s var(--ease)}
:where(body.ec-ui) .ai:not(.open) .ab{content-visibility:hidden}
:where(body.ec-ui) .ai.open .ab{grid-template-rows:1fr}
:where(body.ec-ui) .ai .ab>div{overflow:hidden}
:where(body.ec-ui) .ai .ab .in{padding:0 18px 22px}
:where(body.ec-ui) .ai .in .intro{font-weight:600;margin-bottom:12px;line-height:1.55}
:where(body.ec-ui) .ai .in p{line-height:1.68;color:#4a4d53;margin-bottom:12px;font-size:15px}
:where(body.ec-ui) .ai .in ul{list-style:none;margin:6px 0 14px}
:where(body.ec-ui) .ai .in li{padding:6px 0 6px 26px;position:relative;font-size:15px}
:where(body.ec-ui) .ai .in li:before{content:"";position:absolute;left:0;top:9px;width:14px;height:14px;border-radius:50%;background:var(--red)}
:where(body.ec-ui) .ai .in h4{font-size:17px;margin:14px 0 8px}
@media (max-width:374px){
:where(body.ec-ui) .hero .ctas{flex-direction:column;gap:8px}
:where(body.ec-ui) .hero .ctas .btn{flex:auto;width:100%}
:where(body.ec-ui) .row2{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){
:where(body.ec-ui) .faq-groups,:where(body.ec-ui) .story-grid,:where(body.ec-ui) .sector-content{grid-template-columns:minmax(0,1fr)}
:where(body.ec-ui) .sector-grid{gap:12px;margin-top:28px}
:where(body.ec-ui) .sector-card{border-radius:18px}
:where(body.ec-ui) .sector-card-copy{padding:18px 14px 14px}
:where(body.ec-ui) .sector-card h3{font-size:18px;line-height:1.2}
:where(body.ec-ui) .sector-card-copy p{font-size:12px;line-height:1.55;margin-bottom:16px}
:where(body.ec-ui) .sector-card-number{width:28px;height:28px;top:10px;left:10px;font-size:10px}
:where(body.ec-ui) .sector-card-action{font-size:11px;gap:6px}
:where(body.ec-ui) .sector-card-action i{width:26px;height:26px;font-size:16px}
:where(body.ec-ui) .sector-dialog{inset:auto 0 0;width:100%;height:94dvh;border-radius:26px 26px 0 0}
:where(body.ec-ui) .sector-dialog[open]{animation:sector-rise .4s var(--ease)}
:where(body.ec-ui) .sector-cover{height:210px}
:where(body.ec-ui) .sector-body{padding:26px 22px 8px}
:where(body.ec-ui) .sector-body h3{font-size:30px}
:where(body.ec-ui) .sector-body p{font-size:15px}
:where(body.ec-ui) .sector-body .sector-intro{font-size:17px}
:where(body.ec-ui) .sector-actions{padding:14px 16px calc(14px + env(safe-area-inset-bottom))}
:where(body.ec-ui) .sector-actions .btn{font-size:12px;padding:15px 10px}
:where(body.ec-ui) .story-grid>.story-card:first-child{grid-column:auto}
:where(body.ec-ui) .story-card{padding:26px 22px}
:where(body.ec-ui) .story-card h3{font-size:28px;margin-top:24px}
:where(body.ec-ui) .disclosure summary{padding:20px 0;font-size:17px;gap:16px}
:where(body.ec-ui) .disclosure-body{padding-right:8px}
:where(body.ec-ui) .disclosure-body p{font-size:15px}
:where(body.ec-ui) .faq-groups{gap:34px}
:where(body.ec-ui) .content-tail{flex-direction:column;align-items:start}
:where(body.ec-ui) .content-tail p{font-size:20px}
}
@keyframes sector-rise{from{transform:translateY(100%)}}
@media (prefers-reduced-motion:reduce){
:where(body.ec-ui) *{animation:none!important;transition:none!important}
:where(body.ec-ui) .rv{opacity:1;transform:none}
:where(body.ec-ui) svg{--graphic-animation:none}}
