:root{
    --blue:#142b5f;
    --blue-900:#0b1534;
    --wine:#6f263d;
    --wine-2:#8b3150;
    --gold:#d9a441;
    --dark:#101828;
    --muted:#667085;
    --bg:#f6f8fb;
    --card:#ffffff;
    --line:#e5e7eb;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--dark)}
#loader{position:fixed;inset:0;background:#fff;z-index:9999;display:grid;place-items:center}
#loader:after{content:"";width:46px;height:46px;border:4px solid #dbe4ff;border-top-color:var(--wine);border-radius:50%;animation:spin .8s linear infinite}
.loaded #loader{display:none}
@keyframes spin{to{transform:rotate(360deg)}}

.site-header{height:82px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:space-between;padding:0 7%;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.brand{font-weight:900;color:var(--blue);text-decoration:none;font-size:21px;letter-spacing:-.4px}
nav{display:flex;gap:18px;flex-wrap:wrap}
nav a{color:var(--dark);text-decoration:none;font-weight:700;font-size:14px}
nav a:hover{color:var(--wine)}

.hero{min-height:620px;padding:95px 7%;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;background:
radial-gradient(circle at 80% 20%,rgba(217,164,65,.22),transparent 28%),
linear-gradient(135deg,var(--blue),var(--blue-900))}
.hero h1{max-width:880px;font-size:58px;line-height:1.02;color:#fff;margin:14px 0;letter-spacing:-1.8px}
.hero p{max-width:700px;color:#d7ddff;font-size:18px;line-height:1.75}
.eyebrow{color:#fff;background:rgba(255,255,255,.12);padding:9px 15px;border-radius:999px;font-weight:800;display:inline-flex}
.hero-panel{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:30px;padding:28px;color:#fff;box-shadow:0 30px 80px rgba(0,0,0,.22)}
.hero-panel strong{font-size:44px;display:block}
.hero-panel span{color:#d7ddff}
.actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.btn{border:0;border-radius:14px;padding:13px 20px;text-decoration:none;font-weight:900;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s}
.btn.primary{background:linear-gradient(135deg,var(--wine),var(--wine-2));color:#fff}
.btn.secondary{background:#fff;color:var(--blue)}
.btn.light{background:#f3f4f6;color:var(--dark)}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(16,24,40,.16)}

.cards,.section{padding:64px 7%}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:-82px;position:relative}
.cards article,.card,.stats article,.form-card,.login-card,.dash-card{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:25px;box-shadow:0 18px 45px rgba(16,24,40,.08)}
.cards strong,.card h3{color:var(--blue)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.section-title h2{font-size:34px;margin:0;color:var(--blue)}
.section-title p{color:var(--muted);max-width:620px}
.narrow{max-width:900px}
.impact-strip{background:#fff;padding:36px 7%;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.impact-strip article strong{font-size:34px;color:var(--wine);display:block}
.impact-strip article span{color:var(--muted);font-weight:700}

.footer{padding:42px 7%;background:var(--blue-900);color:#fff;display:flex;justify-content:space-between;gap:20px}
.auth-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--wine))}
.login-card{width:min(420px,92vw)}
input,textarea,select{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;margin:8px 0 16px;background:#fff}
label{font-weight:700}

.admin-body{display:grid;grid-template-columns:270px 1fr;min-height:100vh}
.sidebar{background:linear-gradient(180deg,var(--blue-900),#111827);color:#fff;padding:24px;display:flex;flex-direction:column;gap:10px}
.sidebar strong{font-size:20px;margin-bottom:16px}
.sidebar a,.sidebar button{color:#fff;background:rgba(255,255,255,.08);border:0;text-align:left;text-decoration:none;padding:12px;border-radius:13px;cursor:pointer;font-weight:800}
.sidebar a:hover,.sidebar button:hover{background:rgba(255,255,255,.16)}
.admin-main{padding:34px;overflow:auto}
.admin-hero{background:linear-gradient(135deg,var(--blue),var(--wine));border-radius:28px;color:#fff;padding:30px;margin-bottom:24px;box-shadow:0 25px 60px rgba(20,43,95,.18)}
.admin-hero h1{margin:0;font-size:34px}
.admin-hero p{color:#eef2ff;max-width:720px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:20px}
.stats strong{font-size:34px;color:var(--blue);display:block}
.stats span{color:var(--muted);font-weight:800}
.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-top:22px}
.dash-card h2{margin-top:0;color:var(--blue)}
.dash-list{display:grid;gap:12px}
.dash-list div{padding:14px;border:1px solid var(--line);border-radius:16px;background:#fafafa}
.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 14px 30px rgba(16,24,40,.06)}
th,td{padding:14px;border-bottom:1px solid var(--line);text-align:left}
th{background:#f9fafb}

.brand-wrap{
    display:flex;
    align-items:center;
    gap:12px;
}

.brand-wrap img{
    width:46px;
    height:46px;
    object-fit:contain;
    border-radius:12px;
    background:#fff;
    padding:4px;
    box-shadow:0 8px 18px rgba(0,0,0,.08);
}

.brand-wrap span{
    color:var(--blue);
    font-size:20px;
    font-weight:900;
    letter-spacing:-.4px;
}

.tp-slider{
    position:relative;
    min-height:680px;
    overflow:hidden;
    background:var(--blue-900);
}

.tp-slide{
    position:absolute;
    inset:0;
    opacity:0;
    transform:scale(1.04);
    transition:opacity .9s ease, transform 1.2s ease;
    display:grid;
    align-items:center;
    padding:100px 7%;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}

.tp-slide:nth-child(1){
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.82)),
        url("../img/home-slide-1.webp") center/cover no-repeat;
}

.tp-slide:nth-child(2){
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.82)),
        url("../img/home-slide-2.webp") center/cover no-repeat;
}

.tp-slide:nth-child(3){
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.82)),
        url("../img/home-slide-3.webp") center/cover no-repeat;
}

.tp-slide.active{
    opacity:1;
    transform:scale(1);
    z-index:2;
}

.tp-slide-content{
    max-width:880px;
    position:relative;
    z-index:3;
    animation:slideText .9s ease both;
}

.tp-slide-content h1{
    font-size:64px;
    line-height:1.02;
    color:#fff;
    margin:16px 0;
    letter-spacing:-2px;
}

.tp-slide-content p{
    max-width:720px;
    font-size:19px;
    line-height:1.75;
    color:#d7ddff;
}

.tp-slider:before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
        linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
    background-size:70px 70px;
    mask-image:linear-gradient(to bottom,#000,transparent);
    z-index:1;
}

.tp-slider-btn{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:5;
    width:48px;
    height:48px;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(255,255,255,.12);
    color:#fff;
    border-radius:50%;
    font-size:34px;
    cursor:pointer;
    backdrop-filter:blur(10px);
}

.tp-slider-btn:hover{
    background:#fff;
    color:var(--blue);
}

.tp-slider-btn.prev{left:28px}
.tp-slider-btn.next{right:28px}

.tp-slider-dots{
    position:absolute;
    left:7%;
    bottom:42px;
    z-index:6;
    display:flex;
    gap:10px;
}

.tp-slider-dots button{
    width:38px;
    height:5px;
    border:0;
    border-radius:999px;
    background:rgba(255,255,255,.35);
    cursor:pointer;
}

.tp-slider-dots button.active{
    background:#fff;
    width:58px;
}

.tp-slider-dots{
    left:50%;
    transform:translateX(-50%);
    bottom:42px;
    justify-content:center;
}

.tp-intro{
    padding:72px 7% 36px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    align-items:end;
    background:#fff;
}

.tp-intro h2,
.split-section h2{
    font-size:42px;
    line-height:1.08;
    color:var(--blue);
    margin:10px 0 0;
    letter-spacing:-1px;
}

.tp-intro p,
.split-section p{
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.section-kicker{
    display:inline-flex;
    color:var(--wine);
    font-weight:900;
    text-transform:uppercase;
    font-size:12px;
    letter-spacing:1.2px;
}

.premium-cards{
    margin-top:0;
    background:#fff;
    padding-top:20px;
}

.card-icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:linear-gradient(135deg,var(--blue),var(--wine));
    color:#fff;
    font-weight:900;
    margin-bottom:18px;
}

.soft-section{
    background:linear-gradient(180deg,#f8fafc,#eef2f7);
}

.section-title.center{
    justify-content:center;
    text-align:center;
}

.section-title.center p{
    margin-inline:auto;
}

.service-card{
    position:relative;
    overflow:hidden;
}

.service-card:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:5px;
    background:linear-gradient(90deg,var(--blue),var(--wine),var(--gold));
}

.service-badge{
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    background:#f3f4f6;
    color:var(--wine);
    font-weight:900;
    font-size:12px;
    margin-bottom:12px;
}

.center-action{
    display:flex;
    justify-content:center;
    margin-top:34px;
}

.split-section{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:42px;
    align-items:center;
    background:#fff;
}

.feature-list{
    display:grid;
    gap:16px;
}

.feature-list article{
    background:#f8fafc;
    border:1px solid var(--line);
    border-radius:22px;
    padding:22px;
}

.feature-list strong{
    color:var(--blue);
    font-size:18px;
}

.premium-header{
    height:88px;
    padding:0 6.5%;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(18px);
    box-shadow:0 10px 35px rgba(16,24,40,.06);
}

.main-nav{
    background:#f8fafc;
    border:1px solid var(--line);
    padding:8px;
    border-radius:999px;
    gap:4px;
}

.main-nav a{
    padding:9px 13px;
    border-radius:999px;
}

.main-nav a:hover{
    background:#fff;
    color:var(--wine);
    box-shadow:0 8px 18px rgba(16,24,40,.08);
}

.header-cta{
    text-decoration:none;
    background:linear-gradient(135deg,var(--blue),var(--wine));
    color:#fff;
    padding:12px 18px;
    border-radius:999px;
    font-weight:900;
    box-shadow:0 12px 28px rgba(20,43,95,.18);
}

.header-cta:hover{
    transform:translateY(-1px);
}

.premium-footer{
    display:block;
    padding:0;
    background:
        radial-gradient(circle at 80% 0%,rgba(217,164,65,.18),transparent 28%),
        linear-gradient(135deg,var(--blue-900),#070b18);
}

.footer-main{
    padding:58px 7%;
    display:grid;
    grid-template-columns:1.4fr .7fr .7fr 1fr;
    gap:34px;
    color:#fff;
}

.footer-logo{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:16px;
}

.footer-logo img{
    width:54px;
    height:54px;
    object-fit:contain;
    border-radius:14px;
    background:#fff;
    padding:5px;
}

.footer-brand p{
    max-width:420px;
    color:#cbd5e1;
    line-height:1.7;
}

.footer-col{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.footer-col h4{
    margin:0 0 8px;
    color:#fff;
}

.footer-col a,
.footer-col span{
    color:#cbd5e1;
    text-decoration:none;
    font-size:14px;
}

.footer-col a:hover{
    color:#fff;
}

.footer-bottom{
    border-top:1px solid rgba(255,255,255,.12);
    padding:18px 7%;
    color:#cbd5e1;
    display:flex;
    justify-content:space-between;
    gap:20px;
    font-size:14px;
}

.services-hero{
    min-height:470px;
    padding:95px 7%;
    display:grid;
    align-items:center;
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.82)),
        url("../img/services-banner.webp") center/cover no-repeat;
    color:#fff;
}

.services-hero h1{
    max-width:850px;
    font-size:56px;
    line-height:1.04;
    margin:16px 0;
    letter-spacing:-1.6px;
}

.services-hero p{
    max-width:680px;
    color:#dbe4ff;
    font-size:18px;
    line-height:1.75;
}

.service-link{
    display:inline-flex;
    margin-top:16px;
    color:var(--wine);
    font-weight:900;
    text-decoration:none;
}

.service-link:hover{
    color:var(--blue);
}

.solutions-hero{
    min-height:480px;
    padding:95px 7%;
    display:grid;
    align-items:center;
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.86)),
        url("../img/solutions-hero.webp") center/cover no-repeat;
    color:#fff;
}

.solutions-hero h1{
    max-width:900px;
    font-size:56px;
    line-height:1.04;
    margin:16px 0;
    letter-spacing:-1.6px;
}

.solutions-hero p{
    max-width:720px;
    color:#dbe4ff;
    font-size:18px;
    line-height:1.75;
}

.solutions-grid{
    align-items:stretch;
}

.solution-card{
    position:relative;
    overflow:hidden;
    min-height:260px;
}

.solution-card:after{
    content:"";
    position:absolute;
    right:-40px;
    bottom:-40px;
    width:130px;
    height:130px;
    border-radius:50%;
    background:linear-gradient(135deg,rgba(20,43,95,.12),rgba(111,38,61,.16));
}

.innovation-band{
    margin:0 7% 70px;
    border-radius:32px;
    background:
        radial-gradient(circle at 85% 20%,rgba(217,164,65,.22),transparent 26%),
        linear-gradient(135deg,var(--blue),var(--wine));
    color:#fff;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
}

.innovation-band h2{
    font-size:38px;
    line-height:1.1;
    margin:10px 0;
    max-width:780px;
}

.innovation-band p{
    color:#eef2ff;
    max-width:760px;
    line-height:1.7;
}

.startups-hero{
    min-height:480px;
    padding:95px 7%;
    display:grid;
    align-items:center;
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.86)),
        url("../img/startups-hero.webp") center/cover no-repeat;
    color:#fff;
}

.startups-hero h1{
    max-width:900px;
    font-size:56px;
    line-height:1.04;
    margin:16px 0;
    letter-spacing:-1.6px;
}

.startups-hero p{
    max-width:720px;
    color:#dbe4ff;
    font-size:18px;
    line-height:1.75;
}

.startup-card{
    position:relative;
    overflow:hidden;
    min-height:250px;
}

.startup-card:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:5px;
    background:linear-gradient(90deg,var(--blue),var(--wine),var(--gold));
}

.startup-card:after{
    content:"";
    position:absolute;
    right:-44px;
    bottom:-44px;
    width:135px;
    height:135px;
    border-radius:50%;
    background:linear-gradient(135deg,rgba(20,43,95,.10),rgba(217,164,65,.18));
}

.events-hero{
    min-height:480px;
    padding:95px 7%;
    display:grid;
    align-items:center;
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.86)),
        url("../img/events-hero.webp") center/cover no-repeat;
    color:#fff;
}

.events-hero h1{
    max-width:900px;
    font-size:56px;
    line-height:1.04;
    margin:16px 0;
    letter-spacing:-1.6px;
}

.events-hero p{
    max-width:720px;
    color:#dbe4ff;
    font-size:18px;
    line-height:1.75;
}

.events-timeline{
    max-width:1050px;
    margin:0 auto;
    display:grid;
    gap:18px;
}

.event-card{
    display:grid;
    grid-template-columns:240px 1fr;
    gap:20px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:26px;
    padding:22px;
    box-shadow:0 18px 45px rgba(16,24,40,.08);
}

.event-date{
    background:linear-gradient(135deg,var(--blue),var(--wine));
    color:#fff;
    border-radius:22px;
    padding:22px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:8px;
}

.event-date strong{
    font-size:24px;
    line-height:1.15;
}

.event-date span{
    color:#eef2ff;
    font-weight:800;
}

.event-content h3{
    color:var(--blue);
    font-size:24px;
    margin:10px 0;
}

.event-content p{
    color:var(--muted);
    line-height:1.7;
}

.resources-hero{
    min-height:480px;
    padding:95px 7%;
    display:grid;
    align-items:center;
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.86)),
        url("../img/resources-hero.webp") center/cover no-repeat;
    color:#fff;
}

