/* ═══════════════════════════════════════════════
   KUMBR STUDIO v4 — White Dominant, Award-Worthy
   ═══════════════════════════════════════════════ */
@font-face{font-family:'Gaela';src:url('../fonts/Gaela.ttf') format('truetype');font-weight:300 800;font-display:swap}

:root{
  --gold:#b49a6a;--gold-rgb:180,154,106;
  --dark:#1d1d1b;--dark-rgb:29,29,27;
  --light:#f2f4f2;--light-rgb:242,244,242;
  --white:#fff;--black:#000;
  --font:'Gaela','Syne','Space Grotesk',sans-serif;
  --font-body:'Space Grotesk','Gaela',sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
  --ease-smooth:cubic-bezier(.76,0,.24,1);
  --pad:clamp(20px,4vw,60px);
  --header-h:80px;
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px;-webkit-font-smoothing:antialiased}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}

body{
  font-family:var(--font);
  background:var(--white);
  color:var(--dark);
  overflow-x:hidden;
  cursor:none;
}
a{text-decoration:none;color:inherit;cursor:none}
button{background:none;border:none;cursor:none;font-family:inherit;color:inherit}
img{max-width:100%;display:block}
ul,ol{list-style:none}
::selection{background:var(--gold);color:var(--white)}
.container{max-width:1400px;margin:0 auto;padding:0 var(--pad)}

/* ═══ CURSOR ═══ */
.cursor{position:fixed;top:0;left:0;z-index:99999;pointer-events:none;mix-blend-mode:difference;will-change:transform}
.cursor-dot{position:absolute;width:8px;height:8px;background:var(--white);border-radius:50%;transform:translate3d(-50%,-50%,0);transition:transform .15s var(--ease);will-change:transform}
.cursor-ring{position:absolute;width:40px;height:40px;border:1px solid rgba(255,255,255,.5);border-radius:50%;transform:translate3d(-50%,-50%,0);transition:all .3s var(--ease);will-change:transform}
.cursor.hover .cursor-ring{width:80px;height:80px;border-color:var(--gold);background:rgba(var(--gold-rgb),.1)}
.cursor.hover .cursor-dot{transform:translate(-50%,-50%) scale(0)}

/* ═══ PRELOADER ═══ */
.preloader{position:fixed;inset:0;z-index:10000;background:var(--dark);display:flex;align-items:center;justify-content:center}
.preloader-content{display:flex;align-items:center;justify-content:center;position:relative;z-index:10002}
#heroCanvas.canvas-preloader-mode{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:10001;pointer-events:none}
.pl-ring-wrap{position:relative;width:clamp(160px,18vw,220px);height:clamp(160px,18vw,220px)}
.pl-ring-svg{width:100%;height:100%;transform:rotate(-90deg);opacity:0}
.pl-ring-bg{fill:none;stroke:rgba(255,255,255,.06);stroke-width:.5}
.pl-ring-fill{fill:none;stroke:var(--gold);stroke-width:.8;stroke-dasharray:565.49;stroke-dashoffset:565.49;stroke-linecap:round}
.pl-logo-img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) translateY(6px);height:clamp(22px,3vw,32px);width:auto;opacity:0;filter:blur(4px)}
.pl-counter{position:absolute;font-family:var(--font-body);font-size:clamp(9px,1vw,11px);letter-spacing:.15em;color:var(--gold);font-weight:300;opacity:0;white-space:nowrap}

