/* ═══════════════════════════════════════════════════
   KD Prime Events — Global Stylesheet
   ═══════════════════════════════════════════════════ */

/* ═══════ RESET & VARIABLES ═══════ */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#000;--text:#fff;--muted:#bbb;--dim:#777;
  --red:#e63226;--border:rgba(255,255,255,0.1);
  --ph:#0e0e0e;--ph-b:#222;--card:#0a0a0a;
}
html{scroll-behavior:smooth}
body{font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3{font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif}
a{transition:all .3s}

/* ═══════ HEADER ═══════ */
header{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:18px 40px;background:var(--bg);transition:box-shadow .3s}
header.scrolled{box-shadow:0 1px 0 var(--border)}
.logo-a{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.logo-c{width:30px;height:30px;border-radius:50%;border:2.5px solid var(--red);position:relative}
.logo-c::after{content:'';position:absolute;top:50%;left:50%;width:8px;height:8px;border-radius:50%;background:var(--red);transform:translate(-50%,-50%)}
.logo-t{font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:700;font-size:14px}
.breadcrumb{position:absolute;left:50%;transform:translateX(-50%);font-size:13px;display:flex;gap:6px;align-items:center}
.breadcrumb a{color:var(--dim);text-decoration:none}
.breadcrumb a:hover{color:var(--text)}
.breadcrumb .sep{color:var(--dim)}
.breadcrumb .cur{color:var(--text);font-weight:600}
.hdr-r{display:flex;align-items:center;gap:18px}
.cta-btn{font-size:12px;font-weight:700;font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--text);background:var(--red);padding:10px 22px;border-radius:24px;text-decoration:none;transition:opacity .3s;letter-spacing:.3px}
.cta-btn:hover{opacity:.85}
.burger{width:28px;height:20px;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;z-index:201}
.burger span{display:block;width:100%;height:2px;background:var(--text);transition:all .35s cubic-bezier(.4,0,.2,1)}
.burger.on span:nth-child(1){transform:translateY(9px) rotate(45deg)}
.burger.on span:nth-child(2){opacity:0}
.burger.on span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}

/* Nav overlay */
.nav-ov{position:fixed;inset:0;background:rgba(0,0,0,.97);z-index:199;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s}
.nav-ov.open{opacity:1;pointer-events:all}
.nav-ov ul{list-style:none;text-align:center}
.nav-ov li{margin:12px 0;overflow:hidden}
.nav-ov a{font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:clamp(28px,4vw,52px);font-weight:700;color:var(--text);text-decoration:none;display:inline-block;transform:translateY(110%);transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .3s;opacity:.5;cursor:pointer}
.nav-ov a:hover{opacity:1}
.nav-ov.open a{transform:translateY(0)}
.nav-ov li:nth-child(1) a{transition-delay:.06s}
.nav-ov li:nth-child(2) a{transition-delay:.1s}
.nav-ov li:nth-child(3) a{transition-delay:.14s}
.nav-ov li:nth-child(4) a{transition-delay:.18s}
.nav-ov li:nth-child(5) a{transition-delay:.22s}

/* ═══════ IMAGE PLACEHOLDER ═══════ */
.ph{background:var(--ph);border:1px dashed var(--ph-b);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;overflow:hidden}
.ph svg{width:36px;height:36px;opacity:.12}
.ph span{font-size:9px;font-weight:600;letter-spacing:2px;text-transform:uppercase;opacity:.12}

/* ═══════ SHARED SECTION STYLES ═══════ */
.dot{color:var(--red)}

/* Two-col text */
.two-col{display:grid;grid-template-columns:42% 58%;padding:100px 40px;gap:40px;align-items:start}
.two-col h2{font-size:clamp(22px,2.6vw,32px);font-weight:800;line-height:1.3}
.two-col .body{font-size:15px;line-height:1.75;color:var(--muted)}
.two-col .body strong{color:var(--text);font-weight:700}

/* Large statement */
.big-stmt{padding:60px 40px 100px}
.big-stmt h2{font-size:clamp(32px,4.2vw,58px);font-weight:800;line-height:1.1;letter-spacing:-1px;max-width:880px}

