/* BLINK Nigeria Phase 1: scoped, responsive public homepage. Other app screens are unchanged. */
.landing-page{--land-bg:#07080c;--land-ink:#f8f8fa;--land-muted:#b0b2be;--land-line:rgba(255,255,255,.12);--land-surface:#11131b;--land-highlight:#ee51af;min-height:100vh;background:radial-gradient(ellipse 65% 45% at 85% 3%,rgba(152,68,160,.12),transparent 68%),var(--land-bg);color:var(--land-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.landing-page *{box-sizing:border-box}.landing-page a{text-decoration:none}.landing-container{width:min(1140px,calc(100% - 48px));margin-inline:auto}
.landing-skip{position:absolute;left:16px;top:-90px;z-index:100;background:#fff;color:#050505;padding:12px 18px;border-radius:12px;font-weight:800}.landing-skip:focus{top:14px}
.landing-header{position:relative;z-index:10;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(8,9,13,.9)}
.landing-header-inner{min-height:76px;display:flex;align-items:center;gap:25px}
.landing-brand{display:inline-flex;align-items:center;gap:11px;white-space:nowrap;font-size:22px;font-weight:900;letter-spacing:-.8px}
.landing-brand img{width:39px;height:39px;object-fit:contain;border-radius:10px;flex:none}
.landing-brand-tag{display:block;font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.17em;color:var(--land-muted);margin-top:3px}
.landing-desktop-nav{display:flex;align-items:center;gap:24px;margin-left:auto}
.landing-desktop-nav a{font-size:14px;font-weight:700;color:#d3d4df;transition:color .18s}
.landing-desktop-nav a:hover{color:#fff}
.landing-header-actions{display:flex;gap:10px;align-items:center}
.landing-top-cta,.landing-action,.landing-search-submit{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:14px;padding:13px 18px;min-height:48px;text-align:center;font-size:14px;font-weight:800;white-space:nowrap;transition:transform .18s ease,background .18s ease,border-color .18s ease;cursor:pointer}
.landing-top-cta{background:#fff;color:#090a10;border-color:#fff;padding-inline:18px}
.landing-top-cta:hover,.landing-action:hover,.landing-search-submit:hover{transform:translateY(-2px)}
.landing-menu{display:none;position:relative}
.landing-menu summary{display:flex;align-items:center;justify-content:center;border:1px solid var(--land-line);background:#14161e;color:#fff;border-radius:12px;min-height:44px;padding:9px 14px;font-weight:800;cursor:pointer;list-style:none}
.landing-menu summary::-webkit-details-marker{display:none}
.landing-menu nav{position:absolute;right:0;top:calc(100% + 11px);width:min(270px,80vw);padding:8px;border:1px solid var(--land-line);border-radius:18px;background:#171820;box-shadow:0 18px 35px rgba(0,0,0,.6);display:grid;gap:2px}
.landing-menu nav a{display:block;padding:14px;border-radius:10px;color:#e4e4ec;font-weight:700}
.landing-menu nav a:hover{background:#292b36}
.landing-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(285px,.88fr);align-items:center;gap:clamp(35px,6vw,90px);padding-block:clamp(38px,6vw,88px) clamp(38px,5vw,70px)}
.landing-hero-copy{min-width:0}
.landing-eyebrow{display:inline-flex;align-items:center;gap:9px;color:#d2d0db;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;margin-bottom:20px}
.landing-eyebrow::before{content:"";display:inline-block;background:var(--land-highlight);width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 4px rgba(238,81,175,.12)}
.landing-hero h1{font-size:clamp(42px,5.8vw,73px);line-height:1.06;letter-spacing:-.055em;font-weight:900;margin:0 0 22px}
.landing-page .gradient-text{background:linear-gradient(105deg,#fff 5%,#fdf2f7 24%,#f197cb 60%,#d6b6ff 100%);background-clip:text;-webkit-background-clip:text;color:transparent}
.landing-lead{max-width:540px;font-size:clamp(16px,1.7vw,19px);line-height:1.65;color:var(--land-muted);margin:0}
.landing-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:27px}
.landing-action{min-height:52px;font-size:15px;padding:15px 21px}
.landing-action--primary{background:#fff;color:#0b0c11}
.landing-action--secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.landing-action--secondary:hover{border-color:rgba(255,255,255,.75);background:#1b1b23}
.landing-help{margin:14px 0 0;color:#9498a6;font-size:12px;line-height:1.5}
.landing-search{width:min(100%,530px);margin-top:35px;padding:15px;background:rgba(255,255,255,.035);border:1px solid var(--land-line);border-radius:17px}
.landing-search label{display:block;margin-bottom:10px;font-size:12px;letter-spacing:.03em;font-weight:750;color:#dadbe4}
.landing-search-row{display:flex;gap:8px}
.landing-search .field{flex:1;min-width:0;border-radius:11px;min-height:46px;background:#0e1017;border-color:#393a45;color:#fff}
.landing-search .field::placeholder{color:#8c8d9e}
.landing-search-submit{min-height:46px;padding:10px 15px;background:#282933;border-color:#363741;color:#fff}
.landing-search-submit:hover{background:#333540}
.landing-preview{position:relative;border:1px solid rgba(255,255,255,.14);border-radius:28px;background:radial-gradient(circle at 70% 0%,rgba(238,81,175,.13),transparent 60%),linear-gradient(165deg,#171821,#0b0d13 85%);padding:26px;box-shadow:0 26px 65px rgba(0,0,0,.45);overflow:hidden}
.landing-preview:before{content:"";position:absolute;width:200px;height:200px;right:-125px;top:-115px;background:#9c4580;filter:blur(92px);opacity:.32}
.landing-preview-title{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff;font-weight:900;font-size:15px}
.landing-preview-tag{font-size:10px;letter-spacing:.13em;font-weight:750;text-transform:uppercase;color:#c5adbd;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:6px 10px}
.landing-preview-headline{font-size:clamp(23px,3vw,32px);line-height:1.2;letter-spacing:-.04em;font-weight:850;margin:31px 0 19px;max-width:330px}
.landing-preview-list{display:grid;gap:9px}
.landing-preview-row{display:flex;align-items:center;gap:14px;border-radius:15px;border:1px solid rgba(255,255,255,.075);padding:14px;background:rgba(255,255,255,.035)}
.landing-preview-icon{display:grid;place-items:center;flex:none;width:43px;height:43px;background:rgba(255,255,255,.085);border-radius:12px;font-size:20px}
.landing-preview-row strong{display:block;font-size:14px}.landing-preview-row span:not(.landing-preview-icon){display:block;font-size:12px;line-height:1.4;color:#a5a9b5;margin-top:4px}
.landing-preview-bottom{border-top:1px solid rgba(255,255,255,.09);margin-top:19px;padding-top:17px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#adafba;font-size:12px}
.landing-preview-bottom strong{color:#fff;font-size:13px}
.landing-features{padding-bottom:60px}
.landing-section-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin:0 0 19px}
.landing-kicker{display:block;color:#c2a0bf;letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:900;margin-bottom:10px}
.landing-section-head h2{font-size:clamp(26px,3.2vw,39px);letter-spacing:-.045em;line-height:1.2;margin:0}
.landing-section-head>a{font-size:14px;font-weight:800;color:#dbdce4;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:5px}
.landing-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.landing-feature-card{min-width:0;padding:24px;border:1px solid rgba(255,255,255,.095);border-radius:20px;background:linear-gradient(150deg,#171820,#101117);transition:border-color .18s ease,transform .18s ease}
.landing-feature-card:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.28)}
.landing-feature-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:#282831;color:#fff;font-size:21px;margin-bottom:20px}
.landing-feature-card h3{font-size:18px;margin:0 0 10px;letter-spacing:-.02em}
.landing-feature-card p{font-size:14px;line-height:1.65;color:#acaeba;margin:0}
.landing-bottom-cta{border:1px solid rgba(255,255,255,.14);border-radius:25px;padding:clamp(26px,4vw,46px);background:linear-gradient(130deg,#20202b,#12131b 80%);display:flex;align-items:center;justify-content:space-between;gap:26px;margin-bottom:44px}
.landing-bottom-cta h2{font-size:clamp(24px,3vw,32px);letter-spacing:-.04em;margin:0 0 8px}
.landing-bottom-cta p{color:var(--land-muted);line-height:1.55;margin:0}
.landing-footer{border-top:1px solid rgba(255,255,255,.10);padding:22px 0 32px}
.landing-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;color:#a4a7b2;font-size:13px}
.landing-footer-links{display:flex;gap:19px;flex-wrap:wrap}
.landing-footer a:hover{text-decoration:underline;color:#fff}
.landing-page a:focus-visible,.landing-page button:focus-visible,.landing-page summary:focus-visible,.landing-page input:focus-visible{outline:3px solid #eab2d9;outline-offset:3px}
@media(max-width:940px){.landing-hero{grid-template-columns:1fr}.landing-preview{max-width:680px;width:100%;margin:auto}.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-desktop-nav{gap:14px}.landing-header-inner{gap:16px}}
@media(max-width:680px){.landing-container{width:min(100% - 32px,540px)}.landing-header-inner{min-height:66px}.landing-desktop-nav{display:none}.landing-header-actions{margin-left:auto}.landing-menu{display:block}.landing-top-cta{font-size:13px;padding:10px 12px;min-height:44px}.landing-hero{padding-top:39px;padding-bottom:43px;gap:30px}.landing-hero h1{font-size:clamp(38px,10.4vw,57px)}.landing-preview{padding:21px;border-radius:21px}.landing-section-head{align-items:start;flex-direction:column}.landing-feature-grid{grid-template-columns:1fr}.landing-feature-card{padding:22px}.landing-bottom-cta{flex-direction:column;align-items:start;margin-bottom:30px}}
@media(max-width:420px){.landing-container{width:calc(100% - 28px)}.landing-brand{font-size:19px}.landing-brand img{width:34px;height:34px}.landing-header-inner{gap:9px}.landing-top-cta{font-size:12px;padding:8px 10px}.landing-hero h1{font-size:clamp(37px,10.5vw,47px)}.landing-actions .landing-action{flex:1;white-space:normal}.landing-search-row{display:grid;grid-template-columns:minmax(0,1fr)}.landing-search-submit{width:100%}}
@media(prefers-reduced-motion:reduce){.landing-page *{transition:none!important;animation:none!important;scroll-behavior:auto!important}.landing-action:hover,.landing-top-cta:hover,.landing-feature-card:hover,.landing-search-submit:hover{transform:none}}


/* Phase 2 functional discovery: no public user data exposed in campus search. */
.discovery-section{padding-bottom:clamp(36px,5vw,68px)}
.discovery-support{color:#aeb0bf;line-height:1.65;margin:0 0 18px;font-size:14px;max-width:760px}
.discovery-tour{background:linear-gradient(145deg,#171820,#101117);border:1px solid rgba(255,255,255,.13);border-radius:23px;padding:clamp(18px,3.5vw,33px)}
.discovery-tabs{display:flex;flex-wrap:wrap;gap:9px}
.discovery-tabs button{color:#c8cad4;cursor:pointer;padding:11px 17px;min-height:45px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);font:inherit;font-weight:790}
.discovery-tabs button[aria-selected="true"]{background:#fff;color:#0a0b0d;border-color:#fff}
.discovery-tour-body{padding-block:clamp(20px,3.5vw,38px) 7px}
.discovery-tour-body h3{margin:0 0 11px;font-size:clamp(24px,3vw,34px);letter-spacing:-.035em}
.discovery-tour-body p{font-size:15px;color:#b3b5c1;line-height:1.7;max-width:680px;margin:0 0 21px}
.discovery-campuses{max-width:800px;background:#12141b;border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:clamp(16px,3vw,27px)}
.discovery-campuses>label{display:block;font-weight:820;margin-bottom:12px}
.discovery-campuses input{min-height:52px;width:100%;border-color:#3a3b44;color:#fff;background:#0b0d14}
.discovery-status{font-size:13px;line-height:1.5;color:#b5b7c4;margin:9px 0 11px;min-height:19px}
.campus-results{margin:0;padding:0;list-style:none;display:grid;gap:5px}
.campus-option{width:100%;border:1px solid rgba(255,255,255,.09);border-radius:12px;text-align:left;background:#191b23;color:#f4f4f7;cursor:pointer;font-size:14px;line-height:1.4;font-weight:700;min-height:44px;padding:11px 13px}
.campus-option:hover{border-color:rgba(255,255,255,.40);background:#252630}
.campus-selection{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;background:#22232a;border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:15px;margin-top:11px}
.campus-selection[hidden]{display:none}
.campus-selection>span{color:#ceced9;font-size:14px;max-width:100%}
.campus-selection strong{color:#fff;display:block;margin-top:4px}
.discovery-tour .landing-action{width:fit-content;max-width:100%}
@media(max-width:680px){.discovery-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.discovery-tabs button{width:100%}.campus-selection{align-items:stretch}.campus-selection .landing-action{width:100%;white-space:normal}.discovery-tour .landing-action{white-space:normal}}
