:root {
    --navy: #08233f;
    --navy-2: #0b3450;
    --teal: #08a8a2;
    --teal-dark: #078a86;
    --cyan: #22d3cf;
    --mint: #e9fbfa;
    --surface: #ffffff;
    --bg: #f7fafc;
    --soft: #f2f7f8;
    --text: #10233d;
    --muted: #66758a;
    --border: #dde7ea;
    --danger: #d93d4a;
    --success: #07986e;
    --shadow: 0 18px 55px rgba(15, 52, 78, .08);
    --container: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: #fff;
    color: var(--text);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    line-height: 1.55;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, select, textarea { font: inherit; }
.container { width: min(var(--container), calc(100% - 40px)); margin: 0 auto; }

.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(255,255,255,.9);
    backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(221,231,234,.8);
}
.nav-wrap { min-height: 76px; display: flex; align-items: center; gap: 24px; }
.brand { display: flex; align-items: center; gap: 10px; min-width: 205px; }
.brand-mark {
    font-weight: 900;
    font-size: 28px;
    letter-spacing: -2px;
    color: var(--navy);
    position: relative;
}
.brand-mark::after {
    content: "";
    position: absolute;
    width: 22px;
    height: 5px;
    border-radius: 5px;
    background: var(--teal);
    left: 2px;
    bottom: 0;
}
.brand > span:last-child { display: flex; flex-direction: column; line-height: 1; }
.brand strong { font-size: 16px; letter-spacing: .5px; }
.brand small {
    font-size: 11px;
    color: var(--teal);
    font-weight: 800;
    letter-spacing: 1.5px;
    margin-top: 4px;
}
.brand-logo-image {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    object-fit: contain;
    background: #fff;
}
.main-nav { display: flex; align-items: center; justify-content: center; gap: 24px; flex: 1; }
.main-nav a { font-size: 14px; font-weight: 650; color: #29394d; transition: .2s; }
.main-nav a:hover { color: var(--teal); }
.nav-dropdown { position:relative; display:flex; align-items:center; }
.nav-dropdown-menu { position:absolute; top:100%; left:50%; z-index:20; display:none; min-width:165px; padding:8px; transform:translateX(-50%); border:1px solid var(--border); border-radius:12px; background:#fff; box-shadow:0 14px 35px rgba(12,35,52,.14); }
.nav-dropdown:hover .nav-dropdown-menu, .nav-dropdown:focus-within .nav-dropdown-menu { display:grid; }
.nav-dropdown-menu a { display:block; padding:9px 10px; white-space:nowrap; border-radius:8px; font-size:13px; }
.nav-dropdown-menu a:hover { background:#eef8f7; }
.nav-actions { display: flex; align-items: center; gap: 10px; }
.nav-toggle { display: none; border: 0; background: none; font-size: 25px; }
.inline-form { display: inline-flex; }
.notification-link { position: relative; font-size: 20px; padding: 8px; }
.notification-link span {
    position: absolute;
    right: -2px;
    top: 0;
    background: var(--teal);
    color: #fff;
    border-radius: 99px;
    font-size: 10px;
    min-width: 17px;
    height: 17px;
    display: grid;
    place-items: center;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 48px;
    padding: 0 22px;
    border-radius: 12px;
    border: 1px solid transparent;
    font-weight: 750;
    cursor: pointer;
    transition: .2s;
    white-space: nowrap;
}
.btn:hover { transform: translateY(-1px); }
.btn-primary {
    background: linear-gradient(135deg, var(--teal), #10bdb5);
    color: #fff;
    box-shadow: 0 10px 28px rgba(8,168,162,.2);
}
.btn-primary:hover { background: linear-gradient(135deg, var(--teal-dark), var(--teal)); }
.btn-outline { background: #fff; border-color: #9db9c3; color: var(--navy); }
.btn-outline:hover { border-color: var(--teal); color: var(--teal); }
.btn-ghost { background: transparent; color: var(--navy); }
.btn-light { background: #fff; color: var(--teal-dark); }
.btn-sm { min-height: 40px; padding: 0 16px; font-size: 13px; border-radius: 10px; }
.btn-block { width: 100%; min-height: 42px; }
.hidden { display: none !important; }

.flash-wrap { position: relative; z-index: 40; }
.flash { padding: 14px 18px; border-radius: 12px; margin-top: 14px; border: 1px solid; }
.flash.success { background: #ecfdf6; color: #08795b; border-color: #bcead9; }
.flash.error { background: #fff0f1; color: #a42a36; border-color: #ffcfd4; }

.hero-section {
    background: linear-gradient(108deg, #eefcfd 0%, #f7ffff 46%, #d9f6fb 100%);
    padding: 44px 0 0;
    overflow: hidden;
    position: relative;
}
.hero-section::before {
    content: "";
    position: absolute;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: rgba(34,211,207,.13);
    filter: blur(80px);
    left: -180px;
    top: 80px;
}
.hero-grid {
    display: grid;
    grid-template-columns: 43% 57%;
    align-items: center;
    gap: 30px;
    position: relative;
}
.eyebrow {
    text-transform: uppercase;
    letter-spacing: 1.8px;
    font-weight: 800;
    font-size: 12px;
    color: var(--teal-dark);
}
.hero-copy { padding: 25px 0 35px; }
.hero-copy h1 {
    font-size: clamp(48px, 5.5vw, 76px);
    line-height: 1.03;
    letter-spacing: -3px;
    margin: 16px 0 22px;
    max-width: 680px;
}
.hero-copy h1 span { color: var(--teal); }
.hero-copy > p { font-size: 17px; color: #43546a; max-width: 570px; }
.hero-actions { display: flex; gap: 14px; margin: 30px 0 22px; }
.trust-line { font-size: 13px; color: #456174; }
.hero-visual {
    align-self: stretch;
    min-height: 430px;
    border-radius: 120px 0 0 120px;
    overflow: hidden;
    position: relative;
    box-shadow: var(--shadow);
}
.hero-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.growth-line {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 75%;
    height: 55%;
    background: linear-gradient(135deg, transparent 44%, rgba(17,196,187,.12) 45%);
    clip-path: polygon(0 100%, 100% 0, 100% 100%);
}
.stats-panel {
    transform: translateY(22px);
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    background: rgba(255,255,255,.92);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 18px;
    box-shadow: var(--shadow);
    padding: 20px 22px;
}
.stats-panel > div {
    display: flex;
    flex-direction: column;
    padding: 0 20px;
    border-right: 1px solid var(--border);
}
.stats-panel > div:last-child { border: 0; }
.stats-panel b { font-size: 25px; }
.stats-panel span { font-size: 12px; color: var(--muted); }

.section { padding: 88px 0; }
.section-soft { background: linear-gradient(180deg, #f8fbfc, #f0f8f8); }
.section-heading { text-align: center; max-width: 720px; margin: 0 auto 44px; }
.section-heading.left { text-align: left; max-width: none; }
.section-heading h2,
.page-head h1 {
    font-size: clamp(34px, 4vw, 52px);
    line-height: 1.1;
    letter-spacing: -1.5px;
    margin: 10px 0 12px;
}
.section-heading p,
.page-head p { color: var(--muted); }
.row-heading {
    max-width: none;
    display: flex;
    align-items: end;
    justify-content: space-between;
    text-align: left;
}
.row-heading a { color: var(--teal-dark); font-weight: 750; }

.process-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
.process-card { text-align: center; padding: 24px 13px; position: relative; }
.process-card::after {
    content: "→";
    position: absolute;
    right: -11px;
    top: 50px;
    color: var(--teal);
    font-size: 22px;
}
.process-card:last-child::after { display: none; }
.process-card > span { font-size: 11px; color: var(--teal-dark); font-weight: 800; }
.process-icon {
    width: 62px;
    height: 62px;
    display: grid;
    place-items: center;
    margin: 8px auto 14px;
    background: linear-gradient(135deg, var(--teal), #16c5bd);
    color: #fff;
    border-radius: 50%;
    font-weight: 900;
    box-shadow: 0 9px 24px rgba(8,168,162,.2);
}
.process-card h3 { margin: 0 0 8px; }
.process-card p { font-size: 13px; color: var(--muted); }

.solution-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
.solution-grid article {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 22px;
    min-height: 190px;
    box-shadow: 0 8px 25px rgba(15,52,78,.04);
}
.solution-grid article > span { font-size: 28px; }
.solution-grid h3 { font-size: 16px; line-height: 1.25; }
.solution-grid p { font-size: 13px; color: var(--muted); }

.opportunity-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; align-items:stretch; }
.opportunity-card {
    display:flex;
    flex-direction:column;
    min-height:100%;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 12px 36px rgba(15,52,78,.07);
    transition: .25s;
}
.opportunity-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 48px rgba(15,52,78,.12);
}
.opportunity-image { height: 170px; position: relative; }
.opportunity-image img { width:100%; height:116%; object-fit:cover; object-position:center 62%; transform:translateY(-8%); }
.opportunity-image span {
    position: absolute;
    left: 12px;
    top: 12px;
    background: #0da776;
    color: #fff;
    border-radius: 99px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 800;
}
.opportunity-body { display:flex; flex:1; flex-direction:column; padding:18px; }
.opportunity-card-label { margin-bottom:7px; color:var(--teal); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.opportunity-body h3 { display:-webkit-box; min-height:46px; margin:0 0 7px; overflow:hidden; font-size:18px; line-height:1.28; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.meta { display:flex; flex-wrap:wrap; gap:5px 10px; min-height:34px; margin:0; font-size:11px; color:#617487; }
.meta span::before { content:'•'; margin-right:5px; color:var(--teal); }
.opportunity-body > p:not(.meta) { font-size:13px; color:var(--muted); min-height:40px; }
.opportunity-summary { display:-webkit-box; min-height:58px!important; margin:10px 0 0; overflow:hidden; line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.opportunity-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:17px 0; }
.opportunity-metrics div:first-child { grid-column:1/-1; }
.opportunity-metrics div { display:flex; flex-direction:column; min-width:0; padding:9px 7px; border-radius:10px; background:#f5f8f9; }
.opportunity-metrics small { font-size: 10px; color: var(--muted); }
.opportunity-metrics b {
    font-size: 12px;
    margin-top: 4px;
    white-space:normal;
    overflow-wrap:anywhere;
}
.opportunity-body > .btn { margin-top:auto; }
.opportunity-empty-state { grid-column:1/-1; display:grid; justify-items:center; min-height:300px; padding:52px 24px; place-content:center; border:1px dashed #bdd2d7; border-radius:22px; background:linear-gradient(145deg,#f4fbfa,#fff); text-align:center; }
.opportunity-empty-state > span { display:grid; place-items:center; width:54px; height:54px; margin-bottom:15px; border-radius:16px; background:#e5f7f5; color:var(--teal); font-size:31px; }
.opportunity-empty-state h2,.opportunity-empty-state h3 { max-width:620px; margin:0 0 9px; color:var(--navy); }
.opportunity-empty-state p { max-width:600px; margin:0 0 20px; color:var(--muted); line-height:1.65; }

.trust-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:18px; }
.trust-card, .testimonial-card, .cta-card {
    border-radius: 24px;
    padding: 34px;
    border: 1px solid var(--border);
    min-height: 340px;
}
.trust-card { background: linear-gradient(145deg, #eafbf9, #fff); }
.trust-card h2, .cta-card h2 { font-size: 33px; line-height: 1.1; margin: 14px 0; }
.trust-card ul { padding: 0; list-style: none; }
.trust-card li { padding: 5px 0; color: #44586d; }
.trust-card li::before { content: "✓"; color: var(--success); font-weight: 900; margin-right: 10px; }
.trust-card a { color: var(--teal-dark); font-weight: 800; }
.big-icon { font-size: 42px; }
.cta-card {
    background: linear-gradient(135deg, #043d4e, #087b79);
    color: #fff;
    position: relative;
    overflow: hidden;
}
.cta-card::after {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    border: 45px solid rgba(34,211,207,.12);
    right: -80px;
    bottom: -80px;
}
.cta-card p { color: #d6eff0; }
.eyebrow.light { color: #7ff2e8; }
.testimonial-card { background: #fff; }
.quote { font-size: 70px; line-height: .7; color: var(--teal); }
.testimonial-card > p { font-size: 18px; color: #3f5268; margin: 20px 0 35px; }
.person { display: flex; gap: 12px; align-items: center; }
.person > span {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--mint);
    color: var(--teal-dark);
    font-weight: 900;
}
.person div { display: flex; flex-direction: column; }
.person small { color: var(--muted); }

.compact-grid { display: grid; grid-template-columns: 1fr 1.4fr; gap: 70px; align-items: start; }
.compact-grid h2 { font-size: 42px; line-height: 1.1; }
.faq-list details { border-bottom: 1px solid var(--border); padding: 20px 0; }
.faq-list summary { font-weight: 800; cursor: pointer; }
.faq-list p { color: var(--muted); }

.site-footer {
    background: linear-gradient(135deg, #06344b, #045965);
    color: #d9f2f3;
    padding: 54px 0 20px;
}
.brand-light .brand-mark,
.brand-light strong { color: #fff; }
.footer-grid { display: grid; grid-template-columns: 1.4fr repeat(4, 1fr); gap: 40px; }
.footer-grid h4 { color: #fff; margin: 0 0 16px; }
.footer-grid p { font-size: 13px; color: #c8e1e4; }
.footer-grid a { display: block; font-size: 13px; padding: 4px 0; }
.newsletter-form input { width: 100%; border: 0; border-radius: 8px; padding: 12px; }
.newsletter-form button {
    width: 100%;
    border: 0;
    background: var(--cyan);
    color: #003a42;
    border-radius: 8px;
    margin-top: 8px;
    padding: 11px;
    font-weight: 800;
}
.footer-bottom {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid rgba(255,255,255,.16);
    margin-top: 32px;
    padding-top: 18px;
    font-size: 12px;
}

.auth-section {
    padding: 70px 0 90px;
    background: linear-gradient(120deg, #effcfc, #fff 52%, #eaf7fb);
}
.auth-shell { display: grid; grid-template-columns: .85fr 1.15fr; gap: 60px; align-items: center; }
.auth-copy { padding: 20px; }
.auth-copy h1 { font-size: 55px; letter-spacing: -2px; line-height: 1.05; }
.auth-copy p { font-size: 17px; color: var(--muted); }
.auth-copy ul { list-style: none; padding: 0; }
.auth-copy li { padding: 9px 0; }
.auth-copy li::before { content: "✓"; color: var(--teal); margin-right: 10px; font-weight: 900; }
.form-card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 24px;
    padding: 38px;
    box-shadow: var(--shadow);
}
.form-card h2 { font-size: 30px; margin: 0; }
.form-card > p, .form-foot { color: var(--muted); }
.form-stack, .form-grid { display: grid; gap: 18px; margin-top: 26px; }
.form-grid.two { grid-template-columns: 1fr 1fr; }
.form-grid label, .form-stack label {
    display: flex;
    flex-direction: column;
    gap: 7px;
    font-size: 13px;
    font-weight: 750;
}
.form-grid input, .form-grid select, .form-grid textarea,
.form-stack input, .form-stack select, .form-stack textarea,
.filter-bar input, .filter-bar select,
.status-form input, .status-form select {
    width: 100%;
    border: 1px solid #ccdbe0;
    border-radius: 10px;
    padding: 13px 14px;
    background: #fff;
    color: var(--text);
    outline: none;
}
.form-grid input:focus, .form-grid select:focus,
.form-grid textarea:focus, .form-stack input:focus {
    border-color: var(--teal);
    box-shadow: 0 0 0 4px rgba(8,168,162,.1);
}
.span-2 { grid-column: span 2; }
.field-error { color: var(--danger); }
.checkbox {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    font-weight: 500 !important;
}
.checkbox input { width: auto !important; margin-top: 4px; }

.page-section { padding: 64px 0 90px; background: #fbfdfe; min-height: 70vh; }
.page-head { display: flex; justify-content: space-between; align-items: end; margin-bottom: 34px; }
.page-head h1 { margin-bottom: 6px; }
.progress-ring {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    align-content: center;
    background: conic-gradient(var(--teal) 14%, #e7eff1 0);
    border: 9px solid #fff;
    box-shadow: var(--shadow);
}
.progress-ring b { font-size: 23px; }
.progress-ring span { font-size: 11px; color: var(--muted); }

.application-shell { display: grid; grid-template-columns: 260px 1fr 270px; gap: 18px; align-items: start; }
.step-sidebar, .application-form, .application-aside .side-card, .side-card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(15,52,78,.05);
}
.step-sidebar { padding: 16px; position: sticky; top: 96px; }
.step-sidebar button {
    border: 0;
    background: transparent;
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    text-align: left;
    padding: 13px;
    border-radius: 11px;
    color: #526479;
    cursor: pointer;
}
.step-sidebar button span {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #edf3f5;
    font-weight: 800;
}
.step-sidebar button.active { background: var(--mint); color: var(--teal-dark); font-weight: 800; }
.step-sidebar button.active span { background: var(--teal); color: #fff; }
.help-box {
    background: linear-gradient(145deg, #eefbfa, #fff);
    border-radius: 13px;
    padding: 16px;
    margin-top: 20px;
    font-size: 12px;
}
.application-form { padding: 32px; }
.form-step { display: block; padding-bottom: 26px; margin-bottom: 26px; border-bottom: 1px solid var(--border); }
.application-form.wizard-active .form-step { display: none; padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }
.application-form.wizard-active .form-step.active { display: block; }
.application-form:not(.wizard-active) [data-prev],
.application-form:not(.wizard-active) [data-next],
.application-form:not(.wizard-active) .step-counter { display: none !important; }
.application-form:not(.wizard-active) [data-submit] { display: inline-flex !important; margin-left: auto; }
.form-step h2 { margin-top: 0; }
.form-step > p { color: var(--muted); }
.field-help {
    display: block;
    margin-top: 6px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;
}
.form-navigation {
    display: flex;
    align-items: center;
    gap: 12px;
    border-top: 1px solid var(--border);
    margin-top: 30px;
    padding-top: 24px;
}
.step-counter { margin: auto; color: var(--muted); }
.application-aside { display: grid; gap: 14px; position: sticky; top: 96px; }
.side-card { padding: 22px; }
.side-card h3, .side-card h2 { margin-top: 0; }
.side-card p { color: var(--muted); font-size: 13px; }
.progress-bar { height: 9px; border-radius: 99px; background: #e8f0f2; overflow: hidden; }
.progress-bar span {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, var(--teal), var(--cyan));
    border-radius: 99px;
}
.secure { background: linear-gradient(145deg, #eafff8, #fff); }
.upload-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.upload-box {
    border: 1.5px dashed #9fc9c8;
    border-radius: 14px;
    padding: 24px;
    text-align: center;
    background: #f9ffff;
    cursor: pointer;
}
.upload-box input { width: 100%; margin-bottom: 12px; }
.upload-box span { color: var(--teal-dark); font-weight: 800; }
.upload-box small { display:block; min-height:34px; margin:7px 0 12px; color:var(--muted); font-weight:500; line-height:1.4; }
.document-checklist-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.document-checklist-note { display:grid; gap:4px; margin:18px 0; padding:15px 17px; border-radius:12px; background:var(--mint); color:var(--teal-dark); }
.document-checklist-note span { font-size:12px; color:var(--muted); }
.investor-nid-upload { text-align:left; }
.investor-nid-upload small { min-height:0; }
.upload-box.has-file {
    border-style: solid;
    border-color: var(--teal);
    background: var(--mint);
}
.upload-box.has-file span { overflow-wrap: anywhere; }
.declaration { display: grid; gap: 18px; background: #f7fbfb; padding: 22px; border-radius: 14px; }
.review-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.review-grid article { display:grid; gap:7px; padding:18px; border:1px solid var(--border); border-radius:14px; background:#fbfefe; }
.review-grid small { color:var(--muted); }
.review-grid b { color:var(--navy); overflow-wrap:anywhere; }
.review-notice { margin-top:20px; padding:16px; border-radius:12px; background:var(--mint); color:var(--teal-dark); font-weight:700; }

.dashboard-section { padding: 32px 0 70px; background: #f7fafc; min-height: 80vh; }
.dashboard-layout { display: grid; grid-template-columns: 240px 1fr; gap: 22px; }
.dashboard-sidebar {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 18px;
    align-self: start;
    position: sticky;
    top: 96px;
}
.profile-mini {
    display: flex;
    gap: 12px;
    align-items: center;
    border-bottom: 1px solid var(--border);
    padding-bottom: 18px;
    margin-bottom: 12px;
}
.profile-mini > span {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--navy), var(--teal));
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 900;
}
.profile-mini div { display: flex; flex-direction: column; }
.profile-mini small { color: var(--muted); }
.dashboard-sidebar > a {
    display: block;
    padding: 12px;
    border-radius: 10px;
    color: #526479;
    margin: 3px 0;
}
.dashboard-sidebar > a.active, .dashboard-sidebar > a:hover {
    background: var(--mint);
    color: var(--teal-dark);
    font-weight: 800;
}
.dashboard-main { min-width: 0; }
.welcome-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(110deg, #fff, #e8fafa);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 30px;
    margin-bottom: 18px;
}
.welcome-card h1 { font-size: 35px; margin: 6px 0; }
.welcome-card p { color: var(--muted); margin: 0; }
.welcome-card.investor { background: linear-gradient(110deg, #eafbf9, #fff 55%, #e9f5fb); }
.kpi-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 18px; }
.kpi-grid article {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
}
.kpi-grid article > span {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    background: var(--mint);
    display: grid;
    place-items: center;
    font-size: 22px;
}
.kpi-grid article div { display: flex; flex-direction: column; }
.kpi-grid b { font-size: 25px; }
.kpi-grid small { color: var(--muted); }
.dashboard-grid { display: grid; grid-template-columns: 1fr 1fr 340px; gap: 18px; }
.panel {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 24px;
    box-shadow: 0 8px 25px rgba(15,52,78,.04);
}
.panel.span-2 { grid-column: span 2; }
.panel h2 { font-size: 20px; margin: 0 0 18px; }
.panel-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.panel-head h2 { margin: 0; }
.panel-head a { color: var(--teal-dark); font-weight: 800; font-size: 13px; }

.table-wrap { overflow: auto; }
table { border-collapse: collapse; width: 100%; min-width: 720px; }
th {
    text-align: left;
    color: #748295;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 12px;
    border-bottom: 1px solid var(--border);
}
td { padding: 14px 12px; border-bottom: 1px solid #edf2f3; font-size: 13px; vertical-align: middle; }
td small { display: block; color: var(--muted); margin-top: 3px; }
.status-pill {
    display: inline-block;
    padding: 5px 9px;
    border-radius: 99px;
    background: #edf3f5;
    color: #516477;
    font-size: 11px;
    font-weight: 800;
}
.status-pill.submitted,
.status-pill.document_review,
.status-pill.verification { background: #fff4dc; color: #95600c; }
.status-pill.assessment,
.status-pill.matching,
.status-pill.meeting { background: #e8f3ff; color: #216db1; }
.status-pill.completed { background: #e5faf2; color: #057655; }
.status-pill.rejected { background: #ffe9ec; color: #b5313f; }

.notification-mini-list { display: grid; }
.notification-mini-list a {
    display: flex;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid #edf2f3;
}
.notification-mini-list a:last-child { border: 0; }
.notification-mini-list div { display: flex; flex-direction: column; }
.notification-mini-list small { color: var(--muted); font-size: 11px; }
.empty-state { text-align: center; padding: 45px 20px; background: #f8fbfc; border-radius: 14px; }
.empty-state.small { padding: 30px 15px; }
.empty-state p, .muted { color: var(--muted); }

.opportunity-grid.compact { grid-template-columns: repeat(4, 1fr); }
.opportunity-grid.compact .opportunity-image { height: 130px; }
.filter-bar { display: grid; grid-template-columns: 1fr 250px; gap: 14px; margin-bottom: 25px; }

.opportunity-detail { display: grid; grid-template-columns: 1fr 330px; gap: 20px; }
.detail-hero {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 26px;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 18px;
}
.detail-hero > img {
    width: 100%;
    height: 100%;
    min-height: 270px;
    object-fit: cover;
    border-radius: 14px;
}
.detail-hero h1 { font-size: 36px; margin: 10px 0; }
.verified-badge {
    display: inline-flex;
    background: #e6faef;
    color: #047655;
    border-radius: 99px;
    padding: 6px 11px;
    font-size: 12px;
    font-weight: 800;
}
.detail-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 24px; }
.detail-metrics div {
    border-left: 1px solid var(--border);
    padding-left: 10px;
    display: flex;
    flex-direction: column;
}
.detail-metrics small { color: var(--muted); font-size: 10px; }
.detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 16px; }
.document-access { margin-top: 16px; }
.document-chips { display: flex; flex-wrap: wrap; gap: 9px; }
.document-chips span { border: 1px solid var(--border); border-radius: 9px; padding: 10px 13px; font-size: 12px; }
.detail-sidebar .sticky { position: sticky; top: 96px; }
.summary-list { display: grid; gap: 0; }
.summary-list > div {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 13px 0;
    border-bottom: 1px solid #edf2f3;
}
.summary-list dt { color: var(--muted); }
.summary-list dd { margin: 0; text-align: right; font-weight: 800; }
.reminder-box { background: var(--mint); border-radius: 13px; padding: 16px; margin-top: 18px; }

.status-summary {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 18px 24px;
    display: flex;
    flex-direction: column;
}
.status-summary span, .status-summary small { color: var(--muted); font-size: 12px; }
.status-timeline {
    display: grid;
    grid-template-columns: repeat(9, 1fr);
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 30px 20px;
    margin-bottom: 20px;
    overflow: auto;
}
.status-timeline > div { min-width: 110px; text-align: center; position: relative; }
.status-timeline > div::after {
    content: "";
    height: 2px;
    background: #dbe5e8;
    position: absolute;
    left: 60%;
    right: -40%;
    top: 18px;
}
.status-timeline > div:last-child::after { display: none; }
.status-timeline span {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    margin: 0 auto 9px;
    background: #edf2f4;
    position: relative;
    z-index: 2;
}
.status-timeline b { display: block; font-size: 12px; }
.status-timeline small { font-size: 10px; color: var(--muted); }
.status-timeline .done span { background: var(--teal); color: #fff; }
.status-timeline .done::after { background: var(--teal); }
.status-timeline .current { background: #eaf7ff; border-radius: 12px; padding: 8px; }
.history-list { display: grid; }
.history-list article { display: flex; gap: 13px; padding: 14px 0; border-bottom: 1px solid #edf2f3; }
.history-list article > span { width: 12px; height: 12px; border-radius: 50%; background: var(--teal); margin-top: 6px; }
.history-list p { margin: 4px 0; color: var(--muted); }

.notification-layout { display: grid; grid-template-columns: 1fr 340px; gap: 20px; }
.notification-list { display: grid; gap: 12px; }
.notification-item {
    display: grid;
    grid-template-columns: 55px 1fr;
    gap: 15px;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 20px;
}
.notification-item.unread { border-left: 4px solid var(--teal); }
.notification-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--mint);
    display: grid;
    place-items: center;
}
.notification-title { display: flex; justify-content: space-between; gap: 20px; }
.notification-title h3 { margin: 0; }
.notification-title small { color: var(--muted); }
.notification-item p { color: var(--muted); }
.notification-item a { color: var(--teal-dark); font-weight: 800; }
.reminder-settings label { margin: 13px 0; }

.status-form { display: grid; grid-template-columns: 150px 1fr auto; gap: 8px; min-width: 470px; }
.admin-table { min-width: 1180px; }

.content-welcome { align-items: center; }
.content-editor { display: grid; gap: 16px; }
.editor-section {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(15,52,78,.04);
    overflow: hidden;
}
.editor-section summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 24px;
    cursor: pointer;
    list-style: none;
}
.editor-section summary::-webkit-details-marker { display: none; }
.editor-section summary span { display: flex; align-items: center; gap: 12px; font-size: 17px; }
.editor-section summary span b {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--mint);
    color: var(--teal-dark);
    font-size: 13px;
}
.editor-section summary small { color: var(--muted); }
.editor-section[open] summary { border-bottom: 1px solid var(--border); }
.editor-body { padding: 24px; }
.editor-groups { display: grid; gap: 18px; }
.editor-groups fieldset {
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 20px;
}
.editor-groups legend { padding: 0 8px; font-weight: 800; color: var(--navy); }
.visibility-toggle {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px;
    padding: 12px 14px;
    margin-bottom: 18px;
    background: var(--mint);
    border-radius: 10px;
}
.visibility-toggle input { width: auto !important; }
.stat-editor-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.stat-editor-item {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: #fbfefe;
}
.stat-editor-item span { font-size: 12px; font-weight: 800; color: var(--muted); }
.repeatable-editor-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 18px;
}
.repeatable-editor-item {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: #fbfefe;
}
.repeatable-editor-item > span {
    color: var(--teal-dark);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .6px;
}
.service-editor-item { grid-template-columns: 70px 1fr; }
.service-editor-item > span,
.service-editor-item textarea { grid-column: 1 / -1; }
.faq-editor-grid { grid-template-columns: repeat(3, 1fr); }
.brand-preview {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 12px;
}
.brand-preview span { font-weight: 750; }
.brand-preview img { max-width: 180px; max-height: 72px; object-fit: contain; }
.editor-save-bar {
    position: sticky;
    bottom: 14px;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 16px 18px;
    background: rgba(255,255,255,.95);
    backdrop-filter: blur(16px);
    border: 1px solid var(--border);
    border-radius: 16px;
    box-shadow: var(--shadow);
}
.editor-save-bar span { color: var(--muted); font-size: 13px; }
.content-image-preview { display:block; width:100%; height:150px; margin:8px 0 10px; object-fit:contain; border:1px solid var(--border); border-radius:10px; background:#eef3f5; }
.content-image-preview.founder-preview { height:190px; object-position:center; }
.content-image-preview.hero-preview { height:120px; }
.editor-section-help { margin:0 0 18px; color:var(--muted); line-height:1.6; }
.about-editor-sections { display:grid; gap:18px; }
.about-editor-card { overflow:hidden; border:1px solid var(--border); border-radius:16px; background:#fff; box-shadow:0 8px 24px rgba(12,35,52,.05); }
.about-editor-card > header { display:flex; align-items:center; gap:13px; padding:16px 18px; border-bottom:1px solid var(--border); background:#f7fafb; }
.about-editor-card > header > span { display:grid; place-items:center; flex:0 0 34px; height:34px; border-radius:10px; background:var(--teal); color:#fff; font-size:12px; font-weight:800; }
.about-editor-card h3 { margin:0 0 3px; font-size:16px; }
.about-editor-card header p { margin:0; color:var(--muted); font-size:12px; }
.about-editor-fields { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr); gap:18px; align-items:start; padding:18px; }
.about-editor-fields > label:only-child { grid-column:1/-1; max-width:420px; }
.about-editor-fields textarea { min-height:132px; }
.founder-editor-card { border-color:rgba(11,174,167,.35); }
.content-page-nav { position:sticky; top:10px; z-index:15; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:18px 0; padding:10px; border:1px solid var(--border); border-radius:16px; background:rgba(255,255,255,.94); box-shadow:0 10px 30px rgba(12,35,52,.08); backdrop-filter:blur(14px); }
.content-page-nav a { display:grid; grid-template-columns:34px 1fr; column-gap:9px; align-items:center; padding:10px; border-radius:11px; color:var(--navy); }
.content-page-nav a:hover { background:#eef8f7; color:var(--teal); }
.content-page-nav a > span { grid-row:1/3; display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:#e8f7f6; color:var(--teal); }
.content-page-nav b { font-size:13px; }
.content-page-nav small { color:var(--muted); font-size:10px; }
.page-editor-anchor { scroll-margin-top:100px; }
.section-visibility-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:18px; }
.section-visibility-controls .visibility-toggle:first-child { grid-column:1/-1; padding:13px; border:1px solid rgba(11,174,167,.3); border-radius:12px; background:#f1fbfa; }
.section-visibility-controls .visibility-toggle span { display:grid; gap:2px; }
.section-visibility-controls .visibility-toggle small { color:var(--muted); font-size:11px; font-weight:500; }

.error-page { min-height: 65vh; display: grid; place-items: center; text-align: center; }
.error-page span { font-size: 80px; color: var(--teal); font-weight: 900; }
.error-page h1 { font-size: 42px; margin: 0; }
.error-page p { color: var(--muted); }

@media (max-width: 1100px) {
    .main-nav { gap: 13px; }
    .main-nav a { font-size: 12px; }
    .hero-grid { grid-template-columns: 1fr 1fr; }
    .hero-copy h1 { font-size: 55px; }
    .process-grid { grid-template-columns: repeat(3, 1fr); }
    .process-card:nth-child(3)::after { display: none; }
    .solution-grid { grid-template-columns: repeat(3, 1fr); }
    .opportunity-grid, .opportunity-grid.compact { grid-template-columns: repeat(2, 1fr); }
    .application-shell { grid-template-columns: 220px 1fr; }
    .application-aside { grid-column: 2; }
    .dashboard-grid { grid-template-columns: 1fr 1fr; }
    .dashboard-grid > .panel:last-child { grid-column: span 2; }
    .detail-hero { grid-template-columns: 300px 1fr; }
    .stat-editor-grid { grid-template-columns: repeat(2, 1fr); }
    .repeatable-editor-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 820px) {
    .container { width: min(calc(100% - 24px), var(--container)); }
    .nav-toggle { display: block; margin-left: auto; }
    .main-nav {
        display: none;
        position: absolute;
        left: 12px;
        right: 12px;
        top: 76px;
        background: #fff;
        border: 1px solid var(--border);
        border-radius: 15px;
        padding: 12px;
        box-shadow: var(--shadow);
        flex-direction: column;
        align-items: stretch;
    }
    .main-nav.open { display: flex; }
    .nav-actions .btn-outline, .nav-actions .btn-primary { display: none; }
    .brand { min-width: auto; }
    .hero-grid { grid-template-columns: 1fr; }
    .hero-copy { padding-top: 10px; }
    .hero-copy h1 { font-size: 48px; }
    .hero-visual { min-height: 340px; border-radius: 60px; }
    .stats-panel { grid-template-columns: 1fr 1fr; transform: translateY(15px); }
    .stats-panel > div { border-right: 0; border-bottom: 1px solid var(--border); padding: 14px; }
    .stats-panel > div:last-child { grid-column: span 2; }
    .process-grid { grid-template-columns: repeat(2, 1fr); }
    .process-card:nth-child(3)::after { display: block; }
    .process-card:nth-child(2n)::after { display: none; }
    .solution-grid { grid-template-columns: repeat(2, 1fr); }
    .trust-grid, .compact-grid, .footer-grid, .auth-shell,
    .opportunity-detail, .notification-layout { grid-template-columns: 1fr; }
    .footer-grid { gap: 25px; }
    .page-head { align-items: flex-start; gap: 20px; }
    .application-shell { grid-template-columns: 1fr; }
    .step-sidebar, .application-aside { position: static; grid-column: auto; }
    .step-sidebar { display: flex; overflow: auto; }
    .step-sidebar button { min-width: 180px; }
    .help-box { display: none; }
    .dashboard-layout { grid-template-columns: 1fr; }
    .dashboard-sidebar { position: static; display: flex; overflow: auto; }
    .profile-mini { min-width: 210px; border: 0; margin: 0; }
    .dashboard-sidebar > a { white-space: nowrap; }
    .kpi-grid { grid-template-columns: repeat(2, 1fr); }
    .dashboard-grid { grid-template-columns: 1fr; }
    .panel.span-2, .dashboard-grid > .panel:last-child { grid-column: auto; }
    .detail-hero { grid-template-columns: 1fr; }
    .detail-hero > img { height: 300px; }
    .detail-sidebar .sticky { position: static; }
    .detail-grid { grid-template-columns: 1fr; }
    .status-timeline { grid-template-columns: repeat(9, 130px); }
    .form-grid.two { grid-template-columns: 1fr; }
    .span-2 { grid-column: auto; }
    .upload-grid { grid-template-columns: 1fr; }
    .editor-section summary { align-items: flex-start; flex-direction: column; gap: 4px; }
}

@media (max-width: 540px) {
    .site-header .brand strong { font-size: 13px; }
    .site-header .brand small { font-size: 9px; }
    .brand-mark { font-size: 23px; }
    .nav-actions { gap: 0; }
    .hero-section { padding-top: 20px; }
    .hero-copy h1 { font-size: 40px; letter-spacing: -2px; }
    .hero-actions { flex-direction: column; align-items: stretch; }
    .hero-visual { min-height: 270px; }
    .stats-panel { grid-template-columns: 1fr; }
    .stats-panel > div:last-child { grid-column: auto; }
    .section { padding: 62px 0; }
    .process-grid, .solution-grid, .opportunity-grid,
    .opportunity-grid.compact, .trust-grid, .kpi-grid { grid-template-columns: 1fr; }
    .process-card::after { display: none !important; }
    .row-heading { align-items: flex-start; gap: 15px; flex-direction: column; }
    .page-head { flex-direction: column; }
    .progress-ring { width: 90px; height: 90px; }
    .application-form, .form-card { padding: 22px; }
    .form-navigation { flex-wrap: wrap; }
    .step-counter { order: -1; width: 100%; text-align: center; }
    .welcome-card { flex-direction: column; align-items: flex-start; gap: 18px; }
    .welcome-card h1 { font-size: 30px; }
    .detail-metrics { grid-template-columns: 1fr 1fr; }
    .filter-bar { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; gap: 8px; }
    .notification-title { flex-direction: column; gap: 5px; }
    .notification-item { grid-template-columns: 1fr; }
    .status-form { grid-template-columns: 1fr; min-width: 260px; }
    .stat-editor-grid { grid-template-columns: 1fr; }
    .repeatable-editor-grid, .faq-editor-grid { grid-template-columns: 1fr; }
    .editor-save-bar { align-items: stretch; flex-direction: column; }
    .review-grid { grid-template-columns:1fr; }
}

.client-toast {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 9999;
    max-width: 380px;
    padding: 14px 18px;
    border-radius: 14px;
    color: #fff;
    background: #07364a;
    box-shadow: 0 20px 50px rgba(7, 54, 74, .25);
    opacity: 0;
    transform: translateY(16px);
    transition: .25s ease;
}
.client-toast.show { opacity: 1; transform: translateY(0); }
.flash { transition: opacity .25s ease, transform .25s ease; }
.flash.fade-out { opacity: 0; transform: translateY(-6px); }

.narrow-content { max-width: 850px; }
.legal-page h1 { font-size: clamp(42px, 6vw, 72px); margin: 12px 0 18px; letter-spacing: -2px; }
.legal-page h2 { margin-top: 34px; font-size: 24px; }
.legal-page p { color: var(--muted); line-height: 1.85; }
.legal-page .lead { font-size: 19px; color: var(--navy); }

.record-editor { border-top: 1px solid var(--border); }
.record-editor summary { cursor: pointer; padding: 18px 22px; display:flex; justify-content:space-between; align-items:center; }
.record-editor summary span:first-child { display:grid; gap:4px; }
.record-editor summary small { color:var(--muted); font-weight:500; }
.record-editor .editor-body { background:#fbfefe; border-top:1px solid var(--border); }
.inline-status { display:flex; gap:8px; min-width:220px; }
.inline-status select { min-width:120px; }
.team-admin-grid, .team-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:24px; }
.team-admin-card, .team-card { overflow:hidden; background:#fff; border:1px solid var(--border); border-radius:20px; box-shadow:var(--shadow-soft); }
.team-admin-card > img, .team-card > img, .team-placeholder { width:100%; height:250px; object-fit:cover; }
.team-placeholder { display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,var(--navy),var(--teal)); font-size:72px; font-weight:900; }
.team-admin-card > div:not(.team-placeholder), .team-card > div:not(.team-placeholder) { padding:20px; }
.team-admin-card h3, .team-card h3 { margin:7px 0; }
.team-card span { color:var(--teal-dark); font-size:12px; text-transform:uppercase; font-weight:800; letter-spacing:.8px; }
.team-card p, .team-admin-card p, .company-intro-grid p { color:var(--muted); line-height:1.7; }
.team-admin-card form { margin-top:14px; }
.company-intro-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:34px; align-items:start; }
.company-intro-grid h2 { font-size:38px; margin:10px 0; }
.company-intro-grid h3 { margin-top:0; }
.danger-row { padding:0 24px 22px; background:#fbfefe; text-align:right; }
.opportunity-management { overflow:visible; background:transparent; border:0; box-shadow:none; }
.opportunity-management > .panel-head { margin-bottom:16px; border:1px solid var(--border); border-radius:16px; background:#fff; }
.opportunity-management > .panel-head h2 { margin:0 0 3px; }
.opportunity-management > .panel-head small { color:var(--muted); }
.admin-opportunity-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.admin-opportunity-card { overflow:hidden; border:1px solid var(--border); border-radius:18px; background:#fff; box-shadow:0 12px 34px rgba(15,52,78,.07); }
.admin-opportunity-card > summary { display:block; padding:0; }
.admin-opportunity-card > summary::-webkit-details-marker { display:none; }
.admin-opportunity-image { position:relative; width:100%; aspect-ratio:3 / 2; overflow:hidden; background:#eef3f5; }
.admin-opportunity-image img { display:block; width:100%; height:100%; object-fit:contain; }
.admin-opportunity-image .status-pill { position:absolute; top:12px; left:12px; }
.admin-opportunity-image > b { position:absolute; top:12px; right:12px; padding:6px 9px; border-radius:99px; background:#fff4cf; color:#8b6410; font-size:10px; }
.admin-opportunity-content { display:flex; min-height:330px; flex-direction:column; padding:18px; }
.opportunity-code { color:var(--teal)!important; font-size:10px; font-weight:800!important; letter-spacing:.08em; }
.admin-opportunity-content h3 { display:-webkit-box; min-height:46px; margin:7px 0; overflow:hidden; font-size:18px; line-height:1.28; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.admin-opportunity-meta { display:flex; flex-wrap:wrap; gap:6px 12px; min-height:30px; margin:0; color:var(--muted); font-size:11px; }
.admin-opportunity-meta span::before { content:'•'; margin-right:5px; color:var(--teal); }
.admin-opportunity-summary { display:-webkit-box; min-height:60px; margin:8px 0 14px; overflow:hidden; color:#536273; font-size:12px; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.admin-opportunity-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:auto; }
.admin-opportunity-metrics div { display:flex; min-width:0; flex-direction:column; padding:9px; border-radius:10px; background:#f5f8f9; }
.admin-opportunity-metrics small { color:var(--muted); font-size:9px; }
.admin-opportunity-metrics b { margin-top:4px; overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.admin-opportunity-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:14px; padding-top:13px; border-top:1px solid var(--border); color:var(--teal); font-size:12px; font-weight:750; }
.admin-opportunity-actions a { padding:6px 9px; border-radius:8px; background:#eaf8f7; color:var(--teal-dark); }
.admin-opportunity-card[open] { grid-column:1/-1; }
.admin-opportunity-card[open] > summary { display:grid; grid-template-columns:300px 1fr; border-bottom:1px solid var(--border); }
.admin-opportunity-card[open] .admin-opportunity-content { min-height:0; }
.admin-opportunity-card .editor-body { border-top:0; }
.opportunity-upload-preview { display:block; width:100%; max-width:420px; aspect-ratio:3 / 2; margin:8px 0 10px; object-fit:contain; border:1px solid var(--border); border-radius:12px; background:#eef3f5; }
.opportunity-visibility { align-items:flex-start!important; padding:13px!important; border:1px solid rgba(11,174,167,.3); border-radius:12px; background:#f1fbfa; }
.opportunity-visibility span { display:grid; gap:3px; }
.opportunity-visibility small { color:var(--muted); font-size:11px; font-weight:500; }
.wide-status { grid-template-columns:minmax(180px,240px) 1fr auto; }
.workflow-actions { display:flex; align-items:center; gap:14px; margin-top:16px; }
.workflow-actions small { color:var(--muted); }
.application-review-grid { margin:20px 0; grid-template-columns:1fr 1fr; }
.review-details { display:grid; grid-template-columns:140px 1fr; gap:12px 18px; padding:0 22px 22px; }
.review-details dt { color:var(--muted); font-weight:700; }
.review-details dd { margin:0; overflow-wrap:anywhere; }
.admin-timeline { padding:0 22px 22px; }
.admin-timeline article { display:grid; grid-template-columns:16px 1fr; gap:12px; position:relative; padding-bottom:18px; }
.admin-timeline article > span { width:12px; height:12px; margin-top:5px; border-radius:50%; background:var(--teal); }
.admin-timeline p { margin:4px 0; color:var(--muted); }
.document-review-grid { display:grid; gap:12px; padding:0 22px 22px; }
.document-review-grid article { display:grid; grid-template-columns:140px minmax(160px,1fr) minmax(220px,1.25fr); gap:18px; align-items:center; min-width:0; padding:16px; border:1px solid var(--border); border-radius:14px; }
.document-thumbnail { display:grid; place-items:center; gap:7px; min-height:120px; overflow:hidden; border:1px solid var(--border); border-radius:12px; background:#f3f8f9; color:var(--teal-dark); }
.document-thumbnail img { width:100%; height:120px; object-fit:cover; }
.document-thumbnail small { padding:0 8px 9px; font-weight:700; }
.document-file-icon { display:grid; place-items:center; width:66px; height:78px; margin-top:12px; border-radius:9px; background:var(--navy); color:#fff; font-weight:900; }
.document-review-grid h3 { margin:8px 0 4px; }
.document-review-grid p { margin:0; color:var(--muted); }
.document-review-grid .document-meta,
.document-review-grid form { min-width:0; }
.document-review-grid form { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
.document-review-grid form select,
.document-review-grid form input { width:100%; min-width:0; }
.document-review-grid form .btn { justify-self:start; }
.application-danger-zone { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:20px; border-color:#f1c8cc; background:#fffafb; }
.application-danger-zone h2 { margin:0 0 6px; color:var(--danger); }
.application-danger-zone p { margin:0; color:var(--muted); }
.btn-danger { border-color:var(--danger); background:var(--danger); color:#fff; }
.btn-danger:hover { background:#b92f3b; }
.document-panel { padding:0; overflow:hidden; }
.document-section-header { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; padding:24px 26px; border-bottom:1px solid var(--border); background:linear-gradient(135deg,#fbffff,#f3fbfb); }
.document-section-header h2 { margin:5px 0 5px; }
.document-section-header p { margin:0; color:var(--muted); font-size:13px; }
.document-count { padding:8px 12px; border-radius:99px; background:var(--mint); color:var(--teal-dark); font-weight:800; font-size:12px; white-space:nowrap; }
.document-tile-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:22px 26px 28px; }
.document-tile { min-width:0; padding:14px; border:1px solid var(--border); border-radius:16px; background:#fff; box-shadow:0 7px 18px rgba(15,52,78,.05); }
.document-tile-header { display:flex; justify-content:space-between; align-items:flex-start; gap:8px; min-height:34px; }
.document-type-label { color:var(--navy); font-size:12px; font-weight:900; line-height:1.35; }
.document-preview-trigger { display:block; width:100%; margin:10px 0 12px; padding:0; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; }
.document-preview-frame { display:grid; place-items:center; height:145px; overflow:hidden; border:1px solid var(--border); border-radius:12px; background:#f3f8f9; }
.document-preview-frame img { width:100%; height:100%; object-fit:cover; transition:transform .2s ease; }
.document-preview-trigger:hover .document-preview-frame img { transform:scale(1.04); }
.document-preview-label { display:flex; justify-content:space-between; margin-top:7px; color:var(--teal-dark); font-size:11px; font-weight:800; }
.document-tile-meta { display:grid; gap:3px; min-height:42px; margin-bottom:11px; }
.document-tile-meta b { overflow-wrap:anywhere; font-size:12px; }
.document-tile-meta small { color:var(--muted); font-size:11px; }
.document-review-form { display:grid; gap:7px; }
.document-review-form select,.document-review-form input { width:100%; min-width:0; }
.document-review-form .btn { justify-self:start; }
.document-modal { display:none; position:fixed; inset:0; z-index:1000; }
.document-modal.is-open { display:grid; place-items:center; }
.document-modal-backdrop { position:absolute; inset:0; background:rgba(5,23,36,.72); backdrop-filter:blur(3px); }
.document-modal-card { position:relative; z-index:1; display:grid; grid-template-rows:auto minmax(0,1fr) auto; width:min(920px,calc(100vw - 34px)); height:min(760px,calc(100vh - 40px)); overflow:hidden; border-radius:18px; background:#fff; box-shadow:0 25px 70px rgba(0,0,0,.28); }
.document-modal-head,.document-modal-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 18px; border-bottom:1px solid var(--border); }
.document-modal-head h2 { margin:0; font-size:17px; }
.document-modal-foot { justify-content:flex-end; border-top:1px solid var(--border); border-bottom:0; }
.document-modal-close { width:32px; height:32px; border:0; border-radius:50%; background:#edf3f5; color:var(--navy); font-size:22px; line-height:1; cursor:pointer; }
.document-modal-body { display:grid; place-items:center; min-height:0; padding:18px; background:#eef3f5; }
.document-modal-body img,.document-modal-body iframe { width:100%; height:100%; max-height:100%; border:0; border-radius:10px; background:#fff; object-fit:contain; }
.document-modal-body .document-file-icon { width:110px; height:130px; font-size:25px; }
body.document-modal-open { overflow:hidden; }
.about-page { background:#f5f6f7; }
.about-page-hero { display:grid; place-items:center; min-height:260px; background:linear-gradient(100deg,rgba(15,25,31,.62),rgba(15,25,31,.28)),url('../img/hero.jpg') center/cover; }
.about-page-hero h1 { margin:0; color:#fff; font-size:clamp(42px,6vw,70px); text-align:center; letter-spacing:-2px; }
.about-story { padding:72px 0; }
.about-story-light { background:#f8f9fa; }
.about-story-grid { display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.about-story-grid.reverse-mobile .about-copy { order:2; }
.about-copy h2 { margin:8px 0 12px; font-size:clamp(30px,3vw,42px); letter-spacing:-1px; }
.about-copy p { max-width:570px; color:#536273; line-height:1.72; }
.about-rule { width:82px; height:3px; margin:0 0 18px; background:var(--teal); }
.about-image-frame { min-height:290px; padding:0; overflow:hidden; border-radius:10px; background:#e8edef; box-shadow:8px 8px 0 #e1e5e6; }
.about-image-frame img { display:block; width:100%; height:auto; aspect-ratio:3 / 2; object-fit:contain; background:#eef3f5; }
.about-what-we-do { padding:64px 0; color:#fff; text-align:center; background:linear-gradient(100deg,rgba(4,19,28,.88),rgba(4,19,28,.72)),url('../img/hero.jpg') center/cover; }
.about-what-we-do h2 { margin:8px 0 12px; color:#f4c329; font-size:34px; }
.about-what-we-do p { max-width:920px; margin:0 auto; line-height:1.75; color:#f4f7f8; }
.about-rule.gold { margin-left:auto; margin-right:auto; background:#f4c329; }
.about-founder { padding:72px 0; background:#fff; }
.about-founder-grid { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:64px; align-items:start; }
.about-founder-copy h2 { margin:8px 0 12px; font-size:clamp(30px,3vw,42px); }
.about-founder-copy p { max-width:760px; margin:0 0 16px; color:#536273; line-height:1.68; text-align:left; }
.about-founder-role { color:var(--teal)!important; font-weight:750; }
.about-founder-photo { position:sticky; top:105px; overflow:hidden; border-radius:18px; background:#e8edef; box-shadow:10px 10px 0 #e1e5e6; }
.about-founder-photo img { display:block; width:100%; height:auto; aspect-ratio:4 / 5; object-fit:contain; background:#eef3f5; }
@media(max-width:820px){.application-review-grid{grid-template-columns:1fr}.document-review-grid article{grid-template-columns:120px 1fr}.document-review-grid form{grid-column:1/-1}.document-review-grid form,.wide-status{grid-template-columns:1fr}}
@media(max-width:980px){.document-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.document-section-header{padding:20px;}.document-tile-grid{grid-template-columns:1fr;padding:16px 20px 22px}.document-modal-card{height:calc(100vh - 24px);width:calc(100vw - 20px)}}
@media(max-width:620px){.application-danger-zone{align-items:flex-start;flex-direction:column}.application-danger-zone form,.application-danger-zone .btn{width:100%}}
@media(max-width:820px){.about-story{padding:48px 0}.about-story-grid{grid-template-columns:1fr;gap:28px}.about-story-grid.reverse-mobile .about-copy{order:0}.about-image-frame{min-height:0}.about-image-frame img{height:auto}}
@media(max-width:820px){.nav-dropdown{display:block}.nav-dropdown-menu{position:static; transform:none; margin:4px 0 0; box-shadow:none; border:0; background:#f5f8f9}.nav-dropdown-menu a{padding:8px 12px}.about-founder{padding:48px 0}.about-founder-grid{grid-template-columns:1fr;gap:28px}.about-founder-photo{position:static;max-width:360px}.about-founder-photo img{height:auto}}
@media(max-width:820px){.team-admin-grid,.team-grid,.company-intro-grid{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.team-admin-grid,.team-grid,.company-intro-grid{grid-template-columns:1fr}}
@media(max-width:760px){.about-editor-fields{grid-template-columns:1fr}.about-editor-fields > label:only-child{max-width:none}.about-editor-card > header{align-items:flex-start}}
@media(max-width:760px){.content-page-nav{position:static;grid-template-columns:1fr 1fr}.content-page-nav a{grid-template-columns:28px 1fr;padding:8px}.content-page-nav a > span{width:28px;height:28px}}
@media(max-width:900px){.admin-opportunity-grid{grid-template-columns:1fr}.admin-opportunity-card[open]{grid-column:auto}.admin-opportunity-card[open] > summary{display:block}.admin-opportunity-content{min-height:310px}}
@media(max-width:700px){.section-visibility-controls{grid-template-columns:1fr}.section-visibility-controls .visibility-toggle:first-child{grid-column:auto}}
