:root {
    --ink: #17243a;
    --ink-soft: #394961;
    --muted: #748095;
    --blue: #435fe5;
    --blue-dark: #304bd0;
    --blue-soft: #edf0ff;
    --accent-blue: #435fe5;
    --paper: #f6f7fb;
    --line: #e6e9f0;
    --white: #fff;
    --radius: 18px;
    --shadow-card: 0 14px 40px rgba(30, 47, 81, .08);
}

html { scroll-behavior: smooth; scroll-padding-top: 90px; }
.site-scroll-progress { position: fixed; z-index: 1100; top: 0; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, #435fe5, #7087ff 52%, #c4cdfa); transform: scaleX(0); transform-origin: left center; box-shadow: 0 0 12px rgba(67,95,229,.42); pointer-events: none; }
body {
    background: var(--white);
    color: var(--ink);
    font-family: 'DM Sans', 'Segoe UI', system-ui, sans-serif;
    font-size: 15px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6, .navbar-brand { font-family: 'Manrope', 'Segoe UI', system-ui, sans-serif; letter-spacing: -.035em; }
h1, h2, h3 { color: var(--ink); }
a { color: var(--blue); text-decoration: none; }
a:hover { color: var(--blue-dark); }
::selection { color: #fff; background: var(--blue); }
:focus-visible { outline: 3px solid rgba(67, 95, 229, .55); outline-offset: 3px; }

.container { max-width: 1160px; }
.site-nav {
    position: sticky;
    top: 12px;
    z-index: 1020;
    width: min(calc(100% - 40px), 1160px);
    min-height: 72px;
    margin: 16px auto 0;
    border: 1px solid rgba(225,229,239,.88);
    border-radius: 999px;
    background: rgba(255,255,255,.94) !important;
    box-shadow: 0 12px 35px rgba(25,39,65,.09), 0 2px 6px rgba(25,39,65,.035);
    backdrop-filter: blur(14px);
    transition: border-radius .25s ease, box-shadow .25s ease, background-color .25s ease, transform .25s ease;
}
.site-nav:hover { box-shadow: 0 16px 40px rgba(25,39,65,.12), 0 3px 8px rgba(25,39,65,.04); }
.site-nav:has(.navbar-collapse.show) { border-radius: 24px; }
.site-nav .container { padding-right: clamp(18px, 3vw, 34px); padding-left: clamp(18px, 3vw, 34px); }
.brand-lockup { display: inline-flex; align-items: center; gap: 10px; padding: 0; }
.brand-symbol {
    position: relative; display: inline-grid; place-items: center; width: 38px; height: 38px;
    overflow: hidden; border-radius: 12px; background: var(--ink); transform: rotate(-5deg);
}
.brand-symbol::before { content: ''; position: absolute; width: 17px; height: 25px; border: 2px solid #fff; border-radius: 10px 10px 3px 3px; transform: rotate(5deg); }
.brand-symbol::after { content: ''; position: absolute; width: 7px; height: 7px; right: 6px; top: 6px; border-radius: 50%; background: #aab8ff; }
.brand-symbol span { position: absolute; bottom: 7px; width: 21px; height: 2px; border-radius: 4px; background: #fff; transform: rotate(5deg); }
.brand-name { color: var(--ink); font-size: 18px; font-weight: 800; letter-spacing: -.06em; line-height: 1; }
.brand-name > span { color: var(--blue); }
.brand-name small { display: inline-block; margin-left: 5px; color: var(--muted); font: 700 9px 'DM Sans', sans-serif; letter-spacing: .08em; vertical-align: 2px; }
.navbar-nav .nav-link { padding: 10px 13px !important; color: #58657a; font-size: 13px; font-weight: 600; transition: color .2s ease; }
.navbar-nav .nav-link:hover, .navbar-nav .nav-link.active { color: var(--blue) !important; }
.navbar-nav .nav-link.active { position: relative; }
.navbar-nav .nav-link.active::after { content: ''; position: absolute; left: 13px; right: 13px; bottom: 2px; height: 2px; border-radius: 2px; background: var(--accent-blue); }
.nav-cta-item { margin-left: 10px; }
.btn { border-radius: 10px; font-weight: 700; letter-spacing: -.015em; transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease; }
.btn:hover { transform: translateY(-2px); }
.btn-primary { color: #fff; background: var(--blue); border-color: var(--blue); box-shadow: 0 7px 16px rgba(67,95,229,.2); }
.btn-primary:hover, .btn-primary:focus { color: #fff; background: var(--blue-dark); border-color: var(--blue-dark); box-shadow: 0 10px 22px rgba(67,95,229,.26); }
.nav-cta { padding: 10px 16px; font-size: 12px; }
.nav-cta span { padding-left: 5px; color: #c9d1ff; }
.navbar-toggler { border: 0; box-shadow: none !important; }

.home-hero { padding: 38px 0 30px; background: linear-gradient(180deg, #fbfcff 0%, #fff 100%); }
.hero-frame { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr); min-height: 600px; overflow: hidden; border: 1px solid #edf0f6; border-radius: 26px; background: #fff; box-shadow: 0 24px 70px rgba(27,43,78,.08); animation: home-frame-in .85s cubic-bezier(.2,.75,.25,1) both; }
.hero-copy { display: flex; align-self: stretch; align-items: flex-start; flex-direction: column; justify-content: center; padding: clamp(34px, 5.4vw, 70px); }
.hero-copy > .eyebrow { animation: home-copy-in .55s .08s both; }
.hero-copy h1 { animation: home-copy-in .65s .16s both; }
.hero-copy .hero-lede { animation: home-copy-in .6s .24s both; }
.hero-copy .income-highlight { animation: home-copy-in .6s .32s both; }
.hero-copy .hero-actions { animation: home-copy-in .6s .4s both; }
.hero-copy .hero-assurance { animation: home-copy-in .6s .48s both; }
.eyebrow { display: flex; align-items: center; gap: 9px; margin-bottom: 15px; color: var(--blue); font-size: 10px; font-weight: 800; letter-spacing: .14em; line-height: 1.4; }
.eyebrow-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent-blue); box-shadow: 0 0 0 4px rgba(67,95,229,.16); }
.hero-copy h1 { max-width: 610px; margin: 0; font-size: clamp(43px, 5.1vw, 66px); font-weight: 800; line-height: 1.04; letter-spacing: -.065em; }
.hero-copy h1 span { color: var(--blue); }
.hero-lede { max-width: 490px; margin: 20px 0 25px; color: #68758a; font-size: 16px; line-height: 1.72; }
.income-highlight { display: inline-flex; align-items: center; gap: 12px; margin: 0 0 22px; padding: 11px 15px 11px 11px; border: 1px solid #e4e8f7; border-radius: 13px; background: linear-gradient(110deg, #f7f8ff, #fff); box-shadow: 0 8px 22px rgba(35,51,93,.045); animation: application-rise .55s .12s both; }
.income-mark { display: grid; place-items: center; flex: 0 0 35px; width: 35px; height: 35px; border-radius: 10px; color: #fff; background: var(--blue); font: 800 16px 'Manrope',sans-serif; }
.income-highlight strong, .income-highlight small { display: block; }
.income-highlight strong { color: var(--ink); font: 800 14px 'Manrope',sans-serif; letter-spacing: -.025em; }
.income-highlight small { margin-top: 2px; color: var(--muted); font-size: 10px; }
.income-highlight-compact { margin: 18px 0 0; padding: 9px 13px 9px 9px; background: rgba(255,255,255,.75); }
.income-highlight-compact .income-mark { width: 31px; height: 31px; flex-basis: 31px; }
.income-highlight-compact strong { font-size: 12px; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; }
.hero-actions .btn { padding: 14px 19px; font-size: 14px; }
.hero-actions .btn-primary { position: relative; overflow: hidden; isolation: isolate; }
.hero-actions .btn-primary::after { content: ''; position: absolute; z-index: -1; top: -40%; bottom: -40%; left: -70%; width: 42%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent); transform: skewX(-18deg); animation: home-button-sheen 6.5s 1.2s ease-in-out infinite; }
.hero-actions .btn span { margin-left: 10px; color: #c9d1ff; }
.hero-text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--ink); font-size: 13px; font-weight: 700; }
.hero-text-link span { color: var(--blue); font-size: 18px; transition: transform .2s ease; }
.hero-text-link:hover span { transform: translateX(4px); }
.hero-assurance-group { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 20px; margin-top: 27px; }
.hero-assurance { display: flex; align-items: center; gap: 9px; max-width: 230px; margin: 0; color: #6f7b8e; font-size: 10px; }
.assurance-icon { flex: 0 0 auto; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #dce2fa; border-radius: 50%; color: var(--blue); background: #f2f4ff; font-size: 10px; font-weight: 800; }
.assurance-check { color: #4b8b69; border-color: #d9eadf; background: #f2faf5; font-size: 13px; }

/* Immersive homepage hero: keep its background layers out of the content flow. */
.hero-frame-immersive { position: relative; display: flex; align-items: center; min-height: clamp(600px, 72vh, 760px); isolation: isolate; border-color: #30283c; background: #211a2e; }
.hero-frame-immersive { box-shadow: 0 30px 90px rgba(29,20,41,.18), 0 3px 12px rgba(29,20,41,.08); }
.hero-frame-immersive .hero-background-carousel, .hero-frame-immersive .hero-background-overlay { position: absolute; z-index: -2; inset: 0; }
.hero-frame-immersive .carousel-inner, .hero-frame-immersive .carousel-item { width: 100%; height: 100%; }
.hero-frame-immersive .hero-background-image { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-frame-immersive .carousel-item.active .hero-background-image { animation: hero-image-settle 8s cubic-bezier(.18,.62,.34,1) both; }
.hero-frame-immersive .hero-background-overlay { z-index: -1; background: linear-gradient(90deg, rgba(26,20,37,.94) 0%, rgba(31,24,44,.82) 48%, rgba(31,24,44,.38) 100%), linear-gradient(0deg, rgba(26,20,37,.58), transparent 54%); }
.hero-frame-immersive .hero-background-overlay::after { position: absolute; inset: 0; background: radial-gradient(ellipse at 78% 18%, rgba(67,95,229,.24), transparent 34%); content: ''; animation: hero-light-breathe 9s ease-in-out infinite alternate; }
.hero-frame-immersive .hero-copy { width: min(780px, 76%); padding: clamp(48px, 7vw, 92px); color: #fff; }
.hero-frame-immersive .hero-copy > .eyebrow { color: #c4cdfa; }
.hero-frame-immersive .hero-copy h1 { max-width: 730px; color: #fff; font-size: clamp(44px, 5.2vw, 72px); line-height: 1.04; text-wrap: balance; }
.hero-frame-immersive .hero-copy h1 span { color: #aab8ff; }
.hero-frame-immersive .hero-lede { max-width: 550px; color: rgba(255,255,255,.8); }
.hero-frame-immersive .income-highlight { margin-bottom: 24px; }
.hero-frame-immersive .hero-actions { gap: 16px 24px; }
.hero-frame-immersive .hero-text-link { color: #fff; }
.hero-frame-immersive .hero-text-link span { color: #aab8ff; }
.hero-frame-immersive .hero-assurance-group { gap: 12px 24px; }
.hero-frame-immersive .hero-assurance { max-width: none; color: rgba(255,255,255,.78); font-size: 11px; }
.hero-frame-immersive .assurance-icon { border-color: rgba(255,255,255,.32); color: #fff; background: rgba(255,255,255,.1); }
.hero-frame-immersive .assurance-check { border-color: rgba(170,220,185,.4); color: #c7ebd1; background: rgba(96,155,112,.2); }
.hero-proof-card { position: absolute; top: 30px; right: 30px; z-index: 2; display: flex; align-items: center; gap: 12px; max-width: 285px; padding: 12px 15px; border: 1px solid rgba(255,255,255,.24); border-radius: 15px; color: #fff; background: rgba(33,26,46,.58); box-shadow: 0 12px 35px rgba(12,8,19,.18); backdrop-filter: blur(12px); animation: hero-card-enter .7s .28s both; transition: transform .25s ease, border-color .25s ease, background-color .25s ease; }
.hero-proof-card:hover { transform: translateY(-3px); border-color: rgba(255,255,255,.42); background: rgba(33,26,46,.72); }
.hero-proof-mark { display: grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; border: 1px solid rgba(122,143,255,.62); border-radius: 50%; color: #fff; font: 800 17px 'Manrope',sans-serif; }
.hero-proof-mark span { color: #aab8ff; font-size: 10px; }
.hero-proof-card strong, .hero-proof-card small { display: block; }
.hero-proof-card strong { font: 700 11px 'Manrope',sans-serif; }
.hero-proof-card small { margin-top: 3px; color: rgba(255,255,255,.68); font-size: 9px; }
.hero-proof-check { color: #c7ebd1; font-size: 16px; }
.hero-carousel-controls { position: absolute; right: 28px; bottom: 26px; z-index: 3; display: flex; align-items: center; gap: 9px; padding: 7px; border: 1px solid rgba(255,255,255,.2); border-radius: 50px; background: rgba(33,26,46,.6); backdrop-filter: blur(12px); }
.hero-carousel-arrow, .hero-carousel-indicators button, .hero-carousel-toggle { display: grid; place-items: center; border: 1px solid rgba(255,255,255,.28); color: #fff; background: rgba(255,255,255,.08); }
.hero-carousel-arrow { width: 34px; height: 34px; border-radius: 50%; font-size: 16px; line-height: 1; transition: transform .2s ease, background-color .2s ease, border-color .2s ease; }
.hero-carousel-indicators { display: flex; align-items: center; gap: 6px; padding: 0 3px; }
.hero-carousel-indicators button { width: 8px; height: 8px; padding: 0; border-radius: 50%; transition: width .25s ease, background-color .25s ease, border-color .25s ease; }
.hero-carousel-indicators button.active { width: 22px; border-color: #aab8ff; border-radius: 8px; background: #aab8ff; }
.hero-carousel-toggle { display: inline-flex; gap: 7px; min-height: 34px; padding: 0 11px; border-radius: 30px; font-size: 10px; font-weight: 700; }
.hero-carousel-arrow:hover, .hero-carousel-toggle:hover { transform: translateY(-1px); border-color: rgba(255,255,255,.65); background: rgba(255,255,255,.18); }
.hero-carousel-controls:focus-within { border-color: rgba(255,255,255,.42); }
.hero-art { position: relative; display: flex; flex-direction: column; justify-content: space-between; min-height: 545px; padding: 25px 30px 22px; overflow: hidden; color: #fff; background: radial-gradient(ellipse at 85% 12%, rgba(106,127,245,.65) 0%, transparent 31%), linear-gradient(145deg, #1b2c4b 0%, #253b65 60%, #304b80 100%); }
.hero-art { isolation: isolate; background: radial-gradient(ellipse at 75% 18%, rgba(122,143,255,.55), transparent 29%), radial-gradient(ellipse at 7% 95%, rgba(67,95,229,.28), transparent 37%), linear-gradient(145deg, #17243a 0%, #253b65 57%, #304b80 100%); }
.hero-art::before { content: ''; position: absolute; inset: 0; opacity: .14; background-image: radial-gradient(rgba(255,255,255,.6) .7px, transparent .7px); background-size: 17px 17px; mask-image: linear-gradient(125deg, transparent 5%, #000 100%); }
.art-orbit { position: absolute; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; pointer-events: none; }
.orbit-one { width: 510px; height: 510px; top: -260px; right: -220px; animation: home-orbit-drift 24s ease-in-out infinite; }
.orbit-two { width: 390px; height: 390px; top: -200px; right: -160px; border-color: rgba(122,143,255,.48); animation: home-orbit-drift 18s ease-in-out -4s infinite reverse; }
.art-topline, .art-bottom-note { position: relative; z-index: 1; display: flex; justify-content: space-between; color: rgba(255,255,255,.58); font-size: 9px; font-weight: 700; letter-spacing: .16em; }
.art-stamp { position: absolute; top: 57px; right: 35px; display: grid; place-items: center; width: 73px; height: 73px; border: 1px solid rgba(255,255,255,.23); border-radius: 50%; color: #fff; font: 700 20px 'Manrope', sans-serif; transform: rotate(10deg); animation: home-stamp-float 6s ease-in-out infinite; }
.art-stamp span { position: absolute; top: 11px; right: 12px; color: var(--accent-blue); font: 800 10px 'DM Sans', sans-serif; }
.art-content { position: relative; z-index: 1; max-width: 390px; margin: auto 0; padding: 30px 0; }
.home-artwork { position: relative; display: flex; align-items: center; justify-content: center; min-height: 325px; margin: 5px 0 14px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 18px; background: linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.025)); box-shadow: inset 0 1px rgba(255,255,255,.13), 0 18px 45px rgba(10,7,20,.16); }
.home-artwork { transform: perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)); transition: transform .22s ease-out, box-shadow .35s ease; will-change: transform; }
.home-artwork:hover { box-shadow: inset 0 1px rgba(255,255,255,.17), 0 24px 55px rgba(10,7,20,.24); }
.home-artwork::before { content: ''; position: absolute; inset: 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; }
.home-artwork-ring { position: absolute; display: block; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; animation: home-ring-breathe 7s ease-in-out infinite; }
.ring-a { width: 270px; height: 270px; transform: translate(30px,-12px); animation: home-ring-spin 38s linear infinite; }
.ring-b { width: 220px; height: 220px; border-color: rgba(122,143,255,.48); transform: translate(30px,-12px); animation: home-ring-spin 29s linear -3.5s infinite reverse; }
.home-artwork-glow { position: absolute; width: 175px; height: 240px; border-radius: 48% 48% 35% 35%; background: linear-gradient(150deg, rgba(122,143,255,.3), rgba(67,95,229,.15)); filter: blur(2px); transform: translate(30px,-3px) rotate(12deg); animation: home-glow-breathe 8s ease-in-out infinite; }
.home-artwork-number { position: relative; z-index: 1; margin: 0 30px 10px 0; color: #fff; font: 800 clamp(118px, 14vw, 190px)/.8 'Manrope',sans-serif; letter-spacing: -.11em; text-shadow: 0 14px 45px rgba(15,9,26,.24); animation: home-number-glow 5s ease-in-out infinite; }
.home-artwork-number span { display: inline-block; margin-left: 7px; color: #aab8ff; font-size: .38em; vertical-align: top; }
.home-artwork-caption { position: absolute; right: 22px; bottom: 22px; color: rgba(255,255,255,.72); font-size: 9px; font-weight: 800; letter-spacing: .18em; line-height: 1.55; text-align: right; }
.home-artwork-label { position: absolute; top: 21px; left: 21px; color: rgba(255,255,255,.58); font-size: 8px; font-weight: 800; letter-spacing: .15em; line-height: 1.55; }
.home-artwork-card { position: relative; display: flex; align-items: center; gap: 12px; max-width: 300px; margin-left: auto; padding: 12px 15px; border: 1px solid rgba(255,255,255,.18); border-radius: 13px; background: rgba(24,18,38,.42); box-shadow: 0 12px 25px rgba(10,7,20,.12); backdrop-filter: blur(12px); animation: application-rise .55s .18s both, home-card-float 6s 1s ease-in-out infinite; }
.home-artwork-card-icon { display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 9px; color: #fff; background: linear-gradient(135deg, #435fe5, #8297ff); font-size: 16px; }
.home-artwork-card strong, .home-artwork-card small { display: block; }
.home-artwork-card { transform: translate3d(var(--depth-x,0px),var(--depth-y,0px),0); transition: transform .22s ease-out, border-color .25s ease, background .25s ease; }
.home-artwork-card:hover { border-color: rgba(255,255,255,.35); background: rgba(35,26,53,.65); }
.home-artwork-card strong { color: #fff; font: 700 11px 'Manrope',sans-serif; }
.home-artwork-card small { margin-top: 3px; color: rgba(255,255,255,.6); font-size: 9px; }
.art-kicker { margin: 0 0 10px; color: #bdc9fa; font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.art-content h2 { margin-bottom: 26px; color: #fff; font-size: 39px; font-weight: 800; line-height: 1.08; letter-spacing: -.055em; }
.journey-list { padding: 0; margin: 0; list-style: none; }
.journey-list li { display: grid; grid-template-columns: 32px 1fr 20px; align-items: center; gap: 11px; padding: 12px 0; border-top: 1px solid rgba(255,255,255,.16); }
.journey-index { color: #aab8f3; font-size: 10px; font-weight: 700; }
.journey-list strong, .journey-list small { display: block; }
.journey-list strong { color: #fff; font-size: 12px; font-weight: 700; }
.journey-list small { margin-top: 2px; color: rgba(255,255,255,.58); font-size: 10px; }
.journey-mark { color: var(--accent-blue); font-size: 14px; text-align: right; }
.art-bottom-note { justify-content: flex-start; color: rgba(255,255,255,.55); font-size: 8px; }
.principles-strip { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fff; }
.principles-inner { display: flex; align-items: center; justify-content: center; gap: clamp(20px, 5vw, 65px); min-height: 76px; color: #606e83; font-size: 11px; font-weight: 700; }
.principles-inner i { width: 5px; height: 5px; border-radius: 50%; background: var(--accent-blue); }

.home-highlights { padding: 82px 0 86px; overflow: hidden; background: linear-gradient(180deg, #fbfaff 0%, #fff 100%); }
.highlights-heading { align-items: end; margin-bottom: 28px; }
.highlights-heading > p { max-width: 360px !important; color: #69768b; font-size: 12px !important; line-height: 1.75; }
.home-highlights .section-heading h2 { letter-spacing: -.05em; }
.home-carousel { overflow: visible; }
.home-carousel-slide { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr); min-height: 365px; overflow: hidden; border: 1px solid #ebe7f1; border-radius: 24px; background: #fff; box-shadow: 0 20px 56px rgba(43,35,75,.085); }
.home-carousel-copy { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; padding: clamp(30px, 5vw, 61px); }
.home-carousel-copy .eyebrow { margin-bottom: 18px; color: var(--blue); }
.highlights-dot { width: 7px; height: 7px; flex: 0 0 auto; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 5px rgba(67,95,229,.14); }
.home-carousel-copy h3 { max-width: 520px; margin: 0 0 13px; color: var(--ink); font: 800 clamp(26px, 3vw, 38px)/1.12 'Manrope',sans-serif; letter-spacing: -.05em; }
.home-carousel-description { max-width: 480px; margin: 0; color: #716d7e; font-size: 12px; line-height: 1.8; }
.home-carousel-bottom { display: flex; align-items: center; justify-content: space-between; gap: 18px; width: 100%; margin-top: 25px; }
.home-carousel-bottom .btn { display: inline-flex; align-items: center; gap: 14px; padding: 12px 16px; font-size: 11px; }
.home-carousel-bottom .btn span { color: #d4d9ff; }
.home-carousel-arrows { display: flex; align-items: center; gap: 8px; }
.home-carousel-arrows button { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid #dce2fa; border-radius: 50%; color: var(--blue); background: #fff; font-size: 16px; transition: border-color .2s ease, color .2s ease, background-color .2s ease, transform .2s ease; }
.home-carousel-arrows button:hover { transform: translateY(-2px); border-color: var(--blue); color: #fff; background: var(--blue); }
.home-carousel-footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 42px; }
.home-carousel-indicators { position: static; right: auto; bottom: auto; left: auto; z-index: auto; display: flex; align-items: center; justify-content: flex-start; gap: 7px; margin: 0; padding: 19px 0 0; }
.home-carousel-indicators button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 9px; background: #cbd5f5; transition: width .25s ease, background-color .25s ease; }
.home-carousel-indicators button.active { width: 25px; background: var(--blue); }
.home-carousel-toggle { display: inline-flex; align-items: center; gap: 8px; padding: 6px 0 6px 10px; border: 0; color: #81798d; background: transparent; font: 700 9px 'DM Sans',sans-serif; }
.home-carousel-toggle > span:first-child { display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid #dce2fa; border-radius: 50%; color: var(--blue); font-size: 10px; }
.home-carousel-toggle:hover { color: #392b46; }
.home-carousel-toggle:focus-visible { border-radius: 6px; }
.home-carousel-media { position: relative; min-height: 100%; overflow: hidden; background: #e9e3ed; }
.home-carousel-media::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(37,28,48,.08), transparent 24%), linear-gradient(0deg, rgba(37,28,48,.12), transparent 45%); content: ''; pointer-events: none; }
.home-carousel-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

.section { padding: 88px 0; }
.section-heading { max-width: 660px; margin-bottom: 38px; }
.section-heading .eyebrow { margin-bottom: 12px; }
.section-heading h2 { margin: 0; font-size: clamp(32px, 4vw, 46px); font-weight: 800; line-height: 1.12; }
.section-heading h2 em { color: var(--blue); font-style: normal; }
.section-heading > p:not(.eyebrow) { max-width: 590px; margin: 15px 0 0; color: var(--muted); font-size: 14px; }
.section-heading-split { display: flex; align-items: end; justify-content: space-between; gap: 40px; max-width: none; }
.section-heading-split > p { max-width: 350px !important; margin-bottom: 5px !important; }
.section-heading-split > .hero-text-link { margin-bottom: 7px; }
.benefits-section { padding-top: 96px; padding-bottom: 90px; background: linear-gradient(180deg, #fbfaff 0%, #fff 100%); }
.benefits-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; border: 0; }
.benefit-card { position: relative; grid-column: span 2; min-height: 224px; padding: 25px 25px 24px; overflow: hidden; border: 1px solid #e8e7f0; border-radius: 18px; background: rgba(255,255,255,.9); box-shadow: 0 8px 26px rgba(43,35,75,.035); transition: transform .28s cubic-bezier(.2,.75,.25,1), border-color .25s ease, box-shadow .28s ease, background-color .25s ease; }
.benefit-card:nth-child(4) { grid-column: 2 / span 2; }
.benefit-card:nth-child(5) { grid-column: 4 / span 2; }
.benefit-card + .benefit-card { padding-left: 25px; border-left: 1px solid #e8e7f0; }
.benefit-card::before { content: ''; position: absolute; right: -48px; bottom: -74px; width: 150px; height: 150px; border: 1px solid rgba(67,95,229,.1); border-radius: 50%; box-shadow: 0 0 0 18px rgba(67,95,229,.025), 0 0 0 37px rgba(67,95,229,.02); transition: transform .35s ease, border-color .35s ease; }
.benefit-card:hover { transform: translateY(-6px); border-color: #d8d2eb; background: #fff; box-shadow: 0 20px 45px rgba(43,35,75,.09); }
.benefit-card:hover::before { transform: scale(1.12); border-color: rgba(67,95,229,.2); }
.benefit-number { display: inline-flex; align-items: center; justify-content: center; min-width: 35px; height: 30px; padding: 0 8px; border: 1px solid #dce2fa; border-radius: 9px; color: var(--blue); background: #f2f4ff; font: 800 9px 'DM Sans', sans-serif; letter-spacing: .12em; }
.benefit-arrow { position: absolute; top: 25px; right: 25px; display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid #eeecf3; border-radius: 50%; color: #a5a0b1; font-size: 15px; transition: color .2s ease, transform .2s ease, background-color .2s ease; }
.benefit-card:hover .benefit-arrow { color: #fff; background: var(--blue); border-color: var(--blue); transform: translate(2px,-2px); }
.benefit-card h3 { position: relative; z-index: 1; max-width: 240px; margin: 33px 0 9px; font-size: 17px; font-weight: 800; letter-spacing: -.04em; }
.benefit-card p { position: relative; z-index: 1; max-width: 300px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.conditions-band { padding: 54px 0; background: linear-gradient(135deg, #f2f5ff, #f8faff 58%, #f1f4ff); }
.conditions-inner { display: grid; grid-template-columns: 48px minmax(0, 1.15fr) minmax(290px, .85fr); align-items: center; gap: clamp(18px, 3vw, 34px); padding: clamp(24px, 4vw, 42px); border: 1px solid rgba(205,216,247,.9); border-radius: 22px; background: linear-gradient(90deg, rgba(225,236,255,.94) 0%, rgba(208,226,255,.86) 55%, rgba(191,215,255,.76) 100%), url('../images/categories/default-production.svg') center / cover; box-shadow: 0 18px 48px rgba(43,55,100,.09); }
.conditions-icon { display: grid; place-items: center; align-self: start; width: 46px; height: 46px; border: 1px solid #dce2fa; border-radius: 14px; color: var(--blue); background: #f2f4ff; box-shadow: 0 5px 16px rgba(67,95,229,.09); font-size: 18px; font-weight: 800; animation: home-stamp-float 5s ease-in-out infinite; }
.conditions-copy .eyebrow { margin-bottom: 8px; font-size: 9px; }
.conditions-copy h2 { max-width: 500px; margin: 0; font-size: clamp(22px, 2.5vw, 30px); font-weight: 800; line-height: 1.2; letter-spacing: -.045em; }
.conditions-copy > p:not(.eyebrow) { max-width: 520px; margin: 12px 0 0; color: #344766; font-size: 12px; line-height: 1.75; }
.conditions-pay { padding: 20px 22px; border: 1px solid #dce2fa; border-radius: 16px; background: linear-gradient(135deg, #f7f8ff, #eff3ff); }
.conditions-pay-label { display: block; margin-bottom: 9px; color: #435fe5; font-size: 9px; font-weight: 800; letter-spacing: .13em; }
.conditions-pay strong { display: flex; align-items: baseline; flex-wrap: wrap; gap: 0 7px; color: #2d2440; font: 800 clamp(25px, 3vw, 34px)/1.15 'Manrope',sans-serif; letter-spacing: -.055em; }
.conditions-pay strong small { color: #748095; font: 700 11px 'DM Sans',sans-serif; letter-spacing: 0; }
.conditions-pay strong em { color: #748095; font: 600 12px 'DM Sans',sans-serif; letter-spacing: 0; }
.conditions-pay p { margin: 9px 0 0; color: #747086; font-size: 10px; line-height: 1.65; }
.profiles-section { padding-top: 94px; padding-bottom: 92px; background: linear-gradient(180deg, rgba(229,238,255,.88) 0%, rgba(207,225,255,.82) 100%), url('../images/categories/default-hetero.svg') right 4vw top 30px / min(46vw, 560px) auto no-repeat; }
.profiles-heading { align-items: end; margin-bottom: 34px; }
.profiles-intro { max-width: 400px; }
.profiles-intro p { margin: 0 0 14px; color: #344766; font-size: 12px; line-height: 1.75; }
.profile-all-link { display: inline-flex; align-items: center; gap: 9px; color: var(--ink); font-size: 11px; font-weight: 800; transition: color .2s ease, gap .2s ease; }
.profile-all-link span { color: var(--blue); }
.profile-all-link:hover { gap: 13px; color: var(--blue); }
.profiles-grid { --bs-gutter-y: 1rem; }
.profile-card { position: relative; display: flex; min-height: 360px; flex-direction: column; padding: 0; overflow: hidden; border: 1px solid #e7e5ef; border-radius: 19px; color: var(--ink); background: #fff; box-shadow: 0 8px 25px rgba(43,35,75,.04); text-decoration: none; transition: transform .28s cubic-bezier(.2,.75,.25,1), border-color .25s ease, box-shadow .25s ease; }
.profile-card::before { content: ''; position: absolute; right: -50px; bottom: -72px; width: 180px; height: 180px; border: 1px solid rgba(67,95,229,.09); border-radius: 50%; box-shadow: 0 0 0 18px rgba(67,95,229,.025), 0 0 0 38px rgba(67,95,229,.018); transition: transform .4s ease, border-color .4s ease; pointer-events: none; }
.profile-card:hover { transform: translateY(-6px); border-color: #c5d0fb; color: var(--ink); background: #fff; box-shadow: 0 20px 45px rgba(43,55,100,.12); }
.profile-card:hover::before { transform: scale(1.12); border-color: rgba(67,95,229,.18); }
.profile-card-image { position: relative; flex: 0 0 auto; height: clamp(160px, 17vw, 205px); overflow: hidden; background: #e9eafb; }
.profile-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .65s cubic-bezier(.2,.7,.2,1); }
.profile-card:hover .profile-card-image img { transform: scale(1.045); }
.profile-image-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(22,30,58,.36), transparent 42%, rgba(22,30,58,.2)); pointer-events: none; }
.profile-image-index { position: absolute; top: 14px; left: 15px; padding: 6px 9px; border: 1px solid rgba(255,255,255,.35); border-radius: 30px; color: #fff; background: rgba(22,30,58,.44); font-size: 8px; font-weight: 800; letter-spacing: .13em; backdrop-filter: blur(8px); }
.profile-image-symbol { position: absolute; right: 15px; bottom: 13px; display: grid; place-items: center; min-width: 38px; height: 38px; padding: 0 9px; border: 1px solid rgba(255,255,255,.44); border-radius: 12px; color: #fff; background: rgba(35,49,96,.52); font: 800 13px 'Manrope',sans-serif; backdrop-filter: blur(8px); }
.profile-card-body { position: relative; z-index: 1; display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 18px 20px 19px; }
.profile-symbol { display: grid; place-items: center; width: 47px; height: 47px; border: 1px solid #dce2fa; border-radius: 15px; color: var(--blue); background: #f2f4ff; font: 800 15px 'Manrope', sans-serif; }
.profile-index { color: #9a94a8; font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.profile-card h3 { position: relative; z-index: 1; margin: 0 0 8px; color: var(--ink); font-size: 17px; font-weight: 800; letter-spacing: -.035em; }
.profile-card p { position: relative; z-index: 1; max-width: 310px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.75; }
.profile-discover { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 17px; color: #777187; font-size: 10px; font-weight: 800; }
.profile-discover span { color: var(--blue); font-size: 16px; transition: transform .2s ease; }
.profile-card:hover .profile-discover span { transform: translateX(4px); }
.profile-rule { position: absolute; right: 0; bottom: 0; left: 0; height: 3px; background: linear-gradient(90deg, #435fe5, #8297ff 68%, #c4cdfa); transform: scaleX(0); transform-origin: left; transition: transform .3s ease; }
.profile-card:hover .profile-rule { transform: scaleX(1); }

.category-admin-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.category-admin-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: #fff; box-shadow: 0 8px 25px rgba(30,47,81,.05); }
.category-admin-preview { display: block; width: 100%; aspect-ratio: 1.9; object-fit: cover; background: #e9eafb; }
.category-admin-content { padding: 20px; }
.category-admin-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 17px; }
.category-admin-index { color: #888fa3; font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.category-admin-heading h2 { margin: 3px 0 0; font-size: 17px; font-weight: 800; }
.category-admin-mark { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border: 1px solid #dce2fa; border-radius: 12px; color: var(--blue); background: #f2f4ff; font: 800 12px 'Manrope',sans-serif; }
.category-admin-form .form-label { font-size: 11px; }
.category-admin-form .form-text { font-size: 10px; line-height: 1.6; }
.category-admin-form .btn { font-size: 11px; }
.process-section { position: relative; padding-top: 88px; padding-bottom: 96px; overflow: hidden; background: linear-gradient(180deg, #fbfaff 0%, #fff 100%); }
.process-section::before { position: absolute; top: 80px; right: -145px; width: 340px; height: 340px; border: 1px solid rgba(67,95,229,.09); border-radius: 50%; box-shadow: 0 0 0 30px rgba(67,95,229,.025), 0 0 0 65px rgba(67,95,229,.018); content: ''; pointer-events: none; }
.process-section > .container { position: relative; z-index: 1; }
.process-heading { align-items: end; margin-bottom: 38px; }
.process-heading > div { max-width: 650px; }
.process-heading h2 { letter-spacing: -.045em; }
.process-heading > div > p:not(.eyebrow) { max-width: 520px; margin: 14px 0 0; color: #69768b; font-size: 13px; line-height: 1.75; }
.process-grid { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding: 0; margin: 0; list-style: none; }
.process-grid::before { position: absolute; top: 47px; right: 16.5%; left: 16.5%; height: 1px; background: linear-gradient(90deg, #dce2fa, #cbd5f5 55%, #dce2fa); content: ''; }
.process-grid li { position: relative; min-height: 260px; padding: 24px 25px 22px; border: 1px solid #e9e6f0; border-radius: 18px; background: rgba(255,255,255,.94); box-shadow: 0 12px 35px rgba(43,35,75,.045); transition: transform .28s cubic-bezier(.2,.75,.25,1), border-color .25s ease, box-shadow .28s ease; }
.process-grid li:hover { transform: translateY(-5px); border-color: #d8d1e9; box-shadow: 0 20px 42px rgba(43,35,75,.09); }
.process-step { position: relative; z-index: 1; display: flex; align-items: center; gap: 11px; margin-bottom: 27px; color: var(--blue); }
.process-step > span:first-child { display: grid; place-items: center; width: 47px; height: 47px; border: 1px solid #dce2fa; border-radius: 15px; color: var(--blue); background: #f2f4ff; font: 800 12px 'Manrope',sans-serif; box-shadow: 0 5px 15px rgba(67,95,229,.08); }
.process-step-label { color: #898298; font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.process-grid h3 { max-width: 280px; margin: 0 0 10px; color: #262137; font-size: 17px; font-weight: 800; line-height: 1.35; letter-spacing: -.025em; }
.process-grid p { max-width: 310px; margin: 0; color: #707084; font-size: 11px; line-height: 1.75; }
.process-card-note { display: inline-flex; align-items: center; gap: 7px; margin-top: 19px; color: #817895; font-size: 9px; font-weight: 800; }
.process-card-note::before { width: 5px; height: 5px; border-radius: 50%; background: #435fe5; content: ''; }
.closing-cta { padding: 0 0 88px; background: linear-gradient(180deg, #fbfaff 0%, var(--paper) 100%); }
.closing-card { position: relative; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(245px, .7fr); align-items: center; gap: clamp(28px, 6vw, 76px); min-height: 330px; padding: clamp(36px, 6vw, 68px) clamp(28px, 7vw, 82px); overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 26px; color: #fff; background: linear-gradient(115deg, #17243a 0%, #253b65 55%, #304b80 100%); box-shadow: 0 24px 65px rgba(30,47,81,.2); }
.closing-card { background-size: 170% 170%; animation: home-background-drift 18s ease-in-out infinite alternate; }
.closing-card::before { position: absolute; inset: 0; background: radial-gradient(ellipse at 89% 12%, rgba(122,143,255,.27), transparent 30%), radial-gradient(ellipse at 3% 100%, rgba(67,95,229,.2), transparent 38%); content: ''; pointer-events: none; }
.closing-copy, .closing-actions { position: relative; z-index: 1; }
.closing-card .eyebrow { margin-bottom: 17px; color: #c4cdfa; }
.closing-live-dot { width: 7px; height: 7px; border-radius: 50%; background: #aab8ff; box-shadow: 0 0 0 5px rgba(122,143,255,.2); }
.closing-card h2 { max-width: 590px; margin: 0 0 14px; color: #fff; font-size: clamp(32px, 4.3vw, 48px); font-weight: 800; line-height: 1.08; letter-spacing: -.055em; }
.closing-card h2 span { color: #aab8ff; }
.closing-card .closing-copy > p:not(.eyebrow) { max-width: 540px; margin: 0; color: rgba(255,255,255,.72); font-size: 13px; line-height: 1.8; }
.closing-trust { display: inline-flex; align-items: center; gap: 10px; margin-top: 23px; color: rgba(255,255,255,.78); font-size: 10px; font-weight: 700; }
.closing-age-mark { display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid rgba(170,184,255,.5); border-radius: 10px; color: #c4cdfa; font-size: 10px; font-weight: 800; }
.closing-actions { display: flex; align-items: flex-start; flex-direction: column; gap: 13px; padding: 23px; border: 1px solid rgba(255,255,255,.14); border-radius: 18px; background: rgba(255,255,255,.075); box-shadow: inset 0 1px rgba(255,255,255,.08); backdrop-filter: blur(8px); }
.closing-actions-label { color: rgba(255,255,255,.62); font-size: 9px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.closing-card .btn-light { display: inline-flex; align-items: center; justify-content: space-between; gap: 20px; width: 100%; padding: 14px 17px; border: 0; border-radius: 11px; color: #30263f; background: #fff; font-size: 12px; box-shadow: 0 10px 25px rgba(0,0,0,.16); }
.closing-card .btn-light:hover { color: #17243a; background: #f2f4ff; }
.closing-card .btn-light span { color: var(--blue); font-size: 16px; transition: transform .2s ease; }
.closing-card .btn-light:hover span { transform: translate(2px,-2px); }
.closing-secondary-link { display: inline-flex; align-items: center; gap: 8px; color: rgba(255,255,255,.8); font-size: 10px; font-weight: 700; transition: color .2s ease, gap .2s ease; }
.closing-secondary-link:hover { gap: 12px; color: #fff; }
.closing-secondary-link span { color: #aab8ff; }
.closing-orbit { position: absolute; top: -165px; right: 15%; display: grid; place-items: center; width: 390px; height: 390px; border: 1px solid rgba(255,255,255,.075); border-radius: 50%; color: rgba(255,255,255,.035); font: 800 105px 'Manrope',sans-serif; animation: home-orbit-drift 20s ease-in-out infinite; pointer-events: none; }

/* Shared page layouts */
.page-hero { padding: 55px 0 48px; background: linear-gradient(180deg, #f6f7ff, #fff); }
.page-hero h1 { max-width: 800px; margin: 0; font-size: clamp(34px, 5vw, 52px); font-weight: 800; line-height: 1.1; }
.page-hero p:not(.eyebrow) { max-width: 620px; margin: 14px 0 0; color: var(--muted); font-size: 15px; }
.page-content { padding-top: 42px; padding-bottom: 75px; }
.application-wrap { max-width: 890px; padding-top: 18px; }
.application-hero { position: relative; overflow: hidden; padding: 62px 0 52px; background: radial-gradient(ellipse at 85% 20%, rgba(116,132,244,.14), transparent 33%), linear-gradient(135deg, #f6f7ff 0%, #fff 70%); }
.application-hero::after { content: '18+'; position: absolute; top: 14px; right: max(5vw, calc((100vw - 1160px)/2)); color: rgba(67,95,229,.045); font: 800 clamp(110px, 19vw, 220px)/1 'Manrope', sans-serif; letter-spacing: -.09em; pointer-events: none; }
.application-hero .container { position: relative; z-index: 1; }
.application-hero h1 { max-width: 750px; letter-spacing: -.06em; }
.application-hero h1 span { color: var(--blue); }
.application-form { position: relative; padding: clamp(22px, 5vw, 50px); overflow: hidden; border: 1px solid #e5e8f2; border-radius: 22px; background: #fff; box-shadow: 0 22px 65px rgba(30,47,81,.09); animation: application-rise .65s cubic-bezier(.2,.75,.25,1) both; }
.application-form .row { --bs-gutter-y: 1.15rem; }
.application-form-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 22px; padding-bottom: 26px; border-bottom: 1px solid var(--line); }
.application-form-head .eyebrow { margin-bottom: 7px; }
.application-form-head h2 { margin: 0; font-size: clamp(23px, 3vw, 30px); font-weight: 800; letter-spacing: -.05em; }
.application-form-head p:not(.eyebrow) { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.application-secure { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; padding: 8px 11px; border: 1px solid #e3e8fa; border-radius: 99px; color: #5f6fbd; background: #f7f8ff; font-size: 10px; font-weight: 800; }
.application-secure span { color: var(--accent-blue); }
.application-block { padding: 28px 0; border-bottom: 1px solid var(--line); animation: application-rise .55s both; }
.application-block:nth-of-type(2) { animation-delay: .08s; }
.application-block:nth-of-type(3) { animation-delay: .16s; }
.application-block-title { display: flex; align-items: flex-start; gap: 13px; margin-bottom: 20px; }
.application-block-title > span { display: grid; place-items: center; flex: 0 0 31px; width: 31px; height: 31px; border-radius: 10px; color: var(--blue); background: var(--blue-soft); font-size: 10px; font-weight: 800; }
.application-block-title h3 { margin: 0; font-size: 15px; font-weight: 800; letter-spacing: -.025em; }
.application-block-title p { margin: 2px 0 0; color: var(--muted); font-size: 11px; }
.application-form .form-check { padding: 13px 14px 13px 2.1rem; border: 1px solid var(--line); border-radius: 10px; background: #fbfcff; }
.application-form .form-check-input { margin-left: -1.55rem; }
.application-form .form-check:focus-within { border-color: #aab5f5; box-shadow: 0 0 0 3px rgba(67,95,229,.07); }
.application-form .btn-lg { padding: 14px 20px; font-size: 13px; }
.application-form .btn:disabled { opacity: .48; box-shadow: none; }
.application-form .form-control, .application-form .form-select { min-height: 49px; border-radius: 10px; transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease; }
.application-form textarea.form-control { min-height: 90px; }
.application-form .form-control:hover, .application-form .form-select:hover { border-color: #bec6df; }
.application-form .form-text { font-size: 10px; }
.optional-label { margin-left: 5px; color: #939caf; font-size: 10px; font-weight: 500; }
.application-privacy-note { display: flex; align-items: flex-start; gap: 11px; margin-top: 22px; padding: 14px 16px; border: 1px solid #e4e9fb; border-radius: 12px; color: #596783; background: #f7f8ff; }
.application-privacy-note > span { color: var(--blue); font-size: 18px; line-height: 1.1; }
.application-privacy-note p { margin: 0; font-size: 11px; line-height: 1.65; }
.application-submit { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 20px; }
.application-submit .btn span { padding-left: 9px; transition: transform .2s ease; }
.application-submit .btn:hover span { display: inline-block; transform: translateX(3px); }
.application-submit small { color: var(--muted); font-size: 10px; text-align: right; }
.application-hero .eyebrow, .application-hero h1, .application-hero p:not(.eyebrow) { animation: application-rise .55s both; }
.application-hero h1 { animation-delay: .06s; }
.application-hero p:not(.eyebrow) { animation-delay: .12s; }
@keyframes application-rise { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
.application-form .btn:disabled { opacity: .48; box-shadow: none; }
.application-success { display: flex; align-items: flex-start; gap: 16px; max-width: 800px; padding: 25px; border: 1px solid #d5e9dd; border-radius: 15px; color: #365d48; background: #f2faf5; line-height: 1.75; }
.application-success .eyebrow { margin-bottom: 5px; color: #3c8a60; }
.success-mark { display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border-radius: 50%; color: #fff; background: #4c9b6d; font-size: 18px; }
.empty-state { display: flex; align-items: center; flex-direction: column; gap: 6px; padding: 40px 20px; border: 1px dashed #d7ddea; border-radius: 15px; color: var(--ink); background: #fbfcff; }
.empty-state > span { margin-bottom: 4px; color: var(--blue); font-size: 27px; }
.empty-state strong { font-size: 14px; }
.empty-state small { color: var(--muted); font-size: 12px; }
.opportunity-filters { padding: 13px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 7px 25px rgba(25,39,65,.045); }
.opportunity-card .card { height: 100%; border: 1px solid var(--line); border-radius: 15px; box-shadow: none; transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.opportunity-card .card:hover { transform: translateY(-4px); border-color: #d6defb; box-shadow: var(--shadow-card); }
.opportunity-visual { position: relative; display: flex; flex-direction: column; justify-content: space-between; min-height: 174px; padding: 18px 21px; overflow: hidden; border-radius: 14px 14px 0 0; color: #fff; background: radial-gradient(ellipse at 82% 12%, rgba(166,145,255,.65), transparent 31%), radial-gradient(ellipse at 7% 100%, rgba(220,151,119,.35), transparent 38%), linear-gradient(135deg, #211b32, #342750 62%, #514178); }
.opportunity-visual::before, .opportunity-visual::after { content: ''; position: absolute; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; pointer-events: none; }
.opportunity-visual::before { width: 260px; height: 260px; top: -155px; right: -70px; }
.opportunity-visual::after { width: 205px; height: 205px; top: -125px; right: -43px; border-color: rgba(233,177,145,.45); }
.opportunity-visual-label { position: relative; z-index: 1; color: rgba(255,255,255,.72); font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.opportunity-visual strong { position: relative; z-index: 1; color: #fff; font: 800 23px/1.02 'Manrope',sans-serif; letter-spacing: -.055em; }
.opportunity-visual strong em { color: #d9cafa; font-style: normal; }
.opportunity-visual-tag { position: relative; z-index: 1; align-self: flex-start; max-width: 100%; padding: 5px 9px; overflow: hidden; border: 1px solid rgba(255,255,255,.24); border-radius: 50px; color: #fff; background: rgba(255,255,255,.1); font-size: 9px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; backdrop-filter: blur(8px); }
.opportunity-visual i { position: absolute; right: -20px; bottom: -90px; width: 190px; height: 190px; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; box-shadow: 0 0 0 22px rgba(255,255,255,.025), 0 0 0 45px rgba(255,255,255,.02); }
.opportunity-card .card-body { padding: 25px; }
.opportunity-card h2 { color: var(--ink) !important; font-size: 19px !important; }
.opportunity-card p { color: #758196 !important; line-height: 1.7; }
.opportunity-card ul { padding-top: 13px; border-top: 1px solid var(--line); color: #647188; line-height: 2; }
.opportunity-card .btn { align-self: flex-start; padding: 9px 14px; }
.form-control, .form-select { min-height: 46px; border-color: #e0e4ec; border-radius: 9px; color: var(--ink); font-size: 13px; }
.form-control::placeholder { color: #98a1b0; }
.form-control:focus, .form-select:focus { border-color: #8392ef; box-shadow: 0 0 0 .22rem rgba(67,95,229,.12); }
.form-label { color: #3f4c62; font-size: 12px; font-weight: 700; }
textarea.form-control { min-height: 120px; }
.form-text, .text-muted { color: var(--muted) !important; }
.form-check-input:checked { border-color: var(--blue); background-color: var(--blue); }
.form-check-label { color: #647188; font-size: 12px; }
.card { border: 1px solid var(--line); border-radius: 15px; box-shadow: 0 7px 25px rgba(25,39,65,.045); }
.alert { border: 0; border-radius: 12px; font-size: 13px; }
.accordion-item { overflow: hidden; border: 1px solid var(--line) !important; border-radius: 12px !important; }
.accordion-item + .accordion-item { margin-top: 10px; }
.accordion-button { color: var(--ink); font-family: 'Manrope', sans-serif; font-size: 14px; font-weight: 700; }
.accordion-button:not(.collapsed) { color: var(--blue); background: #f5f6ff; box-shadow: none; }
.accordion-button:focus { box-shadow: 0 0 0 .2rem rgba(67,95,229,.12); }
.accordion-body { color: #68758a; font-size: 13px; }
.list-group-item { border-color: var(--line); color: #536178; font-size: 13px; }
.table { --bs-table-color: var(--ink-soft); font-size: 13px; }
.table thead th { color: #778297; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.badge-18 { display: inline-flex; align-items: center; gap: 7px; padding: 8px 11px; border: 1px solid #dce2fa; border-radius: 50px; color: var(--blue); background: #f1f3ff; font-size: 10px; font-weight: 800; letter-spacing: .04em; }
#charCount { font-variant-numeric: tabular-nums; }

.footer { position: relative; padding: 68px 0 23px !important; overflow: hidden; border-top: 0 !important; color: #fff; background: linear-gradient(135deg, #203b9a 0%, #2d50b8 57%, #3b63cb 100%) !important; }
.footer::before { position: absolute; top: -220px; right: -110px; width: 460px; height: 460px; border: 1px solid rgba(170,184,255,.14); border-radius: 50%; box-shadow: 0 0 0 28px rgba(170,184,255,.03), 0 0 0 65px rgba(170,184,255,.02); content: ''; pointer-events: none; }
.footer > .container { position: relative; z-index: 1; }
.footer-main { padding-bottom: 12px; }
.footer-brand-column { padding-right: clamp(20px, 5vw, 65px); }
.footer .footer-brand { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 19px; color: #fff; }
.footer .footer-mark { position: relative; display: grid; place-items: center; width: 45px; height: 45px; border: 1px solid rgba(170,184,255,.34); border-radius: 14px; color: #aab8ff; background: linear-gradient(145deg, rgba(170,184,255,.16), rgba(255,255,255,.035)); box-shadow: 0 8px 22px rgba(0,0,0,.16); font: 800 12px 'Manrope',sans-serif; letter-spacing: -.04em; }
.footer .footer-brand-name { display: flex; align-items: baseline; color: #fff; font: 800 20px 'Manrope',sans-serif; letter-spacing: -.06em; }
.footer .footer-brand-name > span { color: #aab8ff; }
.footer .footer-brand-name small { margin-left: 7px; color: #c8b8d4; font: 800 9px 'DM Sans',sans-serif; letter-spacing: .12em; }
.footer .footer-intro { max-width: 370px; margin-bottom: 20px; color: rgba(255,255,255,.66); font-size: 12px; line-height: 1.85; }
.footer .badge-18 { gap: 8px; padding: 8px 11px; border-color: rgba(170,184,255,.28); color: #c4cdfa; background: rgba(170,184,255,.1); font-size: 9px; letter-spacing: .035em; }
.footer .badge-18 > span { display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid rgba(170,184,255,.38); border-radius: 7px; font-size: 8px; }
.footer h6 { margin: 8px 0 17px; color: #f4eaf5; font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.footer-link-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(20px, 4vw, 58px); }
.footer-link-group ul { display: grid; grid-template-columns: 1fr; gap: 11px; }
.footer a { color: rgba(255,255,255,.62); font-size: 11px; transition: color .2s ease, transform .2s ease; }
.footer a:hover { color: #c4cdfa; }
.footer ul a { display: inline-flex; }
.footer ul a:hover { transform: translateX(3px); }
.footer hr { margin: 34px 0 17px; border-color: rgba(255,255,255,.14); opacity: 1; }
.footer .footer-bottom { display: flex; justify-content: space-between; gap: 15px; color: rgba(255,255,255,.44); font-size: 10px; }
.text-primary { color: var(--blue) !important; }

/* Administration */
.admin-nav { background: var(--ink) !important; }
.admin-nav .navbar-brand { color: #fff; }
.admin-nav .brand-name { color: #fff; }
.admin-nav .brand-name > span { color: #aab8ff; }
.admin-nav .brand-name small { color: #aeb9cd; }
.admin-nav .nav-link { color: #c4cde0 !important; }
.admin-nav .nav-link:hover { color: #fff !important; }
.admin-content { padding-top: 34px; padding-bottom: 76px; }
.admin-page-heading { display: flex; align-items: center; justify-content: space-between; gap: 25px; margin-bottom: 30px; }
.admin-page-heading h1 { margin: 0; font-size: clamp(28px, 4vw, 36px); font-weight: 800; }
.admin-page-heading p:not(.eyebrow) { margin: 8px 0 0; color: var(--muted); font-size: 12px; }
.admin-page-heading .btn { flex: 0 0 auto; padding: 12px 17px; font-size: 12px; }
.metric-card { position: relative; min-height: 142px; padding: 19px 20px; overflow: hidden; }
.metric-card::after { position: absolute; right: -13px; bottom: -27px; width: 88px; height: 88px; border: 1px solid #e9ecf9; border-radius: 50%; content: ''; }
.metric-new::after { border-color: #e8d9d0; }
.metric-review::after { border-color: #eaddb8; }
.metric-done::after { border-color: #cce4d4; }
.metric-label, .metric-note { display: block; color: var(--muted); font-size: 10px; font-weight: 700; }
.metric-value { display: block; margin: 8px 0 2px; color: var(--ink); font: 800 30px/1.1 'Manrope', 'Segoe UI', sans-serif; letter-spacing: -.06em; }
.metric-value small { color: var(--muted); font: 600 10px 'DM Sans', 'Segoe UI',sans-serif; letter-spacing: 0; }
.metric-new .metric-value { color: var(--blue); }
.metric-review .metric-value { color: #b1801a; }
.metric-done .metric-value { color: #3f865a; }
.admin-panel-head { display: flex; justify-content: space-between; align-items: end; margin: 34px 0 14px; }
.admin-panel-head .eyebrow { margin-bottom: 5px; font-size: 9px; }
.admin-panel-head h2 { margin: 0; font-size: 19px; font-weight: 800; }
.admin-table-panel { overflow: auto; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 7px 25px rgba(25,39,65,.045); }
.admin-table-panel .table { min-width: 650px; margin: 0; }
.admin-table-panel .table > :not(caption) > * > * { padding: 14px 16px; vertical-align: middle; }
.admin-table-panel thead th { border-bottom: 1px solid var(--line); background: #fafbfe; white-space: nowrap; }
.admin-table-panel tbody tr:last-child td { border-bottom: 0; }
.admin-filter-panel { align-items: center; padding: 14px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 7px 25px rgba(25,39,65,.045); }
.admin-filter-panel .btn { min-height: 46px; font-size: 12px; }
.admin-edit-wrap { max-width: 860px; }
.admin-form-panel { padding: clamp(22px, 4vw, 38px); border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: 0 10px 32px rgba(30,47,81,.05); }
.admin-nav .admin-nav-links { display: flex; align-items: center; flex-direction: row; flex-wrap: wrap; justify-content: flex-end; gap: 0 7px; }
.carousel-admin-layout { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); align-items: start; gap: 22px; }
.carousel-create-panel { min-width: 0; }
.carousel-create-panel .admin-panel-head, .carousel-admin-list > .admin-panel-head { align-items: center; margin: 0 0 12px; }
.carousel-admin-count, .carousel-admin-position { color: #89869a; font-size: 10px; font-weight: 700; white-space: nowrap; }
.carousel-admin-help { margin: 0 0 22px; color: var(--muted); font-size: 11px; line-height: 1.7; }
.carousel-admin-form .form-label { color: #39445a; font-size: 11px; font-weight: 700; }
.carousel-admin-form .form-control, .carousel-admin-form .form-select { min-height: 43px; font-size: 12px; }
.carousel-admin-form textarea.form-control { min-height: 90px; }
.carousel-admin-form .form-text { color: #8a92a1; font-size: 10px; }
.carousel-admin-cards { display: grid; gap: 13px; }
.carousel-admin-card { display: grid; grid-template-columns: minmax(120px, .72fr) minmax(0, 1fr); overflow: hidden; border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: 0 7px 24px rgba(30,47,81,.045); }
.carousel-admin-card > img { width: 100%; height: 100%; min-height: 230px; object-fit: cover; background: #eeeaf2; }
.carousel-admin-card-body { min-width: 0; padding: 16px; }
.carousel-admin-card-top { display: flex; align-items: center; justify-content: space-between; gap: 9px; }
.carousel-admin-card-top .badge { font-size: 9px; }
.carousel-admin-eyebrow { margin: 14px 0 4px; color: var(--blue); font-size: 8px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.carousel-admin-card h3 { margin: 0 0 6px; font-size: 15px; font-weight: 800; }
.carousel-admin-description { display: -webkit-box; overflow: hidden; margin: 0 0 13px; color: #758094; font-size: 10px; line-height: 1.65; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.carousel-order-form { display: flex; align-items: center; gap: 7px; margin-bottom: 10px; }
.carousel-order-form label { color: #758094; font-size: 9px; font-weight: 700; }
.carousel-order-form input { width: 62px; }
.carousel-order-form button, .carousel-admin-actions .btn { font-size: 9px; }
.carousel-admin-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.carousel-admin-empty { display: grid; justify-items: start; gap: 8px; padding: 26px; border: 1px dashed #d9d5e3; border-radius: 15px; color: #7a7289; background: rgba(255,255,255,.7); }
.carousel-admin-empty > span { color: #947cae; font-size: 25px; }
.carousel-admin-empty strong { color: var(--ink); font-size: 13px; }
.carousel-admin-empty p { margin: 0; font-size: 11px; }
.opportunity-actions { display: flex; align-items: center; gap: 6px; }
.opportunity-actions form { display: inline-flex; }
.opportunity-actions .btn { white-space: nowrap; }
.admin-login-container { display: grid; min-height: 68vh; place-items: center; padding-top: 45px; padding-bottom: 65px; }
.admin-login-panel { width: min(100%, 450px); padding: clamp(26px, 5vw, 44px); border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 20px 65px rgba(27,43,78,.1); }
.login-brand { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 32px; color: var(--ink); font: 800 15px 'Manrope','Segoe UI',sans-serif; }
.login-brand b { margin-left: 3px; color: var(--blue); font-size: 10px; }
.admin-login-panel .eyebrow { margin-bottom: 9px; }
.admin-login-panel h1 { margin-bottom: 8px; font-size: 27px; font-weight: 800; }
.login-intro { margin-bottom: 24px; color: var(--muted); font-size: 12px; }
.admin-login-panel .btn { min-height: 46px; margin-top: 4px; font-size: 12px; }
.legal-copy { color: #59677c; line-height: 1.8; }
.legal-panel, .contact-panel { padding: clamp(22px, 4vw, 40px); border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: 0 10px 32px rgba(30,47,81,.05); }
.legal-panel { font-size: 13px; }
.legal-panel p:last-child, .legal-panel ul:last-child { margin-bottom: 0; }
.legal-panel strong { color: var(--ink); }
.contact-wrap { max-width: 820px; }
.contact-panel { display: grid; gap: 4px; }
.contact-panel .btn { justify-self: start; padding: 12px 20px; }

@media (max-width: 991.98px) {
    .site-nav { top: 8px; width: calc(100% - 24px); min-height: 66px; margin-top: 10px; }
    .navbar-collapse { padding: 14px 0 18px; }
    .navbar-nav .nav-link.active::after { display: none; }
    .nav-cta-item { margin: 8px 0 0; }
    .nav-cta { display: inline-block; }
    .hero-frame { grid-template-columns: minmax(0, 1fr); min-height: 0; }
    .hero-copy { padding: clamp(36px, 6vw, 62px); }
    .hero-copy h1 { max-width: 760px; font-size: clamp(43px, 6.4vw, 62px); }
    .hero-frame-immersive { min-height: 650px; }
    .hero-frame-immersive .hero-copy { width: 86%; padding: 90px 42px 104px; }
    .hero-frame-immersive .hero-copy h1 { font-size: clamp(45px, 6.4vw, 62px); }
    .hero-proof-card { top: 18px; right: 18px; }
    .hero-carousel-controls { right: 18px; bottom: 18px; }
    .hero-art { padding-right: 23px; padding-left: 23px; }
    .hero-frame .hero-art { min-height: 470px; }
    .home-highlights { padding: 66px 0 70px; }
    .home-carousel-slide { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); min-height: 335px; }
    .home-carousel-copy { padding: 30px; }
    .home-carousel-copy h3 { font-size: clamp(25px, 3.2vw, 33px); }
    .benefits-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
    .benefit-card, .benefit-card:nth-child(4), .benefit-card:nth-child(5) { grid-column: auto; min-height: 210px; padding: 22px; }
    .benefit-card + .benefit-card { padding-left: 22px; border-left: 1px solid #e8e7f0; }
    .benefit-card:nth-child(5) { grid-column: 1 / -1; }
    .conditions-band { padding: 36px 0; }
    .conditions-inner { grid-template-columns: 42px minmax(0, 1fr); gap: 16px; padding: 28px; }
    .conditions-pay { grid-column: 2; }
    .carousel-admin-layout { grid-template-columns: 1fr; }
    .process-section { padding-top: 72px; padding-bottom: 78px; }
    .process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
    .process-grid::before { display: none; }
    .process-grid li { min-height: 245px; padding: 22px; }
    .process-grid li:last-child { grid-column: 1 / -1; width: calc(50% - 7px); justify-self: center; }
}
@media (max-width: 767.98px) {
    .home-hero { padding: 20px 0 22px; }
    .hero-frame { grid-template-columns: 1fr; border-radius: 20px; }
    .hero-copy { padding: 34px 23px 30px; }
    .hero-copy h1 { max-width: 100%; font-size: clamp(37px, 9.5vw, 52px); line-height: 1.06; }
    .hero-copy > .eyebrow { max-width: 100%; font-size: 9px; }
    .hero-frame-immersive { min-height: 710px; align-items: flex-start; }
    .hero-frame-immersive .hero-copy { width: 100%; padding: 112px 23px 124px; }
    .hero-frame-immersive .hero-copy h1 { font-size: clamp(38px, 10vw, 54px); line-height: 1.06; }
    .hero-frame-immersive .hero-lede { margin: 15px 0 19px; font-size: 14px; }
    .hero-frame-immersive .hero-assurance-group { gap: 9px; margin-top: 18px; }
    .hero-proof-card { top: 14px; right: 14px; max-width: calc(100% - 28px); padding: 9px 11px; }
    .hero-proof-mark { flex-basis: 36px; width: 36px; height: 36px; font-size: 15px; }
    .hero-carousel-controls { right: 12px; bottom: 12px; left: 12px; justify-content: center; gap: 7px; padding: 6px; }
    .hero-carousel-arrow { width: 32px; height: 32px; }
    .hero-carousel-toggle { min-height: 32px; padding: 0 9px; }
    .hero-lede { margin: 16px 0 21px; font-size: 14px; }
    .income-highlight { width: 100%; max-width: 340px; margin-bottom: 20px; }
    .hero-actions { align-items: stretch; flex-direction: column; gap: 13px; width: 100%; }
    .hero-actions .btn { width: 100%; text-align: center; }
    .hero-text-link { justify-content: center; min-height: 42px; }
    .hero-assurance-group { align-items: flex-start; flex-direction: column; gap: 10px; margin-top: 21px; }
    .hero-assurance { max-width: none; }
    .hero-frame .hero-art { min-height: 420px; padding: 20px 20px 17px; }
    .art-content { max-width: 100%; padding: 20px 0; }
    .home-artwork { min-height: 240px; }
    .home-artwork-card { max-width: min(300px, 100%); }
    .home-artwork-number { font-size: clamp(112px, 32vw, 160px); }
    .art-content h2 { font-size: 34px; }
    .art-stamp { top: 47px; right: 25px; width: 58px; height: 58px; font-size: 16px; }
    .principles-inner { justify-content: flex-start; flex-wrap: wrap; gap: 10px 14px; padding-top: 18px; padding-bottom: 18px; font-size: 10px; }
    .principles-inner i { width: 4px; height: 4px; }
    .home-highlights { padding: 59px 0 63px; }
    .highlights-heading { gap: 10px; margin-bottom: 22px; }
    .highlights-heading > p { max-width: 100% !important; }
    .home-carousel-slide { grid-template-columns: 1fr; min-height: 0; border-radius: 20px; }
    .home-carousel-media { grid-row: 1; min-height: 245px; }
    .home-carousel-copy { grid-row: 2; padding: 24px 21px 22px; }
    .home-carousel-copy .eyebrow { margin-bottom: 14px; }
    .home-carousel-copy h3 { font-size: clamp(25px, 7vw, 32px); }
    .home-carousel-bottom { gap: 10px; margin-top: 20px; }
    .home-carousel-bottom .btn { max-width: calc(100% - 86px); padding: 11px 12px; font-size: 10px; }
    .home-carousel-arrows button { width: 35px; height: 35px; }
    .home-carousel-indicators { padding-top: 15px; }
    .section { padding: 64px 0; }
    .section-heading { margin-bottom: 27px; }
    .section-heading-split { align-items: flex-start; flex-direction: column; gap: 12px; }
    .section-heading h2 { font-size: 34px; }
    .benefits-section { padding-top: 67px; padding-bottom: 62px; }
    .benefits-grid { grid-template-columns: 1fr; gap: 11px; }
    .benefit-card, .benefit-card:nth-child(4), .benefit-card:nth-child(5) { grid-column: auto; min-height: 0; padding: 20px; }
    .benefit-card + .benefit-card { padding-left: 20px; }
    .benefit-card h3 { margin-top: 24px; font-size: 16px; }
    .conditions-band { padding: 27px 0; }
    .conditions-inner { grid-template-columns: 1fr; gap: 16px; padding: 20px; }
    .conditions-icon { width: 38px; height: 38px; }
    .conditions-copy h2 { font-size: 21px; }
    .conditions-copy > p:not(.eyebrow) { font-size: 11px; }
    .conditions-pay { grid-column: auto; padding: 17px; }
    .conditions-pay strong { font-size: 28px; }
    .profiles-heading { gap: 15px; }
    .profiles-intro { max-width: none; }
    .profiles-section { padding-top: 66px; padding-bottom: 66px; }
    .profile-card { min-height: 0; padding: 0; }
    .profile-card-image { height: 180px; }
    .profile-card-body { padding: 17px 18px 18px; }
    .profile-card h3 { margin: 0 0 8px; }
    .category-admin-grid { grid-template-columns: 1fr; gap: 14px; }
    .category-admin-content { padding: 17px; }
    .process-section { padding-top: 62px; padding-bottom: 66px; }
    .process-heading { margin-bottom: 24px; }
    .process-heading > div > p:not(.eyebrow) { font-size: 12px; }
    .process-grid { grid-template-columns: 1fr; gap: 11px; }
    .process-grid li, .process-grid li:last-child { grid-column: auto; width: 100%; min-height: 0; padding: 20px; }
    .process-step { margin-bottom: 20px; }
    .process-grid h3 { font-size: 16px; }
    .process-card-note { margin-top: 15px; }
    .closing-cta { padding-bottom: 60px; }
    .closing-card { grid-template-columns: 1fr; gap: 25px; min-height: 0; padding: 32px 24px; border-radius: 21px; }
    .closing-card h2 { font-size: clamp(30px, 8vw, 39px); }
    .closing-card .closing-copy > p:not(.eyebrow) { font-size: 12px; }
    .closing-trust { margin-top: 18px; }
    .closing-actions { width: 100%; padding: 18px; }
    .closing-orbit { top: -120px; right: -190px; width: 320px; height: 320px; font-size: 78px; }
    .footer { padding-top: 49px !important; }
    .footer-brand-column { padding-right: 12px; }
    .footer-links-column { padding-top: 4px; }
    .footer-link-groups { gap: 22px; }
    .footer-link-group ul { gap: 10px; }
    .footer .footer-bottom { align-items: flex-start; flex-direction: column; gap: 7px; }
    .page-hero { padding: 40px 0 32px; }
    .page-hero h1 { font-size: 37px; }
    .application-form { padding: 22px 17px; }
    .application-hero { padding: 44px 0 35px; }
    .application-hero::after { top: 15px; right: 12px; font-size: 118px; }
    .application-form-head { flex-direction: column; gap: 12px; padding-bottom: 20px; }
    .application-block { padding: 22px 0; }
    .application-submit { align-items: stretch; flex-direction: column; }
    .application-submit .btn { width: 100%; }
    .application-submit small { text-align: center; }
    .contact-panel { padding: 22px 17px; }
    .admin-content { padding-top: 25px; padding-bottom: 55px; }
    .admin-nav .admin-nav-links { flex: 1 0 100%; justify-content: flex-start; gap: 0 4px; margin-top: 8px; padding-bottom: 8px; }
    .admin-nav .admin-nav-links .nav-link { padding: .35rem .5rem; font-size: 11px; }
    .admin-page-heading { align-items: flex-start; flex-direction: column; gap: 17px; margin-bottom: 22px; }
    .admin-page-heading .btn { width: 100%; }
    .metric-card { min-height: 128px; padding: 15px; }
    .metric-value { font-size: 27px; }
    .admin-panel-head { align-items: flex-start; }
    .admin-panel-head > .hero-text-link { font-size: 11px; white-space: nowrap; }
    .admin-filter-panel > div { width: 100%; }
    .opportunity-actions { align-items: flex-start; flex-direction: column; }
    .admin-form-panel { padding: 22px 17px; }
}
@media (max-width: 575.98px) {
    .hero-frame-immersive { min-height: max(700px, 90svh); }
    .hero-frame-immersive .hero-copy { padding-right: 19px; padding-left: 19px; }
    .hero-frame-immersive .hero-copy h1 { font-size: clamp(36px, 10vw, 48px); }
    .hero-frame-immersive .hero-assurance { font-size: 10px; }
    .hero-carousel-controls { right: 10px; left: 10px; }
    .footer-link-groups { grid-template-columns: 1fr; gap: 25px; }
    .footer-link-group ul { gap: 9px; }
    .footer { padding-top: 42px !important; }
    .carousel-admin-card { grid-template-columns: 1fr; }
    .carousel-admin-card > img { height: 190px; min-height: 0; }
    .carousel-admin-card-body { padding: 14px; }
}
@media (max-width: 370px) {
    .hero-frame-immersive { min-height: max(710px, 92svh); }
    .hero-frame-immersive .hero-copy { padding-right: 16px; padding-left: 16px; }
    .hero-proof-card { gap: 8px; }
    .hero-proof-card strong { font-size: 10px; }
    .hero-proof-card small { font-size: 8px; }
    .hero-carousel-toggle > span:last-child { display: none; }
    .hero-carousel-controls { gap: 5px; }
}
@media (max-width: 767.98px) and (max-height: 520px) {
    .hero-frame-immersive { min-height: 650px; }
    .hero-frame-immersive .hero-copy { padding-top: 96px; padding-bottom: 112px; }
}
@keyframes home-frame-in { from { opacity: 0; transform: translateY(16px) scale(.99); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes home-copy-in { from { opacity: 0; transform: translateY(15px); } to { opacity: 1; transform: translateY(0); } }
@keyframes home-orbit-drift { 0%, 100% { transform: translate3d(0,0,0) rotate(0); opacity: .68; } 50% { transform: translate3d(-9px,12px,0) rotate(7deg); opacity: 1; } }
@keyframes home-stamp-float { 0%, 100% { transform: translateY(0) rotate(10deg); } 50% { transform: translateY(-7px) rotate(14deg); } }
@keyframes home-ring-breathe { 0%, 100% { opacity: .55; scale: .97; } 50% { opacity: 1; scale: 1.035; } }
@keyframes home-ring-spin { from { rotate: 0deg; } to { rotate: 360deg; } }
@keyframes home-number-glow { 0%, 100% { text-shadow: 0 14px 45px rgba(15,9,26,.24); } 50% { text-shadow: 0 15px 55px rgba(202,177,255,.25), 0 0 22px rgba(235,190,164,.18); } }
@keyframes home-glow-breathe { 0%, 100% { opacity: .55; transform: translate(30px,-3px) rotate(12deg) scale(.97); } 50% { opacity: 1; transform: translate(30px,-10px) rotate(15deg) scale(1.04); } }
@keyframes home-card-float { 0%, 100% { translate: 0 0; } 50% { translate: 0 -5px; } }
@keyframes home-background-drift { from { background-position: 0% 50%; } to { background-position: 100% 50%; } }
@keyframes home-button-sheen { 0%, 58%, 100% { left: -70%; } 76% { left: 135%; } }
@keyframes hero-image-settle { from { transform: scale(1.08); } to { transform: scale(1); } }
@keyframes hero-light-breathe { from { opacity: .55; transform: translate3d(1%,0,0); } to { opacity: 1; transform: translate3d(-1%,1%,0); } }
@keyframes hero-card-enter { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
.home-motion-ready .conditions-inner,
.home-motion-ready .benefit-card,
.home-motion-ready .profiles-grid > div,
.home-motion-ready .process-grid li,
.home-motion-ready .closing-card { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.75,.25,1); }
.home-motion-ready .conditions-inner.is-visible,
.home-motion-ready .benefit-card.is-visible,
.home-motion-ready .profiles-grid > div.is-visible,
.home-motion-ready .process-grid li.is-visible,
.home-motion-ready .closing-card.is-visible { opacity: 1; transform: translateY(0); }
.home-motion-ready .benefit-card.is-visible:hover { transform: translateY(-6px); }
.home-motion-ready .process-grid li.is-visible:hover { transform: translateY(-5px); }
.home-motion-ready .benefits-grid .benefit-card:nth-child(2), .home-motion-ready .profiles-grid > div:nth-child(2) { transition-delay: .07s; }
.home-motion-ready .benefits-grid .benefit-card:nth-child(3), .home-motion-ready .profiles-grid > div:nth-child(3) { transition-delay: .14s; }
.home-motion-ready .benefits-grid .benefit-card:nth-child(4) { transition-delay: .21s; }
.home-motion-ready .benefits-grid .benefit-card:nth-child(5) { transition-delay: .28s; }
.home-motion-ready .profiles-grid > div:nth-child(4) { transition-delay: .21s; }
.home-motion-ready .profiles-grid > div:nth-child(5) { transition-delay: .28s; }
.home-motion-ready .profiles-grid > div:nth-child(6) { transition-delay: .35s; }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Opportunities page — premium responsive presentation */
.opportunities-hero { position: relative; isolation: isolate; overflow: hidden; padding: clamp(66px, 9vw, 112px) 0 clamp(58px, 7vw, 84px); color: #fff; background: linear-gradient(125deg,#172a62 0%,#2546a5 50%,#4268dc 100%); }
.opportunities-hero::before { position:absolute; inset:0; z-index:-1; background: radial-gradient(ellipse at 78% 16%,rgba(137,169,255,.32),transparent 35%), linear-gradient(90deg,rgba(12,31,84,.14),transparent 65%); content:''; }
.opportunities-hero-inner { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(255px,.62fr); align-items:center; gap:clamp(36px,9vw,125px); }
.opportunities-hero-copy { position:relative; z-index:1; max-width:690px; animation: opportunity-rise .7s cubic-bezier(.2,.75,.25,1) both; }
.opportunities-hero .eyebrow { display:flex; align-items:center; gap:9px; margin-bottom:19px; color:#d6e1ff; font-size:10px; font-weight:800; letter-spacing:.16em; }
.opportunities-live-dot { width:7px; height:7px; border-radius:50%; background:#99f0cf; box-shadow:0 0 0 5px rgba(153,240,207,.14); animation: opportunity-pulse 2.3s ease-in-out infinite; }
.opportunities-age { padding:4px 7px; border:1px solid rgba(255,255,255,.27); border-radius:6px; color:#fff; font-size:9px; letter-spacing:.08em; }
.opportunities-hero h1 { margin:0; color:#fff; font:800 clamp(42px,6.5vw,76px)/.99 'Manrope',sans-serif; letter-spacing:-.065em; }
.opportunities-hero h1 span { color:#bcd0ff; }
.opportunities-hero-lede { max-width:525px; margin:22px 0 27px; color:rgba(241,245,255,.78); font-size:clamp(14px,1.5vw,16px); line-height:1.8; }
.opportunities-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; }
.opportunities-hero-actions .btn { display:inline-flex; align-items:center; gap:18px; padding:13px 17px; border:1px solid rgba(255,255,255,.25); border-radius:10px; color:#18347f; background:#fff; font-size:12px; font-weight:800; box-shadow:0 10px 30px rgba(10,25,75,.2); transition:transform .2s ease,box-shadow .2s ease; }
.opportunities-hero-actions .btn:hover { transform:translateY(-2px); box-shadow:0 15px 34px rgba(10,25,75,.28); }
.opportunities-hero-actions .btn span { color:#435fe5; font-size:16px; }
.opportunities-hero-note { display:inline-flex; align-items:center; gap:8px; color:rgba(241,245,255,.75); font-size:10px; font-weight:600; }
.opportunities-hero-note span { display:grid; place-items:center; width:19px; height:19px; border:1px solid rgba(255,255,255,.28); border-radius:50%; color:#bcd0ff; }
.opportunities-hero-card { position:relative; z-index:1; display:flex; flex-direction:column; min-height:245px; justify-content:space-between; padding:23px; overflow:hidden; border:1px solid rgba(255,255,255,.27); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.07)); box-shadow:0 25px 70px rgba(12,28,80,.19); backdrop-filter:blur(14px); animation:opportunity-rise .8s .12s cubic-bezier(.2,.75,.25,1) both; }
.opportunities-card-orbit { position:absolute; top:-105px; right:-73px; width:245px; height:245px; border:1px solid rgba(255,255,255,.2); border-radius:50%; box-shadow:0 0 0 24px rgba(255,255,255,.035),0 0 0 51px rgba(255,255,255,.025); }
.opportunities-card-label { position:relative; z-index:1; color:rgba(239,244,255,.76); font-size:9px; font-weight:800; letter-spacing:.16em; }
.opportunities-card-label span { padding:0 4px; color:#bbceff; }
.opportunities-card-number { position:relative; z-index:1; color:#fff; font:800 clamp(44px,5vw,62px)/1 'Manrope',sans-serif; letter-spacing:-.07em; }
.opportunities-card-number small { color:#d5e0ff; font:600 12px 'DM Sans',sans-serif; letter-spacing:0; }
.opportunities-card-caption { position:relative; z-index:1; max-width:230px; color:rgba(239,244,255,.77); font-size:11px; line-height:1.7; }
.opportunities-card-foot { position:relative; z-index:1; display:flex; align-items:center; gap:8px; padding-top:14px; border-top:1px solid rgba(255,255,255,.16); color:#dbe5ff; font-size:9px; font-weight:700; }
.opportunities-card-foot span { color:#a9c2ff; }
.opportunities-hero-orb { position:absolute; z-index:-1; border:1px solid rgba(255,255,255,.08); border-radius:50%; pointer-events:none; }
.opportunities-hero-orb-one { right:-20%; bottom:-230px; width:570px; height:570px; box-shadow:0 0 0 45px rgba(255,255,255,.018),0 0 0 95px rgba(255,255,255,.014); }
.opportunities-hero-orb-two { top:-250px; right:28%; width:380px; height:380px; }
.opportunities-main { padding:clamp(50px,7vw,82px) 0 clamp(65px,8vw,100px); background:linear-gradient(180deg,#f7f9ff 0%,#fff 370px); }
.opportunities-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.opportunities-section-heading .eyebrow { margin:0 0 9px; color:#526fe0; font-size:9px; font-weight:800; letter-spacing:.16em; }
.opportunities-section-heading h2 { margin:0; color:#17243a; font:800 clamp(27px,3.8vw,39px)/1.14 'Manrope',sans-serif; letter-spacing:-.055em; }
.opportunities-section-heading h2 span { color:#435fe5; }
.opportunities-section-intro { margin:9px 0 0; color:#65738a; font-size:12px; line-height:1.7; }
.opportunities-count { display:flex; align-items:baseline; gap:6px; flex:0 0 auto; margin:0 0 4px; padding:9px 13px; border:1px solid #e2e8fb; border-radius:50px; color:#63718b; background:#fff; font-size:10px; }
.opportunities-count strong { color:#3555c8; font-size:14px; }
.opportunity-filters { display:grid; grid-template-columns:minmax(220px,1.45fr) repeat(3,minmax(145px,1fr)); align-items:end; gap:12px; margin-bottom:28px; padding:16px; border:1px solid #e5eaf7; border-radius:16px; background:rgba(255,255,255,.91); box-shadow:0 12px 35px rgba(36,58,108,.055); }
.opportunity-search-wrap,.opportunity-filter-field { position:relative; min-width:0; }
.opportunity-search-wrap label,.opportunity-filter-field label { display:block; margin:0 0 7px 2px; color:#596780; font-size:9px; font-weight:800; letter-spacing:.03em; }
.opportunity-search-wrap .form-control,.opportunity-filter-field .form-select { min-height:44px; border-color:#e1e6f1; border-radius:9px; color:#263650; background-color:#fff; font-size:11px; box-shadow:none; }
.opportunity-search-wrap .form-control { padding-left:38px; }
.opportunity-search-wrap .form-control:focus,.opportunity-filter-field .form-select:focus { border-color:#8ba0f0; box-shadow:0 0 0 3px rgba(67,95,229,.09); }
.opportunity-search-icon { position:absolute; z-index:2; bottom:8px; left:12px; color:#7184cb; font-size:20px; line-height:1; pointer-events:none; }
.opportunities-grid { align-items:stretch; }
.opportunity-card { animation:opportunity-rise .55s calc(var(--card-index,0)*.07s) both; }
.opportunity-premium-card { height:100%; overflow:hidden; border:1px solid #e5eaf3; border-radius:17px; background:#fff; box-shadow:0 8px 25px rgba(27,43,78,.045); transition:transform .28s cubic-bezier(.2,.75,.25,1),box-shadow .28s ease,border-color .25s ease; }
.opportunity-card:hover .opportunity-premium-card { transform:translateY(-6px); border-color:#cbd6fb; box-shadow:0 20px 45px rgba(42,67,145,.12); }
.opportunity-visual { position:relative; display:flex; min-height:176px; align-items:flex-start; justify-content:space-between; padding:17px 19px; overflow:hidden; border-radius:0; color:#fff; background:radial-gradient(ellipse at 82% 20%,rgba(129,157,255,.68),transparent 34%),radial-gradient(ellipse at 5% 100%,rgba(111,154,255,.35),transparent 38%),linear-gradient(135deg,#182b62,#2a4ba4 62%,#4169d4); }
.opportunity-visual::before,.opportunity-visual::after { position:absolute; content:''; border:1px solid rgba(255,255,255,.15); border-radius:50%; pointer-events:none; }
.opportunity-visual::before { top:-148px; right:-63px; width:260px; height:260px; }
.opportunity-visual::after { top:-124px; right:-43px; width:210px; height:210px; border-color:rgba(188,208,255,.4); }
.opportunity-visual-label { position:relative; z-index:1; color:rgba(255,255,255,.78); font-size:8px; font-weight:800; letter-spacing:.15em; }
.opportunity-visual-label span { color:#b9cdff; }
.opportunity-visual-symbol { position:absolute; top:50%; left:50%; color:rgba(255,255,255,.92); font:800 66px/.9 'Manrope',sans-serif; letter-spacing:-.12em; transform:translate(-50%,-50%); text-shadow:0 8px 24px rgba(10,25,75,.18); transition:transform .4s cubic-bezier(.2,.75,.25,1); }
.opportunity-card:hover .opportunity-visual-symbol { transform:translate(-50%,-50%) scale(1.08) rotate(-4deg); }
.opportunity-visual-symbol span { color:#adc3ff; }
.opportunity-visual-tag { position:absolute; z-index:1; bottom:16px; left:17px; max-width:72%; padding:6px 10px; overflow:hidden; border:1px solid rgba(255,255,255,.25); border-radius:50px; color:#fff; background:rgba(255,255,255,.12); font-size:9px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; backdrop-filter:blur(8px); }
.opportunity-visual-index { position:absolute; right:17px; bottom:16px; color:rgba(255,255,255,.64); font:700 10px 'Manrope',sans-serif; letter-spacing:.08em; }
.opportunity-card-body { display:flex; height:calc(100% - 176px); min-height:330px; flex-direction:column; padding:21px; }
.opportunity-card-kicker { display:flex; align-items:center; gap:7px; margin:0 0 10px; color:#6179d4; font-size:8px; font-weight:800; letter-spacing:.11em; }
.opportunity-card-kicker span { color:#69b897; font-size:8px; }
.opportunity-card h3 { margin:0 0 9px; color:#1d2d49; font:800 18px/1.3 'Manrope',sans-serif; letter-spacing:-.035em; }
.opportunity-card-description { display:-webkit-box; min-height:60px; overflow:hidden; margin:0 0 14px; color:#68758a; font-size:11px; line-height:1.75; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.opportunity-meta { display:grid; gap:10px; margin:0 0 17px; padding:14px 0 0; border-top:1px solid #edf0f6; }
.opportunity-meta > div { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.opportunity-meta dt { color:#7a879b; font-size:9px; font-weight:600; }
.opportunity-meta dd { display:flex; align-items:center; gap:6px; margin:0; color:#33435e; font-size:9px; font-weight:700; text-align:right; }
.opportunity-meta dd span { color:#5874db; font-size:12px; }
.opportunity-card .opportunity-apply { display:flex; min-height:43px; align-items:center; justify-content:space-between; gap:12px; width:100%; margin-top:auto; padding:10px 13px; border:0; border-radius:9px; color:#fff; background:linear-gradient(105deg,#3d5fda,#5277eb); font-size:10px; font-weight:800; box-shadow:0 7px 16px rgba(67,95,229,.17); transition:transform .2s ease,box-shadow .2s ease; }
.opportunity-apply span { font-size:16px; transition:transform .2s ease; }
.opportunity-apply:hover { transform:translateY(-1px); background:linear-gradient(105deg,#304fc3,#496be0); box-shadow:0 10px 20px rgba(67,95,229,.25); }
.opportunity-apply:hover span { transform:translateX(3px); }
.opportunities-empty { display:flex; min-height:190px; align-items:center; flex-direction:column; justify-content:center; gap:8px; margin-top:18px; padding:28px; border:1px dashed #d5def5; border-radius:16px; color:#52617c; background:rgba(255,255,255,.75); text-align:center; }
.opportunities-empty > span { color:#536fda; font-size:25px; }
.opportunities-empty strong { color:#223452; font-size:14px; }
.opportunities-empty small { color:#758196; font-size:11px; }
.opportunities-alert { margin-top:22px; }
@keyframes opportunity-rise { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
@keyframes opportunity-pulse { 0%,100% { box-shadow:0 0 0 5px rgba(153,240,207,.14); } 50% { box-shadow:0 0 0 9px rgba(153,240,207,.04); } }
@media (max-width: 991.98px) { .opportunities-hero-inner { grid-template-columns:minmax(0,1fr) minmax(220px,.7fr); gap:36px; } .opportunities-hero h1 { font-size:clamp(44px,7.5vw,66px); } .opportunity-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 767.98px) { .opportunities-hero { padding:60px 0 54px; } .opportunities-hero-inner { grid-template-columns:1fr; gap:29px; } .opportunities-hero-copy { max-width:600px; } .opportunities-hero h1 { font-size:clamp(43px,10vw,62px); } .opportunities-hero-lede { max-width:470px; margin:17px 0 22px; font-size:14px; } .opportunities-hero-card { min-height:190px; max-width:440px; padding:19px; } .opportunities-card-number { font-size:48px; } .opportunities-hero-orb-one { right:-55%; } .opportunities-section-heading { align-items:flex-start; } .opportunities-section-heading h2 { font-size:clamp(27px,6.5vw,36px); } .opportunities-main { padding-top:51px; } .opportunity-card-body { min-height:310px; } }
@media (max-width: 575.98px) { .opportunities-hero { padding:49px 0 46px; } .opportunities-hero .eyebrow { font-size:8px; letter-spacing:.12em; } .opportunities-hero h1 { font-size:clamp(40px,11vw,53px); } .opportunities-hero-actions { align-items:flex-start; flex-direction:column; gap:14px; } .opportunities-hero-actions .btn { width:100%; justify-content:space-between; } .opportunities-hero-card { min-height:177px; } .opportunities-section-heading { flex-direction:column; gap:13px; margin-bottom:20px; } .opportunities-count { margin:0; } .opportunity-filters { grid-template-columns:1fr; gap:10px; padding:13px; border-radius:13px; } .opportunities-grid { --bs-gutter-y:1rem; } .opportunity-visual { min-height:155px; } .opportunity-card-body { height:calc(100% - 155px); min-height:300px; padding:18px; } .opportunity-card-description { min-height:0; } }
@media (prefers-reduced-motion: reduce) { .opportunities-hero-copy,.opportunities-hero-card,.opportunity-card { animation:none; } .opportunities-live-dot { animation:none; } .opportunity-premium-card,.opportunity-visual-symbol,.opportunity-apply,.opportunity-apply span { transition:none; } }

/* FAQ page — premium responsive presentation */
.faq-hero { position:relative; isolation:isolate; overflow:hidden; padding:clamp(62px,8vw,102px) 0 clamp(58px,7vw,82px); color:#fff; background:linear-gradient(125deg,#172a62 0%,#2546a5 51%,#4268dc 100%); }
.faq-hero::before { position:absolute; inset:0; z-index:-1; background:radial-gradient(ellipse at 78% 14%,rgba(143,172,255,.29),transparent 34%),linear-gradient(90deg,rgba(11,30,82,.14),transparent 70%); content:''; }
.faq-hero-inner { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(255px,.58fr); align-items:center; gap:clamp(38px,9vw,125px); }
.faq-hero-copy { position:relative; z-index:1; max-width:710px; animation:faq-rise .7s cubic-bezier(.2,.75,.25,1) both; }
.faq-hero .eyebrow { display:flex; align-items:center; gap:10px; margin-bottom:19px; color:#d6e1ff; font-size:10px; font-weight:800; letter-spacing:.16em; }
.faq-hero-dot { width:7px; height:7px; border-radius:50%; background:#99f0cf; box-shadow:0 0 0 5px rgba(153,240,207,.14); animation:faq-pulse 2.4s ease-in-out infinite; }
.faq-age { padding:4px 7px; border:1px solid rgba(255,255,255,.27); border-radius:6px; color:#fff; font-size:9px; letter-spacing:.08em; }
.faq-hero h1 { margin:0; color:#fff; font:800 clamp(39px,6vw,70px)/1.02 'Manrope',sans-serif; letter-spacing:-.065em; }
.faq-hero h1 span { color:#bcd0ff; }
.faq-hero-lede { max-width:520px; margin:20px 0 24px; color:rgba(241,245,255,.78); font-size:clamp(14px,1.5vw,16px); line-height:1.8; }
.faq-hero-link { display:inline-flex; align-items:center; gap:12px; color:#fff; font-size:11px; font-weight:800; text-decoration:none; }
.faq-hero-link span { display:grid; place-items:center; width:27px; height:27px; border:1px solid rgba(255,255,255,.28); border-radius:50%; color:#c6d5ff; transition:transform .2s ease,background .2s ease; }
.faq-hero-link:hover { color:#fff; }
.faq-hero-link:hover span { transform:translateY(3px); background:rgba(255,255,255,.12); }
.faq-hero-aside { position:relative; z-index:1; display:flex; min-height:250px; flex-direction:column; align-items:flex-start; justify-content:flex-end; padding:22px; overflow:hidden; border:1px solid rgba(255,255,255,.25); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.07)); box-shadow:0 25px 70px rgba(12,28,80,.18); backdrop-filter:blur(14px); animation:faq-rise .8s .12s cubic-bezier(.2,.75,.25,1) both; }
.faq-hero-aside-symbol { position:absolute; top:-46px; right:9px; color:rgba(255,255,255,.12); font:800 230px/.95 'Manrope',sans-serif; letter-spacing:-.1em; transform:rotate(8deg); }
.faq-hero-aside-kicker { position:relative; color:rgba(239,244,255,.72); font-size:8px; font-weight:800; letter-spacing:.15em; }
.faq-hero-aside strong { position:relative; max-width:240px; margin-top:23px; color:#fff; font:800 23px/1.2 'Manrope',sans-serif; letter-spacing:-.045em; }
.faq-hero-aside p { position:relative; max-width:230px; margin:10px 0 20px; color:rgba(239,244,255,.75); font-size:11px; line-height:1.7; }
.faq-hero-aside-foot { position:relative; display:flex; width:100%; align-items:center; gap:8px; padding-top:13px; border-top:1px solid rgba(255,255,255,.17); color:#dbe5ff; font-size:9px; font-weight:700; }
.faq-hero-aside-foot span { display:grid; place-items:center; width:19px; height:19px; border-radius:50%; color:#12357f; background:#b9f0dc; }
.faq-hero-orbit { position:absolute; z-index:-1; right:-16%; bottom:-320px; width:690px; height:690px; border:1px solid rgba(255,255,255,.08); border-radius:50%; box-shadow:0 0 0 45px rgba(255,255,255,.018),0 0 0 95px rgba(255,255,255,.012); }
.faq-main { padding:clamp(54px,8vw,94px) 0 clamp(60px,8vw,92px); background:linear-gradient(180deg,#f7f9ff 0%,#fff 460px); }
.faq-layout { display:grid; grid-template-columns:minmax(210px,.68fr) minmax(0,1.55fr); align-items:start; gap:clamp(36px,7vw,96px); margin-bottom:clamp(55px,8vw,90px); }
.faq-intro { position:sticky; top:28px; padding-top:13px; animation:faq-rise .65s .08s both; }
.faq-intro > .eyebrow,.faq-bottom-cta .eyebrow { margin:0 0 12px; color:#526fe0; font-size:9px; font-weight:800; letter-spacing:.16em; }
.faq-intro h2 { margin:0; color:#17243a; font:800 clamp(32px,4vw,46px)/1.08 'Manrope',sans-serif; letter-spacing:-.06em; }
.faq-intro h2 span { color:#435fe5; }
.faq-intro > p:not(.eyebrow) { max-width:300px; margin:16px 0 17px; color:#68758a; font-size:12px; line-height:1.8; }
.faq-contact-link { display:inline-flex; align-items:center; gap:8px; color:#3454c4; font-size:11px; font-weight:800; text-decoration:none; }
.faq-contact-link span { transition:transform .2s ease; }
.faq-contact-link:hover { color:#243f9c; }
.faq-contact-link:hover span { transform:translate(2px,-2px); }
.faq-note { display:flex; align-items:flex-start; gap:10px; max-width:290px; margin-top:34px; padding:13px; border:1px solid #e2e9fa; border-radius:12px; background:#fff; box-shadow:0 7px 22px rgba(37,59,109,.035); }
.faq-note > span { display:grid; flex:0 0 auto; place-items:center; width:21px; height:21px; border-radius:7px; color:#4261d0; background:#edf1ff; font:700 11px 'Manrope',sans-serif; }
.faq-note p { margin:1px 0 0; color:#64728a; font-size:9px; line-height:1.7; }
.faq-list-column { min-width:0; }
.faq-tools { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:7px 14px; margin-bottom:15px; }
.faq-tools label { grid-column:1/-1; color:#53627b; font-size:9px; font-weight:800; }
.faq-search-box { position:relative; }
.faq-search-box > span { position:absolute; top:50%; left:13px; color:#7184cb; font-size:20px; line-height:1; transform:translateY(-54%); pointer-events:none; }
.faq-search-box input { width:100%; min-height:45px; padding:10px 14px 10px 39px; border:1px solid #e1e6f1; border-radius:10px; outline:0; color:#263650; background:#fff; font:400 11px 'DM Sans',sans-serif; box-shadow:0 5px 15px rgba(36,58,108,.025); transition:border-color .2s ease,box-shadow .2s ease; }
.faq-search-box input:focus { border-color:#8ba0f0; box-shadow:0 0 0 3px rgba(67,95,229,.09); }
.faq-tools > p { margin:0 0 2px; color:#7b879b; font-size:9px; white-space:nowrap; }
.faq-accordion { display:grid; gap:10px; }
.faq-item { overflow:hidden; border:1px solid #e4eaf4 !important; border-radius:13px !important; background:#fff; box-shadow:0 6px 19px rgba(27,43,78,.035); animation:faq-rise .5s calc(var(--faq-index,0)*.06s) both; transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.faq-item:hover { border-color:#d2dcf6 !important; box-shadow:0 10px 24px rgba(38,61,122,.07); }
.faq-item:has(.accordion-button:not(.collapsed)) { border-color:#cfdbfb !important; box-shadow:0 10px 28px rgba(47,74,151,.07); }
.faq-item .accordion-header { margin:0; }
.faq-item .accordion-button { display:flex; align-items:center; gap:13px; min-height:65px; padding:15px 18px; color:#20304b; background:#fff; font:700 13px/1.4 'Manrope',sans-serif; box-shadow:none; }
.faq-item .accordion-button:not(.collapsed) { color:#2849b5; background:linear-gradient(90deg,#f3f6ff,#fff); }
.faq-item .accordion-button::after { width:13px; height:13px; background-size:13px; filter:hue-rotate(20deg) saturate(1.4); }
.faq-item .accordion-button:focus { position:relative; z-index:2; box-shadow:inset 0 0 0 2px rgba(67,95,229,.25); }
.faq-question-index { display:grid; flex:0 0 auto; place-items:center; width:29px; height:29px; border:1px solid #e2e8fb; border-radius:8px; color:#5871d2; background:#f5f7ff; font:800 9px 'DM Sans',sans-serif; letter-spacing:.04em; }
.faq-item .accordion-button:not(.collapsed) .faq-question-index { border-color:#d4defb; color:#fff; background:#526fe0; }
.faq-item .accordion-body { max-width:680px; padding:0 56px 20px 60px; color:#627087; font-size:11px; line-height:1.85; }
.faq-no-results { display:flex; min-height:155px; align-items:center; flex-direction:column; justify-content:center; gap:7px; margin-top:14px; border:1px dashed #d5def5; border-radius:14px; color:#52617c; background:rgba(255,255,255,.72); text-align:center; }
.faq-no-results[hidden] { display:none; }
.faq-no-results > span { color:#536fda; font-size:24px; }
.faq-no-results strong { color:#223452; font-size:13px; }
.faq-no-results small { color:#758196; font-size:10px; }
.faq-bottom-cta { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:clamp(23px,4vw,36px); border:1px solid #d8e2fb; border-radius:19px; background:radial-gradient(ellipse at 94% 12%,rgba(147,171,255,.2),transparent 34%),linear-gradient(120deg,#eef3ff,#f9fbff); box-shadow:0 15px 42px rgba(42,67,145,.065); }
.faq-bottom-cta .eyebrow { margin-bottom:9px; }
.faq-bottom-cta h2 { margin:0; color:#1c2d4b; font:800 clamp(20px,2.6vw,27px)/1.2 'Manrope',sans-serif; letter-spacing:-.045em; }
.faq-bottom-cta > div:first-child > p:last-child { margin:8px 0 0; color:#68758a; font-size:10px; line-height:1.7; }
.faq-bottom-actions { display:flex; flex:0 0 auto; align-items:center; flex-direction:column; gap:10px; }
.faq-bottom-actions .btn { display:flex; min-width:205px; align-items:center; justify-content:space-between; gap:17px; padding:11px 14px; border:0; border-radius:9px; background:linear-gradient(105deg,#3d5fda,#5277eb); font-size:10px; font-weight:800; box-shadow:0 7px 16px rgba(67,95,229,.16); }
.faq-bottom-actions .btn span { font-size:15px; transition:transform .2s ease; }
.faq-bottom-actions .btn:hover { background:linear-gradient(105deg,#304fc3,#496be0); box-shadow:0 10px 20px rgba(67,95,229,.23); }
.faq-bottom-actions .btn:hover span { transform:translateX(3px); }
.faq-bottom-text-link { color:#5369b3; font-size:9px; font-weight:800; text-decoration:none; }
.faq-bottom-text-link:hover { color:#304bb0; }
@keyframes faq-rise { from { opacity:0; transform:translateY(15px); } to { opacity:1; transform:translateY(0); } }
@keyframes faq-pulse { 0%,100% { box-shadow:0 0 0 5px rgba(153,240,207,.14); } 50% { box-shadow:0 0 0 9px rgba(153,240,207,.04); } }
@media (max-width: 991.98px) { .faq-hero-inner { grid-template-columns:minmax(0,1fr) minmax(230px,.62fr); gap:34px; } .faq-hero h1 { font-size:clamp(40px,6.6vw,60px); } .faq-layout { grid-template-columns:minmax(180px,.58fr) minmax(0,1.4fr); gap:34px; } }
@media (max-width: 767.98px) { .faq-hero { padding:55px 0 50px; } .faq-hero-inner { grid-template-columns:1fr; gap:27px; } .faq-hero h1 { font-size:clamp(39px,9vw,58px); } .faq-hero-lede { max-width:530px; margin:16px 0 19px; font-size:14px; } .faq-hero-aside { min-height:200px; max-width:480px; } .faq-hero-aside-symbol { right:20px; font-size:210px; } .faq-layout { grid-template-columns:1fr; gap:28px; margin-bottom:58px; } .faq-intro { position:static; padding:0; } .faq-intro h2 br { display:none; } .faq-intro > p:not(.eyebrow) { max-width:500px; margin:12px 0; } .faq-note { margin-top:17px; } .faq-bottom-cta { align-items:flex-start; flex-direction:column; } .faq-bottom-actions { align-items:flex-start; flex-direction:row; flex-wrap:wrap; }
}
@media (max-width: 575.98px) { .faq-hero { padding:47px 0 43px; } .faq-hero .eyebrow { font-size:8px; letter-spacing:.12em; } .faq-hero h1 { font-size:clamp(36px,10.5vw,49px); } .faq-hero-aside { min-height:185px; padding:18px; } .faq-hero-aside strong { margin-top:19px; font-size:21px; } .faq-main { padding-top:45px; } .faq-intro h2 { font-size:34px; } .faq-tools { grid-template-columns:1fr; gap:7px; } .faq-tools label { grid-column:auto; } .faq-tools > p { justify-self:start; } .faq-item .accordion-button { min-height:61px; gap:10px; padding:13px 12px; font-size:12px; } .faq-question-index { width:26px; height:26px; } .faq-item .accordion-body { padding:0 17px 17px 49px; font-size:10px; } .faq-bottom-cta { gap:19px; padding:20px; } .faq-bottom-actions { width:100%; align-items:stretch; flex-direction:column; } .faq-bottom-actions .btn { width:100%; } .faq-bottom-text-link { align-self:center; padding:4px; }
}
@media (prefers-reduced-motion: reduce) { .faq-hero-copy,.faq-hero-aside,.faq-intro,.faq-item { animation:none; } .faq-hero-dot { animation:none; } .faq-hero-link span,.faq-contact-link span,.faq-item,.faq-bottom-actions .btn,.faq-bottom-actions .btn span { transition:none; } }

/* Contact page — premium responsive presentation */
.contact-hero { position:relative; isolation:isolate; overflow:hidden; padding:clamp(62px,8vw,100px) 0 clamp(58px,7vw,82px); color:#fff; background:linear-gradient(125deg,#172a62 0%,#2546a5 51%,#4268dc 100%); }
.contact-hero::before { position:absolute; inset:0; z-index:-1; background:radial-gradient(ellipse at 77% 16%,rgba(143,172,255,.3),transparent 34%),linear-gradient(90deg,rgba(11,30,82,.14),transparent 70%); content:''; }
.contact-hero-inner { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(255px,.58fr); align-items:center; gap:clamp(38px,9vw,125px); }
.contact-hero-copy { position:relative; z-index:1; max-width:700px; animation:contact-rise .7s cubic-bezier(.2,.75,.25,1) both; }
.contact-hero .eyebrow { display:flex; align-items:center; gap:10px; margin-bottom:19px; color:#d6e1ff; font-size:10px; font-weight:800; letter-spacing:.16em; }
.contact-hero-dot { width:7px; height:7px; border-radius:50%; background:#99f0cf; box-shadow:0 0 0 5px rgba(153,240,207,.14); animation:contact-pulse 2.4s ease-in-out infinite; }
.contact-age { padding:4px 7px; border:1px solid rgba(255,255,255,.27); border-radius:6px; color:#fff; font-size:9px; letter-spacing:.08em; }
.contact-hero h1 { margin:0; color:#fff; font:800 clamp(42px,6.3vw,72px)/1 'Manrope',sans-serif; letter-spacing:-.065em; }
.contact-hero h1 span { color:#bcd0ff; }
.contact-hero-lede { max-width:525px; margin:20px 0 24px; color:rgba(241,245,255,.79); font-size:clamp(14px,1.5vw,16px); line-height:1.8; }
.contact-hero-link { display:inline-flex; align-items:center; gap:12px; color:#fff; font-size:11px; font-weight:800; text-decoration:none; }
.contact-hero-link:hover { color:#fff; }
.contact-hero-link span { display:grid; place-items:center; width:27px; height:27px; border:1px solid rgba(255,255,255,.28); border-radius:50%; color:#c6d5ff; transition:transform .2s ease,background .2s ease; }
.contact-hero-link:hover span { transform:translateY(3px); background:rgba(255,255,255,.12); }
.contact-hero-card { position:relative; z-index:1; display:flex; min-height:250px; flex-direction:column; align-items:flex-start; justify-content:flex-end; padding:22px; overflow:hidden; border:1px solid rgba(255,255,255,.25); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.07)); box-shadow:0 25px 70px rgba(12,28,80,.18); backdrop-filter:blur(14px); animation:contact-rise .8s .12s cubic-bezier(.2,.75,.25,1) both; }
.contact-hero-card-orbit { position:absolute; top:-106px; right:-75px; width:250px; height:250px; border:1px solid rgba(255,255,255,.2); border-radius:50%; box-shadow:0 0 0 24px rgba(255,255,255,.035),0 0 0 51px rgba(255,255,255,.025); }
.contact-hero-card-symbol { position:absolute; top:26px; right:24px; color:rgba(255,255,255,.82); font:800 22px 'Manrope',sans-serif; letter-spacing:-.08em; }
.contact-hero-card-kicker { position:relative; color:rgba(239,244,255,.72); font-size:8px; font-weight:800; letter-spacing:.15em; }
.contact-hero-card strong { position:relative; max-width:235px; margin-top:23px; color:#fff; font:800 23px/1.2 'Manrope',sans-serif; letter-spacing:-.045em; }
.contact-hero-card > p { position:relative; max-width:245px; margin:10px 0 20px; color:rgba(239,244,255,.76); font-size:11px; line-height:1.7; }
.contact-hero-card-foot { position:relative; display:flex; width:100%; align-items:center; gap:8px; padding-top:13px; border-top:1px solid rgba(255,255,255,.17); color:#dbe5ff; font-size:9px; font-weight:700; }
.contact-hero-card-foot > span { display:grid; place-items:center; width:19px; height:19px; border-radius:50%; color:#12357f; background:#b9f0dc; }
.contact-hero-orbit { position:absolute; z-index:-1; right:-17%; bottom:-315px; width:690px; height:690px; border:1px solid rgba(255,255,255,.08); border-radius:50%; box-shadow:0 0 0 45px rgba(255,255,255,.018),0 0 0 95px rgba(255,255,255,.012); }
.contact-main { padding:clamp(55px,8vw,92px) 0 clamp(65px,8vw,100px); background:linear-gradient(180deg,#f7f9ff 0%,#fff 490px); }
.contact-layout { display:grid; grid-template-columns:minmax(220px,.68fr) minmax(0,1.55fr); align-items:start; gap:clamp(38px,7vw,92px); }
.contact-aside { padding-top:13px; animation:contact-rise .65s .08s both; }
.contact-aside > .eyebrow,.contact-form-heading .eyebrow,.contact-success .eyebrow { margin:0 0 12px; color:#526fe0; font-size:9px; font-weight:800; letter-spacing:.16em; }
.contact-aside h2 { margin:0; color:#17243a; font:800 clamp(34px,4vw,46px)/1.06 'Manrope',sans-serif; letter-spacing:-.06em; }
.contact-aside h2 span { color:#435fe5; }
.contact-aside > p:not(.eyebrow) { max-width:310px; margin:15px 0 22px; color:#68758a; font-size:12px; line-height:1.8; }
.contact-aside-points { display:grid; gap:17px; }
.contact-aside-points > div { display:flex; align-items:flex-start; gap:11px; }
.contact-aside-points > div > span { display:grid; flex:0 0 auto; place-items:center; width:27px; height:27px; border:1px solid #e0e7fb; border-radius:8px; color:#4d69d1; background:#f1f4ff; font:800 8px 'Manrope',sans-serif; }
.contact-aside-points p { display:grid; gap:3px; margin:2px 0 0; }
.contact-aside-points strong { color:#34435d; font-size:10px; }
.contact-aside-points small { color:#7a879b; font-size:9px; line-height:1.5; }
.contact-faq-link { display:inline-flex; align-items:center; gap:8px; margin-top:23px; color:#3454c4; font-size:10px; font-weight:800; text-decoration:none; }
.contact-faq-link:hover { color:#243f9c; }
.contact-faq-link span { transition:transform .2s ease; }
.contact-faq-link:hover span { transform:translate(2px,-2px); }
.contact-form-column { min-width:0; padding:clamp(21px,4vw,34px); border:1px solid #e3e9f4; border-radius:19px; background:rgba(255,255,255,.94); box-shadow:0 18px 48px rgba(30,47,81,.065); animation:contact-rise .7s .13s both; }
.contact-form-heading { margin-bottom:22px; }
.contact-form-heading .eyebrow { margin-bottom:9px; }
.contact-form-heading h2,.contact-success h2 { margin:0; color:#1d2d49; font:800 clamp(20px,2.8vw,27px)/1.25 'Manrope',sans-serif; letter-spacing:-.045em; }
.contact-form-heading > p:last-child { margin:8px 0 0; color:#748095; font-size:10px; }
.contact-errors { margin:0 0 18px; padding:13px 15px; border:1px solid #f2d2d5; border-radius:11px; color:#7c3540; background:#fff7f7; font-size:11px; }
.contact-errors strong { display:block; margin-bottom:5px; }
.contact-errors ul { margin:0; padding-left:18px; line-height:1.7; }
.contact-premium-form { display:grid; gap:16px; }
.contact-form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.contact-field { display:grid; align-content:start; gap:7px; min-width:0; }
.contact-field label { margin:0; color:#46556d; font-size:10px; font-weight:800; }
.contact-field label span { color:#526fe0; }
.contact-field .form-control { min-height:45px; border-color:#e0e6f0; border-radius:9px; color:#263650; background:#fcfdff; font-size:11px; box-shadow:none; transition:border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.contact-field textarea.form-control { min-height:148px; resize:vertical; line-height:1.7; }
.contact-field .form-control::placeholder { color:#a0aabc; }
.contact-field .form-control:hover { border-color:#cbd5ee; }
.contact-field .form-control:focus { border-color:#8397ed; background:#fff; box-shadow:0 0 0 3px rgba(67,95,229,.09); }
.contact-field > small { justify-self:end; color:#8a95a8; font-size:8px; }
.contact-form-submit { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:2px; padding-top:16px; border-top:1px solid #edf0f6; }
.contact-form-submit > p { display:flex; align-items:flex-start; gap:7px; margin:0; color:#7a879b; font-size:9px; line-height:1.6; }
.contact-form-submit > p span { color:#5672d8; font-size:12px; }
.contact-form-submit .btn { display:flex; min-height:43px; align-items:center; justify-content:space-between; gap:22px; padding:10px 14px; border:0; border-radius:9px; color:#fff; background:linear-gradient(105deg,#3d5fda,#5277eb); font-size:10px; font-weight:800; box-shadow:0 7px 16px rgba(67,95,229,.17); transition:transform .2s ease,box-shadow .2s ease; }
.contact-form-submit .btn:hover { transform:translateY(-1px); background:linear-gradient(105deg,#304fc3,#496be0); box-shadow:0 10px 20px rgba(67,95,229,.24); }
.contact-form-submit .btn span { font-size:15px; transition:transform .2s ease; }
.contact-form-submit .btn:hover span { transform:translateX(3px); }
.contact-success { display:flex; min-height:340px; align-items:flex-start; flex-direction:column; justify-content:center; padding:10px; animation:contact-rise .55s ease both; }
.contact-success-mark { display:grid; place-items:center; width:45px; height:45px; margin-bottom:21px; border:1px solid #cde9db; border-radius:14px; color:#277b55; background:#effaf4; font-size:20px; }
.contact-success .eyebrow { margin-bottom:8px; }
.contact-success > p:not(.eyebrow) { max-width:420px; margin:11px 0 18px; color:#69768b; font-size:12px; line-height:1.8; }
.contact-success-link { display:inline-flex; align-items:center; gap:8px; color:#3454c4; font-size:10px; font-weight:800; text-decoration:none; }
.contact-success-link:hover { color:#243f9c; }
.contact-success-link span { transition:transform .2s ease; }
.contact-success-link:hover span { transform:translateX(3px); }
@keyframes contact-rise { from { opacity:0; transform:translateY(15px); } to { opacity:1; transform:translateY(0); } }
@keyframes contact-pulse { 0%,100% { box-shadow:0 0 0 5px rgba(153,240,207,.14); } 50% { box-shadow:0 0 0 9px rgba(153,240,207,.04); } }
@media (max-width: 991.98px) { .contact-hero-inner { grid-template-columns:minmax(0,1fr) minmax(225px,.62fr); gap:34px; } .contact-hero h1 { font-size:clamp(40px,6.7vw,61px); } .contact-layout { grid-template-columns:minmax(190px,.6fr) minmax(0,1.35fr); gap:32px; } }
@media (max-width: 767.98px) { .contact-hero { padding:54px 0 50px; } .contact-hero-inner { grid-template-columns:1fr; gap:27px; } .contact-hero h1 { font-size:clamp(42px,9vw,60px); } .contact-hero-lede { max-width:520px; margin:17px 0 20px; font-size:14px; } .contact-hero-card { min-height:204px; max-width:470px; } .contact-layout { grid-template-columns:1fr; gap:27px; } .contact-aside { padding:0; } .contact-aside h2 br { display:none; } .contact-aside > p:not(.eyebrow) { max-width:540px; margin:11px 0 17px; } .contact-aside-points { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; } .contact-aside-points > div { gap:8px; } .contact-aside-points p { gap:4px; } .contact-faq-link { margin-top:16px; } }
@media (max-width: 575.98px) { .contact-hero { padding:46px 0 43px; } .contact-hero .eyebrow { font-size:8px; letter-spacing:.12em; } .contact-hero h1 { font-size:clamp(39px,10.5vw,52px); } .contact-hero-card { min-height:190px; padding:18px; } .contact-hero-card strong { font-size:21px; } .contact-aside h2 { font-size:35px; } .contact-aside-points { grid-template-columns:1fr; gap:13px; } .contact-form-column { padding:20px 16px; border-radius:15px; } .contact-form-row { grid-template-columns:1fr; gap:16px; } .contact-premium-form { gap:14px; } .contact-field textarea.form-control { min-height:135px; } .contact-form-submit { align-items:stretch; flex-direction:column; } .contact-form-submit .btn { width:100%; } .contact-success { min-height:290px; } }
@media (prefers-reduced-motion: reduce) { .contact-hero-copy,.contact-hero-card,.contact-aside,.contact-form-column,.contact-success { animation:none; } .contact-hero-dot { animation:none; } .contact-hero-link span,.contact-faq-link span,.contact-field .form-control,.contact-form-submit .btn,.contact-form-submit .btn span,.contact-success-link span { transition:none; } }

/* Application page — premium responsive presentation */
.page-hero.application-hero { position:relative; isolation:isolate; overflow:hidden; padding:clamp(55px,7vw,88px) 0 clamp(54px,6.5vw,76px); color:#fff; background:linear-gradient(125deg,#172a62 0%,#2546a5 51%,#4268dc 100%); }
.page-hero.application-hero::before { position:absolute; inset:0; z-index:-1; background:radial-gradient(ellipse at 79% 15%,rgba(143,172,255,.3),transparent 34%),linear-gradient(90deg,rgba(11,30,82,.14),transparent 70%); content:''; }
.page-hero.application-hero::after { content:none; }
.application-hero-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(255px,.58fr); align-items:center; gap:clamp(38px,8vw,110px); }
.application-hero-copy { position:relative; z-index:1; max-width:680px; animation:application-premium-rise .7s cubic-bezier(.2,.75,.25,1) both; }
.application-hero .eyebrow { display:flex; align-items:center; gap:10px; margin-bottom:18px; color:#d6e1ff; font-size:9px; font-weight:800; letter-spacing:.15em; }
.application-hero .eyebrow-dot { flex:0 0 auto; }
.application-hero-age { padding:4px 7px; border:1px solid rgba(255,255,255,.27); border-radius:6px; color:#fff; font-size:9px; letter-spacing:.08em; }
.application-hero h1 { max-width:680px; margin:0; color:#fff; font:800 clamp(41px,6.3vw,70px)/1.02 'Manrope',sans-serif; letter-spacing:-.065em; }
.application-hero h1 span { color:#bcd0ff; }
.application-hero p:not(.eyebrow) { max-width:530px; margin:19px 0 22px; color:rgba(241,245,255,.79); font-size:clamp(13px,1.45vw,15px); line-height:1.8; }
.application-hero-link { display:inline-flex; align-items:center; gap:12px; color:#fff; font-size:10px; font-weight:800; text-decoration:none; }
.application-hero-link:hover { color:#fff; }
.application-hero-link span { display:grid; place-items:center; width:27px; height:27px; border:1px solid rgba(255,255,255,.28); border-radius:50%; color:#c6d5ff; transition:transform .2s ease,background .2s ease; }
.application-hero-link:hover span { transform:translateY(3px); background:rgba(255,255,255,.12); }
.application-hero-aside { position:relative; z-index:1; display:flex; min-height:260px; flex-direction:column; justify-content:flex-end; padding:22px; overflow:hidden; border:1px solid rgba(255,255,255,.25); border-radius:19px; background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.07)); box-shadow:0 25px 70px rgba(12,28,80,.18); backdrop-filter:blur(14px); animation:application-premium-rise .8s .12s cubic-bezier(.2,.75,.25,1) both; }
.application-hero-aside-orbit { position:absolute; top:-112px; right:-81px; width:255px; height:255px; border:1px solid rgba(255,255,255,.2); border-radius:50%; box-shadow:0 0 0 25px rgba(255,255,255,.035),0 0 0 52px rgba(255,255,255,.025); }
.application-hero-aside-kicker { position:relative; color:rgba(239,244,255,.72); font-size:8px; font-weight:800; letter-spacing:.15em; }
.application-hero-aside > strong { position:relative; max-width:250px; margin:22px 0 16px; color:#fff; font:800 22px/1.22 'Manrope',sans-serif; letter-spacing:-.04em; }
.application-hero-points { position:relative; display:grid; gap:9px; margin-bottom:17px; }
.application-hero-points > span { display:flex; align-items:center; gap:8px; color:rgba(239,244,255,.82); font-size:9px; }
.application-hero-points i { display:grid; place-items:center; width:17px; height:17px; border:1px solid rgba(189,239,219,.42); border-radius:50%; color:#b9f0dc; font-size:9px; font-style:normal; }
.application-hero-aside-foot { position:relative; display:flex; align-items:center; gap:8px; padding-top:12px; border-top:1px solid rgba(255,255,255,.17); color:#dbe5ff; font-size:8px; font-weight:700; }
.application-hero-aside-foot > span { color:#b9cdff; }
.application-hero-orbit { position:absolute; z-index:-1; right:-17%; bottom:-320px; width:690px; height:690px; border:1px solid rgba(255,255,255,.08); border-radius:50%; box-shadow:0 0 0 45px rgba(255,255,255,.018),0 0 0 95px rgba(255,255,255,.012); }
.application-wrap { max-width:1000px; padding-top:clamp(34px,5vw,60px); padding-bottom:clamp(60px,8vw,90px); }
.application-form { border-color:#e1e8f5; border-radius:20px; box-shadow:0 20px 58px rgba(30,47,81,.075); }
.application-form::before { position:absolute; top:0; left:0; width:100%; height:3px; background:linear-gradient(90deg,#405fda,#9eb4ff 56%,#d7e1ff); content:''; }
.application-form-head { align-items:center; padding-bottom:23px; }
.application-form-head h2 { color:#1d2d49; font-size:clamp(24px,3.2vw,32px); }
.application-form-head p:not(.eyebrow) { margin-top:8px; color:#748095; font-size:11px; }
.application-progress { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:14px; padding:18px 0 21px; border-bottom:1px solid #edf0f6; }
.application-progress > div { height:4px; overflow:hidden; border-radius:9px; background:#e9edf7; }
.application-progress > div span { display:block; width:35%; height:100%; border-radius:inherit; background:linear-gradient(90deg,#435fe5,#8298ff); box-shadow:0 0 10px rgba(67,95,229,.22); }
.application-progress small { display:flex; align-items:center; gap:7px; color:#79869a; font-size:8px; white-space:nowrap; }
.application-progress small strong { color:#4d66ca; font-size:8px; }
.application-cost-notice { display:flex; flex-direction:column; gap:5px; margin:21px 0 0; padding:15px 17px; border:1px solid #dce6ff; border-radius:12px; color:#445575; background:linear-gradient(120deg,#f5f8ff,#fff); font-size:11px; line-height:1.6; }
.application-cost-notice strong { color:#243eaa; font-size:11px; }
.opportunity-terms-strip { padding:17px 0; border-top:1px solid #e8edf8; border-bottom:1px solid #e8edf8; background:#f7f9ff; }
.opportunity-terms-strip > .container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.opportunity-terms-strip > .container > div { display:flex; align-items:center; gap:12px; min-width:0; padding:12px 16px; border:1px solid #e6ebf6; border-radius:12px; background:#fff; }
.opportunity-terms-strip > .container > div > span { display:grid; flex:0 0 34px; width:34px; height:34px; place-items:center; border-radius:10px; color:#435fe5; background:#edf1ff; font-weight:800; }
.opportunity-terms-strip p { display:flex; flex-direction:column; gap:3px; margin:0; color:#2d3e5c; font-size:11px; }
.opportunity-terms-strip small { color:#6b7890; font-size:10px; }
.conditions-fees-note { margin-top:13px !important; padding-top:12px; border-top:1px solid rgba(80,100,145,.16); font-size:12px !important; line-height:1.65 !important; }
.admin-email-page { max-width:1050px; }
.admin-email-safety { display:flex; flex-direction:column; gap:6px; margin:18px 0; padding:17px 19px; border:1px solid #dce6ff; border-radius:13px; color:#50617e; background:#f6f8ff; font-size:12px; line-height:1.55; }
.admin-email-safety strong { color:#263b76; font-size:14px; }
.admin-email-form { border:1px solid #e5eaf3; border-radius:16px; box-shadow:0 14px 42px rgba(25,45,91,.055); }
.admin-email-form .form-label { color:#3a4963; font-size:12px; font-weight:700; }
.admin-email-form .form-control { min-height:44px; font-size:13px; }
.admin-email-form textarea.form-control { min-height:110px; }
.admin-email-consent { padding:14px; border:1px solid #e3e9f3; border-radius:10px; background:#fafbfe; }
.admin-email-consent .form-check-label { color:#495974; font-size:12px; line-height:1.55; }
@media (max-width: 575.98px) { .opportunity-terms-strip > .container { grid-template-columns:1fr; gap:9px; } .opportunity-terms-strip > .container > div { padding:11px 12px; } .application-cost-notice { margin-top:17px; padding:13px; font-size:10px; } .conditions-fees-note { font-size:11px !important; } }
.application-progress small [data-step-label] { transition:color .2s ease,transform .2s ease; }
.application-progress small [data-step-label].is-active { color:#243eaa; transform:translateY(-1px); }
.application-progress > div span { transition:width .4s cubic-bezier(.2,.8,.2,1); }
.application-step[hidden] { display:none !important; }
.application-step-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:25px; padding-top:19px; border-top:1px solid #edf0f6; }
.application-step-actions > span { color:#748198; font-size:10px; }
.application-step-actions .btn { border-radius:10px; font-size:11px; font-weight:700; }
.application-step-actions .btn-outline-primary { border-color:#dbe3f5; color:#435fe5; }
.application-step-actions .btn-outline-primary:hover { color:#fff; background:#435fe5; }
.application-progress small i { width:16px; height:1px; background:#dce2ef; }
.application-block { padding:27px 0; animation:application-premium-rise .55s both; }
.application-block:nth-of-type(2) { animation-delay:.08s; }
.application-block:nth-of-type(3) { animation-delay:.15s; }
.application-block-title { align-items:center; margin-bottom:19px; }
.application-block-title > span { flex-basis:34px; width:34px; height:34px; border:1px solid #e0e7fb; border-radius:11px; background:linear-gradient(145deg,#f3f6ff,#eaf0ff); }
.application-block-title h3 { color:#263752; font-size:14px; }
.application-block-title p { margin-top:4px; font-size:10px; }
.application-form .form-label { margin-bottom:1px; color:#46556d; font-size:10px; }
.application-form .form-control,.application-form .form-select { min-height:47px; border-color:#e0e6f0; border-radius:9px; color:#263650; background-color:#fcfdff; font-size:11px; box-shadow:none; }
.application-form textarea.form-control { min-height:105px; }
.application-form .form-control::placeholder { color:#a0aabc; }
.application-form .form-control:focus,.application-form .form-select:focus { border-color:#8397ed; background-color:#fff; box-shadow:0 0 0 3px rgba(67,95,229,.09); }
.application-form .form-control:hover,.application-form .form-select:hover { border-color:#cbd5ee; }
.application-form .form-text { color:#7a879b; font-size:9px; }
.application-form .form-check { border-color:#e5eaf3; background:linear-gradient(100deg,#fbfcff,#fff); transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.application-form .form-check:focus-within { border-color:#aab9ef; box-shadow:0 0 0 3px rgba(67,95,229,.08); }
.application-form .form-check-input { cursor:pointer; }
.application-form .form-check-input:checked { border-color:#435fe5; background-color:#435fe5; }
.application-form .form-check-label { color:#536178; font-size:10px; line-height:1.65; }
.application-form .form-check-label a { color:#405fd0; font-weight:700; }
.application-secure { border-color:#dce5fb; color:#4861bc; background:#f4f7ff; font-size:9px; }
.application-privacy-note { border-color:#dce5fb; border-radius:11px; color:#53627b; background:linear-gradient(110deg,#f2f6ff,#fafbff); }
.application-privacy-note p { font-size:10px; line-height:1.75; }
.application-submit { padding-top:18px; border-top:1px solid #edf0f6; }
.application-submit .btn { display:inline-flex; align-items:center; justify-content:space-between; gap:22px; min-height:48px; padding:12px 17px; border:0; border-radius:10px; background:linear-gradient(105deg,#3d5fda,#5277eb); font-size:11px; font-weight:800; box-shadow:0 8px 18px rgba(67,95,229,.18); transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease; }
.application-submit .btn:not(:disabled):hover { transform:translateY(-2px); background:linear-gradient(105deg,#304fc3,#496be0); box-shadow:0 12px 24px rgba(67,95,229,.26); }
.application-submit .btn span { padding:0; font-size:16px; }
.application-submit small { color:#7b879a; font-size:9px; }
.application-error { border-color:#f2d2d5; border-radius:11px; color:#7c3540; background:#fff7f7; font-size:11px; }
.application-success { align-items:flex-start; max-width:900px; margin:55px auto 80px; padding:clamp(24px,5vw,42px); border-color:#cce8d9; border-radius:18px; background:radial-gradient(ellipse at 100% 0%,rgba(168,224,194,.16),transparent 42%),#f5fcf7; box-shadow:0 16px 40px rgba(42,105,72,.07); animation:application-premium-rise .55s ease both; }
.application-success .success-mark { width:42px; height:42px; border-radius:13px; background:#409569; }
.application-success .eyebrow { color:#32815a; font-weight:800; letter-spacing:.12em; }
.application-success a { display:inline-flex; align-items:center; gap:8px; margin-top:12px; color:#365cae; font-size:10px; font-weight:800; text-decoration:none; }
.application-success a span { transition:transform .2s ease; }
.application-success a:hover span { transform:translateX(3px); }
@keyframes application-premium-rise { from { opacity:0; transform:translateY(15px); } to { opacity:1; transform:translateY(0); } }
@media (max-width: 991.98px) { .application-hero-layout { grid-template-columns:minmax(0,1fr) minmax(235px,.62fr); gap:34px; } .application-hero h1 { font-size:clamp(40px,6.5vw,60px); } .application-wrap { max-width:850px; } }
@media (max-width: 767.98px) { .page-hero.application-hero { padding:52px 0 48px; } .application-hero-layout { grid-template-columns:1fr; gap:25px; } .application-hero h1 { font-size:clamp(41px,9vw,58px); } .application-hero p:not(.eyebrow) { max-width:540px; margin:16px 0 19px; font-size:14px; } .application-hero-aside { min-height:220px; max-width:490px; } .application-wrap { padding-top:34px; } .application-form-head { align-items:flex-start; } }
@media (max-width: 575.98px) { .page-hero.application-hero { padding:45px 0 41px; } .application-hero .eyebrow { font-size:8px; letter-spacing:.12em; } .application-hero h1 { font-size:clamp(38px,10vw,51px); } .application-hero-aside { min-height:215px; padding:19px; } .application-form { padding:21px 16px; border-radius:15px; } .application-form-head { gap:13px; } .application-secure { padding:7px 9px; } .application-progress { grid-template-columns:1fr; gap:9px; padding:16px 0; } .application-progress small { justify-content:space-between; font-size:7px; } .application-progress small i { flex:0 0 12px; } .application-block { padding:22px 0; } .application-block-title { gap:10px; } .application-block-title p { line-height:1.55; } .application-privacy-note { gap:8px; padding:12px; } .application-privacy-note p { font-size:9px; } .application-submit { align-items:stretch; flex-direction:column; gap:10px; } .application-submit .btn { width:100%; } .application-submit small { text-align:center; } .application-success { gap:12px; margin:35px auto 55px; padding:22px 17px; font-size:12px; } }
@media (prefers-reduced-motion: reduce) { .application-hero-copy,.application-hero-aside,.application-block,.application-success { animation:none; } .application-hero-link span,.application-success a span,.application-submit .btn,.application-submit .btn span { transition:none; } }

/* Homepage refinement — blue editorial system, responsive rhythm and polish */
.home-hero { padding:clamp(18px,3vw,34px) 0 clamp(22px,3.5vw,40px); background:linear-gradient(180deg,#f2f5ff 0%,#fff 100%); }
.hero-frame-immersive { min-height:clamp(610px,76svh,770px); border-color:#263b76; background:#162858; box-shadow:0 32px 90px rgba(28,55,132,.2),0 3px 12px rgba(29,54,118,.1); }
.hero-frame-immersive .hero-background-overlay { background:linear-gradient(90deg,rgba(13,29,72,.95) 0%,rgba(19,38,91,.84) 49%,rgba(25,46,104,.4) 100%),linear-gradient(0deg,rgba(12,27,66,.56),transparent 58%); }
.hero-frame-immersive .hero-background-overlay::after { background:radial-gradient(ellipse at 78% 18%,rgba(110,145,255,.3),transparent 34%); }
.hero-frame-immersive .hero-copy { width:min(780px,73%); }
.hero-frame-immersive .hero-copy h1 span { color:#b8cbff; }
.hero-proof-card { border-color:rgba(197,214,255,.3); background:rgba(21,39,91,.62); box-shadow:0 12px 35px rgba(7,18,53,.23); }
.hero-proof-card:hover { border-color:rgba(211,225,255,.56); background:rgba(29,52,116,.78); }
.hero-proof-mark { border-color:rgba(162,187,255,.66); background:rgba(67,95,229,.12); }
.hero-proof-mark span { color:#b8cbff; }
.hero-carousel-controls { border-color:rgba(202,218,255,.24); background:rgba(20,38,88,.72); }
.hero-carousel-indicators button.active { border-color:#b8cbff; background:#b8cbff; }
.hero-carousel-arrow:focus-visible,.hero-carousel-toggle:focus-visible,.hero-actions a:focus-visible,.profile-card:focus-visible,.hero-text-link:focus-visible { outline:3px solid #9db6ff; outline-offset:4px; }
.hero-assurance-group { row-gap:13px; }
.principles-strip { border-color:#e5eaf6; background:linear-gradient(90deg,#f8faff,#fff 50%,#f8faff); }
.home-highlights { background:linear-gradient(180deg,#f5f7ff 0%,#fff 100%); }
.home-carousel-slide { border-color:#e2e8f5; box-shadow:0 20px 56px rgba(35,57,117,.09); }
.home-carousel-description { color:#5f6f87; }
.home-carousel-media { background:#e8edff; }
.home-carousel-media::after { background:linear-gradient(90deg,rgba(24,43,99,.08),transparent 24%),linear-gradient(0deg,rgba(24,43,99,.14),transparent 45%); }
.home-carousel-toggle { color:#66748b; }
.home-carousel-toggle:hover { color:#304bb0; }
.benefits-section { background:linear-gradient(180deg,#f5f7ff 0%,#fff 100%); }
.benefit-card { border-color:#e4e9f5; box-shadow:0 10px 30px rgba(35,57,117,.045); }
.benefit-card + .benefit-card { border-left-color:#e4e9f5; }
.benefit-card:hover { border-color:#cbd7fb; box-shadow:0 20px 45px rgba(43,67,140,.1); }
.benefit-arrow { border-color:#e3e8f4; color:#73819a; }
.conditions-band { background:linear-gradient(135deg,#eff3ff,#f9fbff 58%,#edf2ff); }
.conditions-inner { border-color:rgba(186,204,246,.8); box-shadow:0 20px 52px rgba(43,65,128,.1); }
.conditions-pay { border-color:#d6e0fa; background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(240,244,255,.93)); }
.conditions-pay strong { color:#20335e; }
.conditions-pay p { color:#5f6f87; }
.profiles-section { background:linear-gradient(180deg,rgba(235,241,255,.93) 0%,rgba(247,249,255,.97) 53%,#f5f7ff 100%),url('../images/categories/default-hetero.svg') right 4vw top 30px / min(46vw,560px) auto no-repeat; }
.profiles-heading { margin-bottom:clamp(24px,3.5vw,36px); }
.profile-card { border-color:#dfe6f4; box-shadow:0 9px 27px rgba(35,57,117,.06); }
.profile-card:hover { box-shadow:0 22px 48px rgba(43,67,140,.14); }
.profile-card-image { background:#e9eeff; }
.profile-card-body { padding:20px 21px 20px; }
.profile-discover { color:#586983; }
.profile-rule { background:linear-gradient(90deg,#3759d1,#7994ff 68%,#c8d5ff); }
.process-section { background:linear-gradient(180deg,#f5f7ff 0%,#fff 100%); }
.process-section::before { border-color:rgba(67,95,229,.12); box-shadow:0 0 0 30px rgba(67,95,229,.035),0 0 0 65px rgba(67,95,229,.022); }
.process-grid li { border-color:#e1e7f3; box-shadow:0 12px 35px rgba(35,57,117,.05); }
.process-grid li:hover { border-color:#cfdbf8; box-shadow:0 20px 44px rgba(43,67,140,.1); }
.process-grid h3 { color:#203150; }
.process-grid p { color:#5f6f87; }
.process-step-label,.process-card-note { color:#62718a; }
.closing-cta { background:linear-gradient(180deg,#f5f7ff 0%,#edf2ff 100%); }
.closing-card { border-color:rgba(255,255,255,.18); background:linear-gradient(115deg,#1b347f 0%,#2b4eaf 55%,#3c62ce 100%); box-shadow:0 26px 70px rgba(34,61,139,.23); }
.closing-card::before { background:radial-gradient(ellipse at 89% 12%,rgba(170,194,255,.26),transparent 30%),radial-gradient(ellipse at 3% 100%,rgba(67,95,229,.28),transparent 38%); }
.closing-card h2 span,.closing-secondary-link span { color:#b8cbff; }
.closing-actions { border-color:rgba(224,233,255,.2); background:rgba(16,37,103,.28); }
.closing-card .btn-light { color:#1e367d; }
.closing-card .btn-light:hover { color:#1b347f; background:#eaf0ff; }
.closing-card .closing-copy > p:not(.eyebrow) { color:rgba(245,248,255,.82); }
@media (max-width: 991.98px) { .hero-frame-immersive { min-height:clamp(620px,80svh,730px); } .hero-frame-immersive .hero-copy { width:78%; padding-right:38px; padding-left:38px; } .hero-proof-card { top:20px; right:20px; } }
@media (max-width: 767.98px) { .home-hero { padding:16px 0 22px; } .hero-frame-immersive { min-height:710px; border-radius:21px; } .hero-frame-immersive .hero-copy { width:100%; padding:112px 24px 126px; } .hero-frame-immersive .hero-copy h1 { max-width:620px; font-size:clamp(39px,9.2vw,56px); } .hero-frame-immersive .hero-lede { max-width:560px; } .hero-proof-card { top:14px; right:14px; } .benefit-card,.benefit-card:nth-child(4),.benefit-card:nth-child(5) { border-radius:16px; } .profile-card { min-height:100%; } }
@media (max-width: 575.98px) { .hero-frame-immersive { min-height:720px; } .hero-frame-immersive .hero-copy { padding:108px 19px 126px; } .hero-frame-immersive .hero-copy h1 { font-size:clamp(36px,10vw,49px); text-wrap:balance; } .hero-frame-immersive .hero-lede { font-size:13px; line-height:1.7; } .hero-assurance-group { margin-top:16px; } .hero-proof-card { right:12px; left:12px; max-width:none; } .hero-carousel-controls { right:10px; left:10px; } .profile-card-image { height:clamp(160px,52vw,205px); } .profiles-section { background-size:auto, min(80vw,390px) auto; background-position:center, right -80px top 50px; } }
@media (prefers-reduced-motion: reduce) { .hero-frame,.hero-copy > .eyebrow,.hero-copy h1,.hero-copy .hero-lede,.hero-copy .income-highlight,.hero-copy .hero-actions,.hero-copy .hero-assurance,.hero-proof-card,.hero-frame-immersive .carousel-item.active .hero-background-image,.hero-frame-immersive .hero-background-overlay::after,.closing-card,.closing-orbit { animation:none !important; } .profile-card,.profile-card-image img,.benefit-card,.process-grid li,.hero-carousel-arrow,.hero-carousel-toggle { transition:none !important; } .home-motion-ready .conditions-inner,.home-motion-ready .benefit-card,.home-motion-ready .profiles-grid > div,.home-motion-ready .process-grid li,.home-motion-ready .closing-card { opacity:1; transform:none; }
}

/* Opportunity details — editorial, transparent and responsive */
.opportunity-detail-hero { position:relative; isolation:isolate; overflow:hidden; padding:42px 0 clamp(42px,6vw,67px); color:#fff; background:linear-gradient(125deg,#172a62 0%,#2546a5 51%,#4268dc 100%); }
.opportunity-detail-hero::before { position:absolute; inset:0; z-index:-1; background:radial-gradient(ellipse at 83% 16%,rgba(143,172,255,.28),transparent 34%); content:''; }
.opportunity-detail-hero-inner { position:relative; }
.opportunity-detail-back { position:relative; display:inline-flex; align-items:center; gap:8px; margin-bottom:34px; color:rgba(240,245,255,.75); font-size:10px; font-weight:700; text-decoration:none; transition:color .2s ease,gap .2s ease; }
.opportunity-detail-back:hover { gap:12px; color:#fff; }
.opportunity-detail-back span { font-size:15px; }
.opportunity-detail-hero .eyebrow { display:flex; align-items:center; gap:9px; margin-bottom:14px; color:#d6e1ff; font-size:9px; font-weight:800; letter-spacing:.14em; }
.opportunity-detail-live { width:7px; height:7px; border-radius:50%; background:#99f0cf; box-shadow:0 0 0 5px rgba(153,240,207,.14); }
.opportunity-detail-age { padding:4px 7px; border:1px solid rgba(255,255,255,.28); border-radius:6px; color:#fff; font-size:8px; }
.opportunity-detail-hero h1 { position:relative; z-index:1; max-width:850px; margin:0; color:#fff; font:800 clamp(34px,5.2vw,57px)/1.08 'Manrope',sans-serif; letter-spacing:-.06em; text-wrap:balance; animation:opportunity-rise .55s ease both; }
.opportunity-detail-tags { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }
.opportunity-detail-tags span { padding:7px 10px; border:1px solid rgba(255,255,255,.22); border-radius:50px; color:#f0f4ff; background:rgba(255,255,255,.09); font-size:9px; font-weight:700; backdrop-filter:blur(8px); }
.opportunity-detail-orbit { position:absolute; top:-250px; right:-55px; display:grid; place-items:center; width:470px; height:470px; border:1px solid rgba(255,255,255,.085); border-radius:50%; color:rgba(255,255,255,.035); font:800 84px 'Manrope',sans-serif; box-shadow:0 0 0 35px rgba(255,255,255,.015),0 0 0 75px rgba(255,255,255,.012); pointer-events:none; }
.opportunity-detail-main { padding:clamp(40px,6vw,72px) 0 clamp(65px,8vw,95px); background:linear-gradient(180deg,#f6f8ff 0%,#fff 430px); }
.opportunity-detail-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(265px,.7fr); align-items:start; gap:clamp(22px,4vw,48px); }
.opportunity-detail-content { display:grid; gap:16px; min-width:0; }
.opportunity-detail-panel { padding:clamp(20px,3vw,29px); border:1px solid #e3e9f4; border-radius:16px; background:#fff; box-shadow:0 9px 27px rgba(35,57,117,.045); animation:opportunity-rise .55s ease both; }
.opportunity-detail-panel:nth-child(2) { animation-delay:.08s; }
.opportunity-detail-panel:nth-child(3) { animation-delay:.15s; }
.opportunity-detail-panel .eyebrow { margin:0 0 8px; color:#526fe0; font-size:8px; font-weight:800; letter-spacing:.15em; }
.opportunity-detail-panel h2 { margin:0 0 14px; color:#203150; font:800 clamp(19px,2.7vw,24px)/1.25 'Manrope',sans-serif; letter-spacing:-.04em; }
.opportunity-detail-description,.opportunity-detail-fallback { margin:0; color:#5f6f87; font-size:11px; line-height:1.9; overflow-wrap:anywhere; }
.opportunity-detail-facts { display:grid; gap:0; margin:0; }
.opportunity-detail-facts > div { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0; border-top:1px solid #edf0f6; }
.opportunity-detail-facts > div:first-child { border-top:0; }
.opportunity-detail-facts dt,.opportunity-detail-facts dd { margin:0; font-size:10px; }
.opportunity-detail-facts dt { display:flex; align-items:center; gap:9px; color:#718097; }
.opportunity-detail-facts dt span { display:grid; place-items:center; width:27px; height:27px; border:1px solid #e2e8fb; border-radius:8px; color:#4d69d1; background:#f4f6ff; font-size:12px; }
.opportunity-detail-facts dd { color:#30415d; font-weight:800; text-align:right; }
.opportunity-benefits-list { display:grid; gap:11px; padding:0; margin:0; list-style:none; }
.opportunity-benefits-list li { display:flex; align-items:flex-start; gap:10px; color:#4f607a; font-size:10px; line-height:1.7; }
.opportunity-benefits-list li span { display:grid; flex:0 0 auto; place-items:center; width:19px; height:19px; border:1px solid #d1e8db; border-radius:50%; color:#33845e; background:#f1faf5; font-size:10px; }
.opportunity-detail-trust { display:flex; align-items:flex-start; gap:10px; margin:0; padding:14px 16px; border:1px solid #dfe7fb; border-radius:12px; color:#5c6c84; background:#f5f7ff; font-size:9px; line-height:1.75; }
.opportunity-detail-trust > span { display:grid; flex:0 0 26px; place-items:center; height:26px; border:1px solid #d9e2fb; border-radius:8px; color:#4762ca; background:#fff; font-size:8px; font-weight:800; }
.opportunity-detail-sidebar { position:sticky; top:24px; display:grid; gap:13px; }
.opportunity-income-card { padding:22px; border:1px solid #d3def9; border-radius:17px; background:radial-gradient(ellipse at 100% 0%,rgba(156,178,255,.22),transparent 42%),linear-gradient(145deg,#f0f4ff,#fff); box-shadow:0 15px 36px rgba(48,75,153,.09); animation:opportunity-rise .6s .1s ease both; }
.opportunity-income-icon { display:grid; place-items:center; width:39px; height:39px; margin-bottom:17px; border:1px solid #dce5fb; border-radius:12px; color:#435fe5; background:#fff; font:800 16px 'Manrope',sans-serif; box-shadow:0 5px 14px rgba(67,95,229,.08); }
.opportunity-income-card .eyebrow { margin:0 0 8px; color:#536ac1; font-size:8px; font-weight:800; letter-spacing:.12em; }
.opportunity-income-card > strong { display:block; color:#20335e; font:800 clamp(22px,3vw,29px)/1.2 'Manrope',sans-serif; letter-spacing:-.045em; overflow-wrap:anywhere; }
.opportunity-income-note { margin:10px 0 16px; color:#64738b; font-size:9px; line-height:1.75; }
.opportunity-income-card .btn { display:flex; min-height:44px; align-items:center; justify-content:space-between; gap:12px; padding:10px 13px; border:0; border-radius:9px; color:#fff; background:linear-gradient(105deg,#3d5fda,#5277eb); font-size:10px; font-weight:800; box-shadow:0 7px 17px rgba(67,95,229,.18); transition:transform .2s ease,box-shadow .2s ease; }
.opportunity-income-card .btn:hover { transform:translateY(-1px); background:linear-gradient(105deg,#304fc3,#496be0); box-shadow:0 10px 21px rgba(67,95,229,.25); }
.opportunity-income-card .btn span { font-size:15px; }
.opportunity-income-card > small { display:flex; align-items:center; justify-content:center; gap:6px; margin-top:12px; color:#79869a; font-size:8px; }
.opportunity-income-card > small span { color:#526fe0; }
.opportunity-detail-side-note { display:flex; align-items:flex-start; gap:10px; padding:14px; border:1px solid #e5eaf4; border-radius:12px; background:#fff; }
.opportunity-detail-side-note > span { display:grid; flex:0 0 auto; place-items:center; width:21px; height:21px; border-radius:7px; color:#526fe0; background:#eff3ff; font:700 11px 'Manrope',sans-serif; }
.opportunity-detail-side-note p { margin:1px 0 0; color:#6d7a90; font-size:9px; line-height:1.75; }
.opportunity-detail-side-note strong { color:#34445e; }
.opportunity-detail-contact { display:grid; gap:4px; padding:12px 14px; border:1px solid #e7ebf3; border-radius:11px; color:#758198; background:rgba(255,255,255,.74); font-size:8px; text-decoration:none; }
.opportunity-detail-contact span { color:#3d58bf; font-size:9px; font-weight:800; }
.opportunity-detail-not-found { display:grid; min-height:60vh; place-items:center; padding:60px 0; background:linear-gradient(180deg,#f3f6ff,#fff); text-align:center; }
.opportunity-detail-not-found .container { max-width:620px; }
.opportunity-detail-not-found > .container > span { display:grid; place-items:center; width:50px; height:50px; margin:0 auto 18px; border:1px solid #dce5fb; border-radius:15px; color:#526fe0; background:#f1f4ff; font-size:24px; }
.opportunity-detail-not-found .eyebrow { justify-content:center; color:#526fe0; font-size:9px; font-weight:800; letter-spacing:.14em; }
.opportunity-detail-not-found h1 { color:#1d2d49; font:800 clamp(28px,5vw,42px)/1.15 'Manrope',sans-serif; letter-spacing:-.05em; }
.opportunity-detail-not-found p:not(.eyebrow) { color:#69768b; font-size:12px; line-height:1.8; }
.opportunity-detail-not-found .btn { margin-top:10px; }
@media (max-width: 767.98px) { .opportunity-detail-hero { padding-top:28px; } .opportunity-detail-back { margin-bottom:25px; } .opportunity-detail-layout { grid-template-columns:1fr; } .opportunity-detail-sidebar { position:static; grid-row:1; } .opportunity-income-card { padding:19px; } .opportunity-income-card > strong { font-size:26px; } }
@media (max-width: 575.98px) { .opportunity-detail-hero { padding-bottom:38px; } .opportunity-detail-hero h1 { font-size:clamp(31px,9vw,43px); } .opportunity-detail-tags { gap:6px; margin-top:17px; } .opportunity-detail-tags span { padding:6px 8px; font-size:8px; } .opportunity-detail-orbit { top:-90px; right:-255px; } .opportunity-detail-main { padding-top:29px; } .opportunity-detail-layout { gap:12px; } .opportunity-detail-content { gap:12px; } .opportunity-detail-panel { padding:19px 16px; border-radius:13px; } .opportunity-detail-facts > div { align-items:flex-start; gap:8px; } .opportunity-detail-facts dt,.opportunity-detail-facts dd { font-size:9px; } .opportunity-detail-facts dt { gap:7px; } }
@media (prefers-reduced-motion: reduce) { .opportunity-detail-hero h1,.opportunity-detail-panel,.opportunity-income-card { animation:none; } .opportunity-detail-back,.opportunity-income-card .btn { transition:none; } }

/* Public index of draft locations: clearly separated from active opportunities */
.opportunity-locations { margin-top:clamp(52px,7vw,82px); padding-top:clamp(31px,4vw,44px); border-top:1px solid #e6ebf5; }
.opportunity-locations-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:21px; }
.opportunity-locations-heading .eyebrow { margin:0 0 8px; color:#5c74d4; font-size:8px; font-weight:800; letter-spacing:.15em; }
.opportunity-locations-heading h2 { margin:0; color:#203150; font:800 clamp(24px,3.2vw,34px)/1.15 'Manrope',sans-serif; letter-spacing:-.05em; }
.opportunity-locations-heading h2 span { color:#4967d5; }
.opportunity-locations-heading > div > p:last-child { max-width:730px; margin:9px 0 0; color:#68768d; font-size:10px; line-height:1.75; }
.opportunity-locations-count { flex:0 0 auto; padding:9px 12px; border:1px solid #e0e7f8; border-radius:30px; color:#6b7890; background:#fff; font-size:9px; white-space:nowrap; }
.opportunity-locations-count strong { color:#405dc9; }
.opportunity-locations-search { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:7px 14px; max-width:420px; margin:20px 0 15px; }
.opportunity-locations-search label { grid-column:1/-1; color:#596780; font-size:9px; font-weight:800; }
.opportunity-locations-search > div { position:relative; }
.opportunity-locations-search > div > span { position:absolute; top:50%; left:12px; color:#7184cb; font-size:20px; line-height:1; transform:translateY(-54%); pointer-events:none; }
.opportunity-locations-search input { width:100%; min-height:42px; padding:9px 12px 9px 37px; border:1px solid #e1e6f1; border-radius:9px; outline:0; color:#263650; background:#fff; font:400 10px 'DM Sans',sans-serif; }
.opportunity-locations-search input:focus { border-color:#8ba0f0; box-shadow:0 0 0 3px rgba(67,95,229,.09); }
.opportunity-locations-search small { padding-bottom:3px; color:#7b879b; font-size:8px; white-space:nowrap; }
.opportunity-location-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.opportunity-location-card { min-width:0; padding:15px; border:1px solid #e5eaf4; border-radius:12px; background:linear-gradient(145deg,#fff,#fbfcff); box-shadow:0 5px 16px rgba(35,57,117,.025); animation:opportunity-rise .45s ease both; transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.opportunity-location-card:hover { transform:translateY(-2px); border-color:#d1dcf7; box-shadow:0 9px 21px rgba(35,57,117,.06); }
.opportunity-location-card > div { display:flex; align-items:baseline; justify-content:space-between; gap:8px; padding-bottom:9px; border-bottom:1px solid #edf0f6; }
.opportunity-location-card h3 { min-width:0; margin:0; color:#304267; font:800 12px 'Manrope',sans-serif; }
.opportunity-location-card > div > span { flex:0 0 auto; color:#8490a3; font-size:7px; }
.opportunity-location-card ul { display:flex; flex-wrap:wrap; gap:6px; padding:10px 0 0; margin:0; list-style:none; }
.opportunity-location-card li { padding:5px 7px; border:1px solid #e6ebf6; border-radius:6px; color:#5e6e87; background:#f6f8ff; font-size:8px; }
.opportunity-locations .opportunities-empty[hidden] { display:none; }
@media (max-width: 991.98px) { .opportunity-location-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 575.98px) { .opportunity-locations-heading { align-items:flex-start; flex-direction:column; gap:12px; } .opportunity-locations-count { align-self:flex-start; } .opportunity-locations-search { grid-template-columns:1fr; gap:7px; } .opportunity-locations-search label { grid-column:auto; } .opportunity-locations-search small { justify-self:start; } .opportunity-location-grid { grid-template-columns:1fr; gap:8px; } .opportunity-location-card { padding:13px; } }
@media (prefers-reduced-motion: reduce) { .opportunity-location-card { animation:none; transition:none; } }

/* Admin layouts: compact navigation, forms and readable mobile tables. */
.admin-nav-toggler { border:1px solid rgba(255,255,255,.26); padding:7px 9px; }
.admin-nav-toggler .navbar-toggler-icon { width:1.2em; height:1.2em; }
.admin-table-panel { min-width:0; }
.admin-table-panel td { overflow-wrap:anywhere; }
.application-detail-table th { width:34%; color:#67748a; font-weight:700; }
.application-detail-table td { overflow-wrap:anywhere; }
@media (max-width: 991.98px) {
    .admin-nav { z-index:1030; }
    .admin-nav > .container { position:relative; }
    .admin-nav .navbar-collapse { position:absolute; z-index:1031; top:calc(100% + 8px); right:0; left:0; width:auto; max-height:calc(100svh - 100px); overflow-y:auto; padding:12px 14px; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:var(--ink); box-shadow:0 18px 42px rgba(8,17,39,.28); }
    .admin-nav .navbar-collapse.collapsing { position:absolute; display:block; height:0; visibility:visible; }
    .admin-nav .admin-nav-links { align-items:stretch; flex-direction:column; gap:2px; margin-top:10px; padding:8px 0 4px; border-top:1px solid rgba(255,255,255,.13); }
    .admin-nav .admin-nav-links > .nav-link { padding:10px 8px !important; border-radius:8px; }
    .admin-nav .admin-nav-links > .nav-link:hover { background:rgba(255,255,255,.08); }
    .admin-nav .admin-nav-links form { align-self:stretch; }
    .admin-nav .admin-nav-links form button { width:100%; padding:10px 8px !important; text-align:left; }
}
@media (max-width: 767.98px) {
    .admin-content { padding-top:20px; padding-bottom:44px; }
    .admin-page-heading { min-width:0; gap:13px; }
    .admin-page-heading > div { min-width:0; }
    .admin-page-heading h1 { font-size:clamp(26px,7vw,34px); overflow-wrap:anywhere; }
    .admin-page-heading p:not(.eyebrow) { line-height:1.6; }
    .admin-page-heading .btn { width:100%; }
    .admin-filter-panel { margin-right:0; margin-left:0; padding:12px; }
    .admin-filter-panel .form-control,.admin-filter-panel .form-select,.admin-filter-panel .btn { min-height:44px; }
    .admin-panel-head { align-items:flex-start; gap:12px; }
    .admin-panel-head h2 { font-size:17px; }
    .admin-table-panel.table-responsive { overflow:visible; border:0; background:transparent; box-shadow:none; }
    .admin-table-panel .table { display:block; min-width:0; margin:0; }
    .admin-table-panel .table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
    .admin-table-panel .table tbody { display:grid; gap:11px; }
    .admin-table-panel .table tbody tr { display:block; overflow:hidden; border:1px solid var(--line); border-radius:13px; background:#fff; box-shadow:0 5px 18px rgba(25,39,65,.04); }
    .admin-table-panel .table tbody tr td { display:grid; grid-template-columns:minmax(92px,.42fr) minmax(0,1fr); align-items:start; gap:10px; padding:10px 13px; border-bottom:1px solid #edf0f5; font-size:12px; }
    .admin-table-panel .table tbody tr td:last-child { border-bottom:0; }
    .admin-table-panel .table tbody tr td[data-label]::before { content:attr(data-label); color:#758198; font-size:10px; font-weight:700; }
    .admin-table-panel .table tbody tr td[colspan] { display:block; padding:15px; }
    .admin-table-panel .table tbody tr td[colspan]::before { content:none; }
    .admin-table-panel .table .btn { min-height:35px; }
    .opportunity-actions { align-items:flex-start; flex-direction:row; flex-wrap:wrap; gap:6px; }
    .opportunity-actions form { display:inline-flex; }
    .opportunity-actions .btn { white-space:normal; }
    .application-detail-table th { width:auto; }
    .application-detail-table td,.application-detail-table th { padding:9px 7px; font-size:12px; vertical-align:top; }
    .admin-login-container { min-height:calc(100svh - 70px); padding:24px 12px 38px; }
    .admin-login-panel { padding:25px 21px; border-radius:16px; }
    .admin-login-panel h1 { font-size:24px; }
    .metric-card { min-height:122px; }
    .admin-form-panel,.admin-email-form { padding:20px 16px !important; }
    .admin-email-safety { padding:14px; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
    .admin-content .form-control,.admin-content .form-select { min-height:44px; font-size:16px; }
    .admin-content textarea.form-control { min-height:116px; }
    .admin-email-form .form-control,.admin-email-form .form-select,.admin-form-panel .form-control,.admin-form-panel .form-select { min-height:44px; font-size:16px; }
    .admin-email-form textarea.form-control,.admin-form-panel textarea.form-control { min-height:120px; }
    .admin-email-form button[type="submit"],.admin-form-panel > button[type="submit"] { min-height:44px; }
    .carousel-order-form { flex-wrap:wrap; }
    .carousel-order-form input { min-height:38px; }
    .carousel-admin-actions .btn,.category-admin-form .btn { min-height:38px; }
}
@media (max-width: 420px) {
    .admin-page-heading h1 { font-size:27px; }
    .metric-card { min-height:116px; padding:13px; }
    .metric-label,.metric-note { font-size:9px; line-height:1.45; }
    .metric-value { font-size:25px; }
    .admin-table-panel .table tbody tr td { grid-template-columns:minmax(76px,.38fr) minmax(0,1fr); gap:7px; padding:9px 10px; font-size:11px; }
    .admin-table-panel .table tbody tr td[data-label]::before { font-size:9px; }
    .application-view .card { padding:17px !important; }
    .carousel-admin-card-body { padding:13px; }
    .carousel-admin-card-top { flex-wrap:wrap; }
    .admin-login-panel { padding:23px 18px; }
}
body[style*="--site-hero-bg-image"] .opportunities-hero,
body[style*="--site-hero-bg-image"] .faq-hero,
body[style*="--site-hero-bg-image"] .contact-hero,
body[style*="--site-hero-bg-image"] .page-hero.application-hero,
body[style*="--site-hero-bg-image"] .opportunity-detail-hero {
    background-image: linear-gradient(110deg, rgba(12, 27, 67, .76), rgba(24, 48, 104, .43)), var(--site-hero-bg-image);
    background-position: center;
    background-size: cover;
}
body[style*="--site-hero-bg-image"] .page-hero:not(.application-hero) {
    color: var(--ink);
    background-image: linear-gradient(110deg, rgba(247, 248, 255, .94), rgba(255, 255, 255, .79)), var(--site-hero-bg-image);
    background-position: center;
    background-size: cover;
}
