:root {
    --primary: #0B1F33;
    --navy: #0B1F33;
    --blue: #163A5C;
    --blue-bright: #4DA3FF;
    --primary-dark: #071522;
    --primary-light: #163A5C;
    --accent: #4DA3FF;
    --accent-metal: #8a8d91;
    --bg-dark: #080808;
    --bg-card: #0a0a0a;
    --bg-input: #1a1a1a;
    --text-main: #ffffff;
    --text-secondary: #b0b0b0;
    --text-muted: #666;
    --border-color: rgba(255, 255, 255, 0.1);
    --border-hover: rgba(77, 163, 255, 0.8);
    --font-heading: 'Outfit', sans-serif;
    --font-body: 'Inter', sans-serif;
    --transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    --shadow-card: 0 10px 30px -10px rgba(0, 0, 0, 0.5);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

a {
    text-decoration: none;
    color: inherit;
    transition: var(--transition);
}

ul {
    list-style: none;
}

html {
    scroll-behavior: smooth;
    font-size: 16px;
}

body {
    background-color: var(--bg-dark);
    color: var(--text-main);
    font-family: var(--font-body);
    line-height: 1.7;
    overflow-x: hidden;
}


::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    background: var(--bg-dark);
}

::-webkit-scrollbar-thumb {
    background: var(--primary);
    border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--primary-light);
}


h1,
h2,
h3,
h4,
h5 {
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--text-main);
}

.section-subtitle {
    display: inline-block;
    color: var(--accent);
    text-transform: uppercase;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 3px;
    margin-bottom: 15px;
}

.section-title {
    font-size: 3rem;
    line-height: 1.1;
    margin-bottom: 20px;
    background: linear-gradient(180deg, #fff 0%, #aaa 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.line-accent {
    width: 60px;
    height: 4px;
    background: var(--primary);
    margin-top: 20px;
    border-radius: 2px;
}


.container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}

.section {
    padding: 120px 0;
    position: relative;
}

.center {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}


.corporate-card {
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: 8px;

    overflow: hidden;
    position: relative;
    transition: var(--transition);
}

.corporate-card:hover {
    transform: translateY(-5px);
    border-color: var(--primary-light);
    box-shadow: var(--shadow-card);
}

.corporate-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: var(--primary);
    opacity: 0;
    transition: var(--transition);
}

.corporate-card:hover::before {
    opacity: 1;
}


.navbar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background: rgba(10, 10, 10, 0.9);
    backdrop-filter: blur(15px);
    border-bottom: 1px solid var(--border-color);
    padding: 20px 0;
    transition: var(--transition);
}

.nav-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo span {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: -0.5px;
    color: #fff;
    margin-left: 0;
}

.logo img {
    height: 18px;
}

.nav-links {
    display: flex;
    gap: 40px;
}

.nav-link {
    color: var(--text-secondary);
    font-size: 1.1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: var(--transition);
}

.nav-link:hover,
.nav-link.active {
    color: #fff;
}

.nav-controls {
    display: flex;
    gap: 15px;
    align-items: center;
}

.mobile-toggle {
    display: none;
    background: none;
    border: none;
    color: #fff;
    font-size: 1.5rem;
    cursor: pointer;
}

.lang-btn {
    background: transparent;
    border: 1px solid var(--border-color);
    color: #fff;
    padding: 8px 20px;
    border-radius: 4px;
    cursor: pointer;
    font-family: var(--font-heading);
    transition: var(--transition);
}

.lang-btn:hover {
    border-color: var(--primary);
    background: var(--primary);
}

.lang-selector {
    position: relative;
    display: inline-block;
}

.lang-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: 4px;
    padding: 5px 0;
    min-width: 140px;
    z-index: 1001;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.5);
}

.lang-dropdown a {
    display: block;
    padding: 10px 15px;
    color: var(--text-secondary);
    text-decoration: none;
    transition: var(--transition);
    border-bottom: none;
}

.lang-dropdown a:last-child {
    border-bottom: none;
}

.lang-dropdown a:hover {
    background: var(--primary);
    color: #fff;
}


.hero {
    height: 100vh;
    display: flex;
    align-items: center;
    position: relative;
    background: #0a0a0a;
    overflow: hidden;
}

.hero-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    filter: blur(4px);
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--primary);
    opacity: 0.4;
    z-index: 1;
}

.hero-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
    margin: 0 auto;

    text-align: center;

}

.hero-title {
    font-size: 5rem;

    font-weight: 800;
    line-height: 0.9;
    margin-bottom: 25px;
    letter-spacing: -2px;
}

.hero-slogan {
    font-size: 1.8rem;
    color: var(--text-secondary);
    font-weight: 300;
    margin-bottom: 50px;
    letter-spacing: 1px;
}


.stats-section {
    background: var(--bg-card);
    padding: 60px 0;
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.stat-item {
    text-align: center;
    position: relative;
}

.stat-item:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 40px;
    width: 1px;
    background: var(--border-color);
}

.stat-number {
    display: block;
    font-size: 3.5rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    margin-bottom: 10px;
    font-family: var(--font-heading);
}

.stat-label {
    color: var(--text-muted);
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 2px;
}


.about-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-top: 60px;
}

.about-card.corporate-card {
    padding: 40px;
}

.about-card h3 {
    font-size: 1.5rem;
    margin-bottom: 15px;
    color: #fff;
}


.gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.gallery-item {
    height: 350px;
    cursor: pointer;
    overflow: hidden;
    position: relative;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
    filter: grayscale(80%);
}

.gallery-item:hover img {
    transform: scale(1.05);
    filter: grayscale(0%);
}

.overlay {
    background: rgba(77, 163, 255, 0.8);
}


.view-gallery-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: blur(4px) brightness(0.4);
    transition: transform 0.6s ease;

    position: absolute;
    top: 0;
    left: 0;
}

.gallery-item:hover .view-gallery-img {
    transform: scale(1.05);
}

.view-more-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 5;
    pointer-events: none;
}

.view-more-content {
    text-align: center;
    color: #fff;
    transition: transform 0.3s ease;
}

.gallery-item:hover .view-more-content {
    transform: scale(1.1);
}

.view-more-content i {
    font-size: 3rem;
    margin-bottom: 15px;
    display: block;
    color: #fff;
    transition: color 0.3s ease;
}

.gallery-item:hover .view-more-content i {
    color: var(--accent);
}

.view-more-content h3 {
    font-size: 1.5rem;
    text-transform: uppercase;
    margin: 0;
    color: #fff;
}


.team-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin-top: 50px;
}

.card-inner {
    padding: 25px;
    text-align: center;
}

.member-img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    margin: 0 auto 15px;
    overflow: hidden;
    border: 4px solid var(--bg-dark);
    box-shadow: 0 0 0 1px var(--border-color);
}

.member-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.role-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
}

.role {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 14px;
    border-radius: 30px;

    font-size: 0.7rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #fff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.15);
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);

    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    margin: 2px;
}

.role:hover {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4);
    filter: brightness(1.1);
}


