:root {
  --sm-ink: #071327;
  --sm-ink-2: #0c1c37;
  --sm-night: #030916;
  --sm-night-2: #071228;
  --sm-blue: #315cf6;
  --sm-blue-2: #587cff;
  --sm-cyan: #72dfea;
  --sm-violet: #8d78ff;
  --sm-paper: #f5f7fb;
  --sm-white: #ffffff;
  --sm-line: rgba(11, 28, 55, .13);
  --sm-muted: #60708b;
  --sm-serif: "Newsreader", Georgia, serif;
  --sm-sans: "Manrope", Arial, sans-serif;
  --sm-mono: "IBM Plex Mono", Consolas, monospace;
  --sm-radius: 30px;
  --sm-shadow: 0 32px 80px -42px rgba(3, 9, 22, .42);
  --sm-ease: cubic-bezier(.2, .78, .22, 1);
}

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

html { scroll-behavior: smooth; }

body.sm-page {
  margin: 0;
  color: var(--sm-ink);
  background: var(--sm-paper);
  font-family: var(--sm-sans);
  font-size: 16px;
  line-height: 1.65;
  overflow-x: clip;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.sm-page img { display: block; max-width: 100%; }
.sm-page button, .sm-page input, .sm-page textarea { font: inherit; }
.sm-page button, .sm-page a { -webkit-tap-highlight-color: transparent; }
.sm-page a { color: inherit; }
.sm-page p, .sm-page h1, .sm-page h2, .sm-page h3, .sm-page figure, .sm-page dl, .sm-page dd { margin: 0; }
.sm-page ul { margin: 0; padding: 0; }

.sm-wrap {
  width: min(1480px, calc(100% - 72px));
  margin-inline: auto;
}

.sm-progress {
  position: fixed;
  z-index: 1100;
  inset: 0 0 auto;
  height: 3px;
  pointer-events: none;
  background: rgba(255,255,255,.03);
}

.sm-progress i {
  display: block;
  width: 100%;
  height: 100%;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--sm-blue), var(--sm-cyan), var(--sm-violet));
  box-shadow: 0 0 18px rgba(114,223,234,.72);
}

.sm-section {
  position: relative;
  padding: clamp(92px, 9vw, 150px) 0;
  background: var(--sm-paper);
}

