:root{
    --ink:#0B1324; --panel:#0E131A; --line:rgba(255,255,255,.08);
    --muted:#9CA3AF; --accent:#FF7A00; --amber:#FF9F1C; --white:#fff;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--ink);color:var(--white);font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* Layout */
.container{max-width:1160px;margin:0 auto;padding:0 20px}
.section{padding:56px 0}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px}
.muted{color:var(--muted)}
.small{font-size:12px}

/* Typography */
.h1{font-size:36px;line-height:1.2;margin:8px 0 8px}
.h2{font-size:28px;margin:0 0 6px}
.h3{font-size:20px;margin:0 0 6px}
.lead{max-width:640px;color:#E5E7EB}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:10px;border-radius:14px;padding:.75rem 1.1rem;background:var(--accent);color:#111;font-weight:700;border:0;cursor:pointer;transition:filter .2s,transform .08s}
.btn:hover{filter:brightness(1.05)}
.btn:active{transform:translateY(1px)}
.btn.ghost{background:transparent;color:var(--white);border:1px solid var(--line)}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg, rgba(11,19,36,.85), rgba(11,19,36,0))}
.site-header .bar{height:64px;display:flex;align-items:center;justify-content:space-between}
.brand{position:relative;display:flex;align-items:center;font-weight:800;letter-spacing:.2px}
.brand .label{font-size:18px}
.brand .stars{position:absolute;inset:0;pointer-events:none}
.brand .star{position:absolute;color:#FFB347;filter:drop-shadow(0 0 6px rgba(255,180,71,.9))}
.brand .s1{top:-6px;left:-10px;font-size:10px;animation:glow 2.2s ease-in-out infinite}
.brand .s2{top:-10px;right:20px;font-size:12px;animation:glow 2.6s .4s infinite}
.brand .s3{bottom:-10px;left:40%;font-size:9px;animation:glow 2.4s .2s infinite}
@keyframes glow{0%{transform:scale(.8);opacity:.6}50%{transform:scale(1.1);opacity:1}100%{transform:scale(.8);opacity:.6}}

.nav{display:flex;align-items:center;gap:18px}
.link{display:inline-flex;align-items:center;gap:8px;opacity:.9}
.link:hover{opacity:1}

.menu-wrap{position:relative}
.menu-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;color:inherit;cursor:pointer;padding:8px 6px;border-radius:10px}
.menu-btn:hover{background:rgba(255,255,255,.04)}
.menu-btn .caret{font-size:12px;opacity:.75;margin-left:4px}
.menu-panel{position:absolute;left:0;top:100%;margin-top:10px;display:none}
.menu-panel.right{right:0;left:auto}
.menu-grid{display:grid;grid-template-columns:repeat(2, minmax(0,1fr));gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px;min-width:480px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.menu-grid.three{grid-template-columns:repeat(3, minmax(0,1fr))}
.menu-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;border:1px solid transparent}
.menu-item:hover{background:rgba(255,255,255,.05);border-color:var(--line)}
.menu-lang{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:6px;min-width:170px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.menu-lang .lang{display:block;border-radius:8px;padding:8px}
.menu-lang .lang:hover{background:rgba(255,255,255,.05)}
.menu-wrap[aria-expanded="true"] .menu-panel{display:block;animation:drop .16s ease-out}
@keyframes drop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}