.role-owner {
    background: linear-gradient(135deg, #000000, #222);
    border-color: #444;
}

.role-ceo {
    background: linear-gradient(135deg, #ffffff, #e0e0e0);
    color: #000;
    text-shadow: none;
    border-color: #fff;
}

.role-developer {
    background: linear-gradient(135deg, #cf4d07, #ff6b1e);
}

.role-general-manager {
    background: linear-gradient(135deg, #e00b0e, #ff3336);
}

.role-community-manager {
    background: linear-gradient(135deg, #0066ff, #3385ff);
}

.role-hr-manager {
    background: linear-gradient(135deg, #b2d501, #d4f71e);
    color: #000;
    text-shadow: none;
}

.role-event-manager {
    background: linear-gradient(135deg, #00b9ff, #33caff);
    color: #000;
    text-shadow: none;
}

.role-convoy-manager {
    background: linear-gradient(135deg, #ac3975, #d64d95);
}

.role-media-team {
    background: linear-gradient(135deg, #d95757, #ff7a7a);
    color: #000;
    text-shadow: none;
}

.role-save-designer {
    background: linear-gradient(135deg, #ba5f22, #e67e3a);
}

.role-coding-manager {
    background: linear-gradient(135deg, #16a271, #23d193);
}

.role-macelian {
    background: linear-gradient(135deg, #9b2c33, #c93e47);
}



.role-unified {
    background: linear-gradient(135deg, #222, #333);
    border: 1px solid var(--border-color);
    color: #fff;
    text-shadow: none;
}

.member-social {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 15px;
}

.member-social a {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    border: 1px solid var(--border-color);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-secondary);
    transition: var(--transition);
}

.member-social a:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
}


.dark-bg {
    background: #080808;
}

.contact-layout {
    display: flex;
    gap: 40px;
    margin-top: 60px;
}

.contact-info,
.contact-form-container {
    flex: 1;
    padding: 50px;
}

.info-item {
    display: flex;
    align-items: center;
    gap: 20px;

    margin-top: 25px;
    font-size: 1.1rem;
    color: var(--text-secondary);
}

.info-item i {
    color: var(--accent);
    width: 25px;
    text-align: center;
}

.form-row {
    display: flex;
    gap: 20px;
}

.input-group {
    margin-bottom: 25px;
    width: 100%;
}

.input-group label {
    display: block;
    font-size: 0.8rem;
    color: var(--text-muted);
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.input-group input,
.input-group textarea {
    width: 100%;
    background: var(--bg-input);
    border: 1px solid var(--border-color);
    padding: 15px;
    color: #fff;
    border-radius: 4px;
    font-family: var(--font-body);
    transition: var(--transition);
}

.input-group input:focus,
.input-group textarea:focus {
    outline: none;
    border-color: var(--accent);
    background: #222;
}

.submit-btn {
    background: var(--primary);
    color: #fff;
    border: none;
    padding: 15px 40px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 4px;
    cursor: pointer;
    transition: var(--transition);
    width: auto;
}

.submit-btn:hover {
    background: #fff;
    color: #000;
}

.social-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 15px 30px;
    width: 100%;
    max-width: 300px;
    border-radius: 4px;
    text-decoration: none;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: var(--transition);
    border: 1px solid transparent;
}

.discord-btn {
    background: #5865F2;

    color: #fff;
}

.discord-btn:hover {
    background: #4752C4;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(88, 101, 242, 0.4);
}

.tmp-btn {
    background: #B91D1D;

    color: #fff;
}

.tmp-btn:hover {
    background: #991b1b;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(185, 29, 29, 0.4);
}


.main-footer {
    background: #000;
    padding: 80px 0 30px;
    border-top: 1px solid var(--border-color);
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 60px;
    margin-bottom: 60px;
}

.footer-logo {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 25px;
}

.footer-logo img {
    height: 50px;

    width: auto;
}

.footer-logo span {
    font-size: 1.3rem;
    font-weight: 700;
    font-family: var(--font-heading);
}

.footer-desc {
    color: var(--text-muted);
    font-size: 0.95rem;
    margin-bottom: 30px;
}

.footer-col h4 {
    color: #fff;
    margin-bottom: 25px;
    font-size: 1.1rem;
}

.footer-col ul li {
    margin-bottom: 15px;
}

.footer-col ul li a {
    color: var(--text-muted);
    font-size: 0.95rem;
    transition: var(--transition);
}

.footer-col ul li a:hover {
    color: var(--accent);
    padding-left: 5px;
}

.footer-socials {
    display: flex;
    gap: 15px;
}

.footer-socials a {
    width: 40px;
    height: 40px;
    background: var(--bg-card);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;

    color: #fff;
    transition: var(--transition);
}

.partners-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 50px;
}

.partner-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    height: 100%;
    padding: 35px;
    transition: all 0.4s ease;
}

.partner-logo {
    width: 120px;
    height: 120px;
    margin-bottom: 20px;
    object-fit: contain;
    filter: drop-shadow(0 5px 15px rgba(0, 0, 0, 0.2));
    transition: transform 0.4s ease;
}

.partner-card:hover .partner-logo {
    transform: scale(1.1) rotate(2deg);
}

.partner-name {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 10px;
    color: #fff;
    font-family: var(--font-heading);
}

.partner-slogan {
    color: var(--text-secondary);
    font-size: 0.95rem;
    font-weight: 300;
    font-style: italic;
    line-height: 1.5;
}

.legal-section {
    padding-top: 150px;
    padding-bottom: 80px;
    background: var(--bg-dark);
    min-height: 100vh;
    position: relative;
    overflow: hidden;
}

.legal-section::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at center, rgba(67, 15, 17, 0.4) 0%, rgba(10, 10, 10, 0) 70%);
    z-index: 0;
    pointer-events: none;
    animation: hero-pulse 6s infinite ease-in-out;
}

.legal-content {
    background: rgba(20, 20, 20, 0.85);
    backdrop-filter: blur(10px);
    padding: 60px;
    border-radius: 8px;
    border: 1px solid var(--border-color);
    max-width: 900px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.legal-content h1 {
    font-size: 2.5rem;
    margin-bottom: 10px;
    color: #fff;
}

.legal-content .meta {
    color: var(--text-muted);
    font-size: 0.9rem;
    margin-bottom: 40px;
    display: block;
}

.legal-content h2 {
    font-size: 1.5rem;
    color: #fff;
    margin-top: 40px;
    margin-bottom: 20px;
    border-left: 3px solid var(--primary);
    padding-left: 15px;
}

.legal-content p,
.legal-content li {
    color: var(--text-secondary);
    margin-bottom: 15px;
    font-size: 1rem;
    line-height: 1.8;
}

.legal-content ul {
    list-style: disc;
    padding-left: 20px;
    margin-bottom: 30px;
}

.legal-content ul li {
    margin-bottom: 10px;
}


@media (max-width: 768px) {
    .legal-content {
        padding: 30px;
    }

    .legal-content h1 {
        font-size: 2rem;
    }
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    padding-top: 30px;
    text-align: center;
    color: var(--text-muted);
    font-size: 0.9rem;
}


@media (max-width: 900px) {

    .stats-grid,
    .footer-grid {
        grid-template-columns: 1fr;
    }

    .contact-layout {
        flex-direction: column;
    }

    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .hero-title {
        font-size: 3rem;
    }

    .nav-links {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background: rgba(10, 10, 10, 0.95);
        backdrop-filter: blur(15px);
        flex-direction: column;
        padding: 30px;
        gap: 20px;
        border-bottom: 1px solid var(--border-color);
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    }

    .nav-links.active {
        display: flex;
        animation: slideDown 0.3s ease-out;
    }

    .mobile-toggle {
        display: block;
    }

    .container {
        padding: 0 20px;
    }

    .stat-item::after {
        display: none;
    }
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.calendar-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

.month-card {
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 25px;
    transition: var(--transition);
    position: relative;
    overflow: hidden;
}

.month-card:hover {
    transform: translateY(-5px);
    border-color: var(--accent);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.month-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.month-name {
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff;
}

.month-year {
    font-size: 1rem;
    color: var(--text-muted);
}

.stats-container {
    margin-top: 20px;
}

.stat-label-cal {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    color: var(--text-secondary);
    font-size: 0.9rem;
}

.progress-bar {
    height: 10px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 5px;
    overflow: hidden;
    position: relative;
}

.progress-fill {
    height: 100%;
    background: var(--accent);
    border-radius: 5px;
    transition: width 1s ease-in-out;
    width: 0%;
}

.count-display {
    font-size: 2.5rem;
    font-weight: 800;
    color: #fff;
    margin: 15px 0;
    text-align: center;
}

.count-sub {
    font-size: 1rem;
    color: var(--text-muted);
    font-weight: 400;
}

.event-dots {
    display: flex;
    gap: 5px;
    margin-top: 15px;
    justify-content: center;
    flex-wrap: wrap;
}

.dot {
    width: 8px;
    height: 8px;
    background: var(--accent);
    border-radius: 50%;
    opacity: 0.5;
}

.custom-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(255, 255, 255, 0.05);
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.7rem;
    color: var(--text-muted);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.events-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-top: 50px;
}

.event-card {
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow: hidden;
    transition: var(--transition);
}

.event-list-section { margin-top: 44px; }
.event-list-title { margin: 0 0 18px; color: #f3f6fa; font: 700 1.25rem 'Outfit', sans-serif; }
.event-month-group { margin-top: 30px; }
.event-month-group:first-child { margin-top: 0; }
.event-month-title { margin: 0; padding-bottom: 12px; color: #aeb9c5; font: 600 .95rem 'Inter', sans-serif; border-bottom: 1px solid var(--border-color); }
.event-month-group .events-grid { margin-top: 18px; }

.event-card:hover {
    transform: translateY(-5px);
    border-color: var(--primary-light);
    box-shadow: var(--shadow-card);
}

.event-banner {
    height: 200px;
    width: 100%;
    overflow: hidden;
    position: relative;
}

.event-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.event-card:hover .event-banner img {
    transform: scale(1.05);
}

.event-content {
    padding: 25px;
}

.event-title {
    font-size: 1.3rem;
    margin-bottom: 15px;
    color: #fff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.event-info {
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: var(--text-secondary);
    font-size: 0.9rem;
}

.event-info-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.event-info-item i {
    color: var(--accent);
    width: 20px;
    text-align: center;
}

.event-btn {
    display: block;
    margin-top: 20px;
    text-align: center;
    background: rgba(255, 255, 255, 0.05);
    padding: 10px;
    border-radius: 4px;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.85rem;
    transition: var(--transition);
}

.event-btn:hover {
    background: var(--primary);
    color: #fff;
}

.hero-banner {
    height: 60vh;
    min-height: 400px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 60px;
}

.hero-banner::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), var(--bg-dark));
}

.hero-text {
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 900px;
    padding: 0 20px;
}

.hero-text h1 {
    font-size: 3.5rem;
    margin-bottom: 20px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
}

.info-bar {
    background: var(--bg-card);
    border-bottom: 1px solid var(--border-color);
    padding: 20px 0;
    margin-top: -1px;
}

.info-grid {
    display: flex;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
}

.info-item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 1.1rem;
    color: var(--text-secondary);
}

.info-item i {
    color: var(--accent);
    font-size: 1.4rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    top: -10px;
}

.info-item span {
    line-height: 1;
    position: relative;
    top: -10px;
}

.slot-section {
    padding: 80px 0;
}

.slot-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 25px;
    align-items: start;
}

.slot-img-card {
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow: hidden;
    transition: var(--transition);
    position: relative;
}

.slot-img-card:hover {
    border-color: var(--primary);
    transform: translateY(-5px);
}

.slot-img-wrapper {
    position: relative;
    height: 200px;
    overflow: hidden;
    cursor: pointer;
}

.slot-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.slot-img-wrapper:hover img {
    transform: scale(1.1);
}

.zoom-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
    color: white;
    opacity: 0;
    transition: 0.3s;
    pointer-events: none;
    text-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
}

.slot-img-wrapper:hover .zoom-icon {
    opacity: 1;
}

.slot-badges {
    padding: 15px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    align-content: flex-start;
}

.slot-badge {
    font-size: 1rem;
    padding: 5px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.05);
    color: #ddd;
    border: 1px solid rgba(255, 255, 255, 0.1);
    cursor: pointer;
    transition: all 0.3s ease;
    user-select: none;
    font-weight: 600;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 75px;
    height: 75px;
    overflow: hidden;
    flex-shrink: 0;
}

.slot-badge:hover {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.5);
    color: #fff;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
}

.slot-badge.taken {
    background: rgba(67, 15, 17, 0.6);
    color: #888;
    border-color: rgba(77, 163, 255, 0.8);
    cursor: not-allowed;
    opacity: 0.7;
    box-shadow: none;
}

.slot-badge.taken:hover {
    transform: none;
}

.slot-badge.selected {
    background: var(--accent);
    color: white;
    border-color: var(--accent);
    box-shadow: 0 0 15px rgba(229, 57, 53, 0.5);
    transform: scale(1.05);
}

.booking-form-area {
    background: var(--bg-card);
    padding: 40px;
    border-radius: 8px;
    border: 1px solid var(--border-color);
    margin-top: 50px;
}

.lightbox-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.95);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;

    flex-direction: column;
    gap: 15px;
    padding: 20px;
}

.lightbox-modal.active {
    opacity: 1;
    pointer-events: all;
}

.lightbox-close {
    position: absolute;
    top: 30px;
    right: 30px;
    color: white;
    font-size: 3rem;
    cursor: pointer;
    z-index: 10001;
}

.lightbox-modal img {
    max-width: 90%;
    max-height: 65vh;
    object-fit: contain;
    border: 2px solid #333;
    box-shadow: 0 0 50px rgba(0, 0, 0, 0.8);
    border-radius: 4px;
}

.lightbox-actions {
    width: 100%;
    max-width: 800px;
    background: var(--bg-card);
    padding: 15px;
    border-radius: 8px;
    border: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    max-height: 25vh;
    overflow-y: auto;
}

.lightbox-actions h3 {
    margin: 0;
    font-size: 1.1rem;
    color: var(--text-main);
}

.lightbox-slot-container {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.slot-badge .owner-name {
    display: block;
    font-size: 0.65em;
    opacity: 0.9;
    margin-top: 4px;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-align: center;
}

.sv-meta {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.sv-badge {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--bg-card);
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
    font-size: 0.9rem;
}

.sv-badge i {
    color: var(--accent);
}

.sv-badge span {
    color: #fff;
    font-weight: 600;
}

.sv-image-wrapper {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--border-color);
    background: #000;
    margin-bottom: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.sv-image-wrapper img {
    width: 100%;
    height: auto;
    display: block;
}

.sv-slots-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 20px;
}

.sv-slot-num {
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--bg-card);
    color: #fff;
    font-weight: 600;
    border-radius: 12px;
    border: 1px solid var(--border-color);
    font-size: 1.1rem;
    transition: 0.3s;
    position: relative;
    overflow: hidden;
}

