:root {
    --ink: #163039;
    --muted: #63777e;
    --navy: #002f38;
    --navy-deep: #001b22;
    --teal: #006a76;
    --teal-soft: #dff2f2;
    --sky: #42b9ee;
    --lime: #d7e633;
    --line: #dce5e8;
    --surface: #ffffff;
    --page: #f5f8f9;
    --danger: #b42318;
    --warning: #b86e00;
    --success: #087a58;
    --shadow: 0 24px 70px rgba(0, 48, 58, 0.12);
    --radius-xl: 34px;
    --radius-lg: 24px;
    --radius-md: 18px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
    margin: 0;
    color: var(--ink);
    background: var(--page);
    font-family: Tahoma, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
}

button, input, select { font: inherit; }
a { color: inherit; }
em { font-style: normal; }
[hidden] { display: none !important; }

.site-header {
    position: absolute;
    z-index: 20;
    inset: 0 0 auto;
    width: min(1240px, calc(100% - 64px));
    min-height: 100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    color: #fff;
    text-decoration: none;
}

.brand-symbol, .seal-mark {
    position: relative;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    transform: rotate(45deg);
}

.brand-symbol::before, .seal-mark::before {
    content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    border: 3px solid currentColor;
    border-radius: 50% 50% 50% 7px;
}

.brand-symbol i, .seal-mark i {
    position: absolute;
    width: 14px;
    height: 22px;
    border: 2px solid currentColor;
    border-radius: 80% 15% 80% 15%;
    transform-origin: 7px 25px;
}

.brand-symbol i:nth-child(1), .seal-mark i:nth-child(1) { transform: rotate(0deg) translateY(-15px); }
.brand-symbol i:nth-child(2), .seal-mark i:nth-child(2) { transform: rotate(90deg) translateY(-15px); }
.brand-symbol i:nth-child(3), .seal-mark i:nth-child(3) { transform: rotate(180deg) translateY(-15px); }
.brand-symbol i:nth-child(4), .seal-mark i:nth-child(4) { transform: rotate(270deg) translateY(-15px); }

.brand-copy { display: grid; gap: 4px; }
.brand-copy strong { font-size: 16px; letter-spacing: .1px; }
.brand-copy small { font-size: 9px; letter-spacing: 1.7px; opacity: .75; }

.header-actions { display: flex; align-items: center; gap: 14px; }

.header-home {
    display: grid;
    gap: 2px;
    padding: 7px 14px;
    color: #fff;
    text-decoration: none;
    border-inline-end: 1px solid rgba(255,255,255,.22);
}

.header-home span { font-size: 13px; font-weight: 700; }
.header-home small { font-size: 9px; opacity: .65; }

.language-toggle {
    min-width: 50px;
    height: 36px;
    padding: 0 12px;
    color: #fff;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.32);
    border-radius: 999px;
    cursor: pointer;
    font-size: 11px;
    font-weight: 800;
}

.language-toggle:hover { color: var(--navy-deep); background: var(--lime); border-color: var(--lime); }

.menu-orb {
    width: 46px;
    height: 46px;
    display: grid;
    place-content: center;
    gap: 4px;
    border-radius: 50%;
    background: var(--sky);
    border: 0;
    cursor: pointer;
    box-shadow: 0 10px 30px rgba(66,185,238,.28);
}

