/* ==========================================================================
   OASISPRO — oasispro.hk
   ========================================================================== */

:root{
  --ink:      #0F111C;
  --ink-2:    #161826;
  --ink-3:    #1D2032;
  --line:     rgba(178,182,202,.16);
  --line-2:   rgba(178,182,202,.28);
  --txt:      #EDEEF5;
  --txt-2:    #B2B6CA;
  --txt-3:    #7C819A;
  --acc:      #9184D9;
  --acc-2:    #B6ACEB;
  --acc-pale: #D2CEFD;
  --acc-deep: #423A6A;

  --wrap: 1180px;
  --pad: clamp(20px, 5vw, 40px);
  --r: 16px;
  --r-lg: 24px;

  --f-en: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  --f-cn: "Noto Sans SC", "PingFang SC", "PingFang HK", "Hiragino Sans GB",
          "Microsoft YaHei", sans-serif;
  --f: var(--f-en), var(--f-cn);

  --ease: cubic-bezier(.2,.7,.25,1);
}

*,*::before,*::after{ box-sizing:border-box; }

html{
  scroll-behavior:smooth;
  scroll-padding-top:88px;
  -webkit-text-size-adjust:100%;
}
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }

body{
  margin:0;
  background:var(--ink);
  color:var(--txt);
  font-family:var(--f);
  font-size:16px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
html[data-lang="zh"] body{ letter-spacing:.01em; }

img{ max-width:100%; height:auto; display:block; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3{ margin:0; font-weight:700; line-height:1.25; letter-spacing:-.01em; }
p{ margin:0; }
ul,ol{ margin:0; padding:0; list-style:none; }

::selection{ background:var(--acc); color:#fff; }

:focus-visible{
  outline:2px solid var(--acc-2);
  outline-offset:3px;
  border-radius:4px;
}

.wrap{ width:100%; max-width:var(--wrap); margin-inline:auto; padding-inline:var(--pad); }

.skip{
  position:absolute; left:-9999px; top:0; z-index:200;
  background:var(--acc); color:#fff; padding:12px 20px; border-radius:0 0 10px 0;
}
.skip:focus{ left:0; }

/* ── reveal ─────────────────────────────────────────────────────────── */
.reveal{ opacity:0; transform:translateY(22px); transition:opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.in{ opacity:1; transform:none; }
.d1{ transition-delay:.07s } .d2{ transition-delay:.14s }
.d3{ transition-delay:.21s } .d4{ transition-delay:.28s } .d5{ transition-delay:.35s }
@media (prefers-reduced-motion: reduce){
  .reveal{ opacity:1 !important; transform:none !important; transition:none !important; }
}

/* ── nav ────────────────────────────────────────────────────────────── */
.nav{
  position:fixed; inset:0 0 auto 0; z-index:100;
  transition:background .35s var(--ease), border-color .35s var(--ease), backdrop-filter .35s;
  border-bottom:1px solid transparent;
}
.nav.stuck{
  background:rgba(15,17,28,.82);
  backdrop-filter:saturate(160%) blur(16px);
  -webkit-backdrop-filter:saturate(160%) blur(16px);
  border-bottom-color:var(--line);
}
.nav-in{ display:flex; align-items:center; gap:24px; height:72px; }
.brand img{ width:132px; }
.nav-links{ display:flex; gap:28px; margin-left:auto; font-size:14.5px; color:var(--txt-2); }
.nav-links a{ position:relative; padding:6px 0; transition:color .25s; white-space:nowrap; }
.nav-links a::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:1.5px;
  background:var(--acc); transform:scaleX(0); transform-origin:left;
  transition:transform .3s var(--ease);
}
.nav-links a:hover{ color:var(--txt); }
.nav-links a:hover::after{ transform:scaleX(1); }

.nav-act{ display:flex; align-items:center; gap:12px; }
.lang{
  font:inherit; font-size:13px; font-weight:600; letter-spacing:.06em;
  color:var(--txt-2); background:transparent;
  border:1px solid var(--line-2); border-radius:999px;
  padding:7px 16px; cursor:pointer;
  transition:color .25s, border-color .25s, background .25s;
}
.lang:hover{ color:var(--txt); border-color:var(--acc); background:rgba(145,132,217,.1); }
.lang-o{ display:none; }
html[data-lang="zh"] .lang-o[data-on="zh"],
html[data-lang="en"] .lang-o[data-on="en"]{ display:inline; }

.burger{
  display:none; width:40px; height:40px; padding:9px 8px;
  background:transparent; border:1px solid var(--line-2); border-radius:10px; cursor:pointer;
  flex-direction:column; justify-content:space-between;
}
.burger span{ display:block; height:1.5px; background:var(--txt); border-radius:2px; transition:transform .3s var(--ease), opacity .2s; }
.burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(9.25px) rotate(45deg); }
.burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-9.25px) rotate(-45deg); }

