/* ================================================================
   STAR LABS Kft.  ·  style.css
   Design: Clay.global inspired — Instrument Serif + DM Sans
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500&display=swap');

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 16px; scroll-behavior: smooth; }

:root {
  --white:    #ffffff;
  --cream:    #f5f3ee;
  --black:    #0a0a0a;
  --ink:      #1a1a1a;
  --muted:    #6b6b6b;
  --border:   #e2e0db;
  --gold:     #b8945a;
  --green:    #2d7d4f;
  --nav-h:    76px;
  --crm-h:    36px;
  --r:        12px;
}

body { background: var(--white); color: var(--ink); font-family: 'DM Sans', sans-serif; font-weight: 300; overflow-x: hidden; cursor: none; }
::selection { background: var(--ink); color: var(--white); }
::-webkit-scrollbar { width: 2px; }
::-webkit-scrollbar-thumb { background: var(--gold); }

/* ── CURSOR ── */
#cur-dot { position:fixed;z-index:9999;width:8px;height:8px;border-radius:50%;background:var(--ink);pointer-events:none;transform:translate(-50%,-50%);transition:width .2s,height .2s; }
#cur-ring { position:fixed;z-index:9998;width:40px;height:40px;border-radius:50%;border:1px solid rgba(26,26,26,.25);pointer-events:none;transform:translate(-50%,-50%);transition:all .18s ease .04s; }
.c-expand #cur-ring { transform:translate(-50%,-50%) scale(2.2);border-color:rgba(26,26,26,.5); }
.c-dark #cur-dot { background:var(--white); }
.c-dark #cur-ring { border-color:rgba(255,255,255,.3); }
@media(hover:none){#cur-dot,#cur-ring{display:none}body{cursor:auto}}

/* ── LOADER ── */
#loader { position:fixed;inset:0;z-index:9000;background:var(--ink);display:flex;align-items:center;justify-content:center;transition:opacity .6s,visibility .6s; }
#loader.hidden { opacity:0;visibility:hidden;pointer-events:none; }
.loader-inner { display:flex;flex-direction:column;align-items:center;gap:20px; }
.loader-logo { font-family:'Instrument Serif',serif;font-size:26px;color:var(--white);letter-spacing:.02em; }
.loader-logo em { font-style:italic;color:var(--gold); }
.loader-bar { width:200px;height:1px;background:rgba(255,255,255,.1);border-radius:1px;overflow:hidden; }
.loader-fill { height:100%;width:0;background:var(--gold);animation:loaderFill 1.6s ease forwards; }
@keyframes loaderFill { to { width:100%; } }

/* ── CRM BAR ── */
#crmBar { position:fixed;top:0;left:0;right:0;z-index:500;height:var(--crm-h);background:#111;display:flex;align-items:center;justify-content:flex-end;padding:0 32px;gap:14px;border-bottom:1px solid rgba(255,255,255,.07); }
.crm-text { font-size:11px;color:rgba(255,255,255,.3);letter-spacing:.04em; }
#crmBtn { display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);text-decoration:none;padding:5px 14px;border:1px solid rgba(184,148,90,.3);border-radius:100px;transition:all .25s;cursor:none; }
#crmBtn:hover { background:rgba(184,148,90,.1);border-color:var(--gold); }

/* ── NAV ── */
nav { position:fixed;top:var(--crm-h);left:0;right:0;z-index:400;height:var(--nav-h);padding:0 52px;display:flex;align-items:center;justify-content:space-between;transition:background .4s,box-shadow .4s; }
nav.scrolled { background:rgba(255,255,255,.94);backdrop-filter:blur(18px);box-shadow:0 1px 0 var(--border); }
.logo { display:flex;align-items:center;text-decoration:none;flex-shrink:0; }
.logo img { height:52px;width:auto; }
.nav-links { display:flex;align-items:center;gap:2px; }
.nav-link { font-size:12px;font-weight:400;color:var(--muted);text-decoration:none;padding:7px 14px;border-radius:100px;transition:all .2s;cursor:none;white-space:nowrap; }
.nav-link:hover,.nav-link.active { color:var(--ink);background:var(--cream); }
.nav-cta { font-size:12px;font-weight:500;color:var(--white);background:var(--ink);padding:10px 22px;border-radius:100px;text-decoration:none;border:1.5px solid var(--ink);transition:all .25s;cursor:none;margin-left:8px; }
.nav-cta:hover { background:transparent;color:var(--ink); }
/* Dropdown */
.nav-dropdown { position:relative; }
.nav-dropdown-menu { position:absolute;top:calc(100% + 8px);left:0;background:var(--white);border:1px solid var(--border);border-radius:12px;padding:8px;min-width:220px;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .25s;z-index:100;box-shadow:0 12px 40px rgba(0,0,0,.08); }
.nav-dropdown:hover .nav-dropdown-menu { opacity:1;visibility:visible;transform:translateY(0); }
.nav-dropdown-item { display:block;font-size:13px;color:var(--muted);text-decoration:none;padding:10px 14px;border-radius:8px;transition:all .2s;cursor:none; }
.nav-dropdown-item:hover { background:var(--cream);color:var(--ink); }
/* Hamburger */
.nav-toggle { display:none;flex-direction:column;gap:5px;width:28px;cursor:none;background:none;border:none;padding:4px 0;margin-left:14px; }
.nav-toggle span { display:block;height:1.5px;background:var(--ink);border-radius:2px;transition:all .3s; }
.nav-drawer { position:fixed;top:calc(var(--nav-h)+var(--crm-h));left:0;right:0;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);padding:20px 24px;display:none;flex-direction:column;border-bottom:1px solid var(--border);z-index:350;transform:translateY(-110%);transition:transform .35s; }
.nav-drawer.open { transform:translateY(0); }
.nav-drawer a { font-family:'Instrument Serif',serif;font-size:18px;color:var(--ink);text-decoration:none;padding:13px 0;border-bottom:1px solid var(--border); }
.nav-drawer a:last-child { border:none; }

