*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
        html { scroll-behavior: smooth; }
        body {
            font-family: 'Plus Jakarta Sans', 'Segoe UI', sans-serif;
            color: #1A1A2A;
            background: #fff;
            line-height: 1.6;
            overflow-x: hidden;
            font-size: 14px;
        }
        a { text-decoration: none; color: inherit; }
        img { max-width: 100%; display: block; }
        ul { list-style: none; }
        button, input, select, textarea { font: inherit; }
        :root {
            --navy: #124AA2;
            --navy-dk: #141f52;
            --navy-lt: #2a67c7;
            --orange: #0F4AA3;
            --orange-lt: #1b5fc7;
            --cyan: #3ABEF5;
            --green: #22B573;
            --green-dk: #18915c;
            --feat-bg: #F5F7FA;
            --page-bg: #F4F6FB;
            --white: #ffffff;
            --dark: #1A1A2A;
            --muted: #6B7280;
            --border: #E0E4EF;
            --radius: 10px;
            --shadow: 0 4px 20px rgba(27,43,107,.10);
            --shadow-md: 0 4px 24px rgba(27,43,107,.12);
        }
        .container { max-width: 1120px; margin: 0 auto; padding: 0 24px; }
        .container-wide { max-width: 1140px; margin: 0 auto; padding: 0 24px; }
        #navbar {
            position: sticky; top: 0; left: 0; right: 0; z-index: 1000;
            background: #fff;
            border-bottom: 1px solid var(--border);
            box-shadow: 0 2px 16px rgba(18,74,162,.05);
        }
        body.home-page #navbar {
            background: #edf5fb;
            border-bottom-color: transparent;
            box-shadow: none;
        }
        .nav-inner {
            display: flex; align-items: center; justify-content: space-between;
            height: 80px; gap: 24px;
        }
        .nav-logo {
            display: flex; align-items: center;
            flex-shrink: 0;
            text-decoration: none;
        }
        .nav-logo img {
            height: 56px;
            width: auto;
            display: block;
        }
        .nav-links { display: flex; gap: 4px; align-items: center; }
        .nav-links a {
            font-size: 15px; font-weight: 600; color: #21314f;
            padding: 9px 14px; border-radius: 10px;
            transition: background .18s, color .18s; white-space: nowrap;
        }
        .nav-links a:hover,
        .nav-links a.active { background: var(--feat-bg); color: var(--navy); }
        body.home-page .nav-links a:hover,
        body.home-page .nav-links a.active {
            background: rgba(18,74,162,.08);
            color: var(--navy);
        }
        .nav-actions { display: flex; align-items: center; gap: 10px; }
        .btn-login {
            font-size: 15px; font-weight: 700; color: var(--dark);
            padding: 8px 10px; border-radius: 7px;
            border: none;
            background: transparent; cursor: pointer;
            transition: color .2s;
        }
        .btn-login:hover { color: var(--navy); }
        .btn-itr {
            font-size: 15px; font-weight: 700; color: #fff;
            background: var(--orange); padding: 13px 26px;
            border-radius: 8px; white-space: nowrap;
            border: none; cursor: pointer;
            transition: background .2s, transform .15s;
        }
        .btn-itr:hover { background: var(--orange-lt); transform: translateY(-1px); }
        .hamburger {
            display: none; flex-direction: column; gap: 5px;
            cursor: pointer; padding: 4px; background: none; border: none;
        }
        .hamburger span {
            display: block; width: 22px; height: 2px;
            background: var(--dark); border-radius: 2px;
        }
        .flash-success {
            background: #D1FAE5;
            color: #065F46;
            border: 1px solid #A7F3D0;
            padding: 14px 18px;
            border-radius: 10px;
            margin: 20px auto 0;
        }
        .flash-error {
            background: #FEF2F2;
            color: #991B1B;
            border: 1px solid #FECACA;
            padding: 14px 18px;
            border-radius: 10px;
            margin: 20px auto 0;
        }
        #footer {
            background: #144da3;
            padding: 72px 0 0;
        }
        .footer-grid {
            display: grid;
            grid-template-columns: minmax(260px, 1.2fr) repeat(2, minmax(160px, 1fr));
            gap: 56px;
            margin-bottom: 72px;
        }
        .footer-logo {
            display: inline-flex;
            align-items: center;
            background: #fff;
            border-radius: 6px;
            padding: 8px 14px;
            margin-bottom: 28px;
        }
        .footer-logo img {
            height: 44px;
            width: auto;
            display: block;
        }
        .footer-brand p {
            font-size: 16px;
            color: rgba(255,255,255,.88);
            line-height: 1.75;
            margin-bottom: 26px;
            max-width: 330px;
        }
        .footer-col h4 {
            font-size: 13px;
            font-weight: 800;
            color: #fff;
            text-transform: uppercase;
            letter-spacing: .14em;
            margin-bottom: 28px;
        }
        .footer-col li { margin-bottom: 20px; }
        .footer-col a {
            font-size: 16px;
            color: rgba(255,255,255,.9);
            transition: color .2s;
        }
        .footer-col a:hover { color: #fff; }
        .footer-bottom {
            border-top: 1px solid rgba(255,255,255,.7);
            padding: 34px 0 36px;
            text-align: center;
        }
        .footer-bottom p {
            font-size: 14px;
            color: rgba(255,255,255,.5);
        }
        @media (max-width: 900px) {
            .footer-grid { grid-template-columns: 1fr 1fr; }
        }
        @media (max-width: 768px) {
            .container,
            .container-wide {
                padding-left: 16px;
                padding-right: 16px;
            }
            .nav-inner {
                height: auto;
                min-height: 72px;
                gap: 12px;
                position: relative;
            }
            .nav-links { display: none; }
            .nav-links.open {
                display: flex;
                flex-direction: column;
                position: absolute;
                top: 80px; left: 0; right: 0;
                background: #fff;
                padding: 12px 24px 16px;
                box-shadow: 0 8px 24px rgba(0,0,0,.1);
                border-top: 1px solid var(--border);
                align-items: stretch;
            }
            .nav-links.open a {
                width: 100%;
                padding: 12px 14px;
            }
            .nav-actions {
                margin-left: auto;
                gap: 8px;
            }
            .hamburger { display: flex; }
        }
        @media (max-width: 640px) {
            .nav-inner { height: 72px; }
            .nav-logo img { height: 44px; }
            .btn-login {
                font-size: 13px;
                padding: 8px 6px;
            }
            .btn-itr {
                padding: 10px 13px;
                font-size: 13px;
                border-radius: 7px;
            }
            .nav-actions form {
                display: flex;
            }
        }
        @media (max-width: 420px) {
            .container,
            .container-wide {
                padding-left: 12px;
                padding-right: 12px;
            }
            .nav-inner {
                gap: 8px;
            }
            .nav-logo img { height: 38px; }
            .btn-login { display: none; }
            .btn-itr {
                padding: 9px 11px;
                font-size: 12px;
            }
        }
        @media (max-width: 640px) {
            #footer { padding-top: 52px; }
            .footer-grid {
                grid-template-columns: 1fr;
                gap: 34px;
                margin-bottom: 42px;
            }
            .footer-brand p,
            .footer-col a {
                font-size: 15px;
            }
            .footer-col h4 {
                margin-bottom: 18px;
            }
            .footer-col li {
                margin-bottom: 14px;
            }
        }