@media (max-width: 940px){
  .burger{ display:flex; }
  .nav-links{
    position:fixed; inset:72px 0 auto 0;
    flex-direction:column; gap:0; margin:0;
    background:rgba(15,17,28,.97);
    backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
    border-bottom:1px solid var(--line);
    padding:8px var(--pad) 24px;
    font-size:16px;
    transform:translateY(-8px); opacity:0; pointer-events:none;
    transition:opacity .3s var(--ease), transform .3s var(--ease);
  }
  .nav-links.open{ opacity:1; transform:none; pointer-events:auto; }
  .nav-links a{ padding:14px 0; border-bottom:1px solid var(--line); }
  .nav-links a::after{ display:none; }
  .nav.stuck, .nav:has(.nav-links.open){ background:rgba(15,17,28,.9); }
}

/* ── hero ───────────────────────────────────────────────────────────── */
.hero{
  position:relative;
  min-height:100svh;
  display:flex; align-items:center;
  padding:120px 0 96px;
  overflow:hidden;
  isolation:isolate;
}
.hero-bg{ position:absolute; inset:0; z-index:-1; }
.hero-bg .orb{ position:absolute; border-radius:50%; filter:blur(90px); opacity:.5; }
.hero-bg .o1{
  width:min(720px,90vw); aspect-ratio:1; left:-14%; top:-22%;
  background:radial-gradient(circle, rgba(145,132,217,.55), transparent 66%);
}
.hero-bg .o2{
  width:min(660px,86vw); aspect-ratio:1; right:-12%; bottom:-26%;
  background:radial-gradient(circle, rgba(53,59,128,.75), transparent 66%);
}
.hero-bg .grid{
  position:absolute; inset:0;
  background-image:
    linear-gradient(to right, rgba(178,182,202,.06) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(178,182,202,.06) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse 80% 65% at 50% 40%, #000 20%, transparent 78%);
  -webkit-mask-image:radial-gradient(ellipse 80% 65% at 50% 40%, #000 20%, transparent 78%);
}
.hero-in{ position:relative; }

.eyebrow{
  font-size:12.5px; font-weight:600; letter-spacing:.22em; text-transform:uppercase;
  color:var(--acc-2); margin-bottom:26px;
}
.hero-mark img{ width:min(560px, 82%); }
.hero-name{ margin-top:24px; display:flex; flex-direction:column; gap:4px; }
.hero-name span{ font-size:clamp(19px,2.6vw,27px); font-weight:700; color:var(--txt); letter-spacing:.04em; }
.hero-name em{ font-style:normal; font-size:clamp(11.5px,1.5vw,14px); font-weight:500; letter-spacing:.2em; color:var(--txt-3); text-transform:uppercase; }
.hero-lede{
  margin-top:26px; max-width:640px;
  font-size:clamp(16px,1.8vw,19px); line-height:1.85; color:var(--txt-2);
}

.chips{ display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.chips li{
  font-size:13px; font-weight:500; color:var(--acc-pale);
  padding:8px 16px; border:1px solid rgba(145,132,217,.4);
  border-radius:999px; background:rgba(145,132,217,.09);
  backdrop-filter:blur(4px);
}

.cta{ display:flex; flex-wrap:wrap; gap:14px; margin-top:42px; }
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-size:15px; font-weight:600; padding:14px 30px; border-radius:999px;
  transition:transform .25s var(--ease), background .25s, border-color .25s, box-shadow .25s;
  white-space:nowrap;
}
.btn:hover{ transform:translateY(-2px); }
.btn-p{ background:var(--acc); color:#fff; box-shadow:0 10px 30px -10px rgba(145,132,217,.8); }
.btn-p:hover{ background:var(--acc-2); box-shadow:0 16px 38px -12px rgba(145,132,217,.9); }
.btn-g{ border:1px solid var(--line-2); color:var(--txt); }
.btn-g:hover{ border-color:var(--acc); background:rgba(145,132,217,.1); }

.scroll{
  position:absolute; left:50%; bottom:34px; translate:-50% 0;
  width:24px; height:38px; border:1px solid var(--line-2); border-radius:999px;
}
.scroll span{
  position:absolute; left:50%; top:8px; translate:-50% 0;
  width:3px; height:7px; border-radius:2px; background:var(--acc-2);
  animation:sc 2s var(--ease) infinite;
}
@keyframes sc{ 0%{opacity:0;transform:translateY(0)} 30%{opacity:1} 70%{opacity:1} 100%{opacity:0;transform:translateY(13px)} }
@media (max-width:720px){ .scroll{ display:none; } }

/* ── track record ───────────────────────────────────────────────────── */
.track{
  border-block:1px solid var(--line);
  background:
    radial-gradient(ellipse 60% 140% at 50% 0%, rgba(145,132,217,.16), transparent 70%),
    var(--ink-2);
  padding:clamp(64px,9vw,104px) 0;
  text-align:center;
}
.track-num{
  display:inline-flex; align-items:baseline; justify-content:center;
  font-family:var(--f-en);
  font-size:clamp(64px,12vw,150px); font-weight:800; line-height:1;
  letter-spacing:-.04em;
  background:linear-gradient(170deg, #FFFFFF 12%, var(--acc-2) 62%, var(--acc-deep) 108%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  margin:20px 0 0;
}
.track-num .cur{ order:-1; font-size:.34em; font-weight:700; letter-spacing:-.01em; margin-right:.08em; }
.track-num .unit{ font-size:.52em; margin-left:.02em; }
.track-cap{ margin-top:22px; font-size:clamp(15px,1.9vw,18px); color:var(--txt-2); }
.note{
  margin:22px auto 0; max-width:640px;
  font-size:12.5px; line-height:1.75; color:var(--txt-3);
}

/* ── section shell ──────────────────────────────────────────────────── */
.sec{ padding:clamp(76px,10vw,130px) 0; position:relative; }
.sec-alt{ background:var(--ink-2); border-block:1px solid var(--line); }

.kicker{
  font-family:var(--f-en);
  font-size:12px; font-weight:700; letter-spacing:.2em; text-transform:uppercase;
  color:var(--acc); margin-bottom:14px;
  display:flex; align-items:center; gap:12px;
}
.kicker::before{ content:""; width:26px; height:1.5px; background:var(--acc); flex:none; }
.sec-head{ max-width:820px; margin-bottom:clamp(34px,4.5vw,54px); }
.sec-head h2{ font-size:clamp(26px,3.9vw,44px); }
.lede{
  max-width:760px; font-size:clamp(15.5px,1.6vw,17.5px);
  line-height:1.9; color:var(--txt-2);
  margin-bottom:clamp(34px,4.5vw,52px);
}
.sec-head .lede{ margin-top:22px; margin-bottom:0; }
.fineprint{ margin-top:28px; font-size:12.5px; line-height:1.75; color:var(--txt-3); max-width:760px; }

/* ── cards ──────────────────────────────────────────────────────────── */
.cards{ display:grid; gap:20px; }
.c3{ grid-template-columns:repeat(3,1fr); }
.c2{ grid-template-columns:repeat(2,1fr); }
@media (max-width:900px){ .c3,.c2{ grid-template-columns:1fr; } }

.card{
  position:relative; overflow:hidden;
  padding:clamp(26px,3vw,36px);
  background:linear-gradient(165deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  transition:transform .4s var(--ease), border-color .4s, background .4s;
}
.card::after{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background:radial-gradient(400px circle at var(--mx,50%) var(--my,0%), rgba(145,132,217,.14), transparent 62%);
  opacity:0; transition:opacity .4s;
}
.card:hover{ transform:translateY(-4px); border-color:rgba(145,132,217,.42); }
.card:hover::after{ opacity:1; }
.card h3{ font-size:clamp(18px,2vw,21px); margin-bottom:12px; }
.card p{ color:var(--txt-2); font-size:15px; line-height:1.8; }

.card .ic{
  display:grid; place-items:center;
  width:48px; height:48px; margin-bottom:22px;
  border-radius:14px; color:var(--acc-2);
  background:rgba(145,132,217,.13); border:1px solid rgba(145,132,217,.3);
}
.card .ic svg{ width:23px; height:23px; }

.card.num .n{
  display:block; font-family:var(--f-en);
  font-size:38px; font-weight:800; line-height:1; letter-spacing:-.03em;
  color:transparent; -webkit-text-stroke:1.2px rgba(145,132,217,.55);
  margin-bottom:20px;
}

.card.big{ padding:clamp(32px,3.6vw,44px); }
.card.big .tag{
  font-size:12px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--txt-3); margin-bottom:14px;
}
.card.big .en-h{
  font-family:var(--f-en);
  font-size:clamp(24px,3vw,32px); font-weight:800; letter-spacing:-.02em;
  color:var(--acc-pale); margin-bottom:16px;
}

/* ── team logo rail ─────────────────────────────────────────────────── */
.lg-group{ margin-bottom:20px; }
.lg-lab{
  font-size:11.5px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--txt-3); margin-bottom:12px; padding-left:2px;
}
.logos{
  display:grid; align-items:center; gap:8px;
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:linear-gradient(165deg, rgba(255,255,255,.05), rgba(255,255,255,.015));
  padding:clamp(18px,2.2vw,28px) clamp(14px,1.8vw,24px);
}
.logos-5{ grid-template-columns:repeat(5,1fr); }
.logos-3{ grid-template-columns:repeat(3,1fr); }

.logos .lg{
  display:grid; place-items:center; padding:12px 10px; min-height:72px; position:relative;
}
.logos .lg + .lg::before{
  content:""; position:absolute; left:0; top:18%; bottom:18%; width:1px; background:var(--line);
}
.logos img{
  max-height:34px; max-width:124px; width:auto; object-fit:contain;
  filter:brightness(0) invert(1) opacity(.6);
  transition:filter .35s var(--ease), transform .35s var(--ease);
}
.logos .lg-tall img{ max-height:50px; max-width:88px; }
.logos .lg:hover img{ filter:brightness(0) invert(1) opacity(1); transform:scale(1.05); }

@media (max-width:860px){
  .logos-5, .logos-3{ grid-template-columns:repeat(2,1fr); gap:4px; }
  .logos .lg + .lg::before{ display:none; }
  .logos .lg{ border-top:1px solid var(--line); }
  .logos .lg:nth-child(1), .logos .lg:nth-child(2){ border-top:0; }
  .logos-5 .lg:last-child, .logos-3 .lg:last-child{ grid-column:1 / -1; }
}

/* ── platform mix ───────────────────────────────────────────────────── */
.plats{
  margin-top:20px; padding:clamp(24px,3vw,32px);
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:rgba(255,255,255,.022);
  display:flex; flex-wrap:wrap; align-items:center; gap:20px 34px;
}
.plats-lab{
  font-size:12px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--txt-3);
}
.plats ul{ display:flex; flex-wrap:wrap; gap:12px; }
.plats li{
  display:flex; align-items:baseline; gap:10px;
  padding:10px 20px; border-radius:999px;
  border:1px solid var(--line-2); color:var(--txt-2);
  transition:border-color .3s, background .3s;
}
.plats li b{ font-family:var(--f-en); font-size:16px; font-weight:700; color:var(--txt); }
.plats li span{ font-size:12px; color:var(--txt-3); }
.plats li.on{ border-color:var(--acc); background:rgba(145,132,217,.12); }
.plats li.on b{ color:var(--acc-pale); }
.plats li.on span{ color:var(--acc); }

/* ── market ─────────────────────────────────────────────────────────── */
.mk{ display:grid; grid-template-columns:.85fr 1.15fr; gap:28px; align-items:stretch; }
@media (max-width:940px){ .mk{ grid-template-columns:1fr; } }

.mk-core{
  display:flex; flex-direction:column;
  padding:clamp(28px,3.2vw,38px);
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:linear-gradient(165deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
}
.mk-core .tag{
  font-size:12px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--txt-3); margin-bottom:22px;
}
.mk-list li{
  display:grid; grid-template-columns:auto 1fr; gap:4px 18px;
  padding:22px 0; border-top:1px solid var(--line);
}
.mk-list li:first-child{ border-top:0; padding-top:0; }
.mk-list li:last-child{ padding-bottom:0; }
.mk-list .n{
  grid-row:1 / span 2; align-self:start;
  font-family:var(--f-en); font-size:26px; font-weight:800; line-height:1.1;
  color:transparent; -webkit-text-stroke:1.1px rgba(145,132,217,.6);
}
.mk-list .t{ display:flex; flex-wrap:wrap; align-items:baseline; gap:10px; }
.mk-list .t b{ font-size:clamp(19px,2.2vw,24px); font-weight:700; }
.mk-list .t i{ font-style:normal; font-family:var(--f-en); font-size:12.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--txt-3); }
.mk-list .st{ font-size:13.5px; color:var(--acc-2); }

.mk-note{
  margin-top:auto; padding-top:26px;
  border-top:1px solid var(--line);
  display:flex; flex-direction:column; gap:8px;
}
.mk-note .l{
  font-size:11.5px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--txt-3);
}
.mk-note .v{ font-size:14px; line-height:1.7; color:var(--txt-2); }
.mk-note .v b{ color:var(--acc-pale); font-weight:600; }