/* ═══ HEADER ═══ */
.header{position:fixed;top:0;left:0;width:100%;height:var(--header-h);z-index:1000;padding:0 var(--pad);transition:background .4s,backdrop-filter .4s}
.header.scrolled{background:rgba(255,255,255,.9);backdrop-filter:blur(20px)}
.header.dark-mode{color:var(--light)}
.header.dark-mode.scrolled{background:rgba(var(--dark-rgb),.9)}
.nav{display:flex;align-items:center;justify-content:space-between;height:100%}
.nav-logo{display:flex;align-items:center}
.nav-logo-img{height:clamp(18px,2vw,24px);width:auto;display:block}
.nav-logo-white{display:none}
.header.dark-mode .nav-logo-img:not(.nav-logo-white){display:none}
.header.dark-mode .nav-logo-white{display:block}
.nav-center{position:absolute;left:50%;transform:translateX(-50%)}
.nav-tagline{font-size:10px;letter-spacing:.3em;text-transform:uppercase;opacity:.4;font-weight:300}
.nav-menu-btn{display:flex;align-items:center;gap:12px;padding:10px 0}
.menu-btn-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:300}
.menu-btn-lines{display:flex;flex-direction:column;gap:5px;width:24px}
.menu-line{height:1.5px;background:currentColor;transition:all .4s var(--ease)}
.menu-line:last-child{width:60%;margin-left:auto}
.nav-menu-btn:hover .menu-line:last-child{width:100%}
.nav-menu-btn.active{opacity:0;pointer-events:none}

/* ═══ FULLSCREEN MENU ═══ */
.fullscreen-menu{position:fixed;inset:0;z-index:1001;pointer-events:none;visibility:hidden}
.fullscreen-menu.open{pointer-events:all;visibility:visible}
.menu-overlay{position:absolute;inset:0;background:var(--dark);opacity:0;transition:opacity .6s var(--ease)}
.fullscreen-menu.open .menu-overlay{opacity:.98}
.menu-close{position:absolute;top:24px;right:var(--pad);z-index:10;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:var(--light);opacity:0;transform:rotate(-90deg) scale(.5);transition:all .5s var(--ease) .3s}
.fullscreen-menu.open .menu-close{opacity:1;transform:rotate(0deg) scale(1)}
.menu-close:hover{border-color:var(--gold);color:var(--gold);transform:rotate(90deg) scale(1.1)}
.menu-content{position:relative;z-index:2;display:flex;height:100%;padding:120px var(--pad) 60px;color:var(--light)}
.menu-left{flex:1;display:flex;align-items:center}
.menu-links{display:flex;flex-direction:column;gap:6px}
.menu-link{display:flex;align-items:center;gap:20px;padding:10px 0;opacity:0;transform:translateY(50px);transition:all .5s var(--ease)}
.fullscreen-menu.open .menu-link{opacity:1;transform:translateY(0)}
.fullscreen-menu.open .menu-link:nth-child(1){transition-delay:.15s}
.fullscreen-menu.open .menu-link:nth-child(2){transition-delay:.2s}
.fullscreen-menu.open .menu-link:nth-child(3){transition-delay:.25s}
.fullscreen-menu.open .menu-link:nth-child(4){transition-delay:.3s}
.fullscreen-menu.open .menu-link:nth-child(5){transition-delay:.35s}
.ml-idx{font-size:11px;color:var(--gold);letter-spacing:.1em;min-width:30px;font-weight:300}
.ml-text{font-size:clamp(32px,5.5vw,64px);font-weight:300;transition:color .3s}
.menu-link:hover .ml-text,.menu-link.active .ml-text{color:var(--gold)}
.menu-right{width:280px;display:flex;align-items:flex-end;padding-bottom:40px;opacity:0;transition:opacity .5s var(--ease) .35s}
.fullscreen-menu.open .menu-right{opacity:1}
.menu-info{display:flex;flex-direction:column;gap:24px}
.mi-label{display:block;font-size:9px;letter-spacing:.3em;text-transform:uppercase;opacity:.3;margin-bottom:6px;font-weight:300}
.mi-value{font-size:13px;font-weight:300;display:block;transition:color .3s}
.mi-value:hover{color:var(--gold)}
.mi-socials{display:flex;flex-direction:column;gap:4px}
.mi-socials a{font-size:13px;font-weight:300;transition:color .3s}
.mi-socials a:hover{color:var(--gold)}