.resources-hero h1{
    max-width:900px;
    font-size:56px;
    line-height:1.04;
    margin:16px 0;
    letter-spacing:-1.6px;
}

.resources-hero p{
    max-width:720px;
    color:#dbe4ff;
    font-size:18px;
    line-height:1.75;
}

.resource-categories{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:24px;
}

.resource-categories span{
    background:#fff;
    border:1px solid var(--line);
    color:var(--blue);
    padding:9px 14px;
    border-radius:999px;
    font-weight:900;
    font-size:13px;
}

.resource-table-wrap{
    overflow:auto;
    background:#fff;
    border-radius:26px;
    box-shadow:0 18px 45px rgba(16,24,40,.08);
    border:1px solid var(--line);
}

.resource-table{
    min-width:900px;
    box-shadow:none;
    border-radius:0;
}

.resource-table td strong{
    display:block;
    color:var(--blue);
    margin-bottom:5px;
}

.resource-table td small{
    display:block;
    color:var(--muted);
    line-height:1.5;
}

.file-type{
    background:#f3f4f6;
    color:var(--wine);
    padding:6px 10px;
    border-radius:999px;
    font-weight:900;
    font-size:12px;
}

.table-action{
    display:inline-flex;
    background:linear-gradient(135deg,var(--blue),var(--wine));
    color:#fff;
    text-decoration:none;
    padding:9px 13px;
    border-radius:12px;
    font-weight:900;
}