.sm-section:nth-of-type(even) { background: #fff; }

.sm-kicker {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px !important;
  color: var(--sm-blue);
  font: 600 .73rem/1.35 var(--sm-mono);
  letter-spacing: .16em;
  text-transform: uppercase;
}

.sm-kicker span { color: #9db0ff; }
.sm-kicker i { width: 32px; height: 1px; background: currentColor; }

.sm-head {
  position: relative;
  z-index: 2;
  margin-bottom: clamp(46px, 5vw, 78px);
}

.sm-head--split {
  display: grid;
  grid-template-columns: minmax(0, 1.34fr) minmax(300px, .66fr);
  align-items: end;
  gap: clamp(42px, 7vw, 112px);
}

.sm-head h2 {
  max-width: 970px;
  color: var(--sm-ink);
  font: 500 clamp(2.45rem, 4.05vw, 4.15rem)/.98 var(--sm-serif);
  letter-spacing: -.047em;
  text-wrap: balance;
}

.sm-head__lead {
  margin-bottom: 26px !important;
  color: #52647f;
  font-size: clamp(1rem, 1.25vw, 1.12rem);
  line-height: 1.7;
}

.sm-head--light h2 { color: #f3f7ff; }
.sm-head--light .sm-head__lead { color: rgba(226,234,252,.7); }
.sm-head--light .sm-kicker { color: #8da6ff; }

.sm-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }

.sm-btn {
  position: relative;
  isolation: isolate;
  min-height: 58px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 16px;
  text-decoration: none;
  color: #fff;
  font-size: .9rem;
  font-weight: 800;
  line-height: 1.2;
  box-shadow: 0 20px 45px -22px rgba(49,92,246,.78);
  transition: transform .35s var(--sm-ease), box-shadow .35s, border-color .35s;
}

.sm-btn::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(120deg, var(--sm-blue), #6683ff 55%, var(--sm-cyan));
}

.sm-btn::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 54%;
  aspect-ratio: 1;
  left: -58%;
  top: -110%;
  border-radius: 50%;
  background: rgba(255,255,255,.35);
  filter: blur(18px);
  transition: transform .7s var(--sm-ease);
}

.sm-btn i { font-style: normal; font-size: 1.05rem; transition: transform .35s var(--sm-ease); }
.sm-btn--ghost { border-color: rgba(194,209,255,.25); color: #eaf0ff; box-shadow: none; }
.sm-btn--ghost::before { background: rgba(255,255,255,.055); }
.sm-btn--small { min-height: 50px; padding-inline: 18px; font-size: .82rem; }

.sm-text-link {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: var(--sm-ink);
  font-size: .88rem;
  font-weight: 800;
  text-decoration: none;
  border-bottom: 1px solid rgba(7,19,39,.26);
  padding-bottom: 7px;
}

.sm-text-link span { transition: transform .3s var(--sm-ease); }
.sm-text-link--light { color: #fff; border-color: rgba(255,255,255,.28); }

@media (hover: hover) and (pointer: fine) {
  .sm-btn:hover { transform: translateY(-3px); box-shadow: 0 26px 54px -22px rgba(49,92,246,.92); }
  .sm-btn:hover::after { transform: translateX(330%); }
  .sm-btn:hover i, .sm-text-link:hover span { transform: translate(3px, -3px); }
}

/* Hero */
.sm-hero {
  position: relative;
  min-height: min(1000px, 100svh);
  padding: clamp(138px, 12vw, 178px) 0 0;
  color: #fff;
  overflow: hidden;
  background:
    radial-gradient(circle at 72% 19%, rgba(49,92,246,.27), transparent 35%),
    radial-gradient(circle at 98% 54%, rgba(114,223,234,.13), transparent 27%),
    linear-gradient(128deg, #030916 0%, #071329 52%, #050b18 100%);
}

.sm-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .3;
  background-image: linear-gradient(rgba(132,160,220,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(132,160,220,.1) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, #000, transparent 86%);
}

.sm-hero::after {
  content: "";
  position: absolute;
  width: 620px;
  height: 620px;
  right: -280px;
  bottom: -310px;
  border-radius: 50%;
  border: 1px solid rgba(114,223,234,.26);
  box-shadow: 0 0 120px rgba(49,92,246,.25), inset 0 0 120px rgba(114,223,234,.08);
}

.sm-hero__grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.14fr) minmax(450px, .86fr);
  align-items: center;
  gap: clamp(36px, 5vw, 76px);
  padding-bottom: 78px;
}

.sm-hero__copy { padding-block: 28px 48px; }

.sm-hero h1 {
  max-width: 900px;
  color: #f7f9ff;
  font: 500 clamp(3.4rem, 5.15vw, 5.25rem)/.91 var(--sm-serif);
  letter-spacing: -.058em;
  text-wrap: balance;
}

.sm-hero__lede { margin-top: 30px; max-width: 720px; }
.sm-hero__lede p { color: rgba(226,234,252,.78); font-size: clamp(1rem, 1.25vw, 1.14rem); line-height: 1.67; }
.sm-hero__lede p:first-child { color: #fff; font-weight: 700; }
.sm-hero__lede p + p { margin-top: 6px; }

.sm-hero__proof { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 13px 24px; color: rgba(222,231,250,.62); font: 600 .68rem/1.3 var(--sm-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-hero__proof span { display: inline-flex; align-items: center; gap: 8px; }
.sm-hero__proof i { width: 6px; height: 6px; border-radius: 50%; background: var(--sm-cyan); box-shadow: 0 0 12px var(--sm-cyan); }

.sm-hero__visual {
  position: relative;
  min-height: 650px;
  border: 1px solid rgba(181,203,255,.2);
  border-radius: 34px;
  box-shadow: 0 42px 110px -34px #000, inset 0 1px rgba(255,255,255,.08);
}

.sm-hero__photo { position: absolute; inset: 0; overflow: hidden; border-radius: inherit; background: #0c1830; }
.sm-hero__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3,9,22,.12), rgba(3,9,22,.82) 70%, #040a16), linear-gradient(90deg, rgba(19,38,76,.62), transparent 55%); }
.sm-hero__photo img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.06); }

.sm-search {
  position: absolute;
  z-index: 3;
  left: -32px;
  right: 24px;
  bottom: 38px;
  overflow: hidden;
  border: 1px solid rgba(166,191,255,.28);
  border-radius: 22px;
  color: var(--sm-ink);
  background: rgba(255,255,255,.96);
  box-shadow: 0 34px 80px -30px #000;
  backdrop-filter: blur(16px);
}

.sm-search > header, .sm-google__browser > header {
  height: 43px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid #e6ebf5;
  color: #8290a5;
  background: #f6f8fc;
  font: 600 .58rem/1 var(--sm-mono);
  letter-spacing: .06em;
}

.sm-search > header b { margin-right: auto; color: #64748b; font-weight: 600; }
.sm-search > header small { color: #67758b; }
.sm-dots { display: inline-flex; gap: 5px; }
.sm-dots i { width: 7px; height: 7px; border-radius: 50%; background: #ff6961; }
.sm-dots i:nth-child(2) { background: #ffcc57; }
.sm-dots i:nth-child(3) { background: #4dce79; }

.sm-search__bar { margin: 14px 16px 10px; padding: 10px 12px; display: flex; align-items: center; gap: 11px; border: 1px solid #dfe5ef; border-radius: 20px; box-shadow: 0 3px 12px rgba(22,40,78,.08); }
.sm-search__bar p { flex: 1; overflow: hidden; color: #2f3d52; font-size: .68rem; white-space: nowrap; text-overflow: ellipsis; }
.sm-search__bar kbd { border: 0; color: #8391a6; background: transparent; }
.sm-google-mark { display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; font: 800 .88rem/1 Arial, sans-serif; background: conic-gradient(#4285f4 0 25%, #34a853 0 43%, #fbbc05 0 68%, #ea4335 0 80%, #4285f4 0); }
.sm-google-mark i { width: 11px; height: 11px; display: grid; place-items: center; border-radius: 50%; color: #4285f4; font-style: normal; font-size: .62rem; background: #fff; }

.sm-search__results { padding: 0 17px 14px; }
.sm-search__results article { position: relative; padding: 10px 12px; border-radius: 11px; }
.sm-search__results article span { color: #53677e; font-size: .54rem; }
.sm-search__results article b { display: block; color: #1a0dab; font: 500 .72rem/1.25 Arial, sans-serif; }
.sm-search__results article p { color: #59687e; font-size: .57rem; line-height: 1.4; }
.sm-search__results .is-muted { opacity: .35; filter: blur(.15px); }
.sm-search__results .is-target { margin: 3px 0; border: 1px solid rgba(49,92,246,.25); background: linear-gradient(100deg, rgba(49,92,246,.08), rgba(114,223,234,.08)); box-shadow: 0 12px 28px -18px rgba(49,92,246,.7); }
.sm-search__results .is-target i { position: absolute; right: 9px; top: 9px; padding: 4px 6px; border-radius: 5px; color: #2345bd; background: #e6ecff; font: 600 .42rem/1 var(--sm-mono); font-style: normal; }
.sm-search > footer { min-height: 38px; padding: 0 16px; display: flex; align-items: center; justify-content: space-between; color: #53657d; background: #f2f5fa; font: 600 .52rem/1 var(--sm-mono); letter-spacing: .07em; }
.sm-search > footer span { display: flex; align-items: center; gap: 7px; }
.sm-search > footer i { width: 6px; height: 6px; border-radius: 50%; background: #41c87b; box-shadow: 0 0 10px #41c87b; }

.sm-hero__tag { position: absolute; z-index: 4; right: -18px; top: 34px; padding: 14px 18px; border: 1px solid rgba(152,184,255,.3); border-radius: 15px; background: rgba(4,12,29,.82); backdrop-filter: blur(16px); box-shadow: 0 20px 45px -22px #000; }
.sm-hero__tag span { display: block; color: #83dded; font: 600 .52rem/1 var(--sm-mono); letter-spacing: .1em; }
.sm-hero__tag b { display: block; margin-top: 7px; color: #fff; font-size: .76rem; }

.sm-hero__rail { position: relative; z-index: 2; min-height: 58px; padding: 0 max(36px, calc((100% - 1480px)/2)); display: flex; align-items: center; color: rgba(200,214,241,.34); border-top: 1px solid rgba(176,199,255,.11); background: rgba(1,5,13,.35); font: 600 .59rem/1 var(--sm-mono); letter-spacing: .14em; }
.sm-hero__rail i { flex: 1; height: 1px; margin-inline: 17px; background: linear-gradient(90deg, rgba(114,223,234,.42), transparent); }

/* Load */
.sm-load__grid { display: grid; grid-template-columns: minmax(0,.72fr) minmax(500px,1.28fr); gap: clamp(52px, 7vw, 110px); align-items: center; }
.sm-pull { max-width: 580px; color: #172640; font: 500 clamp(1.65rem, 2.45vw, 2.6rem)/1.16 var(--sm-serif); letter-spacing: -.025em; }
.sm-copy-grid { margin-top: 46px; display: grid; gap: 30px; }
.sm-copy-grid > div { padding-top: 20px; border-top: 1px solid var(--sm-line); }
.sm-copy-grid h3 { margin-bottom: 9px !important; font-size: .94rem; }
.sm-copy-grid p { color: var(--sm-muted); font-size: .93rem; }

.sm-process-film { display: grid; grid-template-columns: 1.1fr .9fr; grid-template-rows: repeat(2, 260px); gap: 15px; }
.sm-process-film figure { position: relative; overflow: hidden; border-radius: 24px; background: #0a1427; box-shadow: var(--sm-shadow); }
.sm-process-film .is-large { grid-row: 1 / 3; }
.sm-process-film picture, .sm-process-film img { width: 100%; height: 100%; }
.sm-process-film img { object-fit: cover; transition: transform .8s var(--sm-ease), filter .6s; }
.sm-process-film figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 38%, rgba(3,9,20,.88)); }
.sm-process-film figcaption { position: absolute; z-index: 2; left: 21px; right: 21px; bottom: 19px; display: grid; grid-template-columns: auto 1fr; gap: 3px 12px; color: #fff; }
.sm-process-film figcaption span { grid-row: 1 / 3; align-self: center; color: #7ce2ed; font: 600 .62rem/1 var(--sm-mono); }
.sm-process-film figcaption b { font-size: .9rem; }
.sm-process-film figcaption small { color: rgba(229,236,250,.65); font-size: .66rem; }
@media (hover:hover) { .sm-process-film figure:hover img { transform: scale(1.05); filter: saturate(1.08); } }

/* Discovery */
.sm-section.sm-discovery, .sm-section.sm-procurement, .sm-section.sm-dossier, .sm-section.sm-confidential, .sm-section.sm-selection, .sm-section.sm-method, .sm-section.sm-faq { color: #eef4ff; background: var(--sm-night); }
.sm-section.sm-discovery::before, .sm-section.sm-procurement::before, .sm-section.sm-dossier::before, .sm-section.sm-method::before, .sm-section.sm-faq::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .25; background-image: linear-gradient(rgba(116,148,210,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(116,148,210,.1) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(90deg, transparent, #000 22%, #000 78%, transparent); }

.sm-discovery__desk { position: relative; z-index: 2; padding: 16px; display: grid; grid-template-columns: 350px 1fr; gap: 16px; border: 1px solid rgba(151,179,239,.19); border-radius: 30px; background: linear-gradient(145deg, rgba(17,33,64,.87), rgba(5,13,29,.93)); box-shadow: 0 42px 100px -42px #000, inset 0 1px rgba(255,255,255,.05); }
.sm-discovery__desk > nav { display: flex; flex-direction: column; gap: 8px; }
.sm-discovery__desk > nav button { padding: 19px 17px; display: grid; grid-template-columns: 34px 1fr; gap: 2px 12px; text-align: left; color: rgba(231,238,252,.65); border: 1px solid transparent; border-radius: 16px; background: transparent; cursor: pointer; transition: background .35s, border-color .35s, color .35s, transform .35s var(--sm-ease); }
.sm-discovery__desk > nav button span { grid-row: 1 / 3; color: #6f8eff; font: 600 .65rem/1.5 var(--sm-mono); }
.sm-discovery__desk > nav button b { font-size: .86rem; }
.sm-discovery__desk > nav button small { color: inherit; font-size: .67rem; }
.sm-discovery__desk > nav button.is-active { color: #fff; border-color: rgba(112,144,255,.3); background: linear-gradient(110deg, rgba(49,92,246,.2), rgba(114,223,234,.07)); transform: translateX(5px); }

.sm-discovery__screen { min-height: 510px; display: grid; grid-template-columns: .83fr 1.17fr; overflow: hidden; border: 1px solid rgba(176,198,245,.15); border-radius: 21px; background: #f7f9fd; }
.sm-discovery__copy { padding: clamp(36px, 5vw, 72px); color: var(--sm-ink); }
.sm-discovery__copy > span { color: var(--sm-blue); font: 600 .62rem/1 var(--sm-mono); letter-spacing: .09em; }
.sm-discovery__copy h3 { margin-top: 18px !important; font: 500 clamp(1.9rem, 3vw, 3.25rem)/1.03 var(--sm-serif); letter-spacing: -.035em; }
.sm-discovery__copy p { margin-top: 20px !important; color: #596a84; font-size: .93rem; }
.sm-discovery__copy ul { margin-top: 28px; display: grid; gap: 10px; list-style: none; }
.sm-discovery__copy li { position: relative; padding-left: 22px; color: #243551; font-size: .79rem; font-weight: 700; }
.sm-discovery__copy li::before { content: ""; position: absolute; left: 0; top: .65em; width: 9px; height: 1px; background: var(--sm-blue); }
.sm-discovery__screen figure { position: relative; min-height: 440px; overflow: hidden; }
.sm-discovery__screen picture, .sm-discovery__screen img { width: 100%; height: 100%; }
.sm-discovery__screen img { object-fit: cover; transition: opacity .25s, transform .7s var(--sm-ease); }
.sm-discovery__screen figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #f7f9fd 0, transparent 30%), linear-gradient(180deg, transparent 45%, rgba(3,9,22,.8)); }
.sm-discovery__screen figcaption { position: absolute; z-index: 2; left: 28px; bottom: 24px; display: flex; align-items: center; gap: 9px; color: #fff; font-size: .72rem; font-weight: 700; }
.sm-discovery__screen figcaption i { width: 7px; height: 7px; border-radius: 50%; background: var(--sm-cyan); box-shadow: 0 0 12px var(--sm-cyan); }
.sm-discovery__note { grid-column: 1 / -1; margin: 2px 9px 8px !important; color: rgba(218,229,248,.48); font-size: .67rem; }
.sm-discovery__note b { color: rgba(238,244,255,.8); }

/* Procurement */
.sm-procurement { background: linear-gradient(150deg, #061128, #020711 72%); }
.sm-procurement__scene { position: relative; z-index: 2; padding: 18px; overflow: hidden; border: 1px solid rgba(157,185,245,.2); border-radius: 32px; background: linear-gradient(145deg, rgba(19,36,67,.88), rgba(4,10,23,.96)); box-shadow: 0 52px 120px -48px #000, inset 0 1px rgba(255,255,255,.06); }
.sm-procurement__scene::before { content: ""; position: absolute; width: 650px; height: 650px; left: 24%; top: -330px; border-radius: 50%; background: rgba(49,92,246,.2); filter: blur(80px); pointer-events: none; }
.sm-procurement__top { position: relative; z-index: 2; min-height: 48px; padding: 0 14px; display: flex; align-items: center; justify-content: space-between; color: rgba(220,231,252,.58); border-bottom: 1px solid rgba(167,192,241,.13); font: 600 .58rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-procurement__top span { display: flex; align-items: center; gap: 9px; }
.sm-procurement__top i { width: 7px; height: 7px; border-radius: 50%; background: #42d485; box-shadow: 0 0 12px #42d485; }

.sm-blueprint { position: relative; z-index: 2; min-height: 330px; margin: 18px 0; display: grid; grid-template-columns: 1.2fr .8fr; overflow: hidden; border: 1px solid rgba(116,159,255,.3); border-radius: 23px; background: #0b2b61; box-shadow: inset 0 0 80px rgba(49,92,246,.2); }
.sm-blueprint::before { content: ""; position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(rgba(153,208,255,.35) 1px, transparent 1px), linear-gradient(90deg, rgba(153,208,255,.35) 1px, transparent 1px); background-size: 24px 24px; }
.sm-blueprint__drawing { position: relative; min-height: 330px; }
.sm-blueprint__drawing i { position: absolute; left: 50%; top: 50%; width: 215px; height: 130px; transform: translate(-50%,-50%); border: 2px solid rgba(199,231,255,.83); border-radius: 16px 16px 48px 16px; box-shadow: 0 0 28px rgba(114,223,234,.15); }
.sm-blueprint__drawing i:nth-child(2) { width: 70px; height: 70px; border-radius: 50%; }
.sm-blueprint__drawing i:nth-child(3) { width: 280px; height: 1px; border: 0; border-top: 1px dashed rgba(199,231,255,.55); border-radius: 0; box-shadow: none; }
.sm-blueprint__drawing i:nth-child(4) { width: 1px; height: 190px; border: 0; border-left: 1px dashed rgba(199,231,255,.55); border-radius: 0; box-shadow: none; }
.sm-blueprint__drawing span { position: absolute; color: rgba(219,240,255,.72); font: 600 .58rem/1 var(--sm-mono); }
.sm-blueprint__drawing span:nth-of-type(1) { left: 25%; top: 27%; }
.sm-blueprint__drawing span:nth-of-type(2) { right: 27%; bottom: 27%; }
.sm-blueprint__drawing span:nth-of-type(3) { right: 20%; top: 35%; }
.sm-blueprint__brief { position: relative; z-index: 2; margin: 18px; padding: 26px; align-self: stretch; border: 1px solid rgba(191,221,255,.22); border-radius: 18px; background: rgba(5,19,44,.75); backdrop-filter: blur(12px); }
.sm-blueprint__brief > span { color: var(--sm-cyan); font: 600 .58rem/1 var(--sm-mono); letter-spacing: .1em; }
.sm-blueprint__brief > b { display: block; margin-top: 12px; font: 500 1.65rem/1.1 var(--sm-serif); }
.sm-blueprint__brief dl { margin-top: 27px; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.sm-blueprint__brief dl div { padding-top: 12px; border-top: 1px solid rgba(192,218,255,.17); }
.sm-blueprint__brief dt { color: rgba(217,231,250,.5); font: 600 .52rem/1 var(--sm-mono); text-transform: uppercase; }
.sm-blueprint__brief dd { margin-top: 7px; color: #fff; font-size: .78rem; font-weight: 700; }

.sm-routes { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.sm-route { position: relative; min-height: 235px; padding: 24px; display: grid; grid-template-columns: auto 1fr; grid-template-rows: 1fr auto; gap: 18px; text-align: left; color: rgba(228,236,251,.66); border: 1px solid rgba(161,187,239,.15); border-radius: 20px; background: rgba(9,20,42,.76); cursor: pointer; overflow: hidden; transition: transform .45s var(--sm-ease), border-color .35s, background .35s, color .35s; }
.sm-route::before { content: ""; position: absolute; inset: auto 0 0; height: 3px; transform: scaleX(0); transform-origin: left; background: linear-gradient(90deg, var(--sm-blue), var(--sm-cyan)); transition: transform .45s var(--sm-ease); }
.sm-route__number { color: #7594ff; font: 600 .65rem/1.4 var(--sm-mono); }
.sm-route__line { position: absolute; left: 23px; top: 54px; bottom: 25px; width: 1px; background: linear-gradient(var(--sm-blue), transparent); }
.sm-route div small { color: #7e9cff; font: 600 .52rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-route div b { display: block; margin-top: 11px; color: #f4f7ff; font-size: .92rem; }
.sm-route div p { margin-top: 9px; font-size: .76rem; line-height: 1.55; }
.sm-route div p span { color: #83e0ec; font-weight: 800; }
.sm-route strong { grid-column: 2; color: #fff; font: 500 1.45rem/1 var(--sm-serif); }
.sm-route strong small { display: block; margin-bottom: 8px; color: rgba(213,227,248,.4); font: 600 .48rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-route em { position: absolute; left: 24px; right: 24px; bottom: 17px; opacity: 0; color: #cbd7ed; font-size: .67rem; font-style: normal; transform: translateY(8px); transition: opacity .3s, transform .3s; }
.sm-route.is-active { color: rgba(238,244,255,.8); border-color: rgba(99,132,255,.52); background: linear-gradient(145deg, rgba(49,92,246,.24), rgba(10,24,52,.94)); transform: translateY(-7px); }
.sm-route.is-active::before { transform: scaleX(1); }
@media (hover:hover) { .sm-route:hover em { opacity: 1; transform: none; } .sm-route:hover strong { opacity: 0; } }

.sm-route-detail { position: relative; z-index: 2; margin-top: 12px; padding: 22px 26px; display: grid; grid-template-columns: 220px 1fr 1.25fr; gap: 30px; align-items: center; border: 1px solid rgba(115,147,255,.25); border-radius: 18px; background: linear-gradient(100deg, rgba(49,92,246,.18), rgba(114,223,234,.04)); }
.sm-route-detail span { color: #83a0ff; font: 600 .54rem/1.4 var(--sm-mono); letter-spacing: .08em; }
.sm-route-detail b { color: #fff; font-size: .9rem; }
.sm-route-detail p { color: rgba(221,231,250,.62); font-size: .75rem; }
.sm-visual-note { position: relative; z-index: 2; margin: 15px 3px 2px !important; color: rgba(216,228,247,.38); font-size: .68rem; }

/* Case */
.sm-case__grid { display: grid; grid-template-columns: 1.06fr .94fr; gap: 20px; }
.sm-case__media { position: relative; min-height: 575px; overflow: hidden; border-radius: 28px; background: #071327; box-shadow: var(--sm-shadow); }
.sm-case__media > figure { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity .65s var(--sm-ease), visibility .65s; }
.sm-case__media > figure.is-active { opacity: 1; visibility: visible; }
.sm-case__media picture, .sm-case__media img { width: 100%; height: 100%; }
.sm-case__media img { object-fit: cover; }
.sm-case__media figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(3,9,22,.9)); }
.sm-case__media figcaption { position: absolute; z-index: 2; left: 30px; right: 30px; bottom: 34px; color: #fff; }
.sm-case__media figcaption span { display: block; color: #83e0ec; font: 600 .58rem/1 var(--sm-mono); letter-spacing: .09em; }
.sm-case__media figcaption b { display: block; margin-top: 11px; max-width: 480px; font: 500 clamp(1.55rem, 2.6vw, 2.65rem)/1.06 var(--sm-serif); }
.sm-case__media nav { position: absolute; z-index: 4; top: 23px; right: 23px; display: flex; gap: 8px; }
.sm-case__media nav button { width: 30px; height: 5px; padding: 0; border: 0; border-radius: 6px; background: rgba(255,255,255,.35); cursor: pointer; }
.sm-case__media nav button.is-active { background: var(--sm-cyan); box-shadow: 0 0 12px rgba(114,223,234,.75); }

.sm-case__metrics { padding: 25px; display: flex; flex-direction: column; border: 1px solid var(--sm-line); border-radius: 28px; background: #fff; box-shadow: var(--sm-shadow); }
.sm-case__metrics > header { min-height: 42px; display: flex; align-items: center; justify-content: space-between; color: #718099; border-bottom: 1px solid var(--sm-line); font: 600 .56rem/1 var(--sm-mono); letter-spacing: .07em; }
.sm-case__metrics > header span { display: flex; align-items: center; gap: 8px; }
.sm-case__metrics > header i { width: 7px; height: 7px; border-radius: 50%; background: #42c67b; box-shadow: 0 0 10px #42c67b; }
.sm-case__main { padding: 32px 8px 26px; border-bottom: 1px solid var(--sm-line); }
.sm-case__main small { color: #687891; font: 600 .58rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-case__main strong { display: block; margin-top: 8px; color: var(--sm-blue); font: 500 clamp(4.8rem, 7.4vw, 7.4rem)/.85 var(--sm-serif); letter-spacing: -.07em; }
.sm-case__main p { margin-top: 19px; max-width: 430px; color: #5e6e87; font-size: .83rem; }
.sm-case__bars { padding: 27px 8px 18px; display: grid; gap: 21px; }
.sm-case__bars article span { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.sm-case__bars article b { font-size: .7rem; }
.sm-case__bars article small { color: #60718a; font: 600 .6rem/1 var(--sm-mono); }
.sm-case__bars article > i { display: block; width: 100%; height: 5px; margin-top: 9px; border-radius: 5px; background: #e7ebf3; overflow: hidden; }
.sm-case__bars article > i::after { content: ""; display: block; width: var(--value); height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--sm-blue), var(--sm-cyan)); transform-origin: left; }
.sm-case__metrics > footer { margin-top: auto; padding: 17px 8px 2px; color: #7b899d; border-top: 1px solid var(--sm-line); font-size: .68rem; }
.sm-legal-foot { margin-top: 16px !important; color: #66758d; font-size: .69rem; }

.sm-mid-cta { margin-top: 34px; padding: clamp(28px, 4vw, 46px); display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 18px 44px; color: #fff; border-radius: 26px; background: linear-gradient(118deg, #0b1a38, #183b96 58%, #315cf6); box-shadow: 0 30px 70px -35px rgba(24,59,150,.75); overflow: hidden; }
.sm-mid-cta > div span { color: #90e2ec; font: 600 .57rem/1 var(--sm-mono); letter-spacing: .09em; }
.sm-mid-cta h3 { margin-top: 10px !important; max-width: 760px; font: 500 clamp(1.55rem,2.4vw,2.4rem)/1.08 var(--sm-serif); }
.sm-mid-cta > p { grid-column: 1 / -1; max-width: 920px; color: rgba(225,234,251,.67); font-size: .76rem; }
.sm-mid-cta > p b { color: #fff; }

/* Dossier */
.sm-dossier__grid { position: relative; z-index: 2; display: grid; grid-template-columns: 330px 1fr; gap: 16px; }
.sm-dossier__grid > nav { display: grid; gap: 8px; }
.sm-dossier__grid > nav button { padding: 20px; display: grid; grid-template-columns: 34px 1fr; gap: 2px 12px; text-align: left; color: rgba(224,233,249,.61); border: 1px solid rgba(158,185,237,.13); border-radius: 17px; background: rgba(12,25,50,.75); cursor: pointer; transition: transform .35s var(--sm-ease), background .35s, border-color .35s; }
.sm-dossier__grid > nav button > span { grid-row: 1/3; color: #718fff; font: 600 .62rem/1.5 var(--sm-mono); }
.sm-dossier__grid > nav b { font-size: .82rem; }
.sm-dossier__grid > nav small { color: inherit; font-size: .64rem; }
.sm-dossier__grid > nav button.is-active { transform: translateX(6px); color: #fff; border-color: rgba(102,135,255,.42); background: linear-gradient(110deg, rgba(49,92,246,.24), rgba(114,223,234,.06)); }

.sm-dossier__sheet { overflow: hidden; border: 1px solid rgba(174,199,245,.2); border-radius: 24px; background: #f7f9fd; color: var(--sm-ink); box-shadow: 0 38px 88px -42px #000; }
.sm-dossier__sheet > header, .sm-dossier__sheet > footer { min-height: 48px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; color: #6b7c94; background: #eef2f8; font: 600 .56rem/1 var(--sm-mono); letter-spacing: .07em; }
.sm-dossier__sheet > footer { background: #e9eef7; }
.sm-dossier__sheet > footer span { display: flex; align-items: center; gap: 8px; }
.sm-dossier__sheet > footer i { width: 7px; height: 7px; border-radius: 50%; background: #40c77b; }
.sm-dossier__body { min-height: 500px; display: grid; grid-template-columns: 1fr 1fr; }
.sm-dossier__body figure { position: relative; overflow: hidden; }
.sm-dossier__body picture, .sm-dossier__body img { width: 100%; height: 100%; }
.sm-dossier__body img { object-fit: cover; transition: opacity .25s, transform .6s var(--sm-ease); }
.sm-dossier__body figcaption { position: absolute; left: 20px; bottom: 18px; padding: 8px 11px; color: #fff; border: 1px solid rgba(255,255,255,.25); border-radius: 9px; background: rgba(3,9,22,.68); font-size: .62rem; font-weight: 700; backdrop-filter: blur(10px); }
.sm-dossier__body > div { padding: clamp(36px, 5vw, 72px); }
.sm-dossier__body > div > span { color: var(--sm-blue); font: 600 .57rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-dossier__body h3 { margin-top: 16px !important; font: 500 clamp(2rem,3vw,3.2rem)/1.02 var(--sm-serif); letter-spacing: -.035em; }
.sm-dossier__body p { margin-top: 20px; color: #5a6c86; font-size: .86rem; }
.sm-dossier__body dl { margin-top: 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.sm-dossier__body dl div { padding-top: 13px; border-top: 1px solid var(--sm-line); }
.sm-dossier__body dt { color: #75849a; font: 600 .53rem/1.3 var(--sm-mono); text-transform: uppercase; }
.sm-dossier__body dd { margin-top: 8px; color: #263853; font-size: .72rem; font-weight: 700; }

/* Google stage */
.sm-google__stage { display: grid; grid-template-columns: 1fr 350px; overflow: hidden; border: 1px solid var(--sm-line); border-radius: 30px; background: #fff; box-shadow: var(--sm-shadow); }
.sm-google__browser { padding-bottom: 28px; }
.sm-google__browser > header p { margin-right: auto; }
.sm-google__brand { margin: 30px auto 20px; display: flex; justify-content: center; font: 500 2rem/1 Arial, sans-serif; letter-spacing: -2px; }
.sm-google__brand span:nth-child(1), .sm-google__brand span:nth-child(4) { color: #4285f4; }
.sm-google__brand span:nth-child(2), .sm-google__brand span:nth-child(6) { color: #ea4335; }
.sm-google__brand span:nth-child(3) { color: #fbbc05; }
.sm-google__brand span:nth-child(5) { color: #34a853; }
.sm-google__query { width: min(620px, calc(100% - 52px)); min-height: 48px; margin: auto; padding: 0 17px; display: flex; align-items: center; gap: 13px; border: 1px solid #dfe4ed; border-radius: 26px; box-shadow: 0 4px 16px rgba(18,39,75,.08); }
.sm-google__query > i { width: 13px; height: 13px; border: 2px solid #8794a6; border-radius: 50%; position: relative; }
.sm-google__query > i::after { content: ""; position: absolute; width: 6px; height: 2px; right: -5px; bottom: -3px; background: #8794a6; transform: rotate(45deg); }
.sm-google__query p { flex: 1; font-size: .78rem; }
.sm-google__query kbd { color: #8b97a9; border: 0; background: transparent; }
.sm-google__tabs { width: min(620px, calc(100% - 52px)); margin: 18px auto 0; display: flex; gap: 22px; color: #728096; border-bottom: 1px solid #e6eaf0; font-size: .62rem; }
.sm-google__tabs b { padding-bottom: 9px; color: #1a73e8; border-bottom: 2px solid #1a73e8; }
.sm-google__list { width: min(620px, calc(100% - 52px)); margin: 12px auto 0; }
.sm-google__list article { position: relative; padding: 13px 10px; }
.sm-google__list article > span { color: #475b72; font-size: .57rem; }
.sm-google__list article > b { display: block; color: #1a0dab; font: 400 .9rem/1.35 Arial, sans-serif; }
.sm-google__list article > p { color: #52637b; font-size: .62rem; }
.sm-google__list .is-blurred { opacity: .28; filter: blur(.2px); }
.sm-google__list .is-featured { padding: 16px 16px 16px 52px; border: 1px solid rgba(49,92,246,.25); border-radius: 13px; background: linear-gradient(100deg, rgba(49,92,246,.07), rgba(114,223,234,.07)); box-shadow: 0 14px 34px -24px rgba(49,92,246,.75); }
.sm-serp-logo { position: absolute; left: 13px; top: 17px; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; color: #fff; background: linear-gradient(135deg,#183b96,var(--sm-cyan)); font: 800 .55rem/1 var(--sm-sans); }
.sm-google__list em { position: absolute; right: 12px; top: 12px; padding: 5px 7px; border-radius: 6px; color: #2142b6; background: #e5ebff; font: 600 .45rem/1 var(--sm-mono); font-style: normal; }
.sm-query-stack { padding: 17px; color: #fff; background: linear-gradient(160deg, #081a3b, #030a17); }
.sm-query-stack > header { min-height: 46px; padding: 0 6px 12px; display: flex; align-items: center; justify-content: space-between; color: rgba(221,231,249,.52); border-bottom: 1px solid rgba(165,190,239,.15); font: 600 .52rem/1 var(--sm-mono); }
.sm-query-stack > button { width: 100%; padding: 16px 11px; display: grid; grid-template-columns: 30px 1fr; gap: 2px 10px; text-align: left; color: rgba(225,234,250,.58); border: 1px solid transparent; border-radius: 12px; background: transparent; cursor: pointer; }
.sm-query-stack > button span { grid-row: 1/3; color: #6f8fff; font: 600 .57rem/1.4 var(--sm-mono); }
.sm-query-stack > button b { font-size: .75rem; }
.sm-query-stack > button small { color: inherit; font-size: .58rem; }
.sm-query-stack > button.is-active { color: #fff; border-color: rgba(100,134,255,.3); background: rgba(49,92,246,.17); }
.sm-query-stack > footer { margin: 14px 6px 0; padding-top: 15px; color: rgba(220,230,247,.42); border-top: 1px solid rgba(165,190,239,.14); font-size: .61rem; }

/* Confidential */
.sm-confidential__grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.sm-photo-card { position: relative; min-height: 610px; overflow: hidden; border-radius: 28px; border: 1px solid rgba(167,193,240,.18); }
.sm-photo-card picture, .sm-photo-card img { width: 100%; height: 100%; }
.sm-photo-card img { object-fit: cover; }
.sm-photo-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 42%, rgba(3,9,22,.9)); }
.sm-photo-card figcaption { position: absolute; z-index: 2; left: 30px; right: 30px; bottom: 30px; }
.sm-photo-card figcaption span { color: var(--sm-cyan); font: 600 .56rem/1 var(--sm-mono); letter-spacing: .09em; }
.sm-photo-card figcaption b { display: block; margin-top: 12px; max-width: 520px; color: #fff; font: 500 clamp(1.7rem,2.8vw,2.8rem)/1.07 var(--sm-serif); }
.sm-confidential__cards { display: grid; gap: 10px; }
.sm-confidential__cards article { position: relative; padding: clamp(28px,4vw,48px); overflow: hidden; border: 1px solid rgba(158,185,237,.15); border-radius: 23px; background: linear-gradient(125deg, rgba(13,28,56,.9), rgba(6,14,30,.85)); transition: transform .4s var(--sm-ease), border-color .35s, background .35s; }
.sm-confidential__cards article > span { color: #7898ff; font: 600 .54rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-confidential__cards h3 { margin-top: 11px !important; color: #fff; font: 500 1.65rem/1.05 var(--sm-serif); }
.sm-confidential__cards p { margin-top: 10px; max-width: 520px; color: rgba(219,229,247,.61); font-size: .78rem; }
.sm-confidential__cards article > i { position: absolute; right: 22px; top: 17px; color: rgba(125,153,218,.2); font: 500 3rem/1 var(--sm-serif); font-style: normal; }
@media (hover:hover) { .sm-confidential__cards article:hover, .sm-confidential__cards article:focus { transform: translateX(-8px); border-color: rgba(107,141,255,.46); background: linear-gradient(125deg, rgba(49,92,246,.22), rgba(6,14,30,.88)); outline: none; } }

/* RFQ */
.sm-rfq__stage { display: grid; grid-template-columns: 310px 1fr; gap: 14px; }
.sm-rfq__flow { display: grid; gap: 8px; }
.sm-rfq__flow button { padding: 20px; display: grid; grid-template-columns: 35px 1fr; gap: 2px 11px; text-align: left; color: #66758d; border: 1px solid var(--sm-line); border-radius: 17px; background: #fff; cursor: pointer; transition: transform .35s var(--sm-ease), box-shadow .35s, border-color .35s; }
.sm-rfq__flow button > span { grid-row: 1/3; color: var(--sm-blue); font: 600 .61rem/1.4 var(--sm-mono); }
.sm-rfq__flow b { font-size: .8rem; }
.sm-rfq__flow small { font-size: .62rem; }
.sm-rfq__flow button.is-active { transform: translateX(7px); border-color: rgba(49,92,246,.36); box-shadow: 0 18px 36px -28px rgba(49,92,246,.72); color: var(--sm-ink); }
.sm-rfq__panel { overflow: hidden; border: 1px solid var(--sm-line); border-radius: 24px; background: #fff; box-shadow: var(--sm-shadow); }
.sm-rfq__panel > header, .sm-rfq__panel > footer { min-height: 48px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; color: #6c7c94; background: #eef2f7; font: 600 .55rem/1.4 var(--sm-mono); letter-spacing: .06em; }
.sm-rfq__panel > header span { display: flex; align-items: center; gap: 8px; }
.sm-rfq__panel > header i { width: 7px; height: 7px; border-radius: 50%; background: #40c77b; }
.sm-rfq__panel > footer { gap: 30px; color: #728198; }
.sm-rfq__panel > footer span { max-width: 650px; }
.sm-rfq__panel > footer b { color: #43536b; text-align: right; }
.sm-rfq__panel-body { min-height: 480px; display: grid; grid-template-columns: .85fr 1.15fr; }
.sm-rfq__panel-body figure { overflow: hidden; }
.sm-rfq__panel-body picture, .sm-rfq__panel-body img { width: 100%; height: 100%; }
.sm-rfq__panel-body img { object-fit: cover; transition: opacity .25s, transform .6s var(--sm-ease); }
.sm-rfq__panel-body > div { padding: clamp(34px,5vw,68px); }
.sm-rfq__panel-body > div > span { color: var(--sm-blue); font: 600 .56rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-rfq__panel-body h3 { margin-top: 15px !important; font: 500 clamp(1.9rem,3vw,3.1rem)/1.03 var(--sm-serif); letter-spacing: -.035em; }
.sm-rfq__panel-body p { margin-top: 18px; color: #5a6b84; font-size: .84rem; }
.sm-rfq__panel-body ul { margin-top: 25px; display: grid; gap: 10px; list-style: none; }
.sm-rfq__panel-body li { position: relative; padding-left: 22px; color: #273952; font-size: .75rem; font-weight: 700; }
.sm-rfq__panel-body li::before { content: ""; position: absolute; left: 0; top: .65em; width: 10px; height: 1px; background: var(--sm-blue); }

/* Selection */
.sm-selection__grid { position: relative; z-index: 2; display: grid; grid-template-columns: .92fr 1.08fr; gap: 17px; }
.sm-selection__photo { position: relative; min-height: 570px; overflow: hidden; border: 1px solid rgba(168,194,241,.18); border-radius: 27px; }
.sm-selection__photo picture, .sm-selection__photo img { width: 100%; height: 100%; }
.sm-selection__photo img { object-fit: cover; }
.sm-selection__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 40%, rgba(3,9,22,.88)); }
.sm-selection__photo figcaption { position: absolute; z-index: 2; left: 28px; bottom: 27px; }
.sm-selection__photo figcaption span { color: var(--sm-cyan); font: 600 .54rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-selection__photo figcaption b { display: block; margin-top: 10px; max-width: 500px; font: 500 2rem/1.08 var(--sm-serif); }
.sm-selection__checks { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.sm-selection__checks article { position: relative; padding: 28px; display: grid; grid-template-columns: 35px 1fr; align-content: start; gap: 12px; border: 1px solid rgba(160,187,238,.15); border-radius: 22px; background: linear-gradient(140deg, rgba(16,31,60,.88), rgba(6,14,29,.88)); }
.sm-selection__checks article > span { color: #7595ff; font: 600 .62rem/1.5 var(--sm-mono); }
.sm-selection__checks h3 { color: #fff; font-size: .87rem; }
.sm-selection__checks p { margin-top: 10px; color: rgba(220,230,248,.58); font-size: .72rem; }
.sm-selection__checks article > i { position: absolute; left: 28px; bottom: 23px; color: rgba(121,153,220,.38); font: 600 .48rem/1 var(--sm-mono); font-style: normal; letter-spacing: .1em; }
.sm-quote-title { margin: 38px 0 12px; color: #fff; font: 500 clamp(1.55rem,2.2vw,2.15rem)/1.08 var(--sm-serif); }
.sm-quote { position: relative; z-index: 2; margin-top: 18px; overflow: hidden; color: var(--sm-ink); border: 1px solid rgba(174,198,242,.22); border-radius: 22px; background: #f7f9fd; }
.sm-quote > header, .sm-quote > footer { min-height: 45px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; color: #6b7a91; background: #eaf0f8; font: 600 .54rem/1 var(--sm-mono); letter-spacing: .07em; }
.sm-quote__meta { padding: 19px 20px; display: grid; grid-template-columns: repeat(4,1fr); gap: 15px; border-bottom: 1px solid var(--sm-line); }
.sm-quote__meta span { color: #263750; font-size: .72rem; font-weight: 800; }
.sm-quote__meta small { display: block; margin-bottom: 6px; color: #7c8a9e; font: 600 .5rem/1 var(--sm-mono); }
.sm-quote__line { padding: 13px 20px; display: flex; justify-content: space-between; color: #5a6b84; border-bottom: 1px solid var(--sm-line); font-size: .7rem; }
.sm-quote__line b { color: #21334f; }
.sm-quote > footer span { display: flex; align-items: center; gap: 8px; }
.sm-quote > footer i { width: 7px; height: 7px; border-radius: 50%; background: #ffb951; box-shadow: 0 0 10px #ffb951; }

/* Channels */
.sm-channels__board { display: grid; grid-template-columns: .9fr 1.1fr; gap: 17px; }
.sm-channels__board > figure { position: relative; min-height: 640px; overflow: hidden; border-radius: 28px; box-shadow: var(--sm-shadow); }
.sm-channels__board > figure picture, .sm-channels__board > figure img { width: 100%; height: 100%; }
.sm-channels__board > figure img { object-fit: cover; }
.sm-channels__board > figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 40%, rgba(3,9,22,.88)); }
.sm-channels__board > figure figcaption { position: absolute; z-index: 2; left: 28px; right: 28px; bottom: 28px; color: #fff; }
.sm-channels__board > figure span { color: var(--sm-cyan); font: 600 .54rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-channels__board > figure b { display: block; margin-top: 11px; font: 500 2rem/1.07 var(--sm-serif); }
.sm-channels__list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.sm-channels__list article { position: relative; padding: clamp(27px,3.5vw,43px); border: 1px solid var(--sm-line); border-radius: 23px; background: #fff; box-shadow: 0 20px 50px -42px rgba(3,9,22,.55); transition: transform .4s var(--sm-ease), border-color .35s; }
.sm-channels__list article > span { color: var(--sm-blue); font: 600 .53rem/1 var(--sm-mono); letter-spacing: .07em; }
.sm-channels__list h3 { margin-top: 14px !important; font: 500 1.65rem/1.05 var(--sm-serif); }
.sm-channels__list p { margin-top: 13px; color: var(--sm-muted); font-size: .75rem; }
.sm-channels__list article > b { position: absolute; left: clamp(27px,3.5vw,43px); bottom: 26px; color: #78869b; font: 600 .5rem/1 var(--sm-mono); letter-spacing: .06em; }
@media (hover:hover) { .sm-channels__list article:hover { transform: translateY(-7px); border-color: rgba(49,92,246,.35); } }

/* Method */
.sm-method__stage { position: relative; z-index: 2; overflow: hidden; border: 1px solid rgba(163,190,240,.18); border-radius: 28px; background: linear-gradient(140deg, rgba(14,29,57,.9), rgba(5,13,28,.96)); box-shadow: 0 42px 100px -42px #000; }
.sm-method__stage > nav { padding: 12px; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 8px; border-bottom: 1px solid rgba(166,191,239,.14); }
.sm-method__stage > nav button { padding: 17px; display: grid; grid-template-columns: 35px 1fr; gap: 2px 10px; text-align: left; color: rgba(224,233,249,.56); border: 1px solid transparent; border-radius: 14px; background: transparent; cursor: pointer; }
.sm-method__stage > nav span { grid-row: 1/3; color: #7292ff; font: 600 .61rem/1.4 var(--sm-mono); }
.sm-method__stage > nav b { font-size: .8rem; }
.sm-method__stage > nav small { color: inherit; font-size: .61rem; }
.sm-method__stage > nav button.is-active { color: #fff; border-color: rgba(103,136,255,.33); background: rgba(49,92,246,.18); }
.sm-method__stage > article { min-height: 520px; display: grid; grid-template-columns: 1fr 1fr; }
.sm-method__stage figure { position: relative; overflow: hidden; }
.sm-method__stage figure picture, .sm-method__stage figure img { width: 100%; height: 100%; }
.sm-method__stage figure img { object-fit: cover; transition: opacity .25s, transform .65s var(--sm-ease); }
.sm-method__stage figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(3,9,22,.78)); }
.sm-method__stage figure figcaption { position: absolute; z-index: 2; left: 24px; right: 24px; bottom: 22px; color: #fff; font-size: .69rem; font-weight: 700; }
.sm-method__stage > article > div { padding: clamp(40px,6vw,82px); }
.sm-method__stage > article > div > span { color: #7f9cff; font: 600 .56rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-method__stage h3 { margin-top: 17px !important; color: #fff; font: 500 clamp(2rem,3.2vw,3.35rem)/1.02 var(--sm-serif); letter-spacing: -.035em; }
.sm-method__stage article p { margin-top: 20px; color: rgba(220,230,248,.62); font-size: .84rem; }
.sm-method__stage article ul { margin-top: 27px; display: grid; gap: 10px; list-style: none; }
.sm-method__stage article li { position: relative; padding-left: 23px; color: #e3ebfa; font-size: .72rem; font-weight: 700; }
.sm-method__stage article li::before { content: ""; position: absolute; left: 0; top: .65em; width: 10px; height: 1px; background: var(--sm-cyan); }
.sm-method__stage > footer { min-height: 54px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; color: rgba(219,229,247,.46); border-top: 1px solid rgba(166,191,239,.14); font-size: .65rem; }
.sm-method__stage > footer a { color: #fff; font-weight: 800; text-decoration: none; }
.sm-method__stage > footer i { color: var(--sm-cyan); font-style: normal; }
.sm-method__photos { position: relative; z-index: 2; margin-top: 16px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.sm-method__photos figure { position: relative; height: 260px; overflow: hidden; border: 1px solid rgba(166,191,239,.16); border-radius: 21px; }
.sm-method__photos picture, .sm-method__photos img { width: 100%; height: 100%; }
.sm-method__photos img { object-fit: cover; }
.sm-method__photos figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent, rgba(3,9,22,.75)); }
.sm-method__photos figcaption { position: absolute; z-index: 2; left: 22px; bottom: 19px; color: #fff; font-size: .75rem; font-weight: 800; }

/* Fit */
.sm-fit__grid { display: grid; grid-template-columns: 1fr .82fr 1fr; gap: 14px; }
.sm-fit__grid > article { padding: clamp(30px,4vw,52px); border: 1px solid var(--sm-line); border-radius: 25px; background: #fff; box-shadow: 0 24px 60px -45px rgba(3,9,22,.5); }
.sm-fit__grid article > span { color: var(--sm-blue); font: 600 .55rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-fit__grid h3 { margin-top: 16px !important; font: 500 clamp(1.7rem,2.7vw,2.7rem)/1.05 var(--sm-serif); }
.sm-fit__grid ul { margin-top: 28px; display: grid; gap: 13px; list-style: none; }
.sm-fit__grid li { position: relative; padding-left: 24px; color: #586982; font-size: .78rem; }
.sm-fit__grid li::before { content: ""; position: absolute; left: 0; top: .48em; width: 9px; height: 9px; border: 1px solid var(--sm-blue); border-radius: 50%; }
.sm-fit__grid figure { position: relative; min-height: 500px; overflow: hidden; border-radius: 25px; }
.sm-fit__grid figure picture, .sm-fit__grid figure img { width: 100%; height: 100%; }
.sm-fit__grid figure img { object-fit: cover; }
.sm-fit__grid figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(3,9,22,.86)); }
.sm-fit__grid figcaption { position: absolute; z-index: 2; left: 23px; right: 23px; bottom: 23px; color: #fff; }
.sm-fit__grid figcaption span { color: var(--sm-cyan); font: 600 .53rem/1 var(--sm-mono); }
.sm-fit__grid figcaption b { display: block; margin-top: 10px; font: 500 1.7rem/1.08 var(--sm-serif); }
.sm-fit__no { background: #f0f3f8 !important; }

/* FAQ */
.sm-faq__layout { position: relative; z-index: 2; display: grid; grid-template-columns: 350px 1fr; gap: 32px; align-items: start; }
.sm-faq__map { position: sticky; top: 112px; overflow: hidden; border: 1px solid rgba(160,187,238,.17); border-radius: 23px; background: linear-gradient(145deg, rgba(17,33,64,.88), rgba(6,14,29,.94)); }
.sm-faq__map > header { min-height: 76px; padding: 0 23px; display: flex; align-items: center; justify-content: space-between; color: rgba(221,231,249,.55); border-bottom: 1px solid rgba(163,189,239,.14); font: 600 .54rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-faq__map > header p { display: flex; align-items: baseline; gap: 5px; }
.sm-faq__map > header b { color: #fff; font: 500 2.4rem/1 var(--sm-serif); }
.sm-faq__map > header small { color: #72839f; }
.sm-faq__map nav { padding: 11px; display: grid; gap: 5px; }
.sm-faq__map nav button { padding: 14px 13px; display: grid; grid-template-columns: 32px 1fr; gap: 10px; text-align: left; color: rgba(222,232,249,.53); border: 1px solid transparent; border-radius: 12px; background: transparent; cursor: pointer; }
.sm-faq__map nav span { color: #718fff; font: 600 .57rem/1.5 var(--sm-mono); }
.sm-faq__map nav b { font-size: .72rem; }
.sm-faq__map nav button.is-active { color: #fff; border-color: rgba(102,135,255,.28); background: rgba(49,92,246,.17); }
.sm-faq__map > footer { padding: 18px 23px 22px; color: rgba(221,231,249,.43); border-top: 1px solid rgba(163,189,239,.14); }
.sm-faq__map > footer span { display: flex; align-items: center; gap: 8px; font: 600 .5rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-faq__map > footer i { width: 6px; height: 6px; border-radius: 50%; background: var(--sm-cyan); box-shadow: 0 0 10px var(--sm-cyan); }
.sm-faq__map > footer p { margin-top: 9px; font-size: .63rem; }
.sm-faq__items { border-top: 1px solid rgba(162,188,237,.17); }
.sm-faq__items details { border-bottom: 1px solid rgba(162,188,237,.17); }
.sm-faq__items summary { min-height: 94px; padding: 24px 9px; display: grid; grid-template-columns: 42px 1fr 36px; align-items: center; gap: 17px; color: #fff; cursor: pointer; list-style: none; }
.sm-faq__items summary::-webkit-details-marker { display: none; }
.sm-faq__items summary > span { color: #6f8fff; font: 600 .63rem/1 var(--sm-mono); }
.sm-faq__items summary b { font-size: clamp(.92rem,1.25vw,1.08rem); }
.sm-faq__items summary > i { position: relative; width: 32px; height: 32px; border: 1px solid rgba(164,190,239,.22); border-radius: 50%; }
.sm-faq__items summary > i::before, .sm-faq__items summary > i::after { content: ""; position: absolute; left: 50%; top: 50%; width: 10px; height: 1px; background: #8ba6dd; transform: translate(-50%,-50%); transition: transform .35s var(--sm-ease); }
.sm-faq__items summary > i::after { transform: translate(-50%,-50%) rotate(90deg); }
.sm-faq__items details[open] summary > i::after { transform: translate(-50%,-50%) rotate(0); }
.sm-faq__items details > div { display: grid; grid-template-rows: 0fr; opacity: .2; transition: grid-template-rows .45s var(--sm-ease), opacity .35s; }
.sm-faq__items details > div > p { min-height: 0; overflow: hidden; padding: 0 60px 0 68px; color: rgba(222,232,249,.63); font-size: .87rem; }
.sm-faq__items details[open] > div { grid-template-rows: 1fr; opacity: 1; }
.sm-faq__items details[open] > div > p { padding-bottom: 32px; }

/* Contact and footer */
.sm-contact { position: relative; padding: clamp(105px,10vw,165px) 0; overflow: hidden; color: #fff; background: radial-gradient(circle at 28% 20%, rgba(49,92,246,.28), transparent 34%), radial-gradient(circle at 80% 70%, rgba(114,223,234,.11), transparent 30%), #020713; }
.sm-contact::before { content: ""; position: absolute; inset: 0; opacity: .2; background-image: linear-gradient(rgba(120,151,216,.13) 1px, transparent 1px), linear-gradient(90deg, rgba(120,151,216,.11) 1px, transparent 1px); background-size: 70px 70px; mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent); }
.sm-contact__stars { position: absolute; inset: 0; pointer-events: none; }
.sm-contact__stars i { position: absolute; width: 3px; height: 3px; border-radius: 50%; background: #fff; box-shadow: 0 0 11px 2px rgba(131,194,255,.75); animation: siTwinkle 4s ease-in-out infinite; }
.sm-contact__stars i:nth-child(1) { left: 6%; top: 17%; }.sm-contact__stars i:nth-child(2) { left: 14%; top: 67%; animation-delay:-1s }.sm-contact__stars i:nth-child(3) { left: 22%; top: 35%; animation-delay:-2s }.sm-contact__stars i:nth-child(4) { left: 31%; top: 82%; }.sm-contact__stars i:nth-child(5) { left: 40%; top: 13%; animation-delay:-3s }.sm-contact__stars i:nth-child(6) { left: 49%; top: 58%; }.sm-contact__stars i:nth-child(7) { left: 57%; top: 24%; animation-delay:-1.3s }.sm-contact__stars i:nth-child(8) { left: 65%; top: 77%; }.sm-contact__stars i:nth-child(9) { left: 74%; top: 12%; animation-delay:-2.5s }.sm-contact__stars i:nth-child(10) { left: 81%; top: 45%; }.sm-contact__stars i:nth-child(11) { left: 92%; top: 73%; animation-delay:-1.7s }.sm-contact__stars i:nth-child(12) { left: 88%; top: 23%; }.sm-contact__stars i:nth-child(13) { left: 11%; top: 88%; animation-delay:-2.2s }.sm-contact__stars i:nth-child(14) { left: 35%; top: 47%; }.sm-contact__stars i:nth-child(15) { left: 53%; top: 90%; animation-delay:-.8s }.sm-contact__stars i:nth-child(16) { left: 70%; top: 53%; }.sm-contact__stars i:nth-child(17) { left: 96%; top: 38%; animation-delay:-3.1s }.sm-contact__stars i:nth-child(18) { left: 3%; top: 44%; }
@keyframes siTwinkle { 0%,100%{opacity:.25;transform:scale(.7)} 50%{opacity:1;transform:scale(1.35)} }
.sm-contact__grid { position: relative; z-index: 2; display: grid; grid-template-columns: .88fr 1.12fr; gap: clamp(50px,8vw,120px); align-items: start; }
.sm-contact__copy h2 { max-width: 680px; font: 500 clamp(2.65rem,4vw,4rem)/.98 var(--sm-serif); letter-spacing: -.045em; }
.sm-contact__copy > p:not(.sm-kicker):not(.sm-contact__limit) { margin-top: 24px; max-width: 620px; color: rgba(224,233,250,.67); font-size: .96rem; }
.sm-signature { margin-top: 38px; padding-top: 25px; max-width: 580px; border-top: 1px solid rgba(172,198,244,.18); }
.sm-signature span { color: #7f9cff; font: 600 .53rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-signature b { display: block; margin-top: 10px; font: 500 1.9rem/1 var(--sm-serif); }
.sm-signature p { margin-top: 8px; color: rgba(222,232,249,.55); font-size: .75rem; }
.sm-contact__mail { margin-top: 31px; display: inline-flex; align-items: center; gap: 15px; color: #fff; font-size: .9rem; font-weight: 800; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.25); padding-bottom: 7px; }
.sm-contact__mail span { color: var(--sm-cyan); }
.sm-contact__limit { margin-top: 30px !important; max-width: 600px; color: rgba(220,230,248,.5); font-size: .73rem; }
.sm-contact__limit b { color: #fff; }

.sm-form { padding: clamp(26px,4vw,43px); border: 1px solid rgba(174,199,244,.2); border-radius: 28px; background: rgba(9,20,42,.78); box-shadow: 0 42px 100px -38px #000, inset 0 1px rgba(255,255,255,.06); backdrop-filter: blur(22px); }
.sm-form > header { margin-bottom: 29px; padding-bottom: 21px; border-bottom: 1px solid rgba(170,195,242,.16); }
.sm-form > header div { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.sm-form > header span, .sm-form > header b { color: #8da6ff; font: 600 .53rem/1 var(--sm-mono); letter-spacing: .08em; }
.sm-form > header b { color: rgba(223,233,250,.47); }
.sm-form > header p { margin-top: 10px; color: rgba(223,233,250,.63); font-size: .72rem; }
.sm-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.sm-form > label:not(.sm-consent), .sm-form__grid label { display: grid; gap: 8px; margin-bottom: 16px; }
.sm-form label > span { color: #e8eefb; font-size: .69rem; font-weight: 800; }
.sm-form input, .sm-form textarea { width: 100%; color: #fff; border: 1px solid rgba(163,190,239,.2); border-radius: 12px; outline: none; background: rgba(255,255,255,.055); transition: border-color .25s, box-shadow .25s, background .25s; }
.sm-form input { height: 50px; padding: 0 14px; }
.sm-form textarea { padding: 13px 14px; resize: vertical; }
.sm-form input::placeholder, .sm-form textarea::placeholder { color: rgba(212,223,242,.33); }
.sm-form input:focus, .sm-form textarea:focus { border-color: rgba(114,223,234,.65); background: rgba(255,255,255,.075); box-shadow: 0 0 0 3px rgba(114,223,234,.09); }
.sm-consent { margin: 6px 0 22px; display: grid; grid-template-columns: 19px 1fr; gap: 10px; align-items: start; }
.sm-consent input { width: 17px; height: 17px; margin-top: 3px; }
.sm-consent span { color: rgba(220,230,247,.58) !important; font-size: .65rem !important; font-weight: 500 !important; }
.sm-consent a { color: #fff; }
.sm-form .sm-btn { width: 100%; border: 0; cursor: pointer; }
.sm-form__status { min-height: 22px; margin-top: 13px !important; color: #8ee6c0; font-size: .68rem; }
.sm-form > small { display: block; color: rgba(220,230,247,.4); font-size: .61rem; text-align: center; }
.sm-form > small a { color: rgba(235,241,253,.7); }
.sm-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

.sm-footer { padding: 60px 0 26px; color: #dce5f7; background: #01040c; }
.sm-footer__grid { display: grid; grid-template-columns: 1.3fr 1fr .7fr; gap: 60px; }
.sm-footer__brand { color: #fff; font-size: 1.2rem; font-weight: 800; text-decoration: none; }
.sm-footer__brand span { color: #8ba4ff; }
.sm-footer__grid > div p { margin-top: 10px; color: #66758f; font-size: .72rem; }
.sm-footer nav { display: grid; align-content: start; gap: 9px; }
.sm-footer nav a { color: #8b99af; font-size: .7rem; text-decoration: none; }
.sm-footer__bottom { margin-top: 45px; padding-top: 20px; display: flex; justify-content: space-between; color: #526079; border-top: 1px solid rgba(160,184,231,.11); font: 600 .55rem/1 var(--sm-mono); letter-spacing: .06em; }

/* Motion enhancement, content is visible until JS opts each element in */
.sm-pending { opacity: .001; transform: translateY(28px); }
.sm-revealed { opacity: 1; transform: none; transition: opacity .85s var(--sm-ease), transform .85s var(--sm-ease); }
.sm-is-swapping { opacity: .15 !important; transform: scale(.985) !important; }

/* Supermercados V2 · identidad Centauri con acento cálido de categoría */
:root { --sm-retail: #d99b45; --sm-retail-soft: #fff2dc; --sm-mint: #5bd6b1; }
.sm-head h2 { max-width: 1050px; font-size: clamp(2.15rem,3.25vw,3.35rem); line-height: 1; }
.sm-hero h1 { max-width: 920px; font-size: clamp(3.25rem,4.85vw,4.9rem); line-height: .93; }
.sm-section.sm-logistics, .sm-section.sm-faq { color: #eef4ff; background: var(--sm-night); }
.sm-section.sm-logistics::before, .sm-section.sm-faq::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.26; background-image:linear-gradient(rgba(116,148,210,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(116,148,210,.1) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(90deg,transparent,#000 22%,#000 78%,transparent); }

/* Hero fotográfico + búsqueda reconocible */
.sm-hero__photos { position:absolute; inset:0; overflow:hidden; border-radius:inherit; background:#0c1830; }
.sm-hero__photos::after { content:""; position:absolute; z-index:2; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(3,9,22,.05),rgba(3,9,22,.75) 72%,#040a16),linear-gradient(90deg,rgba(9,25,55,.52),transparent 62%); }
.sm-hero__photos figure { position:absolute; inset:0; margin:0; opacity:0; transform:scale(1.04); transition:opacity 1s var(--sm-ease),transform 5.8s linear; }
.sm-hero__photos figure.is-active { opacity:1; transform:scale(1); }
.sm-hero__photos picture,.sm-hero__photos img { width:100%; height:100%; }
.sm-hero__photos img { object-fit:cover; filter:saturate(.82) contrast(1.05); }
.sm-hero__photos figcaption { position:absolute; z-index:3; left:24px; top:24px; padding:8px 11px; color:rgba(241,247,255,.86); border:1px solid rgba(174,207,255,.23); border-radius:999px; background:rgba(4,13,30,.63); backdrop-filter:blur(12px); font:600 .5rem/1 var(--sm-mono); letter-spacing:.08em; }
.sm-search__brand,.sm-google__brand { margin:13px auto 2px; display:flex; justify-content:center; font:500 1.44rem/1 Arial,sans-serif; letter-spacing:-.08em; }
.sm-search__brand span:nth-child(1),.sm-google__brand span:nth-child(1),.sm-search__brand span:nth-child(4),.sm-google__brand span:nth-child(4){color:#4285f4}.sm-search__brand span:nth-child(2),.sm-google__brand span:nth-child(2),.sm-search__brand span:nth-child(6),.sm-google__brand span:nth-child(6){color:#ea4335}.sm-search__brand span:nth-child(3),.sm-google__brand span:nth-child(3){color:#fbbc05}.sm-search__brand span:nth-child(5),.sm-google__brand span:nth-child(5){color:#34a853}
.sm-search-icon { width:13px; height:13px; flex:0 0 auto; position:relative; border:1.8px solid #64748b; border-radius:50%; }.sm-search-icon::after{content:"";position:absolute;width:5px;height:1.8px;right:-4px;bottom:-2px;transform:rotate(45deg);border-radius:2px;background:#64748b}

/* Preparación */
.sm-readiness { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.sm-readiness article { position:relative; min-height:340px; padding:34px 30px 72px; overflow:hidden; border:1px solid var(--sm-line); border-radius:25px; background:#fff; box-shadow:var(--sm-shadow); transition:transform .45s var(--sm-ease),border-color .35s,box-shadow .35s; }
.sm-readiness article::before { content:""; position:absolute; width:170px; height:170px; right:-85px; top:-85px; border-radius:50%; border:1px solid rgba(49,92,246,.14); box-shadow:inset 0 0 40px rgba(114,223,234,.06); transition:transform .65s var(--sm-ease),border-color .35s; }
.sm-readiness article > i { display:grid; place-items:center; width:43px; height:43px; margin-bottom:54px; color:var(--sm-blue); border:1px solid rgba(49,92,246,.2); border-radius:14px; background:#f2f5ff; font:600 .65rem/1 var(--sm-mono); font-style:normal; box-shadow:inset 0 1px #fff; }
.sm-readiness article > span { color:var(--sm-blue); font:600 .53rem/1 var(--sm-mono); letter-spacing:.09em; }
.sm-readiness h3 { margin-top:13px!important; font:500 1.65rem/1.06 var(--sm-serif); }
.sm-readiness p { margin-top:15px!important; color:var(--sm-muted); font-size:.8rem; }
.sm-readiness article > b { position:absolute; left:30px; bottom:28px; color:#8995a8; font:600 .52rem/1 var(--sm-mono); letter-spacing:.07em; }
@media (hover:hover){.sm-readiness article:hover{transform:translateY(-8px);border-color:rgba(49,92,246,.32);box-shadow:0 36px 70px -42px rgba(49,92,246,.58)}.sm-readiness article:hover::before{transform:scale(1.25) rotate(20deg);border-color:rgba(114,223,234,.45)}}

/* El lineal */
.sm-lineal { background:linear-gradient(180deg,#f8faff,#edf2fa); }
.sm-shelf-stage { position:relative; padding:18px; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(320px,.5fr); gap:16px; overflow:hidden; color:#eef5ff; border:1px solid rgba(146,178,239,.22); border-radius:32px; background:linear-gradient(145deg,#102242,#030916 72%); box-shadow:0 52px 120px -52px #020713; }
.sm-shelf-stage::before { content:""; position:absolute; width:580px; height:580px; left:18%; top:-350px; border-radius:50%; background:rgba(49,92,246,.22); filter:blur(75px); pointer-events:none; }
.sm-shelf__top { position:relative; z-index:3; grid-column:1/-1; min-height:48px; padding:0 14px; display:flex; align-items:center; justify-content:space-between; color:rgba(220,231,252,.58); border-bottom:1px solid rgba(167,192,241,.13); font:600 .57rem/1 var(--sm-mono); letter-spacing:.08em; }
.sm-shelf__top span{display:flex;align-items:center;gap:9px}.sm-shelf__top i{width:7px;height:7px;border-radius:50%;background:var(--sm-mint);box-shadow:0 0 12px var(--sm-mint)}
.sm-shelf__aisle { position:relative; z-index:2; min-height:610px; padding:22px 20px 74px; overflow:hidden; border:1px solid rgba(177,201,248,.16); border-radius:22px; background:linear-gradient(180deg,#e8edf4 0 13%,#f8f7f2 13% 75%,#9aa6b5 75% 77%,#d8dee5 77% 81%,#7c8794 81% 83%,#eef1f4 83%); box-shadow:inset 0 -35px 70px rgba(11,24,47,.15); }
.sm-shelf__aisle::before { content:""; position:absolute; inset:13% 0 auto; height:64%; opacity:.28; background:repeating-linear-gradient(90deg,transparent 0 79px,rgba(21,37,58,.13) 80px 81px); }
.sm-shelf__rail { height:64px; display:flex; align-items:center; color:#728096; font:600 .5rem/1 var(--sm-mono); letter-spacing:.1em; }.sm-shelf__rail i{flex:1;height:1px;margin:0 12px;background:#c6ced9}
.sm-shelf__products { position:relative; z-index:2; min-height:390px; display:grid; grid-template-columns:repeat(5,1fr); align-items:end; gap:9px; }
.sm-shelf__products button { min-width:0; padding:12px 7px 17px; display:flex; flex-direction:column; align-items:center; color:#526078; border:1px solid transparent; border-radius:16px 16px 6px 6px; background:transparent; cursor:pointer; transition:transform .45s var(--sm-ease),background .3s,border-color .3s,box-shadow .3s; }
.sm-shelf__products button b { margin-top:15px; color:#17253c; font-size:.66rem; text-align:center; }.sm-shelf__products button small{margin-top:4px;font-size:.5rem;text-align:center}.sm-shelf__products button.is-active{transform:translateY(-12px);border-color:rgba(49,92,246,.22);background:rgba(255,255,255,.8);box-shadow:0 28px 45px -30px rgba(26,48,89,.65)}
.sm-pack { position:relative; display:grid; place-items:center; width:66px; height:132px; color:#fff; border-radius:9px 9px 13px 13px; background:linear-gradient(145deg,#315cf6,#182e85); box-shadow:inset 6px 0 rgba(255,255,255,.1),0 18px 24px -16px rgba(7,19,39,.72); font-style:normal; transition:filter .35s,transform .5s var(--sm-ease); }.sm-pack span{writing-mode:vertical-rl;transform:rotate(180deg);font:700 .48rem/1 var(--sm-mono);letter-spacing:.1em}.sm-pack::before{content:"";position:absolute;left:8px;right:8px;top:20px;height:1px;background:rgba(255,255,255,.62)}.sm-pack--jar{height:112px;border-radius:9px 9px 20px 20px;background:linear-gradient(145deg,#426e43,#27422f)}.sm-pack--jar::after{content:"";position:absolute;left:2px;right:2px;top:-10px;height:13px;border-radius:6px 6px 2px 2px;background:#d7b96f}.sm-pack--bag{width:76px;height:125px;border-radius:15px 15px 9px 9px;background:linear-gradient(145deg,#da9c46,#a15c25);clip-path:polygon(5% 0,95% 0,100% 96%,91% 100%,9% 100%,0 96%)}.sm-pack--bottle{width:58px;height:145px;border-radius:12px 12px 18px 18px;background:linear-gradient(145deg,#40a8a2,#17646b)}.sm-pack--bottle::after{content:"";position:absolute;top:-21px;width:29px;height:25px;border-radius:5px 5px 2px 2px;background:#d9e7ed}.sm-pack--box{height:112px;border-radius:5px;background:linear-gradient(145deg,#a477d6,#62459b)}.sm-pack--oil{width:54px;height:150px;border-radius:22px 22px 12px 12px;background:linear-gradient(145deg,#58864d,#253f2e)}.sm-pack--oil::after{content:"";position:absolute;top:-18px;width:18px;height:21px;border-radius:3px;background:#32412f}
.sm-shelf__products button.is-active .sm-pack{filter:saturate(1.2);transform:scale(1.06);box-shadow:0 0 0 7px rgba(49,92,246,.08),0 25px 35px -18px rgba(7,19,39,.82)}
.sm-shelf__base { position:absolute; z-index:4; left:20px; right:20px; bottom:18px; min-height:52px; padding:0 18px; display:flex; align-items:center; justify-content:space-between; color:#66758b; border:1px solid #cdd5df; border-radius:7px; background:linear-gradient(#fff,#e8edf3); box-shadow:0 9px 18px rgba(21,34,54,.18); font-size:.62rem; }.sm-shelf__base span{color:#315cf6;font:600 .52rem/1 var(--sm-mono);letter-spacing:.08em}
.sm-shelf__detail { position:relative; z-index:2; padding:clamp(28px,4vw,54px); align-self:stretch; border:1px solid rgba(179,203,249,.15); border-radius:22px; background:rgba(4,13,29,.78); backdrop-filter:blur(16px); }.sm-shelf__detail>span{color:#75dce9;font:600 .56rem/1 var(--sm-mono);letter-spacing:.09em}.sm-shelf__detail h3{margin-top:20px!important;font:500 clamp(2rem,3vw,3.1rem)/1 var(--sm-serif)}.sm-shelf__detail p{margin-top:20px!important;color:rgba(222,232,250,.68);font-size:.88rem}.sm-shelf__detail dl{margin-top:38px;display:grid;gap:18px}.sm-shelf__detail dl div{padding-top:15px;border-top:1px solid rgba(182,205,248,.14)}.sm-shelf__detail dt{color:rgba(219,231,252,.45);font:600 .52rem/1 var(--sm-mono);text-transform:uppercase}.sm-shelf__detail dd{margin-top:7px;color:#fff;font-size:.75rem;font-weight:700}.sm-shelf-stage>.sm-visual-note{grid-column:1/-1;color:rgba(214,226,248,.48);font-size:.65rem}

/* Marca / MDD */
.sm-paths { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.sm-paths article { min-height:580px; padding:clamp(30px,4vw,58px); overflow:hidden; border:1px solid var(--sm-line); border-radius:29px; background:#fff; box-shadow:var(--sm-shadow); transition:transform .5s var(--sm-ease),border-color .35s; }.sm-paths article header{display:flex;justify-content:space-between;color:var(--sm-blue);font:600 .58rem/1 var(--sm-mono);letter-spacing:.09em}.sm-paths article header b{font-size:2rem;color:#d9e0ec}.sm-paths h3{max-width:580px;margin-top:38px!important;font:500 clamp(2rem,3vw,3.15rem)/1 var(--sm-serif)}.sm-paths p{margin-top:19px!important;color:var(--sm-muted);max-width:620px}.sm-paths ul{margin-top:27px;display:grid;gap:9px;list-style:none}.sm-paths li{position:relative;padding-left:22px;font-size:.76rem;font-weight:700}.sm-paths li::before{content:"";position:absolute;left:0;top:.7em;width:10px;height:1px;background:var(--sm-blue)}
.sm-product-orbit { position:relative; height:210px; margin-top:20px; display:grid; place-items:center; border-radius:22px; background:radial-gradient(circle,rgba(49,92,246,.12),transparent 58%),linear-gradient(145deg,#f8faff,#edf2fa); }.sm-product-orbit::before,.sm-product-orbit::after{content:"";position:absolute;width:175px;height:175px;border:1px solid rgba(49,92,246,.16);border-radius:50%;animation:sm-orbit 10s linear infinite}.sm-product-orbit::after{width:120px;height:120px;animation-direction:reverse;animation-duration:7s}.sm-product-orbit .sm-pack{height:120px;z-index:2}.sm-product-orbit em{position:absolute;padding:6px 9px;color:#315cf6;border:1px solid rgba(49,92,246,.13);border-radius:999px;background:#fff;font:600 .48rem/1 var(--sm-mono);font-style:normal}.sm-product-orbit em:nth-of-type(1){left:7%;top:26%}.sm-product-orbit em:nth-of-type(2){right:6%;top:24%}.sm-product-orbit em:nth-of-type(3){right:13%;bottom:16%}.sm-product-orbit--mdd{background:radial-gradient(circle,rgba(217,155,69,.15),transparent 58%),linear-gradient(145deg,#fffcf5,#f4efe5)}.sm-inline-note,.sm-related-note{margin:22px auto 0!important;padding:18px 22px;max-width:980px;text-align:center;color:#65748b;border:1px solid var(--sm-line);border-radius:15px;background:rgba(255,255,255,.72);font-size:.78rem}.sm-related-note a{color:var(--sm-blue);font-weight:800;text-decoration:none}
@keyframes sm-orbit{to{transform:rotate(360deg)}}
@media(hover:hover){.sm-paths article:hover,.sm-paths article:focus-within{transform:translateY(-8px);border-color:rgba(49,92,246,.32)}}

/* Logística */
.sm-logistics-stage { position:relative; z-index:2; padding:15px; display:grid; grid-template-columns:.75fr 1.25fr; gap:15px; border:1px solid rgba(158,188,244,.18); border-radius:30px; background:linear-gradient(145deg,rgba(18,35,66,.9),rgba(4,11,25,.96)); box-shadow:0 45px 100px -44px #000; }.sm-logistics-stage>figure{position:relative;min-height:620px;overflow:hidden;border-radius:22px}.sm-logistics-stage>figure picture,.sm-logistics-stage>figure img{width:100%;height:100%}.sm-logistics-stage>figure img{object-fit:cover;filter:saturate(.7)}.sm-logistics-stage>figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(3,9,22,.88))}.sm-logistics-stage>figure figcaption{position:absolute;z-index:2;left:26px;right:26px;bottom:25px;color:#fff;font:600 .54rem/1.5 var(--sm-mono);letter-spacing:.08em}
.sm-logistics-flow { position:relative; padding:18px; display:grid; grid-template-columns:repeat(4,1fr); grid-template-rows:auto 1fr; gap:8px; overflow:hidden; border-radius:22px; background:rgba(5,14,31,.68) }.sm-logistics-flow::before{content:"";position:absolute;left:11%;right:11%;top:90px;height:1px;background:linear-gradient(90deg,#315cf6,#72dfea,#d99b45);box-shadow:0 0 15px rgba(114,223,234,.35)}.sm-logistics-flow button{position:relative;z-index:2;min-height:160px;padding:18px 9px;display:flex;flex-direction:column;align-items:center;color:rgba(224,233,249,.55);border:1px solid rgba(177,201,247,.12);border-radius:15px;background:rgba(9,23,47,.88);cursor:pointer;transition:transform .4s var(--sm-ease),color .3s,border-color .3s}.sm-logistics-flow button>span{align-self:flex-start;color:#7292ff;font:600 .53rem/1 var(--sm-mono)}.sm-logistics-flow button b{margin-top:13px;font-size:.72rem}.sm-logistics-flow button small{font-size:.55rem}.sm-logistics-flow button.is-active{color:#fff;border-color:rgba(114,223,234,.4);transform:translateY(-5px);box-shadow:0 18px 34px -25px #72dfea}.sm-logistics-flow aside{grid-column:1/-1;align-self:stretch;padding:clamp(30px,5vw,70px);border:1px solid rgba(175,201,250,.12);border-radius:18px;background:linear-gradient(130deg,rgba(49,92,246,.13),rgba(114,223,234,.04))}.sm-logistics-flow aside span{color:#72dfea;font:600 .56rem/1 var(--sm-mono);letter-spacing:.08em}.sm-logistics-flow aside h3{margin-top:19px!important;max-width:700px;font:500 clamp(2rem,3vw,3.2rem)/1 var(--sm-serif)}.sm-logistics-flow aside p{margin-top:20px!important;max-width:720px;color:rgba(224,233,250,.65);font-size:.86rem}
.sm-mini-product,.sm-mini-box,.sm-mini-pallet,.sm-mini-truck{position:relative;width:45px;height:54px;margin-top:18px;border:1.5px solid currentColor;border-radius:8px;opacity:.82}.sm-mini-box{height:42px;margin-top:30px;border-radius:3px}.sm-mini-box::before,.sm-mini-pallet::before{content:"";position:absolute;left:5px;right:5px;top:10px;border-top:1px dashed currentColor}.sm-mini-pallet{width:53px;height:40px;margin-top:31px;border-radius:2px;background:repeating-linear-gradient(90deg,transparent 0 8px,currentColor 9px 10px)}.sm-mini-truck{width:57px;height:35px;margin-top:34px;border-radius:4px}.sm-mini-truck::before,.sm-mini-truck::after{content:"";position:absolute;bottom:-8px;width:9px;height:9px;border:1px solid currentColor;border-radius:50%;background:#0a1a36}.sm-mini-truck::before{left:8px}.sm-mini-truck::after{right:7px}.sm-logistics>.sm-wrap>.sm-visual-note{position:relative;z-index:2;margin-top:14px!important;color:rgba(220,231,249,.48);font-size:.67rem}

/* Categorías */
.sm-category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.sm-category-grid article{position:relative;min-height:510px;padding:15px 22px 68px;overflow:hidden;border:1px solid var(--sm-line);border-radius:25px;background:#fff;box-shadow:var(--sm-shadow);transition:transform .5s var(--sm-ease),border-color .35s}.sm-category-grid figure{height:235px;margin:-1px -10px 28px!important;overflow:hidden;border-radius:17px}.sm-category-grid picture,.sm-category-grid img{width:100%;height:100%}.sm-category-grid img{object-fit:cover;transition:transform .8s var(--sm-ease),filter .5s}.sm-category-grid article>span{color:var(--sm-blue);font:600 .58rem/1 var(--sm-mono)}.sm-category-grid h3{margin-top:13px!important;font:500 1.58rem/1.05 var(--sm-serif)}.sm-category-grid p{margin-top:14px!important;color:var(--sm-muted);font-size:.74rem}.sm-category-grid article>b{position:absolute;left:22px;right:22px;bottom:24px;color:#7d8aa0;font:600 .5rem/1.35 var(--sm-mono)}@media(hover:hover){.sm-category-grid article:hover{transform:translateY(-7px);border-color:rgba(49,92,246,.3)}.sm-category-grid article:hover img{transform:scale(1.06);filter:saturate(1.08)}}

.sm-channels__list article b a{color:var(--sm-blue);text-decoration:none}.sm-mid-cta{margin-top:24px}.sm-section.sm-revealed{animation:sm-soft-rise .8s var(--sm-ease) both}@keyframes sm-soft-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

@media (max-width: 1180px) {
  .sm-wrap { width: min(100% - 48px, 1120px); }
  .sm-hero__grid { grid-template-columns: 1.08fr .92fr; }
  .sm-hero h1 { font-size: clamp(3rem,5.2vw,4.6rem); }
  .sm-head--split { grid-template-columns: 1.18fr .82fr; gap: 54px; }
  .sm-load__grid { grid-template-columns: .8fr 1.2fr; gap: 54px; }
  .sm-route { padding: 20px; }
  .sm-route-detail { grid-template-columns: 180px 1fr 1.15fr; }
  .sm-readiness,.sm-category-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 980px) {
  .sm-wrap { width: min(100% - 40px, 900px); }
  .sm-section { padding-block: 92px; }
  .sm-hero { min-height: auto; padding-top: 135px; }
  .sm-hero__grid { grid-template-columns: 1fr; gap: 24px; }
  .sm-hero__copy { padding-bottom: 22px; }
  .sm-hero h1 { max-width: 880px; font-size: clamp(3.45rem,8.2vw,5.15rem); }
  .sm-hero__lede { max-width: 730px; }
  .sm-hero__visual { width: min(100%, 760px); min-height: 590px; margin-inline: auto; }
  .sm-search { left: 24px; }
  .sm-hero__tag { right: 22px; }
  .sm-head--split { grid-template-columns: 1fr; gap: 27px; align-items: start; }
  .sm-head h2 { max-width: 860px; }
  .sm-head--split > div:last-child { max-width: 680px; }
  .sm-load__grid, .sm-case__grid, .sm-confidential__grid, .sm-selection__grid, .sm-channels__board, .sm-contact__grid { grid-template-columns: 1fr; }
  .sm-load__story { display: grid; grid-template-columns: 1fr 1fr; gap: 38px; }
  .sm-copy-grid { margin-top: 0; }
  .sm-process-film { grid-template-rows: repeat(2,230px); }
  .sm-discovery__desk, .sm-dossier__grid, .sm-rfq__stage { grid-template-columns: 1fr; }
  .sm-discovery__desk > nav, .sm-dossier__grid > nav, .sm-rfq__flow { grid-template-columns: repeat(4,1fr); }
  .sm-discovery__desk > nav button, .sm-dossier__grid > nav button, .sm-rfq__flow button { padding: 15px 12px; }
  .sm-discovery__desk > nav button.is-active, .sm-dossier__grid > nav button.is-active, .sm-rfq__flow button.is-active { transform: translateY(-4px); }
  .sm-routes { grid-template-columns: 1fr; }
  .sm-route { min-height: 170px; }
  .sm-route-detail { grid-template-columns: 1fr 1fr; }
  .sm-route-detail p { grid-column: 1 / -1; }
  .sm-case__media { min-height: 560px; }
  .sm-google__stage { grid-template-columns: 1fr; }
  .sm-query-stack { display: grid; grid-template-columns: repeat(3,1fr); gap: 5px; }
  .sm-query-stack > header, .sm-query-stack > footer { grid-column: 1 / -1; }
  .sm-selection__photo { min-height: 520px; }
  .sm-fit__grid { grid-template-columns: 1fr 1fr; }
  .sm-fit__grid figure { grid-row: 1 / 3; grid-column: 2; }
  .sm-faq__layout { grid-template-columns: 280px 1fr; gap: 20px; }
  .sm-contact__copy { max-width: 720px; }
  .sm-method__stage > nav { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
  .sm-method__stage > nav button { min-width: 205px; scroll-snap-align: start; }
  .sm-shelf-stage,.sm-logistics-stage { grid-template-columns:1fr; }
  .sm-shelf__detail { min-height:360px; }
  .sm-logistics-stage>figure { min-height:420px; }
}

@media (max-width: 720px) {
  .sm-wrap { width: min(100% - 30px, 650px); }
  .sm-section { padding-block: 76px; }
  .sm-head { margin-bottom: 38px; }
  .sm-head h2 { font-size: clamp(2.2rem,10vw,3rem); line-height: 1; }
  .sm-kicker { margin-bottom: 17px !important; font-size: .61rem; }
  .sm-hero { padding-top: 122px; }
  .sm-hero h1 { font-size: clamp(2.8rem,13.5vw,4rem); line-height: .93; }
  .sm-hero__lede { margin-top: 25px; }
  .sm-hero__lede p { font-size: .96rem; }
  .sm-actions { display: grid; }
  .sm-btn { width: 100%; }
  .sm-hero__proof { display: grid; }
  .sm-hero__visual { min-height: 545px; border-radius: 25px; }
  .sm-search { left: 12px; right: 12px; bottom: 18px; }
  .sm-search__results article { padding-inline: 8px; }
  .sm-search__results .is-target i { display: none; }
  .sm-hero__tag { right: 10px; top: 17px; }
  .sm-hero__rail { display: none; }
  .sm-load__story, .sm-copy-grid { grid-template-columns: 1fr; }
  .sm-process-film { grid-template-columns: 1fr 1fr; grid-template-rows: 330px 180px; }
  .sm-process-film .is-large { grid-column: 1 / -1; grid-row: auto; }
  .sm-discovery__desk { padding: 10px; }
  .sm-discovery__desk > nav, .sm-dossier__grid > nav, .sm-rfq__flow { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 5px; }
  .sm-discovery__desk > nav button, .sm-dossier__grid > nav button, .sm-rfq__flow button { min-width: 210px; scroll-snap-align: start; }
  .sm-discovery__screen, .sm-dossier__body, .sm-rfq__panel-body, .sm-method__stage > article { grid-template-columns: 1fr; }
  .sm-discovery__screen figure { min-height: 300px; order: -1; }
  .sm-discovery__screen figure::after { background: linear-gradient(180deg, transparent 50%, #f7f9fd); }
  .sm-discovery__copy, .sm-dossier__body > div, .sm-rfq__panel-body > div, .sm-method__stage > article > div { padding: 30px 24px; }
  .sm-blueprint { grid-template-columns: 1fr; }
  .sm-blueprint__drawing { min-height: 260px; }
  .sm-blueprint__brief { margin-top: 0; }
  .sm-route { min-height: 190px; }
  .sm-route-detail { grid-template-columns: 1fr; gap: 9px; }
  .sm-route-detail p { grid-column: auto; }
  .sm-case__media { min-height: 430px; }
  .sm-case__metrics { padding: 19px; }
  .sm-mid-cta { grid-template-columns: 1fr; }
  .sm-mid-cta > p { grid-column: auto; }
  .sm-dossier__body figure { min-height: 320px; }
  .sm-dossier__body dl { grid-template-columns: 1fr; }
  .sm-google__browser { overflow: hidden; }
  .sm-google__query, .sm-google__tabs, .sm-google__list { width: calc(100% - 28px); }
  .sm-google__list .is-featured { padding-right: 10px; }
  .sm-google__list em { display: none; }
  .sm-query-stack { display: flex; overflow-x: auto; }
  .sm-query-stack > header, .sm-query-stack > footer { min-width: 100%; }
  .sm-query-stack > button { min-width: 185px; }
  .sm-photo-card { min-height: 450px; }
  .sm-rfq__panel-body figure { min-height: 300px; }
  .sm-rfq__panel > footer { padding-block: 13px; align-items: flex-start; flex-direction: column; }
  .sm-selection__photo { min-height: 420px; }
  .sm-selection__checks, .sm-channels__list { grid-template-columns: 1fr; }
  .sm-selection__checks article { min-height: 185px; }
  .sm-quote__meta { grid-template-columns: 1fr 1fr; }
  .sm-channels__board > figure { min-height: 450px; }
  .sm-channels__list article { min-height: 230px; }
  .sm-method__stage > nav { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
  .sm-method__stage > nav button { min-width: 205px; scroll-snap-align: start; }
  .sm-method__stage > article figure { min-height: 330px; }
  .sm-method__photos { grid-template-columns: 1fr; }
  .sm-fit__grid { grid-template-columns: 1fr; }
  .sm-fit__grid figure { grid-row: auto; grid-column: auto; min-height: 410px; }
  .sm-faq__layout { grid-template-columns: 1fr; }
  .sm-faq__map { position: relative; top: 0; }
  .sm-faq__map nav { grid-template-columns: 1fr 1fr; }
  .sm-faq__items summary { grid-template-columns: 32px 1fr 32px; gap: 10px; }
  .sm-faq__items details > div > p { padding-left: 42px; padding-right: 12px; }
  .sm-contact { padding-block: 86px; }
  .sm-contact__copy h2 { font-size: clamp(2.5rem,11.5vw,3.6rem); }
  .sm-form__grid { grid-template-columns: 1fr; gap: 0; }
  .sm-footer__grid { grid-template-columns: 1fr; gap: 32px; }
  .sm-readiness,.sm-category-grid,.sm-paths { grid-template-columns:1fr; }
  .sm-readiness article { min-height:300px; }
  .sm-shelf-stage { padding:10px; }
  .sm-shelf__top { align-items:flex-start; flex-direction:column; justify-content:center; gap:7px; }
  .sm-shelf__aisle { min-height:580px; padding-inline:9px; }
  .sm-shelf__products { gap:2px; }
  .sm-shelf__products button { padding-inline:2px; }
  .sm-shelf__products button b { font-size:.55rem; }
  .sm-shelf__products button small { display:none; }
  .sm-pack { width:48px; height:112px; }
  .sm-pack--bag { width:55px; height:105px; }
  .sm-pack--bottle { width:43px; height:124px; }
  .sm-pack--oil { width:42px; height:130px; }
  .sm-shelf__base b { display:none; }
  .sm-paths article { min-height:auto; }
  .sm-logistics-flow { grid-template-columns:repeat(4,minmax(120px,1fr)); overflow-x:auto; scroll-snap-type:x mandatory; }
  .sm-logistics-flow button { scroll-snap-align:start; }
  .sm-logistics-flow aside { grid-column:1/5; position:sticky; left:0; min-width:calc(100vw - 62px); }
}

@media (max-width: 420px) {
  .sm-wrap { width: calc(100% - 24px); }
  .sm-hero h1 { font-size: 2.68rem; }
  .sm-hero__visual { min-height: 500px; }
  .sm-search__bar { margin-inline: 10px; }
  .sm-search__results { padding-inline: 11px; }
  .sm-process-film { grid-template-columns: 1fr; grid-template-rows: 300px 190px 190px; }
  .sm-process-film .is-large { grid-column: auto; }
  .sm-procurement__scene { padding: 10px; }
  .sm-blueprint__brief dl { grid-template-columns: 1fr 1fr; }
  .sm-blueprint__drawing i { width: 170px; }
  .sm-blueprint__drawing i:nth-child(3) { width: 220px; }
  .sm-route { padding: 18px; }
  .sm-route__line { left: 18px; }
  .sm-case__media { min-height: 370px; }
  .sm-case__media figcaption { left: 20px; right: 20px; bottom: 24px; }
  .sm-case__main strong { font-size: 5.1rem; }
  .sm-google__brand { margin-top: 23px; }
  .sm-google__list article > p { max-width: 92%; }
  .sm-selection__checks article { padding: 23px; }
  .sm-quote__line { gap: 20px; }
  .sm-quote__line b { text-align: right; }
  .sm-faq__map nav { grid-template-columns: 1fr; }
  .sm-form { padding: 22px 17px; }
  .sm-footer__bottom { flex-direction: column; gap: 8px; }
  .sm-category-grid figure { height:220px; }
  .sm-shelf__products button:nth-child(2) .sm-pack,.sm-shelf__products button:nth-child(4) .sm-pack { transform:scale(.9); }
  .sm-shelf__detail { padding:28px 22px; }
}

/* Astra: a product-led story, built as a usable miniature website. */
.sm-search__brand { font-size:1.8rem; margin-top:18px; }
.sm-search__bar { min-height:48px; }
.sm-search__bar p { font-size:.81rem; }
.sm-search__results article { padding-block:13px; }
.sm-search__results article span { font-size:.64rem; }
.sm-search__results article b { margin-block:4px; font-size:.9rem; }
.sm-search__results article p { font-size:.7rem; line-height:1.55; }
.sm-search__results .is-target i { position:static; display:inline-block; margin-top:8px; font-size:.5rem; }
.sm-search > footer { min-height:42px; font-size:.59rem; }
.sm-showcase { --demo-accent:#526e3a; --demo-bg:#f4f2e9; --demo-ink:#283922; position:relative; padding:22px; overflow:hidden; border:1px solid #213655; border-radius:32px; background:#071123; box-shadow:0 48px 100px -60px #00102f; color:#fff; }
.sm-showcase[data-product="oil"] { --demo-accent:#777335; --demo-bg:#f4f1e6; --demo-ink:#3c4129; }
.sm-showcase[data-product="cosmetics"] { --demo-accent:#8b6462; --demo-bg:#f8f2ee; --demo-ink:#553e3d; }
.sm-showcase[data-product="pets"] { --demo-accent:#a36434; --demo-bg:#faf0e5; --demo-ink:#613b26; }
.sm-showcase__top { display:flex; align-items:center; gap:18px; padding:8px 7px 23px; font:500 .65rem/1.4 var(--sm-mono); letter-spacing:.04em; color:#91a5c6; }
.sm-showcase__top > span { display:flex; align-items:center; gap:10px; margin-right:auto; }
.sm-showcase__top > span i { width:7px; height:7px; border-radius:50%; background:#7cdce7; box-shadow:0 0 15px #72dfea80; }
.sm-showcase__top button { display:flex; gap:10px; align-items:center; min-height:36px; padding:8px 11px; border:1px solid #32445f; border-radius:7px; background:#101e33; color:#d7e4f8; cursor:pointer; font-size:.68rem; }
.sm-showcase__top button[hidden] { display:none; }
.sm-showcase__tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.sm-showcase__tabs button { display:flex; align-items:center; gap:12px; min-width:0; padding:10px 12px; border:1px solid #273650; border-radius:12px; color:#9fb0cb; background:#101d32; text-align:left; cursor:pointer; transition:border-color .35s,background .35s,transform .35s; }
.sm-showcase__tabs button:hover { transform:translateY(-3px); }
.sm-showcase__tabs button.is-active { color:#fff; border-color:#7891c2; background:#1d3151; }
.sm-showcase__tabs button b { display:block; font-size:.82rem; line-height:1.3; }
.sm-showcase__tabs button small { display:block; margin-top:5px; font-size:.64rem; opacity:.7; }
.sm-showcase__tabs button > i { margin-left:auto; font:500 .63rem var(--sm-mono); font-style:normal; opacity:.4; }
.sm-demo-thumb { flex:0 0 49px; width:49px; height:53px; border-radius:7px; background-image:url('/assets/img/centauri-productos-demo.webp'); background-size:200% 200%; background-position:0 0; }
.sm-demo-thumb--oil { background-position:100% 0; }
.sm-demo-thumb--cosmetics { background-position:0 100%; }
.sm-demo-thumb--pets { background-position:100% 100%; }
.sm-showcase__journey { display:flex; align-items:center; gap:20px; padding:25px 9px; }
.sm-showcase__journey > span { flex-shrink:0; color:#7390be; font:500 .65rem var(--sm-mono); }
.sm-showcase__journey > span b { margin-left:6px; color:#c7d6ee; font-size:.62rem; }
.sm-showcase__journey p { display:flex; align-items:center; gap:16px; min-height:48px; padding:10px 18px; width:100%; border:1px solid #304563; border-radius:30px; background:#0d1b31; color:#ecf3ff; font-size:.85rem; }
.sm-showcase__journey-end i { padding-left:8px; color:#82dbe6; font-size:1.1rem; font-style:normal; }
.sm-showcase__canvas { position:relative; padding-bottom:310px; transition:opacity .18s,transform .6s var(--sm-ease); }
.sm-showcase__canvas.is-changing { opacity:.18; transform:translateY(7px) scale(.99); }
.sm-demo-browser { overflow:hidden; border:1px solid #8998af; border-radius:16px; background:#e9edf1; box-shadow:0 25px 75px #0005; }
.sm-demo-browser__chrome { display:flex; align-items:center; gap:18px; min-height:43px; padding:8px 19px; color:#6e7988; background:#e9edf1; font:500 .61rem var(--sm-mono); }
.sm-demo-browser__chrome > span:nth-child(2) { max-width:63%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sm-demo-browser__chrome small { margin-left:auto; font-size:.53rem; color:#59687b; }
.sm-demo-site { padding:0 44px; color:var(--demo-ink); background:var(--demo-bg); transition:background .65s; }
.sm-demo-site__nav { display:flex; align-items:center; gap:25px; min-height:96px; border-bottom:1px solid #46513d22; }
.sm-demo-site__nav > b { margin-right:auto; font:500 1.8rem/.9 var(--sm-serif); letter-spacing:-.06em; }
.sm-demo-site__nav > b span { display:block; margin-top:10px; font:500 .45rem/1.3 var(--sm-mono); letter-spacing:.15em; }
.sm-demo-site__nav > span { font-size:.61rem; opacity:.7; }
.sm-demo-site__nav a { display:inline-flex; align-items:center; gap:15px; padding:10px 15px; border:1px solid #4c5e4540; border-radius:4px; font-size:.65rem; font-weight:700; text-decoration:none; }
.sm-demo-site__nav a i { font-style:normal; }
.sm-demo-site__hero { display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:28px; min-height:435px; }
.sm-demo-site__copy { padding:34px 0; }
.sm-demo-site__copy > span { display:block; color:var(--demo-accent); font:600 .6rem/1.6 var(--sm-mono); letter-spacing:.1em; }
.sm-demo-site__copy h3 { margin-top:20px; font:500 clamp(2.2rem,3.5vw,3.5rem)/1 var(--sm-serif); letter-spacing:-.043em; white-space:pre-line; }
.sm-demo-site__copy p { max-width:420px; min-height:86px; margin-top:20px; opacity:.79; font-size:.87rem; line-height:1.7; }
.sm-demo-site__copy > a { display:inline-flex; align-items:center; justify-content:space-between; gap:25px; margin-top:24px; padding:13px 20px; color:white; background:var(--demo-accent); border-radius:4px; font-size:.78rem; font-weight:700; text-decoration:none; }
.sm-demo-site__copy > small { display:block; max-width:380px; margin-top:17px; color:var(--demo-accent); font-size:.6rem; }
.sm-demo-site__product { position:relative; align-self:stretch; min-height:400px; display:grid; align-items:center; }
.sm-demo-product { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:12px; background-image:url('/assets/img/centauri-productos-demo.webp'); background-size:200% 200%; background-position:0 0; }
[data-product="oil"] .sm-demo-product { background-position:100% 0; }
[data-product="cosmetics"] .sm-demo-product { background-position:0 100%; }
[data-product="pets"] .sm-demo-product { background-position:100% 100%; }
.sm-demo-site__product figcaption { position:absolute; left:0; bottom:29px; max-width:70%; padding:13px 17px; color:var(--demo-ink); border:1px solid #ffffffb3; border-radius:7px; background:#fffef3df; backdrop-filter:blur(12px); box-shadow:0 10px 25px #0000000a; }
.sm-demo-site__product figcaption span { display:block; color:var(--demo-accent); font:500 .5rem var(--sm-mono); }
.sm-demo-site__product figcaption b { display:block; margin-top:6px; font-size:.69rem; line-height:1.5; white-space:pre-line; }
.sm-demo-site__facts { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding:21px 0 27px; border-top:1px solid #52614722; }
.sm-demo-site__facts div span { display:block; color:var(--demo-accent); font:500 .52rem var(--sm-mono); }
.sm-demo-site__facts div b { display:block; margin-top:8px; font-size:.74rem; }
.sm-demo-inquiry { position:absolute; right:30px; bottom:0; width:47%; overflow:hidden; border:1px solid #b6c8e5; border-radius:15px; background:#fff; color:#162741; transform:rotate(-1.4deg); box-shadow:0 30px 65px #0005; }
.sm-demo-inquiry > header { display:flex; gap:12px; align-items:center; padding:18px 22px; border-bottom:1px solid #dde5ef; background:#f2f6ff; }
.sm-demo-inquiry__icon { display:grid; place-items:center; flex:0 0 35px; height:35px; border-radius:10px; color:#fff; background:#315cf6; font-size:1.25rem; }
.sm-demo-inquiry > header div span { display:block; color:#61758e; font:500 .48rem var(--sm-mono); }
.sm-demo-inquiry > header div b { display:block; margin-top:5px; font-size:.82rem; }
.sm-demo-inquiry > header > i { margin-left:auto; width:7px; height:7px; background:#57968b; border-radius:50%; }
.sm-demo-inquiry__body { padding:20px 23px; }
.sm-demo-inquiry__body > span { color:#77859b; font:500 .43rem var(--sm-mono); }
.sm-demo-inquiry__body h3 { margin-top:12px; font-size:.98rem; line-height:1.4; letter-spacing:-.025em; }
.sm-demo-inquiry__body p { min-height:80px; margin-top:10px; color:#596c86; font-size:.75rem; line-height:1.7; }
.sm-demo-inquiry__body > div { display:flex; flex-wrap:wrap; gap:6px; margin-top:14px; }
.sm-demo-inquiry__body > div span { padding:5px 7px; background:#edf3fc; color:#486486; border-radius:4px; font:500 .43rem var(--sm-mono); }
.sm-demo-inquiry > footer { padding:12px 23px; background:#f8fafc; color:#6a7c93; font-size:.61rem; border-top:1px solid #e5ebf2; }
.sm-demo-bridge { position:absolute; left:25px; bottom:50px; width:40%; padding-right:30px; }
.sm-demo-bridge > span { color:#7acddd; font:500 .57rem var(--sm-mono); letter-spacing:.08em; }
.sm-demo-bridge > p { margin-top:15px; font:500 clamp(1.8rem,2.5vw,2.6rem)/1.05 var(--sm-serif); letter-spacing:-.03em; }
.sm-demo-bridge > small { display:block; margin-top:14px; max-width:370px; color:#9eafca; font-size:.73rem; line-height:1.75; }
.sm-demo-bridge > i { position:absolute; right:0; top:42%; color:#7bcadb; font-size:2rem; font-style:normal; }
.sm-showcase__explanation { display:grid; grid-template-columns:1fr 1fr; gap:25px 55px; padding:38px 18px 25px; }
.sm-showcase__explanation > div > span { color:#82dce7; font:500 .61rem var(--sm-mono); letter-spacing:.1em; }
.sm-showcase__explanation h3 { margin-top:14px; font:500 clamp(1.8rem,2.6vw,2.6rem)/1.1 var(--sm-serif); letter-spacing:-.025em; }
.sm-showcase__explanation > p { color:#b1c1d8; font-size:.87rem; line-height:1.85; align-self:center; }
.sm-showcase__explanation > a { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; padding:17px 0 0; border-top:1px solid #26364e; color:#dce8ff; font-size:.8rem; font-weight:700; text-decoration:none; }
.sm-showcase__explanation > a span { color:#8acfe7; font-size:1.25rem; }
.sm-showcase > .sm-visual-note { margin:0 18px 6px; max-width:1050px; color:#8498b9; font-size:.64rem; }
.sm-showcase :is(button,a):focus-visible { outline:3px solid #8ddae8; outline-offset:4px; }
@media (min-width:1101px) { .sm-search { left:-42px; right:14px; } }
@media (max-width:1100px) {
  .sm-demo-site { padding:0 28px; }
  .sm-showcase__tabs button { gap:8px; padding:9px; }
  .sm-showcase__tabs button > i { display:none; }
  .sm-showcase__tabs button b { font-size:.72rem; }
  .sm-showcase__journey { gap:12px; }
  .sm-showcase__journey-end { display:none; }
  .sm-demo-site__nav > span { display:none; }
  .sm-demo-inquiry { width:52%; right:18px; }
}
@media (max-width:820px) {
  .sm-showcase { padding:15px; }
  .sm-showcase__top { flex-wrap:wrap; gap:10px; }
  .sm-showcase__top > span { width:100%; }
  .sm-showcase__top > b { margin-right:auto; }
  .sm-showcase__tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sm-showcase__tabs button b { font-size:.8rem; }
  .sm-demo-site__hero { gap:14px; }
  .sm-demo-site__copy h3 { font-size:2.3rem; }
  .sm-demo-site__copy p { font-size:.78rem; }
  .sm-demo-site__product { min-height:350px; }
  .sm-showcase__canvas { padding-bottom:0; }
  .sm-demo-bridge { position:relative; width:100%; left:auto; bottom:auto; padding:25px 15px 5px; }
  .sm-demo-bridge > i { display:none; }
  .sm-demo-inquiry { position:relative; width:calc(100% - 28px); right:auto; margin:20px auto 4px; transform:none; }
  .sm-demo-inquiry__body p { min-height:0; }
  .sm-showcase__explanation { grid-template-columns:1fr; padding:28px 10px 22px; gap:18px; }
  .sm-showcase > .sm-visual-note { margin-inline:10px; }
}
@media (max-width:560px) {
  .sm-showcase { margin-inline:-8px; padding:10px; border-radius:20px; }
  .sm-showcase__top { padding:8px 4px 15px; font-size:.53rem; }
  .sm-showcase__tabs { gap:6px; }
  .sm-showcase__tabs button { padding:7px; gap:8px; }
  .sm-showcase__tabs button b { font-size:.69rem; }
  .sm-showcase__tabs button small { font-size:.53rem; }
  .sm-demo-thumb { flex-basis:38px; width:38px; height:43px; }
  .sm-showcase__journey { display:block; padding:19px 2px; }
  .sm-showcase__journey > span { display:block; margin-bottom:10px; font-size:.58rem; }
  .sm-showcase__journey > .sm-showcase__journey-end { display:none; }
  .sm-showcase__journey p { gap:12px; padding:12px 14px; font-size:.72rem; line-height:1.55; }
  .sm-demo-browser { border-radius:9px; }
  .sm-demo-browser__chrome { gap:10px; padding:9px; min-height:36px; font-size:.43rem; }
  .sm-demo-browser__chrome small { display:none; }
  .sm-demo-browser__chrome > span:nth-child(2) { max-width:80%; }
  .sm-demo-site { padding:0 20px; }
  .sm-demo-site__nav { min-height:80px; gap:10px; }
  .sm-demo-site__nav > b { font-size:1.65rem; }
  .sm-demo-site__nav > b span { font-size:.38rem; letter-spacing:.07em; }
  .sm-demo-site__nav a { gap:8px; padding:8px; font-size:.57rem; }
  .sm-demo-site__hero { grid-template-columns:1fr; gap:0; }
  .sm-demo-site__copy { padding:28px 0 12px; }
  .sm-demo-site__copy > span { font-size:.49rem; }
  .sm-demo-site__copy h3 { margin-top:15px; font-size:2.35rem; }
  .sm-demo-site__copy p { min-height:0; margin-top:15px; font-size:.78rem; }
  .sm-demo-site__copy > a { margin-top:18px; padding:12px 15px; font-size:.72rem; }
  .sm-demo-site__copy > small { font-size:.52rem; margin-top:13px; }
  .sm-demo-site__product { min-height:0; margin:8px -4px 18px; }
  .sm-demo-product { max-height:340px; }
  .sm-demo-site__product figcaption { bottom:12px; left:8px; max-width:75%; padding:10px 12px; }
  .sm-demo-site__product figcaption b { font-size:.62rem; }
  .sm-demo-site__facts { gap:8px; padding:18px 0 21px; }
  .sm-demo-site__facts div span { font-size:.42rem; }
  .sm-demo-site__facts div b { font-size:.62rem; line-height:1.45; }
  .sm-demo-inquiry { width:100%; margin-top:13px; border-radius:10px; }
  .sm-demo-inquiry > header { padding:15px; }
  .sm-demo-inquiry__body { padding:16px; }
  .sm-demo-inquiry > footer { padding:12px 16px; }
  .sm-showcase__explanation { padding-inline:6px; }
  .sm-showcase__explanation h3 { font-size:2rem; }
  .sm-showcase__explanation > p { font-size:.81rem; }
  .sm-showcase > .sm-visual-note { margin-inline:6px; font-size:.57rem; }
  .sm-search__bar p { font-size:.73rem; }
  .sm-search__results article b { font-size:.88rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .sm-pending { opacity: 1 !important; transform: none !important; }
}