/* ═══ HERO ═══ */
.hero{min-height:100vh;display:flex;padding:var(--header-h) var(--pad) 0;position:relative;overflow:hidden}
.hero-left{flex:1;display:flex;flex-direction:column;justify-content:center;padding-right:40px;z-index:2}
.hero-label{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:40px;font-weight:300;opacity:0;display:none}
.hero-title{margin-bottom:32px;position:relative}
.hero-line{overflow:hidden}
.hw{display:inline-block;font-size:clamp(48px,7.5vw,110px);font-weight:800;line-height:1.15;letter-spacing:-.04em;opacity:0;transform:translateY(110%);position:relative;cursor:default;color:var(--dark);transition:color .5s ease,filter .5s ease}
.hw.hw-gold{color:var(--gold);filter:drop-shadow(0 2px 18px rgba(180,154,106,.18))}
.hero-desc{max-width:420px;font-family:var(--font-body);font-size:clamp(14px,1.3vw,17px);line-height:1.8;color:rgba(var(--dark-rgb),.5);font-weight:300;opacity:0}
.hero-desc em{color:var(--gold);font-style:italic}
.hero-scroll{display:flex;align-items:center;gap:14px;margin-top:40px;opacity:0}
.hs-line{width:50px;height:1px;background:var(--gold);position:relative;overflow:hidden}
.hs-line::after{content:'';position:absolute;inset:0;background:var(--dark);animation:scrollAnim 2s ease-in-out infinite}
@keyframes scrollAnim{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
.hs-text{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:rgba(var(--dark-rgb),.3);font-weight:300}

.hero-right{width:50%;position:relative;display:flex;align-items:center;justify-content:center}
#heroCanvas{width:100%;height:100%;position:absolute;inset:0}

/* ═══ SECTION COMMON ═══ */
.section{padding:clamp(80px,12vh,160px) 0;position:relative}
.section-tag{display:inline-block;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-weight:300;margin-bottom:24px}
.sec-title{font-size:clamp(32px,5vw,56px);font-weight:700;letter-spacing:-.03em;margin-bottom:60px}

/* ═══ MARQUEE ═══ */
.marquee-section{padding:24px 0;border-top:1px solid rgba(var(--dark-rgb),.08);border-bottom:1px solid rgba(var(--dark-rgb),.08);overflow:hidden}
.marquee-track{display:flex;width:max-content;animation:marquee 25s linear infinite}
.marquee-content{display:flex;align-items:center;gap:30px;padding-right:30px;flex-shrink:0}
.marquee-content span{font-size:clamp(13px,1.2vw,16px);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:rgba(var(--dark-rgb),.35);font-weight:300}
.mq-dot{font-size:5px;color:var(--gold)}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ═══ ABOUT ═══ */
.sec-about{background:var(--white)}
.about-grid{max-width:1000px}
.about-text{font-size:clamp(22px,3vw,40px);font-weight:300;line-height:1.5;color:rgba(var(--dark-rgb),.75)}
.about-text em{color:var(--gold);font-style:italic;font-weight:400}
.about-stats-inline{display:flex;align-items:center;gap:clamp(20px,3vw,40px);margin-top:50px;padding-top:40px;border-top:1px solid rgba(var(--dark-rgb),.08)}
.stat-inline{display:flex;align-items:baseline;gap:6px}
.stat-num{font-size:clamp(36px,5vw,60px);font-weight:700;color:var(--dark);line-height:1}
.stat-plus{font-size:clamp(20px,3vw,36px);font-weight:300;color:var(--gold);display:inline}
.stat-label{font-size:clamp(12px,1.2vw,15px);letter-spacing:.1em;text-transform:uppercase;color:rgba(var(--dark-rgb),.3);font-weight:300;margin-left:4px}
.stat-sep{width:1px;height:40px;background:rgba(var(--dark-rgb),.08);flex-shrink:0}

/* ═══ SOLUTIONS ═══ */
.sec-solutions{background:var(--white);padding-bottom:0}
.solutions-wrap{position:relative}
.solutions-track{display:flex;gap:24px;padding:0 var(--pad) 80px;will-change:transform}
.sol-card{flex-shrink:0;width:clamp(300px,28vw,400px);padding:clamp(28px,3vw,40px);border:1px solid rgba(var(--dark-rgb),.08);border-radius:16px;display:flex;flex-direction:column;min-height:clamp(380px,50vh,500px);transition:all .5s var(--ease);position:relative;overflow:hidden;background:var(--white)}
.sol-card::before{content:'';position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,var(--gold) 0%,transparent 70%);opacity:0;transition:opacity .5s;pointer-events:none}
.sol-card:hover::before{opacity:.03}
.sol-card:hover{border-color:rgba(var(--gold-rgb),.3);transform:translateY(-8px)}
.sol-num{font-size:11px;letter-spacing:.2em;color:var(--gold);font-weight:300}
.sol-name{font-size:clamp(24px,2.5vw,34px);font-weight:700;margin-top:16px;letter-spacing:-.02em}
.sol-list{margin-top:auto;padding-top:24px;display:flex;flex-direction:column;gap:10px}
.sol-list li{font-family:var(--font-body);font-size:clamp(12px,1.1vw,14px);color:rgba(var(--dark-rgb),.4);font-weight:300;padding-left:16px;position:relative;transition:color .3s}
.sol-list li::before{content:'';position:absolute;left:0;top:50%;width:6px;height:1px;background:var(--gold);transform:translateY(-50%)}
.sol-card:hover .sol-list li{color:rgba(var(--dark-rgb),.6)}