.mk-flow{
  position:relative; overflow:hidden;
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:
    radial-gradient(ellipse 90% 70% at 50% 45%, rgba(53,59,128,.35), transparent 72%),
    var(--ink-3);
  padding:clamp(18px,2.4vw,28px) clamp(14px,2vw,24px) 0;
  display:flex; flex-direction:column;
}
.mk-flow svg{ width:100%; height:auto; flex:1; }

.fl-line{
  fill:none; stroke:url(#fl); stroke-width:1.6;
  stroke-dasharray:5 6; stroke-linecap:round;
  animation:flow 2.4s linear infinite;
}
@keyframes flow{ to{ stroke-dashoffset:-22; } }
@media (prefers-reduced-motion: reduce){ .fl-line{ animation:none; } }

.fl-node rect{
  fill:rgba(255,255,255,.05);
  stroke:var(--line-2); stroke-width:1;
}
.fl-hq rect{ fill:rgba(145,132,217,.16); stroke:rgba(145,132,217,.55); }
.fl-mkt rect{ fill:rgba(255,255,255,.055); stroke:rgba(145,132,217,.3); }

.fl-t{
  fill:var(--txt); font-family:var(--f); font-size:17px; font-weight:700;
}
.fl-lg{ font-size:20px; }
.fl-hq .fl-t{ fill:var(--acc-pale); }
.fl-s{
  fill:var(--txt-3); font-family:var(--f-en); font-size:12px;
  font-weight:500; letter-spacing:.06em;
}
.fl-dot{ fill:var(--acc-2); }

.mk-cap{
  padding:14px 8px 18px; font-size:12.5px; line-height:1.7;
  color:var(--txt-2); text-align:center;
  border-top:1px solid var(--line); margin-top:6px;
}

/* ── steps ──────────────────────────────────────────────────────────── */
.steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; counter-reset:s; }
@media (max-width:900px){ .steps{ grid-template-columns:1fr; } }
.steps li{
  position:relative; padding:clamp(26px,3vw,34px);
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:linear-gradient(165deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  transition:transform .4s var(--ease), border-color .4s;
}
.steps li:hover{ transform:translateY(-4px); border-color:rgba(145,132,217,.42); }
.steps li::before{
  content:""; position:absolute; left:clamp(26px,3vw,34px); right:clamp(26px,3vw,34px); top:0;
  height:2px; background:linear-gradient(90deg, var(--acc), transparent);
  border-radius:2px;
}
.steps .sn{
  font-family:var(--f-en); font-size:11.5px; font-weight:700;
  letter-spacing:.2em; color:var(--acc); margin-bottom:16px;
}
.steps h3{ font-size:clamp(18px,2vw,21px); margin-bottom:12px; }
.steps li p:last-child{ color:var(--txt-2); font-size:15px; line-height:1.8; }

/* ── gallery ────────────────────────────────────────────────────────── */
.gal{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.gal figure{ margin:0; overflow:hidden; border-radius:var(--r-lg); border:1px solid var(--line); background:var(--ink-3); }
.gal .g1{ grid-column:1 / -1; }
.gal img{ width:100%; height:100%; object-fit:cover; transition:transform 1.1s var(--ease); }
.gal .g1 img{ aspect-ratio:2.9 / 1; }
.gal .g2 img, .gal .g3 img{ aspect-ratio:16 / 10; }
.gal figure:hover img{ transform:scale(1.045); }
@media (max-width:720px){
  .gal{ grid-template-columns:1fr; }
  .gal .g1 img{ aspect-ratio:16 / 9; }
}

/* ── why ────────────────────────────────────────────────────────────── */
.why{
  background:
    radial-gradient(ellipse 70% 90% at 50% 100%, rgba(53,59,128,.4), transparent 70%),
    var(--ink);
}
.why-list{ display:grid; grid-template-columns:repeat(2,1fr); gap:2px; }
@media (max-width:820px){ .why-list{ grid-template-columns:1fr; } }
.why-list li{
  display:flex; align-items:flex-start; gap:16px;
  padding:26px 4px; border-top:1px solid var(--line);
  font-size:clamp(16px,1.9vw,19px); line-height:1.7; color:var(--txt);
}
@media (min-width:821px){
  .why-list li:nth-child(odd){ padding-right:34px; }
  .why-list li:nth-child(even){ padding-left:34px; border-left:1px solid var(--line); }
}
.why-list li::before{
  content:""; flex:none; width:9px; height:9px; margin-top:.6em;
  border-radius:50%; background:var(--acc);
  box-shadow:0 0 0 5px rgba(145,132,217,.16);
}

/* ── footer ─────────────────────────────────────────────────────────── */
.foot{ background:var(--ink-2); border-top:1px solid var(--line); padding-top:clamp(56px,7vw,84px); }
.foot-in{ display:flex; flex-wrap:wrap; gap:32px 48px; justify-content:space-between; padding-bottom:40px; }
.foot-b img{ width:150px; opacity:.9; margin-bottom:18px; }
.foot-b p{ font-size:13.5px; color:var(--txt-2); }
.foot-ad{ margin-top:6px !important; color:var(--txt-3) !important; max-width:420px; }
.foot-ct{ display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.foot-l{
  font-size:11.5px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--acc);
}
.foot-mail{
  font-size:clamp(18px,2.2vw,24px); font-weight:700; letter-spacing:-.01em;
  color:var(--txt); position:relative; padding-bottom:3px;
}
.foot-mail::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:1.5px;
  background:var(--acc); transform:scaleX(0); transform-origin:left;
  transition:transform .3s var(--ease);
}
.foot-mail:hover{ color:var(--acc-pale); }
.foot-mail:hover::after{ transform:scaleX(1); }

.foot-n{ display:flex; flex-wrap:wrap; gap:14px 28px; align-items:flex-start; margin-top:10px; font-size:14px; color:var(--txt-2); }
.foot-n a{ transition:color .25s; }
.foot-n a:hover{ color:var(--acc-2); }
.foot-c{
  display:flex; flex-wrap:wrap; gap:8px 24px; justify-content:space-between;
  padding:22px 0 30px; border-top:1px solid var(--line);
  font-size:12.5px; color:var(--txt-3);
}
