:root {
  --yellow: #ffd400;
  --yellow-soft: #ffe45a;
  --black: #070707;
  --panel: #101010;
  --panel-2: #171717;
  --white: #f7f7f3;
  --muted: #a7a7a0;
  --line: rgba(255,255,255,.12);
  --radius: 28px;
  --container: min(1180px, calc(100vw - 48px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; width:100%; max-width:100%; overflow-x:hidden; }
body {
  margin: 0;
  color: var(--white);
  background: var(--black);
  font-family: "DM Sans", sans-serif;
  overflow-x: hidden;
  width:100%; max-width:100%;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { font: inherit; }

.noise {
  position: fixed; inset: 0; pointer-events: none; z-index: 999;
  opacity: .035;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
}
.cursor-glow {
  width: 520px; height: 520px; border-radius: 50%; position: fixed; z-index: -1;
  transform: translate(-50%,-50%); pointer-events: none;
  background: radial-gradient(circle, rgba(255,212,0,.1), transparent 65%);
  opacity: 0; transition: opacity .4s ease;
}

.site-header {
  width: var(--container); height: 82px; position: fixed; top: 18px; left: 50%; transform: translateX(-50%);
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 32px;
  padding: 0 18px 0 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 20px;
  background: rgba(8,8,8,.72); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
  z-index: 100; transition: .35s ease;
}
.site-header.scrolled { height: 70px; top: 10px; background: rgba(8,8,8,.9); }
.brand { width: 128px; height: 56px; overflow: hidden; border-radius: 12px; }
.brand img { width: 100%; height: 100%; object-fit: cover; }
.desktop-nav { display: flex; justify-content: center; gap: 30px; }
.desktop-nav a { color: #c8c8c1; font-size: 14px; transition: .2s ease; }
.desktop-nav a:hover { color: var(--white); }
.header-cta { padding: 13px 18px; color: var(--black); background: var(--yellow); border-radius: 12px; font-weight: 700; font-size: 14px; }
.menu-button { display:none; background:none; border:0; width:44px; height:44px; padding:12px; }
.menu-button span { display:block; height:2px; background:#fff; margin:6px 0; transition:.3s; }
.mobile-menu { display:none; }

.section { width: var(--container); margin: 0 auto; }
.hero { min-height: 100svh; padding-top: 170px; padding-bottom: 90px; display:grid; grid-template-columns: 1.08fr .92fr; align-items:center; gap: 74px; position:relative; }
.hero-copy { position: relative; z-index: 2; }
.eyebrow { display:inline-flex; align-items:center; gap:10px; color:#d9d9d2; font-size:13px; letter-spacing:.08em; text-transform:uppercase; margin-bottom:28px; }
.status-dot { width:8px; height:8px; border-radius:50%; background:var(--yellow); box-shadow:0 0 0 6px rgba(255,212,0,.12); animation:pulse 2s infinite; }
@keyframes pulse { 50% { box-shadow:0 0 0 12px rgba(255,212,0,0); } }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-family:"Manrope", sans-serif; }
h1 { font-size: clamp(58px, 6.15vw, 94px); line-height:.95; letter-spacing:-.065em; margin-bottom:28px; }
.accent-text, h2 span { color: var(--yellow); }
.hero-copy > p { max-width:650px; color:var(--muted); font-size:18px; line-height:1.7; margin-bottom:34px; }
.hero-actions { display:flex; align-items:center; gap:28px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:56px; padding:0 24px; border-radius:14px; font-weight:700; transition:transform .2s ease, background .2s ease; }
.button-primary { background:var(--yellow); color:var(--black); }
.button-primary:hover { background:var(--yellow-soft); }
.text-link { display:inline-flex; align-items:center; gap:10px; color:#e7e7e1; font-weight:600; border-bottom:1px solid rgba(255,255,255,.25); padding-bottom:5px; }
.text-link span { color:var(--yellow); }

.hero-visual { position:relative; min-height:590px; display:flex; align-items:center; justify-content:center; }
.dashboard-card { width:min(100%,520px); padding:26px; border:1px solid rgba(255,255,255,.12); border-radius:30px; background:linear-gradient(160deg,rgba(30,30,30,.98),rgba(11,11,11,.98)); box-shadow:0 35px 100px rgba(0,0,0,.45); transform-style:preserve-3d; transition:transform .15s ease; }
.dashboard-top,.dashboard-bottom,.chart-head { display:flex; align-items:center; justify-content:space-between; }
.mini-label { display:block; color:#898982; font-size:11px; text-transform:uppercase; letter-spacing:.14em; margin-bottom:7px; }
.dashboard-top strong { font-size:17px; }
.live-pill { display:flex; align-items:center; gap:7px; padding:8px 11px; border:1px solid var(--line); border-radius:999px; font-size:12px; color:#c8c8c1; }
.live-pill i { width:7px; height:7px; background:#62db87; border-radius:50%; }
.metric-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin:24px 0; }
.metric-grid article { padding:18px; background:#0b0b0b; border:1px solid var(--line); border-radius:18px; }
.metric-grid span,.metric-grid small { display:block; color:#898982; font-size:12px; }
.metric-grid strong { display:block; color:var(--yellow); font-size:34px; margin:8px 0 4px; }
.chart-wrap { padding:18px; background:#0b0b0b; border:1px solid var(--line); border-radius:20px; }
.chart-head { color:#92928c; font-size:12px; }
.chart-head b { color:#62db87; font-weight:500; }
.chart-wrap svg { width:100%; margin-top:10px; overflow:visible; }
.grid-line { fill:none; stroke:rgba(255,255,255,.08); stroke-width:1; }
.area { fill:url(#area); }
.line { fill:none; stroke:var(--yellow); stroke-width:4; stroke-linecap:round; stroke-dasharray:700; stroke-dashoffset:700; animation:drawLine 2.2s .5s ease forwards; }
@keyframes drawLine { to { stroke-dashoffset:0; } }
.dashboard-bottom { padding-top:20px; }
.avatar-stack { display:flex; }
.avatar-stack span { width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#292929;border:2px solid #121212;font-size:11px;margin-left:-8px; }
.avatar-stack span:first-child { margin-left:0; background:var(--yellow); color:#111; font-weight:800; }
.dashboard-bottom p { margin:0;color:#8d8d87;font-size:12px;line-height:1.45;text-align:right; }
.dashboard-bottom b { color:#fff; }
.floating-badge { position:absolute; display:flex; align-items:center; gap:10px; padding:14px 17px; border-radius:15px; background:rgba(24,24,24,.88); border:1px solid rgba(255,255,255,.12); backdrop-filter:blur(12px); color:#bcbcb5; font-size:12px; box-shadow:0 18px 50px rgba(0,0,0,.3); animation:float 4s ease-in-out infinite; }
.floating-badge span { color:var(--yellow); font-weight:800; font-size:19px; }
.badge-b { right:12px; bottom:16%; animation-delay:-2s; }
@keyframes float { 50% { transform:translateY(-12px); } }
.hero-orb { position:absolute; border-radius:50%; filter:blur(80px); pointer-events:none; }
.orb-one { width:300px;height:300px;background:rgba(255,212,0,.12);right:10%;top:20%; }
.orb-two { width:250px;height:250px;background:rgba(255,255,255,.04);left:35%;bottom:10%; }
.scroll-note { position:absolute; left:0; bottom:28px; display:flex;align-items:center;gap:12px;color:#6f6f6a;font-size:11px;text-transform:uppercase;letter-spacing:.15em; }
.scroll-note span { width:42px;height:1px;background:#4a4a46;position:relative;overflow:hidden; }
.scroll-note span::after { content:"";position:absolute;width:18px;height:1px;background:var(--yellow);animation:scrollLine 2s infinite; }
@keyframes scrollLine { from{left:-18px} to{left:42px} }

.logo-strip { border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;overflow:hidden; }
.marquee { overflow:hidden; }
.marquee-track { display:flex;align-items:center;width:max-content;animation:marquee 26s linear infinite; }
.marquee-track span { color:#686863;font-family:"Manrope";font-size:13px;font-weight:700;letter-spacing:.18em;margin:0 28px; }
.marquee-track i { width:6px;height:6px;background:var(--yellow);border-radius:50%;opacity:.7; }
@keyframes marquee { to{transform:translateX(-50%)} }

.intro,.services,.proof { padding:140px 0; }
.section-kicker { color:#777771;font-size:12px;font-weight:700;letter-spacing:.16em;margin-bottom:34px; }
.intro-grid,.services-head,.proof-head { display:grid;grid-template-columns:1.3fr .7fr;gap:80px;align-items:end; }
h2 { font-size:clamp(45px,5vw,72px);line-height:1.02;letter-spacing:-.055em;margin-bottom:0; }
.intro-copy p,.services-head > p,.proof-head > p { color:var(--muted);font-size:17px;line-height:1.7; }
.intro-copy p { margin-bottom:26px; }
.stats-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:75px; }
.stat-card { min-height:220px;padding:26px;border:1px solid var(--line);border-radius:22px;background:#0d0d0d;position:relative;overflow:hidden; }
.stat-card::after { content:"";position:absolute;inset:auto -40% -55% 10%;height:140px;background:radial-gradient(circle,rgba(255,212,0,.12),transparent 70%); }
.stat-card strong { font-family:"Manrope";font-size:58px;letter-spacing:-.05em; }
.stat-card em { color:var(--yellow);font-size:32px;font-style:normal;font-weight:700;white-space:nowrap; }
.stat-card p { position:absolute;left:26px;bottom:22px;margin:0;color:#9f9f98;font-size:14px; }
.stat-highlight { background:var(--yellow);color:#111; }
.stat-highlight p { color:#111;font-size:18px;font-weight:700;line-height:1.45; }
.stat-budget { background:linear-gradient(145deg,#1c1a0d,#0d0d0d);border-color:rgba(255,212,0,.34); }
.stat-budget strong,.stat-budget em { color:var(--yellow); }
.spark { position:absolute;right:24px;top:18px;font-size:28px;animation:spin 8s linear infinite; }
@keyframes spin { to{transform:rotate(360deg)} }

.services { border-top:1px solid var(--line); }
.services-head { align-items:start; }
.services-head > p { max-width:430px;margin-top:10px; }
.service-list { margin-top:72px;border-top:1px solid var(--line); }
.service-card { min-height:245px;display:grid;grid-template-columns:60px 100px 1fr 220px 50px;gap:28px;align-items:center;border-bottom:1px solid var(--line);position:relative;transition:.3s ease;padding:30px 12px; }
.service-card::before { content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,212,0,.06),transparent 65%);opacity:0;transition:.3s; }
.service-card:hover::before { opacity:1; }
.service-number { color:#666660;font-size:12px;align-self:start;margin-top:15px; }
.service-icon { width:82px;height:82px;border-radius:20px;background:var(--yellow);display:grid;place-items:center;position:relative;z-index:1; }
.service-icon svg { width:42px;fill:none;stroke:#111;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round; }
.service-copy { position:relative;z-index:1; }
.service-copy h3 { font-size:28px;letter-spacing:-.03em;margin-bottom:12px; }
.service-copy p { color:var(--muted);line-height:1.65;max-width:520px;margin:0; }
.service-tags { display:flex;flex-wrap:wrap;gap:8px;position:relative;z-index:1; }
.service-tags span { padding:8px 11px;border:1px solid var(--line);border-radius:999px;color:#94948e;font-size:11px; }
.service-card > a { width:46px;height:46px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:20px;position:relative;z-index:1;transition:.2s; }
.service-card:hover > a { background:var(--yellow);color:#111;transform:rotate(45deg); }

.process { width:min(1280px,calc(100vw - 32px));padding-bottom:140px; }
.process-panel { background:var(--yellow);color:#111;border-radius:36px;padding:80px;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;position:relative;overflow:hidden; }
.process-panel::after { content:"J";position:absolute;left:-20px;bottom:-160px;font-family:"Manrope";font-size:540px;font-weight:800;line-height:1;color:rgba(0,0,0,.045);pointer-events:none; }
.process-copy { position:relative;z-index:1; }
.process-copy .section-kicker { color:rgba(0,0,0,.48); }
.process-copy h2 span { color:#111;opacity:.48; }
.process-copy > p { max-width:430px;color:rgba(0,0,0,.67);font-size:16px;line-height:1.7;margin:28px 0 34px; }
.button-light { background:#111;color:#fff; }
.timeline { position:relative;z-index:1; }
.timeline-item { display:grid;grid-template-columns:66px 1fr;gap:22px;padding:28px 0;border-top:1px solid rgba(0,0,0,.18); }
.timeline-item:last-child { border-bottom:1px solid rgba(0,0,0,.18); }
.timeline-item > span { width:48px;height:48px;border:1px solid rgba(0,0,0,.28);border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:12px; }
.timeline-item h3 { font-size:22px;margin-bottom:8px; }
.timeline-item p { color:rgba(0,0,0,.63);line-height:1.55;margin:0; }

.proof-head { align-items:end; }
.client-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:70px; }
.client-card { min-height:250px;border:1px solid var(--line);border-radius:24px;padding:12px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#111,#0a0a0a);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;overflow:hidden; }
.client-card:hover { transform:translateY(-7px);border-color:rgba(255,212,0,.45);box-shadow:0 24px 60px rgba(0,0,0,.28); }
.client-logo-frame { aspect-ratio:1/1;width:100%;border-radius:18px;overflow:hidden;background:#f3f3f1;display:grid;place-items:center; }
.client-logo-frame img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s cubic-bezier(.2,.65,.2,1); }
.client-card:hover .client-logo-frame img { transform:scale(1.035); }
.client-card small { color:#aaa9a2;padding:14px 8px 7px;font-size:12px;letter-spacing:.03em; }

.cta-section { padding-bottom:140px; }
.cta-card { min-height:560px;padding:70px;border-radius:36px;background:var(--yellow);color:#111;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden; }
.cta-card h2 { font-size:clamp(44px,5.5vw,78px);position:relative;z-index:2; }
.cta-card h2 span { color:rgba(0,0,0,.48); }
.cta-card p { max-width:580px;color:rgba(0,0,0,.62);font-size:17px;line-height:1.6;margin:28px auto;position:relative;z-index:2; }
.cta-card .mini-label { color:rgba(0,0,0,.55);position:relative;z-index:2; }
.button-dark { background:#111;color:#fff;position:relative;z-index:2; }
.cta-orbit { position:absolute;border:1px solid rgba(0,0,0,.12);border-radius:50%; }
.orbit-one { width:650px;height:650px; }
.orbit-two { width:880px;height:880px; }
.cta-card::after { content:"";width:160px;height:160px;border-radius:50%;background:#111;position:absolute;filter:blur(90px);opacity:.12; }

footer { width:var(--container);margin:0 auto;padding:10px 0 35px; }
.footer-main { display:grid;grid-template-columns:180px 1fr 1fr;gap:50px;align-items:start;padding:50px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line); }
.footer-brand { width:150px; }
.footer-main p { color:#81817b;line-height:1.6;margin:4px 0 0; }
.footer-links { display:grid;grid-template-columns:repeat(2,1fr);gap:16px;justify-self:end;min-width:320px; }
.footer-links a { color:#b0b0aa; }
.footer-bottom { display:flex;justify-content:space-between;gap:20px;padding-top:22px;color:#666660;font-size:12px; }
.footer-bottom div { display:flex;gap:22px; }

.reveal { opacity:0; transform:translateY(36px); transition:opacity .8s ease,transform .8s cubic-bezier(.2,.65,.2,1); }
.reveal.visible { opacity:1;transform:none; }
.delay-1 { transition-delay:.1s; }.delay-2 { transition-delay:.2s; }.delay-3 { transition-delay:.3s; }

@media (max-width: 980px) {
  :root { --container:min(100% - 32px, 760px); }
  .desktop-nav,.header-cta { display:none; }
  .site-header { grid-template-columns:1fr auto; }
  .menu-button { display:block; }
  .menu-button.active span:first-child { transform:translateY(4px) rotate(45deg); }
  .menu-button.active span:last-child { transform:translateY(-4px) rotate(-45deg); }
  .mobile-menu { position:fixed;inset:0;background:#090909;z-index:90;padding:150px 30px 40px;display:flex;flex-direction:column;gap:20px;opacity:0;visibility:hidden;transition:.3s; }
  .mobile-menu.open { opacity:1;visibility:visible; }
  .mobile-menu > a:not(.button) { font-family:"Manrope";font-size:34px;font-weight:700; }
  .mobile-menu .button { margin-top:auto; }
  .hero { grid-template-columns:1fr;padding-top:150px;gap:30px; }
  .hero-visual { min-height:520px; }
  .intro-grid,.services-head,.proof-head,.process-panel { grid-template-columns:1fr;gap:34px; }
  .stats-grid,.client-grid { grid-template-columns:repeat(2,1fr); }
  .service-card { grid-template-columns:45px 80px 1fr 45px; }
  .service-tags { grid-column:3 / 4; }
  .process-panel { padding:60px 40px; }
  .footer-main { grid-template-columns:1fr 1fr; }
  .footer-main > p { display:none; }
}

@media (max-width: 640px) {
  :root { --container:calc(100vw - 24px); --radius:22px; }
  .site-header { top:8px;height:68px;border-radius:16px; }
  .brand { width:112px;height:48px; }
  .hero { padding-top:120px;padding-bottom:70px; }
  h1 { font-size:clamp(48px,15vw,68px); }
  .hero-copy > p { font-size:16px; }
  .hero-actions { align-items:flex-start;flex-direction:column;gap:22px; }
  .hero-visual { min-height:420px; }
  .dashboard-card { padding:16px;border-radius:22px; }
  .metric-grid strong { font-size:28px; }
  .floating-badge { display:none; }
  .scroll-note { display:none; }
  .intro,.services,.proof { padding:95px 0; }
  h2 { font-size:42px; }
  .intro-grid,.services-head,.proof-head { gap:28px; }
  .stats-grid,.client-grid { grid-template-columns:1fr 1fr;gap:8px; }
  .stat-card { min-height:175px;padding:20px; }
  .stat-card strong { font-size:46px; }
  .stat-card p { left:20px;bottom:18px; }
  .service-card { grid-template-columns:42px 1fr 42px;gap:14px;padding:28px 4px; }
  .service-number { grid-row:1; }
  .service-icon { width:62px;height:62px;grid-column:2; }
  .service-icon svg { width:34px; }
  .service-copy { grid-column:2 / 4; }
  .service-copy h3 { font-size:23px; }
  .service-tags { grid-column:2 / 4; }
  .service-card > a { grid-column:3;grid-row:1; }
  .process { width:calc(100vw - 16px);padding-bottom:95px; }
  .process-panel { padding:45px 24px;border-radius:24px; }
  .timeline-item { grid-template-columns:48px 1fr;gap:14px; }
  .timeline-item > span { width:40px;height:40px; }
  .client-card { min-height:0;padding:9px;border-radius:18px; }
  .client-logo-frame { border-radius:13px; }
  .client-card small { padding:10px 5px 5px;font-size:11px; }
  .cta-section { padding-bottom:90px; }
  .cta-card { min-height:500px;padding:40px 20px;border-radius:24px; }
  .footer-main { grid-template-columns:1fr;gap:34px; }
  .footer-links { justify-self:start;min-width:0;width:100%; }
  .footer-bottom { flex-direction:column; }
}

@media (max-width: 760px) {
  body,main,.section,.site-header,footer { max-width:100%; }
  .hero,.intro-grid,.services-head,.proof-head,.process-panel,.footer-main { min-width:0; }
  .hero-copy,.hero-visual,.dashboard-card,.intro-copy,.service-copy,.process-copy,.timeline,.form-shell { min-width:0; }
  h1,h2,h3,p,a,span,strong,small { overflow-wrap:anywhere; }
  .dashboard-top { gap:12px; }
  .dashboard-top > div { min-width:0; }
  .floating-badge { max-width:calc(100% - 24px); }
}

@media (max-width: 520px) {
  :root { --container:calc(100% - 20px); }
  .site-header { width:calc(100% - 16px);padding-left:8px;padding-right:10px; }
  .mobile-menu { padding-left:20px;padding-right:20px; }
  .mobile-menu > a:not(.button) { font-size:clamp(27px,9vw,34px); }
  .hero { width:100%;padding-left:10px;padding-right:10px; }
  h1 { font-size:clamp(42px,14vw,60px);letter-spacing:-.055em; }
  h2 { font-size:clamp(34px,11vw,42px); }
  .hero-visual { width:100%;min-height:auto;padding-top:18px; }
  .dashboard-card { width:100%;padding:14px; }
  .dashboard-top strong { font-size:15px; }
  .metric-grid { grid-template-columns:1fr; }
  .metric-grid article { padding:14px; }
  .chart-wrap { padding:12px; }
  .dashboard-bottom { align-items:flex-start;gap:12px; }
  .dashboard-bottom p { text-align:left; }
  .stats-grid { grid-template-columns:1fr; }
  .client-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
  .stat-card { min-height:155px; }
  .stat-card strong { font-size:52px; }
  .stat-card em { font-size:26px; }
  .service-card { grid-template-columns:36px 1fr 38px; }
  .service-copy,.service-tags { grid-column:1 / -1; }
  .service-icon { grid-column:2; }
  .service-card > a { grid-column:3; }
  .process { width:calc(100% - 10px); }
  .process-panel { padding:38px 18px; }
  .timeline-item { grid-template-columns:40px minmax(0,1fr); }
  .cta-card { padding:36px 16px; }
  .footer-bottom div { flex-wrap:wrap; }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important; }
  .reveal { opacity:1;transform:none; }
}

.footer-social { display:flex;flex-direction:column;gap:10px;justify-self:end; }
.footer-social a { display:flex;align-items:center;gap:9px;color:#b0b0aa;font-size:13px;transition:color .2s ease; }
.footer-social a:hover { color:var(--yellow); }
@media (max-width:1100px) { .footer-main { grid-template-columns:150px 1fr 1fr;gap:30px; } .footer-social { grid-column:2 / -1;justify-self:start; } }
@media (max-width:640px) { .footer-social { grid-column:auto;justify-self:start;width:100%; } .footer-social a { overflow-wrap:anywhere; } }


/* Footer responsive hardening */
.footer-main {
  grid-template-columns:minmax(140px,180px) minmax(190px,1fr) minmax(220px,1fr) minmax(220px,1fr);
  width:100%;
}
.footer-main > * { min-width:0; }
.footer-links { min-width:0; width:100%; justify-self:stretch; }
.footer-links a,.footer-social a { overflow-wrap:normal; word-break:normal; hyphens:none; }
.footer-social { min-width:0; justify-self:stretch; }
.footer-social span { min-width:0; overflow-wrap:anywhere; }
.footer-bottom a { color:inherit; transition:color .2s ease; }
.footer-bottom a:hover { color:var(--yellow); }

@media (max-width:1100px) {
  .footer-main { grid-template-columns:minmax(130px,160px) minmax(0,1fr) minmax(0,1fr); gap:28px; }
  .footer-main > p { display:none; }
  .footer-social { grid-column:auto; justify-self:stretch; }
}
@media (max-width:700px) {
  footer { width:calc(100% - 24px); padding-bottom:26px; }
  .footer-main { display:flex; flex-direction:column; gap:28px; padding:38px 0; }
  .footer-brand { width:142px; max-width:60%; }
  .footer-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; width:100%; }
  .footer-links a { display:block; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.07); font-size:15px; line-height:1.35; }
  .footer-links a:nth-child(odd) { padding-right:12px; }
  .footer-social { width:100%; gap:0; }
  .footer-social a { width:100%; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.07); font-size:14px; line-height:1.4; }
  .footer-bottom { width:100%; flex-direction:column; align-items:flex-start; gap:14px; padding-top:20px; line-height:1.5; }
  .footer-bottom div { display:flex; flex-wrap:wrap; gap:18px; }
}
@media (max-width:380px) {
  .footer-links { grid-template-columns:1fr; }
  .footer-links a:nth-child(odd) { padding-right:0; }
}