/* ── HERO ── */
.hero { min-height:100vh;padding:calc(var(--nav-h)+var(--crm-h)+72px) 52px 80px;display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center; }
.hero-tag { display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);border-radius:100px;padding:7px 16px;margin-bottom:32px;opacity:0;animation:fadeUp .7s .2s forwards; }
.hero-tag-dot { width:5px;height:5px;background:var(--green);border-radius:50%; }
.hero-h1 { font-family:'Instrument Serif',serif;font-weight:400;font-size:clamp(48px,6vw,96px);line-height:.95;letter-spacing:-.02em;color:var(--ink);margin-bottom:28px;opacity:0;animation:fadeUp .85s .3s forwards; }
.hero-h1 em { font-style:italic;color:var(--gold); }
.hero-desc { font-size:15px;font-weight:300;color:var(--muted);line-height:1.75;max-width:440px;margin-bottom:40px;opacity:0;animation:fadeUp .8s .45s forwards; }
.hero-ctas { display:flex;gap:14px;align-items:center;opacity:0;animation:fadeUp .8s .58s forwards; }
.btn-primary { font-size:13px;font-weight:500;color:var(--white);background:var(--ink);padding:14px 30px;border-radius:100px;text-decoration:none;border:1.5px solid var(--ink);transition:all .25s;cursor:none;display:inline-flex;align-items:center;gap:8px; }
.btn-primary:hover { background:transparent;color:var(--ink); }
.btn-ghost { font-size:13px;font-weight:400;color:var(--muted);text-decoration:none;display:inline-flex;align-items:center;gap:6px;border-bottom:1px solid var(--border);padding-bottom:2px;transition:all .2s;cursor:none; }
.btn-ghost:hover { color:var(--ink);border-color:var(--ink); }
.hero-stats { display:flex;gap:40px;margin-top:48px;padding-top:40px;border-top:1px solid var(--border);opacity:0;animation:fadeUp .8s .7s forwards; }
.stat-num { font-family:'Instrument Serif',serif;font-size:40px;font-weight:400;color:var(--ink);line-height:1;letter-spacing:-.02em; }
.stat-label { font-size:12px;color:var(--muted);margin-top:4px; }
.hero-img { border-radius:20px;overflow:hidden;aspect-ratio:16/10;background:var(--cream);box-shadow:0 28px 70px rgba(0,0,0,.1);opacity:0;animation:fadeIn .9s .5s forwards; }
.hero-img img { width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.85) saturate(.8); }