.progress-hero{
    min-height:480px;
    padding:95px 7%;
    display:grid;
    align-items:center;
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.86)),
        url("../img/progress-hero.webp") center/cover no-repeat;
    color:#fff;
}

.progress-hero h1{
    max-width:900px;
    font-size:56px;
    line-height:1.04;
    margin:16px 0;
    letter-spacing:-1.6px;
}

.progress-hero p{
    max-width:720px;
    color:#dbe4ff;
    font-size:18px;
    line-height:1.75;
}

.progress-timeline{
    max-width:980px;
    margin:0 auto;
    display:grid;
    gap:18px;
    position:relative;
}

.progress-item{
    display:grid;
    grid-template-columns:180px 1fr;
    gap:22px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:26px;
    padding:22px;
    box-shadow:0 18px 45px rgba(16,24,40,.08);
}

.progress-year{
    background:linear-gradient(135deg,var(--blue),var(--wine));
    color:#fff;
    border-radius:22px;
    display:grid;
    place-items:center;
    font-weight:900;
    font-size:20px;
    min-height:120px;
}

.progress-content h3{
    color:var(--blue);
    font-size:24px;
    margin:5px 0 10px;
}

.progress-content p{
    color:var(--muted);
    line-height:1.7;
}

.contact-hero{
    min-height:480px;
    padding:95px 7%;
    display:grid;
    align-items:center;
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.86)),
        url("../img/contact-hero.webp") center/cover no-repeat;
    color:#fff;
}

