/* OGLOS — B2B growth agency
   Palette: deep green #1E5641 + sage #DDEBE3 (~60%), gold #E8CD84 (~30%), white cards, black borders.
   Type: Roboto + Material Symbols. */
html{scroll-behavior:smooth}
body{margin:0;font-family:'Roboto','Helvetica Neue',Arial,sans-serif;color:#111;background:#DDEBE3;overflow-x:clip;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box;min-width:0}
::selection{background:#E8CD84;color:#111}
a{color:#1E5641}a:hover{color:#2A6A52}
section{scroll-margin-top:64px}
h1,h2,h3,p{margin:0}
.wrap{max-width:1560px;margin:0 auto;padding:0 clamp(20px,3.2vw,56px)}
.serif{font-family:'Roboto','Helvetica Neue',Arial,sans-serif;font-weight:500;letter-spacing:-.01em}
.ms{font-family:'Material Symbols Outlined';font-weight:normal;font-style:normal;font-size:22px;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;direction:ltr;display:inline-block;font-feature-settings:'liga';font-variation-settings:'FILL' 1,'wght' 400,'GRAD' 0,'opsz' 24;user-select:none;flex:none}
.ms.f{font-variation-settings:'FILL' 1,'wght' 400,'GRAD' 0,'opsz' 24}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.shine{background:linear-gradient(100deg,#D4B062,#E6C982 55%,#D9B86C);background-size:100% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}
@keyframes sheen{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.kick{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:800;color:#2A6A52}
.kick::before{content:"";width:24px;height:2px;background:#C99A2E}
.kick.on-dark{color:#E8CD84}
.h2{font-size:clamp(30px,3.6vw,46px);line-height:1.1;text-wrap:balance;color:#1E5641}
.sec{padding:clamp(36px,4.5vw,60px) 0}
.stack{display:flex;flex-direction:column;gap:26px}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px}
.sec-title{display:flex;flex-direction:column;gap:14px;max-width:700px}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,252,243,.72);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border-bottom:1.5px solid rgba(17,17,17,.85);box-shadow:0 6px 24px -12px rgba(0,0,0,.25)}
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:24px;height:58px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand{flex:none}
.logo-svg{display:block;width:auto;aspect-ratio:439/120;overflow:visible}
.nav-logo{height:32px}
.foot-brand{margin-bottom:14px}
.foot-logo{height:48px}
@media (max-width:760px){.nav-logo{height:28px}.foot-logo{height:42px}}
.navlinks{display:flex;gap:28px;align-items:center}
.nav a.lk{color:#1A2A23;text-decoration:none;font-size:15px;font-weight:600;padding:10px 2px}
.nav a.lk:hover{color:#1E5641;text-decoration:underline;text-decoration-color:#C99A2E;text-decoration-thickness:2px;text-underline-offset:6px}
.menu-btn{display:none;width:44px;height:44px;border-radius:10px;border:1.5px solid #111;background:#E8CD84;color:#111;cursor:pointer;align-items:center;justify-content:center}
.mobile-menu{display:flex;flex-direction:column;padding-bottom:20px;border-top:1px solid #111}
.mobile-menu[hidden]{display:none}
.mobile-menu a.lk{font-size:19px;padding:12px 0}
.mobile-menu .btn{margin-top:10px}

/* buttons */
.btn{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 22px;border-radius:999px;font-weight:800;font-size:15px;text-decoration:none;border:1.5px solid #111;cursor:pointer;font-family:inherit;white-space:nowrap;transition:transform .2s ease,background-position .6s ease,background-color .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.6) 0,rgba(255,255,255,.6) 10%,transparent 10.5%) center/100% 100% no-repeat;transform:scale(14);opacity:0;transition:transform .55s ease,opacity .9s ease}
.btn:active::after{transform:scale(0);opacity:1;transition:0s}
.btn .ms{font-size:20px}
.gold{color:#111;background:linear-gradient(180deg,#EAD08F,#DCBA6A);border-color:#111}
.gold:hover{color:#111;background:linear-gradient(180deg,#E3C77F,#D2AE5C)}
.line{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.line:hover{color:#E8CD84;border-color:#E8CD84}
.dark{background:#1E5641;color:#fff}.dark:hover{color:#E8CD84;background:#14503C}
.wbtn{background:#fff;color:#111}.wbtn:hover{color:#111;background:#F6EFD9}
.btn:focus-visible,.pill:focus-visible,.seg button:focus-visible,.chap:focus-visible,.ctl:focus-visible,.pseg:focus-visible,.faq-q:focus-visible,.menu-btn:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #C99A2E;outline-offset:3px}

/* hero */
.hero-bg{background:#1E5641;color:#fff;position:relative;overflow:hidden}
.hero-glow{position:absolute;inset:0;background:radial-gradient(800px 600px at 30% 40%,rgba(46,120,90,.6),rgba(30,86,65,0) 70%)}
.hero{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:40px;align-items:center;padding-top:clamp(28px,3.5vw,48px);padding-bottom:clamp(32px,3.5vw,52px)}
.hero-copy{display:flex;flex-direction:column;gap:18px}
.badge{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;padding:7px 14px;border-radius:999px;border:1.5px solid #111;background:#E8CD84;color:#111;font-size:14px;font-weight:800}
.badge .ms{font-size:18px}
.hero h1{font-size:clamp(34px,4.1vw,58px);line-height:1.08;letter-spacing:-.01em;text-wrap:balance;color:#fff}
.hero h1 em{padding-right:.06em}
.lede{max-width:520px;font-size:17px;line-height:1.55;color:rgba(255,255,255,.85)}
.cta-row{display:flex;flex-wrap:wrap;gap:14px}
.triad{display:flex;flex-wrap:wrap;gap:22px;padding-top:16px;border-top:1px solid rgba(232,205,132,.3)}
.triad div{display:flex;flex-direction:column;gap:2px}
.triad .serif{font-size:21px;color:#E8CD84}
.triad span:last-child{font-size:14px;color:rgba(255,255,255,.72)}
.gpanel{position:absolute;top:0;right:0;bottom:0;width:38%;background:linear-gradient(160deg,#F2D98F,#E8CD84 45%,#DDBE6A);border-left:1.5px solid #111;overflow:hidden}
.gpanel svg{position:absolute;right:-80px;top:-80px;width:340px;height:340px;opacity:.35}
.gpanel i{position:absolute;left:0;right:0;bottom:0;height:40%;background-image:radial-gradient(#B8892E 1.2px,transparent 1.4px);background-size:18px 18px;opacity:.35}
.film{display:flex;flex-direction:column;gap:10px}
.card{background:#fff;border:1.5px solid #111;border-radius:20px}
.film-card{overflow:hidden;background:#184835}
.film-art{position:relative;aspect-ratio:16/10;background:radial-gradient(600px 380px at 70% 30%,#2E785A,#184835 70%);display:flex;align-items:center;justify-content:center}
.film-art>svg{position:absolute;right:-40px;bottom:-60px;width:300px;height:300px;opacity:.22}
.film-tag{position:absolute;top:18px;left:18px;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1.5px solid #111;background:#E8CD84;color:#111;font-size:13px;font-weight:800}
.film-tag .ms{font-size:16px}
.film-text{position:absolute;left:22px;right:22px;bottom:20px;display:flex;flex-direction:column;gap:4px}
.film-text .serif{font-size:clamp(24px,2.4vw,34px);line-height:1.05;color:#fff}
.film-text span:last-child{font-size:14px;color:rgba(255,255,255,.8)}
.vcap{font-size:12px;font-weight:600;color:#3A2E12}
.playbig{position:relative;width:96px;height:96px;border-radius:50%;border:1.5px solid #111;display:flex;align-items:center;justify-content:center;color:#111;text-decoration:none;background:linear-gradient(135deg,#EFD9A0,#D9B86C);transition:transform .25s ease}
.playbig .ms{font-size:44px}
.playbig:hover{color:#111;transform:scale(1.07)}
.playbig::before{content:"";position:absolute;inset:-12px;border-radius:50%;border:2px solid rgba(232,205,132,.7);animation:pulse 2.2s ease-out infinite}
@keyframes pulse{from{transform:scale(.85);opacity:1}to{transform:scale(1.35);opacity:0}}
.strip{position:relative;background:#E8CD84;color:#111;border-top:1.5px solid #111;border-bottom:1.5px solid #111;overflow:hidden;padding:12px 0}
.marq{display:flex;align-items:center;gap:44px;width:max-content;font-size:17px;font-weight:800;white-space:nowrap;animation:mq 40s linear infinite}
.marq .ms{font-size:16px}
@keyframes mq{to{transform:translateX(-50%)}}

/* video reel */
.reel-note{max-width:360px;font-size:16px;line-height:1.6;color:#2D4A3E}
.player{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:24px;align-items:stretch}
.player-main{overflow:hidden;display:flex;flex-direction:column}
.stage{position:relative;aspect-ratio:16/9;background:#1E5641;border-bottom:1.5px solid #111;overflow:hidden}
.stage .grid{position:absolute;inset:0;background-image:linear-gradient(rgba(232,205,132,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(232,205,132,.08) 1px,transparent 1px);background-size:40px 40px}
.scene{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:6% 8% 14%}
.scene[hidden]{display:none}
.sub{position:absolute;left:50%;bottom:5%;transform:translateX(-50%);max-width:86%;padding:8px 14px;border-radius:8px;background:rgba(0,0,0,.55);color:#fff;font-size:clamp(12px,1.3vw,15px);font-weight:600;text-align:center;animation:up .5s .1s both}
.tag{position:absolute;top:5%;left:5%;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1.5px solid #111;background:#E8CD84;color:#111;font-size:13px;font-weight:800;animation:up .4s both}
.tag .ms{font-size:16px}
@keyframes up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes pop{0%{opacity:0;transform:scale(.6)}70%{transform:scale(1.06)}100%{opacity:1;transform:scale(1)}}
@keyframes strike{from{width:0}to{width:100%}}
@keyframes grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes cur{0%{left:88%;top:88%}55%{left:31%;top:64%}100%{left:31%;top:64%}}
@keyframes click{0%,60%{transform:scale(0);opacity:0}70%{opacity:.7}100%{transform:scale(2.4);opacity:0}}
@keyframes fanL{from{transform:rotate(0) translateX(0)}to{transform:rotate(-9deg) translateX(-62%)}}
@keyframes fanR{from{transform:rotate(0) translateX(0)}to{transform:rotate(9deg) translateX(62%)}}
.d1{animation:up .6s .2s both}.d2{animation:up .6s .9s both}.d3{animation:up .6s 1.6s both}
.p1{animation:pop .5s 1s both}.p2{animation:pop .5s 2s both}.p3{animation:pop .5s 3s both}
.bx{background:#fff;border:1.5px solid #111;border-radius:14px}
.lbl{font-size:12px;font-weight:800;margin-bottom:6px}
/* scene 0 */
.s0{display:flex;flex-direction:column;gap:16px;width:100%;max-width:680px}
.s0 .bx{padding:16px 18px}
.s0 .before{position:relative;display:inline-block;font-size:clamp(14px,1.8vw,20px);color:#555}
.s0 .before b{position:absolute;left:0;top:52%;height:3px;background:#B3402A;animation:strike .7s 1.2s both}
.s0 .after{background:#E8CD84;font-size:clamp(20px,2.8vw,32px);line-height:1.15;color:#111}
/* scene 1 */
.browser{position:relative;width:100%;max-width:560px;background:#fff;border:1.5px solid #111;border-radius:12px;overflow:hidden}
.browser-bar{display:flex;gap:6px;padding:8px 10px;border-bottom:1.5px solid #111;background:#DDEBE3}
.browser-bar i{width:9px;height:9px;border-radius:50%;border:1px solid #111;background:#E8CD84;display:block}
.browser-bar i:nth-child(2){background:#fff}.browser-bar i:nth-child(3){background:#1E5641}
.browser-body{padding:18px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:14px;align-items:center}
.browser-body>div:first-child{display:flex;flex-direction:column;gap:8px}
.ln{display:block;border-radius:4px;background:#1E5641;height:12px}
.ln.sm{height:7px;background:#C9D8CF}
.demo-btn{align-self:flex-start;margin-top:6px;padding:7px 12px;border-radius:999px;border:1.5px solid #111;background:#E8CD84;font-size:11px;font-weight:800}
.hero-img{aspect-ratio:4/3;border:1.5px solid #111;border-radius:10px;background:linear-gradient(135deg,#DDEBE3,#F6EFD9)}
.cursor{position:absolute;left:88%;top:88%;animation:cur 2.4s 1.6s ease-in-out both}
.cursor span{position:absolute;left:-12px;top:-12px;width:24px;height:24px;border-radius:50%;background:#E8CD84;animation:click 3.2s 1.6s both}
.cursor svg{position:relative}
.booked{position:absolute;right:6%;top:8%;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;border:1.5px solid #111;background:#fff;font-size:13px;font-weight:800}
.booked .ms{font-size:18px;color:#1F9D5B}
/* scene 2 */
.deck{position:relative;width:min(46%,300px);aspect-ratio:16/10}
.slide{position:absolute;inset:0;background:#fff;border:1.5px solid #111;border-radius:10px;padding:12%;display:flex;flex-direction:column;gap:8%}
.slide b{font-size:clamp(10px,1.2vw,14px);font-weight:800}
.slide .bar{display:block;height:8%;background:#C9D8CF;border-radius:3px}
.slide.l{animation:fanL .9s .5s ease-out both}.slide.l b{color:#8A3B2B}
.slide.r{animation:fanR .9s .5s ease-out both}.slide.r b{color:#2A6A52}
.slide.top{background:#E8CD84;justify-content:center;gap:6%}
.slide.top b{color:#1E5641}
.slide.top .serif{font-size:clamp(16px,2.2vw,26px);line-height:1.1;color:#111}
.mini-bars{display:flex;align-items:flex-end;gap:6%;height:50%}
.mini-bars i{flex:1;display:block;background:#C9D8CF}
.mini-bars i:nth-child(2){background:#E8CD84}.mini-bars i:nth-child(3){background:#C99A2E}
/* scene 3 */
.lead{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;width:100%;max-width:600px;align-items:center}
.post{padding:14px;border-radius:12px;display:flex;flex-direction:column;gap:8px}
.post-head{display:flex;align-items:center;gap:8px}
.avatar{width:30px;height:30px;border-radius:50%;border:1.5px solid #111;background:#1E5641;display:block}
.post-head span:last-child{display:flex;flex-direction:column;gap:4px;flex:1}
.post-head i{display:block;height:7px;width:60%;background:#111;border-radius:3px}
.post-head i+i{height:6px;width:40%;background:#C9D8CF}
.post .serif{font-size:clamp(14px,1.6vw,19px);line-height:1.2}
.post-img{display:block;aspect-ratio:16/7;border:1.5px solid #111;border-radius:8px;background:linear-gradient(135deg,#E8CD84,#F6EFD9)}
.events{display:flex;flex-direction:column;gap:10px}
.events span{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:10px;border:1.5px solid #111;background:#fff;font-size:clamp(11px,1.2vw,14px);font-weight:800}
.events span:last-child{background:#E8CD84}
.events .ms{font-size:18px}
/* scene 4 */
.chart{width:100%;max-width:540px;padding:16px 18px;border-radius:12px;display:flex;flex-direction:column;gap:12px}
.chart-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.chart-top span:first-child{font-size:clamp(12px,1.3vw,15px);font-weight:800}
.chart-top span:last-child{font-size:11px;color:#666}
.bars{display:flex;align-items:flex-end;gap:4%;height:clamp(90px,14vw,170px);border-bottom:1.5px solid #111}
.bars i{flex:1;background:#C9D8CF;border:1px solid #111;border-bottom:0;transform-origin:bottom;display:block;animation:grow .6s both}
.chart-foot{display:flex;justify-content:space-between;font-size:11px;color:#555}
.chart-foot b{color:#1E5641}
/* controls */
.controls{display:flex;align-items:center;gap:14px;padding:10px 16px;background:#fff}
.ctl{width:44px;height:44px;border-radius:50%;border:1.5px solid #111;background:#E8CD84;color:#111;display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.segs{display:flex;gap:6px;flex:1}
.pseg{flex:1;height:44px;display:flex;align-items:center;background:transparent;border:0;padding:0;cursor:pointer}
.pseg span{display:block;width:100%;height:6px;border-radius:3px;background:#DDEBE3;border:1px solid #111;overflow:hidden;position:relative}
.pseg i{position:absolute;inset:0 auto 0 0;background:#C99A2E;display:block}
.clock{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;color:#2D4A3E}
.chapters{padding:14px;display:flex;flex-direction:column;gap:4px}
.chapters-title{margin:6px 10px 8px;font-size:14px;font-weight:800;color:#2A6A52}
.chapters-note{margin:auto 10px 6px;padding-top:12px;font-size:12px;line-height:1.5;color:#555}
.chap{display:flex;gap:14px;align-items:flex-start;width:100%;padding:14px 16px;border-radius:14px;border:1.5px solid transparent;background:transparent;text-align:left;cursor:pointer;font-family:inherit;color:#111;transition:background .2s ease,border-color .2s ease}
.chap:hover{background:#F6EFD9}
.chap.on{background:#E8CD84;border-color:#111}
.chap .n{width:34px;height:34px;flex:none;border-radius:50%;border:1.5px solid #111;display:flex;align-items:center;justify-content:center;background:#fff}
.chap .n .ms{font-size:18px}
.chap .txt{display:flex;flex-direction:column;gap:3px}
.chap strong{font-size:16px}
.chap .txt span{font-size:14px;line-height:1.45;color:#3B4A43}

/* pipeline check */
.check{background:#1E5641;color:#fff;border-top:1.5px solid #111;border-bottom:1.5px solid #111}
.check .h2{color:#fff}
.check .intro{font-size:17px;line-height:1.6;color:rgba(255,255,255,.8)}
.audit{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:28px;align-items:start}
.qs{border-bottom:1px solid rgba(255,255,255,.18)}
.q{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0;border-top:1px solid rgba(255,255,255,.18)}
.q>span{font-size:17px;line-height:1.45;font-weight:600}
.seg{display:flex;border:1.5px solid #111;border-radius:999px;overflow:hidden;flex:none;background:#fff}
.seg button{min-height:44px;min-width:64px;padding:0 16px;border:0;background:#fff;color:#111;font-family:inherit;font-weight:800;font-size:14px;cursor:pointer}
.seg button+button{border-left:1.5px solid #111}
.seg button.yes{background:#1F9D5B;color:#fff}
.seg button.no{background:#E8CD84;color:#111}
.result{padding:28px;display:flex;flex-direction:column;gap:18px;color:#111;background:#F6EFD9}
.result-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.result-top span:first-child{font-size:15px;font-weight:800}
.score{font-size:44px;line-height:1;color:#1E5641}.score small{font-size:22px}
.meter{height:14px;border-radius:999px;border:1.5px solid #111;background:#fff;overflow:hidden}
.meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#C99A2E,#F2D98F,#1F9D5B);transition:width .4s ease}
.verdict{font-size:26px;line-height:1.2}
.fixes{display:flex;flex-direction:column;gap:10px}
.fixes[hidden]{display:none}
.fixes>span{font-size:14px;font-weight:800;color:#2A6A52}
.fix{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:#fff;border:1.5px solid #111;border-radius:12px;font-size:15px;line-height:1.45}
.fix .ms{font-size:20px;color:#C99A2E}
.result-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}

/* work */
.work{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px;align-items:stretch}
.work-col{display:flex;flex-direction:column;gap:20px}
.wcard{display:flex;flex-direction:column;overflow:hidden;transition:transform .25s ease}
.wcard:hover{transform:translateY(-4px)}
.wcard.cream{background:#F6EFD9}
.shot{background:repeating-linear-gradient(135deg,#EEF4F0 0 14px,#E3ECE7 14px 28px);border-bottom:1.5px solid #111;display:flex;align-items:center;justify-content:center;gap:8px;color:#4A5A52;font-size:14px;font-weight:700}
.wbody{padding:22px 24px 24px;display:flex;flex-direction:column;gap:12px;flex:1}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;border:1.5px solid #111;font-size:12px;font-weight:800;background:#fff;color:#111}
.chip.g{background:#E8CD84}
.wbody h3{font-size:30px;line-height:1.05}
.wbody p{font-size:15px;line-height:1.6;color:#3B4A43}
.metric{margin-top:auto;padding-top:14px;border-top:1.5px solid #111;display:flex;align-items:baseline;gap:10px}
.metric .serif{font-size:34px;line-height:1;color:#1E5641}
.metric span:last-child{font-size:14px;font-weight:700;color:#3B4A43}
.fine{font-size:13px;color:#3B4A43}

/* process */
.process{background:#E8CD84;border-top:1.5px solid #111;border-bottom:1.5px solid #111}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.step{padding:26px;display:flex;flex-direction:column;gap:10px;background:#FFFBEE}
.step .when{align-self:flex-start;font-size:13px;font-weight:800;padding:5px 12px;border-radius:999px;border:1.5px solid #111;background:#1E5641;color:#E8CD84}
.step h3{font-size:30px;line-height:1.05}
.step p{font-size:15px;line-height:1.6;color:#3A3A3A}

/* pricing + faq */
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.plan{padding:30px;display:flex;flex-direction:column;gap:14px}
.plan h3{font-size:32px}
.plan p{font-size:15px;line-height:1.6;color:#3B4A43}
.plan .price strong{font-size:26px;color:#111;white-space:nowrap}
.plan .btn{margin-top:auto}
.plan.feat{background:#1E5641;color:#fff}
.plan.feat p{color:rgba(255,255,255,.82)}
.plan.feat .price strong{color:inherit}
.plan.feat .top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.plan.feat .most{font-size:12px;font-weight:800;padding:5px 10px;border-radius:999px;border:1.5px solid #111;background:#E8CD84;color:#111;white-space:nowrap}
.plan.cream{background:#F6EFD9}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.faq-title{font-size:clamp(30px,3.4vw,44px);line-height:1.05;color:#1E5641}
.faq-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
.faq-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.faq{display:flex;flex-direction:column;gap:12px}
.faq-item{border:1.5px solid #111;border-radius:16px;background:#fff;overflow:hidden;transition:background .25s ease,box-shadow .25s ease,transform .25s ease}
.faq-item:hover{transform:translateY(-2px);box-shadow:0 10px 24px -14px rgba(30,86,65,.45)}
.faq-item.open{background:#1E5641;color:#fff;box-shadow:0 14px 30px -16px rgba(30,86,65,.7)}
.faq-q{width:100%;display:flex;align-items:center;gap:12px;padding:14px 14px 14px 14px;background:transparent;border:0;cursor:pointer;text-align:left;font-family:inherit;font-weight:700;font-size:15.5px;line-height:1.35;color:inherit}
.faq-ico{width:38px;height:38px;flex:none;border-radius:11px;display:grid;place-items:center;background:#E3EEE7;color:#1E5641}
.faq-ico .ms{font-size:20px}
.faq-item.open .faq-ico{background:rgba(232,205,132,.18);color:#E8CD84}
.faq-qt{flex:1;min-width:0}
.faq-q .pm{width:30px;height:30px;flex:none;border-radius:50%;border:1.5px solid #111;background:#E8CD84;color:#111;display:flex;align-items:center;justify-content:center;transition:transform .25s ease}
.faq-q .pm .ms{font-size:18px}
.faq-q[aria-expanded="true"] .pm{transform:rotate(45deg)}
.faq-a{margin:0;padding:0 18px 18px 64px;font-size:15px;line-height:1.65;color:rgba(255,255,255,.86)}
.faq-help{position:sticky;top:96px;display:flex;flex-direction:column;gap:14px;padding:26px;border-radius:20px;border:1.5px solid #111;color:#fff;background:radial-gradient(120% 80% at 100% 0%,rgba(232,205,132,.25),transparent 60%),#1E5641}
.faq-help-ico{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#E8CD84;color:#111;border:1.5px solid #111}
.faq-help-ico .ms{font-size:26px}
.faq-help h3{font-size:30px;line-height:1.05;color:#fff}
.faq-help p{font-size:15px;line-height:1.55;color:rgba(255,255,255,.82)}
.faq-help .btn{justify-content:center}
.faq-help-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.faq-help-row a{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;border-radius:999px;border:1.5px solid rgba(232,205,132,.55);color:#F6EFD9;font-weight:700;font-size:14px;text-decoration:none;transition:background .2s ease}
.faq-help-row a:hover{background:rgba(232,205,132,.14);color:#fff}
.faq-help-row .ms{font-size:18px;color:#E8CD84}
@media (max-width:1100px){.faq-layout{grid-template-columns:minmax(0,1fr)}.faq-help{position:static}}
@media (max-width:760px){.faq-cols{grid-template-columns:minmax(0,1fr)}.faq-a{padding-left:18px}}
.faq-a[hidden]{display:none}

/* contact */
.contact{background:#1E5641;color:#fff;border-top:1.5px solid #111}
.contact h2{font-size:clamp(32px,4vw,52px);line-height:1.1;text-wrap:balance}
.contact .copy{display:flex;flex-direction:column;gap:20px}
.contact .copy>p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.84);max-width:460px}
.facts{display:flex;flex-direction:column;gap:12px;font-size:16px}
.facts span{display:flex;align-items:center;gap:12px}
.facts .ms{color:#E8CD84}
.facts .phs{display:block;line-height:1.5}
.facts .phs .ph{display:inline;white-space:nowrap}
.facts a.plain{color:#fff;text-decoration:underline;text-decoration-color:#C99A2E;text-underline-offset:4px}
.facts a.plain:hover{color:#E8CD84}
.form-card{padding:clamp(24px,3.5vw,38px);color:#111}
.form{display:flex;flex-direction:column;gap:18px}
.form[hidden],.thanks[hidden]{display:none}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tf{position:relative}
.tf input,.tf textarea{width:100%;font-family:inherit;font-size:16px;font-weight:500;padding:18px 14px 14px;border-radius:12px;border:1.5px solid #111;background:#fff;color:#111}
.tf textarea{min-height:110px;resize:vertical;display:block}
.tf label{position:absolute;left:10px;top:16px;padding:0 6px;background:#fff;color:#4D4D4D;font-size:16px;font-weight:500;pointer-events:none;transition:top .18s ease,font-size .18s ease,color .18s ease}
.tf input:focus,.tf textarea:focus{outline:none;border-color:#2A6A52;box-shadow:0 0 0 3px rgba(201,154,46,.45)}
.tf input:focus+label,.tf textarea:focus+label,.tf input:not(:placeholder-shown)+label,.tf textarea:not(:placeholder-shown)+label{top:-9px;font-size:12px;font-weight:800;color:#1E5641}
.form fieldset{border:0;margin:0;padding:0}
.form legend{font-size:14px;font-weight:700;padding:0;margin-bottom:10px}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pill{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:0 14px;border-radius:999px;border:1.5px solid #111;background:#fff;color:#111;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer}
.pill:hover{background:#F6EFD9}
.pill.on{background:#1E5641;color:#E8CD84}
.pill .ms{font-size:18px}
.form-err{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:#A3271B}
.form-err[hidden]{display:none}
.form-err .ms{font-size:20px}
.form .btn.gold{width:100%;min-height:54px}
.thanks{display:flex;flex-direction:column;gap:14px;align-items:flex-start;padding:16px 0}
.thanks .tick{width:56px;height:56px;border-radius:50%;border:1.5px solid #111;background:#E8CD84;display:flex;align-items:center;justify-content:center}
.thanks .tick .ms{font-size:30px}
.thanks h3{font-size:38px}
.thanks p{font-size:16px;line-height:1.6;color:#3B4A43}

/* footer */
.foot{background:#184835;color:#fff;padding:clamp(36px,4.5vw,56px) 0 24px;border-top:1.5px solid #111}
.foot a{color:rgba(255,255,255,.75);text-decoration:none}
.foot a:hover{color:#E8CD84}
.foot-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;font-size:15px}
.foot-links div{display:flex;flex-wrap:wrap;gap:26px}
.foot-mark{font-size:clamp(80px,19vw,260px);line-height:.82;letter-spacing:-.02em;text-align:center}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:20px;border-top:1px solid rgba(232,205,132,.25)}
.foot-bottom p{font-size:13px;color:rgba(255,255,255,.6)}
.foot-bottom a{font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:6px;min-height:44px}
.foot-bottom .ms{font-size:18px}
.foot .wrap{display:flex;flex-direction:column;gap:32px}

/* products */
.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pcard{padding:28px;display:flex;flex-direction:column;gap:14px;transition:transform .25s ease,background .25s ease}
.pcard:hover{transform:translateY(-4px)}
.pcard h3{font-size:30px;line-height:1.05}
.pcard p{font-size:15px;line-height:1.6;color:#3B4A43}
.pcard .btn{margin-top:auto;align-self:flex-start}
.pcard .chips{margin-top:2px}
.pcard.feat{background:#1E5641;color:#fff;position:relative}
.pcard.feat p{color:rgba(255,255,255,.84)}
.pcard.feat .most{align-self:flex-start;font-size:12px;font-weight:800;padding:5px 10px;border-radius:999px;border:1.5px solid #111;background:#E8CD84;color:#111}
.ico{width:52px;height:52px;border-radius:14px;border:1.5px solid #111;background:#E8CD84;display:flex;align-items:center;justify-content:center;color:#111}
.reel{background:#DDEBE3;border-top:1.5px solid #111}

/* custom builds */
.build{background:#1E5641;color:#fff;border-top:1.5px solid #111;border-bottom:1.5px solid #111}
.build .h2{color:#fff}
/* custom builds: compact tiles */
.cb{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.cb-item{display:flex;flex-direction:column;gap:6px;padding:18px;color:#111;text-decoration:none;transition:transform .25s ease,background .25s ease}
.cb-item:hover{transform:translateY(-3px);background:#FFFDF6}
.cb-item .ico{width:40px;height:40px;border-radius:12px;margin-bottom:4px}
.cb-item .ico .ms{font-size:20px}
.cb-item h3{font-size:22px;line-height:1.1}
.cb-item p{font-size:14px;line-height:1.45;color:#3B4A43}
.cb-go{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:14px;color:#1E5641}
.cb-go .ms{font-size:17px;transition:transform .2s ease}
.cb-item:hover .cb-go .ms{transform:translateX(3px)}
@media (max-width:1000px){.cb{grid-template-columns:repeat(6,minmax(0,1fr))}.cb-item{grid-column:span 2}.cb-item:nth-child(n+4){grid-column:span 3}}
@media (max-width:640px){.cb{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cb-item,.cb-item:nth-child(n+4){grid-column:auto;padding:14px;gap:4px}.cb-item:last-child{grid-column:1 / -1}.cb-item p{font-size:13px}.cb-item h3{font-size:19px}.cb-item .ico{width:34px;height:34px}.cb-go{display:none}}
.svc{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px}
.svc .card{padding:26px;display:flex;flex-direction:column;gap:12px;color:#111;transition:transform .25s ease,background .25s ease}
.svc .card:hover{transform:translateY(-4px);background:#FFFDF6}
.svc h3{font-size:28px;line-height:1.05}
.svc p{font-size:15px;line-height:1.55;color:#3B4A43}

/* work grid */
.filters{display:flex;flex-wrap:wrap;gap:8px}
.proj{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.proj .wcard .shot{aspect-ratio:16/9}
.proj .wbody{padding:20px 22px 22px}
.proj .wbody h3{font-size:26px}
.proj .more{margin-top:auto;display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;font-weight:800;color:#1E5641}
.proj .more .ms{font-size:18px}

/* floating whatsapp */
.float-wa{position:fixed;right:20px;bottom:20px;z-index:60;display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 20px 0 16px;border-radius:999px;border:1.5px solid #111;background:#25D366;color:#111;font-weight:800;font-size:15px;text-decoration:none;transition:transform .2s ease}
.float-wa:hover{color:#111;transform:translateY(-2px)}
.float-wa .ms{font-size:26px}

/* toast */
.snack{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:70;display:flex;align-items:center;gap:16px;min-height:52px;max-width:min(560px,calc(100vw - 32px));padding:8px 8px 8px 18px;border-radius:12px;background:#1E5641;color:#fff;font-size:15px;font-weight:600;border:1.5px solid #111}
.snack[hidden]{display:none}
.snack button{min-height:44px;padding:0 14px;border:0;border-radius:8px;background:transparent;color:#E8CD84;font-family:inherit;font-weight:800;font-size:14px;cursor:pointer}

/* ===== v2 redesign ===== */
.skip{position:absolute;left:-9999px;top:8px;z-index:100;padding:10px 16px;border-radius:8px;background:#E8CD84;color:#111;font-weight:800}
.skip:focus{left:8px}
.micro{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:rgba(255,255,255,.8);margin-top:-4px}
.micro .ms{font-size:18px;color:#E8CD84}

/* hero collage */
.collage{position:relative;padding:12px 0 12px 12px;width:100%}
.frame{border:1.5px solid #111;border-radius:16px;overflow:hidden;background:#fff}
.frame img,.frame video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center}
.phone{position:absolute;right:0;bottom:0;width:27%;min-width:110px;border:1.5px solid #111;border-radius:22px;overflow:hidden;background:#111;padding:6px;transform:rotate(3deg)}
.phone img{display:block;width:100%;height:auto;aspect-ratio:9/19.5;object-fit:cover;object-position:center;border-radius:16px}
.seal{position:absolute;left:-6px;top:-8px;width:88px;height:88px;border-radius:50%;border:1.5px solid #111;background:linear-gradient(135deg,#EFD9A0,#D9B86C);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#111;transform:rotate(-8deg)}
.seal b{font-size:32px;line-height:1;font-weight:400}
.seal span{font-size:11px;font-weight:800;line-height:1.15}

/* stats */
.statsec{padding:clamp(40px,5vw,64px) 0 0;background:#DDEBE3}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.stat{padding:24px 26px;display:flex;flex-direction:column;gap:6px}
.stat .num{font-size:clamp(36px,4vw,52px);line-height:1;color:#1E5641;font-variant-numeric:tabular-nums}
.stat .lab{font-size:14px;font-weight:700;color:#3B4A43;line-height:1.4}

/* products v2 */
.pcard{padding:0;gap:0;overflow:hidden}
.pmedia{aspect-ratio:16/9;border-bottom:1.5px solid #111;overflow:hidden;background:#EEF4F0;display:flex;align-items:center;justify-content:center}
.pmedia img{display:block;width:100%;height:100%;object-fit:cover;object-position:top left;transition:transform .5s ease}
.pcard:hover .pmedia img{transform:scale(1.04)}
.pmedia.ph{flex-direction:column;gap:8px;background:repeating-linear-gradient(135deg,#EEF4F0 0 14px,#E3ECE7 14px 28px);color:#1E5641}
.pmedia.ph .ms{font-size:52px}
.pmedia.ph small{font-size:12px;font-weight:700;color:#4A5A52}
.pbody{padding:24px 26px 26px;display:flex;flex-direction:column;gap:14px;flex:1}
.ptop{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ptag{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2A6A52}
.pcard.feat .ptag{color:#E8CD84}
.pcard .most{font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;border:1.5px solid #111;background:#E8CD84;color:#111}
.pcard.feat .pmedia.ph{background:repeating-linear-gradient(135deg,#14503C 0 14px,#1E5641 14px 28px);color:#E8CD84;border-bottom-color:#111}
.pcard.feat .pmedia.ph small{color:rgba(255,255,255,.7)}
.pcard[hidden]{display:none}
.pill .cnt{min-width:22px;height:22px;padding:0 6px;border-radius:999px;border:1px solid #111;background:#E8CD84;color:#111;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}

/* why */
.why{background:#F6EFD9;border-top:1.5px solid #111;border-bottom:1.5px solid #111}
.numlist{border-bottom:1.5px solid #111}
.num-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;padding:24px 0;border-top:1.5px solid #111}
.num-row .n{font-size:46px;line-height:1;color:#1E5641}
.num-row h3{font-size:28px;line-height:1.1;margin-bottom:8px}
.num-row p{font-size:15px;line-height:1.6;color:#3B4A43}

/* work marquee: moves left to right */
.mq{position:relative;overflow:hidden;margin-top:12px;padding:8px 0 16px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.mq-track{display:flex;width:max-content;animation:mqr 90s linear infinite}
@keyframes mqr{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.mq .wcard{width:min(360px,80vw);margin-right:20px;flex:none}
/* products marquee: moves right-to-left (opposite to "Our work") */
.mq-prod{margin-top:26px}
.mq-prod .mq-track{animation:mq 80s linear infinite}
.mq-prod .pcard{width:min(340px,82vw);margin-right:20px;flex:none}
.mq-prod .pcard h3{font-size:25px}
.mq-prod .pcard p{font-size:14px;line-height:1.55}
.mq-prod .pbody{padding:20px 22px 22px;gap:10px}
.mq-prod .pmedia.stage{padding-top:18px}
.mq .shot{aspect-ratio:16/10;overflow:hidden;position:relative}
.mq .shot img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.mq .shot.tall{display:flex;justify-content:center;align-items:flex-start;padding-top:20px;background:radial-gradient(70% 90% at 50% 100%,rgba(232,205,132,.45),transparent 70%),linear-gradient(160deg,#E9F1EA,#D6E5DA)}
.mq .shot.tall.dark{background:radial-gradient(60% 80% at 50% 90%,rgba(229,57,53,.45),transparent 70%),linear-gradient(160deg,#1A1A1A,#0B0B0B)}
.pmock{position:relative;width:44%;aspect-ratio:9/19.5;flex:none;padding:5px;border-radius:28px;background:#121212;box-shadow:0 0 0 1.5px #3a3a3a inset,0 18px 40px -12px rgba(0,0,0,.45)}
.pmock::before{content:"";position:absolute;top:10px;left:50%;width:30%;height:9px;transform:translateX(-50%);border-radius:9px;background:#121212;z-index:1}
.mq .pmock img{width:100%;height:100%;object-fit:cover;object-position:top center;border-radius:23px;display:block}
.mq .wcard:hover .pmock{transform:translateY(-6px)}
.pmock{transition:transform .3s ease}
.mq .shot.web{display:flex;justify-content:center;align-items:flex-start;padding-top:22px;background:radial-gradient(70% 90% at 50% 100%,rgba(232,205,132,.45),transparent 70%),linear-gradient(160deg,#E9F1EA,#D6E5DA)}
.bmock{width:90%;flex:none;border-radius:10px 10px 0 0;overflow:hidden;background:#fff;box-shadow:0 0 0 1.5px #1a1a1a,0 18px 40px -12px rgba(0,0,0,.45);transition:transform .3s ease}
.mq .wcard:hover .bmock{transform:translateY(-6px)}
.bbar{display:flex;align-items:center;gap:5px;height:20px;padding:0 9px;background:#1E1E1E}
.bbar i{width:7px;height:7px;border-radius:50%;background:#FF5F57;flex:none}
.bbar i:nth-child(2){background:#FEBC2E}
.bbar i:nth-child(3){background:#28C840}
.burl{flex:1;height:9px;margin-left:10px;max-width:55%;border-radius:5px;background:#3A3A3A}
.bscreen{aspect-ratio:16/10;overflow:hidden}
/* mock dashboard UI (scales with the card via container units) */
.bscreen.ui{container-type:inline-size;display:flex;background:#F5F7F6;color:#1B2B24;text-align:left;font-weight:500}
.bscreen.ui>*{font-size:2.1cqw;line-height:1.25}
.ui-side{width:24%;flex:none;display:flex;flex-direction:column;gap:.35em;padding:1em .7em;background:#1E5641;color:rgba(255,255,255,.75)}
.ui-logo{display:flex;align-items:center;gap:.45em;color:#fff;font-size:1.15em;font-weight:800;margin-bottom:.6em}
.ui-logo i{width:1em;height:1em;border-radius:50%;background:radial-gradient(circle at 35% 35%,#FFF4CC,#C99A2E)}
.ui-nav{display:flex;align-items:center;gap:.45em;padding:.45em .5em;border-radius:.5em;white-space:nowrap;overflow:hidden}
.ui-nav .ms{font-size:1.2em}
.ui-nav.on{background:rgba(232,205,132,.18);color:#E8CD84;font-weight:700}
.ui-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.8em;padding:1em 1.1em}
.ui-head{display:flex;align-items:center;justify-content:space-between;gap:.5em}
.ui-head b{font-size:1.3em;font-weight:800}
.ui-btn{padding:.4em .8em;border-radius:99px;background:#1E5641;color:#fff;font-weight:700;white-space:nowrap}
.ui-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.6em}
.ui-stats div{display:flex;flex-direction:column;gap:.15em;padding:.6em .7em;border-radius:.6em;background:#fff;box-shadow:0 0 0 1px #E2E8E4}
.ui-stats small{font-size:.85em;color:#6B7B73;white-space:nowrap}
.ui-stats b{font-size:1.9em;font-weight:800;line-height:1;color:#1E5641}
.ui-stats em{font-style:normal;font-size:.5em;color:#6B7B73}
.ui-list{display:flex;flex-direction:column;gap:.45em;min-width:0}
.ui-row{display:flex;align-items:center;gap:.6em;padding:.5em .6em;border-radius:.6em;background:#fff;box-shadow:0 0 0 1px #E2E8E4}
.ui-time{font-weight:800;color:#1E5641;width:3em;flex:none}
.ui-av{width:2.2em;height:2.2em;flex:none;border-radius:50%;display:grid;place-items:center;background:#E8CD84;color:#111;font-size:.85em;font-weight:800}
.ui-who{flex:1;min-width:0;display:flex;flex-direction:column}
.ui-who b,.ui-who small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ui-who small{color:#6B7B73;font-size:.85em}
.ui-pill{padding:.25em .65em;border-radius:99px;font-size:.85em;font-weight:700;white-space:nowrap;background:#E3F3EA;color:#1F7A4A}
.ui-pill.blue{background:#E4EEFB;color:#2C5FA8}
.ui-pill.gold{background:#FBF1D6;color:#8A6417}
.ui-pill.red{background:#FBE5E3;color:#B23A2E}
.ui-split{display:grid;grid-template-columns:1fr 1.25fr;gap:.7em;min-height:0}
.ui-chart{display:flex;align-items:flex-end;gap:.5em;padding:.7em .7em .4em;border-radius:.6em;background:#fff;box-shadow:0 0 0 1px #E2E8E4;height:9.5em}
.ui-chart span{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:.3em}
.ui-chart i{width:100%;max-width:1.6em;border-radius:.3em .3em 0 0;background:linear-gradient(#2E785A,#1E5641)}
.ui-chart small{font-size:.75em;color:#6B7B73}
.ui-tags{display:flex;flex-wrap:wrap;gap:.4em}
.ui-tags span{padding:.3em .7em;border-radius:99px;background:#E3F3EA;color:#1F7A4A;font-weight:700;font-size:.85em}
.ui-doc{font-size:1.5em;color:#1E5641;flex:none}
.ui-steps{display:flex;gap:.3em;flex:none}
.ui-steps i{width:.6em;height:.6em;border-radius:50%;background:#D5DED9}
.ui-steps i.on{background:#2E785A}
/* product cards: mock screens */
.pmedia.stage{position:relative;align-items:flex-start;padding-top:22px;background:radial-gradient(70% 90% at 50% 100%,rgba(232,205,132,.45),transparent 70%),linear-gradient(160deg,#E9F1EA,#D6E5DA)}
.pcard.feat .pmedia.stage{background:radial-gradient(70% 90% at 50% 100%,rgba(232,205,132,.35),transparent 70%),linear-gradient(160deg,#2A6A52,#1E5641)}
.pmedia.stage .bmock{width:88%}
.pmedia.stage .pmock{width:40%}
.pcard:hover .pmedia.stage .bmock,.pcard:hover .pmedia.stage .pmock{transform:translateY(-6px)}
/* WhatsApp chat mock */
.wa{container-type:inline-size;width:100%;height:100%;border-radius:23px;overflow:hidden;display:flex;flex-direction:column;background:#EFE7DC;text-align:left}
.wa>*{font-size:5.4cqw;line-height:1.3}
.wa-head{display:flex;align-items:center;gap:.5em;padding:2.4em .8em .6em;background:#1F6E54;color:#fff}
.wa-head b{display:block;font-weight:800}
.wa-head small{font-size:.8em;opacity:.8}
.wa-av{width:2em;height:2em;border-radius:50%;display:grid;place-items:center;background:#E8CD84;color:#111;font-weight:800;flex:none}
.wa-body{display:flex;flex-direction:column;gap:.5em;padding:.7em .6em}
.wa-day{align-self:center;font-size:.75em;padding:.15em .7em;border-radius:6px;background:#E1EEF3;color:#4A5A52;font-weight:700}
.pcard .wa .wa-body p{font-size:1em;line-height:1.3;position:relative;max-width:86%;margin:0;padding:.45em .6em 1.1em;border-radius:.7em;font-weight:500;color:#111;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.wa-body small{position:absolute;right:.6em;bottom:.25em;font-size:.65em;color:#6B7B73}
.wa-in{align-self:flex-start;background:#fff;border-top-left-radius:.15em}
.wa-out{align-self:flex-end;background:#D7F5C7;border-top-right-radius:.15em;min-width:5.2em}
.mq .bscreen img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.mq .shot.promo{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:20px 22px;color:#fff;background:radial-gradient(120% 90% at 100% 0%,rgba(232,205,132,.28),transparent 55%),linear-gradient(140deg,#1E5641,#22604A 60%,#17473A)}
.promo-top{display:flex;align-items:center;gap:8px;color:#E8CD84}
.promo-top .ms{font-size:22px}
.promo-kick{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.promo-org{font-size:clamp(24px,2.4vw,30px);line-height:1.05;font-weight:400;color:#fff}
.promo-place{font-size:13px;color:rgba(255,255,255,.72)}
.promo-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.promo-tags span{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;border:1px solid rgba(232,205,132,.5);color:#F6EFD9}
.mq .wbody p{min-height:3.2em}

/* footer v2 */
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr 1.2fr;gap:32px}
.foot-grid address span{color:rgba(255,255,255,.8)}
.foot-grid h4{margin:0 0 14px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#E8CD84}
.foot-grid>div{display:flex;flex-direction:column;gap:10px;font-size:15px}
.foot-tag{font-size:15px;line-height:1.6;color:rgba(255,255,255,.7);max-width:320px}
.foot-soc{display:flex;gap:18px;font-size:15px}

/* floating actions */
.float{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;flex-direction:column;gap:12px;align-items:flex-end;transition:opacity .2s ease,transform .2s ease}
.float.away{opacity:0;pointer-events:none;transform:translateY(12px)}
.float .float-wa{position:static}
.float-call{width:56px;height:56px;border-radius:50%;border:1.5px solid #111;background:#1E5641;color:#E8CD84;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .2s ease}
.float-call:hover{color:#FFF4CC;transform:translateY(-2px)}
.float-call .ms{font-size:26px}

@media (max-width:1020px){
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .collage{max-width:640px;margin:0 auto;width:100%;padding-right:12px}
}
@media (max-width:620px){
  .float{right:16px;bottom:16px}
  .num-row{grid-template-columns:52px minmax(0,1fr)}
  .num-row .n{font-size:36px}
  .foot-grid{grid-template-columns:minmax(0,1fr)}
  .seal{width:84px;height:84px}.seal b{font-size:30px}
}
/* generic illustrated mockups (no client screens) */
.mkwrap{position:relative;aspect-ratio:16/10}
.mk{position:absolute;inset:0;padding:14px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(135deg,#DDEBE3,#F6EFD9)}
.mk-row{display:flex;gap:10px;min-height:0}
.mk-t{flex:1;height:38px;border:1.5px solid #111;border-radius:10px;background:#fff;display:block}
.mk-t.g{background:#E8CD84}
.mk-bars{flex:1.4;display:flex;align-items:flex-end;gap:6px;border:1.5px solid #111;border-radius:10px;background:#fff;padding:10px}
.mk-bars i{flex:1;background:#C9D8CF;border:1px solid #111;border-bottom:0;display:block}
.mk-list{flex:1;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:4px}
.mk-line{display:block;height:8px;border-radius:4px;background:#C9D8CF}
.mk-line.dk{height:11px;background:#1E5641}
.mk-bar{display:flex;gap:5px;padding:2px}
.mk-bar i{width:8px;height:8px;border-radius:50%;border:1px solid #111;background:#E8CD84;display:block}
.mk-btn{display:block;width:34%;height:16px;border-radius:999px;border:1.5px solid #111;background:#E8CD84;margin-top:4px}
.mk-img{flex:1;border:1.5px solid #111;border-radius:10px;background:linear-gradient(135deg,#fff,#E8CD84);display:block}
.mk-phone{margin:0 auto;width:36%;height:100%;border:1.5px solid #111;border-radius:16px;background:#fff;padding:8px;display:flex;flex-direction:column;gap:7px}
.mk-top{display:block;height:14px;border-radius:6px;background:#1E5641}
.mk-card{display:block;flex:1;border:1.5px solid #111;border-radius:8px;background:#F6EFD9}
.mk-card.g{background:#E8CD84}
.mk-grid{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mk-grid i{border:1.5px solid #111;border-radius:8px;background:#fff;display:block}
.mk-grid i.g{background:#E8CD84}.mk-grid i.d{background:#1E5641}
.phone-screen{display:flex;flex-direction:column;gap:7px;padding:10px;aspect-ratio:9/19.5;border-radius:16px;background:linear-gradient(160deg,#DDEBE3,#F6EFD9)}
.phone-screen .mk-card{flex:0 0 18%}
.mk-dots{display:flex;gap:6px}
.mk-dots i{width:34px;height:8px;border-radius:4px;background:#C9D8CF;border:1px solid #111;display:block}
.mk-dots i:nth-child(2){background:#E8CD84}
.pcard.feat .mk-dots i{border-color:#111}
.mq .shot{background:#E3ECE7;display:block}
@media (prefers-reduced-motion:reduce){
  .mq{-webkit-mask-image:none;mask-image:none;overflow-x:auto}
  .mq-track{animation:none}
  .mq-track .clone{display:none}

  .pcard:hover .pmedia img{transform:none}
}
@media (prefers-reduced-motion:reduce){.shine,.marq,.playbig::before{animation:none}*{transition:none !important}html{scroll-behavior:auto}}
@media (max-width:1020px){
  .pgrid,.proj{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .player,.audit{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:900px){
  .gpanel{top:auto;width:100%;height:34%;border-left:0;border-top:1.5px solid #111}
  .hero,.split,.work{grid-template-columns:minmax(0,1fr)}
  .three{grid-template-columns:minmax(0,1fr)}
  .navlinks,.navcta{display:none !important}
  .menu-btn{display:inline-flex}
}
@media (max-width:620px){
  .pgrid,.proj{grid-template-columns:minmax(0,1fr)}
  .float-wa-txt{display:none}
  .float-wa{padding:0 15px;right:16px;bottom:16px}
  .snack{bottom:88px}
  .steps,.two{grid-template-columns:minmax(0,1fr)}
  .q{flex-direction:column;align-items:flex-start}
  .scene{padding:8% 6% 18%}
}
#products .sec-title{max-width:900px}

/* =========================================================
   RESPONSIVE: iPad keeps the laptop layout, phones stay compact
   ========================================================= */
.chap-list{display:flex;flex-direction:column;gap:4px}

/* ---- iPad / tablet (761–1100px) ---- */
@media (min-width:761px) and (max-width:1100px){
  .faq-help{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:20px;row-gap:4px;align-items:center;padding:20px 22px}
  .faq-help-ico{grid-row:1 / 3}
  .faq-help h3{grid-column:2;font-size:26px}
  .faq-help p{grid-column:2}
  .faq-help .btn{grid-column:3;grid-row:1}
  .faq-help-row{grid-column:3;grid-row:2}
}
@media (min-width:761px) and (max-width:1020px){
  .player{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:18px}
  .chapters{padding:10px}
  .chap{padding:10px 12px;gap:10px}
  .chap .txt span{display:none}
  .chapters-note{display:none}
  .audit{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:22px}
}
@media (min-width:761px) and (max-width:900px){
  /* hero side by side like on laptop */
  .hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:26px}
  .gpanel{top:0;bottom:0;right:0;width:36%;height:auto;border-top:0;border-left:1.5px solid #111}
  .hero h1{font-size:40px}
  .lede{font-size:15.5px}
  .hero .btn{padding:0 16px;font-size:14px}
  .triad{gap:16px}
  .triad .serif{font-size:19px}
  .triad span:last-child{font-size:12.5px}
  .collage{padding:0;max-width:none}
}

/* ---- Phone (≤760px) ---- */
@media (max-width:760px){
  /* hero */
  .hero-copy{gap:16px}
  .hero h1{font-size:clamp(30px,8.6vw,38px)}
  .lede{font-size:15.5px;line-height:1.55}
  .cta-row{flex-wrap:nowrap;gap:8px}
  .cta-row .btn{flex:1 1 0;min-width:0;justify-content:center;padding:0 10px;min-height:48px;font-size:14px;white-space:nowrap}
  .cta-row .btn .ms{font-size:18px}
  .triad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:14px}
  .triad .serif{font-size:19px}
  .triad span:last-child{font-size:11.5px;line-height:1.35}
  .collage{padding:4px 0 0}
  .strip{padding:10px 0}
  .marq{font-size:15px;gap:30px}

  /* video: chapters become a swipeable row */
  .chapters{padding:10px}
  .chapters-title,.chapters-note{display:none}
  .chap-list{flex-direction:row;overflow-x:auto;gap:8px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .chap-list::-webkit-scrollbar{display:none}
  .chap{flex:none;width:auto;align-items:center;padding:8px 14px 8px 8px;scroll-snap-align:start;border-color:#D5DED9}
  .chap .n{width:30px;height:30px}
  .chap strong{font-size:14px;white-space:nowrap}
  .chap .txt span{display:none}


  /* find your fit: question and Yes/No on one line */
  .q{flex-direction:row;align-items:center;gap:12px;padding:14px 0}
  .q>span{font-size:15px}

  /* FAQ */
  .faq-q{font-size:15px;padding:12px}
  .faq-ico{width:34px;height:34px}
  .faq-help{padding:20px}

  /* footer: two columns instead of one long list */
  .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 18px}
  .foot-grid>div:first-child{grid-column:1 / -1}
  .foot-grid>div{font-size:14px;overflow-wrap:anywhere}
  .foot-mark{font-size:22vw}

  /* floating buttons a little smaller */
  .float{gap:10px}
  .float-call{width:48px;height:48px}
  .float-call .ms{font-size:22px}
  .float-wa{min-height:48px}
}
@media (min-width:761px) and (max-width:900px){
  .triad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
}
@media (min-width:761px) and (max-width:1020px){
  .foot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px}
  .foot-grid>div:first-child{grid-column:1 / -1}
  .foot-grid>div{font-size:14px}
}

/* ---- never allow sideways scrolling on phones ---- */
html,body{max-width:100%;overflow-x:hidden}
@supports (overflow:clip){html,body{overflow-x:clip}}
img,video,svg{max-width:100%}

/* ---- narrow phones (most Android: 360px, small: 320px) ---- */
@media (max-width:400px){
  .cta-row .btn .ms{display:none}
  .cta-row .btn{padding:0 8px;font-size:13.5px}
  .badge{font-size:12.5px;padding:6px 12px}
  .triad .serif{font-size:17px}
  .triad span:last-child{font-size:11px}
  .micro{font-size:13px}
  .sec .wrap,.wrap{padding-left:16px;padding-right:16px}
}
@media (max-width:340px){
  .cta-row{flex-wrap:wrap}
  .cta-row .btn{flex:1 1 100%}
  .triad{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .triad .serif{font-size:16px}
}

/* =========================================================
   PHONE: shorter page, same look
   ========================================================= */
.faq-more{display:none}
@media (max-width:760px){
  .sec{padding:30px 0}
  .stack{gap:18px}
  .h2{font-size:clamp(24px,7vw,30px)}
  .kick{font-size:13px}
  .reel-note,.intro{font-size:14.5px}

  /* hero */
  .hero{gap:18px;padding-top:22px;padding-bottom:22px}
  .micro{display:none}
  .lede{font-size:15px}

  /* video */
  #reel .reel-note{display:none}


  /* our work */
  #work .fine{display:none}
  .mq .wcard{width:min(290px,78vw)}
  .mq .wbody{padding:16px;gap:8px}
  .wbody h3{font-size:22px}
  .mq .wbody p{font-size:13.5px;min-height:0}

  /* find your fit */
  .check .intro{display:none}
  .q{padding:11px 0}
  .q>span{font-size:14px;line-height:1.35}
  .seg button{padding:8px 14px;font-size:13px}
  .result{padding:18px;gap:12px}
  .verdict{font-size:21px}

  /* FAQ: first 5 questions, rest behind a button */
  .faq-cols .faq+.faq{display:none}
  .faq-cols.all .faq+.faq{display:flex}
  .faq{gap:8px}
  .faq-cols{gap:8px}
  .faq-ico{display:none}
  .faq-q{padding:12px 14px;font-size:14.5px}
  .faq-a{padding:0 14px 14px;font-size:14px}
  .faq-more{display:inline-flex;align-self:center;align-items:center;gap:6px;margin:4px auto 0}
  .faq-layout{gap:16px}
  .faq-help{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:16px}
  .faq-help-ico,.faq-help p{display:none}
  .faq-help h3{font-size:22px}
  .faq-help .btn{grid-column:1 / -1;min-height:46px}
  .faq-help-row{grid-column:1 / -1}

  /* contact: short and to the point */
  .contact .split{gap:18px}
  .contact .copy>p,.contact .copy>.btn{display:none}
  .contact .copy{gap:14px}
  .facts{font-size:14px;gap:8px}
  .form-card{padding:18px}
  .form{gap:12px}
  .form .two{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
  .tf input,.tf textarea{font-size:15px;padding:14px 12px 10px}
  .tf label{font-size:14px;top:13px;white-space:nowrap;max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis}
  .tf textarea{min-height:72px}
  .pills{flex-wrap:wrap;gap:6px}
  .pill{min-height:38px;padding:0 12px;font-size:13px}
  .pills::-webkit-scrollbar{display:none}
  .pills>*{flex:none}

  /* footer */
  .foot{padding-top:28px}
  .foot-grid>div:nth-child(3){display:none}
  .foot-tag{font-size:13.5px}
  .foot-mark{font-size:24vw;margin:6px 0 2px}
}
@media (max-width:760px){
  .form .two+.two{grid-template-columns:minmax(0,1fr)}
  .foot-mark{display:none}
  .foot-bottom{margin-top:22px}
}

/* hero explainer video */
.hero-video{position:relative;background:#1E5641;aspect-ratio:16/9}
.hero-video video{display:block;width:100%;height:100%;aspect-ratio:16/9;object-fit:cover}
.vid-sound{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:8px;border:1.5px solid #111;cursor:pointer;font-family:inherit;font-weight:800;color:#111;background:#E8CD84;box-shadow:0 8px 20px -8px rgba(0,0,0,.5);transition:transform .2s ease,background .2s ease}
.vid-sound{right:14px;top:14px;padding:8px 14px 8px 10px;border-radius:999px;font-size:13.5px;animation:vidPulse 2.4s ease-in-out infinite}
.vid-sound .ms{font-size:20px}
.vid-sound.on{animation:none;background:#fff}
.vid-sound:hover{transform:translateY(-1px)}
@keyframes vidPulse{0%,100%{box-shadow:0 0 0 0 rgba(232,205,132,.7),0 8px 20px -8px rgba(0,0,0,.5)}50%{box-shadow:0 0 0 8px rgba(232,205,132,0),0 8px 20px -8px rgba(0,0,0,.5)}}
@media (prefers-reduced-motion:reduce){.vid-sound{animation:none}}
@media (max-width:760px){.vid-sound{right:10px;top:10px;padding:6px 12px 6px 8px;font-size:12.5px}}
/* FAQ without the side help card: questions use the full width */
.faq-layout{grid-template-columns:minmax(0,1fr)}

/* floating contact buttons: real email, phone and WhatsApp icons */
.fab{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#fff;text-decoration:none;box-shadow:0 10px 24px -8px rgba(0,0,0,.45);transition:transform .2s ease,box-shadow .2s ease}
.fab svg{width:26px;height:26px;display:block}
.fab:hover{color:#fff;transform:translateY(-3px) scale(1.04);box-shadow:0 14px 28px -10px rgba(0,0,0,.5)}
.fab-mail{background:#EA4335}
.fab-call{background:#1A73E8}
.fab-wa{background:#25D366}
.fab-wa svg{width:30px;height:30px}
@media (max-width:760px){.fab{width:50px;height:50px}.fab svg{width:23px;height:23px}.fab-wa svg{width:27px;height:27px}}