/* Testimonial + case */
.testi-case{display:grid;grid-template-columns:1fr 1fr;padding:60px 40px 80px;gap:40px;align-items:start}
.testi .quote{font-size:clamp(16px,1.7vw,20px);line-height:1.55;margin-bottom:28px}
.testi .quote strong{font-weight:700}
.testi .attr{font-size:14px;line-height:1.5}
.testi .attr .name{font-weight:700}
.case-c{background:var(--card);border:1px solid var(--border);overflow:hidden}
.case-c .c-img{width:100%;aspect-ratio:16/9}
.case-c .c-info{padding:24px}
.case-c .c-info h3{font-size:20px;font-weight:700;margin-bottom:6px}
.case-c .c-tags{font-size:12px;color:var(--dim);margin-bottom:12px;line-height:1.6}
.case-c .c-desc{font-size:14px;color:var(--muted);line-height:1.6}

/* Brands — Marquee Carousel */
.brands{padding:80px 40px;overflow:hidden}
.brands h2{font-size:clamp(26px,3.2vw,40px);font-weight:800;margin-bottom:44px}
.brands-marquee{overflow:hidden;position:relative;width:100%}
.brands-marquee::before,.brands-marquee::after{content:'';position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}
.brands-marquee::before{left:0;background:linear-gradient(to right,var(--bg),transparent)}
.brands-marquee::after{right:0;background:linear-gradient(to left,var(--bg),transparent)}
.brands-track{display:flex;align-items:center;gap:48px;animation:marquee 25s linear infinite;width:max-content}
.brands-track:hover{animation-play-state:paused}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.brand-logo{height:40px;opacity:.5;transition:opacity .4s;filter:brightness(0) invert(1);flex-shrink:0}
.brand-logo:hover{opacity:1}

/* Storytelling block */
.story-blk{padding:80px 40px;max-width:780px}
.story-blk p{font-size:clamp(15px,1.4vw,18px);line-height:1.7;color:var(--muted)}
.story-blk p strong{color:var(--text);font-weight:700}
.story-blk .sm{font-size:13px;color:var(--dim);margin-top:18px;line-height:1.6}

/* Carousel */
.carousel-sec{padding:80px 40px 60px}
.car-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px}
.car-hdr h2{font-size:clamp(26px,3.2vw,40px);font-weight:800}
.car-arrows{display:flex;gap:10px}
.arr{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--border);background:transparent;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s}
.arr:hover{border-color:var(--text);background:rgba(255,255,255,.04)}
.arr svg{width:18px;height:18px}
.car-imgs{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.car-imgs .ph{aspect-ratio:16/9}

/* ═══════ SUBPAGE HERO (Design / Production) ═══════ */
.sub-hero{display:grid;grid-template-columns:42% 58%;min-height:100vh;padding-top:64px}
.sub-hero-text{display:flex;flex-direction:column;justify-content:center;padding:80px 40px}
.sub-hero-text h1{font-size:clamp(50px,5.5vw,82px);font-weight:800;line-height:1;letter-spacing:-2px;margin-bottom:28px}
.sub-hero-text .sub{font-size:16px;line-height:1.6;max-width:380px;margin-bottom:12px}
.sub-collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:4px;padding-top:64px}
.sub-collage .stock-img{height:100%;max-height:280px}
.sub-collage .ph:nth-child(3){grid-column:1/-1}

/* ═══════ HOME-SPECIFIC ═══════ */
.home-hero{position:relative;padding-top:64px;min-height:100vh}
.home-hero-imgs{display:grid;grid-template-columns:1fr 1fr;gap:4px;height:65vh}
.home-hero-imgs .ph{min-height:100%}
.home-hero-text{padding:0 40px;position:relative;margin-top:-140px;z-index:2}
.home-hero-text h1{font-size:clamp(42px,5.5vw,78px);font-weight:800;line-height:1.05;letter-spacing:-2px}