.contact-hero h1{
    max-width:900px;
    font-size:56px;
    line-height:1.04;
    margin:16px 0;
    letter-spacing:-1.6px;
}

.contact-hero p{
    max-width:720px;
    color:#dbe4ff;
    font-size:18px;
    line-height:1.75;
}

.contact-option-card{
    position:relative;
    overflow:hidden;
    min-height:230px;
}

.contact-option-card:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:5px;
    background:linear-gradient(90deg,var(--blue),var(--wine),var(--gold));
}

.contact-section{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:24px;
    align-items:start;
    background:#fff;
}

.contact-form-card,
.contact-info-card{
    background:#fff;
    border:1px solid var(--line);
    border-radius:28px;
    padding:28px;
    box-shadow:0 18px 45px rgba(16,24,40,.08);
}

.contact-form-card h2,
.contact-info-card h2{
    color:var(--blue);
    margin:8px 0;
    font-size:32px;
}

.contact-form-card p{
    color:var(--muted);
    line-height:1.7;
}

.form-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.contact-info-list{
    display:grid;
    gap:14px;
    margin-top:20px;
}

.contact-info-list div{
    padding:16px;
    background:#f8fafc;
    border:1px solid var(--line);
    border-radius:18px;
}

.contact-info-list strong{
    display:block;
    color:var(--blue);
    margin-bottom:5px;
}

.contact-info-list span{
    color:var(--muted);
}

.contact-note{
    margin-top:20px;
    padding:18px;
    border-radius:20px;
    background:linear-gradient(135deg,rgba(20,43,95,.08),rgba(111,38,61,.08));
    border:1px solid var(--line);
}

.contact-note p{
    color:var(--muted);
    line-height:1.6;
    margin-bottom:0;
}

@media(max-width:900px){
    .contact-hero{
        min-height:420px;
        padding:70px 22px;
    }

    .contact-hero h1{
        font-size:36px;
    }

    .contact-section,
    .form-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:900px){
    .progress-hero{
        min-height:420px;
        padding:70px 22px;
    }

    .progress-hero h1{
        font-size:36px;
    }

    .progress-item{
        grid-template-columns:1fr;
    }
}

@media(max-width:900px){
    .resources-hero{
        min-height:420px;
        padding:70px 22px;
    }

    .resources-hero h1{
        font-size:36px;
    }
}

@media(max-width:900px){
    .events-hero{
        min-height:420px;
        padding:70px 22px;
    }

    .events-hero h1{
        font-size:36px;
    }

    .event-card{
        grid-template-columns:1fr;
    }
}

@media(max-width:900px){
    .startups-hero{
        min-height:420px;
        padding:70px 22px;
    }

    .startups-hero h1{
        font-size:36px;
    }
}

@media(max-width:900px){
    .solutions-hero{
        min-height:420px;
        padding:70px 22px;
    }

    .solutions-hero h1{
        font-size:36px;
    }

    .innovation-band{
        margin:0 22px 50px;
        flex-direction:column;
        align-items:flex-start;
    }

    .innovation-band h2{
        font-size:30px;
    }
}

@media(max-width:900px){
    .services-hero{
        min-height:420px;
        padding:70px 22px;
    }

    .services-hero h1{
        font-size:36px;
    }
}

