*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 "Source Sans 3",system-ui,sans-serif;color:#1c2a3f;background:#fff}h1,h2,h3,h4{font-family:Sora,system-ui,sans-serif;line-height:1.2;margin:0 0 .5em}a{color:inherit}img{max-width:100%;height:auto}
:root{--navy:#0d1b33;--amber:#f5a800;--mute:#5b6b80;--line:#d9e2ec}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.hdr{background:linear-gradient(90deg,#172640,#0c1830);border-bottom:3px solid var(--amber);position:sticky;top:0;z-index:20}.hdr-in{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:12px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff}.brand img{border-radius:50%}.brand span{display:flex;flex-direction:column;line-height:1.1}.brand b{font:700 22px Sora,sans-serif}.brand small{font-size:10px;letter-spacing:.14em;color:#b9c6da}
nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}nav a{color:#dbe4f2;text-decoration:none;font-weight:600;padding:8px 14px;border-radius:6px}nav a:hover,nav a.on{background:rgba(255,255,255,.09);color:#fff}nav a.btn{background:var(--amber);color:var(--navy)}
.btn{display:inline-block;padding:12px 24px;border-radius:6px;font-weight:700;text-decoration:none;border:2px solid transparent;cursor:pointer;font:700 16px "Source Sans 3",sans-serif}.btn.sm{padding:8px 16px}.amber{background:var(--amber);color:var(--navy)}.amber:hover{filter:brightness(1.08)}.line{border-color:#fff;color:#fff}.line:hover{background:rgba(255,255,255,.1)}
.dark{background:var(--navy);color:#fff}.dark h2{font-size:clamp(26px,3.4vw,36px)}.phead{padding:64px 0 48px}.phead h1{font-size:clamp(34px,5vw,52px)}.phead p{color:#9fc4f0;max-width:520px;margin:0}
.hero{padding:64px 0}.hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center}.hero h1{font-size:clamp(32px,4.6vw,50px)}.kick{color:var(--amber);font-weight:700;letter-spacing:.14em;font-size:13px;margin:0 0 12px}.lead{color:#c9d6ea;font-size:18px;max-width:520px}.hero-img{border-radius:12px;max-height:520px;width:100%;object-fit:cover;box-shadow:0 20px 50px rgba(0,0,0,.45)}
.tags{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:24px 0 0}.tags li{border:1px solid #36527d;border-radius:99px;padding:3px 14px;font-size:14px;color:#c9d6ea}
.sec{padding:64px 0}.sec.alt{background:#f3f6fa}.sec h2{font-size:clamp(26px,3.4vw,36px)}.sub{color:var(--mute);margin:0 0 28px}.more{margin:24px 0 0;font-weight:700}.more a{color:#b57a00;text-decoration:none}
.grid{display:grid;gap:18px}.g4{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:6px}.svc{border-top:4px solid var(--amber);padding:22px 22px 20px}.svc h3{font-size:18px}.svc p{color:var(--mute);font-size:15px;margin:0 0 12px}.svc ul{margin:0;padding-left:20px;color:#4a5a70;font-size:15px}
.work{margin:0;overflow:hidden}.thumb{aspect-ratio:4/3;background:#0d1b33}.thumb.cadimg{background:#fff}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb.cadimg img{object-fit:contain}.work figcaption{padding:14px 18px 18px}.work h3{font-size:17px;margin-bottom:4px}.work p{margin:0;color:var(--mute);font-size:14.5px}.zoom{cursor:zoom-in}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;border-top:1px solid #243a5f;padding-top:32px;margin-top:24px}.steps span{font:700 30px Sora,sans-serif;color:var(--amber)}.steps h3{font-size:18px;margin:4px 0}.steps p{margin:0;color:#aebbd1;font-size:14.5px}.dark .wrap>h2{margin:0}
.cta{padding:72px 0}.cta h2{max-width:640px;font-size:clamp(26px,3.6vw,38px);margin-bottom:24px}
.two{display:grid;grid-template-columns:1.3fr .8fr;gap:24px}.form,.info{padding:28px}.form h2,.info h2{font-size:24px}.form label{display:block;font-weight:600;font-size:14px;margin-bottom:14px}.form input,.form select,.form textarea{display:block;width:100%;margin-top:5px;padding:11px 12px;border:1px solid #c3cfdd;border-radius:6px;font:16px "Source Sans 3",sans-serif}.form textarea{min-height:120px;resize:vertical}.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--amber)}.hint{color:var(--mute);font-size:14px;margin:12px 0 0}.info p{margin:0 0 16px}.info a{color:#b57a00}
.prose{max-width:760px}.prose h2{font-size:22px;margin-top:28px}.prose p{color:#3b4a60}
.ftr{background:#08122a;color:#aebbd1;padding:48px 0 0}.ftr-in{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:32px;padding-bottom:32px}.ftr h4{color:#fff;font-size:15px;margin-bottom:10px}.ftr a,.ftr span{display:block;text-decoration:none;margin-bottom:6px;font-size:15px}.ftr a:hover{color:var(--amber)}.ftr .brand{display:flex;gap:12px;margin-bottom:16px}.ftr .brand span{display:flex;flex-direction:column;margin:0;font-size:inherit;line-height:1.15}.ftr .brand b{font-size:22px}.ftr .brand small{margin-top:5px;letter-spacing:.2em}.ftr p{font-size:14.5px;max-width:320px;margin:0}.copy{border-top:1px solid #1d2f52;padding:16px 20px;font-size:14px}
.wa{position:fixed;right:16px;bottom:16px;background:#25d366;color:#fff;font-weight:700;text-decoration:none;padding:12px 18px;border-radius:99px;z-index:30;box-shadow:0 6px 18px rgba(0,0,0,.3)}
.lb{position:fixed;inset:0;background:rgba(5,13,26,.94);z-index:50;display:none;align-items:center;justify-content:center;padding:20px;cursor:zoom-out}.lb.on{display:flex}.lb img{max-width:100%;max-height:100%;background:#fff;border-radius:6px}
.edit-in{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.edit .sub{max-width:520px;margin-bottom:24px}.facts{display:flex;flex-wrap:wrap;gap:20px 40px}.facts h3{font-size:clamp(20px,2.4vw,26px);margin:0}.facts p{margin:0;color:var(--mute);font-size:14.5px}.edit-img{width:100%;height:auto;border-radius:6px;box-shadow:0 12px 32px rgba(13,27,51,.25)}
.filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 32px}.chip{font:600 15px "Source Sans 3",sans-serif;color:var(--navy);background:#fff;border:1px solid var(--line);border-radius:99px;padding:9px 20px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.chip:hover{border-color:#9fb0c6}.chip.on{background:var(--navy);border-color:var(--navy);color:#fff}.chip:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.work[hidden]{display:none}
@media(max-width:800px){.edit-in{grid-template-columns:1fr;gap:28px}.hero-in,.two,.ftr-in{grid-template-columns:1fr}.hero-img{max-height:340px}nav a{padding:7px 9px;font-size:15px}.brand b{font-size:19px}}