.menu-orb i { width: 16px; height: 1.5px; background: #fff; border-radius: 2px; }
.menu-orb[aria-expanded="true"] { background: var(--lime); }
.menu-orb[aria-expanded="true"] i { background: var(--navy); }

.site-menu {
    position: absolute;
    top: 82px;
    left: 0;
    width: min(330px, calc(100vw - 36px));
    overflow: hidden;
    padding: 8px;
    color: var(--ink);
    background: rgba(255,255,255,.98);
    border: 1px solid rgba(255,255,255,.65);
    border-radius: 19px;
    box-shadow: 0 22px 55px rgba(0,25,31,.28);
}

.site-menu a { display: grid; gap: 3px; padding: 12px 14px; color: var(--ink); text-decoration: none; border-radius: 12px; }
.site-menu a:hover { color: var(--teal); background: var(--teal-soft); }
.site-menu a span { font-size: 12px; font-weight: 800; }
.site-menu a small { color: #72898d; font-size: 8px; direction: ltr; text-align: right; }

.hero {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 12% 12%, rgba(55,181,225,.20), transparent 26%),
        radial-gradient(circle at 82% 74%, rgba(0,127,139,.32), transparent 34%),
        linear-gradient(125deg, var(--navy-deep), var(--navy) 48%, #004c56);
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .18;
    background-image:
        linear-gradient(110deg, transparent 0 48%, rgba(255,255,255,.08) 49% 50%, transparent 51%),
        linear-gradient(30deg, transparent 0 48%, rgba(255,255,255,.05) 49% 50%, transparent 51%);
    background-size: 160px 160px;
}

.hero-pattern {
    position: absolute;
    width: 720px;
    height: 720px;
    inset: -260px auto auto -110px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 50%;
    box-shadow:
        0 0 0 70px rgba(255,255,255,.025),
        0 0 0 160px rgba(44,185,202,.035),
        inset 0 0 90px rgba(0,0,0,.15);
}

.hero-pattern::before, .hero-pattern::after {
    content: "";
    position: absolute;
    inset: 110px;
    border: 1px dashed rgba(215,230,51,.14);
    border-radius: 50%;
}

.hero-pattern::after { inset: 220px; border-style: solid; }

.hero-home { min-height: 650px; padding: 175px max(32px, calc((100% - 1180px)/2)) 165px; }
.hero-inner { min-height: 435px; padding: 155px max(32px, calc((100% - 1180px)/2)) 105px; }
.hero-process { min-height: 420px; }

.hero-content { position: relative; z-index: 2; width: min(710px, 64%); }

.eyebrow {
    display: inline-grid;
    gap: 4px;
    padding-inline-start: 16px;
    border-inline-start: 3px solid var(--lime);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}

.eyebrow small { font-size: 9px; letter-spacing: 1.6px; color: #a5c8ce; }

.hero h1 { margin: 24px 0 18px; font-size: clamp(38px, 5vw, 68px); line-height: 1.17; letter-spacing: -.8px; }
.hero h1 span { display: block; margin-top: 12px; color: #acd0d4; font-size: .34em; font-weight: 500; letter-spacing: .2px; }
.hero p { max-width: 690px; margin: 0; color: #d8e5e7; font-size: 16px; line-height: 1.9; }
.hero p span { display: block; margin-top: 4px; color: #9bb8bd; font-size: 12px; direction: ltr; text-align: right; }

.hero-button {
    width: fit-content;
    margin-top: 32px;
    display: grid;
    grid-template-columns: 1fr auto;
    column-gap: 30px;
    align-items: center;
    padding: 13px 17px 13px 13px;
    color: var(--navy-deep);
    text-decoration: none;
    background: var(--lime);
    border-radius: 999px;
    font-weight: 800;
}

.hero-button span, .hero-button small { grid-column: 1; }
.hero-button small { font-size: 9px; opacity: .72; direction: ltr; }
.hero-button b { grid-column: 2; grid-row: 1 / 3; width: 36px; height: 36px; display: grid; place-items: center; color: #fff; background: var(--navy); border-radius: 50%; }

.hero-seal {
    position: absolute;
    z-index: 2;
    top: 165px;
    left: max(50px, calc((100% - 1140px)/2));
    width: 220px;
    height: 220px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    color: rgba(255,255,255,.9);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 50%;
    background: rgba(0,24,30,.25);
    box-shadow: 0 0 0 35px rgba(255,255,255,.025), inset 0 0 55px rgba(66,185,238,.07);
}

.hero-seal .seal-mark { width: 74px; height: 74px; color: #fff; }
.hero-seal small { margin-top: 12px; font-size: 9px; letter-spacing: 3px; color: #7fadb3; }
.hero-seal strong { font-size: 12px; letter-spacing: 2px; }

.hero-code {
    position: absolute;
    z-index: 1;
    left: max(34px, calc((100% - 1120px)/2));
    bottom: 65px;
    color: rgba(255,255,255,.05);
    font-size: clamp(90px, 15vw, 190px);
    font-weight: 900;
    letter-spacing: -10px;
}

.breadcrumb { display: inline-block; margin-bottom: 22px; color: #9cc2c7; font-size: 11px; text-decoration: none; }

.program-section {
    position: relative;
    z-index: 5;
    width: min(1180px, calc(100% - 48px));
    margin: -92px auto 90px;
    padding: 42px;
    background: #fff;
    border-radius: 0 var(--radius-xl) var(--radius-xl) var(--radius-xl);
    box-shadow: var(--shadow);
}

.program-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: -74px;
    width: 100px;
    height: 94px;
    background: #fff;
    clip-path: polygon(74% 0, 100% 0, 100% 100%, 0 100%);
}

.inner-selection { margin-top: -72px; }

.section-intro, .upload-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 30px;
}

.section-kicker { color: var(--teal); font-size: 10px; font-weight: 800; letter-spacing: .6px; }
.section-intro h2, .upload-heading h2 { margin: 7px 0 1px; font-size: 30px; }
.section-intro p, .upload-heading p { margin: 0; color: var(--muted); font-size: 12px; direction: ltr; text-align: right; }
.section-number { color: #e5eef0; font-size: 58px; font-weight: 900; line-height: 1; }

.program-grid { display: grid; gap: 18px; }
.program-grid-three { grid-template-columns: repeat(3, 1fr); }
.program-grid-two { grid-template-columns: repeat(2, 1fr); }

.program-card {
    position: relative;
    min-height: 280px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 25px;
    color: var(--ink);
    text-decoration: none;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 22px;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.program-card:hover { transform: translateY(-5px); border-color: #a5d6db; box-shadow: 0 20px 48px rgba(0,72,82,.13); }
.program-index { position: absolute; top: 23px; left: 23px; color: #9db0b5; font-size: 11px; font-weight: 800; }
.card-watermark { position: absolute; left: -12px; bottom: -24px; color: rgba(0,106,118,.045); font-size: 120px; font-weight: 900; letter-spacing: -10px; }

.program-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    margin-bottom: 26px;
    color: var(--teal);
    background: var(--teal-soft);
    border-radius: 50%;
}

.program-icon i { position: relative; width: 25px; height: 25px; display: block; }
.icon-chart::before { content:""; position:absolute; inset:2px; border-left:2px solid currentColor; border-bottom:2px solid currentColor; }
.icon-chart::after { content:""; position:absolute; left:5px; right:1px; bottom:6px; height:13px; border-left:4px solid currentColor; border-right:4px solid currentColor; box-shadow: 7px 0 0 -1px currentColor; }
.icon-audit::before { content:"✓"; position:absolute; inset:0; display:grid; place-items:center; border:2px solid currentColor; border-radius:7px; font-weight:900; }
.icon-pulse::before { content:""; position:absolute; top:11px; left:0; width:25px; height:2px; background:currentColor; }
.icon-pulse::after { content:""; position:absolute; width:10px; height:13px; left:8px; top:4px; border-left:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(-45deg); }
.icon-lab::before { content:""; position:absolute; width:12px; height:20px; left:6px; top:1px; border:2px solid currentColor; border-top:0; border-radius:0 0 8px 8px; transform:rotate(15deg); }
.icon-lab::after { content:""; position:absolute; width:9px; height:2px; left:11px; top:1px; background:currentColor; transform:rotate(15deg); }
.icon-or::before { content:"+"; position:absolute; inset:0; display:grid; place-items:center; color:#fff; background:currentColor; border-radius:50%; font-size:20px; font-weight:400; }

.program-card h3 { position: relative; z-index: 1; margin: 0; font-size: 18px; }
.program-card h3 span { display: block; margin-top: 6px; color: var(--teal); font-size: 11px; font-weight: 700; direction: ltr; text-align: right; }
.program-card p { position: relative; z-index: 1; margin: 17px 0 4px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.program-card small { position: relative; z-index: 1; color: #8a9b9f; font-size: 10px; line-height: 1.5; direction: ltr; text-align: right; }
.card-arrow { position: absolute; z-index: 2; left: 22px; bottom: 21px; width: 36px; height: 36px; display: grid; place-items:center; color:#fff; background:var(--teal); border-radius:50%; transition:background .2s ease; }
.program-card:hover .card-arrow { background: var(--sky); }

.trust-strip { margin-top: 24px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding-top: 22px; border-top: 1px solid var(--line); }
.trust-strip span { display: grid; grid-template-columns: auto 1fr; column-gap: 9px; color: var(--ink); font-size: 12px; font-weight: 700; }
.trust-strip b { grid-row: 1 / 3; width: 21px; height: 21px; display: grid; place-items:center; color:var(--teal); background:var(--teal-soft); border-radius:50%; }
.trust-strip em { align-self:center; }
.trust-strip small { color: var(--muted); font-size: 9px; direction:ltr; text-align:right; font-weight:400; }

.upload-section {
    position: relative;
    z-index: 5;
    width: min(1120px, calc(100% - 48px));
    margin: -68px auto 90px;
    padding: 42px;
    background: #fff;
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow);
}

.secure-badge { display:inline-flex; align-items:center; gap:8px; padding:10px 13px; color:var(--teal); background:var(--teal-soft); border-radius:999px; font-size:11px; font-weight:700; }
.secure-badge i { width:7px; height:7px; background:var(--success); border-radius:50%; box-shadow:0 0 0 4px rgba(8,122,88,.1); }
.secure-badge em { white-space:nowrap; }
.secure-badge small { color:#5b7e82; font-size:8px; }

.upload-grid { display:grid; gap:16px; }
.upload-grid-three { grid-template-columns: repeat(3,1fr); }
.upload-grid-two { grid-template-columns: repeat(2,1fr); }

.upload-card {
    position: relative;
    min-height: 270px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    padding:24px;
    background:#fbfcfc;
    border:1px solid var(--line);
    border-radius:22px;
    transition:border-color .2s ease, background .2s ease, transform .2s ease;
}

.file-card { cursor:pointer; }
.file-card:hover, .upload-card.is-selected { transform:translateY(-3px); border-color:#82c6ce; background:#f6fbfb; }
.upload-card.is-selected::after { content:"✓"; position:absolute; left:20px; top:20px; width:25px; height:25px; display:grid; place-items:center; color:#fff; background:var(--success); border-radius:50%; font-size:12px; font-weight:900; }
.upload-step { position:absolute; top:20px; left:20px; color:#9cadb1; font-size:10px; font-weight:900; }

.upload-symbol { position:relative; width:52px; height:52px; margin-bottom:20px; display:grid; place-items:center; color:var(--teal); background:var(--teal-soft); border-radius:50%; }
.file-symbol::before { content:""; width:19px; height:24px; border:2px solid currentColor; border-radius:3px; }
.file-symbol::after { content:"↑"; position:absolute; width:16px; height:16px; display:grid; place-items:center; bottom:10px; right:9px; color:#fff; background:var(--teal); border-radius:50%; font-size:10px; }
.folder-symbol::before { content:""; width:25px; height:18px; border:2px solid currentColor; border-radius:4px; }
.folder-symbol::after { content:""; position:absolute; width:10px; height:5px; top:14px; right:13px; background:var(--teal-soft); border:2px solid currentColor; border-bottom:0; border-radius:3px 3px 0 0; }
.calendar-symbol::before { content:""; width:23px; height:21px; border:2px solid currentColor; border-radius:4px; box-shadow:inset 0 6px 0 rgba(0,106,118,.15); }
.calendar-symbol::after { content:""; position:absolute; top:13px; width:14px; height:2px; background:currentColor; }

.upload-title { display:grid; gap:4px; }
.upload-title strong { font-size:16px; }
.upload-title small { color:var(--teal); font-size:9px; font-weight:700; direction:ltr; text-align:right; }
.upload-card p { margin:15px 0 12px; color:var(--muted); font-size:12px; line-height:1.65; }
.upload-card p span { display:block; color:#8fa0a4; font-size:9px; direction:ltr; text-align:right; }
.file-format { margin-top:auto; padding:5px 9px; color:var(--teal); background:var(--teal-soft); border-radius:999px; font-size:8px; font-weight:900; letter-spacing:.5px; }
.file-selection { width:100%; margin-top:11px; overflow:hidden; color:#718489; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.upload-card input[type="file"] { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }

.month-card select { width:100%; margin-top:auto; min-height:48px; padding:0 14px; color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:13px; outline:none; }
.month-card select:focus { border-color:var(--teal); box-shadow:0 0 0 4px rgba(0,106,118,.08); }

.file-summary { margin-top:18px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 20px; background:#f4f8f9; border-radius:18px; }
.summary-copy { display:flex; align-items:center; gap:13px; }
.summary-info { width:32px; height:32px; display:grid; place-items:center; color:#fff; background:var(--teal); border-radius:50%; font-family:serif; font-weight:900; }
.summary-copy strong { font-size:13px; }
.summary-copy strong span { margin-inline-start:6px; color:var(--teal); font-size:9px; direction:ltr; }
.summary-copy p { margin:4px 0 0; color:var(--muted); font-size:10px; }
.summary-metrics { display:flex; gap:10px; }
.summary-metrics span { min-width:120px; display:grid; grid-template-columns:auto 1fr; align-items:center; column-gap:7px; padding:9px 12px; background:#fff; border:1px solid var(--line); border-radius:12px; color:var(--muted); font-size:9px; }
.summary-metrics b { grid-row:1 / 3; color:var(--teal); font-size:15px; }
.summary-metrics em { align-self:center; }
.summary-metrics small { font-size:8px; direction:ltr; text-align:right; }

.primary-button {
    width:100%;
    min-height:66px;
    margin-top:18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:11px 16px 11px 12px;
    color:#fff;
    background:linear-gradient(110deg,var(--navy),var(--teal));
    border:0;
    border-radius:17px;
    cursor:pointer;
    box-shadow:0 16px 30px rgba(0,71,80,.16);
}

.primary-button:disabled { opacity:.7; cursor:wait; }
.primary-button span { display:grid; gap:4px; text-align:right; }
.primary-button b { font-size:14px; }
.primary-button small { color:#b9d5d8; font-size:9px; direction:ltr; }
.primary-button i { width:42px; height:42px; display:grid; place-items:center; color:var(--navy); background:var(--lime); border-radius:50%; font-style:normal; font-weight:900; }

.processing-panel { margin-top:16px; display:flex; align-items:center; justify-content:center; gap:14px; padding:20px; color:var(--ink); background:#f0f8f8; border:1px solid #cfe6e7; border-radius:17px; }
.processing-panel div { display:grid; gap:4px; }
.processing-panel strong { font-size:13px; }
.processing-panel small { color:var(--muted); font-size:9px; direction:ltr; }
.loader { width:24px; height:24px; border:3px solid #cbe0e2; border-top-color:var(--teal); border-radius:50%; animation:spin .8s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }

.alert { margin-bottom:24px; display:grid; grid-template-columns:auto 1fr; gap:14px; padding:18px; border-radius:18px; }
.alert-error { color:#7a271a; background:#fff1f0; border:1px solid #f4c7c3; }
.alert-icon { width:34px; height:34px; display:grid; place-items:center; color:#fff; background:var(--danger); border-radius:50%; font-weight:900; }
.alert-copy strong { font-size:13px; }
.alert-copy strong span { display:block; margin-top:3px; font-size:9px; opacity:.7; direction:ltr; text-align:right; }
.alert-copy p { margin:9px 0 0; font-size:12px; line-height:1.8; }
.alert-copy details { margin-top:12px; }
.alert-copy summary { cursor:pointer; font-size:10px; font-weight:700; }
.alert-copy summary span { margin-inline-start:5px; opacity:.7; direction:ltr; }
.alert-copy pre { max-height:260px; overflow:auto; padding:14px; color:#21343a; background:#fff; border-radius:12px; font-size:10px; white-space:pre-wrap; }

.site-footer {
    width:min(1180px,calc(100% - 48px));
    margin:0 auto 30px;
    display:grid;
    grid-template-columns:1fr 1.5fr auto;
    align-items:center;
    gap:30px;
    padding:26px 0;
    color:#63777e;
    border-top:1px solid var(--line);
}

.site-footer div { display:grid; gap:4px; color:var(--ink); }
.site-footer div strong { font-size:13px; }
.site-footer div small { color:var(--teal); font-size:8px; letter-spacing:1px; }
.site-footer p { margin:0; text-align:center; font-size:10px; }
.site-footer p span { display:block; margin-top:4px; font-size:8px; direction:ltr; }
.footer-year { color:#a7b6b9; font-size:11px; }

html[dir="ltr"] .site-menu { right: 0; left: auto; }
html[dir="ltr"] .hero-pattern { right: -110px; left: auto; }
html[dir="ltr"] .hero-seal {
    right: max(50px, calc((100% - 1140px)/2));
    left: auto;
}
html[dir="ltr"] .hero-code {
    right: max(34px, calc((100% - 1120px)/2));
    left: auto;
}
html[dir="ltr"] .program-section {
    border-radius: var(--radius-xl) 0 var(--radius-xl) var(--radius-xl);
}
html[dir="ltr"] .program-section::before {
    right: -74px;
    left: auto;
    transform: scaleX(-1);
}
html[dir="ltr"] .hero-content,
html[dir="ltr"] .section-intro,
html[dir="ltr"] .upload-heading,
html[dir="ltr"] .program-card,
html[dir="ltr"] .upload-card,
html[dir="ltr"] .alert-copy,
html[dir="ltr"] .summary-copy,
html[dir="ltr"] .processing-panel,
html[dir="ltr"] .site-footer { text-align: left; }
html[dir="ltr"] .site-menu a span,
html[dir="ltr"] .primary-button span { text-align: left; }
html[dir="ltr"] .program-index { right: 23px; left: auto; }
html[dir="ltr"] .upload-step { right: 20px; left: auto; }
html[dir="ltr"] .card-watermark { right: -12px; left: auto; }
html[dir="ltr"] .card-arrow { right: 22px; left: auto; transform: rotate(180deg); }
html[dir="ltr"] .hero-button b,
html[dir="ltr"] .primary-button i { transform: rotate(180deg); }
html[dir="ltr"] .upload-card.is-selected::after { right:20px; left:auto; }
html[dir="ltr"] .file-selection,
html[dir="ltr"] .summary-copy p,
html[dir="ltr"] .review-row p { direction:ltr; }

@media (max-width: 900px) {
    .site-header { width:calc(100% - 36px); min-height:84px; }
    .hero-home { min-height:600px; padding-top:150px; }
    .hero-content { width:100%; }
    .hero-seal { display:none; }
    .program-grid-three { grid-template-columns:1fr 1fr; }
    .program-grid-three .program-card:last-child { grid-column:1 / -1; }
    .upload-grid-three { grid-template-columns:1fr; }
    .upload-grid-two { grid-template-columns:1fr; }
    .trust-strip { grid-template-columns:1fr; }
    .file-summary { align-items:flex-start; flex-direction:column; }
    .summary-metrics { width:100%; }
    .summary-metrics span { flex:1; }
}

@media (max-width: 620px) {
    .site-header { width:calc(100% - 28px); }
    .brand-copy strong { font-size:13px; }
    .brand-copy small, .header-home { display:none; }
    .language-toggle { min-width:46px; height:34px; padding-inline:10px; font-size:9px; }
    .menu-orb { width:42px; height:42px; }
    .hero-home, .hero-inner { padding-inline:22px; }
    .hero-home { min-height:560px; padding-top:135px; }
    .hero-inner { min-height:420px; padding-top:130px; }
    .hero h1 { font-size:38px; }
    .hero p { font-size:13px; }
    .hero-code { font-size:80px; left:20px; letter-spacing:-5px; }
    html[dir="ltr"] .hero-code { right:20px; left:auto; }
    .program-section, .upload-section { width:calc(100% - 24px); padding:24px 17px; border-radius:24px; }
    .program-section::before { display:none; }
    .section-intro, .upload-heading { align-items:flex-start; }
    .section-number, .secure-badge { display:none; }
    .program-grid-three, .program-grid-two { grid-template-columns:1fr; }
    .program-grid-three .program-card:last-child { grid-column:auto; }
    .program-card { min-height:260px; }
    .summary-metrics { flex-direction:column; }
    .summary-metrics span { width:100%; }
    .site-footer { width:calc(100% - 32px); grid-template-columns:1fr; text-align:center; }
    .site-footer p { order:3; }
    .footer-year { display:none; }
}

@media (max-width: 420px) {
    .brand-copy { display:none; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; transition-duration:.01ms !important; }
}
.admin-panel{max-width:1500px;margin:auto}.admin-card{background:#fff;border:1px solid #d9e1e4;border-radius:18px;padding:24px;box-shadow:0 8px 28px rgba(0,47,56,.07)}.admin-label{display:block;font-weight:700;margin:14px 0 6px}.admin-input,.settings-table input,.admin-card select{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid #c7d1d4;border-radius:9px;background:#fff}.admin-button{border:0;margin-top:20px;cursor:pointer}.admin-success{background:#e8f7f2;border:1px solid #99d4c2;padding:12px 16px;border-radius:10px;margin:12px 0}.admin-help{color:#60757b;font-size:.9rem}.settings-table-wrap{overflow:auto;max-height:560px;border:1px solid #dbe3e5;border-radius:12px;margin:12px 0 28px}.settings-table{width:100%;border-collapse:collapse;min-width:1300px;font-size:.84rem}.settings-table th,.settings-table td{padding:8px;border-bottom:1px solid #e6ecee;vertical-align:top}.settings-table th{position:sticky;top:0;background:#eef5f5;z-index:2}.settings-table .kpi-name{min-width:300px}.settings-table input{min-width:150px;padding:7px;font-size:.8rem}.settings-table td:nth-child(5) input{min-width:420px}
