/* Shared homepage header and footer styles. */
body.site-shell{
  --plum-950:#241033;
  --plum-800:#3d1a52;
  --plum-700:#4b2066;
  --plum-500:#6d3a8c;
  --plum-300:#a877c4;
  --gold:#c8993f;
  --gold-light:#e7c877;
  --cream:#faf7f2;
  --paper:#ffffff;
  --ink:#2b2430;
  --muted:#6f6577;
  --line:rgba(75,32,102,.12);
  --shadow-sm:0 6px 18px rgba(43,20,58,.08);
  --shadow-md:0 16px 40px rgba(43,20,58,.12);
  --shadow-lg:0 28px 70px rgba(43,20,58,.20);
  --radius:20px;
  --font-display:'Fraunces', Georgia, serif;
  --font-body:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
body.site-shell .topbar{background:linear-gradient(120deg,var(--plum-950),var(--plum-700));color:#fff}
body.site-shell .topbar-inner{
  max-width:1320px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;
  min-height:52px;padding:0 32px;gap:24px;font-size:13px;
}
body.site-shell .topbar-welcome{display:flex;align-items:center;gap:10px;opacity:.95;background: #104577;color:#fff}
body.site-shell .topbar-welcome .dot{width:6px;height:6px;border-radius:50%;background:var(--gold-light)}
body.site-shell .topbar-contacts{display:flex;align-items:center;gap:28px}
body.site-shell .topbar-contacts a{display:flex;align-items:center;gap:8px;color:#fff;opacity:.92;transition:.2s}
body.site-shell .topbar-contacts a:hover{opacity:1;color:var(--gold-light)}
@media (max-width:991.98px){body.site-shell .topbar{display:none}}
body.site-shell .navbar {
    background:#e7c877!important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(75,32,102,.10);
    box-shadow: 0 8px 28px rgba(43,20,58,.08) !important;
    position: sticky;
    top: 0;
    z-index: 1050;
}
body.site-shell .navbar::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(
        90deg,
        transparent,
        var(--gold),
        var(--gold-light),
        var(--gold),
        transparent
    );
}
body.site-shell .navbar .container-fluid {
    max-width: 1380px;
    margin: 0 auto;
    min-height: 92px;
    padding: 0 30px;
}
body.site-shell .navbar-brand {
    display: flex;
    align-items: center;
    padding: 5px 0;
    margin-right: 25px;
    position: relative;
    z-index: 2;
}
body.site-shell .navbar-brand img {
    width: auto;
    max-width: 210px;
    height: auto;
    max-height: 100px;
    object-fit: contain;
    transition: all .3s ease;
}
body.site-shell .navbar-brand:hover img {
    transform: scale(1.04);
}
body.site-shell .navbar-nav {
    gap: 5px;
    align-items: center;
}
body.site-shell .navbar-nav .nav-item {
    position: relative;
}
body.site-shell .navbar-nav .nav-link {
    position: relative;

    color: var(--ink) !important;

    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 600;

    padding: 11px 13px !important;

    border-radius: 12px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    white-space: nowrap;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}
body.site-shell .navbar-nav .nav-link i {
    color: var(--plum-500);
    font-size: 15px;

    transition:
        color .25s ease,
        transform .25s ease;
}
body.site-shell .navbar-nav .nav-link {
    background: linear-gradient(135deg, var(--plum-700), var(--plum-800));

    color:#fff !important;

    transform: translateY(-2px);

    box-shadow: 0 6px 15px rgba(75,32,102,.08);
    font-size: 14px;
}
body.site-shell .navbar-nav .nav-link:hover {
    background: linear-gradient(135deg, var(--plum-700), var(--plum-800));

    color:#fff !important;

    transform: translateY(-2px);

    box-shadow: 0 6px 15px rgba(75,32,102,.08);
}
body.site-shell .navbar-nav .nav-link:hover i {
    color: var(--gold);
    transform: scale(1.12);
}
body.site-shell .navbar-nav .nav-link.active {
    background: var(--plum-700);
    color: #fff !important;

    box-shadow:
        0 7px 18px rgba(75,32,102,.25);
}
body.site-shell .navbar-nav .nav-link.active i {
    color: var(--gold-light);
}
body.site-shell .navbar-nav .nav-link.login-link {
    margin-left: 5px;

    padding: 11px 17px !important;

    background: linear-gradient(
        135deg,
        var(--plum-700),
        var(--plum-800)
    );

    color: #fff !important;

    font-weight: 700;

    border-radius: 999px;

    box-shadow:
        0 8px 22px rgba(75,32,102,.25);

    border: 1px solid rgba(255,255,255,.08);
}
body.site-shell .navbar-nav .nav-link.login-link i {
    color: var(--gold-light);
    font-size: 16px;
}
body.site-shell .navbar-nav .nav-link.login-link:hover {
    background: linear-gradient(
        135deg,
        var(--plum-800),
        var(--plum-950)
    );

    color: #fff !important;

    transform: translateY(-3px);

    box-shadow:
        0 12px 28px rgba(75,32,102,.32);
}
body.site-shell .navbar-nav .nav-link.admin-link {
    color: var(--plum-700) !important;

    border: 1px solid rgba(75,32,102,.18);

    background: rgba(255,255,255,.7);

    font-weight: 700;
}
body.site-shell .navbar-nav .nav-link.admin-link i {
    color: var(--gold);
}
body.site-shell .navbar-nav .nav-link.admin-link:hover {
    background: var(--gold);
    color: #2b2430 !important;

    border-color: var(--gold);

    box-shadow:
        0 8px 20px rgba(200,153,63,.25);
}
body.site-shell .navbar-nav .nav-link.admin-link:hover i {
    color: #2b2430;
}
body.site-shell .navbar-toggler {
    width: 46px;
    height: 42px;

    border: 1px solid rgba(75,32,102,.18) !important;
    border-radius: 12px;

    background: #fff;

    box-shadow: 0 5px 15px rgba(43,20,58,.08);

    transition: .25s ease;
}
body.site-shell .navbar-toggler:hover {
    background: #f5edf8;
    border-color: var(--plum-500) !important;
}
body.site-shell .navbar-toggler:focus {
    box-shadow:
        0 0 0 .2rem rgba(75,32,102,.12);
}
@media (max-width: 1200px) {

    body.site-shell .navbar .container-fluid {
        padding: 0 20px;
    }

    body.site-shell .navbar-brand img {
        max-width: 180px;
        max-height: 70px;
    }

    body.site-shell .navbar-nav .nav-link {
        font-size: 12px;
        padding: 10px 9px !important;
    }

    body.site-shell .navbar-nav {
        gap: 2px;
    }
}
@media (max-width: 991.98px) {

    body.site-shell .navbar .container-fluid {
        min-height: 82px;
        padding: 0 18px;
    }

    body.site-shell .navbar-brand img {
        max-width: 185px;
        max-height: 68px;
    }

    body.site-shell .navbar-collapse {
        margin-top: 12px;
        padding: 12px;

        background: rgba(255,255,255,.98);

        border-radius: 18px;

        border: 1px solid rgba(75,32,102,.10);

        box-shadow:
            0 18px 40px rgba(43,20,58,.12);
    }

    body.site-shell .navbar-nav {
        gap: 4px;
        align-items: stretch;
    }

    body.site-shell .navbar-nav .nav-link {
        justify-content: flex-start;
        padding: 12px 15px !important;
        border-radius: 12px;
        font-size: 14px;
    }

    body.site-shell .navbar-nav .nav-link.login-link {
        margin-left: 0;
        margin-top: 5px;
        justify-content: center;
    }

    body.site-shell .navbar-nav .nav-link.admin-link {
        justify-content: center;
        margin-top: 2px;
    }
}
@media (max-width: 575.98px) {

    body.site-shell .navbar .container-fluid {
        min-height: 76px;
        padding: 0 14px;
    }

    body.site-shell .navbar-brand img {
        max-width: 155px;
        max-height: 60px;
    }

    body.site-shell .navbar-toggler {
        width: 43px;
        height: 40px;
    }
}
body.site-shell .navbar-brand {
    display: flex;
    align-items: center;
    padding: 4px 0;
    margin-right: 32px;
    position: relative;
}
body.site-shell .navbar-brand::before {
    content: "";
    position: absolute;
    width: 185px;
    height: 70px;
    left: -12px;
    top: 50%;
    transform: translateY(-50%);

    background: radial-gradient(
        ellipse,
        rgba(200,153,63,.14),
        rgba(255,255,255,0) 70%
    );

    border-radius: 50%;
    pointer-events: none;
}
body.site-shell .navbar-brand img {
    position: relative;
    z-index: 1;

    width: auto;

    /* BIGGER LOGO */
    max-width: 220px;
    max-height: 130px;

    object-fit: contain;

    /* Elegant shadow */
    filter:
        drop-shadow(0 5px 8px rgba(43,20,58,.12));

    transition:
        transform .35s ease,
        filter .35s ease;
}
body.site-shell .navbar-brand:hover img {
    transform: scale(1.06);

    filter:
        drop-shadow(0 8px 14px rgba(75,32,102,.20));
}
body.site-shell .navbar-nav li i{
color:#e7c877 !important;
}
body.site-shell .map-wrap{position:relative;line-height:0}
body.site-shell .map-wrap iframe{width:100%;height:420px;border:0;display:block;filter:grayscale(.15)}
body.site-shell .map-badge{
  position:absolute;top:20px;left:50%;transform:translateX(-50%);background:rgba(36,16,51,.85);color:#fff;
  padding:11px 26px;border-radius:99px;font-size:14px;font-weight:600;backdrop-filter:blur(6px);
}
body.site-shell .disclaimer-section{padding:70px 24px 0;background:var(--cream)}
body.site-shell .disclaimer-card{
  max-width:1120px;margin:-70px auto 0;position:relative;z-index:3;background:var(--paper);border-radius:26px;
  padding:56px 40px;text-align:center;box-shadow:var(--shadow-lg);
}
body.site-shell .disclaimer-card h2{font-size:clamp(24px,3vw,32px);font-weight:600}
body.site-shell .disclaimer-card > p{max-width:740px;margin:18px auto 0;font-size:14.5px}
@media (max-width:767.98px){
  body.site-shell .disclaimer-card{padding:36px 22px;border-radius:22px;margin-top:-40px}
  body.site-shell .map-wrap iframe{height:320px}
}
body.site-shell .site-footer{background:linear-gradient(140deg,var(--plum-950),var(--plum-800));color:#fff;padding:56px 24px 22px;margin-top:60px}
body.site-shell .footer-inner{max-width:1200px;margin:0 auto;text-align:center}
body.site-shell .footer-inner p{color:rgba(255,255,255,.85);font-size:14px}
body.site-shell .social-row{display:flex;justify-content:center;gap:12px;margin-top:22px}
body.site-shell .social-icon{
  width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:#fff;transition:.25s;
}
body.site-shell .social-icon:hover{transform:translateY(-4px) scale(1.06)}
body.site-shell .bottom-bar{
  background:var(--gold);padding:13px 24px;display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:8px;font-size:13.5px;font-weight:600;color:#2b2430;
}
body.site-shell .bottom-bar span.brand{color:#1c1420;font-weight:700}
body.site-shell .bottom-bar span.powered{color:#175c33;font-weight:700}
body.site-shell .map-wrap{position:relative;line-height:0}
body.site-shell .map-wrap iframe{width:100%;height:420px;border:0;display:block;filter:grayscale(.15)}
body.site-shell .map-badge{position:absolute;top:20px;left:50%;transform:translateX(-50%);background:rgba(36,16,51,.85);color:#fff;padding:11px 26px;border-radius:99px;font-size:14px;font-weight:600;backdrop-filter:blur(6px)}
body.site-shell .disclaimer-section{padding:70px 24px 0;background:var(--cream)}
body.site-shell .disclaimer-card{max-width:1120px;margin:-70px auto 0;position:relative;z-index:3;background:var(--paper);border-radius:26px;padding:56px 40px;text-align:center;box-shadow:var(--shadow-lg)}
body.site-shell .disclaimer-card h2{font-size:clamp(24px,3vw,32px);font-weight:600}
body.site-shell .disclaimer-card > p{max-width:740px;margin:18px auto 0;font-size:14.5px}
@media (max-width:767.98px){body.site-shell .disclaimer-card{padding:36px 22px;border-radius:22px;margin-top:-40px}body.site-shell .map-wrap iframe{height:320px}}
body.site-shell .site-footer{background:linear-gradient(140deg,var(--plum-950),var(--plum-800));color:#fff;padding:56px 24px 22px;margin-top:60px}
body.site-shell .footer-inner{max-width:1200px;margin:0 auto;text-align:center}
body.site-shell .footer-inner p{color:rgba(255,255,255,.85);font-size:14px}
body.site-shell .social-row{display:flex;justify-content:center;gap:12px;margin-top:22px}
body.site-shell .social-row .social-icon{width:42px;height:42px;font-size:16px}
body.site-shell .bottom-bar{background:var(--gold);padding:13px 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:13.5px;font-weight:600;color:#2b2430}
body.site-shell .bottom-bar span.brand{color:#1c1420;font-weight:700}
body.site-shell .bottom-bar span.powered{color:#175c33;font-weight:700}
body.site-shell .map-wrap{
            position:relative;
            overflow:hidden;
        }
body.site-shell .map-wrap iframe{
            width:100%;
            height:410px;
            border:0;
            display:block;
            filter:grayscale(.15);
        }
body.site-shell .map-badge{
            position:absolute;
            top:22px;
            left:50%;
            transform:translateX(-50%);
            background:rgba(36,16,51,.88);
            color:#fff;
            padding:11px 25px;
            border-radius:99px;
            font-size:13px;
            font-weight:700;
            letter-spacing:.3px;
            box-shadow:var(--shadow-md);
        }
body.site-shell .site-footer{
            background:linear-gradient(140deg,var(--plum-950),var(--plum-800))!important;
            color:#fff;
            padding:56px 24px 22px!important;
            margin-top:0!important;
        }
body.site-shell .site-footer-inner{
            max-width:1200px;
            margin:auto;
            text-align:center;
        }
body.site-shell .site-footer-inner p{
            color:rgba(255,255,255,.82);
            font-size:14px;
        }
body.site-shell .social-row{
            display:flex;
            justify-content:center;
            gap:12px;
            margin-top:22px;
        }
body.site-shell .footer-social{
            width:42px;height:42px;
            display:flex;
            align-items:center;
            justify-content:center;
            border-radius:50%;
            color:#fff;
            transition:.25s;
        }
body.site-shell .footer-social:hover{
            transform:translateY(-4px) scale(1.06);
            color:#fff;
        }
body.site-shell .footer-social.facebook{background:#3b5998}
body.site-shell .footer-social.whatsapp{background:#25d366}
body.site-shell .footer-social.youtube{background:#ff0000}
body.site-shell .bottom-bar{
            background:var(--gold)!important;
            color:#2b2430!important;
            padding:13px 24px!important;
            display:flex;
            justify-content:space-between;
            align-items:center;
            flex-wrap:wrap;
            gap:8px;
            font-size:13px!important;
            font-weight:600!important;
        }
body.site-shell .bottom-bar span{color:#1c1420!important}
body.site-shell .bottom-bar .powered{color:#175c33!important}
@media(max-width:991.98px){
            body.site-shell .navbar{padding:8px 16px!important}
            body.site-shell .navbar-brand img{max-width:210px!important}
        }
@media(max-width:767.98px){
            body.site-shell .map-wrap iframe{height:320px}
            body.site-shell .bottom-bar{justify-content:center;text-align:center}
        }
@media(max-width:575.98px){
            body.site-shell .navbar-brand img{max-width:185px!important}
        }
body.site-shell .map-wrap{position:relative;overflow:hidden}
body.site-shell .map-wrap iframe{width:100%;height:410px;border:0;display:block;filter:grayscale(.15)}
body.site-shell .map-badge{position:absolute;top:22px;left:50%;transform:translateX(-50%);background:rgba(36,16,51,.88);color:#fff;padding:11px 25px;border-radius:99px;font-size:13px;font-weight:700;box-shadow:var(--shadow-md)}
body.site-shell .site-footer{padding:56px 24px 22px!important;background:linear-gradient(140deg,var(--plum-950),var(--plum-800))!important;color:#fff}
body.site-shell .site-footer-inner{max-width:1200px;margin:auto;text-align:center}
body.site-shell .site-footer-inner p{margin:0;color:rgba(255,255,255,.82);font-size:14px}
body.site-shell .social-row{display:flex;justify-content:center;gap:12px;margin-top:22px}
body.site-shell .footer-social{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;transition:.25s}
body.site-shell .footer-social:hover{transform:translateY(-4px) scale(1.06);color:#fff}
body.site-shell .bottom-bar{background:var(--gold)!important;color:#2b2430!important;padding:13px 24px!important;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px!important;font-weight:600!important}
body.site-shell .bottom-bar span{color:#1c1420!important}
body.site-shell .bottom-bar .powered{color:#175c33!important}
@media(max-width:991.98px){
  body.site-shell .topbar-hide-on-md-sm{display:none!important}body.site-shell .navbar{padding:8px 16px!important}body.site-shell .navbar-brand img{max-width:210px!important}
}
@media(max-width:767.98px){
  body.site-shell .map-wrap iframe{height:320px}body.site-shell .bottom-bar{justify-content:center;text-align:center}
}
@media(max-width:575.98px){
  body.site-shell .navbar-brand img{max-width:185px!important}
}
body.site-shell .footer-section{
  margin-top:0!important;
  padding-bottom:70px!important;
  background:var(--cream)!important;
}
body.site-shell .footer-section .map-wrap{position:relative;overflow:hidden}
body.site-shell .footer-section iframe{
  width:100%!important;height:410px!important;border:0!important;display:block;
}
body.site-shell .map-title{
  position:absolute;top:22px;left:50%;transform:translateX(-50%);
  background:rgba(36,16,51,.9);color:#fff;
  padding:11px 25px;border-radius:99px;font-size:13px;font-weight:700;
  box-shadow:var(--shadow-md);
}
body.site-shell .disclaimer-card{
  max-width:1120px;margin:-65px auto 0;position:relative;z-index:2;
  background:#fff;border-radius:28px;padding:52px 42px;
  box-shadow:var(--shadow-lg);text-align:center;
}
body.site-shell .disclaimer-card h2{
  margin:0;color:var(--plum-950);
  font-family:var(--display);font-size:32px;font-weight:500;
}
body.site-shell .disclaimer-line{
  width:58px;height:3px;margin:16px auto 20px;border-radius:99px;
  background:linear-gradient(90deg,var(--gold),var(--gold-light));
}
body.site-shell .disclaimer-card>p{
  max-width:750px;margin:auto;color:var(--muted);
  line-height:1.8;font-size:14px;
}
body.site-shell .site-footer{
  padding:55px 20px 22px!important;
  background:linear-gradient(140deg,var(--plum-950),var(--plum-800))!important;
  color:#fff!important;
}
body.site-shell .site-footer-inner{max-width:1200px;margin:auto;text-align:center}
body.site-shell .site-footer-inner p{margin:0;color:rgba(255,255,255,.82);font-size:14px}
body.site-shell .social-row{display:flex;justify-content:center;gap:12px;margin-top:22px}
body.site-shell .footer-social{
  width:42px;height:42px;display:flex;align-items:center;justify-content:center;
  border-radius:50%;color:#fff!important;transition:.25s;
}
body.site-shell .footer-social:hover{transform:translateY(-4px) scale(1.06)}
body.site-shell .bottom-bar{
  background:var(--gold)!important;color:#2b2430!important;
  padding:13px 24px!important;display:flex;justify-content:space-between;
  align-items:center;flex-wrap:wrap;gap:8px;font-size:13px!important;font-weight:600!important;
}
body.site-shell .bottom-bar span{color:#1c1420!important}
body.site-shell .bottom-bar .powered{color:#175c33!important}
@media(max-width:991.98px){
  body.site-shell .topbar-hide-on-md-sm{display:none!important}
  body.site-shell .navbar{padding:8px 16px!important}
  body.site-shell .navbar-brand img{max-width:210px!important}
}
@media(max-width:767.98px){
  body.site-shell .footer-section iframe{height:320px!important}
  body.site-shell .disclaimer-card{margin:-42px 16px 0;padding:36px 22px;border-radius:22px}
  body.site-shell .disclaimer-card h2{font-size:27px}
  body.site-shell .bottom-bar{justify-content:center;text-align:center}
}
@media(max-width:575.98px){
  body.site-shell .navbar-brand img{max-width:185px!important}
}
body.site-shell .footer-section{padding-bottom:70px!important;background:var(--cream)!important}
body.site-shell .footer-section .map-wrap{position:relative;overflow:hidden}
body.site-shell .footer-section iframe{width:100%!important;height:410px!important;border:0!important;display:block}
body.site-shell .map-title{position:absolute;top:22px;left:50%;transform:translateX(-50%);background:rgba(36,16,51,.9);color:#fff;padding:11px 25px;border-radius:99px;font-size:13px;font-weight:700;box-shadow:var(--shadow-md)}
body.site-shell .disclaimer-card{max-width:1120px;margin:-65px auto 0;position:relative;z-index:2;background:#fff;border-radius:28px;padding:52px 42px;box-shadow:var(--shadow-lg);text-align:center}
body.site-shell .disclaimer-card h2{margin:0;color:var(--plum-950);font-family:var(--display);font-size:32px;font-weight:500}
body.site-shell .disclaimer-line{width:58px;height:3px;margin:16px auto 20px;border-radius:99px;background:linear-gradient(90deg,var(--gold),var(--gold-light))}
body.site-shell .disclaimer-card>p{max-width:750px;margin:auto;color:var(--muted);line-height:1.8;font-size:14px}
body.site-shell .site-footer{padding:55px 20px 22px!important;background:linear-gradient(140deg,var(--plum-950),var(--plum-800))!important;color:#fff!important}
body.site-shell .site-footer-inner{max-width:1200px;margin:auto;text-align:center}
body.site-shell .site-footer-inner p{margin:0;color:rgba(255,255,255,.82);font-size:14px}
body.site-shell .social-row{display:flex;justify-content:center;gap:12px;margin-top:22px}
body.site-shell .footer-social{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff!important;transition:.25s}
body.site-shell .footer-social:hover{transform:translateY(-4px) scale(1.06)}
body.site-shell .bottom-bar{background:var(--gold)!important;color:#2b2430!important;padding:13px 24px!important;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px!important;font-weight:600!important}
body.site-shell .bottom-bar span{color:#1c1420!important}
body.site-shell .bottom-bar .powered{color:#175c33!important}
@media(max-width:991.98px){body.site-shell .topbar-hide-on-md-sm{display:none!important}body.site-shell .navbar{padding:8px 16px!important}body.site-shell .navbar-brand img{max-width:210px!important}}
@media(max-width:767.98px){body.site-shell .footer-section iframe{height:320px!important}body.site-shell .disclaimer-card{margin:-42px 16px 0;padding:36px 22px;border-radius:22px}body.site-shell .disclaimer-card h2{font-size:27px}body.site-shell .bottom-bar{justify-content:center;text-align:center}}
@media(max-width:575.98px){body.site-shell .navbar-brand img{max-width:185px!important}}
body.site-shell .footer-section{background:var(--cream)!important;padding-bottom:70px!important}
body.site-shell .map-wrap{position:relative;overflow:hidden}
body.site-shell .map-wrap iframe{width:100%;height:410px;border:0;display:block}
body.site-shell .map-title{position:absolute;top:22px;left:50%;transform:translateX(-50%);background:rgba(36,16,51,.9);color:#fff;padding:11px 25px;border-radius:99px;font-size:13px;font-weight:700;box-shadow:var(--shadow-md)}
body.site-shell .disclaimer-card{max-width:1120px;margin:-65px auto 0;position:relative;z-index:2;background:#fff;border-radius:28px;padding:52px 42px;box-shadow:var(--shadow-lg);text-align:center}
body.site-shell .disclaimer-card h2{margin:0;color:var(--plum-950);font-family:var(--display);font-size:32px;font-weight:500}
body.site-shell .disclaimer-line{width:58px;height:3px;margin:16px auto 20px;border-radius:99px;background:linear-gradient(90deg,var(--gold),var(--gold-light))}
body.site-shell .disclaimer-card>p{max-width:750px;margin:auto;color:var(--muted);line-height:1.8;font-size:14px}
body.site-shell .disclaimer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:36px}
body.site-shell .disclaimer-item{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:21px;text-align:center;transition:.25s}
body.site-shell .disclaimer-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}
body.site-shell .disclaimer-item i{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#fff;color:var(--gold);margin-bottom:10px}
body.site-shell .disclaimer-item p{margin:0;color:var(--ink);font-size:13px;line-height:1.6}
body.site-shell .site-footer{padding:55px 20px 22px;background:linear-gradient(140deg,var(--plum-950),var(--plum-800));color:#fff;text-align:center}
body.site-shell .site-footer p{margin:0;color:rgba(255,255,255,.82);font-size:14px}
body.site-shell .social-row{display:flex;justify-content:center;gap:12px;margin-top:22px}
body.site-shell .footer-social{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff!important;transition:.25s}
body.site-shell .footer-social:hover{transform:translateY(-4px) scale(1.06)}
body.site-shell .bottom-bar{background:var(--gold);color:#2b2430;padding:13px 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;font-weight:600}
body.site-shell .bottom-bar span{color:#1c1420}
body.site-shell .bottom-bar .powered{color:#175c33}
@media(max-width:991.98px){
 body.site-shell .topbar-hide-on-md-sm{display:none!important}body.site-shell .navbar{padding:8px 16px!important}body.site-shell .navbar-brand img{max-width:210px!important}
 body.site-shell .disclaimer-grid{grid-template-columns:1fr}
}
@media(max-width:767.98px){body.site-shell .map-wrap iframe{height:320px}
 body.site-shell .disclaimer-card{margin:-42px 16px 0;padding:36px 22px;border-radius:22px}
 body.site-shell .disclaimer-card h2{font-size:27px}body.site-shell .bottom-bar{justify-content:center;text-align:center}
}
@media(max-width:575.98px){body.site-shell .navbar-brand img{max-width:185px!important}}
body.site-shell {
  --plum-950:#071e3c; --plum-900:#09284b; --plum-800:#0b345d;
  --plum-700:#104577; --plum-500:#326b9b; --plum-300:#86accb;
  --gold:#efc34b; --gold-light:#ffe4a0; --cream:#f5f8fc;
  --paper:#fff; --ink:#172e46; --muted:#586d81; --line:#dce5ef;
  --shadow-sm:0 4px 18px #102e4e08; --shadow-md:0 14px 40px #102e4e0d;
  --shadow-lg:0 24px 64px #102e4e18; --radius:18px;
  --font-display:Georgia,'Times New Roman',serif;
  --font-body:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;
  --display:var(--font-display); --body:var(--font-body);
}
body.site-shell .topbar { background:var(--plum-950); padding:10px 24px; font-size:12px; }
body.site-shell .topbar-inner { max-width:1320px; margin:auto; }
body.site-shell .topbar .topbar-inner { padding:0; min-height:22px; }
body.site-shell .navbar-brand::before { display:none; }
body.site-shell .navbar-brand { gap:12px; }
body.site-shell .school-wordmark { display:block; color:var(--plum-800); font-family:var(--font-body); font-weight:750; font-size:17px; line-height:1.25; max-width:190px; white-space:normal; letter-spacing:-.4px; }
body.site-shell .navbar .navbar-brand img { max-height:87px; filter:none; }
body.site-shell .navbar .navbar-nav .login-link { border-radius:8px; box-shadow:none; }
body.site-shell .topbar-contacts { gap:24px; }
body.site-shell .navbar { background:#fff!important; border-bottom:1px solid var(--line); box-shadow:0 4px 20px #102e4e08!important; }
body.site-shell .navbar::after { background:linear-gradient(90deg,var(--gold) 0 16%,#dce5ef 16%); height:2px; }
body.site-shell .navbar .container-fluid { max-width:1440px; min-height:92px; padding:10px 28px; gap:12px; }
body.site-shell .navbar-brand { margin-right:12px; flex-shrink:0; }
body.site-shell .navbar-brand img { width:auto; max-width:220px; max-height:76px; object-fit:contain; }
body.site-shell .navbar-nav { gap:2px!important; }
body.site-shell .navbar-nav .nav-link { background:transparent; color:var(--plum-800)!important; border-radius:7px; font-size:12px; font-weight:650; padding:11px 9px!important; box-shadow:none; transform:none; gap:5px; }
body.site-shell .navbar-nav .nav-link i { color:var(--plum-500)!important; font-size:13px; }
body.site-shell .navbar-nav .nav-link:hover,
body.site-shell .navbar-nav .nav-link.active { background:#edf3f9; color:var(--plum-800)!important; box-shadow:none; transform:none; }
body.site-shell .navbar-nav .nav-link.login-link { background:var(--plum-800); color:#fff!important; border:0; margin-left:5px; padding:12px!important; }
body.site-shell .navbar-nav .nav-link.login-link i { color:var(--gold)!important; }
body.site-shell .navbar-toggler { border:1px solid var(--line); border-radius:8px; min-width:44px; min-height:44px; box-shadow:none; }
body.site-shell .footer-section { background:#edf3f9; padding:60px 28px; gap:28px; }
body.site-shell .map-wrap,
body.site-shell .disclaimer-card { border:1px solid var(--line); border-radius:14px; box-shadow:none; }
body.site-shell .disclaimer-card { background:#fff; padding:32px; }
body.site-shell .site-footer,
body.site-shell .bottom-bar { background:var(--plum-950); color:#e3ebf4; }
body.site-shell .bottom-bar { border-top:1px solid #ffffff1f; }
@media(min-width:992px) and (max-width:1250px) {
  body.site-shell .navbar .container-fluid { flex-wrap:wrap; justify-content:center; }
  body.site-shell .navbar-brand { margin:auto; }
  body.site-shell .navbar-collapse { flex-basis:100%; justify-content:center; }
  body.site-shell .navbar-nav { margin-left:0!important; flex-wrap:wrap; justify-content:center; }
  body.site-shell .navbar-nav .nav-link { font-size:11px; padding:9px 7px!important; }
}
@media(max-width:991.98px) {
  body.site-shell .navbar .container-fluid { padding:10px 20px; min-height:78px; }
  body.site-shell .navbar-brand img { max-width:200px; max-height:60px; }
  body.site-shell .navbar-nav { align-items:stretch; gap:4px!important; padding:16px 0; }
  body.site-shell .navbar-nav .nav-link { justify-content:flex-start; font-size:14px; padding:12px!important; min-height:44px; }
  body.site-shell .navbar-nav .nav-link.login-link { margin-left:0; }
  body.site-shell .navbar-collapse { max-height:calc(100dvh - 100px); overflow-y:auto; }
}
@media(max-width:600px) {
  body.site-shell .school-wordmark { max-width:155px; font-size:15px; }
  body.site-shell .navbar .navbar-brand img { max-height:87px; }
  body.site-shell .navbar .container-fluid { padding:8px 16px; }
  body.site-shell .navbar-brand img { max-width:180px; max-height:58px; }
  body.site-shell .footer-section { padding:44px 20px; }
  body.site-shell .disclaimer-card { padding:24px; }
  body.site-shell .footer-inner,
body.site-shell .bottom-bar { gap:14px; text-align:center; }
}
body.site-shell .topbar { padding:7px 28px; }
body.site-shell .topbar-inner { max-width:1480px; }
body.site-shell .topbar-contacts { gap:20px; }
body.site-shell .utility-login { border-left:1px solid #ffffff55; padding-left:18px; }
body.site-shell .navbar { padding:0; }
body.site-shell .navbar .container-fluid { max-width:1536px; min-height:100px; padding:14px 32px; }
body.site-shell .navbar-brand { gap:14px; border-left:6px solid var(--gold); padding-left:14px; }
body.site-shell .school-wordmark { font-size:clamp(20px,2vw,30px); font-weight:800; max-width:530px; letter-spacing:-.8px; line-height:1.12; text-transform:uppercase; }
body.site-shell .school-wordmark small { display:block; font-size:14px; letter-spacing:5px; font-weight:500; margin-top:7px; }
body.site-shell .navbar .navbar-brand img { max-height:87px; }
body.site-shell .navbar-nav .nav-link { font-size:13px; padding:12px 10px!important; }
body.site-shell .navbar-nav .nav-link>i { display:none; }
body.site-shell .navbar-nav .nav-link.active { color:#fff!important; background:var(--plum-800); }
body.site-shell .navbar::after { background:var(--line); height:1px; }
@media(min-width:992px) and (max-width:1350px) {
  body.site-shell .navbar .container-fluid { justify-content:space-between; flex-wrap:wrap; }
  body.site-shell .navbar-brand { margin:0; }
  body.site-shell .navbar-collapse { flex-basis:100%; justify-content:center; }
  body.site-shell .navbar-nav { margin:0!important; }
  body.site-shell .navbar-nav .nav-link { padding:9px 13px!important; }
}
@media(max-width:991.98px) {
  body.site-shell .topbar { display:block; padding:5px 14px; }
  body.site-shell .topbar-welcome,
body.site-shell .topbar-contacts>a:not(.utility-login) { display:none; }
  body.site-shell .topbar-inner { display:flex; justify-content:flex-end; }
  body.site-shell .topbar-contacts { display:flex; gap:16px; }
  body.site-shell .utility-login { padding:4px 0; border:0; font-size:11px; min-height:28px; }
  body.site-shell .navbar .container-fluid { padding:10px 20px; min-height:80px; }
  body.site-shell .school-wordmark { font-size:21px; max-width:270px; }
  body.site-shell .navbar-nav .nav-link>i { display:inline-block; }
  body.site-shell .navbar-nav .nav-link { min-height:44px; font-size:14px; }
}
@media(max-width:600px) {
  body.site-shell .navbar-brand { gap:8px; padding-left:8px; border-left-width:4px; margin:0; }
  body.site-shell .navbar .container-fluid { padding:10px 12px; gap:8px; }
  body.site-shell .navbar .navbar-brand img { max-height:58px; }
  body.site-shell .school-wordmark { max-width:180px; font-size:16px; letter-spacing:-.3px; }
  body.site-shell .school-wordmark small { font-size:10px; letter-spacing:3px; margin-top:4px; }
}
@media(max-width:359px) {
  body.site-shell .school-wordmark { font-size:14px; max-width:142px; }
  body.site-shell .navbar .navbar-brand img { max-height:52px; }
}

body.site-shell .topbar, body.site-shell .navbar, body.site-shell .footer-section, body.site-shell .site-footer, body.site-shell .bottom-bar { font-family:Inter,system-ui,sans-serif; box-sizing:border-box; width:100%; }
body.site-shell .navbar a, body.site-shell .topbar a, body.site-shell .site-footer a {text-decoration:none;}
/* Keep navigation labels readable instead of wrapping in Bootstrap's narrow default menu. */
body.site-shell .navbar .dropdown-menu { min-width:240px; width:max-content; padding:8px; }
body.site-shell .navbar .dropdown-item { white-space:nowrap; padding:12px 16px; font-size:15px; line-height:1.5; }
@media(max-width:991.98px) {
  body.site-shell .navbar .dropdown-menu { width:100%; min-width:0; max-width:100%; }
  body.site-shell .navbar .dropdown-item { white-space:normal; overflow-wrap:break-word; }
}
body.site-shell .footer-section p {margin:0;line-height:1.75;color:var(--muted);}
body.site-shell .footer-section h2 {font-family:Georgia,serif;color:var(--plum-800);}
body.site-shell .site-footer p {margin:0;color:inherit;}
body.site-shell .navbar-brand {display:flex;align-items:center;white-space:normal;}
body.site-shell .topbar a {overflow-wrap:anywhere;}
body.site-shell .site-footer .footer-inner {display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1200px;margin:auto;}
@media(max-width:767px){body.site-shell .site-footer .footer-inner{flex-direction:column;text-align:center;}body.site-shell .footer-section{display:grid;grid-template-columns:minmax(0,1fr);}body.site-shell .map-wrap,body.site-shell .disclaimer-card{min-width:0;}body.site-shell .disclaimer-item p{overflow-wrap:anywhere;}}
