:root{
  --bg:#050816;--bg2:#0b1024;--card:#10172f;--text:#f8fafc;--muted:#94a3b8;--line:rgba(255,255,255,.1);--gold:#f8c46b;--cyan:#38bdf8;--green:#22c55e;
}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden}a{text-decoration:none;color:inherit}.section{padding:100px 7%}.loader{position:fixed;inset:0;background:#050816;z-index:9999;display:flex;align-items:center;justify-content:center;gap:16px;transition:.5s}.loader.hide{opacity:0;visibility:hidden}.loader-ring{width:38px;height:38px;border:3px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;padding:18px 7%;background:rgba(5,8,22,.72);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.7px}.brand-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--gold),var(--cyan));display:grid;place-items:center;color:#06101f;font-weight:900}.nav-menu{display:flex;gap:26px;color:var(--muted);font-size:14px}.nav-menu a:hover{color:var(--gold)}.menu-btn{display:none;background:none;color:white;border:none;font-size:28px}
.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(56,189,248,.22),transparent 30%),radial-gradient(circle at 70% 30%,rgba(248,196,107,.20),transparent 26%),linear-gradient(135deg,#050816,#111c3f);z-index:-1}.hero-content{max-width:860px}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:800;margin-bottom:14px}.hero h1{font-size:clamp(42px,7vw,84px);line-height:1.02;letter-spacing:-3px;margin-bottom:24px}.hero-text{font-size:20px;color:#cbd5e1;max-width:720px;line-height:1.7}.hero-actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:800;transition:.25s}.btn.primary{background:linear-gradient(135deg,var(--gold),#fff0bd);color:#09111f}.btn.secondary{border:1px solid var(--line);color:white}.btn:hover{transform:translateY(-3px)}.hero-stats{display:flex;gap:20px;margin-top:44px;flex-wrap:wrap}.hero-stats div{background:rgba(255,255,255,.07);border:1px solid var(--line);border-radius:22px;padding:18px 26px}.hero-stats strong{display:block;font-size:28px;color:var(--gold)}.hero-stats span{color:var(--muted);font-size:13px}
.section-title{max-width:760px;margin-bottom:45px}.section-title h2,.hotel h2,.support h2{font-size:clamp(30px,4vw,52px);line-height:1.1;letter-spacing:-1.5px}.muted,.section-title p:not(.eyebrow){color:var(--muted);margin-top:12px}.feature-grid,.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-grid{grid-template-columns:repeat(4,1fr)}.feature-card,.service-card,.contact-card{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.feature-card span,.icon{color:var(--gold);font-weight:900;font-size:32px}.feature-card h3,.service-card h3{margin:18px 0 10px;font-size:21px}.feature-card p,.service-card p,.hotel p,.support p{color:var(--muted);line-height:1.7}
.partner{background:var(--bg2);overflow:hidden}.partner-slider{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:30px;background:rgba(255,255,255,.04);padding:22px}.partner-slider:before,.partner-slider:after{content:"";position:absolute;top:0;width:90px;height:100%;z-index:2}.partner-slider:before{left:0;background:linear-gradient(90deg,var(--bg2),transparent)}.partner-slider:after{right:0;background:linear-gradient(270deg,var(--bg2),transparent)}.partner-track{display:flex;gap:18px;animation:slide 26s linear infinite;width:max-content}.partner-slider:hover .partner-track{animation-play-state:paused}.partner-logo{min-width:180px;height:92px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid var(--line);display:grid;place-items:center;font-size:22px;font-weight:900;color:white;filter:grayscale(1);opacity:.75;transition:.25s}.partner-logo:hover{filter:grayscale(0);opacity:1;color:var(--gold);transform:scale(1.04)}@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.hotel{background:linear-gradient(135deg,rgba(248,196,107,.13),rgba(56,189,248,.10)),#070b1c}.hotel-content{max-width:850px}.hotel-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}.hotel-list span{padding:16px 18px;background:rgba(255,255,255,.07);border:1px solid var(--line);border-radius:18px;color:#e2e8f0}.client-slider{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.client-card{min-height:220px;border-radius:30px;border:1px solid var(--line);padding:30px;background:var(--card);transition:.3s}.client-card.active,.client-card:hover{background:linear-gradient(135deg,rgba(248,196,107,.18),rgba(56,189,248,.12));transform:translateY(-8px)}.client-card h3{font-size:26px;margin-bottom:12px}.client-card p{color:var(--muted);line-height:1.7}
.gallery{background:var(--bg2)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-item{height:240px;border-radius:28px;position:relative;overflow:hidden;background:linear-gradient(135deg,#14213d,#1f3b73);border:1px solid var(--line)}.gallery-item:nth-child(2n){background:linear-gradient(135deg,#2a1f3d,#70512b)}.gallery-item span{position:absolute;left:18px;bottom:18px;background:rgba(0,0,0,.45);backdrop-filter:blur(10px);padding:10px 14px;border-radius:999px;font-weight:800}.gallery-item:hover{transform:scale(1.02);transition:.3s}.support-box{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid var(--line);border-radius:34px;padding:42px}.contact-card p{margin-bottom:12px}.contact-card .btn{margin-top:12px}.wa-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:var(--green);display:grid;place-items:center;font-weight:900;color:white;box-shadow:0 14px 35px rgba(34,197,94,.35);z-index:900}footer{text-align:center;padding:28px;color:var(--muted);border-top:1px solid var(--line)}.reveal{opacity:0;transform:translateY(28px);transition:.8s}.reveal.show{opacity:1;transform:none}
@media(max-width:900px){.menu-btn{display:block}.nav-menu{position:absolute;top:74px;left:7%;right:7%;display:none;flex-direction:column;background:#0b1024;border:1px solid var(--line);border-radius:24px;padding:22px}.nav-menu.open{display:flex}.feature-grid,.service-grid,.client-slider,.gallery-grid,.support-box{grid-template-columns:1fr}.hotel-list{grid-template-columns:1fr}.section{padding:80px 6%}.hero h1{letter-spacing:-1.5px}.partner-logo{min-width:150px}.hero-stats div{width:100%}}
.logo {
    height: 40px;
    width: auto;
    object-fit: contain;
}

header .logo {
    transition: 0.3s;
}

header .logo:hover {
    transform: scale(1.05);
}
.logo {
    height: 42px;
    filter: brightness(0) invert(1);
}
.brand {
    display: flex;
    align-items: center;
    gap: 12px;
}

.logo {
    height: 45px;
    object-fit: contain;
}

/* TEXT BRAND */
.brand-text-wrap {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.brand-title {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1px;
    margin: 0;
}

.brand-subtitle {
    font-size: 11px;
    color: #94a3b8;
    letter-spacing: 1.5px;
    margin: 0;
}
.brand-subtitle {
    font-size: 10px;
    color: #38bdf8;
    letter-spacing: 2px;
}

.clients {
    padding: 100px 20px;
    background:
        radial-gradient(circle at top right, rgba(56, 189, 248, 0.12), transparent 35%),
        linear-gradient(180deg, #020617 0%, #0f172a 100%);
    color: #ffffff;
}

.clients .container {
    max-width: 1180px;
    margin: 0 auto;
}

.section-header {
    max-width: 720px;
    margin: 0 auto 55px;
    text-align: center;
}

.section-label {
    display: inline-block;
    margin-bottom: 14px;
    padding: 8px 16px;
    border: 1px solid rgba(56, 189, 248, 0.35);
    border-radius: 999px;
    color: #38bdf8;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.section-header h2 {
    margin: 0 0 18px;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.1;
    letter-spacing: -1px;
}

.section-header p {
    margin: 0;
    color: #94a3b8;
    font-size: 16px;
    line-height: 1.8;
}

.client-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.client-card {
    position: relative;
    overflow: hidden;
    min-height: 190px;
    padding: 28px;
    border-radius: 24px;
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(148, 163, 184, 0.18);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.28);
    transition: 0.35s ease;
}

.client-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(56,189,248,0.18), transparent 45%);
    opacity: 0;
    transition: 0.35s ease;
}

.client-card:hover {
    transform: translateY(-8px);
    border-color: rgba(56, 189, 248, 0.55);
}

.client-card:hover::before {
    opacity: 1;
}

.client-card h3,
.client-card p,
.client-type {
    position: relative;
    z-index: 1;
}

.client-type {
    display: inline-block;
    margin-bottom: 45px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(56, 189, 248, 0.12);
    color: #7dd3fc;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.client-card h3 {
    margin: 0 0 8px;
    font-size: 20px;
    line-height: 1.3;
}

.client-card p {
    margin: 0;
    color: #94a3b8;
    font-size: 14px;
}

.client-card.featured {
    border-color: rgba(56, 189, 248, 0.65);
    background:
        linear-gradient(135deg, rgba(56, 189, 248, 0.16), rgba(15, 23, 42, 0.9));
}

@media (max-width: 992px) {
    .client-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .clients {
        padding: 75px 16px;
    }

    .client-grid {
        grid-template-columns: 1fr;
    }

    .client-card {
        min-height: 170px;
    }
}