@media(max-width:1050px){
    .premium-header{
        height:auto;
        padding:16px 22px;
        gap:14px;
    }

    .main-nav{
        border-radius:22px;
        justify-content:center;
    }

    .header-cta{
        width:100%;
        text-align:center;
        justify-content:center;
    }

    .footer-main{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:700px){
    .main-nav{
        width:100%;
    }

    .footer-main{
        grid-template-columns:1fr;
    }

    .footer-bottom{
        flex-direction:column;
    }
}

@media(max-width:900px){
    .tp-intro,
    .split-section{
        grid-template-columns:1fr;
    }

    .tp-intro h2,
    .split-section h2{
        font-size:32px;
    }
}

@keyframes slideText{
    from{opacity:0;transform:translateY(28px)}
    to{opacity:1;transform:translateY(0)}
}

@media(max-width:900px){
    .tp-slider{
        min-height:620px;
    }

    .tp-slide{
        padding:80px 22px;
    }

    .tp-slide-content h1{
        font-size:39px;
    }

    .tp-slider-btn{
        display:none;
    }

    .tp-slider-dots{
        left:22px;
    }
}

@media(max-width:1000px){
    .hero{grid-template-columns:1fr}
    .hero h1{font-size:42px}
    .cards,.grid,.stats,.impact-strip,.dashboard-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
    .site-header{height:auto;align-items:flex-start;flex-direction:column;padding:18px}
    .admin-body{grid-template-columns:1fr}
    .sidebar{position:static}
}

/* =========================================================
   TECHPARK MOZAMBIQUE — HEADER & FOOTER PREMIUM UPDATE
   Colocado no fim para sobrepor regras antigas duplicadas
   ========================================================= */

/* Header público premium */
.site-header.premium-header,
.premium-header{
    min-height:92px;
    height:auto;
    padding:14px 6%;
    background:rgba(255,255,255,.88);
    backdrop-filter:blur(22px);
    -webkit-backdrop-filter:blur(22px);
    border-bottom:1px solid rgba(229,231,235,.82);
    box-shadow:0 16px 45px rgba(16,24,40,.08);
    position:sticky;
    top:0;
    z-index:100;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
}

.brand-wrap{
    display:flex;
    align-items:center;
    gap:14px;
    text-decoration:none;
    min-width:max-content;
}

.brand-wrap img{
    width:54px;
    height:54px;
    object-fit:contain;
    border-radius:18px;
    background:#fff;
    padding:5px;
    box-shadow:0 12px 28px rgba(16,24,40,.14);
}

.brand-wrap span{
    color:var(--blue);
    font-size:21px;
    font-weight:950;
    letter-spacing:-.6px;
    line-height:1.05;
}

.main-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:4px;
    background:rgba(248,250,252,.9);
    border:1px solid rgba(229,231,235,.94);
    padding:7px;
    border-radius:999px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

.main-nav a{
    color:#334155;
    text-decoration:none;
    font-weight:850;
    font-size:14px;
    padding:10px 14px;
    border-radius:999px;
    transition:.2s ease;
    white-space:nowrap;
}

.main-nav a:hover{
    background:#fff;
    color:var(--wine);
    box-shadow:0 10px 22px rgba(16,24,40,.10);
    transform:translateY(-1px);
}

.header-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    background:
        radial-gradient(circle at 20% 10%,rgba(217,164,65,.35),transparent 24%),
        linear-gradient(135deg,var(--blue),var(--wine));
    color:#fff;
    padding:13px 21px;
    border-radius:999px;
    font-weight:950;
    box-shadow:0 16px 35px rgba(20,43,95,.22);
    transition:.2s ease;
    white-space:nowrap;
}

.header-cta:hover{
    transform:translateY(-2px);
    box-shadow:0 20px 45px rgba(111,38,61,.25);
}