/* ── MARQUEE ── */
.marquee-band { padding:16px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;background:var(--cream); }
.marquee-track { display:flex;white-space:nowrap;animation:ticker 28s linear infinite; }
.m-item { font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:0 36px; }
.m-sep { color:var(--gold);opacity:.5;margin:0 -16px; }

/* ── SECTION HELPERS ── */
.section-label { font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:14px; }
.section-title { font-family:'Instrument Serif',serif;font-weight:400;font-size:clamp(36px,5vw,64px);line-height:.96;letter-spacing:-.02em;color:var(--ink); }
.section-title em { font-style:italic;color:var(--gold); }
.section-title.white { color:var(--white); }

/* ── SERVICES ROWS ── */
.services { background:var(--white);padding:100px 52px; }
.services-top { display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:64px; }
.services-note { font-size:14px;color:var(--muted);line-height:1.7;max-width:300px;text-align:right; }
.svc-list { border-top:1px solid var(--border); }
.svc-row { display:grid;grid-template-columns:56px 1fr auto 140px;gap:28px;align-items:center;border-bottom:1px solid var(--border);padding:24px 10px;cursor:none;transition:all .3s; }
.svc-row:hover { background:var(--cream);border-bottom-color:transparent;border-radius:12px;padding:24px 18px; }
.svc-row-num { font-size:11px;color:var(--muted);letter-spacing:.1em; }
.svc-row-title { font-family:'Instrument Serif',serif;font-size:clamp(22px,2.6vw,38px);font-weight:400;letter-spacing:-.01em;transition:letter-spacing .3s; }
.svc-row:hover .svc-row-title { letter-spacing:.01em; }
.svc-row-desc { font-size:13px;color:var(--muted);line-height:1.7;max-width:460px;max-height:0;overflow:hidden;opacity:0;transition:all .4s; }
.svc-row:hover .svc-row-desc { max-height:80px;opacity:1;margin-top:10px; }
.svc-row-img { width:140px;height:92px;border-radius:10px;object-fit:cover;filter:grayscale(1) brightness(.8);transform:scale(.9);opacity:0;transition:all .4s; }
.svc-row:hover .svc-row-img { filter:grayscale(.2);transform:scale(1);opacity:1; }
.svc-row-arrow { font-size:16px;color:var(--muted);transition:transform .3s,color .25s; }
.svc-row:hover .svc-row-arrow { transform:rotate(-45deg);color:var(--ink); }

/* ── CARD GRID ── */
.card-section { padding:100px 52px; }
.card-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px; }
.card { border-radius:14px;overflow:hidden;background:var(--white);transition:transform .4s,box-shadow .4s;cursor:none;text-decoration:none;color:var(--ink);display:block; }
.card:hover { transform:translateY(-6px);box-shadow:0 24px 56px rgba(0,0,0,.09); }
.card-img { width:100%;aspect-ratio:4/3;object-fit:cover;display:block;filter:brightness(.8) saturate(.7);transition:all .55s; }
.card:hover .card-img { filter:brightness(.95) saturate(1);transform:scale(1.03); }
.card-body { padding:22px 24px; }
.card-tags { display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px; }
.tag { font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--cream);border:1px solid var(--border);border-radius:100px;padding:4px 12px; }
.card-title { font-family:'Instrument Serif',serif;font-size:20px;font-weight:400;letter-spacing:-.01em;margin-bottom:6px; }
.card-sub { font-size:13px;color:var(--muted); }