.home-intro{padding:80px 40px;max-width:780px}
.home-intro h3{font-size:clamp(18px,2vw,24px);font-weight:700;line-height:1.4;margin-bottom:20px}
.home-intro h3 a{color:var(--text);text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
.home-intro p{font-size:15px;line-height:1.75;color:var(--muted)}

.explore-hdr{padding:40px 40px 60px}
.explore-hdr h2{font-size:clamp(28px,3.5vw,44px);font-weight:800}

.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;padding:0 40px 80px}
.svc-card{background:var(--ph);padding:36px 28px;border:1px solid rgba(255,255,255,.03);transition:background .3s}
.svc-card:hover{background:#111}
.svc-icon{width:80px;height:80px;margin-bottom:20px;display:flex;align-items:center;justify-content:center}
.svc-icon svg{width:60px;height:60px;opacity:.7}
.svc-card h3{font-size:16px;font-weight:700;margin-bottom:8px}
.svc-card p{font-size:13px;color:var(--dim);line-height:1.6}

.testi-sec{padding:80px 40px}
.testi-sec h2{font-size:clamp(28px,3.5vw,44px);font-weight:800;margin-bottom:44px}
.testi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.testi-card{position:relative;overflow:hidden}
.testi-card .ph{aspect-ratio:3/4}
.testi-card .t-info{position:absolute;bottom:0;left:0;right:0;padding:20px 16px;background:linear-gradient(transparent,rgba(0,0,0,.85))}
.testi-card .t-name{font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:16px;font-weight:700}
.testi-card .t-role{font-size:11px;color:var(--muted);margin-top:2px}

.cases-car{padding:0 40px 80px}
.cases-car .car-imgs{grid-template-columns:repeat(3,1fr)}
.cases-car .ph{aspect-ratio:16/10}
.cases-label{margin-top:12px;font-size:14px;font-weight:600;color:var(--muted)}

.insights-sec{padding:60px 40px 80px}
.insights-sec h3{font-size:16px;font-weight:600;color:var(--dim);margin-bottom:28px}
.insight-card{display:grid;grid-template-columns:1fr 1fr;background:#111;border:1px solid var(--border);overflow:hidden}
.insight-txt{padding:40px;display:flex;flex-direction:column;justify-content:center}
.insight-txt .tag{font-size:12px;font-weight:700;color:var(--red);margin-bottom:16px;text-transform:uppercase;letter-spacing:1px}
.insight-txt h3{font-size:clamp(18px,2vw,24px);font-weight:700;line-height:1.35;margin-bottom:20px}
.insight-txt .read-link{font-size:14px;color:var(--text);text-decoration:none;display:flex;align-items:center;gap:8px;font-weight:500}
.insight-txt .read-link:hover{text-decoration:underline}
.insight-img .ph{height:100%;min-height:280px}

.cta-sec{display:grid;grid-template-columns:1fr 1.5fr;min-height:300px;overflow:hidden}
.cta-mascot{background:#e8a000;display:flex;align-items:center;justify-content:center}
.cta-mascot .ph{width:100%;height:100%;min-height:300px;background:#e8a000;border-color:rgba(0,0,0,.1)}
.cta-content{display:flex;flex-direction:column;justify-content:center;padding:60px;background:var(--bg)}
.cta-content h2{font-size:clamp(26px,3vw,38px);font-weight:800;margin-bottom:20px}
.cta-content .cta-link{font-size:15px;color:var(--text);text-decoration:none;display:flex;align-items:center;gap:8px;font-weight:500}
.cta-content .cta-link:hover{text-decoration:underline}

/* ═══════ CONTACT PAGE ═══════ */
.contact-wrap{display:grid;grid-template-columns:42% 58%;min-height:calc(100vh - 64px);padding-top:64px}
.contact-left{padding:120px 40px 80px}
.contact-left h1{font-size:clamp(32px,3.8vw,48px);font-weight:800;line-height:1.15;letter-spacing:-1px;margin-bottom:28px}
.contact-left .desc{font-size:clamp(16px,1.6vw,20px);line-height:1.55;margin-bottom:40px}
.contact-left .desc strong{font-weight:700}
.contact-details{display:flex;flex-direction:column;gap:24px;margin-top:40px;border-top:1px solid var(--border);padding-top:28px}
.contact-detail-item .ft-label{font-size:12px;color:var(--dim);margin-bottom:4px}
.contact-detail-item a{color:var(--text);text-decoration:none;font-size:15px;font-weight:600}
.contact-detail-item a:hover{text-decoration:underline}
.contact-detail-item p{font-size:14px;color:var(--muted);line-height:1.6}

.contact-right{background:var(--card);padding:100px 48px 60px}
.form-accent{width:100%;height:4px;background:var(--red);border-radius:2px;margin-bottom:40px}
.contact-right h2{font-size:clamp(22px,2.4vw,30px);font-weight:800;margin-bottom:12px}
.contact-right .form-sub{font-size:14px;color:var(--muted);margin-bottom:24px}

.svc-checks{display:flex;flex-direction:column;gap:14px;margin-bottom:28px}
.svc-check{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:14px;line-height:1.5}
.svc-check input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;border:1.5px solid var(--dim);border-radius:3px;background:transparent;cursor:pointer;margin-top:2px;position:relative;transition:all .2s}
.svc-check input[type="checkbox"]:checked{background:var(--red);border-color:var(--red)}
.svc-check input[type="checkbox"]:checked::after{content:'✓';position:absolute;top:-1px;left:3px;font-size:12px;color:var(--text);font-weight:700}
.svc-check .svc-name{font-weight:700}
.svc-check .svc-desc{color:var(--muted)}
.svc-check .arrow{color:var(--dim);margin-left:2px}

.form-divider{width:100%;height:1px;background:var(--border);margin:28px 0}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}
.form-group{display:flex;flex-direction:column}
.form-group label{font-size:13px;font-weight:600;margin-bottom:8px}
.form-group label .req{color:var(--red)}
.form-group input,
.form-group textarea{background:transparent;border:none;border-bottom:1px solid var(--border);padding:10px 0;font-size:14px;font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--text);outline:none;transition:border-color .3s;resize:none}
.form-group input::placeholder,
.form-group textarea::placeholder{color:var(--dim);font-size:13px}
.form-group input:focus,
.form-group textarea:focus{border-bottom-color:var(--text)}
.form-group textarea{min-height:100px}
.form-group.full{grid-column:1/-1}

/* Validation states */
.form-group.error input,
.form-group.error textarea{border-bottom-color:var(--red)}
.form-group .err-msg{font-size:11px;color:var(--red);margin-top:6px;display:none}
.form-group.error .err-msg{display:block}

.consent-row{display:flex;align-items:flex-start;gap:10px;margin:28px 0 32px;font-size:13px;color:var(--muted);line-height:1.5}
.consent-row input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:16px;height:16px;min-width:16px;border:1.5px solid var(--dim);border-radius:3px;background:transparent;cursor:pointer;margin-top:2px;position:relative;transition:all .2s}
.consent-row input[type="checkbox"]:checked{background:var(--red);border-color:var(--red)}
.consent-row input[type="checkbox"]:checked::after{content:'✓';position:absolute;top:-1px;left:2px;font-size:11px;color:var(--text);font-weight:700}
.consent-row a{color:var(--text);text-decoration:underline;text-underline-offset:2px}