/* ═══ WORKS — Visual Grid Gallery ═══ */
.sec-works{background:var(--white)}
.works-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:60px}
.works-header .sec-title{margin-bottom:0}
.works-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.wk-card{position:relative;border-radius:16px;overflow:hidden;display:block;min-height:clamp(280px,35vw,420px);color:var(--light);will-change:transform}
.wk-card--wide{grid-column:span 7}
.wk-card:not(.wk-card--wide){grid-column:span 5}
.wk-card:nth-child(5),.wk-card:nth-child(6){grid-column:span 6}
.wk-card-bg{position:absolute;inset:-10px;transition:transform .8s var(--ease),filter .8s var(--ease);will-change:transform;transform:translate3d(0,0,0)}
.wk-card:hover .wk-card-bg{transform:scale(1.06);filter:brightness(1.15) saturate(1.2)}
/* Shine sweep on hover */
.wk-card::before{content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 40%,rgba(255,255,255,.18) 50%,rgba(255,255,255,.08) 60%,transparent 100%);z-index:3;transform:skewX(-15deg);transition:none;pointer-events:none}
.wk-card:hover::before{animation:cardShine .9s ease-out forwards}
@keyframes cardShine{0%{left:-100%}100%{left:150%}}
.wk-card::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.15) 40%,rgba(0,0,0,0) 100%);z-index:1;transition:opacity .6s var(--ease)}
.wk-card:hover::after{opacity:.95}
.wk-card-content{position:absolute;bottom:0;left:0;right:0;padding:clamp(24px,3vw,40px);z-index:2;transform:translateY(12px);transition:transform .6s var(--ease)}
.wk-card:hover .wk-card-content{transform:translateY(0)}
.wk-card-cat{display:inline-block;font-family:var(--font-body);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.4);font-weight:300;margin-bottom:10px;transform:translateY(8px);opacity:0;transition:all .5s var(--ease) .1s}
.wk-card:hover .wk-card-cat{opacity:1;transform:translateY(0);color:var(--gold)}
.wk-card-title{font-size:clamp(22px,2.8vw,38px);font-weight:700;letter-spacing:-.02em;line-height:1.15;transform:translateY(6px);transition:transform .5s var(--ease)}
.wk-card:hover .wk-card-title{transform:translateY(0)}
.wk-card-num{display:none}
.wk-card:hover .wk-card-num{display:none}
.wk-card-arrow{position:absolute;top:clamp(20px,2.5vw,32px);right:clamp(24px,3vw,40px);width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:var(--white);z-index:2;opacity:0;transform:translateY(10px) rotate(-45deg) scale(.8);transition:all .5s var(--ease)}
.wk-card:hover .wk-card-arrow{opacity:1;transform:translateY(0) rotate(0deg) scale(1);border-color:var(--gold);color:var(--gold)}
.btn-outline{display:inline-flex;align-items:center;gap:12px;padding:16px 32px;border:1px solid rgba(var(--dark-rgb),.12);border-radius:100px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:300;margin-top:50px;transition:all .4s var(--ease)}
.btn-outline:hover{background:var(--dark);color:var(--white);border-color:var(--dark)}