.sv-slot-num::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--accent);
    opacity: 0.15;
    transition: 0.3s;
}

.sv-slot-num:hover {
    transform: translateY(-3px);
    border-color: var(--accent);
    box-shadow: 0 5px 20px rgba(229, 57, 53, 0.25);
}

.sv-slot-num:hover::before {
    opacity: 0.3;
}

.vtc-tag:hover {
    border-color: var(--accent) !important;
    color: #fff !important;
    transform: translateY(-2px);
}

.custom-modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(5px);
    opacity: 0;
    transition: opacity 0.3s ease;
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.custom-modal.show {
    opacity: 1;
}

.custom-modal-content {
    background: var(--bg-card, #1a1a1a);
    padding: 30px;
    border: 1px solid var(--border-color, #333);
    width: 100%;
    max-width: 500px;
    border-radius: 16px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    position: relative;
    transform: translateY(20px);
    transition: transform 0.3s ease;
    text-align: center;
}

.custom-modal.show .custom-modal-content {
    transform: translateY(0);
}

.close-modal {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 28px;
    font-weight: bold;
    color: #aaa;
    cursor: pointer;
    transition: 0.2s;
}

.close-modal:hover {
    color: #fff;
}

.modal-header h2 {
    margin: 15px 0 5px;
    color: #fff;
}

.modal-steps {
    margin: 30px 0;
    text-align: left;
}

.step {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 20px;
    background: rgba(255, 255, 255, 0.03);
    padding: 15px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.step-icon {
    background: var(--accent, #4DA3FF);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: white;
}

.step-info h3 {
    margin: 0 0 5px;
    font-size: 1.1rem;
    color: #fff;
}

.step-info p {
    margin: 0;
    font-size: 0.9rem;
    color: #ccc;
    line-height: 1.4;
}

.modal-alert {
    background: rgba(255, 152, 0, 0.1);
    border: 1px solid rgba(255, 152, 0, 0.3);
    color: #ffb74d;
    padding: 15px;
    border-radius: 8px;
    font-size: 0.9rem;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 20px;
    text-align: left;
}

.modal-btn {
    background: #5865F2;
    color: white;
    border: none;
    padding: 12px 30px;
    border-radius: 50px;
    font-weight: 600;
    cursor: pointer;
    font-size: 1rem;
    transition: 0.3s;
    width: 100%;
}

.modal-btn:hover {
    background: #4752c4;
    transform: translateY(-2px);
}

@media (max-width: 1024px) {
    .partners-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .partners-grid {
        grid-template-columns: 1fr;
    }
}

/* Macelian visual identity: refined navy, steel and route-line details */
:root {
    --primary: #102b46;
    --navy: #0b1f33;
    --blue: #1b456b;
    --blue-bright: #67b7ff;
    --primary-dark: #061321;
    --primary-light: #1b456b;
    --accent: #67b7ff;
    --bg-dark: #070d14;
    --bg-card: #0c1723;
    --bg-input: #101e2c;
    --border-color: rgba(120, 184, 235, .16);
    --border-hover: rgba(103, 183, 255, .75);
    --shadow-card: 0 18px 44px rgba(0, 0, 0, .28);
}
body { background-image: radial-gradient(ellipse at 50% -20%, rgba(28, 75, 116, .18), transparent 55%); }
.navbar {
    background: rgba(5, 15, 26, .88);
    border-bottom: 1px solid rgba(103, 183, 255, .18);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}
.nav-link { position: relative; border-radius: 4px; }
.nav-link::after {
    content: ''; position: absolute; left: 14px; right: 14px; bottom: 4px;
    height: 2px; background: var(--accent); transform: scaleX(0); transform-origin: left;
    transition: transform .25s ease;
}
.nav-link:hover::after, .nav-link.active::after { transform: scaleX(1); }
.hero { min-height: 680px; height: min(92vh, 920px); border-bottom: 1px solid var(--border-color); }
.hero-video { filter: saturate(.72) contrast(1.08); }
.hero-overlay {
    opacity: 1;
    background: linear-gradient(90deg, rgba(4, 14, 25, .94) 0%, rgba(7, 24, 40, .78) 42%, rgba(8, 27, 45, .28) 100%),
                linear-gradient(0deg, rgba(5, 13, 22, .78), transparent 48%);
}
.hero-content { max-width: 1280px; margin: 0 auto; padding: 0 40px; text-align: left; }
.hero-content .section-subtitle { padding-left: 15px; border-left: 3px solid var(--accent); letter-spacing: 4px; }
.hero-title { max-width: 850px; font-size: clamp(3.4rem, 7vw, 6.4rem); line-height: .96; letter-spacing: -2.5px; text-shadow: 0 8px 32px rgba(0,0,0,.3); }
.hero-slogan { max-width: 580px; color: #d3e0ec; font-size: clamp(1.15rem, 2vw, 1.65rem); }
.submit-btn { border-radius: 3px !important; background: var(--accent) !important; color: #061321 !important; font-weight: 800; letter-spacing: .8px; box-shadow: 0 8px 24px rgba(38, 132, 207, .2); }
.submit-btn:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(38, 132, 207, .3); }
.stats-section { background: #091522 !important; }
.stat-item { padding: 8px 12px; }
.stat-number { color: #d9edff; }
.stat-label { letter-spacing: 1.4px; text-transform: uppercase; font-size: .75rem; }
.section { scroll-margin-top: 85px; }
.section-subtitle { letter-spacing: 2.5px; }
.line-accent { width: 46px; height: 3px; border-radius: 0; background: var(--accent); }
.corporate-card, .about-card {
    background: linear-gradient(145deg, rgba(17, 39, 59, .9), rgba(8, 18, 29, .94));
    border: 1px solid rgba(103, 183, 255, .15);
    border-radius: 8px;
    box-shadow: 0 12px 32px rgba(0,0,0,.18);
    transition: transform .3s ease, border-color .3s ease, background .3s ease;
}
.corporate-card:hover, .about-card:hover { transform: translateY(-5px); border-color: rgba(103, 183, 255, .48); }
.gallery-item { border: 1px solid rgba(103, 183, 255, .14); border-radius: 7px; overflow: hidden; }
.gallery-item img { transition: transform .55s ease, filter .55s ease; }
.gallery-item:hover img { transform: scale(1.035); filter: saturate(1.08); }
.main-footer { background: #050c13; border-top: 1px solid rgba(103, 183, 255, .2); }
.footer-col h4 { color: #d8ecff; }
::selection { background: rgba(103, 183, 255, .35); color: #fff; }
@media (max-width: 768px) {
    .hero { height: 84vh; min-height: 610px; }
    .hero-content { padding: 0 24px; text-align: left; }
    .hero-title { font-size: clamp(3rem, 12vw, 4.6rem); }
    .hero-slogan { margin-bottom: 34px; }
}
/* Macelian identity refresh: monochrome crest, editorial grid and route signage */
:root {
    --primary:#142337; --navy:#101e2c; --blue:#223950; --blue-bright:#fff;
    --primary-dark:#080f18; --primary-light:#2b4058; --accent:#fff;
    --accent-metal:#9da9b8; --bg-dark:#080f18; --bg-card:#101b28;
    --bg-input:#172434; --border-color:rgba(255,255,255,.12);
    --border-hover:rgba(255,255,255,.62); --shadow-card:0 20px 52px rgba(0,0,0,.35);
}
body { background-image:radial-gradient(ellipse at 78% 0%,rgba(80,107,139,.14),transparent 42%); }
.navbar { background:rgba(7,14,23,.94); border-bottom:1px solid rgba(255,255,255,.13); padding:14px 0; }
.logo { display:flex; align-items:center; gap:10px; white-space:nowrap; }
.logo img { width:38px; height:38px; object-fit:contain; }
.logo span { font-family:var(--font-heading); font-size:.92rem; font-weight:800; letter-spacing:1.8px; }
.logo small { color:#9da9b8; font-size:.68em; letter-spacing:2px; }
.nav-link { font-size:.86rem; letter-spacing:1.4px; }
.nav-link::after { background:#fff; left:0; right:0; bottom:-7px; }
.hero-redesign { min-height:760px; height:min(94vh,980px); border-bottom:1px solid var(--border-color); isolation:isolate; }
.hero-video { filter:grayscale(.45) saturate(.55) contrast(1.12); }
.hero-overlay { opacity:1; background:linear-gradient(90deg,rgba(5,12,20,.96) 0%,rgba(8,19,30,.88) 44%,rgba(8,19,30,.24) 100%),linear-gradient(0deg,rgba(7,14,23,.94),transparent 48%); }
.hero-layout { position:relative; z-index:2; height:100%; display:grid; grid-template-columns:minmax(0,1fr) 300px; align-items:center; gap:8vw; padding-top:70px; padding-bottom:64px; }
.hero-content { width:100%; max-width:760px; margin:0; padding:0; text-align:left; }
.hero-content .section-subtitle { border-left:2px solid #fff; padding-left:14px; color:#dce4ed; letter-spacing:4px; }
.hero-title { max-width:none; font-size:clamp(3.8rem,8.2vw,7.7rem); line-height:.86; letter-spacing:-.065em; text-shadow:0 8px 32px rgba(0,0,0,.35); }
.hero-title-second { color:transparent!important; -webkit-text-stroke:1px rgba(255,255,255,.82); }
.hero-slogan { margin-top:26px; max-width:500px; color:#c5cfda; font-size:clamp(1.1rem,1.8vw,1.4rem); }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:28px; margin-top:32px; }
.submit-btn { border-radius:2px!important; background:#fff!important; color:#101e2c!important; font-weight:800; letter-spacing:1px; padding:15px 25px; box-shadow:none; }
.hero-secondary-link { display:inline-flex; align-items:center; gap:12px; color:#dce4ed; text-transform:uppercase; font-size:.72rem; letter-spacing:1.2px; }
.hero-secondary-link span { color:#8998aa; border-right:1px solid rgba(255,255,255,.35); padding-right:12px; }
.hero-id-card { width:100%; max-width:300px; justify-self:end; padding:18px; background:rgba(10,20,31,.72); border:1px solid rgba(255,255,255,.24); box-shadow:0 24px 70px rgba(0,0,0,.28); backdrop-filter:blur(10px); }
.id-card-top,.id-card-coordinates { display:flex; justify-content:space-between; color:#aab7c6; font-size:.57rem; letter-spacing:1.3px; }
.hero-id-card img { display:block; width:100%; margin:24px auto 16px; border:1px solid rgba(255,255,255,.16); }
.id-card-rule { height:1px; background:rgba(255,255,255,.24); }
.hero-id-card p { margin:16px 0 19px; color:#b7c2cf; font-size:.7rem; letter-spacing:2px; line-height:1.7; }
.hero-id-card p strong { color:#fff; font-size:.94rem; }
.id-card-coordinates { display:block; font-size:.53rem; }
.hero-bottomline { position:absolute; z-index:2; left: max(24px,calc((100% - 1200px)/2)); right:max(24px,calc((100% - 1200px)/2)); bottom:22px; display:flex; justify-content:space-between; color:#aab6c3; font-size:.58rem; letter-spacing:1.6px; }
.stats-section { background:#0d1824!important; border-block:1px solid rgba(255,255,255,.12); }
.stats-grid { padding:14px 0; }
.stat-item { position:relative; padding:16px 22px; border-left:1px solid rgba(255,255,255,.13); }
.stat-number { color:#fff; }
.stat-label { letter-spacing:1.3px; text-transform:uppercase; font-size:.68rem; color:#9eabba; }
.section { scroll-margin-top:85px; }
#about .section-header { align-items:flex-start; text-align:left; max-width:550px; margin:0 0 48px; }
#about .section-title { max-width:520px; font-size:clamp(2.6rem,5vw,4.1rem); }
#about .line-accent { margin-left:0; }
.about-grid { gap:16px; }
.corporate-card,.about-card { background:linear-gradient(145deg,rgba(20,35,52,.92),rgba(11,19,29,.97)); border:1px solid rgba(255,255,255,.12); border-radius:2px; box-shadow:0 12px 32px rgba(0,0,0,.2); transition:transform .3s ease,border-color .3s ease; }
.corporate-card:hover,.about-card:hover { transform:translateY(-5px); border-color:rgba(255,255,255,.5); }
.gallery-item { border:1px solid rgba(255,255,255,.16); border-radius:2px; overflow:hidden; }
.main-footer { background:#060c13; border-top:1px solid rgba(255,255,255,.16); }
.footer-col h4 { color:#fff; }
.footer-logo img { width:36px; height:36px; object-fit:contain; }
::selection { background:rgba(255,255,255,.24); color:#fff; }
@media(max-width:900px) { .hero-layout { grid-template-columns:minmax(0,1fr) 230px; gap:28px; } .hero-id-card { max-width:230px; } }
@media(max-width:768px) {
    .hero-redesign { height:auto; min-height:760px; }
    .hero-layout { grid-template-columns:1fr; gap:30px; align-content:center; padding:112px 24px 94px; }
    .hero-title { font-size:clamp(3.2rem,13vw,5.2rem); }
    .hero-slogan { margin-bottom:0; }
    .hero-id-card { display:none; }
    .hero-bottomline { font-size:.5rem; letter-spacing:.8px; }
    .hero-bottomline span:nth-child(2) { display:none; }
    #about .section-header { margin-bottom:34px; }
    .stat-item { padding:12px 8px; }
}
/* Full theme shift: Macelian monochrome editorial / road-manual visual system */
:root {
  --primary:#101010; --navy:#101010; --blue:#303030; --blue-bright:#fff;
  --primary-dark:#070707; --primary-light:#454545; --accent:#111;
  --accent-metal:#777; --bg-dark:#f1f1ee; --bg-card:#fff; --bg-input:#fff;
  --text-main:#111; --text-secondary:#4d4d4d; --text-muted:#717171;
  --border-color:rgba(0,0,0,.16); --border-hover:rgba(0,0,0,.72);
  --shadow-card:0 16px 38px rgba(0,0,0,.08);
}
html { background:#f1f1ee; }
body { background:#f1f1ee; background-image:none; color:#111; }
.navbar { background:rgba(247,247,244,.96); border-bottom:1px solid #111; padding:13px 0; backdrop-filter:blur(14px); }
.nav-link,.lang-btn { color:#1a1a1a; }
.nav-link:hover,.nav-link.active { color:#000; }
.nav-link::after { background:#111; }
.logo span { color:#111; }
.logo small { color:#777; }
.lang-btn { border-color:#bdbdb9; }
.lang-dropdown { background:#fff; border:1px solid #111; box-shadow:5px 5px 0 rgba(0,0,0,.1); }
.lang-dropdown a { color:#111; }
.lang-dropdown a:hover { background:#111; color:#fff; }
.section { background:#f1f1ee!important; color:#111; padding-top:clamp(76px,9vw,132px); padding-bottom:clamp(76px,9vw,132px); }
#about,#gallery,#team,#partners,#contact { background:#f1f1ee!important; }
.section-title { color:#101010; background:none; -webkit-text-fill-color:#101010; font-size:clamp(2.6rem,5vw,4.5rem); letter-spacing:-.055em; }
.section-subtitle { color:#555; font-size:.72rem; letter-spacing:3px; }
.line-accent { height:2px; width:56px; background:#111; }
.stats-section { background:#111!important; color:#fff; padding:38px 0; border:0; }
.stats-grid { gap:0; }
.stat-item { border:0; border-left:1px solid rgba(255,255,255,.25); }
.stat-item:not(:last-child)::after { display:none; }
.stat-number { color:#fff; font-size:clamp(2.6rem,4vw,3.8rem); letter-spacing:-.06em; }
.stat-label { color:#bdbdbd; font-size:.67rem; letter-spacing:1.8px; }
#about .section-header { border-top:1px solid #111; padding-top:22px; }
#about .section-header .section-subtitle { color:#555; }
.about-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border-top:1px solid #111; border-bottom:1px solid #111; margin-top:34px; }
.about-card.corporate-card { padding:34px 30px; border:0; border-right:1px solid #c4c4c0; border-radius:0; box-shadow:none; background:transparent!important; }
.about-card.corporate-card:last-child { border-right:0; }
.about-card h3,.corporate-card h3 { color:#111; font-size:1.45rem; }
.about-card p,.corporate-card p { color:#555!important; }
.corporate-card { background:#fff; color:#111; border:1px solid #d2d2ce; border-radius:0; box-shadow:0 10px 28px rgba(0,0,0,.04); }
.corporate-card:hover,.about-card:hover { transform:translateY(-3px); border-color:#111; box-shadow:0 14px 30px rgba(0,0,0,.08); }
.corporate-card::before { background:#111; height:2px; }
.gallery-grid { grid-template-columns:repeat(12,minmax(0,1fr)); gap:12px; }
.gallery-item { grid-column:span 3; height:clamp(210px,27vw,370px); border:0; border-radius:0; background:#111; }
.gallery-item:first-child { grid-column:span 6; grid-row:span 2; height:auto; min-height:430px; }
.gallery-item img { filter:grayscale(100%); }
.gallery-item:hover img { filter:grayscale(0%); }
.overlay { background:rgba(0,0,0,.42); }
.team-grid,.partners-grid { gap:14px; }
.partner-card { background:#fff!important; }
.contact-layout { gap:16px; }
.contact-info,.contact-form-container { background:#fff!important; border:1px solid #d2d2ce; border-radius:0; box-shadow:none; }
.info-item { color:#333; }
.info-item i { color:#111; }
.input-group label { color:#555; }
.input-group input,.input-group textarea { color:#111; border-color:#c7c7c3; border-radius:0; }
.input-group input:focus,.input-group textarea:focus { border-color:#111; background:#fff; }
.submit-btn { background:#111!important; color:#fff!important; border:1px solid #111; border-radius:0!important; box-shadow:none; text-transform:uppercase; letter-spacing:1.5px; }
.submit-btn:hover { background:#fff!important; color:#111!important; }
.social-btn { border-radius:0; }
.discord-btn,.tmp-btn { background:#111; color:#fff; }
.discord-btn:hover,.tmp-btn:hover { background:#444; box-shadow:none; }
.main-footer { background:#101010; color:#fff; border-top:0; }
.footer-col h4 { color:#fff; }
.footer-desc,.footer-col ul li a,.copyright { color:#bdbdbd; }
.footer-col ul li a:hover { color:#fff; }
.footer-logo img { border:1px solid rgba(255,255,255,.25); }
.hero-redesign { background:#050505; color:#fff; }
.hero-overlay { background:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.69) 47%,rgba(0,0,0,.12) 100%),linear-gradient(0deg,rgba(0,0,0,.78),transparent 52%); }
.hero-content .section-subtitle { color:#fff; border-color:#fff; }
.hero-title { color:#fff; }
.hero-title-second { -webkit-text-stroke:1px rgba(255,255,255,.88); }
.hero-slogan { color:#ddd; }
.hero-id-card { background:rgba(0,0,0,.72); border:1px solid rgba(255,255,255,.56); border-radius:0; box-shadow:12px 12px 0 rgba(255,255,255,.1); }
.hero-bottomline { color:#ddd; }
.hero-actions .submit-btn { background:#fff!important; color:#111!important; border-color:#fff; }
.hero-secondary-link { color:#fff; }
.events-grid .corporate-card { background:#fff; }
.legal-section { background:#f1f1ee!important; color:#111; }
.legal-section h1,.legal-section h2,.legal-section h3,.legal-section p,.legal-section li { color:#111; }
::selection { background:#111; color:#fff; }
@media(max-width:900px) {
  .about-grid { grid-template-columns:1fr; }
  .about-card.corporate-card { border-right:0; border-bottom:1px solid #c4c4c0; }
  .about-card.corporate-card:last-child { border-bottom:0; }
  .gallery-item:first-child { min-height:320px; }
}
@media(max-width:768px) {
  .nav-links { background:#f7f7f4; border:1px solid #111; }
  .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gallery-item,.gallery-item:first-child { grid-column:span 1; grid-row:auto; height:230px; min-height:0; }
  .gallery-item:first-child { grid-column:span 2; height:300px; }
  .contact-layout { flex-direction:column; }
  .contact-info,.contact-form-container { padding:28px; }
}
/* Modern Macelian system: floating glass navigation, layered hero, modular cards */
:root {
  --primary:#14243a; --navy:#0b1522; --blue:#203853; --blue-bright:#b8d8ff;
  --primary-dark:#07111d; --primary-light:#2b496b; --accent:#d9e9ff;
  --accent-metal:#9fb5ce; --bg-dark:#08111c; --bg-card:#111d2b; --bg-input:#0e1b2a;
  --text-main:#f5f8fc; --text-secondary:#b6c2d0; --text-muted:#8795a5;
  --border-color:rgba(207,225,247,.12); --border-hover:rgba(184,216,255,.55);
  --shadow-card:0 24px 70px rgba(0,0,0,.26);
}
html,body { background:#08111c; color:#f5f8fc; }
body { background-image:radial-gradient(ellipse at 12% 6%,rgba(49,86,129,.22),transparent 34%),radial-gradient(ellipse at 90% 45%,rgba(31,61,93,.15),transparent 38%); }
.navbar { top:14px; padding:0; background:transparent; border:0; box-shadow:none!important; }
.nav-container { width:min(1320px,calc(100% - 36px)); max-width:none; min-height:68px; padding:0 20px; border:1px solid rgba(220,235,255,.13); border-radius:20px; background:rgba(9,19,31,.78); box-shadow:0 12px 36px rgba(0,0,0,.24); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }
.logo img { width:38px; height:38px; border-radius:50%; }
.logo span { color:#f4f8fd; font-size:.88rem; letter-spacing:1.6px; }
.logo small { color:#a9c7ec; }
.nav-links { gap:clamp(16px,2.5vw,34px); }
.nav-link { color:#b6c3d3; font-size:.73rem; letter-spacing:1.2px; }
.nav-link:hover,.nav-link.active { color:#fff; }
.nav-link::after { left:4px; right:4px; bottom:-8px; height:2px; background:#c5dcf8; border-radius:2px; }
.lang-btn { border-color:rgba(230,240,255,.18); border-radius:12px; color:#edf4fc; }
.lang-dropdown { border:1px solid rgba(230,240,255,.18); border-radius:14px; background:#111e2c; box-shadow:0 20px 50px rgba(0,0,0,.4); }
.lang-dropdown a { color:#eaf1fa; }
.lang-dropdown a:hover { background:#253b55; color:#fff; }
.hero-redesign { min-height:760px; height:min(94vh,950px); border:0; border-radius:0 0 42px 42px; overflow:hidden; }
.hero-video { filter:saturate(.55) contrast(1.08); }
.hero-overlay { background:linear-gradient(90deg,rgba(5,13,23,.94) 0%,rgba(8,19,32,.78) 47%,rgba(8,19,32,.22) 100%),linear-gradient(0deg,#08111c 0%,transparent 46%); }
.hero-layout { width:min(1280px,calc(100% - 48px)); max-width:none; grid-template-columns:minmax(0,1fr) minmax(250px,330px); gap:clamp(35px,8vw,130px); padding:110px 24px 92px; }
.hero-content .section-subtitle { display:inline-flex; align-items:center; gap:10px; padding:8px 14px; border:1px solid rgba(226,239,255,.22); border-left:1px solid rgba(226,239,255,.22); border-radius:999px; background:rgba(255,255,255,.06); color:#d8e8f8; font-size:.66rem; letter-spacing:2px; }
.hero-title { max-width:900px; margin:22px 0 18px; font-size:clamp(4rem,9vw,8.3rem); line-height:.82; letter-spacing:-.075em; }
.hero-title-second { -webkit-text-stroke:1.4px rgba(231,241,253,.82); }
.hero-slogan { margin-top:22px; color:#c6d1df; font-size:clamp(1.05rem,1.6vw,1.35rem); }
.hero-actions { margin-top:30px; gap:22px; }
.hero-actions .submit-btn { min-height:52px; display:inline-flex!important; align-items:center; gap:12px; border:0; border-radius:14px!important; padding:0 22px; background:#f5f8fc!important; color:#102033!important; box-shadow:0 10px 28px rgba(0,0,0,.18); }
.hero-actions .submit-btn::after { content:'↗'; font-size:1.1rem; }
.hero-secondary-link { color:#e7eff8; font-size:.7rem; }
.hero-secondary-link span:first-child { color:#b8d8ff; }
.hero-id-card { max-width:330px; padding:18px; border:1px solid rgba(226,239,255,.24); border-radius:25px; background:linear-gradient(145deg,rgba(17,32,49,.8),rgba(9,20,33,.62)); box-shadow:0 26px 80px rgba(0,0,0,.3); backdrop-filter:blur(15px); transform:rotate(2deg); }
.hero-id-card img { aspect-ratio:1; object-fit:cover; margin:18px auto 14px; border:1px solid rgba(226,239,255,.14); border-radius:17px; }
.id-card-top,.id-card-coordinates { color:#b6c8dd; letter-spacing:1.1px; }
.hero-id-card p { color:#b8c5d4; }
.hero-id-card p strong { color:#fff; letter-spacing:2.8px; }
.hero-bottomline { bottom:34px; color:#d4deea; letter-spacing:2px; }
.stats-section { position:relative; z-index:4; margin:-46px auto 0; padding:0; background:transparent!important; border:0; }
.stats-section .container { max-width:1240px; }
.stats-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.stat-item { min-height:130px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:22px 26px; text-align:left; border:1px solid rgba(216,232,251,.12); border-radius:20px; background:linear-gradient(145deg,rgba(23,39,58,.96),rgba(14,26,40,.96)); box-shadow:0 18px 44px rgba(0,0,0,.18); }
.stat-number { margin:0 0 8px; color:#f7faff; font-size:clamp(2.1rem,3.2vw,3.3rem); letter-spacing:-.06em; }
.stat-label { color:#aebed0; font-size:.63rem; letter-spacing:1.5px; }
.stat-item:not(:last-child)::after { display:none; }
.section { scroll-margin-top:100px; padding:clamp(88px,10vw,144px) 0; background:transparent!important; }
.section .container { max-width:1240px; }
.section-header.center { align-items:flex-start; text-align:left; margin:0 0 42px; }
.section-subtitle { color:#a9c9ed; font-size:.66rem; font-weight:700; letter-spacing:2.5px; }
.section-title { max-width:760px; margin-bottom:16px; color:#f6f8fc; background:none; -webkit-text-fill-color:#f6f8fc; font-size:clamp(2.5rem,5vw,4.4rem); line-height:.98; letter-spacing:-.065em; }
.line-accent { height:3px; width:44px; margin-top:10px; border-radius:4px; background:linear-gradient(90deg,#eef6ff,#7c9fc5); }
#about { padding-top:125px; }
#about .section-header { max-width:650px; padding:0; border:0; margin-bottom:40px; }
#about .about-grid { margin-top:0; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.about-card.corporate-card { position:relative; min-height:250px; padding:30px; border:1px solid rgba(209,228,249,.1); border-radius:22px; background:linear-gradient(145deg,rgba(21,37,56,.92),rgba(13,24,37,.86))!important; box-shadow:0 20px 50px rgba(0,0,0,.12); }
.about-card.corporate-card::after { position:absolute; top:20px; right:22px; color:rgba(216,234,255,.35); font-size:.7rem; font-weight:700; letter-spacing:1px; }
.about-card.corporate-card:nth-child(1)::after { content:'01'; }
.about-card.corporate-card:nth-child(2)::after { content:'02'; }
.about-card.corporate-card:nth-child(3)::after { content:'03'; }
.about-card h3 { margin:24px 0 12px; color:#f5f8fc; font-size:1.35rem; letter-spacing:-.03em; }
.about-card p { color:#adbac9!important; font-size:.94rem; line-height:1.8; }
.corporate-card { overflow:hidden; border:1px solid rgba(211,229,249,.1); border-radius:20px; background:linear-gradient(150deg,rgba(19,34,51,.94),rgba(12,23,36,.94)); box-shadow:0 18px 50px rgba(0,0,0,.14); }
.corporate-card::before { height:2px; background:linear-gradient(90deg,#e5f0fc,transparent); }
.corporate-card:hover,.about-card:hover { transform:translateY(-5px); border-color:rgba(188,216,247,.32); box-shadow:0 24px 58px rgba(0,0,0,.2); }
#live-map-section { padding-top:80px!important; padding-bottom:0!important; }
#live-map-section .section-header.center { align-items:center; text-align:center; }
#live-map-section .line-accent { margin-left:auto; margin-right:auto; }
#live-map-section iframe { border-radius:24px!important; overflow:hidden; }
#gallery { position:relative; }
#gallery .section-header { margin-bottom:34px; }
.gallery-grid { grid-template-columns:repeat(12,minmax(0,1fr)); grid-auto-rows:105px; gap:14px; }
.gallery-item { grid-column:span 3; grid-row:span 3; height:auto; border:1px solid rgba(220,236,255,.11); border-radius:20px; background:#101b28; }
.gallery-item:first-child { grid-column:span 6; grid-row:span 6; min-height:0; height:auto; }
.gallery-item:nth-child(2) { grid-column:span 3; grid-row:span 3; }
.gallery-item:nth-child(3) { grid-column:span 3; grid-row:span 3; }
.gallery-item:nth-child(4) { grid-column:span 6; grid-row:span 3; }
.gallery-item img { filter:grayscale(32%); }
.gallery-item:hover img { filter:grayscale(0%); }
.overlay { background:linear-gradient(0deg,rgba(3,10,18,.48),transparent 58%); }
#team .team-grid,#partners .partners-grid { gap:16px; }
.partner-card { border-radius:20px!important; }
#contact .contact-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:16px; margin-top:40px; }
#contact .contact-info,#contact .contact-form-container { padding:34px; border:1px solid rgba(211,229,249,.1); border-radius:22px; background:linear-gradient(145deg,rgba(19,34,51,.94),rgba(12,23,36,.94)); }
#contact .info-item { color:#c0cad6; }
#contact .info-item i { color:#c8def8; }
.input-group label { color:#aebdce; }
.input-group input,.input-group textarea { color:#f5f8fc; border:1px solid rgba(211,229,249,.13); border-radius:12px; background:rgba(3,11,19,.36); }
.input-group input:focus,.input-group textarea:focus { border-color:rgba(200,224,251,.6); background:rgba(3,11,19,.6); }
.submit-btn { border:0; border-radius:13px!important; background:#f2f6fb!important; color:#102033!important; box-shadow:none; }
.submit-btn:hover { background:#cfe2f8!important; color:#102033!important; }
.social-btn { border-radius:13px; }
.main-footer { margin-top:50px; padding-top:70px; border-top:1px solid rgba(219,235,254,.1); background:#060d16; }
.footer-logo img { border-radius:50%; }
.footer-col h4 { color:#f4f7fb; }
.footer-desc,.footer-col ul li a { color:#a9b5c3; }
::selection { background:#b8d8ff; color:#102033; }
@media(max-width:1000px) {
 .nav-container { width:calc(100% - 24px); }
 .nav-links { gap:16px; }
 .nav-link { font-size:.67rem; }
 .hero-layout { gap:34px; grid-template-columns:minmax(0,1fr) 260px; }
 .hero-id-card { max-width:260px; }
 .stats-grid { gap:8px; }
 .stat-item { padding:18px; }
 .gallery-grid { grid-auto-rows:82px; }
}
@media(max-width:768px) {
 .navbar { top:8px; }
 .nav-container { width:calc(100% - 20px); min-height:62px; padding:0 14px; border-radius:17px; }
 .nav-links { background:rgba(9,19,31,.98); border:1px solid rgba(220,235,255,.14); border-radius:0 0 16px 16px; box-shadow:0 18px 36px rgba(0,0,0,.3); }
 .hero-redesign { min-height:760px; height:auto; border-radius:0 0 28px 28px; }
 .hero-layout { width:100%; grid-template-columns:1fr; gap:26px; align-content:center; padding:116px 24px 98px; }
 .hero-content { max-width:650px; }
 .hero-title { font-size:clamp(3.4rem,14vw,6rem); }
 .hero-id-card { display:none; }
 .hero-bottomline { left:24px; right:24px; bottom:24px; }
 .stats-section { margin-top:-24px; }
 .stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
 .stat-item { min-height:104px; padding:16px; border-radius:16px; }
 .stat-number { font-size:2rem; }
 .section-header.center { margin-bottom:30px; }
 #about .about-grid { grid-template-columns:1fr; }
 .about-card.corporate-card { min-height:0; padding:25px; border-radius:18px; }
 #live-map-section iframe { height:460px!important; }
 .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:190px; gap:9px; }
 .gallery-item,.gallery-item:first-child,.gallery-item:nth-child(2),.gallery-item:nth-child(3),.gallery-item:nth-child(4) { grid-column:span 1; grid-row:span 1; min-height:0; height:auto; border-radius:15px; }
 .gallery-item:first-child { grid-column:span 2; grid-row:span 2; }
 #contact .contact-layout { grid-template-columns:1fr; }
 #contact .contact-info,#contact .contact-form-container { padding:25px; border-radius:18px; }
 .main-footer { margin-top:24px; }
}
/* Return to Macelian's original dark navy and electric-blue palette */
:root {
  --primary:#0B1F33; --navy:#0B1F33; --blue:#163A5C; --blue-bright:#4DA3FF;
  --primary-dark:#071522; --primary-light:#163A5C; --accent:#4DA3FF;
  --accent-metal:#8a8d91; --bg-dark:#080d13; --bg-card:#0c1723; --bg-input:#101e2c;
  --text-main:#fff; --text-secondary:#b0b9c4; --text-muted:#828d9a;
  --border-color:rgba(130,171,211,.15); --border-hover:rgba(77,163,255,.72);
  --shadow-card:0 24px 70px rgba(0,0,0,.3);
}
html,body { background:#080d13!important; color:#f5f8fc; }
body { background-image:radial-gradient(ellipse at 15% 0%,rgba(34,73,112,.2),transparent 42%),radial-gradient(ellipse at 88% 50%,rgba(25,57,91,.14),transparent 38%); }
.navbar { background:transparent; }
.nav-container { background:rgba(5,15,26,.86); border-color:rgba(103,163,219,.2); }
.logo span { color:#f4f8fd; } .logo small { color:#8db6e3; }
.nav-link { color:#c0cad6; } .nav-link:hover,.nav-link.active { color:#fff; }
.nav-link::after { background:#4DA3FF; }
.lang-btn { color:#eef5fc; border-color:rgba(220,235,255,.18); }
.lang-dropdown { background:#111e2c; border-color:rgba(220,235,255,.15); }
.lang-dropdown a { color:#eaf1fa; } .lang-dropdown a:hover { background:#203b57; color:#fff; }
.section,.section:not(#live-map-section) { background:transparent!important; color:#f5f8fc; }
#about,#gallery,#team,#partners,#contact,#live-map-section { background:transparent!important; }
.section-title { color:#f6f8fc; -webkit-text-fill-color:#f6f8fc; }
.section-subtitle { color:#7fbbf3; }
.line-accent { background:linear-gradient(90deg,#4DA3FF,#9bcfff); }
.stats-section { background:transparent!important; }
.stat-item { background:linear-gradient(145deg,rgba(17,39,59,.96),rgba(8,18,29,.96)); border-color:rgba(130,171,211,.16); }
.stat-number { color:#f5f9ff; } .stat-label { color:#a8b8c9; }
.about-card.corporate-card { background:linear-gradient(145deg,rgba(17,39,59,.93),rgba(8,18,29,.96))!important; border-color:rgba(130,171,211,.16); }
.about-card h3,.corporate-card h3 { color:#f5f8fc; }
.about-card p,.corporate-card p { color:#b0bac5!important; }
.corporate-card { background:linear-gradient(145deg,rgba(17,39,59,.93),rgba(8,18,29,.96)); border-color:rgba(130,171,211,.16); }
.corporate-card:hover,.about-card:hover { border-color:rgba(77,163,255,.55); }
.corporate-card::before { background:linear-gradient(90deg,#4DA3FF,transparent); }
.gallery-item { border-color:rgba(130,171,211,.16); background:#0b1724; }
.gallery-item:hover { border-color:rgba(77,163,255,.6); }
#contact .contact-info,#contact .contact-form-container { background:linear-gradient(145deg,rgba(17,39,59,.93),rgba(8,18,29,.96)); border-color:rgba(130,171,211,.16); }
.input-group input,.input-group textarea { color:#f5f8fc; background:rgba(3,11,19,.36); border-color:rgba(130,171,211,.18); }
.input-group input:focus,.input-group textarea:focus { border-color:#4DA3FF; }
.submit-btn { background:#4DA3FF!important; color:#071522!important; }
.submit-btn:hover { background:#8bc6ff!important; color:#071522!important; }
.hero-actions .submit-btn { background:#4DA3FF!important; color:#071522!important; }
.hero-actions .submit-btn:hover { background:#8bc6ff!important; }
.hero-id-card { border-color:rgba(130,171,211,.3); }
.main-footer { background:#050c13; border-color:rgba(130,171,211,.16); }
.footer-col h4 { color:#e8f3ff; }
.legal-section { background:#080d13!important; color:#f5f8fc; }
.legal-section h1,.legal-section h2,.legal-section h3,.legal-section p,.legal-section li { color:#f5f8fc; }
@media(max-width:768px) { .nav-links { background:rgba(5,15,26,.98); border-color:rgba(130,171,211,.2); } }

/* Request: keep the original navy canvas, remove cyan accents and fix pale cards */
:root { --accent:#62676d; --blue-bright:#777d84; --border-hover:rgba(145,151,158,.65); }
.section-subtitle { color:#858b92!important; }
.line-accent,.nav-link::after { background:#686e75!important; }
.hero-content .section-subtitle { border-color:#777d84!important; }
.hero-title-second { -webkit-text-stroke-color:rgba(210,216,223,.78)!important; }
.stat-item { border-color:rgba(135,143,153,.2)!important; }
.about-card.corporate-card,.corporate-card,#contact .contact-info,#contact .contact-form-container {
  background:linear-gradient(145deg,#17212d,#101821)!important;
  border-color:rgba(135,143,153,.2)!important; color:#f4f6f8!important;
}
.partner-card { background:linear-gradient(145deg,#17212d,#101821)!important; color:#f4f6f8!important; border-color:rgba(135,143,153,.22)!important; }
.partner-card .partner-name,.partner-card h3 { color:#f4f6f8!important; }
#contact .contact-info p,#contact .contact-info h3 { color:#e7eaee!important; }
#contact .contact-form-container h3 { color:#f4f6f8!important; }
.submit-btn,.hero-actions .submit-btn { background:#656b72!important; color:#fff!important; }
.submit-btn:hover,.hero-actions .submit-btn:hover { background:#7b828a!important; color:#fff!important; }
.info-item i { color:#898f96!important; }
/* Final refinements for the supplied screenshots */
.nav-container { border-color:rgba(145,151,158,.22)!important; border-radius:16px!important; }
.partner-card .partner-name,.partner-card h3 { color:#f4f6f8!important; }
.partner-logo { background:transparent!important; }
.footer-bottom .fa-heart { color:#686e75!important; }
/* Muted gray detail accents and tight header edge treatment */
:root { --accent:#62676d; --blue-bright:#777d84; }
.hero-title-second { -webkit-text-stroke-color:rgba(205,211,218,.76)!important; }
.hero-secondary-link span:first-child { color:#969da5!important; }
.id-card-top,.id-card-coordinates { color:#b6bdc5!important; }
.footer-bottom .fa-heart { color:#686e75!important; }
/* Hero uses a still image and a square lower edge */
.hero-redesign { border-radius:0!important; }
.hero-photo {
  position:absolute; inset:0; z-index:0;
  background-image:url('../hero-background.jpg');
  background-position:center 54%; background-repeat:no-repeat; background-size:cover;
  filter:saturate(.55) contrast(1.08);
}
@media(max-width:768px) { .hero-redesign { border-radius:0!important; } }
/* Keep the hero as a single-column intro after removing its emblem card */
.hero-layout { grid-template-columns:minmax(0,1fr)!important; }
.hero-content { max-width:900px; }
.hero-actions .submit-btn::after { content:none!important; display:none!important; }

/* Rebuilt footer: brand masthead with compact grouped navigation */
.main-footer { padding:64px 0 22px; margin-top:44px; background:#050b13; border-top:1px solid rgba(168,190,216,.14); }
.footer-rework-grid { display:grid; grid-template-columns:minmax(250px,.9fr) minmax(0,1.6fr); gap:clamp(30px,6vw,92px); align-items:start; padding-bottom:52px; }
.footer-brand-panel { max-width:390px; }
.footer-brand-panel .footer-logo { display:inline-flex; gap:13px; align-items:center; margin:0 0 19px; color:#f4f7fb; }
.footer-brand-panel .footer-logo img { width:42px; height:42px; object-fit:cover; border-radius:50%; border:1px solid rgba(220,235,255,.16); }
.footer-brand-panel .footer-logo span { font-family:var(--font-heading); font-size:1.14rem; font-weight:800; letter-spacing:-.025em; }
.footer-brand-panel .footer-desc { margin:0; max-width:330px; color:#aab7c6; font-size:.94rem; line-height:1.8; }
.footer-signature { margin-top:26px; color:#e8edf4; font-family:var(--font-heading); font-size:clamp(1.25rem,2.3vw,1.85rem); font-weight:700; letter-spacing:-.045em; }
.footer-link-panels { display:grid; grid-template-columns:1.05fr 1.35fr .8fr; border:1px solid rgba(168,190,216,.13); border-radius:18px; background:linear-gradient(145deg,rgba(17,30,45,.72),rgba(9,17,27,.5)); overflow:hidden; }
.footer-link-panel { min-width:0; padding:24px 23px; border-right:1px solid rgba(168,190,216,.12); }
.footer-link-panel:last-child { border-right:0; }
.footer-link-panel h4 { margin:0 0 18px; color:#f3f6fa; font-size:.75rem; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; }
.footer-link-panel ul { display:grid; gap:12px; }
.footer-link-panel ul li a { color:#aab7c6; font-size:.84rem; transition:color .2s ease; }
.footer-link-panel ul li a:hover { color:#fff; }
.footer-socials { display:flex; gap:9px; flex-wrap:wrap; }
.footer-socials a { width:38px; height:38px; display:grid; place-items:center; color:#c1cad5; border:1px solid rgba(168,190,216,.2); border-radius:12px; background:rgba(255,255,255,.025); }
.footer-socials a:hover { color:#fff; border-color:rgba(168,190,216,.48); background:rgba(255,255,255,.08); }
.footer-bottom-rework { display:flex; justify-content:space-between; align-items:center; gap:18px; padding-top:19px; border-top:1px solid rgba(168,190,216,.12); color:#8794a3; }
.footer-bottom-rework p { margin:0; font-size:.76rem; }
.footer-credit { display:flex; align-items:center; gap:5px; }
.footer-credit .fa-heart { margin:0 2px; color:#777d84!important; }
.footer-credit strong { color:#d9e0e8; font-weight:700; }
.navbar,.navbar .nav-container { background-color:transparent; }
@media(max-width:900px) { .footer-rework-grid { grid-template-columns:1fr; gap:30px; } .footer-brand-panel { max-width:560px; } }
@media(max-width:620px) { .main-footer { padding-top:46px; } .footer-link-panels { grid-template-columns:1fr 1fr; } .footer-link-panel { padding:20px 17px; } .footer-link-panel:nth-child(2) { border-right:0; } .footer-social-panel { grid-column:1/-1; border-top:1px solid rgba(168,190,216,.12); } .footer-bottom-rework { align-items:flex-start; flex-direction:column; } }

/* Tighten the footer credit line and use a single muted text color */
.footer-credit { gap:0!important; color:#8794a3!important; }
.footer-credit strong { color:inherit!important; font-weight:400!important; }

.footer-credit .fa-heart { margin:0 3px!important; }
.footer-credit strong { margin-left:3px; }

/* Footer cleanup: two link panels and a compact single-node credit */
.footer-link-panels { grid-template-columns:1fr 1fr!important; }
.footer-link-panel:nth-child(2) { border-right:0; }
.footer-credit { display:block!important; letter-spacing:0; }

/* Keep footer copy comfortably inside the viewport */
.footer-bottom-rework { width:calc(100% - 48px); margin:0 auto; padding-inline:24px; box-sizing:border-box; }

/* Add breathing room around footer copy */
.footer-brand-panel { padding-inline:24px; }
.footer-bottom-rework { width:calc(100% - 96px); padding-inline:32px; }
@media(max-width:620px) { .footer-brand-panel { padding-inline:14px; } .footer-bottom-rework { width:calc(100% - 32px); padding-inline:12px; } }

/* Keep both footer bands on the same surface color */
.main-footer, .main-footer > .container, .footer-bottom-rework { background-color:#050b13!important; }
.footer-bottom-rework { border-top-color:rgba(168,190,216,.14); }

/* Smooth the hero image into the page background */
.hero-redesign { position:relative; isolation:isolate; }
.hero-redesign::after {
  content:""; position:absolute; z-index:1; left:0; right:0; bottom:0; height:240px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(8,13,19,0) 0%,rgba(8,13,19,.62) 58%,#080d13 100%);
}
@media(max-width:768px) { .hero-redesign::after { height:190px; } }

/* Remove the full-width blur behind the nav capsule; keep the capsule glass effect */
.navbar { background:transparent!important; backdrop-filter:none!important; -webkit-backdrop-filter:none!important; }

/* Match the full footer surface to the page background above it */
.main-footer,.main-footer > .container,.footer-rework-grid,.footer-brand-panel,.footer-link-panels,.footer-bottom-rework { background-color:#080d13!important; }

/* Match the lower link panel to the upper contact card and inset footer copy */
.footer-link-panels { background:linear-gradient(145deg,#17212d,#101821)!important; }
.footer-bottom-rework { padding-inline:48px!important; }

/* Inset the footer separator to align with the footer copy */
.footer-bottom-rework { position:relative; border-top:0!important; }
.footer-bottom-rework::before { content:""; position:absolute; top:0; left:48px; right:48px; height:1px; background:rgba(168,190,216,.14); }

@media(max-width:620px){.footer-bottom-rework::before{left:12px;right:12px}}


/* Give the footer separator a little more inset */
.footer-bottom-rework::before{left:64px;right:64px}
@media(max-width:620px){.footer-bottom-rework::before{left:18px;right:18px}}


/* Move footer copy and separator inward together */
.footer-bottom-rework{width:calc(100% - 128px);padding-inline:32px!important}
.footer-bottom-rework::before{left:32px;right:32px}
@media(max-width:620px){.footer-bottom-rework{width:calc(100% - 48px);padding-inline:12px!important}.footer-bottom-rework::before{left:12px;right:12px}}


/* Inset the whole footer bottom row substantially */
.footer-bottom-rework{width:calc(100% - 240px)!important;padding-inline:0!important}
.footer-bottom-rework::before{left:0!important;right:0!important}
@media(max-width:900px){.footer-bottom-rework{width:calc(100% - 96px)!important}}
@media(max-width:620px){.footer-bottom-rework{width:calc(100% - 40px)!important;padding-inline:0!important}}


/* Strongly inset footer copy and rule together */
.footer-bottom-rework{width:calc(100% - 440px)!important;margin-inline:auto!important;padding-inline:0!important}
.footer-bottom-rework::before{left:0!important;right:0!important}
@media(max-width:1000px){.footer-bottom-rework{width:calc(100% - 160px)!important}}
@media(max-width:620px){.footer-bottom-rework{width:calc(100% - 64px)!important}}


/* Center the footer bottom row in a much narrower column */
.footer-bottom-rework{width:60%!important;margin-inline:auto!important;padding-inline:0!important}
.footer-bottom-rework::before{left:0!important;right:0!important}
@media(max-width:1000px){.footer-bottom-rework{width:80%!important}}
@media(max-width:620px){.footer-bottom-rework{width:92%!important;gap:10px}}


/* Live TruckersMP partner and management cards */
.tm-api-status { grid-column:1/-1; text-align:center; color:#91a0b2; padding:28px 16px; }
.tm-api-status a { color:#c1cad5; text-decoration:underline; }
.tm-partner-card { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:190px; }
.tm-partner-card .partner-logo { object-fit:contain; }
.tm-member-card { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:230px; padding:26px; text-align:center; color:inherit; text-decoration:none; }
.tm-member-avatar { width:92px; height:92px; margin-bottom:16px; overflow:hidden; border-radius:50%; border:1px solid rgba(168,190,216,.25); background:#0b1119; }
.tm-member-avatar img { width:100%; height:100%; object-fit:cover; }
.tm-member-name { margin:0 0 7px; color:#f4f6f8; font-size:1.05rem; }
.tm-member-role { margin:0; color:#9eacbd; font-size:.85rem; }
.tm-member-card:hover { transform:translateY(-3px); }


/* Refined legal document layout: calm surfaces, readable sections, no red glow */
.legal-section {
  padding: 132px 0 88px;
  background: #080d13 !important;
  min-height: 100vh;
  overflow: visible;
}
.legal-section::before { display: none !important; animation: none !important; content: none !important; }
.legal-section > .container { position: relative; z-index: 1; }
.legal-content {
  width: min(100%, 980px);
  padding: clamp(24px, 5vw, 64px);
  border: 1px solid rgba(168,190,216,.16);
  border-radius: 24px;
  background: linear-gradient(150deg, #111a25 0%, #0b1119 72%);
  box-shadow: 0 24px 70px rgba(0,0,0,.24);
  backdrop-filter: none;
}
.legal-content h1 {
  margin: 0 0 12px;
  color: #f5f7fa;
  font-size: clamp(2.2rem, 5.4vw, 4rem);
  line-height: .98;
  letter-spacing: -.045em;
}
.legal-content .meta {
  width: fit-content;
  margin: 0 0 20px;
  padding: 8px 12px;
  border: 1px solid rgba(168,190,216,.17);
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  color: #9eacbd;
  font-size: .76rem;
  letter-spacing: .04em;
}
.legal-content .legal-intro {
  max-width: 68ch;
  margin: 0 0 36px;
  color: #b7c3d1;
  font-size: clamp(1rem, 1.5vw, 1.12rem);
  line-height: 1.75;
}
.legal-content h2 {
  margin: 34px 0 14px;
  padding: 15px 18px;
  border: 1px solid rgba(168,190,216,.12);
  border-left: 3px solid #8896a5;
  border-radius: 13px;
  background: rgba(255,255,255,.025);
  color: #edf1f5;
  font-size: clamp(1.05rem, 2vw, 1.25rem);
  line-height: 1.35;
}
.legal-content p, .legal-content li {
  color: #b8c3d0;
  font-size: .98rem;
  line-height: 1.8;
}
.legal-content ul {
  display: grid;
  gap: 9px;
  margin: 0 0 25px;
  padding: 0;
  list-style: none;
}
.legal-content ul li {
  margin: 0;
  padding: 13px 16px;
  border: 1px solid rgba(168,190,216,.09);
  border-radius: 11px;
  background: rgba(255,255,255,.022);
}
.legal-content a { color: #c8d9ed; text-decoration: underline; text-underline-offset: 3px; }
.legal-content a:hover { color: #fff; }
@media (max-width: 768px) {
  .legal-section { padding: 104px 0 54px; }
  .legal-content { border-radius: 18px; }
  .legal-content h2 { margin-top: 26px; }
  .legal-content p, .legal-content li { font-size: .94rem; }
}
