@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800;900&family=Barlow:wght@400;500;600;700&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
img{display:block;width:100%;object-fit:cover}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer}

:root{
--navy:#05082B;
--purple:#1A0042;
--orange:#FF5500;
--lime:#AAFF00;
--pink:#FF2B78;
--red:#B01300;
--forest:#003D28;
--disp:'Barlow Condensed',sans-serif;
--body:'Barlow',sans-serif;
}

html,body{overflow-x:hidden}
body{background:var(--navy);color:#fff;font-family:var(--body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}

.nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:22px 32px;pointer-events:none}
.nav-logo{pointer-events:all;display:flex;align-items:center;gap:10px;font-family:var(--disp);font-size:38px;font-weight:900;letter-spacing:-.02em;line-height:1;transition:color .3s}
.nav-logo img{width:auto;height:36px;object-fit:contain}
.nav-burger{pointer-events:all;display:flex;flex-direction:column;gap:5px;background:var(--pink);clip-path:polygon(0% 0%, 88% 0%, 100% 100%, 12% 100%);padding:13px 22px 13px 16px;transition:background .3s}
.nav-burger span{display:block;width:26px;height:2.5px;background:#fff}

.nav-overlay{position:fixed;inset:0;z-index:300;background:var(--navy);opacity:0;pointer-events:none;transition:opacity .3s}
.nav-overlay.open{opacity:1;pointer-events:all}
.ov-social{position:absolute;top:28px;left:36px}
.ov-lang{display:inline-block;background:var(--lime);clip-path:polygon(0% 0%, 83% 0%, 100% 100%, 17% 100%);padding:6px 16px 6px 10px;font-family:var(--disp);font-size:14px;font-weight:900;color:var(--navy);margin-bottom:14px}
.ov-links{display:flex;flex-direction:column;gap:5px}
.ov-link{font-family:var(--body);font-size:15px;color:var(--lime);transition:color .2s}
.ov-link:hover{color:#fff}
.ov-close{position:absolute;top:22px;right:36px;background:none;border:none;font-size:36px;color:var(--lime);line-height:1;transition:color .2s}
.ov-close:hover{color:#fff}
.ov-panel{position:absolute;right:0;top:0;bottom:0;width:68%;background:var(--lime);clip-path:polygon(22% 0%, 100% 0%, 100% 100%, 0% 100%);display:flex;align-items:center;padding-left:26%}
.ov-nav{display:flex;flex-direction:column;gap:0}
.ov-nav-link{font-family:var(--disp);font-size:clamp(52px,7.5vw,100px);font-weight:900;color:var(--navy);line-height:1.02;transition:color .15s}
.ov-nav-link:hover{color:var(--purple)}

.sec-badge{position:absolute;bottom:28px;right:32px;display:flex;align-items:center;gap:10px;z-index:10;color:inherit}
.sec-badge-txt{font-family:var(--disp);font-size:13px;font-weight:700;line-height:1.25;text-align:right;letter-spacing:.03em}
.sec-badge-icon{width:38px;height:38px;flex-shrink:0;clip-path:polygon(0% 25%, 25% 0%, 75% 0%, 100% 25%, 100% 75%, 75% 100%, 25% 100%, 0% 75%);background:currentColor}

.hero{position:relative;min-height:100vh;background:var(--purple);display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero-poly{position:relative;width:clamp(320px,46vw,660px);aspect-ratio:.9;clip-path:polygon(22% 0%, 90% 3%, 78% 97%, 10% 100%);overflow:hidden;background:#000;flex-shrink:0;z-index:1}
.hero-poly img{width:100%;height:100%;object-fit:cover;opacity:.75;display:block}
.hw{position:absolute;font-family:var(--disp);font-weight:900;color:var(--orange);line-height:1;z-index:2;pointer-events:none}
.hw-1{font-size:clamp(68px,9vw,136px);top:9%;left:5%}
.hw-2{font-size:clamp(52px,7vw,108px);top:44%;right:4%}
.hw-3{font-size:clamp(60px,8vw,124px);bottom:10%;left:8%}
.hero-skip{position:absolute;bottom:28px;left:32px;font-family:var(--body);font-size:14px;font-weight:600;color:var(--lime);text-decoration:underline;cursor:pointer;z-index:3}
.hero .sec-badge{color:var(--orange)}

.projects{position:relative;background:var(--red);padding:80px 32px 100px;overflow:hidden}
.tile-bg{position:absolute;inset:0;font-family:var(--disp);font-size:66px;font-weight:900;line-height:1;letter-spacing:.04em;color:rgba(255,255,255,.07);pointer-events:none;z-index:0;overflow:hidden;word-break:break-all;padding:4px 8px}
.projects-inner{position:relative;z-index:1}
.proj-eyebrow{font-family:var(--disp);font-size:15px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--pink);text-align:center;margin-bottom:52px}
.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;align-items:start}
.proj-card{cursor:pointer}
.proj-card:nth-child(1){margin-top:44px}
.proj-card:nth-child(3){margin-top:18px}
.proj-img{border:3px solid #fff;overflow:hidden;margin-bottom:14px}
.proj-img img{height:270px;transition:transform .4s}
.proj-card:hover .proj-img img{transform:scale(1.05)}
.proj-title{font-family:var(--disp);font-size:clamp(18px,2vw,26px);font-weight:700;color:var(--pink);line-height:1.15;margin-bottom:4px}
.proj-client{font-family:var(--body);font-size:13px;color:rgba(255,255,255,.55)}
.projects .sec-badge{color:var(--pink)}

.newscta{position:relative;background:var(--navy);min-height:480px;display:flex;align-items:center;padding:72px 32px;gap:60px;overflow:hidden}
.ncta-poly{flex-shrink:0;min-width:300px;max-width:360px;min-height:320px;background:var(--pink);clip-path:polygon(10% 0%, 92% 2%, 88% 78%, 100% 100%, 0% 100%, 5% 22%);display:flex;align-items:center;justify-content:center;padding:44px 36px}
.ncta-label{font-family:var(--disp);font-size:clamp(34px,4.5vw,58px);font-weight:900;color:var(--navy);line-height:1;text-align:center}
.ncta-right{flex:1}
.ncta-desc{font-family:var(--body);font-size:clamp(17px,2vw,22px);color:var(--pink);line-height:1.6;margin-bottom:28px;max-width:500px}
.skew-btn{display:inline-block;background:var(--pink);clip-path:polygon(5% 0%, 100% 0%, 95% 100%, 0% 100%);padding:14px 30px 14px 24px;font-family:var(--disp);font-size:17px;font-weight:700;color:#fff;transition:background .2s}
.skew-btn:hover{background:var(--orange)}
.newscta .sec-badge{color:var(--pink)}

.news{position:relative;background:var(--navy);padding:72px 32px 100px;border-top:1px solid rgba(255,255,255,.05)}
.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:60px}
.na-img{overflow:hidden;margin-bottom:22px}
.na-img img{clip-path:polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%);height:290px;transition:transform .4s}
.na-card:hover .na-img img{transform:scale(1.04)}
.na-title{font-family:var(--disp);font-size:clamp(18px,2vw,26px);font-weight:700;color:var(--pink);line-height:1.25;margin-bottom:18px}
.na-btn{display:inline-block;background:var(--pink);clip-path:polygon(5% 0%, 100% 0%, 95% 100%, 0% 100%);padding:10px 22px 10px 18px;font-family:var(--disp);font-size:15px;font-weight:700;color:#fff}
.news-all{display:flex;justify-content:center}
.news-all a{font-family:var(--disp);font-size:clamp(40px,6vw,80px);font-weight:900;color:var(--pink);text-decoration:underline}
.news-all a:hover{color:var(--lime)}
.news .sec-badge{color:var(--pink)}

.brands{position:relative;overflow:hidden;min-height:400px;display:flex;flex-direction:column;justify-content:center}
.brands-bg{position:absolute;inset:0}
.brands-bg img{width:100%;height:100%;object-fit:cover}
.brands-ov{position:absolute;inset:0;background:rgba(0,60,30,.86)}
.brands-inner{position:relative;z-index:1;padding:56px 0}
.brands-tag{font-family:var(--disp);font-size:13px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(170,255,0,.65);text-align:center;margin-bottom:28px}
.marquee-wrap{overflow:hidden;display:flex}
.mq-track{display:flex;gap:64px;animation:mq 20s linear infinite;flex-shrink:0;align-items:center;padding:0 32px}
.mq-track:nth-child(2){animation-delay:-10s}
.brand-nm{font-family:var(--disp);font-size:21px;font-weight:800;color:var(--lime);white-space:nowrap;opacity:.85;letter-spacing:.04em}
@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}
.brands .sec-badge{color:var(--lime);z-index:2}

.footer{background:var(--purple);padding:64px 32px 36px;border-top:4px solid var(--orange)}
.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;padding-bottom:48px;margin-bottom:40px;border-bottom:1px solid rgba(255,255,255,.08)}
.ft-brand-name{font-family:var(--disp);font-size:clamp(44px,7vw,88px);font-weight:900;color:var(--lime);line-height:.95;margin-bottom:14px}
.ft-brand-name em{color:var(--orange);font-style:normal}
.ft-tagline{font-family:var(--body);font-size:15px;color:rgba(255,255,255,.45);line-height:1.65;max-width:280px}
.ft-col-title{font-family:var(--disp);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:14px;display:block}
.ft-links{display:flex;flex-direction:column;gap:10px}
.ft-link{font-family:var(--body);font-size:15px;color:rgba(255,255,255,.65);transition:color .2s}
.ft-link:hover{color:var(--lime)}
.ft-addr{font-family:var(--body);font-size:14px;color:rgba(255,255,255,.4);line-height:2}
.ft-addr a{color:rgba(255,255,255,.6);text-decoration:underline}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.ft-copy{font-family:var(--body);font-size:11px;color:rgba(255,255,255,.25);letter-spacing:.07em;text-transform:uppercase}
.ft-legal{display:flex;gap:20px}
.ft-legal a{font-family:var(--body);font-size:12px;color:rgba(255,255,255,.3);transition:color .2s}
.ft-legal a:hover{color:var(--lime)}

.page-hero{position:relative;min-height:55vh;background:var(--purple);display:flex;align-items:flex-end;padding:88px 32px 60px;overflow:hidden}
.page-hero-bg{position:absolute;inset:0}
.page-hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.18}
.page-hero-content{position:relative;z-index:1}
.page-hero-tag{font-family:var(--disp);font-size:12px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.page-hero-h{font-family:var(--disp);font-size:clamp(56px,9vw,130px);font-weight:900;color:#fff;line-height:.92}

.inner-block{padding:72px 32px;border-bottom:1px solid rgba(255,255,255,.06)}
.ib-tag{font-family:var(--disp);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);margin-bottom:14px}
.ib-h{font-family:var(--disp);font-size:clamp(32px,4.5vw,60px);font-weight:900;color:#fff;line-height:1.02;margin-bottom:22px}
.ib-p{font-family:var(--body);font-size:16px;color:rgba(255,255,255,.55);line-height:1.88;max-width:740px}
.ib-p+.ib-p{margin-top:16px}

.split-block{display:grid;grid-template-columns:1fr 1fr;min-height:520px;border-bottom:1px solid rgba(255,255,255,.06)}
.sb-img{overflow:hidden}
.sb-img img{width:100%;height:100%;object-fit:cover}
.sb-text{padding:72px 52px;display:flex;flex-direction:column;justify-content:center;background:var(--navy)}

.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.svc{background:var(--navy);padding:48px 32px;border:1px solid rgba(255,255,255,.04);transition:background .25s}
.svc:hover{background:var(--purple)}
.svc-num{font-family:var(--disp);font-size:72px;font-weight:900;color:var(--orange);line-height:1;margin-bottom:14px}
.svc-h{font-family:var(--disp);font-size:clamp(22px,2.2vw,30px);font-weight:700;color:#fff;margin-bottom:12px}
.svc-p{font-family:var(--body);font-size:14px;color:rgba(255,255,255,.45);line-height:1.8}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;min-height:600px}
.ci{background:var(--purple);padding:72px 52px;display:flex;flex-direction:column;justify-content:space-between}
.ci-h{font-family:var(--disp);font-size:clamp(40px,6vw,80px);font-weight:900;color:var(--lime);line-height:1}
.ci-items{display:flex;flex-direction:column;gap:22px;margin-top:40px}
.ci-label{font-family:var(--disp);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:4px}
.ci-val{font-family:var(--body);font-size:16px;color:#fff}
.cf{background:var(--navy);padding:72px 52px}
.cf-h{font-family:var(--disp);font-size:clamp(26px,3.5vw,44px);font-weight:900;color:#fff;margin-bottom:36px}
.form-row{margin-bottom:20px}
.form-label{font-family:var(--disp);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.35);display:block;margin-bottom:7px}
.form-input,.form-ta{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:14px 16px;font-family:var(--body);font-size:15px;color:#fff;outline:none;transition:border-color .2s;border-radius:0}
.form-input:focus,.form-ta:focus{border-color:var(--lime)}
.form-ta{height:130px;resize:vertical}
.form-submit{background:var(--orange);clip-path:polygon(4% 0%, 100% 0%, 96% 100%, 0% 100%);border:none;padding:16px 40px 16px 34px;font-family:var(--disp);font-size:18px;font-weight:700;color:#fff;transition:background .2s;margin-top:8px}
.form-submit:hover{background:var(--pink)}

.news-list-page{padding:0 32px}
.nl{display:grid;grid-template-columns:280px 1fr;gap:0;border-bottom:1px solid rgba(255,255,255,.06);padding:44px 0}
.nl-img{overflow:hidden;height:190px}
.nl-img img{width:100%;height:100%;object-fit:cover;clip-path:polygon(0% 0%, 92% 0%, 100% 100%, 8% 100%);transition:transform .4s}
.nl:hover .nl-img img{transform:scale(1.04)}
.nl-body{padding:0 44px;display:flex;flex-direction:column;justify-content:center}
.nl-date{font-family:var(--disp);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.nl-title{font-family:var(--disp);font-size:clamp(20px,2.2vw,28px);font-weight:700;color:#fff;line-height:1.18;margin-bottom:14px}
.nl-desc{font-family:var(--body);font-size:15px;color:rgba(255,255,255,.45);line-height:1.75}

.proj-list{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:0}
.pl-item{position:relative;overflow:hidden;cursor:pointer}
.pl-img{height:380px;overflow:hidden}
.pl-img img{width:100%;height:100%;object-fit:cover;clip-path:none;transition:transform .4s}
.pl-item:hover .pl-img img{transform:scale(1.06)}
.pl-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(5,8,43,.9) 0%,transparent 50%);display:flex;flex-direction:column;justify-content:flex-end;padding:28px}
.pl-client{font-family:var(--disp);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}
.pl-title{font-family:var(--disp);font-size:clamp(22px,2.5vw,32px);font-weight:900;color:#fff;line-height:1.1}

.legal-page{max-width:840px;margin:0 auto;padding:80px 32px 100px}
.lp-h{font-family:var(--disp);font-size:clamp(44px,7vw,90px);font-weight:900;color:var(--lime);line-height:.95;margin-bottom:12px}
.lp-sub{font-family:var(--body);font-size:14px;color:rgba(255,255,255,.35);padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:40px}
.lp-sec{margin-bottom:36px}
.lp-sec h2{font-family:var(--disp);font-size:24px;font-weight:700;color:var(--orange);margin-bottom:12px}
.lp-sec p{font-family:var(--body);font-size:15px;color:rgba(255,255,255,.5);line-height:1.85;margin-bottom:12px}

@media(max-width:900px){
.hero-poly{width:82vw}
.hw-1{font-size:52px}
.hw-2{font-size:42px;right:2%}
.hw-3{font-size:46px}
.proj-grid{grid-template-columns:1fr}
.proj-card:nth-child(1),.proj-card:nth-child(3){margin-top:0}
.newscta{flex-direction:column;padding:52px 24px}
.ncta-poly{width:100%;max-width:100%;min-width:unset}
.news-grid{grid-template-columns:1fr}
.footer-top{grid-template-columns:1fr}
.split-block,.contact-grid,.proj-list{grid-template-columns:1fr}
.svc-grid{grid-template-columns:1fr}
.ov-panel{width:88%;padding-left:16%}
.news-list-page{padding:0 24px}
.nl{grid-template-columns:1fr}
.nl-body{padding:16px 0 0}
}