/* ═══ MANIFESTO — Dark ═══ */
.sec-manifesto{background:var(--dark);color:var(--light);min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.manifesto-inner{padding:0 var(--pad);position:relative;z-index:2;text-align:center}
.manifesto-line{overflow:hidden;display:block;word-spacing:.15em}
.mw{display:inline-block;font-size:clamp(36px,8vw,120px);font-weight:700;line-height:1.15;letter-spacing:-.03em;opacity:0;transform:translateY(100%);transition:all .8s var(--ease);margin:0 .08em}
.mw.show{opacity:1;transform:translateY(0)}
.mw-gold{color:var(--gold);font-style:italic}
.manifesto-particles{position:absolute;inset:0;pointer-events:none;z-index:1}
.mp{position:absolute;width:3px;height:3px;background:var(--gold);border-radius:50%;opacity:0}

/* ═══ PROCESS — Stepped List ═══ */
.sec-process{background:var(--white)}
.process-steps{border-top:1px solid rgba(var(--dark-rgb),.08)}
.ps-step{display:grid;grid-template-columns:80px 1fr auto;align-items:center;gap:clamp(20px,3vw,50px);padding:clamp(28px,4vw,50px) 0;border-bottom:1px solid rgba(var(--dark-rgb),.08);transition:all .5s var(--ease);cursor:default;position:relative}
.ps-step::before{content:'';position:absolute;inset:0 calc(var(--pad) * -1);background:rgba(var(--gold-rgb),.02);opacity:0;transition:opacity .5s}
.ps-step:hover::before{opacity:1}
.ps-num{font-size:clamp(32px,4vw,56px);font-weight:800;color:rgba(var(--dark-rgb),.06);line-height:1;transition:all .5s var(--ease);position:relative;z-index:1}
.ps-step:hover .ps-num{color:var(--gold)}
.ps-content{position:relative;z-index:1}
.ps-title{font-size:clamp(22px,2.5vw,34px);font-weight:700;letter-spacing:-.02em;margin-bottom:8px;transition:color .4s}
.ps-step:hover .ps-title{color:var(--gold)}
.ps-desc{font-family:var(--font-body);font-size:clamp(13px,1.1vw,15px);line-height:1.7;color:rgba(var(--dark-rgb),.4);font-weight:300;max-width:500px;opacity:0;max-height:0;overflow:hidden;transition:all .5s var(--ease)}
.ps-step:hover .ps-desc{opacity:1;max-height:100px;margin-top:4px}
.ps-tags{display:flex;gap:8px;position:relative;z-index:1}
.ps-tags span{font-family:var(--font-body);font-size:11px;letter-spacing:.08em;color:rgba(var(--dark-rgb),.25);padding:6px 14px;border:1px solid rgba(var(--dark-rgb),.06);border-radius:100px;font-weight:300;transition:all .4s var(--ease);white-space:nowrap}
.ps-step:hover .ps-tags span{border-color:rgba(var(--gold-rgb),.25);color:var(--gold)}

/* ═══ REFERENCES — Marquee ═══ */
.sec-references{background:var(--light);padding-bottom:clamp(60px,8vh,100px)}
.ref-marquee{overflow:hidden;padding:20px 0;border-top:1px solid rgba(var(--dark-rgb),.06);border-bottom:1px solid rgba(var(--dark-rgb),.06)}
.ref-marquee-track{display:flex;width:max-content;animation:refMarquee 20s linear infinite}
.ref-marquee-content{display:flex;align-items:center;gap:clamp(30px,4vw,60px);padding-right:clamp(30px,4vw,60px);flex-shrink:0}
.ref-logo-item{font-size:clamp(18px,2vw,26px);font-weight:300;letter-spacing:.15em;text-transform:uppercase;color:rgba(var(--dark-rgb),.2);white-space:nowrap;transition:color .4s}
.ref-logo-item:hover{color:var(--gold)}
.ref-sep{color:rgba(var(--dark-rgb),.08);font-size:14px;font-weight:300}
@keyframes refMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ═══ FOOTER ═══ */
.footer{background:var(--dark);color:var(--light)}
.footer-top{padding:clamp(80px,10vh,140px) 0;border-bottom:1px solid rgba(255,255,255,.06)}
.footer-cta{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:40px}
.footer-headline{font-size:clamp(36px,6vw,80px);font-weight:700;letter-spacing:-.03em;line-height:1.1}
.footer-email{font-size:clamp(18px,2.2vw,28px);color:var(--gold);font-weight:300;transition:opacity .3s;border-bottom:1px solid rgba(var(--gold-rgb),.3);padding-bottom:4px}
.footer-email:hover{opacity:.7}
.footer-mid{padding:60px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}
.f-label{display:block;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.25);margin-bottom:20px;font-weight:300}
.f-col a,.f-col p{display:block;font-size:clamp(14px,1.2vw,16px);font-weight:300;color:rgba(255,255,255,.5);margin-bottom:10px;transition:color .3s}
.f-col a:hover{color:var(--gold)}
.footer-bottom{padding:30px 0}
.fb-inner{display:flex;align-items:center;justify-content:space-between}
.fb-copy{font-size:13px;color:rgba(255,255,255,.25);font-weight:300}
.fb-links{display:flex;gap:24px}
.fb-links a{font-size:13px;color:rgba(255,255,255,.25);font-weight:300;transition:color .3s}
.fb-links a:hover{color:var(--gold)}
.fb-brand{line-height:1;opacity:.06}
.fb-brand-img{height:clamp(40px,5vw,70px);width:auto}