/* Footer público premium */
.footer.premium-footer,
.premium-footer{
    display:block;
    padding:0;
    background:
        radial-gradient(circle at 80% 10%,rgba(217,164,65,.20),transparent 26%),
        radial-gradient(circle at 15% 20%,rgba(111,38,61,.28),transparent 22%),
        linear-gradient(135deg,#071024,var(--blue-900));
    color:#fff;
    overflow:hidden;
}

.footer-main{
    padding:68px 7%;
    display:grid;
    grid-template-columns:1.5fr .75fr .75fr 1fr;
    gap:40px;
    color:#fff;
}

.footer-logo{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:18px;
}

.footer-logo img{
    width:62px;
    height:62px;
    object-fit:contain;
    border-radius:18px;
    background:#fff;
    padding:6px;
    box-shadow:0 18px 38px rgba(0,0,0,.25);
}

.footer-logo strong{
    font-size:22px;
    letter-spacing:-.5px;
}

.footer-brand p{
    max-width:450px;
    color:#cbd5e1;
    line-height:1.8;
    font-size:15px;
}

.footer-col{
    display:flex;
    flex-direction:column;
    gap:11px;
}

.footer-col h4{
    margin:0 0 10px;
    color:#fff;
    font-size:15px;
    text-transform:uppercase;
    letter-spacing:1px;
}

.footer-col a,
.footer-col span{
    color:#cbd5e1;
    text-decoration:none;
    font-size:14px;
    line-height:1.6;
    transition:.2s ease;
}

.footer-col a:hover{
    color:#fff;
    transform:translateX(3px);
}

.footer-bottom{
    border-top:1px solid rgba(255,255,255,.12);
    padding:20px 7%;
    color:#cbd5e1;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    font-size:14px;
    background:rgba(0,0,0,.14);
}

/* Ajuste final dos seletores do slider: sempre centralizados */
.tp-slider-dots{
    left:50% !important;
    transform:translateX(-50%) !important;
    bottom:42px;
    justify-content:center;
}

.cms-login-page{
    min-height:100vh;
    width:100%;
    display:grid;
    grid-template-columns:1.05fr .95fr;
    align-items:center;
    gap:42px;
    padding:60px 7%;
    background:
        radial-gradient(circle at 15% 20%,rgba(217,164,65,.18),transparent 24%),
        radial-gradient(circle at 85% 70%,rgba(111,38,61,.24),transparent 26%),
        linear-gradient(135deg,var(--blue-900),#070b18);
    position:relative;
    overflow:hidden;
}

.cms-login-page:before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
        linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
    background-size:64px 64px;
    mask-image:linear-gradient(to bottom,#000,transparent);
}

.cms-login-brand,
.premium-login-card{
    position:relative;
    z-index:2;
}

.cms-login-logo{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:32px;
}

.cms-login-logo img{
    width:72px;
    height:72px;
    object-fit:contain;
    border-radius:22px;
    background:#fff;
    padding:7px;
    box-shadow:0 20px 45px rgba(0,0,0,.25);
}

.cms-login-logo span{
    color:#fff;
    font-weight:950;
    font-size:24px;
    letter-spacing:-.6px;
}

.cms-login-brand h1{
    max-width:680px;
    color:#fff;
    font-size:56px;
    line-height:1.04;
    letter-spacing:-1.8px;
    margin:0 0 18px;
}

.cms-login-brand p{
    max-width:610px;
    color:#cbd5e1;
    font-size:17px;
    line-height:1.8;
}

.cms-login-points{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:28px;
}

.cms-login-points span{
    color:#fff;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.08);
    padding:10px 14px;
    border-radius:999px;
    font-weight:900;
    backdrop-filter:blur(10px);
}

.premium-login-card{
    width:min(460px,100%);
    justify-self:end;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(255,255,255,.7);
    border-radius:34px;
    padding:34px;
    box-shadow:0 30px 90px rgba(0,0,0,.32);
}

.premium-login-card h2{
    color:var(--blue);
    font-size:34px;
    margin:8px 0;
    letter-spacing:-.8px;
}

.premium-login-card p{
    color:var(--muted);
    margin-bottom:24px;
}

.premium-login-card input{
    height:50px;
    border-radius:15px;
    background:#f8fafc;
}

.login-btn{
    width:100%;
    height:52px;
    margin-top:8px;
}

.login-security-note{
    margin-top:18px;
    padding:14px;
    border-radius:18px;
    background:linear-gradient(135deg,rgba(20,43,95,.08),rgba(111,38,61,.08));
    color:var(--muted);
    font-size:13px;
    line-height:1.6;
}

.premium-footer{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 10% 20%,rgba(111,38,61,.24),transparent 24%),
        radial-gradient(circle at 90% 10%,rgba(217,164,65,.12),transparent 20%),
        linear-gradient(135deg,#050816,#09152f 55%,#101828);
    color:#fff;
    margin-top:80px;
}

.premium-footer:before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
    background-size:64px 64px;
    mask-image:linear-gradient(to bottom,#000,transparent);
}

.footer-main{
    position:relative;
    z-index:2;
    padding:80px 7%;
    display:grid;
    grid-template-columns:1.4fr .8fr .8fr 1fr;
    gap:42px;
}

.footer-brand{
    max-width:520px;
}

.footer-logo{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:24px;
}

.footer-logo img{
    width:68px;
    height:68px;
    object-fit:contain;
    background:#fff;
    border-radius:22px;
    padding:7px;
    box-shadow:0 22px 50px rgba(0,0,0,.30);
}

.footer-logo strong{
    display:block;
    font-size:24px;
    font-weight:950;
    letter-spacing:-.7px;
}

.footer-logo span{
    color:#94a3b8;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:1.6px;
}

.footer-brand p{
    color:#cbd5e1;
    line-height:1.9;
    font-size:15px;
}

.footer-socials{
    display:flex;
    gap:12px;
    margin-top:26px;
}

.footer-socials a{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border-radius:14px;
    text-decoration:none;
    color:#fff;
    font-weight:900;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.08);
    backdrop-filter:blur(10px);
    transition:.25s ease;
}

.footer-socials a:hover{
    transform:translateY(-3px);
    background:linear-gradient(135deg,var(--blue),var(--wine));
}

.footer-col{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.footer-col h4{
    margin:0 0 14px;
    font-size:14px;
    color:#fff;
    text-transform:uppercase;
    letter-spacing:1.5px;
}

.footer-col a,
.footer-col span{
    color:#cbd5e1;
    text-decoration:none;
    line-height:1.7;
    transition:.2s ease;
}

.footer-col a:hover{
    color:#fff;
    transform:translateX(4px);
}

.footer-bottom{
    position:relative;
    z-index:2;
    border-top:1px solid rgba(255,255,255,.08);
    padding:22px 7%;
    display:flex;
    justify-content:space-between;
    gap:20px;
    color:#94a3b8;
    font-size:13px;
    background:rgba(0,0,0,.14);
}

@media(max-width:1100px){

    .footer-main{
        grid-template-columns:1fr 1fr;
    }

}

@media(max-width:760px){

    .footer-main{
        grid-template-columns:1fr;
        padding:54px 24px;
    }

    .footer-bottom{
        flex-direction:column;
        padding:20px 24px;
    }

}

@media(max-width:900px){
    .cms-login-page{
        grid-template-columns:1fr;
        padding:42px 22px;
    }

    .cms-login-brand h1{
        font-size:36px;
    }

    .premium-login-card{
        justify-self:stretch;
    }
}

/* Responsividade refinada */
@media(max-width:1180px){
    .site-header.premium-header,
    .premium-header{
        padding:16px 22px;
        flex-direction:column;
        align-items:stretch;
        gap:14px;
    }

    .brand-wrap{
        justify-content:center;
    }

    .main-nav{
        width:100%;
        border-radius:24px;
        justify-content:center;
    }

    .header-cta{
        width:100%;
        text-align:center;
    }

    .footer-main{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:760px){
    .brand-wrap span{
        font-size:18px;
    }

    .brand-wrap img{
        width:48px;
        height:48px;
    }

    .main-nav{
        justify-content:flex-start;
        overflow-x:auto;
        flex-wrap:nowrap;
        padding:8px;
        scrollbar-width:thin;
    }

    .main-nav a{
        font-size:13px;
        padding:9px 12px;
    }

    .footer-main{
        grid-template-columns:1fr;
        padding:48px 24px;
    }

    .footer-bottom{
        flex-direction:column;
        align-items:flex-start;
        padding:20px 24px;
    }

    .tp-slider-dots{
        left:50% !important;
        transform:translateX(-50%) !important;
    }
}

.tp-slide:nth-child(1){
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.82)),
        url("../img/home-slide-1.webp") center/cover no-repeat !important;
}

.tp-slide:nth-child(2){
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.82)),
        url("../img/home-slide-2.webp") center/cover no-repeat !important;
}

