@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');

:root { font-family: Manrope, Inter, ui-sans-serif, system-ui, sans-serif; color: #14222c; background: #cadcec; font-synthesis: none; --ink:#14222c; --muted:#70808c; --blue:#315cf5; --line:rgba(67,91,113,.12); }
* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body { min-height: 100vh; margin: 0; padding: clamp(12px,2.2vw,34px); background: radial-gradient(circle at 8% 5%,rgba(239,252,255,.92),transparent 30%), radial-gradient(circle at 92% 85%,rgba(239,226,255,.72),transparent 34%), linear-gradient(135deg,#caddeb,#d8e5f5 52%,#d7d7ef); }
a { color: inherit; }
.site-shell { width: min(1680px,100%); margin:auto; overflow:hidden; border:1px solid rgba(255,255,255,.72); border-radius:36px; background:rgba(246,250,255,.78); box-shadow:0 28px 80px rgba(44,67,91,.18),inset 0 1px 0 #fff; backdrop-filter:blur(22px); }
.site-header { display:grid; grid-template-columns:1fr auto 1fr; gap:30px; align-items:center; padding:30px clamp(28px,5vw,74px); border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:12px; width:max-content; color:var(--ink); font-size:20px; font-weight:800; letter-spacing:-.04em; text-decoration:none; }
.brand-mark { display:grid; width:38px; aspect-ratio:1; place-items:center; border-radius:13px 13px 13px 5px; color:#fff; background:var(--ink); box-shadow:0 8px 20px rgba(20,34,44,.18); }
.site-header nav { display:flex; gap:34px; }
.site-header nav a { color:#60717d; font-size:12px; font-weight:650; text-decoration:none; }
.site-header nav a:hover { color:var(--ink); }
.admin-link { display:flex; justify-self:end; align-items:center; gap:9px; padding:11px 14px; border-radius:14px; background:rgba(255,255,255,.78); font-size:12px; font-weight:750; text-decoration:none; box-shadow:0 8px 22px rgba(71,90,109,.07); }
.admin-link svg { width:17px; fill:currentColor; }
.hero { display:grid; grid-template-columns:.92fr 1.08fr; gap:clamp(35px,7vw,110px); align-items:center; min-height:680px; padding:clamp(55px,8vw,120px) clamp(28px,7vw,110px); }
.eyebrow { margin:0 0 13px; color:#758793; font-size:10px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.hero h1 { margin:0; font-size:clamp(54px,6.7vw,104px); line-height:.96; letter-spacing:-.075em; }
.hero h1 span { color:#91a2ae; }
.hero-text { max-width:580px; margin:31px 0 0; color:#667782; font-size:15px; line-height:1.85; }
.hero-actions { display:flex; gap:24px; align-items:center; margin-top:38px; }
.primary-button { display:flex; min-width:190px; justify-content:space-between; padding:15px 18px; border-radius:14px; color:#fff; background:var(--ink); font-size:12px; font-weight:750; text-decoration:none; transition:transform .2s,background .2s; }
.primary-button:hover { background:var(--blue); transform:translateY(-2px); }
.text-link { color:#4d606c; font-size:12px; font-weight:750; text-underline-offset:5px; }
.hero-board { position:relative; min-height:500px; overflow:hidden; border:1px solid rgba(255,255,255,.86); border-radius:34px; background:linear-gradient(145deg,rgba(223,241,251,.94),rgba(228,226,251,.84)); box-shadow:0 30px 70px rgba(68,91,115,.12); }
.board-top { position:relative; z-index:3; display:flex; justify-content:space-between; padding:27px 30px; color:#687985; font-size:10px; font-weight:700; }
.board-top div { display:flex; align-items:center; gap:8px; }
.live-dot { width:7px; height:7px; border-radius:50%; background:#36bf84; box-shadow:0 0 0 5px rgba(54,191,132,.12); }
.board-glow { position:absolute; border-radius:50%; }
.glow-one { width:360px; height:360px; right:-80px; top:-110px; background:radial-gradient(circle at 35% 38%,rgba(255,255,255,.95),rgba(71,107,255,.18) 48%,transparent 70%); }
.glow-two { width:430px; height:430px; left:-180px; bottom:-250px; background:radial-gradient(circle at 60% 20%,rgba(88,217,220,.45),rgba(119,89,247,.08) 60%,transparent 70%); }
.visual-card { position:absolute; z-index:2; border:1px solid rgba(255,255,255,.85); background:rgba(255,255,255,.64); box-shadow:0 25px 60px rgba(54,78,101,.1); backdrop-filter:blur(16px); }
.visual-main { left:9%; top:20%; width:53%; height:55%; padding:31px; border-radius:28px; transform:rotate(-2deg); }
.visual-icon { display:grid; width:45px; aspect-ratio:1; place-items:center; border-radius:15px; color:#315cf5; background:#edf1ff; }
.visual-icon svg { width:23px; fill:currentColor; }
.building-icon { color:#fff; background:linear-gradient(145deg,#315cf5,#7257f3); box-shadow:0 14px 28px rgba(49,92,245,.28); }
.visual-main p { margin:32px 0 7px; color:#778894; font-size:11px; font-weight:700; }
.visual-main h2 { max-width:240px; margin:0; font-size:clamp(23px,3vw,38px); line-height:1.05; letter-spacing:-.05em; }
.visual-lines { display:grid; gap:8px; margin-top:34px; }
.visual-lines i { height:7px; border-radius:10px; background:#dce5ee; }
.visual-lines i:nth-child(1){width:82%}.visual-lines i:nth-child(2){width:62%}.visual-lines i:nth-child(3){width:72%}
.visual-small { display:flex; width:39%; align-items:center; gap:13px; padding:17px; border-radius:20px; }
.visual-small strong,.visual-small span { display:block; }
.visual-small strong { margin-bottom:5px; font-size:11px; }
.visual-small span { color:#8795a0; font-size:8px; }
.visual-region { right:6%; top:34%; transform:rotate(3deg); }
.visual-fns { right:10%; bottom:11%; transform:rotate(-1deg); }
.directions { padding:80px clamp(28px,7vw,110px) 110px; border-top:1px solid var(--line); }
.section-heading { display:flex; justify-content:space-between; gap:40px; align-items:end; margin-bottom:42px; }
.section-heading h2,.access-banner h2 { margin:0; font-size:clamp(32px,4vw,56px); letter-spacing:-.06em; }
.section-heading>p { max-width:470px; margin:0; color:var(--muted); font-size:13px; line-height:1.7; }
.direction-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.direction-card { position:relative; min-height:330px; overflow:hidden; padding:29px; border:1px solid rgba(255,255,255,.8); border-radius:27px; }
.blue-card { background:linear-gradient(150deg,#eaf2ff,#e4e9ff); }.lilac-card{background:linear-gradient(150deg,#f2efff,#e9e3fa)}.mint-card{background:linear-gradient(150deg,#e9f7f5,#e1f1f2)}
.card-index { position:absolute; right:25px; top:25px; color:#8a99a4; font-size:10px; font-weight:800; }
.direction-icon { display:grid; width:52px; aspect-ratio:1; margin-bottom:75px; place-items:center; border-radius:17px; background:rgba(255,255,255,.8); box-shadow:0 12px 30px rgba(59,79,99,.08); }
.direction-icon svg { width:25px; fill:#315cf5; }
.direction-card h3 { margin:0 0 11px; font-size:20px; letter-spacing:-.03em; }
.direction-card p { max-width:310px; margin:0; color:#6f808c; font-size:11px; line-height:1.7; }
.direction-card a { position:absolute; right:29px; bottom:27px; color:#41545f; font-size:11px; font-weight:750; text-decoration:none; }
.direction-card a span { margin-left:8px; }
.access-banner { display:grid; grid-template-columns:1.1fr 1fr auto; gap:45px; align-items:center; margin:0 clamp(28px,7vw,110px) 90px; padding:48px; border-radius:29px; color:#fff; background:var(--ink); }
.access-banner .eyebrow { color:#91a1ac; }
.access-banner p { margin:0; color:#b5c0c6; font-size:12px; line-height:1.7; }
.access-banner a { display:flex; gap:30px; padding:14px 17px; border-radius:13px; color:var(--ink); background:#fff; font-size:11px; font-weight:800; text-decoration:none; white-space:nowrap; }
footer { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:26px clamp(28px,5vw,74px); border-top:1px solid var(--line); color:#7b8a95; font-size:10px; }
footer .brand { font-size:15px; } footer .brand-mark{width:31px;border-radius:10px 10px 10px 4px} footer p{margin:0} footer>span{text-align:right}
@media(max-width:980px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{grid-template-columns:1fr;gap:55px}.hero-board{min-height:470px}.direction-grid{grid-template-columns:1fr}.direction-card{min-height:260px}.direction-icon{margin-bottom:45px}.access-banner{grid-template-columns:1fr}.access-banner a{width:max-content}.section-heading{align-items:start;flex-direction:column}.section-heading>p{max-width:650px}}
@media(max-width:620px){body{padding:0}.site-shell{border:0;border-radius:0}.site-header{padding:20px}.admin-link span{display:none}.admin-link{padding:11px}.hero{min-height:auto;padding:65px 20px}.hero h1{font-size:53px}.hero-board{min-height:430px}.visual-main{left:5%;width:68%}.visual-region{right:4%;top:29%;width:54%}.visual-fns{right:5%;bottom:7%;width:59%}.directions{padding:60px 20px 70px}.access-banner{margin:0 20px 60px;padding:29px}.access-banner h2{font-size:34px}footer{grid-template-columns:1fr auto;padding:24px 20px}footer p{display:none}}