.form-divider-full{width:100%;height:1px;background:var(--border);margin-bottom:28px}
.submit-btn{font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:14px;font-weight:700;color:var(--text);background:var(--bg);border:none;padding:14px 36px;border-radius:4px;cursor:pointer;transition:all .3s;letter-spacing:.3px}
.submit-btn:hover{background:#1a1a1a}
.submit-btn:disabled{opacity:.5;cursor:not-allowed}

/* Form messages */
.form-msg{padding:16px 20px;border-radius:6px;margin-top:20px;font-size:14px;line-height:1.5;display:none}
.form-msg.success{display:block;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:#22c55e}
.form-msg.error{display:block;background:rgba(230,50,38,.1);border:1px solid rgba(230,50,38,.3);color:var(--red)}

/* ═══════ ABOUT PAGE ═══════ */
.about-hero{padding:140px 40px 80px}
.about-hero-text h1{font-size:clamp(42px,5.5vw,72px);font-weight:800;line-height:1.05;letter-spacing:-2px;margin-bottom:24px}
.about-tagline{font-size:clamp(18px,2.2vw,26px);font-weight:700;margin-bottom:20px}
.about-desc{font-size:15px;line-height:1.75;color:var(--muted);max-width:600px}

.brand-identity{position:relative;width:100%;min-height:400px;overflow:hidden}
.brand-identity-img{width:100%;height:400px}
.brand-identity-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:flex-start;padding:60px 40px;background:linear-gradient(to right,rgba(0,0,0,.7),rgba(0,0,0,.3))}
.brand-identity-overlay h2{font-size:clamp(32px,4.5vw,60px);font-weight:800;line-height:1.15;letter-spacing:-1px}
.hl{padding:2px 8px;display:inline}
.hl-red{background:var(--red);color:var(--text)}
.hl-white{background:var(--text);color:var(--bg)}

.about-story{display:grid;grid-template-columns:42% 58%;padding:80px 40px;gap:40px;align-items:start}
.about-story-left h2{font-size:clamp(28px,3.5vw,44px);font-weight:800;margin-bottom:28px}
.about-story-img{width:100%;aspect-ratio:4/3}
.about-story-right{padding-top:20px}
.about-story-right p{font-size:15px;line-height:1.75;color:var(--muted);margin-bottom:18px}
.about-story-right strong{color:var(--text);font-weight:700}

.about-team{padding:80px 40px 40px}
.about-team-header{display:grid;grid-template-columns:42% 58%;gap:40px;align-items:start}
.about-team-header h2{font-size:clamp(28px,3.5vw,44px);font-weight:800}
.about-team-desc p{font-size:15px;line-height:1.75;color:var(--muted);margin-bottom:16px}
.about-team-desc strong{color:var(--text);font-weight:700}
.careers-link{font-size:14px;color:var(--red);text-decoration:none;font-weight:700;display:inline-flex;align-items:center;gap:6px}
.careers-link:hover{text-decoration:underline}

.team-grid{padding:40px 40px 80px}
.team-row{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:4px}
.team-ph{aspect-ratio:1/1}

.core-values{padding:80px 40px}
.core-values h2{font-size:clamp(28px,3.5vw,44px);font-weight:800;margin-bottom:48px}
.values-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}
.value-card{text-align:center;padding:20px 16px}
.value-icon{width:64px;height:64px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center}
.value-icon svg{width:48px;height:48px}
.value-card h3{font-size:15px;font-weight:700;margin-bottom:10px}
.value-card p{font-size:13px;color:var(--muted);line-height:1.6}

