/* ==========================================================================
   LIFT Mobility — Nicae Singapore Pte Ltd
   ========================================================================== */

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

:root{
  --ink:#111111;
  --ink-soft:#54524e;
  --ink-faint:#8a877f;
  --paper:#ffffff;
  --paper-alt:#f5f3ee;
  --paper-dark:#0d0d0d;
  --line:#e6e2d9;
  --red:#c8102e;
  --red-dark:#970c22;
  --green:#3f7d5c;
  --amber:#b5852f;
  --radius-lg:24px;
  --radius-md:16px;
  --radius-sm:10px;
  --shadow-soft:0 20px 50px -25px rgba(17,17,17,0.25);
  --container:1200px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Inter',system-ui,-apple-system,"Segoe UI",sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4{margin:0;font-weight:800;letter-spacing:-0.02em;line-height:1.08;}
p{margin:0;}
ul{margin:0;padding:0;list-style:none;}
button{font:inherit;cursor:pointer;}
.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 32px;}

.text-red{color:var(--red);}
.eyebrow{
  font-size:12px;
  font-weight:700;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--red);
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
}
.eyebrow::before{content:"";width:24px;height:2px;background:var(--red);display:inline-block;}

.section{padding:96px 0;}
.section-alt{background:var(--paper-alt);}
.section-dark{background:var(--paper-dark);color:#f4f2ec;}
.section-head{max-width:680px;margin:0 0 56px;}
.section-head h2{font-size:clamp(30px,3.4vw,44px);margin-bottom:16px;}
.section-head p{color:var(--ink-soft);font-size:17px;}
.section-dark .section-head p{color:#b9b6ac;}

/* Buttons ---------------------------------------------------------------- */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:14px 28px;
  border-radius:999px;
  font-weight:600;
  font-size:15px;
  border:1px solid transparent;
  transition:transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
  white-space:nowrap;
}
.btn:hover{transform:translateY(-2px);}
.btn-dark{background:var(--ink);color:#fff;}
.btn-dark:hover{background:var(--red);}
.btn-outline{border-color:var(--ink);color:var(--ink);}
.btn-outline:hover{border-color:var(--red);color:var(--red);}
.btn-light{background:#fff;color:var(--ink);}
.btn-red{background:var(--red);color:#fff;}
.btn-red:hover{background:var(--red-dark);}
.btn-block{width:100%;}

/* Logo slots --------------------------------------------------------------
   Real logo files sit next to a styled text fallback, but only one of the
   two is ever shown: the img starts hidden and only reveals itself (while
   hiding the fallback) once it has actually finished loading; if it fails,
   onerror removes it and the fallback — already in normal flow — is what
   the visitor sees. Nothing is ever absolutely positioned over the other,
   so a slow/failed load can't leave both stacked or the container
   mis-sized. */
.logo-slot{display:inline-flex;align-items:center;min-height:1em;}
.logo-fallback{display:inline-flex;align-items:center;gap:8px;font-weight:800;letter-spacing:-0.01em;white-space:nowrap;}
.logo-fallback .accent-dot{color:var(--red);font-style:normal;}
.logo-fallback .seal{
  font-style:normal;
  font-weight:700;
  border:1.5px solid var(--red);
  color:var(--red);
  border-radius:4px;
  font-size:0.5em;
  padding:2px 4px;
  line-height:1;
}
.logo-img{display:none;object-fit:contain;}

.lift-lockup .logo-fallback{font-size:26px;color:var(--ink);}
.lift-lockup .logo-img{height:32px;width:auto;max-width:170px;}
.nicae-lockup .logo-fallback{font-size:15px;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-soft);}
.nicae-lockup .logo-img{height:32px;width:auto;max-width:70px;}
.footer .nicae-lockup .logo-fallback{color:#cfcbc0;}

/* Footer logo chip — no background box. Both logo files use dark ink /
   navy strokes, so on the dark footer they're flipped to a white
   silhouette via filter instead (brightness(0) forces every opaque pixel
   to black regardless of its original hue, then invert(1) flips that to
   white — alpha/transparency is untouched). */
.footer .logo-chip{
  display:inline-flex;align-items:center;margin-bottom:16px;
}
.footer .logo-chip .lift-lockup .logo-img{height:26px;filter:brightness(0) invert(1);}
.footer .logo-chip .lift-lockup .logo-fallback{color:#fff;}
.footer .logo-chip .chip-divider{width:1px;height:22px;background:rgba(255,255,255,0.2);margin:0 14px;}
.footer .logo-chip .nicae-lockup .logo-img{height:26px;filter:brightness(0) invert(1);}
.footer .logo-chip .nicae-lockup .logo-fallback{color:#cfcbc0;}

/* Header ------------------------------------------------------------------ */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,0.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  height:84px;
}
.header-brand{display:flex;align-items:center;gap:16px;}
.header-brand .divider{width:1px;height:26px;background:var(--line);}
.main-nav ul{display:flex;align-items:center;gap:36px;}
.main-nav a{
  font-size:15px;font-weight:600;color:var(--ink-soft);
  padding:6px 2px;border-bottom:2px solid transparent;
  transition:color .15s ease, border-color .15s ease;
}
.main-nav a:hover,.main-nav a.is-active{color:var(--ink);border-color:var(--red);}
.header-actions{display:flex;align-items:center;gap:18px;}
.nav-toggle{
  display:none;background:none;border:none;padding:8px;
  flex-direction:column;gap:5px;
}
.nav-toggle span{width:24px;height:2px;background:var(--ink);border-radius:2px;}

@media (max-width:900px){
  .nav-toggle{display:flex;}
  .main-nav{
    position:fixed;top:84px;left:0;right:0;height:calc(100vh - 84px);background:#fff;
    transform:translateX(100%);transition:transform .25s ease;
    padding:32px;overflow-y:auto;
  }
  .main-nav.is-open{transform:translateX(0);}
  .main-nav ul{flex-direction:column;align-items:flex-start;gap:0;}
  .main-nav li{width:100%;border-bottom:1px solid var(--line);}
  .main-nav a{display:block;padding:18px 0;}
  .header-actions .btn-outline{display:none;}
}

/* Hero ---------------------------------------------------------------------*/
.hero{padding:72px 0 96px;}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.hero h1{font-size:clamp(38px,5vw,60px);margin-bottom:22px;}
.hero .lede{font-size:18px;color:var(--ink-soft);max-width:520px;margin-bottom:36px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px;}
.hero-stats{display:flex;gap:40px;border-top:1px solid var(--line);padding-top:28px;}
.hero-stats strong{display:block;font-size:26px;font-weight:800;}
.hero-stats span{font-size:13px;color:var(--ink-faint);}

/* Media carousel ------------------------------------------------------------*/
.media-frame{
  position:relative;border-radius:var(--radius-lg);overflow:hidden;
  aspect-ratio:4/5;background:var(--paper-dark);box-shadow:var(--shadow-soft);
}
.media-carousel{position:relative;width:100%;height:100%;}
.carousel-track{position:relative;width:100%;height:100%;}
.carousel-slide{
  position:absolute;inset:0;opacity:0;visibility:hidden;
  transition:opacity .5s ease;
}
.carousel-slide.is-active{opacity:1;visibility:visible;}
.carousel-slide video,.carousel-slide img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover;}
.media-placeholder{
  position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:14px;color:#f2f0ea;
  background:
    radial-gradient(circle at 30% 20%, rgba(200,16,46,0.35), transparent 55%),
    linear-gradient(160deg,#161616,#0a0a0a);
  text-align:center;padding:32px;
}
.media-placeholder svg{width:52px;height:52px;opacity:0.9;}
.media-placeholder strong{font-size:16px;font-weight:700;}
.media-placeholder span{font-size:13px;color:#c9c6bd;max-width:260px;}
.carousel-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:40px;height:40px;border-radius:50%;border:none;
  background:rgba(255,255,255,0.92);color:var(--ink);
  display:flex;align-items:center;justify-content:center;font-size:18px;
  box-shadow:0 6px 16px rgba(0,0,0,0.2);
}
.carousel-arrow.prev{left:16px;}
.carousel-arrow.next{right:16px;}
.carousel-arrow:hover{background:var(--red);color:#fff;}
.carousel-dots{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:5;}
.carousel-dots .dot{width:22px;height:4px;border-radius:2px;background:rgba(255,255,255,0.4);border:none;padding:0;}
.carousel-dots .dot.is-active{background:#fff;width:30px;}

/* Level / category cards ----------------------------------------------------*/
.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.level-card{
  background:var(--paper-dark);color:#f4f2ec;border-radius:var(--radius-lg);
  padding:32px;border-top:3px solid var(--green);
}
.level-card.severe{border-top-color:var(--amber);}
.level-card.profound{border-top-color:var(--red);}
.level-card .level-tag{font-size:12px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-faint);}
.level-card h3{font-size:22px;margin:10px 0 14px;color:#fff;}
.level-card p{color:#c9c6bd;font-size:14.5px;margin-bottom:22px;}
.level-card ul li{font-size:14px;color:#e7e4dc;padding:9px 0;border-top:1px solid rgba(255,255,255,0.1);}
.level-card ul li:first-child{border-top:none;}

/* Pillars / promise ---------------------------------------------------------*/
.pillar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;}
.pillar{background:#fff;padding:32px 24px;}
.pillar .icon{width:38px;height:38px;color:var(--red);margin-bottom:16px;}
.pillar h4{font-size:15px;margin-bottom:8px;}
.pillar p{font-size:13.5px;color:var(--ink-soft);}

/* CTA band ------------------------------------------------------------------*/
.cta-band{
  background:var(--paper-dark);color:#fff;border-radius:var(--radius-lg);
  padding:56px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;
}
.cta-band h3{font-size:28px;margin-bottom:8px;}
.cta-band p{color:#c9c6bd;}

/* Footer ----------------------------------------------------------------- */
.footer{background:var(--paper-dark);color:#c9c6bd;padding:64px 0 28px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;}
.footer h5{color:#fff;font-size:13px;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:18px;}
.footer p{font-size:14px;line-height:1.7;}
.footer ul li{margin-bottom:10px;}
.footer ul a{font-size:14px;transition:color .15s ease;}
.footer ul a:hover{color:#fff;}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.12);padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:#8f8c83;}

/* ===================== ABOUT PAGE ===================== */
.founder-section{display:grid;grid-template-columns:0.85fr 1.15fr;gap:64px;align-items:center;}
.founder-portrait{
  position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:3/4;
  background:linear-gradient(160deg,#efece4,#dfdbcd);box-shadow:var(--shadow-soft);
}
.founder-portrait img{width:100%;height:100%;object-fit:cover;position:relative;z-index:2;}
.founder-portrait .media-placeholder{background:linear-gradient(160deg,#efece4,#dcd8ca);color:var(--ink-soft);}
.founder-portrait .media-placeholder svg{color:var(--red);}
.founder-quote{font-size:22px;font-weight:600;line-height:1.5;margin-bottom:24px;}
.founder-body p{color:var(--ink-soft);font-size:16px;margin-bottom:16px;}
.founder-sign{margin-top:28px;}
.founder-sign strong{display:block;font-size:17px;}
.founder-sign span{font-size:13.5px;color:var(--ink-faint);}

.timeline{position:relative;padding-left:36px;}
.timeline::before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:var(--line);}
.timeline-item{position:relative;padding-bottom:44px;}
.timeline-item:last-child{padding-bottom:0;}
.timeline-item::before{
  content:"";position:absolute;left:-36px;top:4px;width:14px;height:14px;border-radius:50%;
  background:#fff;border:3px solid var(--red);
}
.timeline-item .year{font-size:13px;font-weight:700;color:var(--red);letter-spacing:0.06em;margin-bottom:6px;display:block;}
.timeline-item h4{font-size:19px;margin-bottom:8px;}
.timeline-item p{color:var(--ink-soft);font-size:15px;}

/* ===================== PRODUCTS PAGE ===================== */
.brand-mark-visual{display:flex;justify-content:center;margin-bottom:40px;}
.brand-mark-visual img{height:110px;width:auto;}
.brand-meaning{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;margin-top:8px;}
.brand-letter{background:#fff;padding:26px 20px;text-align:center;}
.brand-letter .glyph{font-size:30px;font-weight:800;color:var(--red);margin-bottom:10px;}
.brand-letter h5{font-size:12.5px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:8px;}
.brand-letter p{font-size:12.5px;color:var(--ink-soft);}

.category-block{margin-bottom:88px;}
.category-block:last-child{margin-bottom:0;}
.category-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:24px;}
.category-head .level-tag{font-size:12.5px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--red);margin-bottom:8px;display:block;}
.category-head h2{font-size:28px;}
.category-head p{color:var(--ink-soft);font-size:15px;max-width:460px;}

.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.product-card{border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;background:#fff;transition:box-shadow .2s ease, transform .2s ease;}
.product-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-4px);}
.product-media{position:relative;aspect-ratio:4/3;background:var(--paper-alt);}
.product-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;}
.product-media .media-placeholder{color:var(--ink-soft);background:linear-gradient(155deg,#f2f0e9,#e4e0d4);}
.product-media .media-placeholder svg{color:var(--red);width:40px;height:40px;}
.product-media .badge{position:absolute;top:14px;left:14px;z-index:3;background:var(--red);color:#fff;font-size:11px;font-weight:700;letter-spacing:0.06em;padding:5px 10px;border-radius:999px;text-transform:uppercase;}
.product-body{padding:24px;}
.product-body h3{font-size:18px;margin-bottom:10px;}
.product-body p{font-size:14px;color:var(--ink-soft);line-height:1.6;}

.exo-section{background:var(--paper-dark);color:#f4f2ec;border-radius:var(--radius-lg);padding:64px;}
.exo-head{max-width:640px;margin-bottom:48px;}
.exo-head .eyebrow{color:var(--red);}
.exo-head h2{font-size:32px;color:#fff;margin-bottom:14px;}
.exo-head p{color:#c9c6bd;font-size:16px;}
.exo-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:56px;align-items:center;}
.exo-media{border-radius:var(--radius-md);overflow:hidden;aspect-ratio:3/4;position:relative;background:#161616;}
.exo-media img{width:100%;height:100%;object-fit:cover;position:relative;z-index:2;}
.exo-media .media-placeholder{background:linear-gradient(160deg,#1c1c1c,#050505);}
.exo-specs{display:flex;flex-direction:column;gap:0;}
.exo-spec{display:flex;gap:20px;padding:20px 0;border-top:1px solid rgba(255,255,255,0.1);}
.exo-spec:first-child{border-top:none;padding-top:0;}
.exo-spec .num{font-size:13px;font-weight:800;color:var(--red);flex-shrink:0;width:26px;}
.exo-spec h4{font-size:15.5px;color:#fff;margin-bottom:6px;}
.exo-spec p{font-size:13.5px;color:#b9b6ac;}
.exo-tags{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap;}
.exo-tags span{font-size:12px;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;border:1px solid rgba(255,255,255,0.2);color:#e7e4dc;padding:8px 14px;border-radius:999px;}

/* ===================== MEDIA PAGE ===================== */
/* Playlist grid — each card is a preview thumbnail that becomes the embed
   in place when clicked. The play badge is drawn in pure CSS (no inline
   SVG), so even if this stylesheet is missing or stale it collapses to an
   empty span rather than rendering an oversized default-size graphic. */
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.video-card{display:block;}
.video-thumb{
  position:relative;display:block;aspect-ratio:16/9;overflow:hidden;
  border-radius:var(--radius-md);background:var(--paper-alt);
  box-shadow:0 10px 30px -20px rgba(17,17,17,0.5);
}
.video-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.video-thumb iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.video-card:hover .video-thumb img{transform:scale(1.04);}
.video-play{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:54px;height:54px;border-radius:50%;
  background:rgba(17,17,17,0.78);
  display:flex;align-items:center;justify-content:center;
  transition:background .2s ease, transform .2s ease;
}
.video-play::after{
  content:"";width:0;height:0;margin-left:4px;
  border-left:15px solid #fff;
  border-top:9px solid transparent;
  border-bottom:9px solid transparent;
}
.video-card:hover .video-play{background:var(--red);transform:translate(-50%,-50%) scale(1.08);}
.video-info{display:block;padding:16px 2px 0;}
.video-info strong{
  display:block;font-size:15px;font-weight:600;line-height:1.4;
  margin-bottom:6px;color:var(--ink);
}
.video-card:hover .video-info strong{color:var(--red);}
.video-info span{font-size:12.5px;color:var(--ink-faint);}
.video-card.is-playing .video-info strong{color:var(--red);}
/* Swap preview for embed. Hidden by class, not the `hidden` attribute — the
   global `img{display:block}` author rule would override `[hidden]`. */
.video-card.is-playing .video-thumb img,
.video-card.is-playing .video-play{display:none;}
.video-card.is-playing .video-thumb{box-shadow:none;}

/* Channel band — displays the public channel URL in full. */
.channel-band{align-items:flex-end;}
.channel-band h3{margin-bottom:10px;}
.channel-band > div > p{margin-bottom:22px;max-width:460px;}
.channel-url{
  display:inline-flex;align-items:center;gap:10px;
  border:1px solid rgba(255,255,255,0.22);border-radius:999px;
  padding:11px 20px;font-size:14px;font-weight:500;color:#fff;
  word-break:break-all;transition:border-color .15s ease, background .15s ease;
}
.channel-url svg{width:20px;height:20px;color:var(--red);flex-shrink:0;}
.channel-url:hover{border-color:var(--red);background:rgba(200,16,46,0.12);}

/* ===================== CONTACT PAGE ===================== */
.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:start;}
.contact-info-card{background:var(--paper-alt);border-radius:var(--radius-lg);padding:36px;margin-bottom:24px;}
.contact-info-card h3{font-size:18px;margin-bottom:18px;}
.contact-row{display:flex;gap:16px;padding:16px 0;border-top:1px solid var(--line);}
.contact-row:first-of-type{border-top:none;}
.contact-row .icon{width:22px;height:22px;flex-shrink:0;color:var(--red);margin-top:2px;}
.contact-row strong{display:block;font-size:14.5px;margin-bottom:3px;}
.contact-row span,.contact-row a{font-size:14px;color:var(--ink-soft);}
.map-frame{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);height:280px;}
.map-frame iframe{width:100%;height:100%;border:0;}

.contact-form{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:40px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.form-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;}
.form-field label{font-size:13px;font-weight:600;color:var(--ink-soft);}
.form-field input,.form-field select,.form-field textarea{
  border:1px solid var(--line);border-radius:var(--radius-sm);padding:13px 16px;
  font-family:inherit;font-size:14.5px;color:var(--ink);background:var(--paper-alt);
  transition:border-color .15s ease, background .15s ease;
}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{
  outline:none;border-color:var(--red);background:#fff;
}
.form-field textarea{resize:vertical;min-height:120px;}
.form-note{font-size:12.5px;color:var(--ink-faint);margin-top:14px;}
.form-status{margin-top:16px;font-size:14px;font-weight:600;display:none;}
.form-status.is-success{display:block;color:var(--green);}
.form-status.is-error{display:block;color:var(--red);}

/* Reveal animation ---------------------------------------------------------
   Only hidden when the `.js` class is present (added by an inline script
   before paint) — with no JS at all, .reveal elements are never hidden. */
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}

/* Page hero (About / Products / Contact) ------------------------------------*/
.page-hero{padding:64px 0 56px;border-bottom:1px solid var(--line);}
.page-hero h1{font-size:clamp(32px,4.2vw,48px);margin-bottom:16px;}
.page-hero p{color:var(--ink-soft);font-size:17px;max-width:620px;}

/* Responsive ----------------------------------------------------------------*/
@media (max-width:960px){
  .hero-grid,.founder-section,.exo-grid,.contact-grid{grid-template-columns:1fr;}
  .founder-portrait{order:-1;max-width:360px;margin:0 auto;}
  .level-grid,.pillar-grid,.product-grid,.brand-meaning,.video-grid{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .exo-section{padding:40px 24px;}
  .form-row{grid-template-columns:1fr;}
}
@media (max-width:600px){
  .container{padding:0 20px;}
  .level-grid,.pillar-grid,.product-grid,.brand-meaning,.video-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .cta-band{flex-direction:column;align-items:flex-start;}
  .hero-stats{flex-wrap:wrap;row-gap:16px;}
  .channel-url{font-size:12.5px;padding:10px 16px;}
}