.tp-slide:nth-child(3){
    background:
        linear-gradient(rgba(11,21,52,.72),rgba(11,21,52,.82)),
        url("../img/home-slide-3.webp") center/cover no-repeat !important;
}

.tp-slide.active{
    opacity:1;
    transform:scale(1);
    z-index:2;
}


/* =========================================================
   TECHPARK MOZAMBIQUE — CMS ADMIN LAYOUT PREMIUM
   Atualização: sidebar fixa, menu ativo, SVG icons, responsivo
   Colocado no fim para sobrepor regras antigas do CMS
   ========================================================= */

body.admin-body{
    margin:0;
    min-height:100vh;
    display:block !important;
    background:var(--bg);
    color:var(--dark);
    font-family:Inter,"Segoe UI",Arial,sans-serif;
    overflow-x:hidden;
}

/* Loader global/admin */
#loader{
    position:fixed;
    inset:0;
    z-index:9999;
    background:#fff;
    display:grid;
    place-items:center;
}

#loader:after{
    content:"";
    width:46px;
    height:46px;
    border:4px solid #dbe4ff;
    border-top-color:var(--wine);
    border-radius:50%;
    animation:spin .8s linear infinite;
}

body.loaded #loader,
.loaded #loader{
    display:none;
}

/* Sidebar fixa do CMS */
.sidebar{
    position:fixed !important;
    top:0;
    left:0;
    width:280px;
    height:100vh;
    min-height:100vh;
    background:
        radial-gradient(circle at 20% 0%,rgba(217,164,65,.13),transparent 26%),
        linear-gradient(180deg,var(--blue-900),#071024 56%,#111827);
    color:#fff;
    padding:22px 18px;
    display:flex;
    flex-direction:column;
    gap:0;
    z-index:1000;
    box-shadow:10px 0 35px rgba(16,24,40,.16);
    overflow-y:auto;
    overflow-x:hidden;
}

.sidebar::-webkit-scrollbar{
    width:6px;
}

.sidebar::-webkit-scrollbar-thumb{
    background:rgba(255,255,255,.18);
    border-radius:999px;
}

/* Marca do CMS */
.sidebar-brand{
    display:flex;
    align-items:center;
    gap:13px;
    padding:10px 8px 22px;
    margin-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,.12);
}

.brand-icon{
    width:46px;
    height:46px;
    border-radius:16px;
    display:grid;
    place-items:center;
    background:
        radial-gradient(circle at 25% 20%,rgba(217,164,65,.42),transparent 28%),
        linear-gradient(135deg,var(--blue),var(--wine));
    color:#fff;
    font-weight:950;
    letter-spacing:-.6px;
    box-shadow:0 14px 30px rgba(111,38,61,.25);
    flex-shrink:0;
}

.brand-text strong,
.sidebar-brand strong{
    display:block;
    color:#fff;
    font-size:17px;
    font-weight:950;
    line-height:1.05;
    margin:0;
}

.brand-text span,
.sidebar-brand span{
    display:block;
    margin-top:4px;
    color:rgba(255,255,255,.66);
    font-size:12px;
    font-weight:700;
}

/* Menu lateral */
.sidebar-menu{
    display:flex;
    flex-direction:column;
    gap:8px;
    width:100%;
}

.sidebar-menu a{
    position:relative;
    min-height:48px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px 14px;
    color:rgba(255,255,255,.82);
    background:transparent;
    border:1px solid transparent;
    border-radius:16px;
    text-decoration:none;
    font-size:14px;
    font-weight:850;
    line-height:1;
    transition:background .22s ease,color .22s ease,transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}

.sidebar-menu a:hover{
    background:rgba(255,255,255,.10);
    border-color:rgba(255,255,255,.08);
    color:#fff;
    transform:translateX(3px);
}

.sidebar-menu a.active{
    background:#fff;
    color:var(--blue-900);
    border-color:rgba(255,255,255,.4);
    box-shadow:0 14px 30px rgba(0,0,0,.18);
}

.sidebar-menu a.active:before{
    content:"";
    position:absolute;
    left:-18px;
    top:50%;
    transform:translateY(-50%);
    width:4px;
    height:30px;
    border-radius:0 999px 999px 0;
    background:linear-gradient(180deg,var(--gold),var(--wine));
}

.menu-icon{
    width:24px;
    height:24px;
    display:grid;
    place-items:center;
    flex-shrink:0;
}

.menu-icon svg,
.sidebar-logout svg{
    width:20px;
    height:20px;
    display:block;
    stroke:currentColor;
    flex-shrink:0;
}

/* Logout */
.sidebar-logout{
    margin-top:auto;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.12);
}

.sidebar-logout button{
    width:100%;
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:1px solid rgba(239,68,68,.18);
    border-radius:16px;
    background:rgba(239,68,68,.13);
    color:#fecaca;
    text-align:center;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
    transition:.22s ease;
}

.sidebar-logout button:hover{
    background:#ef4444;
    color:#fff;
    border-color:#ef4444;
    transform:translateY(-1px);
    box-shadow:0 14px 28px rgba(239,68,68,.22);
}

