/* Casca mínima da home SOCEO.
   Substitui os 237 KB de CSS do app legado na visita normal; o CSS completo
   continua disponível apenas na rota de recuperação ?legacy-home=1. */

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/e8ac5c4d-68c4-48f0-974f-e5a3defb839a.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/fe3a784a-4491-402a-84a6-abf58d028f31.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/a9b0a855-eccc-49ee-bec5-7915484b87e1.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/d40b286b-b737-4ef5-8d60-b6349e2cf77d.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Bricolage Grotesque";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/fonts/7f532651-3820-4dfd-a968-0c5f6ff05d44.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --landing-paper: #fdfdfb;
  --landing-cream: #f6f2ed;
  --landing-ink: #151517;
  --landing-muted: #5d5d68;
  --landing-cobalt: var(--soceo-primary, #7839ee);
  --landing-lavender: #ecebff;
  --landing-navy: #121128;
  --landing-border: rgba(21, 21, 23, .13);
  --landing-radius: 24px;
  --landing-width: 1180px;
}

html,
body {
  margin: 0;
  min-height: 100%;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
  border-color: #e5e7eb;
}

img,
video {
  max-width: 100%;
  height: auto;
}

body {
  color: #18181b;
  font-family: Geist, system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

body.lp-franquias-active {
  overflow-x: hidden;
  scroll-behavior: smooth;
  background: #f6f2ed;
}

.lp-franquias-root,
.lp-franquias-root * {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.lp-franquias-root {
  position: relative;
  z-index: 2;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.lp-franquias-root img { display: block; }
.lp-franquias-root a { color: inherit; text-decoration: none; }
.lp-franquias-root button,
.lp-franquias-root input { font: inherit; }
.lp-franquias-root [hidden] { display: none !important; }

.lp-franquias-root > .hero {
  position: relative;
  z-index: 2;
  height: 100vh;
  overflow: hidden;
  padding-top: 96px;
}

.lp-franquias-root .hero-chrome {
  position: absolute;
  z-index: 8;
  pointer-events: none;
}

.lp-franquias-root .counter {
  right: 188px;
  bottom: 64px;
  color: rgba(255, 255, 255, .6);
  font-family: "DM Mono", ui-monospace, monospace;
  font-size: 15px;
  letter-spacing: .08em;
}

.lp-franquias-root .counter .cur { color: #fff; }

.lp-franquias-root .scroll-hint {
  left: 50%;
  bottom: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: rgba(255, 255, 255, .55);
  font-size: 13px;
  letter-spacing: .16em;
  text-transform: uppercase;
  pointer-events: auto;
  transform: translateX(-50%);
}

.lp-franquias-root .scroll-hint .chev {
  animation: soceo-runtime-bounce 1.8s cubic-bezier(.16, 1, .3, 1) infinite;
}

.lp-franquias-root .hero-prog {
  position: absolute;
  right: 60px;
  bottom: 120px;
  z-index: 8;
  width: 148px;
  height: 3px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, .16);
}

.lp-franquias-root .hero-prog i {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
}

@keyframes soceo-runtime-bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(7px); }
}

@media (prefers-reduced-motion: reduce) {
  .lp-franquias-root .scroll-hint .chev { animation: none; }
}