.scale-sec{padding:60px 40px 80px;max-width:780px}
.scale-sec h2{font-size:clamp(26px,3vw,38px);font-weight:800;margin-bottom:20px}
.scale-sec p{font-size:15px;line-height:1.75;color:var(--muted)}

.about-cta{padding:0 40px 0}
.about-cta-inner{background:#e8a000;padding:48px 60px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.about-cta-inner h2{font-size:clamp(22px,2.8vw,34px);font-weight:800;color:var(--text)}
.about-cta-btn{font-size:15px;font-weight:700;color:var(--text);text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:8px;background:var(--bg);padding:14px 28px;border-radius:4px;transition:opacity .3s}
.about-cta-btn:hover{opacity:.85}

/* ═══════ FOOTER ═══════ */
footer{background:#0a0a0a;padding:44px 40px 28px;margin-top:40px}
.ft-top{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:24px}
.ft-label{font-size:12px;color:var(--dim);margin-bottom:6px}
.ft-info{font-size:14px;font-weight:600}
.ft-info a{color:var(--text);text-decoration:none}
.ft-info .sep{color:var(--dim);margin:0 6px}
.ft-addr{text-align:right;font-size:13px;color:var(--muted);line-height:1.5}
.ft-addr .b{font-weight:700;color:var(--text)}
.ft-div{width:100%;height:1px;background:var(--red);margin:20px 0}
.ft-bot{display:flex;align-items:center;justify-content:space-between}
.ft-logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--text)}
.fc{width:26px;height:26px;border-radius:50%;border:2px solid var(--red);position:relative}
.fc::after{content:'';position:absolute;top:50%;left:50%;width:6px;height:6px;border-radius:50%;background:var(--red);transform:translate(-50%,-50%)}
.fn{font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:800;font-size:18px;letter-spacing:2px;text-transform:uppercase}
.ftag{font-size:11px;color:var(--dim)}
.ft-copy{font-size:11px;color:var(--dim)}
.ft-copy a{color:var(--dim);text-decoration:none}
.ft-soc{display:flex;align-items:center;gap:14px}
.ft-soc a{color:var(--text);opacity:.6;transition:opacity .3s;display:flex;align-items:center}
.ft-soc a:hover{opacity:1}
.scr-top{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--red);display:flex;align-items:center;justify-content:center;cursor:pointer;background:transparent;color:var(--red);margin-left:4px;transition:border-color .3s}
.scr-top:hover{border-color:var(--text);color:var(--text)}
.scr-top svg{width:14px;height:14px}

/* ═══════ STOCK IMAGES ═══════ */
.stock-img{width:100%;height:100%;object-fit:cover;display:block}

/* ═══════ MICRO ANIMATIONS ═══════ */
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