/* ── SPLIT SECTION ── */
.split { padding:100px 52px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center; }
.split.reverse { direction:rtl; }
.split.reverse > * { direction:ltr; }
.split-img { position:relative;border-radius:16px;overflow:hidden; }
.split-img img { width:100%;aspect-ratio:4/5;object-fit:cover;display:block;filter:brightness(.8) saturate(.7); }
.split-badge { position:absolute;bottom:-16px;right:-16px;background:var(--ink);color:var(--white);border-radius:14px;padding:20px 24px;max-width:180px; }
.split-badge strong { display:block;font-family:'Instrument Serif',serif;font-size:42px;font-weight:400;color:var(--gold);line-height:1;margin-bottom:4px; }
.split-badge span { font-size:11px;color:rgba(255,255,255,.6);line-height:1.4; }
.split-content .section-title { margin:16px 0 24px; }
.split-body { font-size:14px;color:var(--muted);line-height:1.85;margin-bottom:32px; }
.split-list { list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:36px; }
.split-list li { display:flex;align-items:flex-start;gap:12px;font-size:14px;color:var(--ink);line-height:1.5; }
.split-list li::before { content:'';flex-shrink:0;width:5px;height:5px;background:var(--gold);border-radius:50%;margin-top:7px; }

/* ── DARK SECTION ── */
.dark-section { background:var(--ink);color:var(--white);padding:100px 52px; }
.dark-section .section-label { color:rgba(255,255,255,.35); }
.dark-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.07);border-radius:14px;overflow:hidden;margin-top:60px; }
.dark-card { background:rgba(255,255,255,.025);padding:40px 28px;transition:background .3s; }
.dark-card:hover { background:rgba(255,255,255,.06); }
.dark-card-num { font-family:'Instrument Serif',serif;font-size:52px;font-weight:400;color:rgba(255,255,255,.06);line-height:1;margin-bottom:18px; }
.dark-card-title { font-family:'Instrument Serif',serif;font-size:20px;font-weight:400;margin-bottom:12px;color:rgba(255,255,255,.9); }
.dark-card-text { font-size:13px;color:rgba(255,255,255,.42);line-height:1.75; }

/* ── SPECS TABLE ── */
.specs-section { background:var(--cream);padding:100px 52px; }
.specs-table { width:100%;border-collapse:collapse;margin-top:48px; }
.specs-table th { font-size:10px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);padding:12px 20px;text-align:left;border-bottom:2px solid var(--border); }
.specs-table td { font-size:14px;padding:16px 20px;border-bottom:1px solid var(--border);color:var(--ink); }
.specs-table td:first-child { color:var(--muted);font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;width:40%; }
.specs-table tr:hover td { background:rgba(0,0,0,.02); }

/* ── CONTACT ── */
.contact-section { background:var(--cream);padding:100px 52px; }
.contact-grid { display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start; }
.contact-h { font-family:'Instrument Serif',serif;font-weight:400;font-size:clamp(42px,5vw,72px);letter-spacing:-.02em;line-height:.95;margin-bottom:40px; }
.contact-h em { font-style:italic;color:var(--gold); }
.ci-label { font-size:10px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin-bottom:6px; }
.ci-val { font-size:15px;color:var(--ink);margin-bottom:28px;line-height:1.6; }
.ci-val a { color:var(--ink);text-decoration:none;transition:color .2s; }
.ci-val a:hover { color:var(--gold); }
.form-g { margin-bottom:22px; }
.form-lbl { display:block;font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:10px; }
.form-ctrl { width:100%;background:var(--white);border:1.5px solid var(--border);border-radius:10px;padding:13px 17px;color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px;font-weight:300;outline:none;transition:border-color .25s;-webkit-appearance:none; }
.form-ctrl:focus { border-color:var(--ink); }
.form-ctrl::placeholder { color:rgba(107,107,107,.4); }
textarea.form-ctrl { resize:none;min-height:110px; }
select.form-ctrl { background:var(--white); }
.form-check { display:flex;gap:12px;align-items:flex-start;margin:18px 0 24px; }
.form-check input { accent-color:var(--ink);width:15px;height:15px;flex-shrink:0;margin-top:3px;cursor:none; }
.form-check label { font-size:12px;color:var(--muted);line-height:1.5; }
.form-check a { color:var(--ink); }
.btn-form { width:100%;background:var(--ink);color:var(--white);font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:17px;border-radius:100px;border:1.5px solid var(--ink);cursor:none;transition:all .3s; }
.btn-form:hover { background:transparent;color:var(--ink); }