/* ═══ RESPONSIVE ═══ */

/* --- Tablet landscape --- */
@media(max-width:1024px){
  .hero{flex-direction:column;min-height:auto;padding-top:100px;padding-bottom:40px}
  .hero-left{padding-right:0;text-align:center;align-items:center}
  .hero-desc{text-align:center;margin:0 auto}
  .hero-scroll{justify-content:center}
  .hero-right{width:100%;height:clamp(300px,50vw,420px);position:relative;margin-top:32px}
  .about-stats-inline{flex-wrap:wrap;justify-content:center}
  .works-grid{grid-template-columns:repeat(2,1fr)}
  .wk-card--wide,.wk-card:not(.wk-card--wide){grid-column:span 1}
  .wk-card{min-height:clamp(240px,35vw,320px)}
  .wk-card:nth-child(5),.wk-card:nth-child(6){grid-column:span 1}
  .ps-step{grid-template-columns:60px 1fr}
  .ps-tags{display:none}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
  .menu-right{display:none}
  .menu-content{padding:100px var(--pad) 40px;justify-content:center}
  .menu-left{justify-content:center}
  .menu-links{align-items:center}
  .solutions-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
  .solutions-wrap::-webkit-scrollbar{display:none}
  .solutions-track{padding-right:var(--pad)}
  .sol-card{width:clamp(280px,42vw,360px)}
  .manifesto-inner{padding:0 var(--pad)}
  .mw{font-size:clamp(32px,6vw,80px)}
  .sec-manifesto{min-height:auto;padding:clamp(80px,12vh,140px) 0}
}