.logo-c{animation:pulse 3s ease-in-out infinite}
.svc-card{transition:background .3s,transform .3s,box-shadow .3s}
.svc-card:hover{transform:translateY(-6px);box-shadow:0 12px 40px rgba(0,0,0,.4)}
.svc-icon svg{transition:transform .4s cubic-bezier(.16,1,.3,1)}
.svc-card:hover .svc-icon svg{transform:scale(1.15) rotate(3deg)}
.cta-btn{transition:opacity .3s,transform .2s}
.cta-btn:hover{opacity:.85;transform:scale(1.03)}
.value-card{transition:transform .3s,background .3s}
.value-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.03);border-radius:12px}
.value-icon svg{transition:transform .4s}
.value-card:hover .value-icon svg{transform:scale(1.2)}
.testi-card{transition:transform .4s}
.testi-card:hover{transform:scale(1.03)}
.case-c{transition:transform .3s,box-shadow .3s}
.case-c:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.3)}
.insight-card{transition:transform .3s,box-shadow .3s}
.insight-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.3)}
.about-cta-btn{transition:opacity .3s,transform .2s}
.about-cta-btn:hover{opacity:.85;transform:scale(1.03)}
.submit-btn{transition:all .3s,transform .2s}
.submit-btn:hover{transform:scale(1.02)}
.ft-soc a{transition:opacity .3s,transform .3s}
.ft-soc a:hover{opacity:1;transform:scale(1.2)}
.arr{transition:all .3s,transform .2s}
.arr:hover{transform:scale(1.08)}
.home-hero-text h1{animation:fadeInUp 1s ease-out .3s both}
.sub-hero-text h1{animation:fadeInUp 1s ease-out .3s both}
.about-hero-text h1{animation:fadeInUp 1s ease-out .3s both}
.about-tagline{animation:fadeInUp 1s ease-out .5s both}
.about-desc{animation:fadeInUp 1s ease-out .7s both}

/* ═══════ SCROLL REVEAL ═══════ */
.rv{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.16,1,.3,1)}
.rv.vis{opacity:1;transform:translateY(0)}

/* ═══════ RESPONSIVE ═══════ */
@media(max-width:1024px){
  header{padding:16px 24px}
  .breadcrumb{display:none}
  .sub-hero,.two-col,.testi-case{grid-template-columns:1fr}
  .sub-collage{padding-top:0;min-height:50vh}
  .sub-hero-text{padding:100px 24px 40px}
  .two-col,.big-stmt,.brands,.story-blk,.carousel-sec,.testi-sec,.explore-hdr,.insights-sec,.cases-car{padding-left:24px;padding-right:24px}
  .svc-grid{grid-template-columns:1fr 1fr;padding:0 24px 60px}
  .testi-grid{grid-template-columns:1fr 1fr}
  .home-hero-text{padding:0 24px;margin-top:-100px}
  .home-intro{padding:60px 24px}
  .insight-card{grid-template-columns:1fr}
  .cta-sec{grid-template-columns:1fr}
  .cta-mascot{min-height:200px}
  .contact-wrap{grid-template-columns:1fr}
  .contact-left{padding:100px 24px 40px}
  .contact-right{padding:40px 24px 60px}
  .ft-top{grid-template-columns:1fr}
  .ft-addr{text-align:left}
  footer{padding:36px 24px 24px}
  .ft-bot{flex-wrap:wrap;gap:14px}
  .home-hero-imgs{height:45vh}
  .about-hero{padding:100px 24px 60px}
  .about-story{grid-template-columns:1fr}
  .about-team-header{grid-template-columns:1fr}
  .team-row{grid-template-columns:1fr 1fr}
  .values-grid{grid-template-columns:repeat(3,1fr)}
  .about-cta-inner{flex-direction:column;text-align:center;padding:40px 24px}
  .brand-identity-overlay{padding:40px 24px}
  .about-hero,.about-story,.about-team,.team-grid,.core-values,.scale-sec,.about-cta{padding-left:24px;padding-right:24px}
}
@media(max-width:600px){
  .cta-btn{display:none}
  .sub-collage{grid-template-columns:1fr}
  .home-hero-imgs{grid-template-columns:1fr;height:auto}
  .home-hero-imgs .ph{min-height:200px}
  .svc-grid{grid-template-columns:1fr}
  .testi-grid{grid-template-columns:1fr}
  .car-imgs,.cases-car .car-imgs{grid-template-columns:1fr}
  .brands-row{justify-content:flex-start}
  .form-row{grid-template-columns:1fr}
  .ft-bot{flex-direction:column;align-items:flex-start}
  .team-row{grid-template-columns:1fr 1fr}
  .values-grid{grid-template-columns:1fr 1fr}
}