/* ── PAGE HERO (subpages) ── */
.page-hero { background:var(--ink);color:var(--white);padding:calc(var(--nav-h)+var(--crm-h)+80px) 52px 80px; }
.page-hero-label { font-size:10px;font-weight:500;letter-spacing:.35em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:20px;opacity:0;animation:fadeUp .7s .2s forwards; }
.page-hero-title { font-family:'Instrument Serif',serif;font-weight:400;font-size:clamp(52px,7vw,110px);letter-spacing:-.02em;line-height:.92;margin-bottom:28px;opacity:0;animation:fadeUp .8s .35s forwards; }
.page-hero-title em { font-style:italic;color:var(--gold); }
.page-hero-desc { font-size:15px;font-weight:300;color:rgba(255,255,255,.55);line-height:1.75;max-width:560px;opacity:0;animation:fadeUp .8s .5s forwards; }

/* ── FOOTER ── */
footer { background:var(--ink);color:var(--white);padding:64px 52px 40px; }
.footer-top { display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:56px;margin-bottom:56px; }
.footer-logo img { height:40px;width:auto;filter:brightness(0) invert(.9); }
.footer-tagline { font-size:13px;color:rgba(255,255,255,.35);line-height:1.7;margin-top:14px;max-width:240px; }
.footer-col-h { font-size:10px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.22);margin-bottom:18px; }
.footer-links { list-style:none;display:flex;flex-direction:column;gap:11px; }
.footer-links a { font-size:14px;color:rgba(255,255,255,.45);text-decoration:none;transition:color .2s;cursor:none; }
.footer-links a:hover { color:var(--white); }
.nl-row { display:flex;border-bottom:1px solid rgba(255,255,255,.1);margin-top:14px; }
.nl-inp { flex:1;background:transparent;border:none;padding:12px 0;color:var(--white);font-family:'DM Sans',sans-serif;font-size:14px;outline:none; }
.nl-inp::placeholder { color:rgba(255,255,255,.22); }
.nl-btn { background:transparent;border:none;color:var(--gold);font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:none;transition:color .2s; }
.nl-btn:hover { color:var(--white); }
.footer-bottom { display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.06);padding-top:26px;padding-right:72px;font-size:12px;color:rgba(255,255,255,.22); }
.footer-bottom a { color:var(--gold);text-decoration:none; }

/* ── GRAVITY BTN ── */
.gravity-wrap { position:fixed;bottom:32px;right:32px;z-index:500;display:flex;flex-direction:column;align-items:flex-end;gap:10px; }
.gravity-option { display:flex;align-items:center;gap:10px;opacity:0;transform:translateY(10px) scale(.88);pointer-events:none;transition:all .3s; }
.gravity-option.show { opacity:1;transform:translateY(0) scale(1);pointer-events:auto; }
.gravity-option:nth-child(1){transition-delay:.05s}
.gravity-option:nth-child(2){transition-delay:.1s}
.gravity-label { font-size:12px;font-weight:500;color:var(--white);background:var(--ink);padding:6px 14px;border-radius:100px;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.2); }
.gravity-icon { width:44px;height:44px;border-radius:50%;background:var(--white);border:none;cursor:none;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.15);transition:transform .25s; text-decoration:none;}
.gravity-icon:hover { transform:scale(1.1); }
.gravity-icon svg { width:17px;height:17px; }
.gravity-main { width:52px;height:52px;border-radius:50%;border:none;background:var(--ink);cursor:none;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.25);transition:all .3s; }
.gravity-main:hover { transform:scale(1.08); }
.gravity-main svg { width:18px;height:18px;transition:transform .3s; }
.gravity-main.active svg { transform:rotate(45deg); }