/* Área principal do CMS */
.admin-main{
    margin-left:280px;
    min-height:100vh;
    padding:34px;
    background:
        radial-gradient(circle at 100% 0%,rgba(217,164,65,.10),transparent 24%),
        var(--bg);
    overflow:auto;
}

/* Blocos do dashboard/admin */
.admin-hero{
    background:
        radial-gradient(circle at 90% 15%,rgba(217,164,65,.22),transparent 24%),
        linear-gradient(135deg,var(--blue),var(--wine));
    border-radius:30px;
    color:#fff;
    padding:32px;
    margin-bottom:24px;
    box-shadow:0 25px 60px rgba(20,43,95,.18);
}

.admin-hero h1{
    margin:0;
    font-size:34px;
    letter-spacing:-.8px;
}

.admin-hero p{
    color:#eef2ff;
    max-width:760px;
    line-height:1.7;
}

.stats{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    margin-top:20px;
}

.dash-card,
.stats article,
.form-card{
    background:#fff;
    border:1px solid var(--line);
    border-radius:26px;
    padding:25px;
    box-shadow:0 18px 45px rgba(16,24,40,.08);
}

.stats strong{
    font-size:34px;
    color:var(--blue);
    display:block;
}

.stats span{
    color:var(--muted);
    font-weight:850;
}

.dashboard-grid{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:20px;
    margin-top:22px;
}

.dash-card h2{
    margin-top:0;
    color:var(--blue);
}

.dash-list{
    display:grid;
    gap:12px;
}

.dash-list div{
    padding:14px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#fafafa;
}

.page-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:20px;
}

.page-head h1,
.page-head h2{
    margin:0;
    color:var(--blue);
    letter-spacing:-.6px;
}

/* Tabelas admin */
.admin-main table{
    width:100%;
    border-collapse:collapse;
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 14px 30px rgba(16,24,40,.06);
}

.admin-main th,
.admin-main td{
    padding:14px;
    border-bottom:1px solid var(--line);
    text-align:left;
}

.admin-main th{
    background:#f9fafb;
    color:#334155;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.5px;
}

/* Botões admin reaproveitando .btn */
.admin-main .btn{
    border-radius:14px;
    min-height:42px;
}

.dashboard-hero {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background:
        radial-gradient(circle at 85% 15%, rgba(217,164,65,.22), transparent 28%),
        linear-gradient(135deg, var(--blue), var(--wine));
}

.admin-kicker {
    display: inline-flex;
    margin-bottom: 10px;
    color: #fde68a;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1.2px;
}

.premium-stats article {
    display: flex;
    align-items: center;
    gap: 16px;
    transition: .22s ease;
}

.premium-stats article:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 55px rgba(16,24,40,.12);
}

.stat-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    color: #fff;
    background: linear-gradient(135deg, var(--blue), var(--wine));
    box-shadow: 0 14px 28px rgba(20,43,95,.18);
}

.stat-icon svg {
    width: 24px;
    height: 24px;
}

.dash-card-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 20px;
}

.dash-card-head h2 {
    margin: 0;
}

.quick-actions {
    display: grid;
    gap: 12px;
}

.quick-action {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 52px;
    padding: 14px 16px;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: #f8fafc;
    color: var(--blue);
    text-decoration: none;
    font-weight: 900;
    transition: .22s ease;
}

.quick-action svg {
    width: 21px;
    height: 21px;
}

.quick-action:hover {
    background: #fff;
    transform: translateX(4px);
    box-shadow: 0 14px 28px rgba(16,24,40,.10);
}

.quick-action.primary {
    background: linear-gradient(135deg, var(--blue), var(--wine));
    color: #fff;
    border-color: transparent;
}

.premium-list {
    gap: 14px;
}

.premium-list div {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    background: #f8fafc;
    border: 1px solid var(--line);
    border-radius: 18px;
}

.premium-list p {
    margin: 5px 0 0;
    color: var(--muted);
    line-height: 1.55;
}

.status-dot {
    width: 11px;
    height: 11px;
    margin-top: 5px;
    border-radius: 999px;
    background: var(--blue);
    flex-shrink: 0;
    box-shadow: 0 0 0 5px rgba(20,43,95,.10);
}

.status-dot.success {
    background: #10b981;
    box-shadow: 0 0 0 5px rgba(16,185,129,.12);
}

.status-dot.warning {
    background: var(--gold);
    box-shadow: 0 0 0 5px rgba(217,164,65,.16);
}

@media(max-width:900px) {
    .premium-stats article {
        align-items: flex-start;
    }

    .dashboard-hero {
        align-items: flex-start;
    }
}

/* Responsivo CMS */
@media(max-width:1100px){
    .stats,
    .dashboard-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:900px){
    body.admin-body{
        display:block !important;
    }

    .sidebar{
        width:86px;
        padding:18px 10px;
    }

    .sidebar-brand{
        justify-content:center;
        padding:8px 0 20px;
    }

    .brand-text,
    .sidebar-brand .brand-text,
    .sidebar-menu a span:last-child,
    .sidebar-logout button span{
        display:none;
    }

    .brand-icon{
        width:46px;
        height:46px;
    }

    .sidebar-menu a{
        justify-content:center;
        padding:12px;
    }

    .sidebar-menu a.active:before{
        left:-10px;
    }

    .admin-main{
        margin-left:86px;
        padding:22px;
    }

    .stats,
    .dashboard-grid{
        grid-template-columns:1fr;
    }

    .page-head{
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:620px){
    .sidebar{
        width:76px;
    }

    .admin-main{
        margin-left:76px;
        padding:18px;
    }

    .admin-hero{
        padding:24px;
        border-radius:24px;
    }

    .admin-hero h1{
        font-size:28px;
    }

    .admin-main table{
        min-width:720px;
    }

    .admin-main{
        overflow-x:auto;
    }
}