/* Mobile menu */
.m-trigger{height:40px;width:40px;border-radius:10px;background:rgba(255,255,255,.05);border:1px solid var(--line);display:none}
.m-wrap{position:fixed;inset:0;z-index:60}
.m-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.m-panel{position:absolute;inset:16px;max-width:940px;margin:0 auto;background:var(--panel);border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column}
.m-head{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 16px}
.m-close{height:40px;width:40px;border-radius:10px;background:rgba(255,255,255,.05);border:1px solid var(--line)}
.m-body{display:grid;grid-template-columns:1fr;gap:16px;padding:0 16px 16px}
.m-col{background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:12px;padding:12px}
.m-title{color:#D1D5DB;margin-bottom:6px;display:flex;gap:8px;align-items:center}
.m-item{display:block;padding:8px;border-radius:8px}
.m-item:hover{background:rgba(255,255,255,.05)}
.m-langs{display:flex;gap:10px;margin-top:8px}
.m-lang{flex:1;text-align:center;padding:10px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.m-cta{padding:0 16px 16px}
@media (max-width: 1024px){ .nav{display:none} .m-trigger{display:inline-flex} .menu-grid{min-width:unset} }

/* Hero */
.hero{padding:28px 0 10px}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}
.tag{display:inline-flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:rgba(255,255,255,.03)}
.cta-row{display:flex;gap:10px;margin-top:12px}
.hero-3d{padding:0;overflow:hidden}
#scene3d{display:block;width:100%;height:420px}
@media (max-width: 1024px){ .hero-grid{grid-template-columns:1fr} #scene3d{height:320px} }

/* Sections */
.section-head{margin-bottom:10px}
.card-grid{display:grid;gap:16px}
.card-grid.three{grid-template-columns:repeat(3, minmax(0,1fr))}
.card-grid.four{grid-template-columns:repeat(4, minmax(0,1fr))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px}
.card-title{font-weight:700;margin-bottom:6px;display:flex;gap:10px;align-items:center;color:#FFD08A}
.card.pill{display:flex;gap:10px;align-items:center;justify-content:center}
.grid-2{display:grid;gap:16px;grid-template-columns:repeat(2, minmax(0,1fr))}
.office{display:grid;gap:12px;grid-template-columns:repeat(2, minmax(0,1fr))}
.office .label{color:#D1D5DB;margin-bottom:4px;display:block}
@media (max-width: 900px){ .card-grid.three{grid-template-columns:1fr} .card-grid.four{grid-template-columns:1fr 1fr} .grid-2,.office{grid-template-columns:1fr} }

/* Contact */
.contact-grid{display:grid;gap:16px;grid-template-columns:1fr .9fr}
.form .grid-2{display:grid;gap:12px;grid-template-columns:repeat(2, minmax(0,1fr))}
.field label{display:block;color:#D1D5DB;font-size:12px;margin-bottom:6px}
.field input,.field textarea{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:10px;color:var(--white);padding:10px 12px;outline:none}
.field input:focus,.field textarea:focus{border-color:#FFD08A}
.hp{display:none}
.alert{padding:10px 12px;border-radius:10px;margin-bottom:8px}
.alert.ok{background:rgba(16,185,129,.15);border:1px solid rgba(16,185,129,.35)}
.alert.err{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.35)}
.contact-side .info{display:grid;gap:8px;margin-top:10px}
.contact-side .label{color:#D1D5DB;width:140px;display:inline-block}

/* Footer */
.site-footer{padding:24px 0 40px}
.f-grid{display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr 2fr;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px}
.f-title{font-weight:700;margin-bottom:8px}
.f-brand{font-weight:800;margin-bottom:4px}
.f-grid ul{margin:0;padding:0;list-style:none}
.f-grid li{margin:6px 0}
.f-grid a:hover{color:#FFD08A}
@media (max-width: 900px){ .contact-grid{grid-template-columns:1fr} .f-grid{grid-template-columns:1fr 1fr} }
@media (max-width: 600px){ .f-grid{grid-template-columns:1fr} }

/* Loader */
#loader{position:fixed;inset:0;display:grid;place-items:center;background:var(--ink);z-index:1000;transition:opacity .5s ease}
.loader-wrap{text-align:center}
.ring{width:92px;height:92px;border-radius:50%;border:3px solid rgba(255,255,255,.08);position:relative;display:grid;place-items:center}
.ring span{position:absolute;inset:-3px;border-radius:50%;background:conic-gradient(from 0deg, var(--accent), var(--amber), var(--accent));
    -webkit-mask:radial-gradient(circle 36px at center, transparent 35px, #000 35px)}
.load-title{margin-top:14px;font-weight:800;letter-spacing:.3px;display:flex;gap:8px;align-items:center}
.load-title i{color:#FFB347;filter:drop-shadow(0 0 6px rgba(255,180,71,.8))}
