@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600;700&display=swap');
:root{--blue:#2e3e99;--blue2:#24337f;--red:#c91d2b;--dark:#11151b;--paper:#f5f6f8;--muted:#68717d;--line:#e2e5ea;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#171a1f;background:var(--paper);line-height:1.65}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}
.navbar{position:fixed;z-index:50;top:0;left:0;right:0;background:rgba(255,255,255,.97);box-shadow:0 3px 20px rgba(0,0,0,.09);border-bottom:1px solid #e9ebef}.nav-wrap{max-width:1220px;height:88px;margin:auto;padding:8px 24px;display:flex;align-items:center;gap:34px}.brand img{width:150px;height:72px;object-fit:contain;display:block}.menu{display:flex;gap:28px;margin-left:auto;align-items:center}.menu a{font-size:13px;font-weight:700;text-transform:uppercase;color:#333c4a;letter-spacing:.3px}.menu a:hover{color:var(--red)}.nav-phone{background:var(--blue);color:#fff;padding:12px 17px;font-weight:800;font-size:13px}.menu-toggle{display:none;border:0;background:transparent;font-size:27px;color:var(--blue)}
.hero{min-height:780px;margin-top:88px;position:relative;background:url('images/hero.png') center/cover no-repeat;color:#fff;display:flex;align-items:center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,12,23,.91) 0%,rgba(12,19,31,.74) 48%,rgba(7,10,15,.26) 100%)}.hero-content{position:relative;max-width:1220px;width:100%;margin:auto;padding:120px 24px}.hero-kicker,.label{font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--red)}.hero-kicker{color:#fff;margin-bottom:17px}.hero h1,h2,h3{font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase}.hero h1{font-size:clamp(60px,8vw,105px);line-height:.88;letter-spacing:-2px;margin:0 0 27px}.hero h1 span,h2 span{color:#e3313d}.hero p{max-width:680px;font-size:18px;color:#e4e8ed;margin-bottom:30px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 24px;border:1px solid transparent;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;cursor:pointer}.btn.red{background:var(--red);color:#fff}.btn.red:hover{background:#a91420}.btn.light{border-color:rgba(255,255,255,.55);color:#fff}.btn.light:hover{border-color:#fff;background:#fff;color:var(--blue)}.hero-badges{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px;color:#c9d0d8;font-size:11px;text-transform:uppercase;letter-spacing:.7px}
.section{max-width:1220px;margin:auto;padding:100px 24px}.intro{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:end;background:#fff}.intro h2,.section-title h2,.about h2,.contact h2{font-size:clamp(47px,6vw,76px);line-height:.94;letter-spacing:-1px;margin:10px 0 0}.intro p{color:var(--muted);font-size:16px;margin:0}.services{background:var(--paper)}.section-title{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.section-title p{max-width:360px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service{background:#fff;border:1px solid var(--line);padding:31px;min-height:300px;position:relative;box-shadow:0 8px 25px rgba(20,30,50,.04)}.service>span{position:absolute;right:22px;top:18px;font:700 15px 'Barlow Condensed';color:#b2b8c0}.service h3{font-size:32px;color:var(--blue);margin:38px 0 12px}.service p{font-size:13px;color:var(--muted);margin:0}.service.accent{background:var(--blue);color:#fff}.service.accent h3{color:#fff}.service.accent p{color:#e0e4f2}.service.accent>span{color:#c8cfea}
.portfolio{background:#fff}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.gallery-card{padding:0;border:0;background:#20252b;position:relative;overflow:hidden;cursor:pointer;min-height:245px;grid-column:span 4;text-align:left}.gallery-card:nth-child(1){grid-column:span 7;grid-row:span 2;min-height:500px}.gallery-card:nth-child(2),.gallery-card:nth-child(3){grid-column:span 5}.gallery-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.4s}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.8) 100%)}.gallery-card:hover img{transform:scale(1.05)}.gallery-caption{position:absolute;z-index:2;left:22px;right:18px;bottom:18px;color:#fff}.gallery-caption strong{display:block;font:700 26px 'Barlow Condensed';text-transform:uppercase}.gallery-caption small{display:block;color:#d9dee5;font-size:11px;margin-top:2px}.dark-section{background:var(--dark);color:#fff}.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center}.light-label{color:#e3313d}.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.about-grid>div{border-top:1px solid #38404b;padding-top:15px}.about-grid b{color:#e3313d;font:700 14px 'Barlow Condensed'}.about-grid h3{font-size:28px;margin:18px 0 8px}.about-grid p{font-size:12px;color:#aeb6c1;margin:0}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px;background:#fff}.contact-copy>p{color:var(--muted);max-width:500px;margin:25px 0 35px}.contact-item{display:block;border-top:1px solid var(--line);padding:15px 0}.contact-item small{display:block;font-size:9px;letter-spacing:2px;color:#8a929d}.contact-item strong{font-size:20px;color:var(--blue)}.contact-form{background:var(--paper);padding:32px}.contact-form label{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:15px}.contact-form input,.contact-form textarea{width:100%;display:block;margin-top:7px;border:1px solid #d7dce2;background:#fff;padding:13px;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue)}.contact-form .btn{width:100%}.notice{padding:12px;margin-bottom:15px;font-size:13px}.notice.ok{background:#e6f5e9;color:#23682d}.notice.error{background:#fff0ee;color:#9b2c25}
.lightbox{display:none;position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.92);padding:45px 30px;align-items:center;justify-content:center;flex-direction:column}.lightbox.open{display:flex}.lightbox img{max-width:90vw;max-height:76vh;object-fit:contain}.lightbox div{max-width:900px;color:#fff;text-align:center;margin-top:12px}.lightbox strong{font:700 28px 'Barlow Condensed';text-transform:uppercase}.lightbox p{margin:4px 0;color:#cbd1d8;font-size:13px}.lightbox-close{position:absolute;right:25px;top:15px;background:transparent;border:0;color:#fff;font-size:42px;cursor:pointer}
footer{background:#fff;border-top:1px solid var(--line);max-width:none;padding:28px max(24px,calc((100vw - 1220px)/2));display:flex;align-items:center;gap:25px;justify-content:space-between;font-size:11px;color:#747d88}footer img{width:120px;height:60px;object-fit:contain}.mobile-call{display:none}
@media(max-width:900px){.nav-wrap{height:76px}.brand img{width:125px;height:62px}.menu-toggle{display:block;margin-left:auto}.menu{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:10px 24px 18px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 10px 20px rgba(0,0,0,.08)}.menu.open{display:flex}.menu a{padding:13px 0;border-bottom:1px solid #edf0f3}.nav-phone{display:none}.hero{margin-top:76px;min-height:700px}.intro,.about,.contact{grid-template-columns:1fr;gap:45px}.service-grid{grid-template-columns:1fr 1fr}.section-title{display:block}.section-title p{margin-top:15px}.about-grid{grid-template-columns:1fr}.gallery-card,.gallery-card:nth-child(1),.gallery-card:nth-child(2),.gallery-card:nth-child(3){grid-column:span 6;grid-row:span 1;min-height:280px}.gallery-card:nth-child(1){grid-column:span 12;min-height:420px}.mobile-call{display:block;position:fixed;z-index:80;bottom:0;left:0;right:0;background:var(--red);text-align:center;padding:13px;font-weight:800;color:#fff}.mobile-call a{color:#fff}footer{padding-bottom:75px}}
@media(max-width:560px){.hero h1{font-size:55px}.hero p{font-size:15px}.hero-buttons .btn{width:100%}.hero-badges{display:grid;gap:9px}.section{padding:75px 20px}.service-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery-card,.gallery-card:nth-child(1),.gallery-card:nth-child(2),.gallery-card:nth-child(3){grid-column:span 1;min-height:250px}.gallery-card:nth-child(1){min-height:320px}.contact-form{padding:22px}footer{flex-direction:column;align-items:flex-start}}