/* ── REVEAL ── */
.reveal { opacity:0;transform:translateY(32px);transition:opacity .9s ease,transform .9s ease; }
.reveal.vis { opacity:1;transform:translateY(0); }
.d1{transition-delay:.12s}.d2{transition-delay:.24s}.d3{transition-delay:.36s}.d4{transition-delay:.48s}

/* ── KEYFRAMES ── */
@keyframes fadeUp  { from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)} }
@keyframes fadeIn  { from{opacity:0}to{opacity:1} }
@keyframes ticker  { from{transform:translateX(0)}to{transform:translateX(-50%)} }

/* ── HIDE MOBILE ELEMENTS ON DESKTOP ── */
.nav-toggle,.nav-drawer{display:none}

/* ══════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════ */
@media(max-width:1024px){
  nav{padding:0 32px}
  .hero,.services,.card-section,.split,.dark-section,.specs-section,.contact-section{padding-left:32px;padding-right:32px}
  footer{padding-left:32px;padding-right:32px}
  .card-grid{grid-template-columns:repeat(2,1fr)}
  .dark-grid{grid-template-columns:repeat(2,1fr)}
  .footer-top{grid-template-columns:1fr 1fr;gap:40px}
  .svc-row{grid-template-columns:44px 1fr auto}
  .svc-row-img{display:none}
}

@media(max-width:768px){
  :root{--nav-h:64px}
  nav{padding:0 24px}
  .nav-links .nav-link{display:none}
  .nav-dropdown{display:none}
  .nav-toggle{display:flex}
  .nav-drawer{display:flex}
  .hero{grid-template-columns:1fr;padding:calc(var(--nav-h)+var(--crm-h)+44px) 24px 56px;gap:36px}
  .hero-stats{gap:24px}
  .split{grid-template-columns:1fr;gap:48px;padding:72px 24px}
  .split.reverse{direction:ltr}
  .card-grid{grid-template-columns:1fr;gap:16px}
  .dark-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr;gap:48px}
  .footer-top{grid-template-columns:1fr 1fr;gap:32px}
  .footer-top>div:first-child{grid-column:1/-1}
  .footer-bottom{flex-direction:column;gap:8px;text-align:center;padding-bottom:64px}
  .services-top{flex-direction:column;gap:16px;align-items:flex-start}
  .services-note{text-align:left;max-width:100%}
  .svc-row{grid-template-columns:40px 1fr}
  .svc-row-arrow{display:none}
  .svc-row-desc{max-height:none;opacity:1;margin-top:8px}
  .page-hero{padding:calc(var(--nav-h)+var(--crm-h)+48px) 24px 60px}
  .dark-section,.specs-section,.card-section,.contact-section{padding-left:24px;padding-right:24px}
  footer{padding:48px 24px 36px}
}

@media(max-width:480px){
  .hero-h1{font-size:clamp(38px,11vw,58px)}
  .hero-stats{gap:16px}
  .stat-num{font-size:32px}
  .footer-top{grid-template-columns:1fr}
  .nav-logo img{height:36px}
}

@supports(padding:max(0px)){
  @media(max-width:768px){
    nav{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
    .gravity-wrap{bottom:max(24px,env(safe-area-inset-bottom));right:max(24px,env(safe-area-inset-right))}
  }
}
