:root{--royal:#1e3a8a;--royal2:#1d4ed8;--ink:#0f172a;--muted:#64748b;--panel:#f8fafc;--border:rgba(15,23,42,.12);--shadow:0 18px 50px rgba(2,6,23,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff}
a{color:inherit;text-decoration:none}
.container{max-width:1120px;margin:0 auto;padding:0 18px}
.btn{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:12px 16px;font-weight:900;border:1px solid transparent;cursor:pointer}
.btn-primary{background:var(--royal);color:#fff}.btn-primary:hover{background:var(--royal2)}
.btn-outline{background:transparent;border-color:rgba(255,255,255,.55);color:#fff}.btn-outline:hover{background:rgba(255,255,255,.10)}
.btn-ghost{background:transparent;border-color:var(--border);color:var(--ink)}.btn-ghost:hover{border-color:rgba(15,23,42,.25)}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.90);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.head{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand .logo{width:42px;height:42px;border-radius:16px;background:#fff;border:1px solid var(--border);display:grid;place-items:center;overflow:hidden;box-shadow:0 10px 22px rgba(2,6,23,.08)}
.brand .logo img{width:34px;height:34px;object-fit:contain}
.brand .title{line-height:1.1}
.brand .title b{display:block;font-size:15px}
.brand .title span{display:block;font-size:12px;color:var(--muted);font-weight:800;margin-top:3px}
nav{display:none;gap:18px;font-size:13px}
nav a{color:rgba(15,23,42,.78);font-weight:900}nav a:hover{color:var(--royal)}
.head-right{display:flex;align-items:center;gap:10px}
.menu-btn{display:inline-flex;border:1px solid var(--border);background:#fff;border-radius:14px;padding:10px 12px;font-weight:900}
.mobile{display:none;border-top:1px solid var(--border);background:#fff}
.mobile a{display:block;padding:12px 18px;font-weight:900;color:rgba(15,23,42,.85)}.mobile a:hover{background:var(--panel)}
.hero{position:relative;min-height:600px;height:84vh;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 900ms ease}
.hero-bg img.active{opacity:1}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:rgba(2,6,23,.62)}
.hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg, rgba(30,58,138,.62), rgba(0,0,0,.28), rgba(0,0,0,.12))}
.hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:center}
.hero-card{position:absolute;top:24px;left:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(14px);border-radius:28px;box-shadow:var(--shadow);padding:18px;width:340px;color:#fff}
.hero-card .small{font-size:11px;color:rgba(255,255,255,.78);font-weight:1000;letter-spacing:.7px}
.hero-card .logo-box{margin-top:10px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(255,255,255,.96);padding:12px;display:flex;justify-content:flex-end;align-items:center}
.hero-card img{height:78px;width:auto;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(2,6,23,.25))}
.hero-card .note{margin-top:10px;font-size:11px;color:rgba(255,255,255,.85);font-weight:900;line-height:1.35}
.hero-card .panel-actions{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}
.hero-text h1{margin:0;color:#fff;font-size:42px;line-height:1.05;letter-spacing:-.02em}
.hero-text p{margin:14px 0 0;color:rgba(255,255,255,.92);font-size:18px;font-weight:800}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.tag{font-size:12px;color:#fff;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.10);font-weight:1000}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.ticks{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px;color:rgba(255,255,255,.9);font-size:13px;font-weight:1000}
section{padding:70px 0}
.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}
h2{margin:0;font-size:30px;letter-spacing:-.02em}
.subtitle{margin:10px 0 0;color:var(--muted);font-weight:800}
.grid{display:grid;gap:16px}
.grid-2{grid-template-columns:1fr}
.grid-3{grid-template-columns:1fr}
.card{background:#fff;border:1px solid var(--border);border-radius:28px;box-shadow:0 10px 30px rgba(2,6,23,.06)}
.card .pad{padding:20px}
.kicker{color:var(--royal);font-weight:1100}
ul{margin:12px 0 0;padding:0;list-style:none}
li{display:flex;gap:10px;margin:10px 0;color:rgba(15,23,42,.82);font-weight:800}
li::before{content:"";margin-top:7px;width:8px;height:8px;border-radius:50%;background:var(--royal);flex:0 0 auto}
.pillrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.pill{border:1px solid var(--border);background:var(--panel);border-radius:999px;padding:10px 12px;font-weight:1000;color:rgba(15,23,42,.80);font-size:12px}
.gallery-grid{display:grid;gap:14px}
.gitem{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--border);box-shadow:0 10px 28px rgba(2,6,23,.08);cursor:pointer;background:#000}
.gitem img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transition:transform 350ms ease, opacity 350ms ease;opacity:.92}
.gitem:hover img{transform:scale(1.06);opacity:1}
.gcap{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:16px;background:rgba(2,6,23,.55);backdrop-filter:blur(10px);color:#fff}
.gcap b{display:block;font-size:13px}
.gcap span{display:block;font-size:11px;color:rgba(255,255,255,.85);margin-top:4px;font-weight:800}
.lightbox{position:fixed;inset:0;background:rgba(2,6,23,.78);display:none;align-items:center;justify-content:center;padding:18px;z-index:1000}
.lightbox.open{display:flex}
.lb-card{max-width:980px;width:100%;background:#0b1220;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.12)}
.lb-top{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;color:#fff;font-weight:1000}
.lb-top button{background:transparent;border:1px solid rgba(255,255,255,.20);color:#fff;border-radius:14px;padding:8px 10px;font-weight:1000;cursor:pointer}
.lb-img{width:100%;height:min(70vh, 640px);background:#000}
.lb-img img{width:100%;height:100%;object-fit:contain}
.contact{background:var(--royal);color:#fff}
.contact .card{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.14);color:#fff;box-shadow:none}
footer{padding:22px 0;text-align:center;color:rgba(15,23,42,.55);font-size:13px;border-top:1px solid var(--border)}
.wa{position:fixed;right:18px;bottom:18px;width:52px;height:52px;border-radius:999px;background:var(--royal);color:#fff;display:grid;place-items:center;box-shadow:0 18px 40px rgba(2,6,23,.25);border:0;cursor:pointer}
.wa:hover{background:var(--royal2)}
@media (min-width:780px){nav{display:flex}.menu-btn{display:none}.grid-2{grid-template-columns:1.2fr .8fr}.grid-3{grid-template-columns:repeat(3,1fr)}.gallery-grid{grid-template-columns:repeat(3,1fr)}.hero-text h1{font-size:60px}.hero-text p{font-size:22px}.hero-card{left:26px}}
@media (max-width:520px){.hero-card{position:relative;top:auto;left:auto;margin:18px 0 0}}