/* --- Tablet portrait / large phone --- */
@media(max-width:768px){
  :root{--header-h:60px;--pad:clamp(16px,4vw,24px)}
  .nav-logo-img{height:20px}
  .nav-center{display:none}
  .hero{padding-top:90px;padding-bottom:32px}
  .hw{font-size:clamp(40px,11vw,64px)}
  .hero-title{margin-bottom:24px}
  .hero-right{height:clamp(260px,55vw,360px);margin-top:24px}
  .hero-desc{font-size:clamp(13px,3.2vw,15px);max-width:360px}
  .hero-scroll{margin-top:28px}
  .about-text{font-size:clamp(20px,5vw,28px)}
  .about-stats-inline{flex-direction:column;gap:20px;align-items:center}
  .stat-sep{width:40px;height:1px}
  .stat-inline{flex-direction:column;align-items:center;gap:2px}
  .works-grid{grid-template-columns:1fr}
  .wk-card--wide,.wk-card:not(.wk-card--wide),.wk-card:nth-child(5),.wk-card:nth-child(6){grid-column:span 1}
  .wk-card{min-height:clamp(220px,50vw,300px)}
  .works-header{flex-direction:column;align-items:center;gap:16px;text-align:center}
  .ps-step{grid-template-columns:40px 1fr;gap:16px;padding:clamp(20px,4vw,32px) 0}
  .ps-desc{display:none}
  .ps-num{font-size:clamp(24px,6vw,36px)}
  .ps-title{font-size:clamp(18px,4.5vw,24px)}
  .sec-title{font-size:clamp(28px,7vw,40px);margin-bottom:40px}
  .sol-card{width:85vw;min-height:clamp(320px,70vw,400px)}
  .mw{font-size:clamp(28px,8vw,52px)}
  .sec-manifesto{min-height:auto;padding:clamp(60px,10vh,100px) 0}
  .footer-headline{font-size:clamp(28px,8vw,48px)}
  .footer-email{font-size:clamp(16px,4vw,20px)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-cta{flex-direction:column;align-items:center;text-align:center}
  .fb-inner{flex-direction:column;gap:16px;align-items:center;text-align:center}
  .fb-brand{display:none}
  .cursor{display:none}
  body,a,button{cursor:auto}
  .pl-ring-wrap{width:clamp(140px,40vw,180px);height:clamp(140px,40vw,180px)}
  .pl-logo-img{height:clamp(18px,5vw,26px)}
  .btn-outline{padding:14px 24px;font-size:12px;margin-top:32px}
  .marquee-content{gap:20px;padding-right:20px}
  .ref-marquee-content{gap:clamp(20px,4vw,40px);padding-right:clamp(20px,4vw,40px)}
}

/* --- Small phone --- */
@media(max-width:480px){
  :root{--pad:16px}
  .hw{font-size:clamp(36px,12vw,52px)}
  .hero-right{height:clamp(220px,60vw,280px)}
  .hero-desc{font-size:13px;max-width:300px}
  .about-text{font-size:clamp(18px,5vw,22px)}
  .stat-num{font-size:clamp(28px,8vw,40px)}
  .sol-card{width:88vw;min-height:clamp(300px,75vw,360px);padding:clamp(24px,5vw,32px)}
  .wk-card{min-height:clamp(200px,55vw,260px)}
  .wk-card-title{font-size:clamp(18px,5vw,24px)}
  .footer-grid{grid-template-columns:1fr}
  .footer-mid{padding:40px 0}
  .mw{font-size:clamp(24px,9vw,40px)}
  .menu-link .ml-text{font-size:clamp(28px,8vw,40px)}
  .menu-close{top:16px;width:40px;height:40px}
  .pl-ring-wrap{width:130px;height:130px}
  .pl-logo-img{height:18px}
}

/* --- Reduced motion --- */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .marquee-track,.ref-marquee-track{animation:none!important}
  .preloader{display:none!important}
}
