:root {
  --ink: #101820;
  --ink-2: #1d2933;
  --paper: #f4f0e8;
  --paper-2: #e9e2d6;
  --white: #fffdf9;
  --copper: #b75e20;
  --gold: #d69a3a;
  --gold-soft: #efd59b;
  --muted: #647078;
  --line: rgba(16,24,32,.16);
  --shell: min(1240px, calc(100% - 64px));
  --shadow: 0 24px 70px rgba(16,24,32,.14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; background: var(--paper); color: var(--ink); font-family: Inter, Arial, sans-serif; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
.shell { width: var(--shell); margin-inline: auto; }
.skip-link { position: fixed; top: -80px; left: 20px; z-index: 100; padding: 12px 16px; background: white; }
.skip-link:focus { top: 12px; }
.eyebrow, .section-index { margin: 0; color: var(--copper); font-size: .66rem; font-weight: 800; letter-spacing: .19em; text-transform: uppercase; }
.eyebrow span { display: inline-block; width: 7px; height: 7px; margin-right: 9px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 5px rgba(214,154,58,.14); }
h1, h2, h3, p { text-wrap: pretty; }
h1, h2, h3 { font-family: Manrope, Inter, sans-serif; }
h1 em, h2 em { color: var(--copper); font-style: normal; }
.section { padding: 116px 0; }
.section-tag { display: inline-block; margin-top: 25px; color: var(--muted); font-size: .59rem; font-weight: 700; letter-spacing: .16em; }

/* Navegación */
.site-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid var(--line); background: rgba(244,240,232,.94); backdrop-filter: blur(16px); }
.nav-wrap { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.brand { display: inline-flex; align-items: center; gap: 17px; flex: 0 0 auto; }
.brand-logo { width: 130px; height: 57px; object-fit: contain; object-position: left center; }
.brand-descriptor { padding-left: 17px; border-left: 1px solid var(--line); color: #4c565e; font-size: .48rem; font-weight: 800; line-height: 1.45; letter-spacing: .16em; }
.main-nav { display: flex; align-items: center; gap: 28px; color: #26313a; font-size: .76rem; font-weight: 700; }
.main-nav>a:not(.nav-cta) { padding-block: 10px; border-bottom: 1px solid transparent; }
.main-nav>a:not(.nav-cta):hover { border-color: var(--copper); }
.nav-cta { display: inline-flex; gap: 22px; align-items: center; padding: 13px 17px; border: 1px solid var(--ink); background: var(--ink); color: white; }
.nav-cta:hover { background: var(--copper); border-color: var(--copper); }
.menu-button { display: none; border: 0; background: transparent; color: var(--ink); font-weight: 800; }

/* Hero */
.home-hero { position: relative; padding: 56px 0 48px; background: radial-gradient(circle at 82% 0, rgba(214,154,58,.15), transparent 30%), var(--paper); }
.hero-layout { min-height: 640px; display: grid; grid-template-columns: .92fr 1.08fr; gap: 54px; align-items: center; }
.hero-content { position: relative; z-index: 2; }
.hero-content h1 { max-width: 690px; margin: 27px 0 25px; font-size: clamp(3.3rem, 5.8vw, 6rem); font-weight: 700; line-height: .94; letter-spacing: -.068em; }
.hero-lead { max-width: 650px; margin: 0 0 32px; color: #3e4a52; font-size: clamp(1rem, 1.4vw, 1.2rem); line-height: 1.67; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.button { min-height: 52px; display: inline-flex; justify-content: center; align-items: center; gap: 22px; padding: 14px 19px; border: 1px solid transparent; border-radius: 2px; font-size: .76rem; font-weight: 800; cursor: pointer; transition: transform .2s, background .2s, color .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--ink); color: white; }
.button-primary:hover { background: var(--copper); }
.button-secondary { border-color: var(--line); background: rgba(255,255,255,.35); }
.button-secondary:hover { border-color: var(--ink); background: white; }
.button-gold { width: 100%; background: var(--gold-soft); color: var(--ink); }
.button-gold:hover { background: var(--gold); }
.hero-assurance { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 38px; padding-top: 22px; border-top: 1px solid var(--line); }
.hero-assurance p { margin: 0; color: #4b565d; font-size: .66rem; font-weight: 650; line-height: 1.45; }
.hero-assurance b { display: block; margin-bottom: 7px; color: var(--copper); font-size: .56rem; letter-spacing: .1em; }
.hero-image { position: relative; min-height: 600px; margin: 0; overflow: hidden; background: #d9d1c6; box-shadow: var(--shadow); }
.hero-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,24,32,.08), transparent 48%), linear-gradient(0deg, rgba(16,24,32,.75), transparent 35%); }
.hero-image img { width: 100%; height: 600px; object-fit: cover; object-position: 56% center; }
.hero-image figcaption { position: absolute; z-index: 2; left: 28px; right: 28px; bottom: 25px; display: flex; justify-content: space-between; gap: 22px; align-items: end; color: white; }
.hero-image figcaption span { color: var(--gold-soft); font-size: .55rem; font-weight: 800; letter-spacing: .17em; }
.hero-image figcaption b { font-size: .7rem; }

.decision-strip { border-block: 1px solid var(--line); background: var(--white); }
.decision-grid { display: grid; grid-template-columns: 1.15fr repeat(3, 1fr); }
.decision-grid>* { min-height: 88px; display: flex; align-items: center; margin: 0; padding: 20px 25px; border-right: 1px solid var(--line); }
.decision-grid>*:first-child { padding-left: 0; color: var(--copper); font-size: .65rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.decision-grid>*:last-child { border-right: 0; }
.decision-grid a { justify-content: space-between; gap: 15px; font-size: .74rem; font-weight: 700; }
.decision-grid a:hover { background: var(--ink); color: white; }
.decision-grid a span { color: var(--copper); }

/* Encabezados editoriales */
.section-intro { display: grid; grid-template-columns: .35fr 1fr; gap: 70px; align-items: start; }
.section-intro h2 { max-width: 930px; margin: 0; font-size: clamp(2.8rem, 5vw, 5rem); font-weight: 650; line-height: .98; letter-spacing: -.06em; }
.section-intro>div:last-child>p { max-width: 720px; margin: 25px 0 0; color: var(--muted); font-size: 1rem; line-height: 1.75; }

/* Soluciones */
.solutions-section { background: var(--paper); }
.solution-list { margin-top: 70px; border-top: 1px solid var(--line); }
.solution-row { display: grid; grid-template-columns: 55px 1.15fr .9fr 90px; gap: 28px; align-items: center; min-height: 158px; padding: 24px 8px; border-bottom: 1px solid var(--line); transition: padding .25s, background .25s; }
.solution-row:hover { padding-inline: 24px; background: var(--white); }
.solution-row>span { color: var(--copper); font-size: .65rem; font-weight: 800; }
.solution-row h3 { margin: 0 0 10px; font-size: 1.65rem; line-height: 1.05; letter-spacing: -.04em; }
.solution-row p { max-width: 590px; margin: 0; color: var(--muted); font-size: .8rem; line-height: 1.6; }
.solution-row ul { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; color: #4e5960; font-size: .68rem; }
.solution-row li::before { content: '—'; margin-right: 8px; color: var(--gold); }
.solution-row>b { justify-self: end; font-size: .68rem; }
.solution-row>b i { margin-left: 7px; color: var(--copper); font-style: normal; }

/* Diagnóstico */
.diagnostic-section { background: var(--ink); color: white; }
.diagnostic-layout { display: grid; grid-template-columns: 1.05fr .95fr; gap: 90px; align-items: start; }
.section-index.light { color: var(--gold-soft); }
.diagnostic-copy h2 { max-width: 720px; margin: 26px 0; font-size: clamp(2.8rem, 4.7vw, 5rem); font-weight: 650; line-height: .99; letter-spacing: -.06em; }
.diagnostic-copy>p:not(.section-index) { max-width: 660px; color: rgba(255,255,255,.64); line-height: 1.75; }
.deliverable-list { margin-top: 42px; border-top: 1px solid rgba(255,255,255,.16); }
.deliverable-list>div { display: grid; grid-template-columns: 42px 1fr; gap: 18px; padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.16); }
.deliverable-list span { color: var(--gold); font-size: .62rem; font-weight: 800; }
.deliverable-list p { margin: 0; color: rgba(255,255,255,.56); font-size: .78rem; line-height: 1.5; }
.deliverable-list b { display: block; margin-bottom: 5px; color: white; font-size: .86rem; }
.diagnostic-card { padding: 32px; background: var(--white); color: var(--ink); box-shadow: var(--shadow); }
.diagnostic-card-head { display: flex; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid var(--line); color: var(--copper); font-size: .56rem; font-weight: 800; letter-spacing: .13em; }
.diagnostic-card>h3 { margin: 29px 0 25px; font-size: 1.55rem; line-height: 1.2; letter-spacing: -.035em; }

/* Formularios */
.contact-form label { display: grid; gap: 8px; margin-bottom: 16px; font-size: .67rem; font-weight: 750; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; padding: 13px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; outline: 0; background: transparent; color: var(--ink); font-weight: 400; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: var(--copper); }
.contact-form textarea { resize: vertical; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.consent { display: flex!important; align-items: flex-start; gap: 10px!important; font-weight: 400!important; line-height: 1.45; }
.consent input { width: auto; margin-top: 2px; }
.hp-field { position: absolute; left: -9999px; }
.form-note { margin: 13px 0 0; text-align: center; color: var(--muted); font-size: .62rem; }
.form-error { padding: 12px; border-left: 3px solid #b53b2d; background: #fff0ed; color: #7a2118; font-size: .75rem; }

/* Producto demostrable */
.proof-section { background: var(--paper-2); }
.proof-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 70px; align-items: center; }
.proof-copy h2 { margin: 24px 0; font-size: clamp(2.7rem, 4.4vw, 4.5rem); line-height: 1; letter-spacing: -.06em; }
.proof-copy>p:not(.section-index) { color: var(--muted); line-height: 1.72; }
.check-list { display: grid; gap: 12px; margin: 28px 0 35px; padding: 0; list-style: none; font-size: .78rem; font-weight: 650; }
.check-list li::before { content: '✓'; margin-right: 10px; color: var(--copper); }
.product-window { overflow: hidden; border: 1px solid rgba(255,255,255,.12); background: #161c22; color: white; box-shadow: var(--shadow); }
.window-bar { height: 48px; display: flex; align-items: center; gap: 7px; padding: 0 17px; border-bottom: 1px solid rgba(255,255,255,.12); }
.window-bar>span { width: 7px; height: 7px; border-radius: 50%; background: #8c9499; }
.window-bar>span:first-child { background: var(--copper); }.window-bar>span:nth-child(2) { background: var(--gold); }
.window-bar b { margin-left: auto; color: rgba(255,255,255,.48); font-size: .52rem; letter-spacing: .1em; }
.window-body { padding: 20px; }
.window-nav { display: flex; justify-content: space-between; align-items: center; padding: 12px 14px; background: white; color: var(--ink); font-size: .67rem; }
.window-nav small { padding: 5px 7px; background: var(--gold-soft); font-size: .47rem; font-weight: 800; }
.window-title { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: end; padding: 34px 10px 27px; }
.window-title small { color: #ed9d72; font-size: .5rem; font-weight: 800; letter-spacing: .14em; }
.window-title h3 { max-width: 420px; margin: 10px 0 0; font-size: 1.8rem; line-height: 1.05; }
.window-title>b { color: var(--gold); font-size: 3.5rem; line-height: 1; }.window-title>b small { color: rgba(255,255,255,.4); font-size: .7rem; }
.window-metrics { display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid rgba(255,255,255,.13); }
.window-metrics>div { min-height: 85px; display: grid; align-content: center; gap: 7px; padding: 12px; border-right: 1px solid rgba(255,255,255,.13); }
.window-metrics>div:last-child { border-right: 0; }.window-metrics span { color: rgba(255,255,255,.5); font-size: .53rem; }.window-metrics b { font-size: 1.2rem; }
.window-content { display: grid; grid-template-columns: 1.25fr .75fr; gap: 18px; padding: 24px 10px 8px; }
.window-content>div { padding: 18px; background: #23191d; }.window-content>div>span { color: #f08eac; font-size: .49rem; font-weight: 800; }.window-content h4 { margin: 18px 0 10px; font-size: .98rem; line-height: 1.3; }.window-content p { margin: 0; color: rgba(255,255,255,.53); font-size: .6rem; }
.window-content ol { display: grid; gap: 1px; margin: 0; padding: 0; list-style: none; background: rgba(255,255,255,.13); }.window-content li { padding: 13px; background: #1b2229; font-size: .6rem; }.window-content li b { margin-right: 8px; color: var(--gold); }

/* Resultados y método */
.outcomes-section { background: var(--paper); }
.outcomes-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 65px; border-block: 1px solid var(--line); }
.outcomes-grid article { min-height: 285px; padding: 27px 25px; border-right: 1px solid var(--line); }
.outcomes-grid article:first-child { padding-left: 0; }.outcomes-grid article:last-child { border-right: 0; }
.outcomes-grid span { color: var(--copper); font-size: .62rem; font-weight: 800; }.outcomes-grid h3 { margin: 82px 0 17px; font-size: 1.35rem; }.outcomes-grid p { margin: 0; color: var(--muted); font-size: .76rem; line-height: 1.65; }
.method-section { background: var(--ink); color: white; }
.method-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 75px; align-items: stretch; }
.method-visual { position: relative; min-height: 650px; overflow: hidden; }
.method-visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(16,24,32,.85), transparent 60%); }
.method-visual img { width: 100%; height: 100%; object-fit: cover; }
.method-visual>div { position: absolute; z-index: 2; left: 30px; right: 30px; bottom: 30px; }
.method-visual span { color: var(--gold-soft); font-size: .55rem; font-weight: 800; letter-spacing: .16em; }.method-visual strong { display: block; margin-top: 12px; font: 650 2.25rem/1.05 Manrope, sans-serif; }
.method-copy { padding-block: 20px; }
.method-copy h2 { margin: 25px 0 50px; font-size: clamp(2.7rem, 4vw, 4.25rem); line-height: 1; letter-spacing: -.06em; }
.method-copy ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.15); }
.method-copy li { display: grid; grid-template-columns: 52px 1fr; gap: 18px; padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,.15); }
.method-copy li>span { color: var(--gold); font-size: .62rem; font-weight: 800; }.method-copy b { font-size: .87rem; }.method-copy p { margin: 5px 0 0; color: rgba(255,255,255,.55); font-size: .72rem; }

/* Grupo, FAQ y contacto */
.group-section { background: var(--paper-2); }
.group-layout { display: grid; grid-template-columns: 1.05fr .95fr; gap: 100px; }
.group-layout h2 { max-width: 720px; margin: 25px 0 0; font-size: clamp(2.8rem, 4.8vw, 5rem); line-height: 1; letter-spacing: -.06em; }
.group-layout>div:last-child>p { margin: 52px 0 35px; color: var(--muted); font-size: 1rem; line-height: 1.8; }.group-layout blockquote { margin: 0; padding: 23px 0 23px 24px; border-left: 3px solid var(--copper); font: 650 1.35rem/1.45 Manrope, sans-serif; }
.capability-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 65px; padding-top: 25px; border-top: 1px solid var(--line); }.capability-chips span { padding: 11px 15px; border: 1px solid var(--line); background: rgba(255,255,255,.3); font-size: .65rem; font-weight: 700; }
.faq-section { background: var(--paper); }
.faq-layout { display: grid; grid-template-columns: .65fr 1.35fr; gap: 100px; }.faq-layout h2 { margin: 23px 0 0; font-size: 3.5rem; letter-spacing: -.06em; }
.faq-list { border-top: 1px solid var(--line); }.faq-list details { border-bottom: 1px solid var(--line); }.faq-list summary { display: flex; justify-content: space-between; gap: 30px; padding: 24px 0; cursor: pointer; list-style: none; font-family: Manrope, sans-serif; font-size: 1rem; font-weight: 700; }.faq-list summary::-webkit-details-marker { display: none; }.faq-list summary span { color: var(--copper); font-size: 1.2rem; }.faq-list details[open] summary span { transform: rotate(45deg); }.faq-list details p { max-width: 700px; margin: -5px 0 25px; color: var(--muted); font-size: .82rem; line-height: 1.7; }
.contact-section, .solution-contact { background: #15222c; color: white; }
.contact-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
.contact-copy h2 { margin: 25px 0; font-size: clamp(2.8rem, 4.5vw, 4.8rem); line-height: 1; letter-spacing: -.06em; }.contact-copy>p:not(.section-index) { max-width: 580px; color: rgba(255,255,255,.6); line-height: 1.75; }.contact-links { display: grid; justify-items: start; gap: 11px; margin-top: 30px; }.contact-links a { padding-bottom: 4px; border-bottom: 1px solid var(--gold); color: var(--gold-soft); font-size: .77rem; }
.contact-panel { padding: 34px; background: var(--white); color: var(--ink); box-shadow: var(--shadow); }

/* Footer */
.site-footer { padding: 65px 0 26px; border-top: 1px solid rgba(183,94,32,.25); background: linear-gradient(135deg, #ecd5a8, #f5ead5 58%, #e9deca); }
.footer-main { display: grid; grid-template-columns: 1.4fr 1fr .8fr; gap: 70px; }
.footer-brand img { width: 150px; height: 68px; object-fit: contain; object-position: left center; }.footer-brand p { max-width: 470px; margin: 22px 0 0; color: #536067; font-size: .78rem; line-height: 1.7; }
.footer-column { display: grid; align-content: start; justify-items: start; gap: 11px; }.footer-column strong { margin-bottom: 8px; color: var(--copper); font-size: .6rem; letter-spacing: .16em; text-transform: uppercase; }.footer-column a { font-size: .72rem; }.footer-column a:hover { text-decoration: underline; }
.footer-bottom { display: flex; justify-content: space-between; gap: 25px; margin-top: 55px; padding-top: 22px; border-top: 1px solid var(--line); color: #687178; font-size: .61rem; }
.whatsapp-float { position: fixed; z-index: 45; right: 18px; bottom: 18px; display: flex; gap: 13px; align-items: center; padding: 13px 15px; border: 1px solid rgba(255,255,255,.3); background: #1b6339; color: white; box-shadow: 0 12px 35px rgba(0,0,0,.2); font-size: .68rem; font-weight: 800; }.whatsapp-float b { color: #cfe7d9; }

/* Páginas de solución */
.solution-hero { padding: 85px 0 90px; background: radial-gradient(circle at 85% 10%, rgba(214,154,58,.19), transparent 28%), var(--paper); }
.solution-hero-grid { min-height: 610px; display: grid; grid-template-columns: 1.35fr .65fr; gap: 80px; align-items: center; }.breadcrumb { display: inline-block; margin-bottom: 45px; color: var(--muted); font-size: .67rem; font-weight: 700; }.solution-hero h1 { max-width: 890px; margin: 27px 0; font-size: clamp(3.2rem, 6vw, 6.3rem); line-height: .95; letter-spacing: -.07em; }.solution-promise { align-self: stretch; display: flex; flex-direction: column; justify-content: flex-end; padding: 35px; background: var(--ink); color: white; }.solution-promise>span { color: var(--gold); font-size: .58rem; font-weight: 800; letter-spacing: .16em; }.solution-promise p { margin: 25px 0 auto; font: 650 1.8rem/1.24 Manrope, sans-serif; }.solution-promise small { color: rgba(255,255,255,.48); font-size: .62rem; }
.solution-section-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; }.solution-section-grid h2 { max-width: 580px; margin: 23px 0 0; font-size: clamp(2.7rem, 4vw, 4.3rem); line-height: 1; letter-spacing: -.06em; }.problem-stack { border-top: 1px solid var(--line); }.problem-stack article { display: grid; grid-template-columns: 50px 1fr; gap: 20px; padding: 29px 0; border-bottom: 1px solid var(--line); }.problem-stack span { color: var(--copper); font-size: .62rem; font-weight: 800; }.problem-stack p { margin: 0; font: 600 1.25rem/1.45 Manrope, sans-serif; }
.solution-includes { background: var(--ink); color: white; }.inclusion-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 65px; border-block: 1px solid rgba(255,255,255,.16); }.inclusion-grid article { min-height: 310px; padding: 27px 24px; border-right: 1px solid rgba(255,255,255,.16); }.inclusion-grid article:first-child { padding-left: 0; }.inclusion-grid article:last-child { border-right: 0; }.inclusion-grid span { color: var(--gold); font-size: .61rem; font-weight: 800; }.inclusion-grid h3 { margin: 75px 0 18px; font-size: 1.25rem; line-height: 1.2; }.inclusion-grid p { margin: 0; color: rgba(255,255,255,.5); font-size: .68rem; line-height: 1.65; }
.solution-outcomes { background: var(--paper-2); }.outcome-banner { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 40px; background: var(--white); box-shadow: var(--shadow); }.outcome-banner>div { min-height: 190px; padding: 28px; border-right: 1px solid var(--line); }.outcome-banner>div:last-child { border-right: 0; }.outcome-banner span { color: var(--copper); }.outcome-banner h3 { margin: 55px 0 0; font-size: 1.35rem; }
.solution-method-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }.solution-method-grid h2 { margin: 25px 0 0; font-size: clamp(2.7rem, 4vw, 4.2rem); line-height: 1; letter-spacing: -.06em; }.solution-method ol { margin: 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }.solution-method li { display: grid; grid-template-columns: 50px 1fr; gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--line); }.solution-method li>span { color: var(--copper); font-size: .62rem; font-weight: 800; }.solution-method b { font-size: .9rem; }.solution-method li p { margin: 5px 0 0; color: var(--muted); font-size: .72rem; }
.not-found { min-height: 70vh; display: grid; place-items: center; padding: 100px 0; }.not-found h1 { max-width: 800px; margin: 25px 0 35px; font-size: clamp(3rem, 7vw, 6rem); line-height: .95; letter-spacing: -.06em; }

/* Estados y movimiento */
.reveal { opacity: 1; transform: none; }
@media (prefers-reduced-motion: no-preference) { .reveal { animation: reveal-in .55s ease both; animation-timeline: view(); animation-range: entry 0 entry 28%; }.reveal.is-visible { animation: none; } }
@keyframes reveal-in { from { opacity: .25; transform: translateY(14px); } to { opacity: 1; transform: none; } }

@media (max-width: 1000px) {
  :root { --shell: min(100% - 38px, 800px); }
  .menu-button { display: flex; align-items: center; gap: 10px; }
  .menu-button i { width: 18px; height: 1px; background: currentColor; box-shadow: 0 5px 0 currentColor; }
  .main-nav { display: none; position: absolute; top: 86px; left: 0; right: 0; padding: 24px; flex-direction: column; align-items: stretch; background: var(--paper); border-bottom: 1px solid var(--line); }.main-nav.is-open { display: flex; }
  .hero-layout, .diagnostic-layout, .proof-layout, .method-layout, .group-layout, .contact-layout, .solution-hero-grid, .solution-section-grid, .solution-method-grid { grid-template-columns: 1fr; }
  .hero-layout { padding-top: 35px; }.hero-image { min-height: 520px; }.hero-image img { height: 520px; }
  .decision-grid { grid-template-columns: 1fr 1fr; }.decision-grid>*:first-child { grid-column: 1/-1; min-height: 60px; border-bottom: 1px solid var(--line); }.decision-grid>*:nth-child(3) { border-right: 0; }
  .section-intro { grid-template-columns: 1fr; gap: 30px; }.solution-row { grid-template-columns: 45px 1fr 80px; }.solution-row ul { display: none; }
  .outcomes-grid, .inclusion-grid { grid-template-columns: 1fr 1fr; }.outcomes-grid article:nth-child(2), .inclusion-grid article:nth-child(2) { border-right: 0; }.outcomes-grid article:nth-child(-n+2), .inclusion-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .faq-layout { grid-template-columns: 1fr; gap: 45px; }.footer-main { grid-template-columns: 1.2fr 1fr; }.footer-column:last-child { grid-column: 2; }.solution-promise { min-height: 330px; }.solution-hero-grid { min-height: auto; }
}

@media (max-width: 620px) {
  :root { --shell: calc(100% - 28px); }
  .section { padding: 82px 0; }.nav-wrap { min-height: 76px; }.main-nav { top: 76px; }.brand-logo { width: 112px; height: 50px; }.brand-descriptor { display: none; }
  .home-hero { padding-top: 34px; }.hero-layout { min-height: 0; gap: 42px; }.hero-content h1 { font-size: clamp(3.1rem, 15.6vw, 4.5rem); }.hero-lead { font-size: .98rem; }.hero-actions { align-items: stretch; flex-direction: column; }.hero-actions .button { width: 100%; }.hero-assurance { grid-template-columns: 1fr; gap: 12px; }.hero-assurance p { display: grid; grid-template-columns: 28px 1fr; }.hero-assurance b { display: inline; }
  .hero-image, .hero-image img { min-height: 420px; height: 420px; }.hero-image img { object-position: 64% center; }.hero-image figcaption { align-items: start; flex-direction: column; }
  .decision-grid { grid-template-columns: 1fr; }.decision-grid>* { min-height: 66px; padding-inline: 14px; border-right: 0; border-bottom: 1px solid var(--line); }.decision-grid>*:first-child { grid-column: auto; padding-left: 14px; }.decision-grid>*:last-child { border-bottom: 0; }
  .section-intro h2, .diagnostic-copy h2, .proof-copy h2, .method-copy h2, .group-layout h2, .contact-copy h2 { font-size: 2.85rem; }
  .solution-row { grid-template-columns: 30px 1fr; gap: 16px; padding-block: 27px; }.solution-row>b { grid-column: 2; justify-self: start; }.solution-row:hover { padding-inline: 8px; }.solution-row h3 { font-size: 1.35rem; }
  .diagnostic-layout, .proof-layout, .method-layout, .group-layout, .contact-layout { gap: 50px; }.diagnostic-card, .contact-panel { padding: 23px 18px; }
  .form-row { grid-template-columns: 1fr; gap: 0; }.window-title { grid-template-columns: 1fr; }.window-title>b { font-size: 2.8rem; }.window-content { grid-template-columns: 1fr; }.window-metrics span { font-size: .45rem; }.window-metrics b { font-size: .88rem; }
  .outcomes-grid, .inclusion-grid, .outcome-banner { grid-template-columns: 1fr; }.outcomes-grid article, .outcomes-grid article:first-child, .inclusion-grid article, .inclusion-grid article:first-child { min-height: 230px; padding: 25px 0; border-right: 0; border-bottom: 1px solid var(--line); }.outcomes-grid h3, .inclusion-grid h3 { margin-top: 55px; }.method-visual { min-height: 470px; }.group-layout blockquote { font-size: 1.12rem; }.faq-layout h2 { font-size: 2.7rem; }
  .footer-main { grid-template-columns: 1fr; gap: 40px; }.footer-column:last-child { grid-column: auto; }.footer-bottom { align-items: flex-start; flex-direction: column; }.whatsapp-float { padding: 11px 13px; }
  .solution-hero { padding-top: 55px; }.solution-hero-grid { gap: 45px; }.solution-hero h1 { font-size: clamp(3rem, 14vw, 4.4rem); }.solution-promise { min-height: 280px; padding: 25px; }.problem-stack p { font-size: 1.05rem; }.solution-method-grid { gap: 45px; }
}
