
:root{
  --ly16-red:#e11931;
  --ly16-red-2:#ff5c6f;
  --ly16-dark:#0d1118;
  --ly16-panel:#121722;
  --ly16-soft:#f8f4f1;
  --ly16-cream:#fff8f4;
  --ly16-line:rgba(255,255,255,.09);
  --ly16-shadow:0 30px 80px rgba(0,0,0,.24);
}
html{scroll-behavior:smooth}
body[data-ly15-page]{background:
 radial-gradient(circle at 8% 10%, rgba(225,25,49,.16), transparent 26%),
 radial-gradient(circle at 90% 10%, rgba(255,255,255,.1), transparent 18%),
 linear-gradient(180deg,#0c1016 0,#111723 12rem,#f6f2ee 12rem,#f7f1ed 100%);
 color:#121417;
}
body[data-ly15-page]::before,
body[data-ly15-page]::after{
 content:"";position:fixed;inset:auto auto 10% -12rem;width:28rem;height:28rem;border-radius:50%;
 background:radial-gradient(circle, rgba(225,25,49,.16), rgba(225,25,49,0));filter:blur(14px);pointer-events:none;z-index:-1;animation:ly16Float 18s ease-in-out infinite;
}
body[data-ly15-page]::after{left:auto;right:-10rem;top:8rem;bottom:auto;background:radial-gradient(circle, rgba(255,255,255,.15), rgba(255,255,255,0));animation-delay:-8s}
@keyframes ly16Float{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(0,-24px,0) scale(1.08)}}
.container{max-width:min(1920px,calc(100vw - 52px))!important}
.site-head{backdrop-filter:blur(18px)}
.topline{background:linear-gradient(90deg,#78111d,#db1b34 54%,#ff7c8d)}
.site-head .nav-row,.site-footer .footer-inner,.hero-layout,.hero-bottom-grid,.ly15-stage .container,.section .container,.portal-hub .container{position:relative;z-index:1}
.site-head .nav-row{padding-block:14px;background:rgba(7,10,15,.78);border:1px solid rgba(255,255,255,.08);box-shadow:var(--ly16-shadow);border-radius:26px;margin-top:10px}
.identity{gap:14px}
.identity-title{letter-spacing:.14em}
.site-nav a,.nav-play,.ly15-search-open{transition:transform .28s ease, background .28s ease, color .28s ease, border-color .28s ease, box-shadow .28s ease}
.site-nav a:hover,.site-nav a[aria-current="page"]{background:rgba(225,25,49,.15);color:#fff;box-shadow:0 12px 30px rgba(225,25,49,.2);transform:translateY(-2px)}
.button,.nav-play,.ly15-search-open{border-radius:999px}
.hero.fullbleed{padding-top:36px;padding-bottom:28px;overflow:hidden}
.hero-grid,.hero-orbit,.hero-skyline{animation-duration:12s,18s,20s}
.hero-copy h1{font-size:clamp(3.4rem,8vw,6.3rem);line-height:.92;letter-spacing:-.04em;text-wrap:balance}
.hero-copy h1 span,.hero-copy h1 em{display:inline-block;animation:ly16TextPop .8s cubic-bezier(.2,.8,.2,1) both}
.hero-copy h1 em{animation-delay:.2s}
@keyframes ly16TextPop{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.hero-copy p{font-size:1.12rem;max-width:60ch}
.hero-layout{gap:28px}
.hero-scene,.feature-card,.portal-card,.update-card,.gallery-card,.news-card,.city-card,.card,.ly16-glass,.ly16-window{position:relative;overflow:hidden;border-radius:28px!important;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.86));box-shadow:0 20px 50px rgba(15,24,35,.14), inset 0 1px 0 rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.78)}
.hero-scene::before,.feature-card::before,.portal-card::before,.ly16-window::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 20%,rgba(255,255,255,.22) 35%,transparent 50%);transform:translateX(-130%);animation:ly16Sweep 9s linear infinite}
@keyframes ly16Sweep{to{transform:translateX(130%)}}
.scene-disc{box-shadow:0 32px 90px rgba(225,25,49,.28)}
.scene-disc::after{content:"";position:absolute;inset:16px;border-radius:50%;border:1px solid rgba(255,255,255,.45);animation:ly16Pulse 3s ease-in-out infinite}
@keyframes ly16Pulse{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.06);opacity:.28}}
.hero-actions .button-large{padding:1rem 1.4rem;box-shadow:0 18px 50px rgba(225,25,49,.24)}
.hero-bottom{position:relative;z-index:1}
.hero-bottom-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.hero-bottom-grid span{background:rgba(255,255,255,.88);padding:18px 20px;border-radius:18px;border:1px solid rgba(16,16,16,.06);font-weight:700;box-shadow:0 15px 36px rgba(12,19,27,.08)}
.section,.portal-hub,.ly15-stage{position:relative}
.section::after,.portal-hub::after{content:"";position:absolute;left:50%;width:min(94vw,1600px);height:1px;bottom:-2px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(225,25,49,.28),transparent)}
.section-top h2,.ly15-stage-head h2{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.04em}
.label-red,.eyebrow,.feature-index{letter-spacing:.16em}
.feature-layout,.portal-grid,.city-layout,.news-grid,.gallery-grid,.help-grid,.fleet-grid,.timeline-grid,.stats-grid,.subpage-grid,.ly16-card-grid{display:grid;gap:22px}
.feature-card,.portal-card,.news-card,.gallery-card,.card,.help-card,.city-card{padding:24px;transition:transform .28s ease, box-shadow .28s ease}
.feature-card:hover,.portal-card:hover,.news-card:hover,.gallery-card:hover,.card:hover,.help-card:hover,.city-card:hover{transform:translateY(-6px);box-shadow:0 28px 66px rgba(15,24,35,.16)}
.ly16-signal-strip{margin:24px auto 0;width:min(1920px,calc(100vw - 52px));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative;z-index:2}
.ly16-strip-card{padding:18px 20px;border-radius:24px;background:linear-gradient(165deg,rgba(18,22,33,.93),rgba(28,34,48,.88));color:#fff;box-shadow:var(--ly16-shadow);border:1px solid rgba(255,255,255,.08);overflow:hidden;position:relative}
.ly16-strip-card::after{content:"";position:absolute;inset:auto -12% -60% auto;width:140px;height:140px;background:radial-gradient(circle,rgba(255,255,255,.2),transparent 70%);border-radius:50%}
.ly16-strip-card small{display:block;color:#ffbec8;letter-spacing:.16em;font-weight:800;margin-bottom:8px}
.ly16-strip-card strong{display:block;font-size:1.1rem;line-height:1.1;margin-bottom:6px}
.ly16-strip-card p{margin:0;color:rgba(255,255,255,.76);font-size:.94rem}
.ly16-deep-section{padding:34px 0 12px}
.ly16-deep-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
.ly16-window{padding:24px;min-height:220px}
.ly16-window.wide{grid-column:span 7}
.ly16-window.mid{grid-column:span 5}
.ly16-window.full{grid-column:1/-1}
.ly16-window h3{font-size:1.35rem;line-height:1.02;margin:.25rem 0 .8rem;letter-spacing:-.03em}
.ly16-window p{color:#4a5160}
.ly16-window ul{padding:0;margin:14px 0 0;list-style:none;display:grid;gap:10px}
.ly16-window li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;background:rgba(12,16,25,.04);font-weight:600}
.ly16-window li span:last-child{color:#6b7280;font-weight:500;text-align:right}
.ly16-badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.ly16-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(225,25,49,.08);color:#90131f;font-weight:800;font-size:.85rem;letter-spacing:.08em}
.ly16-kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.ly16-kpi div{padding:16px;border-radius:18px;background:linear-gradient(180deg,rgba(225,25,49,.06),rgba(10,14,20,.04));border:1px solid rgba(15,24,35,.08)}
.ly16-kpi strong{display:block;font-size:1.8rem;letter-spacing:-.05em}
.ly16-kpi span{display:block;color:#5c6270;font-size:.86rem;font-weight:700;letter-spacing:.12em}
.ly16-marquee{display:flex;gap:14px;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);margin:0 auto 12px;width:min(1920px,calc(100vw - 52px))}
.ly16-marquee-track{display:flex;gap:14px;min-width:max-content;animation:ly16Marquee 32s linear infinite}
.ly16-marquee span{padding:11px 16px;border-radius:999px;background:rgba(255,255,255,.88);border:1px solid rgba(0,0,0,.06);font-weight:800;color:#141923;box-shadow:0 12px 28px rgba(15,24,35,.08)}
@keyframes ly16Marquee{to{transform:translateX(-50%)}}
.ly16-reveal{opacity:0;transform:translateY(24px) scale(.985);transition:opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1)}
.ly16-reveal.in-view{opacity:1;transform:none}
.site-footer{position:relative;overflow:hidden;background:linear-gradient(180deg,#0f141d,#090d13)!important;color:#fff}
.site-footer::before{content:"";position:absolute;inset:auto 0 0;height:180px;background:radial-gradient(circle at 50% 0,rgba(225,25,49,.22),transparent 58%)}
.site-footer .footer-inner{padding-block:28px}
@media (max-width: 1100px){
 .ly16-signal-strip,.hero-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ly16-window.wide,.ly16-window.mid{grid-column:span 6}
 .ly16-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 780px){
 .container,.ly16-marquee,.ly16-signal-strip{width:calc(100vw - 26px)!important;max-width:none!important}
 .site-head .nav-row{border-radius:22px}
 .hero-copy h1{font-size:clamp(2.6rem,13vw,4rem)}
 .hero-bottom-grid,.ly16-signal-strip,.ly16-kpi{grid-template-columns:1fr}
 .ly16-window.wide,.ly16-window.mid,.ly16-window.full{grid-column:1/-1}
 .ly16-deep-grid{grid-template-columns:1fr}
}
