
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/poppins-v24-latin-300.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/poppins-v24-latin-400.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/poppins-v24-latin-500.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/poppins-v24-latin-600.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  --atp-black: #000000;
  --atp-red: #e13a44;
  --atp-gray: #666158;
  --atp-taupe: #b5b0a5;
  --atp-white: #ffffff;
  --red-50:  #fcebec;
  --red-100: #f9d4d7;
  --red-200: #f2a8ad;
  --red-300: #ec7d84;
  --red-400: #e85861;
  --red-500: #e13a44;
  --red-600: #c92d37;
  --red-700: #a8232c;
  --red-800: #7d1a21;
  --red-900: #551115;
  --neutral-0:   #ffffff;
  --neutral-50:  #f7f6f4;
  --neutral-100: #efede9;
  --neutral-200: #e3e0da;
  --neutral-300: #cfcac0;
  --neutral-400: #b5b0a5;
  --neutral-500: #938d82;
  --neutral-600: #666158;
  --neutral-700: #4a463f;
  --neutral-800: #2c2a25;
  --neutral-900: #000000;
  --color-bg: var(--neutral-0);
  --color-bg-warm: var(--neutral-50);
  --surface-card: var(--neutral-0);
  --surface-muted: var(--neutral-50);
  --surface-sunken: var(--neutral-100);
  --surface-inverse: var(--neutral-900);
  --text-primary: var(--neutral-900);
  --text-secondary: var(--neutral-600);
  --text-muted: var(--neutral-600);
  --text-inverse: var(--neutral-0);
  --text-on-brand: var(--neutral-0);
  --text-brand: var(--red-500);
  --color-brand: var(--red-500);
  --color-brand-hover: var(--red-600);
  --color-brand-active: var(--red-700);
  --color-brand-subtle: var(--red-50);
  --color-brand-text: var(--red-600);
  --border-subtle: var(--neutral-200);
  --border-default: var(--neutral-300);
  --border-strong: var(--neutral-600);
  --border-brand: var(--red-500);
  --focus-ring: var(--red-500);
  --focus-ring-shadow: 0 0 0 3px rgba(225, 58, 68, 0.32);
  --color-success: #2f7d54;
  --color-danger: var(--red-600);
  --color-info: var(--neutral-600);
  --text-on-deep: rgba(255, 255, 255, 0.92);
  --glass-bg: rgba(255, 255, 255, 0.72);
  --glass-bg-strong: rgba(255, 255, 255, 0.88);
  --glass-border: rgba(255, 255, 255, 0.55);
  --glass-blur: 20px;
  --glass-saturate: 165%;
  --glass-filter: blur(var(--glass-blur)) saturate(var(--glass-saturate));
  --glass-sheen: linear-gradient(148deg, rgba(255,255,255,0.60) 0%, rgba(255,255,255,0.14) 34%, rgba(255,255,255,0) 64%);
  --glass-sheen-soft: linear-gradient(160deg, rgba(255,255,255,0.40) 0%, rgba(255,255,255,0.07) 46%, rgba(255,255,255,0) 80%);
  --glass-rim: inset 0 1px 0 rgba(255,255,255,0.70), inset 0 -1px 0 rgba(44,42,37,0.06),
               0 12px 32px -12px rgba(44,42,37,0.22), 0 2px 6px -2px rgba(44,42,37,0.10);
  --glass-rim-raised: inset 0 1px 0 rgba(255,255,255,0.85), inset 0 -1px 0 rgba(44,42,37,0.08),
                      0 24px 56px -18px rgba(44,42,37,0.30), 0 4px 12px -4px rgba(44,42,37,0.12);
  --glass-rim-list: inset 0 1px 0 rgba(255,255,255,0.70), inset 0 -1px 0 rgba(44,42,37,0.08),
                    0 4px 14px -8px rgba(44,42,37,0.18), 0 1px 3px -1px rgba(44,42,37,0.08);
  --glass-bg-on-brand: rgba(255,255,255,0.15);
  --glass-bg-on-brand-strong: rgba(255,255,255,0.22);
  --glass-border-on-brand: rgba(255,255,255,0.34);
  --glass-sheen-on-brand: linear-gradient(148deg, rgba(255,255,255,0.26) 0%, rgba(255,255,255,0.06) 40%, rgba(255,255,255,0) 70%);
  --glass-rim-on-brand: inset 0 1px 0 rgba(255,255,255,0.40), inset 0 -1px 0 rgba(0,0,0,0.10),
                        0 16px 38px -16px rgba(85,17,21,0.48);
  --glass-veil-dark: rgba(28,25,22,0.16);
  --glass-veil-dark-hover: rgba(28,25,22,0.28);
  --glass-veil-dark-solid: rgba(28,25,22,0.34);
  --card-tint: rgba(255, 255, 255, 0.64);
  --card-tint-hover: rgba(255, 255, 255, 0.82);
  --card-border: rgba(255, 255, 255, 0.72);
  --card-border-hover: rgba(255, 255, 255, 0.90);
  --caution-50:  #fdf6e8;
  --caution-100: #f6e6bd;
  --caution-400: #d8a93a;
  --caution-700: #7a5710;
  --caution-800: #6b5320;
  --ambient-warm:
    radial-gradient(58% 60% at 12% 6%, rgba(225,58,68,0.060), transparent 68%),
    radial-gradient(52% 56% at 94% 32%, rgba(181,176,165,0.20), transparent 70%),
    radial-gradient(66% 62% at 42% 104%, rgba(225,58,68,0.045), transparent 70%);
  --hero-grad-1: #fcebec;
  --hero-grad-2: #f7f6f4;
  --hero-grad-3: #f9d4d7;
  --hero-grad-4: #efede9;
}
:root {
  --font-sans: "Poppins", "Helvetica Neue", Arial, system-ui, sans-serif;
  --font-heading: var(--font-sans);
  --font-body: var(--font-sans);
  --font-serif: var(--font-sans);
  --font-editorial: var(--font-sans);
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --text-2xs: 0.6875rem;
  --text-xs:  0.75rem;
  --text-sm:  0.875rem;
  --text-base:1rem;
  --text-lg:  1.125rem;
  --text-xl:  1.375rem;
  --text-2xl: 1.75rem;
  --text-3xl: 2.25rem;
  --text-4xl: 3rem;
  --text-5xl: 4rem;
  --text-6xl: 5rem;
  --text-7xl: 6rem;
  --text-8xl: 7.5rem;
  --leading-none: 1;
  --leading-tight: 1.1;
  --leading-snug: 1.25;
  --leading-normal: 1.5;
  --leading-relaxed: 1.7;
  --tracking-tight: -0.02em;
  --tracking-normal: 0;
  --tracking-wide: 0.08em;
  --tracking-wider: 0.16em;
  --font-display: var(--weight-semibold) var(--text-6xl)/var(--leading-tight) var(--font-heading);
  --font-h1: var(--weight-semibold) var(--text-4xl)/var(--leading-tight) var(--font-heading);
  --font-h2: var(--weight-semibold) var(--text-3xl)/var(--leading-snug) var(--font-heading);
  --font-h3: var(--weight-semibold) var(--text-2xl)/var(--leading-snug) var(--font-heading);
  --font-h4: var(--weight-semibold) var(--text-xl)/var(--leading-snug) var(--font-heading);
  --font-body-lg: var(--weight-light) var(--text-lg)/var(--leading-relaxed) var(--font-body);
  --font-body-base: var(--weight-light) var(--text-base)/var(--leading-normal) var(--font-body);
  --font-ui: var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-body);
  --font-eyebrow: var(--weight-semibold) var(--text-xs)/var(--leading-normal) var(--font-heading);
  --font-hero:          var(--weight-light) var(--text-7xl)/0.96 var(--font-sans);
  --font-display-serif: var(--weight-light) var(--text-6xl)/1.00 var(--font-sans);
  --font-headline:      var(--weight-light) var(--text-5xl)/1.05 var(--font-sans);
  --font-headline-sm:   var(--weight-regular) var(--text-4xl)/1.12 var(--font-sans);
  --font-quote:         var(--weight-light) var(--text-3xl)/1.34 var(--font-sans);
}
:root {
  --space-0: 0;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  --space-10: 8rem;
  --radius-xs: 3px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-pill: 999px;
  --radius-circle: 50%;
  --radius-2xl: 28px;
  --radius-3xl: 40px;
  --border-width: 1px;
  --border-width-thick: 2px;
  --shadow-xs: 0 1px 2px rgba(44, 42, 37, 0.06);
  --shadow-sm: 0 1px 3px rgba(44, 42, 37, 0.08), 0 1px 2px rgba(44, 42, 37, 0.06);
  --shadow-md: 0 4px 16px rgba(44, 42, 37, 0.08), 0 2px 6px rgba(44, 42, 37, 0.05);
  --shadow-lg: 0 14px 36px rgba(44, 42, 37, 0.12), 0 4px 12px rgba(44, 42, 37, 0.06);
  --shadow-xl: 0 28px 60px rgba(44, 42, 37, 0.16);
  --shadow-brand: 0 10px 28px rgba(225, 58, 68, 0.28);
  --shadow-float: 0 8px 30px rgba(44, 42, 37, 0.12), 0 2px 8px rgba(44, 42, 37, 0.07);
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --duration-fast: 120ms;
  --duration-base: 200ms;
  --duration-slow: 320ms;
  --container-xs: 560px;
  --container-sm: 640px;
  --container-md: 880px;
  --container-lg: 1120px;
  --container-xl: 1280px;
  --page-gutter: var(--space-5);
  --nav-offset: calc(18px + 54px + var(--space-5));
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  -webkit-text-size-adjust: 100%;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
#que-hacemos, #por-que, #servicios, #herramientas, #generador, #industrias,
#clientes, #talleres, #contacto,
#ia-aplicada, #lidera, #gestion-del-cambio, #seguridad {
  scroll-margin-top: var(--nav-offset);
}
body {
  margin: 0;
  font: var(--font-body-base);
  color: var(--text-primary);
  background: var(--color-bg);
}
h1, h2, h3, h4, h5, h6 {
  margin: 0 0 var(--space-4);
  font-family: var(--font-heading);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--text-primary);
  text-wrap: balance;
}
h1 { font-size: var(--text-4xl); }
h2 { font-size: var(--text-3xl); }
h3 { font-size: var(--text-2xl); }
h4 { font-size: var(--text-xl); }
p {
  margin: 0 0 var(--space-4);
  text-wrap: pretty;
}
a {
  color: var(--color-brand-text);
  text-decoration: none;
}
a:hover { color: var(--color-brand-active); }
strong, b { font-weight: var(--weight-semibold); }
small { font-size: var(--text-sm); }
hr {
  border: 0;
  border-top: var(--border-width) solid var(--border-subtle);
  margin: var(--space-6) 0;
}
img { max-width: 100%; display: block; }
::selection {
  background: var(--color-brand-text);
  color: var(--neutral-0);
}
:focus-visible {
  outline: 2px solid var(--focus-ring);
  outline-offset: 2px;
}
.atp-eyebrow {
  font: var(--font-eyebrow);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  color: var(--color-brand-text);
}
.atp-hero-title {
  font: var(--font-hero);
  letter-spacing: -0.02em;
  text-wrap: balance;
  margin: 0;
}
.atp-display {
  font: var(--font-display-serif);
  letter-spacing: -0.015em;
  text-wrap: balance;
  margin: 0;
}
.atp-headline {
  font: var(--font-headline);
  letter-spacing: -0.01em;
  text-wrap: balance;
  overflow-wrap: break-word;
  margin: 0;
}
.atp-headline--sm { font: var(--font-headline-sm); letter-spacing: -0.01em; }
.m-cta__title { font-size: clamp(4rem, 1.11vw + 3.61rem, 4.5rem); color: #fff; margin: 0; }
.atp-quote {
  font: var(--font-quote);
  letter-spacing: -0.005em;
  text-wrap: pretty;
}
.atp-serif { font-family: var(--font-serif); }
.atp-display em, .atp-headline em, .atp-hero-title em, .atp-quote em {
  font-style: normal;
  font-weight: var(--weight-regular);
}
body { background: var(--color-bg); }
.m-site { max-width: 100%; overflow-x: clip; }
.m-wrap { max-width: var(--container-xl); margin: 0 auto; padding-left: var(--space-6); padding-right: var(--space-6); }
:root {
  --rhythm-section:    clamp(4rem,   2.435rem + 6.957vw, 8rem);
  --rhythm-band:       clamp(3rem,   1.826rem + 5.217vw, 6rem);
  --rhythm-block:      clamp(2rem,   1.217rem + 3.478vw, 4rem);
  --rhythm-element:    clamp(1.5rem, 1.304rem + 0.870vw, 2rem);
  --rhythm-band-inset: var(--rhythm-section);
  --rhythm: var(--rhythm-section);
}
.m-section { margin-top: var(--rhythm-section); margin-bottom: 0; }
.m-site .m-section { margin-top: var(--rhythm-section); margin-bottom: 0; }
.m-arrow { display: inline-block; transition: transform var(--duration-base) var(--ease-standard); }
.m-nav { position: fixed; inset: 18px 0 auto 0; z-index: 60; display: flex; justify-content: center; gap: var(--space-4); padding: 0 22px; pointer-events: none; }
.m-nav__pill { position: relative; isolation: isolate; pointer-events: auto; display: flex; align-items: center; gap: var(--space-2); background: var(--glass-bg-strong); border: 1px solid var(--glass-border); border-radius: var(--radius-pill); padding: 8px 10px 8px 16px; box-shadow: var(--shadow-float); }
.m-nav__pill::before { content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; pointer-events: none; -webkit-backdrop-filter: blur(var(--glass-blur)); backdrop-filter: blur(var(--glass-blur)); }
.m-nav__logo { display: inline-flex; align-items: center; min-height: 24px; }
.m-nav__logo img { height: 26px; width: auto; display: block; }
.m-nav__links { display: flex; align-items: center; gap: 2px; margin: 0 var(--space-3); }
.m-nav__link { font: var(--font-ui); color: var(--text-secondary); padding: 8px 14px; border-radius: var(--radius-pill, 999px); white-space: nowrap; transition: background var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard); }
.m-nav__link:hover { background: var(--color-brand-text); color: #fff; }
.m-nav__cta { font: var(--font-ui); font-weight: var(--weight-semibold); color: #fff; background: var(--color-brand-text); padding: 9px 18px; border-radius: var(--radius-pill, 999px); margin-left: var(--space-2); white-space: nowrap; transition: background var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard); }
.m-nav__cta:hover { background: var(--color-brand-active); color: #fff; transform: translateY(-1px); }
.m-nav__icon { width: 38px; height: 38px; flex: none; display: grid; place-items: center; border-radius: var(--radius-circle); color: var(--text-primary); background: transparent; border: 0; cursor: pointer; }
.m-nav__icon:hover { background: var(--surface-sunken); }
.m-nav__icon svg { width: 18px; height: 18px; }
.m-hero { position: relative; min-height: clamp(560px, 62vw, 780px); display: flex; align-items: flex-end; overflow: hidden; background: var(--hero-grad-2); }
.m-hero__blobs { position: absolute; inset: 0; filter: blur(8px); }
.m-blob { position: absolute; border-radius: var(--radius-circle); mix-blend-mode: multiply; opacity: 1; will-change: transform; }
.m-blob--1 { width: 60vw; height: 60vw; left: -8vw; top: -14vw; background: radial-gradient(circle at 30% 30%, var(--hero-grad-3), transparent 62%); animation: blobA 14s var(--ease-standard) infinite alternate; }
.m-blob--2 { width: 52vw; height: 52vw; right: -10vw; top: -6vw; background: radial-gradient(circle at 50% 50%, var(--hero-grad-1), transparent 60%); animation: blobB 18s var(--ease-standard) infinite alternate; }
.m-blob--3 { width: 48vw; height: 48vw; left: 28vw; bottom: -22vw; background: radial-gradient(circle at 50% 50%, var(--hero-grad-4), transparent 64%); animation: blobC 20s var(--ease-standard) infinite alternate; }
.m-blob--4 { width: 30vw; height: 30vw; right: 18vw; bottom: -8vw; background: radial-gradient(circle at 50% 50%, rgba(225,58,68,0.10), transparent 62%); animation: blobA 13s var(--ease-standard) infinite alternate-reverse; }
.m-hero__grain { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(255,255,255,0.55) 100%); }
body.is-paused .m-blob { animation-play-state: paused; }
@keyframes blobA { from { transform: translate3d(0,0,0) scale(1); } to { transform: translate3d(9vw,6vw,0) scale(1.22); } }
@keyframes blobB { from { transform: translate3d(0,0,0) scale(1.08); } to { transform: translate3d(-8vw,9vw,0) scale(0.84); } }
@keyframes blobC { from { transform: translate3d(0,0,0) scale(0.92); } to { transform: translate3d(7vw,-8vw,0) scale(1.2); } }
@media (prefers-reduced-motion: reduce) { .m-blob { animation: none !important; } }
.m-hero__inner { position: relative; z-index: 2; width: 100%; max-width: var(--container-xl); margin: 0 auto; padding: var(--space-10) var(--space-6) var(--space-9); }
.m-hero__copy { max-width: 18ch; }
.m-hero__lead { font: var(--font-body-lg); color: var(--text-secondary); max-width: 62ch; margin: var(--space-5) 0 var(--space-6); }
.m-hero__title { margin: var(--space-4) 0 0; color: var(--text-primary); font-size: clamp(3.25rem, 7.4vw, 7rem); line-height: 0.98; }
.m-hero__actions { display: flex; gap: var(--space-3); align-items: center; flex-wrap: wrap; }
.m-hero__pause { position: absolute; right: var(--space-6); bottom: var(--space-7); z-index: 3; width: 44px; height: 44px; border-radius: var(--radius-circle); border: 1px solid var(--border-default); background: var(--glass-bg-strong); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); color: var(--text-primary); cursor: pointer; display: grid; place-items: center; }
.m-hero__pause svg { width: 16px; height: 16px; }
.m-intro__lead { font: var(--font-body-lg); color: var(--text-secondary); max-width: 42ch; }
.m-head { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--space-6); margin-bottom: var(--rhythm-block); }
.m-head > * { min-width: 0; }
.m-head__title { margin: 0; }
.m-section__foot { margin-top: var(--rhythm-block); text-align: center; }
.m-head__link { font: var(--font-ui); font-weight: var(--weight-semibold); color: var(--color-brand-text); white-space: nowrap; }
.m-head__link:hover .m-arrow { transform: translateX(4px); }
.m-impact__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: var(--space-5); margin-bottom: var(--rhythm-band); }
.m-story {
  position: relative; border-radius: var(--radius-2xl); overflow: hidden; min-height: 420px;
  display: flex; flex-direction: column; padding: var(--space-6); color: #fff; isolation: isolate;
  background: linear-gradient(120deg, var(--red-600) 0%, var(--red-700) 30%, var(--red-800) 55%, var(--red-600) 80%, var(--red-600) 100%);
  transition: transform var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard);
}
.m-story::after {
  content: ""; position: absolute; inset: 0; z-index: -1; opacity: 0.55; pointer-events: none;
  background-image: repeating-linear-gradient(115deg, transparent 0 44px, rgba(255,255,255,0.10) 44px 45px);
  -webkit-mask-image: radial-gradient(120% 100% at 100% 0%, #000 26%, transparent 72%);
  mask-image: radial-gradient(120% 100% at 100% 0%, #000 26%, transparent 72%);
}
.m-story:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }
body.is-paused .m-story { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .m-story { animation: none !important; } }
.m-story__badge { position: relative; flex: none; align-self: flex-start; margin-bottom: var(--space-5); background: var(--glass-bg-strong); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); color: var(--text-primary); border-radius: var(--radius-lg); padding: 10px 14px; display: flex; flex-direction: column; line-height: 1.1; box-shadow: var(--shadow-float); }
.m-story__badge b { font-family: var(--font-serif); font-weight: var(--weight-regular); font-size: var(--text-2xl); }
.m-story__badge span { font: var(--font-eyebrow); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--text-muted); }
.m-story:not(.m-story__small) .m-story__label { margin-top: auto; }
.m-story__label { font: var(--font-eyebrow); text-transform: uppercase; letter-spacing: var(--tracking-wider); color: rgba(255,255,255,0.86); }
.m-story .m-story__title { color: #fff; margin: var(--space-3) 0 var(--space-2); }
.m-story__text { color: rgba(255,255,255,0.85); font: var(--font-body-base); max-width: 42ch; margin: 0; }
.m-story__small { min-height: 220px; }
.m-impact__col { display: flex; flex-direction: column; gap: var(--space-5); }
.m-story__small .m-story__title { font: var(--font-headline-sm); letter-spacing: -0.01em; }
.m-feature { background: var(--red-50); }
.m-feature__grid { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--space-8); row-gap: var(--rhythm-block); align-items: center; }
.m-feature__copy { display: flex; flex-direction: column; gap: var(--rhythm-element); align-items: flex-start; }
.m-feature__copy h3, .m-feature__copy .m-intro__lead { max-width: 44ch; }
.m-feature__mock { background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-2xl); box-shadow: var(--shadow-lg); overflow: hidden; }
.m-mock__bar { display: flex; align-items: center; gap: 7px; padding: 14px 16px; border-bottom: 1px solid var(--border-subtle); }
.m-mock__dot { width: 11px; height: 11px; border-radius: var(--radius-circle); background: var(--neutral-300); }
.m-mock__body { padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-4); }
.m-mock__row { display: flex; flex-direction: column; gap: 8px; }
.m-mock__chiprow { display: flex; gap: 8px; flex-wrap: wrap; }
.m-chip { font: var(--font-ui); font-weight: var(--weight-semibold); color: var(--text-secondary); background: var(--surface-muted); border: 1px solid var(--border-subtle); border-radius: var(--radius-pill); padding: 6px 12px; }
.m-chip--on { color: #fff; background: var(--color-brand-text); border-color: var(--color-brand-text); }
.m-mock__field { border: 1px solid var(--border-default); border-radius: var(--radius-md); padding: 14px 16px; font: var(--font-body-base); color: var(--text-secondary); background: var(--surface-muted); }
.m-mock__out { border: 1px dashed var(--border-default); border-radius: var(--radius-md); padding: 16px; font: var(--font-body-base); color: var(--text-primary); line-height: 1.5; }
.m-mock__out b { color: var(--color-brand-text); font-weight: var(--weight-semibold); }
.m-prog__tag { font: var(--font-eyebrow); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--color-brand-text); }
.m-approach__intro { font: var(--font-body-lg); color: var(--text-secondary); max-width: 40ch; margin: var(--rhythm-element) 0 0; }
.m-approach__intro--wide { max-width: 60ch; }
.m-approach__intro--xwide { max-width: 66ch; }
.m-approach__intro--full { max-width: none; text-wrap: balance; }
.m-head > *:has(> .m-approach__intro--full) { flex-grow: 1; }
.m-measure__grid + .m-approach__intro { margin-top: var(--rhythm-block); }
.m-approach__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-7); margin-top: var(--space-8); }
.m-appcard { position: relative; display: flex; flex-direction: column; gap: var(--space-3); }
.m-appcard::before { content: ""; display: block; width: 32px; height: 2px; background: var(--color-brand); }
.m-appcard + .m-appcard { border-left: 1px solid var(--border-subtle); padding-left: var(--space-6); }
.m-appcard__t { font: var(--font-h3); letter-spacing: -0.01em; margin: 0; color: var(--text-primary); }
.m-appcard__x { font: var(--font-body-base); color: var(--text-secondary); margin: 0; }
.m-stats { background: var(--color-brand); color: #fff; }
.m-stats__layout { display: grid; grid-template-columns: 1.15fr 1fr; column-gap: var(--space-8); row-gap: var(--rhythm-block); align-items: center; padding-block: var(--space-9); }
.m-stats__hero { display: flex; flex-direction: column; gap: var(--space-2); }
.m-stats__hero-num { font-family: var(--font-serif); font-weight: var(--weight-light); font-size: clamp(4rem, 7vw, 6rem); color: #fff; line-height: 0.95; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.m-stats__hero-lbl { font: var(--font-body-lg); color: rgba(255,255,255,0.94); }
.m-stats__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-4); border-left: 1px solid rgba(255,255,255,0.24); padding-left: var(--space-7); }
.m-stats__list li { display: flex; align-items: baseline; gap: var(--space-3); }
.m-stats__list-num { font: var(--font-h4); color: #fff; min-width: 3ch; }
.m-stats__list-lbl { font: var(--font-body-base); color: rgba(255,255,255,0.94); }
.m-why { background: var(--surface-muted); }
.m-why__grid { display: grid; grid-template-columns: 0.95fr 1.05fr; gap: var(--space-8); align-items: start; }
.m-why__title { margin: 0; }
.m-why__lead { font: var(--font-body-lg); color: var(--text-secondary); margin: 0; }
.m-why__lead strong { color: var(--text-primary); font-weight: var(--weight-semibold); }
.m-ind__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-4); }
.m-ind { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-5); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); background: var(--surface-card); transition: border-color var(--duration-base) var(--ease-standard), background var(--duration-base) var(--ease-standard), transform var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard); }
.m-ind:hover { border-color: var(--color-brand); background: var(--color-brand-subtle); transform: translateY(-3px) scale(1.02); box-shadow: var(--shadow-md); }
.m-ind__mark { width: 26px; height: 26px; flex: none; color: var(--color-brand); }
.m-ind__name { font-family: var(--font-heading); font-weight: var(--weight-semibold); font-size: var(--text-lg); color: var(--text-primary); }
.m-clients__grid { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--space-8); row-gap: var(--rhythm-block); align-items: center; }
#clientes { content-visibility: auto; contain-intrinsic-size: auto 600px; }
.m-logostrip { display: flex; flex-direction: column; gap: 28px; overflow: hidden; cursor: pointer; }
@keyframes atpLogoScrollH { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
.m-logostrip__track { display: flex; flex-direction: row; gap: 56px; width: max-content; animation: atpLogoScrollH linear infinite; will-change: transform; }
@media (prefers-reduced-motion: reduce) { .m-logostrip__track { animation: none; } }
.m-logostrip__item { display: flex; align-items: center; justify-content: center; height: 138px; flex-shrink: 0; padding: 0; }
.m-logostrip__item img { max-height: 128px; max-width: 300px; width: auto; height: auto; object-fit: contain; pointer-events: none; display: block; }
.m-contact__grid { display: grid; grid-template-columns: 0.9fr 1.1fr; column-gap: var(--space-9); row-gap: var(--rhythm-block); align-items: start; }
.m-contact__info { display: flex; flex-direction: column; gap: var(--rhythm-block); }
.m-form { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4) var(--space-5); }
.m-form__full { grid-column: 1 / -1; }
.m-info { display: flex; flex-direction: column; gap: var(--rhythm-element); }
.m-info__block .m-info__label { font: var(--font-eyebrow); text-transform: uppercase; letter-spacing: var(--tracking-wider); color: var(--color-brand-text); margin: 0 0 var(--space-3); }
.m-info__block p, .m-info__block a { font: var(--font-body-lg); color: var(--text-secondary); margin: 0; display: block; }
.m-info__block a:hover { color: var(--color-brand-text); }
@media (max-width: 980px) {
  .m-impact__grid, .m-feature__grid,
  .m-why__grid, .m-clients__grid, .m-contact__grid { grid-template-columns: minmax(0, 1fr); }
  .m-approach__grid { grid-template-columns: minmax(0, 1fr); }
  .m-appcard + .m-appcard { border-left: 0; border-top: 1px solid var(--border-subtle); padding-left: 0; padding-top: var(--space-6); }
  .m-stats__layout { grid-template-columns: minmax(0, 1fr); gap: var(--rhythm-block); }
  .m-stats__list { border-left: 0; padding-left: 0; border-top: 1px solid rgba(255,255,255,0.24); padding-top: var(--space-5); }
  .m-ind__grid { grid-template-columns: repeat(2, 1fr); }
  .m-logostrip { gap: 12px; }
  .m-form { grid-template-columns: minmax(0, 1fr); }
  .m-nav__links { display: none; }
  .m-head { flex-direction: column; align-items: flex-start; }
  .m-head > * { width: 100%; }
}
.m-hero__title em { color: var(--color-brand); font-style: normal; }
.m-serv__stack { display: flex; flex-direction: column; gap: var(--space-5); margin-top: var(--space-2); }
.m-panel2 {
  position: relative; overflow: hidden; border: 0; border-radius: var(--radius-2xl);
  padding: var(--space-7) var(--space-8); display: grid; grid-template-columns: 1.05fr 0.95fr;
  gap: var(--space-8); align-items: center; color: var(--text-on-deep);
  background: linear-gradient(120deg, var(--red-600) 0%, var(--red-700) 30%, var(--red-800) 55%, var(--red-600) 80%, var(--red-600) 100%);
  transition: transform var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard);
}
.m-panel2:hover { transform: translateY(-4px) scale(1.012); box-shadow: var(--shadow-lg); }
.m-panel2__lines { position: absolute; inset: 0; z-index: 0; opacity: 0.5; pointer-events: none; background-image: repeating-linear-gradient(115deg, transparent 0 44px, rgba(255,255,255,0.12) 44px 45px); -webkit-mask-image: radial-gradient(120% 100% at 100% 0%, #000 24%, transparent 68%); mask-image: radial-gradient(120% 100% at 100% 0%, #000 24%, transparent 68%); }
.m-panel2__body { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 0; align-items: flex-start; }
.m-panel2__icon { width: 56px; height: 56px; border-radius: var(--radius-lg); background: rgba(255,255,255,0.16); display: grid; place-items: center; margin-bottom: var(--space-5); }
.m-panel2__icon img { width: 30px; height: 30px; object-fit: contain; }
.m-panel2__icon svg { width: 30px; height: 30px; color: #fff; }
.m-panel2__t { font: var(--font-headline-sm); letter-spacing: -0.01em; margin: 0 0 var(--space-2); color: #fff; font-weight: var(--weight-medium); }
.m-panel2__x { font: var(--font-body-base); color: rgba(255,255,255,0.92); margin: 0; }
.m-panel2__list { position: relative; z-index: 2; margin: var(--space-5) 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: var(--space-3); }
.m-panel2__list li { position: relative; padding-left: 22px; font: var(--font-body-base); color: rgba(255,255,255,0.92); }
.m-panel2__list li::before { content: ""; position: absolute; left: 0; top: 9px; width: 8px; height: 8px; border-radius: 50%; background: #fff; }
.m-panel2--star { grid-template-columns: 1.1fr 0.9fr; }
.m-panel2--star .m-panel2__t { font: var(--font-headline); letter-spacing: -0.01em; }
.m-panel2--star .m-panel2__x { font: var(--font-body-lg); }
@media (min-width: 981px) {
  .m-panel2__list { border-left: 1px solid var(--glass-border-on-brand); padding-left: var(--space-8); }
}
@media (max-width: 980px) {
  .m-panel2, .m-panel2--star { grid-template-columns: minmax(0, 1fr); }
  .m-panel2__list { border-top: 1px solid var(--glass-border-on-brand); padding-top: var(--space-5); margin-top: 0; }
}
.m-panel2 { padding: var(--space-9) var(--space-8); column-gap: var(--space-9); row-gap: var(--rhythm-element); box-shadow: inset 0 1px 0 rgba(255,255,255,0.16), 0 18px 44px -22px rgba(85,17,21,0.42); }
.m-panel2:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,0.22), 0 30px 66px -24px rgba(85,17,21,0.52); }
.m-panel2__icon { background: var(--glass-bg-on-brand-strong); -webkit-backdrop-filter: blur(10px) saturate(140%); backdrop-filter: blur(10px) saturate(140%); border: 1px solid var(--glass-border-on-brand); box-shadow: var(--glass-rim-on-brand); }
.m-nav__link--gen { display: none; }
@media (min-width: 981px) { .m-nav__gen { display: inline; } }
@media (max-width: 980px) {
  .m-nav { flex-wrap: wrap; }
  .m-nav__gen { display: none; }
  .m-nav--open .m-nav__links { display: flex; flex-direction: column; align-items: stretch; position: absolute; top: 70px; left: 22px; right: 22px; margin: 0; gap: 2px; pointer-events: auto; background: var(--glass-bg-strong); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); border: 1px solid var(--glass-border); border-radius: var(--radius-2xl); padding: var(--space-4); box-shadow: var(--glass-rim-raised); max-height: calc(100vh - 7rem); max-height: calc(100dvh - 7rem); overflow-y: auto; overscroll-behavior: contain; }
  .m-nav--open .m-nav__link { padding: 12px 16px; border-radius: var(--radius-pill); color: var(--text-primary); font-weight: var(--weight-semibold); }
  .m-nav--open .m-nav__link:hover, .m-nav--open .m-nav__link:focus-visible { background-color: rgba(255,255,255,0.62); background-image: var(--glass-sheen-soft); box-shadow: inset 0 1px 0 rgba(255,255,255,0.85); color: var(--color-brand-text); }
  .m-nav--open .m-nav__link--gen { display: block; }
}
.reveal { opacity: 0; transform: translateY(18px); transition: opacity 0.6s var(--ease-standard), transform 0.6s var(--ease-standard); }
.reveal.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .reveal { opacity: 1 !important; transform: none !important; } }
.m-form__submit { display: flex; align-items: center; gap: var(--space-4); flex-wrap: wrap; }
.m-form__err { font: var(--font-ui); color: var(--color-danger); }
.m-hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.m-form__legal { flex-basis: 100%; margin: 0; font-size: var(--text-sm); line-height: 1.5; color: var(--text-secondary); }
.m-form__legal a { color: inherit; text-decoration: underline; }
.m-form__done { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-8); background: rgba(252,235,236,0.72); border: 1px solid rgba(255,255,255,0.76); border-radius: var(--radius-2xl); box-shadow: var(--glass-rim-raised); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); }
.m-form__done-mark { width: 56px; height: 56px; border-radius: var(--radius-circle); background: var(--color-brand); color: #fff; display: grid; place-items: center; line-height: 1; background-image: linear-gradient(180deg, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0) 56%); box-shadow: inset 0 1px 0 rgba(255,255,255,0.28), 0 8px 20px -10px rgba(168,35,44,0.55); }
.m-form__done p { font: var(--font-body-lg); color: var(--text-secondary); margin: 0; }
.atp-headline--sm { font: var(--font-headline-sm); letter-spacing: -0.01em; margin: 0; color: var(--text-primary); }
.m-logostrip__track:hover, .m-logostrip.is-paused .m-logostrip__track { animation-play-state: paused; }
@keyframes gradFlow { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
body.is-paused .m-hero { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .m-hero { animation: none !important; } }
.m-site .m-ind { transition: transform var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard); }
.m-nav__icon { display: none; }
@media (max-width: 980px) { .m-nav__icon { display: grid; } }
.m-hero__title { color: #fff; }
.m-hero__title em { color: var(--red-100); font-weight: var(--weight-regular); }
.m-hero__lead { color: rgba(255,255,255,0.92); }
.m-hero__pause { background: var(--glass-veil-dark); border: 1px solid var(--glass-border-on-brand); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); box-shadow: var(--glass-rim-on-brand); color: #fff; transition: background var(--duration-base) var(--ease-standard), transform var(--duration-base) var(--ease-standard); }
.m-hero__pause:hover { background: var(--glass-veil-dark-hover); transform: scale(1.06); }
.m-hero__actions .atp-btn--outline { --_bg: var(--glass-veil-dark); --_fg: #fff; --_bd: var(--glass-border-on-brand); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); box-shadow: var(--glass-rim-on-brand); }
.m-hero__actions .atp-btn--outline:hover { --_bg: #fff; --_fg: var(--color-brand-text); --_bd: #fff; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: var(--shadow-float); }
.m-feature { background: linear-gradient(140deg, var(--red-600) 0%, var(--red-700) 58%, var(--red-800) 100%); }
.m-feature__copy h2 { color: #fff; }
.m-feature .m-intro__lead { color: rgba(255,255,255,0.92); }
.m-why { background: transparent; }
.m-cta { background: var(--color-brand); color: #fff; text-align: center; }
.m-hero { background: linear-gradient(120deg, var(--red-600) 0%, var(--red-700) 30%, var(--red-800) 55%, var(--red-600) 80%, var(--red-600) 100%); background-size: 320% 320%; animation: gradFlow 11s var(--ease-standard) infinite; }
.m-hero__grain { background: linear-gradient(180deg, transparent 72%, rgba(125,26,33,0.28) 100%); }
.m-hero .m-blob { mix-blend-mode: screen; opacity: 0.6; }
.m-hero .m-blob--1 { background: radial-gradient(circle at 30% 30%, rgba(225,58,68,0.9), transparent 62%); animation-duration: 9s; }
.m-hero .m-blob--2 { background: radial-gradient(circle at 50% 50%, rgba(233,90,98,0.75), transparent 60%); animation-duration: 11s; }
.m-hero .m-blob--3 { background: radial-gradient(circle at 50% 50%, rgba(225,58,68,0.7), transparent 64%); animation-duration: 12s; }
.m-hero .m-blob--4 { background: radial-gradient(circle at 50% 50%, rgba(233,90,98,0.55), transparent 62%); animation-duration: 8s; }
.m-ind__layout { display: grid; grid-template-columns: 0.85fr 1.15fr; column-gap: var(--space-8); row-gap: var(--rhythm-block); align-items: center; }
.m-ind__layout .m-ind__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.m-ind__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.m-ind__intro .m-approach__intro { max-width: 38ch; }
@media (max-width: 980px) {
  .m-ind__layout { grid-template-columns: minmax(0, 1fr); gap: var(--rhythm-block); }
  .m-ind__grid, .m-ind__layout .m-ind__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .m-ind__grid, .m-ind__layout .m-ind__grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 359px) { .m-ind__name { font-size: var(--text-base); letter-spacing: -0.01em; } }
.m-mock__caret { display: inline-block; margin-left: 1px; color: var(--color-brand-text); font-weight: var(--weight-regular); animation: mockCaret 0.7s steps(1) infinite; }
@keyframes mockCaret { 50% { opacity: 0; } }
.m-mock__field { height: 3.25em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: flex; align-items: center; }
.m-mock__out { height: 9.5em; overflow: hidden; }
.m-chip { transition: background var(--duration-base) var(--ease-standard), color var(--duration-base) var(--ease-standard), border-color var(--duration-base) var(--ease-standard); }
.m-feature__anchor { display: block; height: 0; scroll-margin-top: 96px; }
.m-feature--tools .m-feature__head { max-width: var(--container-md); margin-inline: auto; margin-bottom: var(--rhythm-band); text-align: center; display: flex; flex-direction: column; align-items: center; gap: var(--rhythm-element); }
.m-feature--tools .m-feature__head h2 { color: #fff; }
.m-feature--tools .m-feature__head .m-intro__lead { color: rgba(255,255,255,0.92); max-width: 54ch; }
.m-feature__copy h3 { color: #fff; margin: 0; }
.m-feature__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); align-items: center; width: 100%; max-width: 36rem; }
.m-feature__actions .atp-btn { width: 100%; }
.m-feature__actions .atp-btn--outline {
  position: relative;
  isolation: isolate;
  --_bg: transparent; --_fg: #fff; --_bd: var(--glass-border-on-brand);
  box-shadow: var(--glass-rim-on-brand);
}
.m-feature__actions .atp-btn--outline::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: var(--glass-veil-dark);
  -webkit-backdrop-filter: var(--glass-filter);
  backdrop-filter: var(--glass-filter);
}
.m-feature__actions .atp-btn--outline:hover { --_bg: transparent; --_fg: var(--color-brand-text); --_bd: #fff; box-shadow: var(--shadow-float); }
.m-feature__actions .atp-btn--outline:hover::before { background: #fff; -webkit-backdrop-filter: none; backdrop-filter: none; }
@media (max-width: 560px) {
  .m-feature__actions { grid-template-columns: minmax(0, 1fr); }
}
.m-feature__grid ~ .m-feature__grid { margin-top: var(--rhythm-block); padding-top: var(--rhythm-block); border-top: 1px solid rgba(255,255,255,0.16); }
@media (min-width: 981px) {
  .m-feature__grid--flip .m-feature__copy { order: 2; }
  .m-feature__grid--flip .m-feature__mock { order: 1; }
}
.m-mock__viz { display: flex; flex-direction: column; gap: 11px; height: 9.5em; justify-content: center; }
.m-vbar { display: grid; grid-template-columns: minmax(0, 7.5em) 1fr; align-items: center; gap: 12px; }
.m-vbar__label { font: var(--font-ui); color: var(--text-secondary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.m-vbar__track { height: 10px; border-radius: var(--radius-pill); background: rgba(44,42,37,0.10); overflow: hidden; }
.m-vbar__fill { display: block; height: 100%; border-radius: var(--radius-pill); background: var(--color-brand); }
.m-vbar--top .m-vbar__fill { background: var(--color-brand-text); }
.m-vbar--top .m-vbar__label { color: var(--text-primary); font-weight: var(--weight-semibold); }
#atp-p360-mock .m-mock__out { height: auto; min-height: 3.4em; }
.m-site .m-vbar__track { background: rgba(44,42,37,0.12); }
.m-points { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: var(--space-5) var(--space-6); margin-top: var(--space-7); }
.m-point { display: flex; flex-direction: column; gap: 6px; }
.m-highlight .m-point__t { font: var(--font-ui); font-weight: var(--weight-semibold); color: var(--text-primary); margin: 0; max-width: none; }
.m-highlight .m-point__x { font: var(--font-body-base); color: var(--text-secondary); margin: 0; max-width: 46ch; }
.m-govern { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--rhythm-block); }
@media (max-width: 640px) { .m-govern { grid-template-columns: minmax(0, 1fr); } }
.m-govern__col {
  padding: var(--space-6); border-radius: var(--radius-2xl);
  background-color: var(--card-tint); background-image: var(--glass-sheen);
  border: 1px solid var(--card-border); box-shadow: var(--glass-rim);
  transition: transform var(--duration-base) var(--ease-standard), background-color var(--duration-base) var(--ease-standard),
              border-color var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard);
}
.m-govern__col:hover {
  transform: translateY(-3px); background-color: var(--card-tint-hover);
  border-color: var(--card-border-hover); box-shadow: var(--glass-rim-raised);
}
@media (prefers-reduced-motion: reduce) { .m-govern__col:hover { transform: none; } }
.m-govern__t { font: var(--font-ui); font-weight: var(--weight-semibold); margin: 0 0 var(--space-4); display: flex; align-items: center; gap: 8px; }
.m-govern__col--yes .m-govern__t { color: var(--color-success); }
.m-govern__col--no .m-govern__t { color: var(--color-brand-text); }
.m-govern__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-3); }
.m-govern__list li { position: relative; padding-left: 26px; font: var(--font-body-base); color: var(--text-secondary); }
.m-govern__list li svg { position: absolute; left: 0; top: 3px; width: 16px; height: 16px; }
.m-govern__col--yes .m-govern__list li svg { color: var(--color-success); }
.m-govern__col--no .m-govern__list li svg { color: var(--color-brand-text); }
.m-govern__list li b { color: var(--text-primary); font-weight: var(--weight-semibold); }
.m-govern__note { font: var(--font-body-lg); color: var(--text-primary); margin: var(--rhythm-block) 0 0; max-width: 72ch; }
.m-govern__note b { color: var(--color-brand-text); }
.m-service-section__icon .m-stepnum { font-family: var(--font-heading); font-weight: var(--weight-semibold); font-size: var(--text-3xl); line-height: 1; }
.m-why__proof { display: flex; flex-direction: column; gap: var(--space-5); }
.m-talleres__layout { display: grid; grid-template-columns: 0.9fr minmax(0, 1.05fr); column-gap: clamp(var(--space-7), 5vw, var(--space-9)); row-gap: var(--rhythm-block); align-items: center; }
.m-talleres__copy { max-width: 38ch; }
.m-slider { position: relative; }
.m-slider__inner { position: relative; max-width: 100%; margin: 0 auto; transition: width 0.45s var(--ease-standard); }
.m-slider__frame { position: relative; width: 100%; border-radius: var(--radius-2xl); overflow: hidden; background: var(--surface-sunken); border: 1px solid var(--border-subtle); box-shadow: var(--shadow-lg); }
.m-slider__img { width: 100%; height: 100%; object-fit: cover; display: block; }
.m-slider__img--in { animation: atpSlideIn 0.5s var(--ease-standard); }
@keyframes atpSlideIn { from { opacity: 0; transform: scale(1.03); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .m-slider__img--in { animation: none; } }
.m-slider__nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 50px; height: 50px; display: grid; place-items: center; border: none; border-radius: var(--radius-pill); cursor: pointer; color: #fff; background: linear-gradient(135deg, var(--color-brand) 0%, #c8333d 55%, #a8232c 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,0.34), 0 12px 26px -12px rgba(168,35,44,0.70); transition: transform var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard); }
.m-slider__nav .m-arrow { display: block; color: #fff; }
.m-slider__nav:hover { transform: translateY(-50%) scale(1.08); box-shadow: 0 14px 30px -8px rgba(168,35,44,0.75); }
.m-slider__nav--prev { left: -58px; }
.m-slider__nav--prev .m-arrow { transform: rotate(180deg); }
.m-slider__nav--next { right: -58px; }
.m-slider__count { position: absolute; right: 14px; bottom: 14px; z-index: 2; padding: 5px 12px; border-radius: var(--radius-pill); background: var(--color-brand-text); border: 1px solid var(--glass-border-on-brand); box-shadow: inset 0 1px 0 rgba(255,255,255,0.28), 0 6px 18px -8px rgba(168,35,44,0.55); font-family: var(--font-sans); font-weight: var(--weight-semibold); font-size: var(--text-sm); letter-spacing: var(--tracking-wide); color: #fff; pointer-events: none; }
.m-slider__pause { position: absolute; left: 14px; bottom: 14px; right: auto; z-index: 3; width: 36px; height: 36px; }
.m-slider__pause svg { width: 14px; height: 14px; }
@media (max-width: 900px) {
  .m-talleres__layout { grid-template-columns: minmax(0, 1fr); gap: var(--rhythm-block); }
  .m-talleres__copy { max-width: none; }
}
@media (max-width: 640px) {
  .m-slider__inner { width: 100% !important; display: grid; grid-template-columns: auto auto; grid-template-areas: 'frame frame' 'prev next'; justify-content: center; align-items: center; gap: var(--space-4); }
  .m-slider__frame { grid-area: frame; }
  .m-slider__nav { position: static; transform: none; }
  .m-slider__nav:hover { transform: scale(1.08); }
  .m-slider__nav--prev { grid-area: prev; justify-self: end; left: auto; }
  .m-slider__nav--next { grid-area: next; justify-self: start; right: auto; }
}
.m-stats, .m-cta, .m-foot {
  background: linear-gradient(120deg, var(--red-600) 0%, var(--red-700) 30%, var(--red-800) 55%, var(--red-600) 80%, var(--red-600) 100%);
}
.m-stats, .m-feature, .m-cta, .m-foot { margin-top: var(--rhythm-band); margin-bottom: 0; }
.m-stats + .m-section, .m-feature + .m-section, .m-cta + .m-section { margin-top: var(--rhythm-band); }
main:has(> .m-cta:last-child) + .m-foot { margin-top: 0; }
.m-stats__layout, .m-feature, .m-cta { padding-block: var(--rhythm-band-inset); }
main:has(> .m-cta:last-child) + .m-foot { position: relative; isolation: isolate; }
main:has(> .m-cta:last-child) + .m-foot::before {
  content: ""; position: absolute; inset: 0 0 auto 0; height: 340px; z-index: -1; pointer-events: none;
  background: linear-gradient(180deg, rgba(85,17,21,0.30) 0%, rgba(85,17,21,0.13) 36%, rgba(85,17,21,0) 100%);
}
main:has(> .m-cta:last-child) + .m-foot .m-foot__inner {
  border-top: 1px solid var(--glass-border-on-brand);
  padding-top: var(--rhythm-block);
}
.m-foot { color: rgba(255,255,255,0.94); }
.m-foot__inner { display: grid; grid-template-columns: 1.5fr 0.9fr 0.9fr 1.1fr; gap: var(--space-8); padding: var(--space-9) var(--space-6) var(--space-8); text-align: left; align-items: start; }
.m-foot__brand { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); max-width: 34ch; }
.m-foot__logo { height: 42px; width: auto; }
.m-foot__tagline { font: var(--font-body-base); color: rgba(255,255,255,0.94); margin: 0; }
.m-foot__social { display: flex; gap: var(--space-3); margin-top: var(--space-2); }
.m-foot__social a { width: 42px; height: 42px; display: grid; place-items: center; border-radius: var(--radius-circle); background: var(--glass-bg-on-brand); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); border: 1px solid var(--glass-border-on-brand); box-shadow: var(--glass-rim-on-brand); color: #fff; transition: background var(--duration-base) var(--ease-standard), transform var(--duration-base) var(--ease-standard); }
.m-foot__social a:hover { background: #fff; color: var(--color-brand-text); transform: translateY(-2px); }
.m-foot__social svg { width: 18px; height: 18px; }
.m-foot__col { display: flex; flex-direction: column; }
.m-foot__col h2 { font: var(--font-eyebrow); text-transform: uppercase; letter-spacing: var(--tracking-wider); color: rgba(255,255,255,0.92); margin: 0 0 var(--space-4); }
.m-foot__col a { font: var(--font-ui); color: rgba(255,255,255,0.94); padding: 7px 0; width: fit-content; border-bottom: 1px solid transparent; transition: color var(--duration-base) var(--ease-standard), border-color var(--duration-base) var(--ease-standard); }
.m-foot__col a:hover { color: #fff; border-bottom-color: rgba(255,255,255,0.6); }
.m-foot__addr { font: var(--font-ui); color: rgba(255,255,255,0.92); margin: var(--space-3) 0 0; line-height: 1.55; }
.m-foot__bottom { display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); flex-wrap: wrap; padding: var(--space-5) var(--space-6); border-top: 1px solid rgba(255,255,255,0.18); }
.m-foot__legal { font: var(--font-ui); color: rgba(255,255,255,0.92); }
.m-foot__top-link { font: var(--font-ui); font-weight: var(--weight-semibold); color: #fff; padding-block: 2px; }
.m-foot__top-link:hover { text-decoration: underline; }
@media (max-width: 980px) {
  .m-foot__inner { grid-template-columns: 1fr 1fr; gap: var(--space-7) var(--space-6); }
  .m-foot__brand { grid-column: 1 / -1; max-width: none; }
}
@media (max-width: 560px) {
  .m-foot__inner { grid-template-columns: minmax(0, 1fr); }
  .m-foot__bottom { flex-direction: column; align-items: flex-start; }
}
@media (min-width: 981px) { .m-contact__grid { align-items: center; } }
@media (max-width: 768px) {
  .m-wrap { padding-left: var(--space-5); padding-right: var(--space-5); }
  .m-hero__inner { padding: calc(var(--space-9) + 26px) var(--space-5) var(--space-8); }
}
@media (max-width: 560px) {
  .m-wrap { padding-left: var(--space-4); padding-right: var(--space-4); }
  .m-hero__inner { padding: calc(var(--space-8) + 30px) var(--space-4) var(--space-7); }
  .m-hero__title { font-size: clamp(2.1rem, 10vw, 2.7rem); }
  .m-hero__lead { font-size: var(--text-base); margin: var(--space-4) 0 var(--space-5); }
  .m-hero__actions { flex-direction: column; align-items: stretch; gap: var(--space-3); }
  .m-hero__actions .atp-btn { width: 100%; justify-content: center; }
  .m-hero__pause { right: var(--space-4); bottom: var(--space-5); }
  .atp-headline { font-size: clamp(1.7rem, 8.5vw, 2.2rem); }
  .atp-headline--sm { font-size: clamp(1.7rem, 8.5vw, 2.2rem); }
  .m-story__small .m-story__title { font-size: clamp(1.7rem, 8.5vw, 2.2rem); }
  .m-cta__title { font-size: clamp(2.4rem, 10.7vw, 2.9rem); }
  .m-panel2__t { font-size: var(--text-2xl); }
  .m-panel2--star .m-panel2__t { font-size: clamp(1.7rem, 8.5vw, 2.2rem); font-weight: var(--weight-regular); }
  .atp-btn--lg { font-size: var(--text-base); }
  .m-panel2 { padding: var(--space-6) var(--space-5); }
  .m-panel2__body { gap: var(--space-3); }
  .m-foot__inner { padding: var(--space-7) 16px var(--space-6); }
  .m-appcard { padding: var(--space-5); }
  .m-appcard + .m-appcard { padding-left: var(--space-5); padding-top: var(--space-5); }
  .m-why__stats { grid-template-columns: minmax(0, 1fr); }
  .m-why__stat { padding: var(--space-4) var(--space-5); }
  .m-why__lead { font-size: var(--text-lg); }
}
@media (max-width: 460px) {
  .m-nav { padding: 0 12px; }
  .m-nav__pill { gap: 4px; }
  .m-nav__logo img { height: 22px; }
  .m-nav__cta { padding: 8px 13px; margin-left: 4px; }
}
.m-nowrap-lg { white-space: nowrap; }
@media (max-width: 820px) { .m-nowrap-lg { white-space: normal; } }
.atp-btn {
  --_bg: var(--color-brand);
  --_fg: var(--text-on-brand);
  --_bd: transparent;
  display: inline-flex; align-items: center; justify-content: center;
  gap: var(--space-2);
  font-family: var(--font-heading);
  font-weight: var(--weight-semibold);
  letter-spacing: 0.01em;
  line-height: 1;
  border: var(--border-width-thick) solid var(--_bd);
  background: var(--_bg);
  color: var(--_fg);
  border-radius: var(--radius-pill);
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: background var(--duration-fast) var(--ease-standard),
              color var(--duration-fast) var(--ease-standard),
              border-color var(--duration-fast) var(--ease-standard),
              transform var(--duration-fast) var(--ease-standard),
              box-shadow var(--duration-base) var(--ease-standard);
}
.atp-btn:focus-visible { outline: 3px solid var(--color-brand-text); outline-offset: 2px; box-shadow: var(--focus-ring-shadow); }
.m-nav__cta:focus-visible { outline-color: var(--color-brand-text); }
.m-hero .atp-btn:focus-visible, .m-pagehero .atp-btn:focus-visible, .m-cta .atp-btn:focus-visible,
.m-panel2 .atp-btn:focus-visible, .m-stats .atp-btn:focus-visible, .m-foot .atp-btn:focus-visible,
.m-feature .atp-btn:focus-visible { outline-color: #fff; }
.m-foot :focus-visible,
.m-hero__pause:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.atp-btn:hover, .atp-btn:focus { color: var(--_fg); transform: scale(1.045); }
.atp-btn:active { transform: scale(0.99); }
.atp-btn--sm { font-size: var(--text-sm); padding: 8px 16px; }
.atp-btn--md { font-size: var(--text-base); padding: 12px 24px; }
.atp-btn--lg { font-size: var(--text-lg); padding: 16px 32px; }
.atp-btn--primary { --_bg: var(--color-brand-text); --_fg: var(--neutral-0); --_bd: var(--color-brand-text); background-image: linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0) 54%); }
.atp-btn--primary:hover { --_bg: var(--neutral-0); --_fg: var(--color-brand-text); --_bd: var(--color-brand-text); box-shadow: var(--shadow-brand); }
.atp-btn--secondary { --_bg: var(--neutral-900); --_fg: var(--neutral-0); --_bd: var(--neutral-900); background-image: linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0) 54%); }
.atp-btn--secondary:hover { --_bg: var(--neutral-0); --_fg: var(--neutral-900); --_bd: var(--neutral-900); }
.atp-btn--outline { --_bg: transparent; --_fg: var(--color-brand-text); --_bd: var(--color-brand-text); }
.atp-btn--outline:hover { --_bg: var(--color-brand-text); --_fg: var(--neutral-0); --_bd: var(--color-brand-text); box-shadow: var(--shadow-brand); }
.atp-btn--inverted { --_bg: var(--neutral-0); --_fg: var(--color-brand-text); --_bd: var(--neutral-0); background-image: linear-gradient(180deg, rgba(255,255,255,0.55) 0%, rgba(255,255,255,0) 58%); }
.atp-btn--inverted:hover { --_bg: var(--color-brand-text); --_fg: var(--neutral-0); --_bd: var(--color-brand-text); box-shadow: var(--shadow-float); }
.atp-btn--inverted:active { --_bg: var(--color-brand-text); }
.atp-btn--ghost { --_bg: transparent; --_fg: var(--text-primary); --_bd: transparent; }
.atp-btn--ghost:hover { --_bg: var(--text-primary); --_fg: var(--neutral-0); }
.atp-btn[disabled], .atp-btn[aria-disabled="true"] { opacity: 0.45; cursor: not-allowed; pointer-events: none; box-shadow: none; }
.atp-btn[disabled]:hover, .atp-btn[disabled]:focus, .atp-btn[disabled]:active,
.atp-btn[aria-disabled="true"]:hover, .atp-btn[aria-disabled="true"]:focus, .atp-btn[aria-disabled="true"]:active { transform: none; }
.atp-btn--block { display: flex; width: 100%; }
.atp-btn__icon { display: inline-flex; flex: none; }
.atp-field { display: flex; flex-direction: column; gap: 6px; font-family: var(--font-body); }
.atp-field__label { font-family: var(--font-heading); font-weight: var(--weight-semibold); font-size: var(--text-sm); color: var(--text-primary); }
.atp-field__req { color: var(--color-brand-text); margin-left: 2px; }
.atp-field__hint { font-size: var(--text-xs); color: var(--text-muted); font-weight: var(--weight-light); }
.atp-field__error { font-size: var(--text-xs); color: var(--color-danger); }
.atp-input {
  font-family: var(--font-body);
  font-weight: var(--weight-light);
  font-size: var(--text-base);
  color: var(--text-primary);
  background: var(--surface-card);
  border: var(--border-width) solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 9px 14px;
  width: 100%;
  transition: border-color var(--duration-fast) var(--ease-standard),
              box-shadow var(--duration-base) var(--ease-standard);
}
.atp-input::placeholder { color: var(--text-muted); }
.atp-input:hover { border-color: var(--border-strong); }
.atp-input:focus { outline: 2px solid var(--color-brand-text); outline-offset: 1px; border-color: var(--color-brand); box-shadow: var(--focus-ring-shadow); }
.atp-input[aria-invalid="true"] { border-color: var(--color-danger); }
.atp-input:disabled { background: var(--surface-sunken); color: var(--text-muted); cursor: not-allowed; }
.m-site { background-color: var(--color-bg); background-image: var(--ambient-warm); background-repeat: no-repeat; }
.m-site .atp-hero-title, .m-site .m-hero__title { letter-spacing: -0.035em; }
.m-site .atp-display { letter-spacing: -0.032em; }
.m-site .atp-headline, .m-site .m-head__title { letter-spacing: -0.028em; }
.m-site .atp-headline--sm, .m-site .m-panel2__t, .m-site .m-story__title { letter-spacing: -0.024em; }
.m-site .atp-quote { letter-spacing: -0.02em; }
@media (max-width: 700px) {
  .m-site .atp-headline, .m-site .m-head__title, .m-site .atp-display { font-weight: var(--weight-regular); }
}
.m-site .m-hero__title em { font-weight: var(--weight-regular); }
.m-site .m-story__badge b { font-weight: var(--weight-semibold); letter-spacing: -0.02em; }
.m-site .m-stats__hero-num { letter-spacing: -0.035em; }
.m-site .m-stats__hero-lbl { font-weight: var(--weight-medium); }
.m-site .m-nav__link { font-weight: var(--weight-medium); }
@media (max-width: 980px) { .m-site .m-nav--open .m-nav__link { font-weight: var(--weight-semibold); } }
.m-site .m-ind, .m-site .m-feature__mock, .m-site .m-story__badge, .m-site .m-form__done,
.m-site .m-appcard, .m-site .m-why__stat, .m-site .m-tool { position: relative; overflow: hidden; }
.m-site .m-ind::after, .m-site .m-feature__mock::after, .m-site .m-story__badge::after, .m-site .m-form__done::after,
.m-site .m-appcard::after, .m-site .m-why__stat::after, .m-site .m-tool::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0;
  background: var(--glass-sheen); opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: transform 620ms var(--ease-out), opacity 380ms var(--ease-standard);
}
.m-site .m-ind:hover::after, .m-site .m-feature__mock:hover::after, .m-site .m-form__done:hover::after,
.m-site .m-appcard:hover::after, .m-site .m-tool:hover::after { transform: translate3d(6%, -8%, 0); opacity: 0.72; }
.m-site .m-ind > *, .m-site .m-feature__mock > *, .m-site .m-story__badge > *, .m-site .m-form__done > *,
.m-site .m-appcard > *, .m-site .m-why__stat > *, .m-site .m-tool > * { position: relative; z-index: 1; }
@media (prefers-reduced-motion: reduce) {
  .m-site .m-ind::after, .m-site .m-feature__mock::after, .m-site .m-story__badge::after, .m-site .m-form__done::after,
  .m-site .m-appcard::after, .m-site .m-why__stat::after, .m-site .m-tool::after { transition: none; }
  .m-site .m-ind:hover::after, .m-site .m-feature__mock:hover::after, .m-site .m-form__done:hover::after,
  .m-site .m-appcard:hover::after, .m-site .m-tool:hover::after { transform: none; }
}
.m-site .m-nav__pill { background: var(--glass-bg-strong); border: 1px solid var(--glass-border); box-shadow: var(--glass-rim); }
.m-site .m-nav__pill::before { -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); }
.m-site .m-nav__icon:hover, .m-site .m-nav__icon:focus-visible, .m-site .m-nav__icon[aria-expanded="true"] {
  background-color: rgba(255,255,255,0.55); background-image: var(--glass-sheen-soft);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.85), inset 0 -1px 0 rgba(44,42,37,0.05);
}
@media (max-width: 980px) {
  .m-site .m-nav--open .m-nav__links { background: var(--glass-bg-strong); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); border: 1px solid var(--glass-border); box-shadow: var(--glass-rim-raised); }
}
@media (min-width: 981px) {
  .m-site .m-nav__links { background-color: rgba(255,255,255,0.34); background-image: var(--glass-sheen-soft); border: 1px solid rgba(255,255,255,0.55); border-radius: var(--radius-pill); box-shadow: inset 0 1px 0 rgba(255,255,255,0.62), inset 0 -1px 0 rgba(44,42,37,0.05); padding: 3px; }
}
.m-site .m-nav__link { border-radius: var(--radius-pill); border: 1px solid transparent; transition: background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard); }
.m-site .m-nav__link:hover, .m-site .m-nav__link:focus-visible { background-color: rgba(255,255,255,0.55); background-image: var(--glass-sheen-soft); border-color: rgba(255,255,255,0.85); box-shadow: inset 0 1px 0 rgba(255,255,255,0.85), inset 0 -1px 0 rgba(44,42,37,0.05); color: var(--text-primary); }
.m-site .m-nav__link[aria-current] { background-color: rgba(252,235,236,0.72); background-image: var(--glass-sheen-soft); border-color: rgba(225,58,68,0.24); box-shadow: inset 0 1px 0 rgba(255,255,255,0.70); color: var(--color-brand-text); font-weight: var(--weight-semibold); }
.m-site .m-nav__link[aria-current]:hover, .m-site .m-nav__link[aria-current]:focus-visible { background-color: rgba(252,235,236,0.92); box-shadow: inset 0 1px 0 rgba(255,255,255,0.85), inset 0 -1px 0 rgba(44,42,37,0.05); }
.m-site .m-nav__link:focus-visible { outline-offset: 1px; }
.m-site .m-nav__cta { background-image: linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0) 54%); box-shadow: inset 0 1px 0 rgba(255,255,255,0.26), 0 8px 20px -10px rgba(168,35,44,0.55); }
.m-site .m-nav__cta:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,0.30), 0 12px 26px -10px rgba(225,58,68,0.55); }
.m-site .m-story__badge { background: var(--glass-bg-strong); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); border: 1px solid var(--glass-border); box-shadow: var(--glass-rim-raised); border-radius: var(--radius-lg); }
.m-site .m-story { box-shadow: inset 0 1px 0 rgba(255,255,255,0.16), 0 18px 44px -22px rgba(85,17,21,0.42); padding: var(--space-7); }
.m-site .m-story:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,0.22), 0 30px 66px -24px rgba(85,17,21,0.52); }
.m-site .m-story__small { padding: var(--space-6); }
.m-site .m-stats__list { background-color: var(--glass-veil-dark); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); border: 1px solid var(--glass-border-on-brand); border-radius: var(--radius-2xl); box-shadow: var(--glass-rim-on-brand); padding: var(--space-6) var(--space-7); }
@media (max-width: 980px) { .m-site .m-stats__list { border-top: 1px solid var(--glass-border-on-brand); padding: var(--space-6); } }
.m-site .m-feature__mock { background: var(--glass-bg-strong); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); border: 1px solid var(--glass-border); box-shadow: var(--glass-rim-raised); border-radius: var(--radius-3xl); }
.m-site .m-feature__mock::after { border-radius: var(--radius-3xl); clip-path: inset(0 round var(--radius-3xl)); }
.m-site .m-mock__bar { border-bottom: 1px solid rgba(255,255,255,0.55); background: rgba(255,255,255,0.30); }
.m-site .m-mock__dot { background: rgba(44,42,37,0.16); box-shadow: inset 0 1px 0 rgba(255,255,255,0.55); }
.m-site .m-mock__field { background: rgba(255,255,255,0.55); border: 1px solid rgba(255,255,255,0.70); box-shadow: inset 0 1px 0 rgba(255,255,255,0.75), 0 1px 3px rgba(44,42,37,0.06); }
.m-site .m-mock__out { border: 1px dashed rgba(44,42,37,0.22); background: rgba(255,255,255,0.34); border-radius: var(--radius-md); }
.m-site .m-chip { background: rgba(255,255,255,0.55); border: 1px solid rgba(255,255,255,0.72); box-shadow: inset 0 1px 0 rgba(255,255,255,0.70); }
.m-site .m-chip--on { background: var(--color-brand-text); border-color: var(--color-brand-text); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,0.28), 0 4px 12px -4px rgba(168,35,44,0.55); }
.m-site .m-ind { background: rgba(255,255,255,0.62); border: 1px solid rgba(255,255,255,0.72); box-shadow: var(--glass-rim); }
.m-site .m-ind:hover { background: rgba(255,255,255,0.82); border-color: rgba(255,255,255,0.90); box-shadow: var(--glass-rim-raised); transform: translateY(-3px) scale(1.03); }
.m-site .atp-input { background: rgba(255,255,255,0.64); background-image: var(--glass-sheen-soft); border: 1px solid var(--neutral-500); box-shadow: inset 0 1px 0 rgba(255,255,255,0.80), 0 2px 8px -4px rgba(44,42,37,0.14); }
.m-site .atp-input:hover { background: rgba(255,255,255,0.74); border-color: var(--border-strong); }
.m-site .atp-input:focus { background: rgba(255,255,255,0.92); border-color: var(--color-brand); box-shadow: var(--focus-ring-shadow), inset 0 1px 0 rgba(255,255,255,0.85); }
.m-site .atp-input::placeholder { color: var(--text-muted); }
@supports not ((-webkit-backdrop-filter: blur(2px)) or (backdrop-filter: blur(2px))) {
  .m-site .m-nav__pill, .m-site .m-nav--open .m-nav__links, .m-site .m-story__badge,
  .m-site .m-feature__mock, .m-site .m-form__done { background: rgba(255,255,255,0.97); }
  .m-site .m-ind { background: rgba(255,255,255,0.95); }
  .m-site .atp-input { background: rgba(255,255,255,0.96); }
  .m-site .m-stats__list { background: rgba(125,26,33,0.42); }
  .m-site .m-hero__pause, .m-site .m-hero__actions .atp-btn--outline,
  .m-site .m-feature__actions .atp-btn--outline { --_bg: var(--glass-veil-dark-solid); background: var(--glass-veil-dark-solid); }
  .m-site .m-foot__social a { background: rgba(255,255,255,0.26); }
}
@media print {
  .m-site *, .m-site *::before, .m-site *::after { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; box-shadow: none !important; animation: none !important; }
  .m-site .m-nav { display: none !important; }
  .m-site .m-ind, .m-site .m-feature__mock, .m-site .m-story__badge,
  .m-site .atp-input, .m-site .m-form__done, .m-site .m-appcard, .m-site .m-why__stat, .m-site .m-tool,
  .m-site .m-sector, .m-site .m-quote, .m-site .m-faq__item, .m-site .m-govern__col {
    background: #fff !important; background-image: none !important; border-color: var(--border-default) !important;
  }
  .m-site .m-appcard::after, .m-site .m-tool::after { display: none !important; }
}
.m-site .m-approach__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--rhythm-block); }
.m-site .m-appcard {
  gap: var(--space-4); padding: var(--space-6); border-radius: var(--radius-2xl);
  background-color: rgba(255, 255, 255, 0.64); background-image: var(--glass-sheen);
  border: 1px solid rgba(255, 255, 255, 0.72); box-shadow: var(--glass-rim);
  transition: opacity 0.6s var(--ease-standard), transform 0.6s var(--ease-standard),
              box-shadow var(--duration-base) var(--ease-standard),
              background-color var(--duration-base) var(--ease-standard),
              border-color var(--duration-base) var(--ease-standard);
}
.m-site .m-appcard.is-in { transition-duration: var(--duration-base); }
.m-site .m-appcard + .m-appcard { border-left: 0; border-top: 0; padding-left: var(--space-6); padding-top: var(--space-6); }
.m-site .m-appcard::before { width: 40px; height: 3px; border-radius: var(--radius-pill); background: var(--color-brand); position: relative; z-index: 1; margin-bottom: var(--space-1); flex: none; }
.m-site .m-appcard:hover { transform: translateY(-3px); background-color: rgba(255, 255, 255, 0.82); border-color: rgba(255, 255, 255, 0.90); box-shadow: var(--glass-rim-raised); }
@media (prefers-reduced-motion: reduce) { .m-site .m-appcard:hover { transform: none; } }
.m-site .m-appcard__t { font-weight: var(--weight-medium); letter-spacing: -0.02em; }
@media (max-width: 980px) { .m-site .m-approach__grid { grid-template-columns: minmax(0, 1fr); } }
.m-site .m-why__grid { grid-template-columns: 0.9fr 1.1fr; column-gap: var(--space-8); row-gap: var(--rhythm-block); align-items: start; }
.m-site .m-why__head { display: flex; flex-direction: column; gap: var(--rhythm-element); }
.m-site .m-why__stats { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.m-site .m-why__stat { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-5); border-radius: var(--radius-lg); background-color: rgba(255, 255, 255, 0.66); background-image: var(--glass-sheen); border: 1px solid rgba(255, 255, 255, 0.74); box-shadow: var(--glass-rim); }
.m-site .m-why__stat-num { font-family: var(--font-sans); font-weight: var(--weight-light); font-size: var(--text-4xl); line-height: 0.98; letter-spacing: -0.035em; color: var(--color-brand-text); font-variant-numeric: tabular-nums; }
.m-site .m-why__stat-lbl { font-family: var(--font-sans); font-weight: var(--weight-semibold); font-size: var(--text-xs); line-height: var(--leading-snug); text-transform: uppercase; letter-spacing: var(--tracking-wider); color: var(--text-muted); }
.m-site .m-why__lead { font-family: var(--font-sans); font-weight: var(--weight-light); font-size: var(--text-xl); line-height: 1.62; letter-spacing: -0.008em; color: var(--text-secondary); max-width: 46ch; }
.m-site .m-why__lead strong { font-weight: var(--weight-medium); color: var(--text-primary); }
@media (max-width: 980px) { .m-site .m-why__grid { grid-template-columns: minmax(0, 1fr); gap: var(--rhythm-block); } .m-site .m-why__lead { max-width: none; } }
.m-site .m-foot__social a:hover { background: #fff; color: var(--color-brand-text); }
.atp-badge {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: var(--font-heading); font-weight: var(--weight-semibold);
  font-size: var(--text-xs); text-transform: uppercase; letter-spacing: 0.08em;
  padding: 5px 12px; border-radius: var(--radius-pill); white-space: nowrap;
}
.atp-badge--subtle { background: var(--color-brand-subtle); color: var(--color-brand-active); }
.atp-badge--neutral { background: var(--surface-sunken); color: var(--text-secondary); }
.atp-badge--on-brand { background: var(--glass-bg-on-brand-strong); color: #fff; border: 1px solid var(--glass-border-on-brand); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); }
.m-tools__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.m-tool {
  display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4);
  padding: var(--space-7); border-radius: var(--radius-2xl);
  background-color: rgba(255, 255, 255, 0.64); background-image: var(--glass-sheen);
  border: 1px solid rgba(255, 255, 255, 0.72); box-shadow: var(--glass-rim);
  transition: transform var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard),
              background-color var(--duration-base) var(--ease-standard), border-color var(--duration-base) var(--ease-standard);
}
.m-tool:hover { transform: translateY(-3px); background-color: rgba(255, 255, 255, 0.82); border-color: rgba(255, 255, 255, 0.90); box-shadow: var(--glass-rim-raised); }
@media (prefers-reduced-motion: reduce) { .m-tool:hover { transform: none; } }
.m-tool__top { display: flex; align-items: center; justify-content: space-between; width: 100%; gap: var(--space-3); }
.m-tool__icon { width: 48px; height: 48px; border-radius: var(--radius-lg); background: var(--color-brand-subtle); color: var(--color-brand-text); display: grid; place-items: center; flex: none; }
.m-tool__icon svg { width: 24px; height: 24px; }
.m-tool__t { font: var(--font-h3); font-weight: var(--weight-medium); letter-spacing: -0.02em; margin: 0; color: var(--text-primary); }
.m-tool__x { font: var(--font-body-base); color: var(--text-secondary); margin: 0; }
.m-tool__cta { font: var(--font-ui); font-weight: var(--weight-semibold); color: var(--color-brand-text); display: inline-flex; align-items: center; gap: 6px; margin-top: auto; }
.m-tool__cta:hover .m-arrow { transform: translateX(4px); }
@media (max-width: 700px) { .m-tools__grid { grid-template-columns: minmax(0, 1fr); } }
.m-pending {
  display: flex; flex-direction: column; gap: var(--space-2);
  padding: var(--space-5); border-radius: var(--radius-lg);
  background: var(--caution-50); border: 1px dashed var(--caution-400);
}
.m-pending__tag {
  display: inline-flex; align-self: flex-start; align-items: center; gap: 6px;
  font-family: var(--font-heading); font-weight: var(--weight-semibold);
  font-size: var(--text-2xs); text-transform: uppercase; letter-spacing: 0.1em;
  color: var(--caution-700); background: var(--caution-100); padding: 4px 10px; border-radius: var(--radius-pill);
}
.m-pending p { font: var(--font-ui); color: var(--caution-800); margin: 0; }
.m-pagehero {
  position: relative; overflow: hidden;
  background: linear-gradient(120deg, var(--red-600) 0%, var(--red-700) 30%, var(--red-800) 55%, var(--red-600) 80%, var(--red-600) 100%);
}
.m-pagehero::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(180deg, transparent 68%, rgba(85,17,21,0.30) 100%); }
.m-pagehero__inner { position: relative; z-index: 1; max-width: var(--container-xl); margin: 0 auto; padding: calc(var(--space-10) + 24px) var(--space-6) var(--space-9); display: flex; flex-direction: column; gap: var(--space-4); align-items: flex-start; }
.m-pagehero .atp-hero-title { color: #fff; font-size: clamp(2.5rem, 5vw, 4rem); }
.m-pagehero .atp-hero-title em { color: var(--red-100); font-weight: var(--weight-regular); font-style: normal; }
.m-pagehero__badgerow { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.m-pagehero__lead { font: var(--font-body-lg); color: rgba(255,255,255,0.92); max-width: 62ch; margin: 0; }
.m-pagehero__actions { display: flex; gap: var(--space-3); flex-wrap: wrap; margin-top: var(--space-2); }
.m-pagehero__actions .atp-btn--outline { --_bg: var(--glass-veil-dark); --_fg: #fff; --_bd: var(--glass-border-on-brand); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); box-shadow: var(--glass-rim-on-brand); }
.m-pagehero__actions .atp-btn--outline:hover { --_bg: #fff; --_fg: var(--color-brand-text); --_bd: #fff; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: var(--shadow-float); }
@media (max-width: 768px) {
  .m-pagehero__inner { padding-left: var(--space-5); padding-right: var(--space-5); }
}
@media (max-width: 560px) {
  .m-pagehero__inner { padding: calc(var(--space-9) + 30px) var(--space-4) var(--space-7); }
  .m-pagehero .atp-hero-title { font-size: clamp(2.1rem, 10vw, 2.7rem); }
  .m-pagehero__actions { flex-direction: column; align-items: stretch; width: 100%; }
  .m-pagehero__actions .atp-btn { width: 100%; justify-content: center; }
}
.m-appshell-header { position: sticky; top: 0; z-index: 40; display: flex; align-items: center; gap: var(--space-3); padding: 14px var(--space-6); background: var(--glass-bg-strong); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter); border-bottom: 1px solid var(--border-subtle); }
.m-appshell-header__logo img { height: 24px; width: auto; display: block; }
.m-appshell-header__crumb { font: var(--font-ui); color: var(--text-secondary); display: flex; align-items: center; gap: 6px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-appshell-header__crumb a { color: var(--text-secondary); }
.m-appshell-header__crumb a:hover { color: var(--color-brand-text); }
.m-appshell-header__crumb .m-crumb-sep { color: var(--border-strong); }
.m-appshell-header__crumb .m-crumb-current { color: var(--text-primary); font-weight: var(--weight-medium); }
.m-appshell-header .atp-badge { margin-left: auto; flex: none; }
.m-appshell-footer { padding: var(--space-5) var(--space-6); text-align: center; font: var(--font-ui); color: var(--text-muted); border-top: 1px solid var(--border-subtle); }
.m-appshell-footer a { color: var(--text-muted); text-decoration: underline; }
.m-appshell-footer a:hover { color: var(--color-brand-text); }
@media (max-width: 560px) {
  .m-appshell-header__crumb { font-size: var(--text-xs); }
}
.m-content { max-width: var(--container-md); margin: 0 auto; }
.m-content h2 { margin-top: var(--space-8); }
.m-content h2:first-child { margin-top: 0; }
.m-content p, .m-content ul, .m-content ol { font: var(--font-body-base); color: var(--text-secondary); max-width: 74ch; }
.m-content ul, .m-content ol { padding-left: 1.3em; }
.m-content li { margin-bottom: var(--space-2); }
.m-service-section { display: flex; flex-direction: column; gap: var(--space-4); align-items: flex-start; }
.m-service-section__icon { width: 56px; height: 56px; border-radius: var(--radius-lg); background: var(--color-brand-subtle); color: var(--color-brand-text); display: grid; place-items: center; }
.m-service-section__icon svg { width: 28px; height: 28px; }
.m-service-section__t { font: var(--font-h3); font-weight: var(--weight-medium); letter-spacing: -0.01em; margin: 0; color: var(--text-primary); }
.m-service-section__x { font: var(--font-body-lg); color: var(--text-secondary); max-width: 62ch; margin: 0; }
.m-service-section__list { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-3); max-width: 62ch; }
.m-service-section__list li { position: relative; padding-left: 24px; font: var(--font-body-base); color: var(--text-secondary); }
.m-service-section__list li::before { content: ""; position: absolute; left: 0; top: 10px; width: 8px; height: 8px; border-radius: 50%; background: var(--color-brand); }
.m-service-section--lidera { padding: var(--space-8); border-radius: var(--radius-2xl); background: var(--surface-muted); }
.m-service-section--lidera .atp-badge { margin-bottom: var(--space-2); }
.m-measure__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: var(--space-5); margin-top: var(--rhythm-block); }
.m-audience__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--rhythm-block); }
@media (max-width: 820px) { .m-measure__grid { grid-template-columns: minmax(0, 1fr); } .m-audience__grid { grid-template-columns: minmax(0, 1fr); } }
.m-site .m-measure__grid .m-service-section,
.m-site .m-audience__grid .m-service-section {
  position: relative; overflow: hidden; gap: var(--space-3);
  padding: var(--space-6); border-radius: var(--radius-2xl); height: 100%;
  background-color: rgba(255, 255, 255, 0.64); background-image: var(--glass-sheen);
  border: 1px solid rgba(255, 255, 255, 0.72); box-shadow: var(--glass-rim);
  transition: transform var(--duration-base) var(--ease-standard),
              box-shadow var(--duration-base) var(--ease-standard),
              background-color var(--duration-base) var(--ease-standard),
              border-color var(--duration-base) var(--ease-standard);
}
.m-site .m-measure__grid .m-service-section:hover,
.m-site .m-audience__grid .m-service-section:hover {
  transform: translateY(-3px); background-color: rgba(255, 255, 255, 0.82);
  border-color: rgba(255, 255, 255, 0.90); box-shadow: var(--glass-rim-raised);
}
@media (prefers-reduced-motion: reduce) {
  .m-site .m-measure__grid .m-service-section:hover,
  .m-site .m-audience__grid .m-service-section:hover { transform: none; }
}
.m-site .m-measure__grid .m-service-section > *,
.m-site .m-audience__grid .m-service-section > * { position: relative; z-index: 1; }
.m-site .m-measure__grid .m-service-section__icon,
.m-site .m-audience__grid .m-service-section__icon { margin-bottom: var(--space-2); }
.m-measure__grid .m-service-section__x, .m-measure__grid .m-service-section__list,
.m-audience__grid .m-service-section__x, .m-audience__grid .m-service-section__list { max-width: 62ch; }
.m-measure__grid .m-service-section__x,
.m-audience__grid .m-service-section__x { font: var(--font-body-base); }
.m-confirm { display: flex; flex-direction: column; align-items: center; text-align: center; gap: var(--space-5); max-width: var(--container-xs); margin: 0 auto; }
.m-confirm__mark { width: 72px; height: 72px; border-radius: var(--radius-circle); background: var(--color-brand); color: #fff; display: grid; place-items: center; line-height: 1; background-image: linear-gradient(180deg, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0) 56%); box-shadow: inset 0 1px 0 rgba(255,255,255,0.28), 0 8px 20px -10px rgba(168,35,44,0.55); }
.m-confirm__links { display: flex; flex-direction: column; gap: var(--space-2); width: 100%; max-width: 360px; margin-top: var(--space-4); }
.m-confirm__links a { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); color: var(--text-primary); font: var(--font-ui); font-weight: var(--weight-medium); transition: border-color var(--duration-base) var(--ease-standard), background var(--duration-base) var(--ease-standard); }
.m-confirm__links a:hover { border-color: var(--color-brand); background: var(--color-brand-subtle); color: var(--color-brand-text); }
.m-confirm__links .atp-eyebrow { align-self: flex-start; }
.m-404 { display: flex; flex-direction: column; align-items: center; text-align: center; gap: var(--space-5); }
.m-404__num { font: var(--font-hero); font-size: clamp(4rem, 18vw, 7rem); color: var(--color-brand); line-height: 1; }
@supports (-webkit-text-stroke: 2px var(--color-brand)) {
  .m-404__num { color: transparent; -webkit-text-stroke: 2px var(--color-brand); }
}
.m-404__links { display: flex; gap: var(--space-3); flex-wrap: wrap; justify-content: center; margin-top: var(--space-4); }
.m-confirm__lead, .m-404__lead { font: var(--font-body-lg); color: var(--text-secondary); max-width: 52ch; margin: 0; }
.m-confirm > .atp-btn--primary, .m-404 > .atp-btn--primary { margin-top: var(--space-2); }
.m-minimal-header { display: flex; justify-content: center; padding: var(--space-6); }
.m-minimal-header img { height: 30px; width: auto; }
.m-minimal-hero { min-height: 60vh; display: flex; align-items: center; justify-content: center; text-align: center; padding: var(--space-8) var(--space-6); }
.m-minimal-hero__inner { max-width: var(--container-xs); display: flex; flex-direction: column; align-items: center; gap: var(--space-4); }
.m-minimal-hero .m-pending { text-align: left; }
.m-minimal-hero__inner .m-pending + .atp-headline--sm { margin-top: var(--space-2); }
.m-minimal-footer { text-align: center; padding: var(--space-6); font: var(--font-ui); color: var(--text-muted); border-top: 1px solid var(--border-subtle); }
.m-minimal-footer a { color: var(--text-muted); }
.m-minimal-footer a:hover { color: var(--color-brand-text); }
.u-visually-hidden {
  position: absolute !important; width: 1px !important; height: 1px !important;
  padding: 0 !important; margin: -1px !important; overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important;
}
.m-skip-link {
  position: absolute; left: var(--space-4); top: -60px; z-index: 100;
  background: var(--neutral-900); color: #fff; padding: 12px 20px;
  border-radius: var(--radius-md); font: var(--font-ui); font-weight: var(--weight-semibold);
  transition: top var(--duration-base) var(--ease-standard);
}
.m-skip-link:focus { top: var(--space-4); color: #fff; }
.m-highlight {
  padding: var(--space-8); border-radius: var(--radius-2xl); margin-top: var(--rhythm-block);
  background-color: var(--card-tint); background-image: var(--glass-sheen);
  border: 1px solid var(--card-border); box-shadow: var(--glass-rim);
  transition: transform var(--duration-base) var(--ease-standard), background-color var(--duration-base) var(--ease-standard),
              border-color var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard);
}
.m-highlight:hover {
  transform: translateY(-3px); background-color: var(--card-tint-hover);
  border-color: var(--card-border-hover); box-shadow: var(--glass-rim-raised);
}
@media (prefers-reduced-motion: reduce) { .m-highlight:hover { transform: none; } }
.m-highlight__eyebrow { font: var(--font-eyebrow); text-transform: uppercase; letter-spacing: var(--tracking-wider); color: var(--color-brand-text); margin: 0 0 var(--space-3); }
.m-highlight p { font: var(--font-body-lg); color: var(--text-secondary); max-width: 68ch; margin: var(--space-5) 0 0; }
.m-highlight p strong { color: var(--text-primary); font-weight: var(--weight-medium); }
.m-highlight .m-points + p { margin-top: var(--space-7); }
@media (max-width: 560px) {
  .m-highlight { padding: var(--space-6); }
  .m-points { margin-top: var(--space-6); }
  .m-highlight .m-points + p { margin-top: var(--space-6); }
  .m-sector, .m-govern__col { padding: var(--space-5); }
}
.m-sector-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: var(--space-5); margin-top: var(--rhythm-block); }
.m-sector {
  display: flex; flex-direction: column; gap: var(--space-4);
  padding: var(--space-6); border-radius: var(--radius-2xl);
  background-color: var(--card-tint); background-image: var(--glass-sheen);
  border: 1px solid var(--card-border); box-shadow: var(--glass-rim);
  transition: transform var(--duration-base) var(--ease-standard), background-color var(--duration-base) var(--ease-standard),
              border-color var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard);
}
.m-sector:hover {
  transform: translateY(-3px); background-color: var(--card-tint-hover);
  border-color: var(--card-border-hover); box-shadow: var(--glass-rim-raised);
}
@media (prefers-reduced-motion: reduce) { .m-sector:hover { transform: none; } }
.m-sector__t { font: var(--font-h3); font-weight: var(--weight-medium); letter-spacing: -0.02em; margin: 0; color: var(--text-primary); }
.m-sector__role { font: var(--font-ui); color: var(--color-brand-text); margin: 0; }
.m-sector__x { font: var(--font-body-base); color: var(--text-secondary); margin: 0; }
.m-sector ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.m-sector li { position: relative; padding-left: 22px; font: var(--font-body-base); color: var(--text-secondary); }
.m-sector li::before { content: ""; position: absolute; left: 0; top: 9px; width: 7px; height: 7px; border-radius: 50%; background: var(--color-brand); }
.m-toolset { display: flex; flex-direction: column; gap: var(--space-5); margin-top: var(--space-6); }
.m-toolset__group { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.m-toolset__label { font: var(--font-eyebrow); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--text-muted); width: 100%; margin-bottom: 2px; }
.m-chip { display: inline-flex; align-items: center; padding: 6px 14px; border-radius: 999px; background: var(--surface-muted); border: 1px solid var(--border-subtle); font: var(--font-ui); color: var(--text-secondary); }
.m-quotes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--rhythm-block); }
@media (max-width: 980px) {
  .m-quotes { grid-template-columns: minmax(0, 1fr); max-width: var(--container-md); }
}
.m-quote {
  display: flex; flex-direction: column; gap: var(--space-4);
  margin: 0; padding: var(--space-7); border-radius: var(--radius-2xl);
  background-color: var(--card-tint); background-image: var(--glass-sheen);
  border: 1px solid var(--card-border); box-shadow: var(--glass-rim);
  transition: transform var(--duration-base) var(--ease-standard), background-color var(--duration-base) var(--ease-standard),
              border-color var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard);
}
.m-quote:hover {
  transform: translateY(-3px); background-color: var(--card-tint-hover);
  border-color: var(--card-border-hover); box-shadow: var(--glass-rim-raised);
}
@media (prefers-reduced-motion: reduce) { .m-quote:hover { transform: none; } }
@media (max-width: 1120px) { .m-quote { padding: var(--space-6); } }
.m-quote::before {
  content: ""; flex: none; width: 40px; height: 3px;
  border-radius: var(--radius-pill); background: var(--color-brand);
}
.m-quote__text { font: var(--font-body-lg); color: var(--text-primary); max-width: 62ch; margin: 0; }
.m-quote__who {
  margin-top: auto; padding-top: var(--space-5);
  border-top: 1px solid rgba(44, 42, 37, 0.10);
  font: var(--font-ui); color: var(--text-secondary);
}
.m-quote__who b { display: block; color: var(--text-primary); font-weight: var(--weight-semibold); }
.m-faq { max-width: var(--container-md); margin: var(--rhythm-block) 0 0; display: flex; flex-direction: column; gap: var(--space-3); }
.m-faq__item {
  border-radius: var(--radius-lg); overflow: hidden;
  background-color: var(--card-tint); background-image: var(--glass-sheen-soft);
  border: 1px solid var(--card-border); box-shadow: var(--glass-rim-list);
  transition: background-color var(--duration-base) var(--ease-standard),
              border-color var(--duration-base) var(--ease-standard),
              box-shadow var(--duration-base) var(--ease-standard);
}
.m-faq__item:hover { background-color: rgba(255, 255, 255, 0.74); }
.m-faq__item[open] {
  background-color: var(--card-tint-hover); border-color: var(--card-border-hover);
  box-shadow: var(--glass-rim);
}
.m-faq__item summary:focus-visible { outline-offset: -4px; }
.m-faq__item summary {
  cursor: pointer; list-style: none;
  padding: var(--space-5) var(--space-6);
  font-family: var(--font-heading); font-weight: var(--weight-medium);
  font-size: var(--text-lg); line-height: var(--leading-snug); letter-spacing: -0.01em;
  color: var(--text-primary);
  display: flex; justify-content: space-between; align-items: center; gap: var(--space-5);
}
.m-faq__item summary::-webkit-details-marker { display: none; }
.m-faq__item summary::after {
  content: ""; flex: none; width: 32px; height: 32px; border-radius: var(--radius-circle);
  background-color: var(--color-brand-subtle);
  background-image: linear-gradient(var(--color-brand-text), var(--color-brand-text)),
                    linear-gradient(var(--color-brand-text), var(--color-brand-text));
  background-size: 12px 2px, 2px 12px;
  background-position: center, center;
  background-repeat: no-repeat;
  transition: transform var(--duration-base) var(--ease-standard),
              background-color var(--duration-base) var(--ease-standard);
}
.m-faq__item[open] summary::after {
  transform: rotate(45deg);
  background-color: var(--color-brand-text);
  background-image: linear-gradient(#fff, #fff), linear-gradient(#fff, #fff);
}
.m-faq__item > div { padding: 0 var(--space-6) var(--space-6); font: var(--font-body-base); color: var(--text-secondary); }
.m-faq__item > div p { margin: 0; max-width: 68ch; }
@media (prefers-reduced-motion: reduce) {
  .m-faq__item, .m-faq__item summary::after { transition: none; }
}
.m-nav__item { position: relative; display: inline-flex; }
.m-nav__item--has-menu > .m-nav__link { display: inline-flex; align-items: center; gap: 5px; }
.m-nav__chev { width: 13px; height: 13px; flex: none; transition: transform var(--duration-base) var(--ease-standard); }
.m-site .m-nav__item--has-menu:hover .m-nav__chev,
.m-site .m-nav__item--has-menu:focus-within .m-nav__chev { transform: rotate(180deg); }
.m-nav__dropdown {
  position: absolute; top: 100%; left: 0; margin-top: 12px; z-index: 70;
  min-width: 290px; display: flex; flex-direction: column; gap: 2px; padding: var(--space-3);
  background: var(--glass-bg-strong); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter);
  border: 1px solid var(--glass-border); border-radius: var(--radius-2xl); box-shadow: var(--glass-rim-raised);
  opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(6px);
  transition: opacity var(--duration-base) var(--ease-standard), transform var(--duration-base) var(--ease-standard), visibility var(--duration-base) var(--ease-standard);
}
.m-nav__dropdown::before { content: ""; position: absolute; top: -14px; left: 0; right: 0; height: 14px; }
.m-nav__item--has-menu:hover .m-nav__dropdown,
.m-nav__item--has-menu:focus-within .m-nav__dropdown { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.m-nav__item--has-menu.is-collapsed .m-nav__dropdown { opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(6px); }
@media (prefers-reduced-motion: reduce) { .m-nav__dropdown { transition: none; } }
.m-nav__drop-link { display: flex; flex-direction: column; gap: 1px; padding: 10px 14px; border-radius: var(--radius-lg); border: 1px solid transparent; }
.m-nav__drop-link b { font-family: var(--font-heading); font-weight: var(--weight-medium); font-size: var(--text-sm); color: var(--text-primary); letter-spacing: -0.01em; }
.m-nav__drop-link span { font: var(--font-ui); font-size: var(--text-xs); color: var(--text-secondary); }
.m-nav__drop-link:hover, .m-nav__drop-link:focus-visible {
  background-color: rgba(255,255,255,0.60); background-image: var(--glass-sheen-soft);
  border-color: rgba(255,255,255,0.85); box-shadow: inset 0 1px 0 rgba(255,255,255,0.80);
}
.m-nav__drop-link:hover b, .m-nav__drop-link:focus-visible b { color: var(--color-brand-text); }
.m-nav__drop-sep { height: 1px; margin: var(--space-2) var(--space-2); background: var(--border-subtle); border: 0; }
.m-nav__drop-link--all b { color: var(--color-brand-active);  display: inline-flex; align-items: center; gap: 6px; }
@media (max-width: 980px) {
  .m-nav__item, .m-nav__item--has-menu { display: flex; flex-direction: column; width: 100%; }
  .m-nav__chev { display: none; }
  .m-nav__dropdown {
    position: static; opacity: 1; visibility: visible; pointer-events: auto; transform: none;
    margin: 2px 0 var(--space-2) var(--space-5); padding: 0; min-width: 0;
    background: none; -webkit-backdrop-filter: none; backdrop-filter: none; border: 0; box-shadow: none;
    border-left: 1px solid var(--border-subtle); border-radius: 0; padding-left: var(--space-4);
  }
  .m-nav__dropdown::before { display: none; }
  .m-nav__drop-link { padding: 8px 12px; }
  .m-nav__drop-link span { display: none; }
  .m-nav__drop-sep { display: none; }
}
.m-panel2__body .atp-badge { margin-bottom: var(--space-4); }
.m-panel2__cta { margin-top: var(--space-6); }
.m-audience__grid + .m-panel2, .m-measure__grid + .m-panel2 { margin-top: var(--rhythm-band); }
.m-servgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--rhythm-band); }
@media (max-width: 900px) { .m-servgrid { grid-template-columns: minmax(0, 1fr); } }
.m-servgrid .m-tool { height: 100%; }
.m-servgrid .m-tool .m-tool__top { margin-bottom: var(--space-2); }
.m-servgrid .m-tool .m-service-section__list { margin: 0; }
.m-servgrid .m-tool .m-tool__cta { margin-top: auto; padding-top: var(--space-2); }
.m-toolwall { display: flex; flex-direction: column; gap: var(--space-7); margin-top: var(--rhythm-block); }
.m-toolcat { display: flex; flex-direction: column; gap: var(--space-4); }
.m-toolcat__t { font: var(--font-h4); font-weight: var(--weight-medium); letter-spacing: -0.01em; color: var(--text-primary); margin: 0; }
.m-toolcat__tiles { display: flex; flex-wrap: wrap; gap: var(--space-4); }
.m-toolcat__tiles .m-ind { flex: 1 1 200px; max-width: 260px; cursor: default; box-shadow: var(--glass-rim-list); }
.m-toolcat__tiles .m-ind:hover { transform: translateY(-3px) scale(1.02); }
.m-toolcat__tiles .m-ind__name { font-size: var(--text-base); }
@media (max-width: 560px) { .m-toolcat__tiles .m-ind { flex-basis: 140px; max-width: none; } }
.m-toolcat__tiles .m-ind__name { overflow-wrap: anywhere; }
.m-confirm__mark svg { width: 34px; height: 34px; }
.m-cta__lead { font: var(--font-body-lg); color: rgba(255,255,255,0.94); max-width: 52ch; margin: var(--rhythm-element) auto var(--space-6); }
.m-cta__inner { max-width: var(--container-md); }
.m-cta__inner--wide { max-width: var(--container-lg); }
.m-cta__inner--wide .m-cta__lead { max-width: 64ch; }
