*{margin:0;padding:0;box-sizing:border-box}
:root{--black:#051820;--g900:#082530;--g800:#0A3040;--g700:#164050;--g600:#2A6070;--g500:#408A95;--g400:#60AAB5;--g300:#90CCD5;--g200:#C0E5EA;--g100:#E0F5F7;--g50:#F0FBFC;--white:#fff;
--accent:#0097A7;--accent-dk:#00838F;--accent-light:#E0F7FA;--accent2:#00BFA5;--accent2-light:#E0F2F1}
html{scroll-behavior:smooth}
body{font-family:'Barlow',sans-serif;color:var(--g700);line-height:1.6;background:var(--white);font-size:16px;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Barlow',sans-serif;color:var(--g900);font-weight:700;line-height:1.15}
img{display:block;max-width:100%}
.crp-w{max-width:1200px;margin:0 auto;padding:0 2rem}
.crp-ey{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem}
.crp-sec-hd{text-align:center;max-width:640px;margin:0 auto 3.5rem}
.crp-sec-hd h2{font-size:2.25rem;margin-bottom:1rem;letter-spacing:-.5px}
.crp-sec-hd p{color:var(--g500);line-height:1.7}
header{position:fixed;top:0;left:0;right:0;background:rgba(240,251,252,0.98);z-index:1000;border-bottom:none;transition:box-shadow .3s;margin:10px 20px 0;border-radius:8px;box-shadow:0 2px 20px rgba(0,151,167,0.10)}
header.scrolled{box-shadow:0 2px 20px rgba(0,151,167,0.12)}
.crp-hdr{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}
.logo{text-decoration:none;display:flex;align-items:center;gap:.75rem}.crp-logo{font-size:1.1rem;font-weight:700;color:var(--g900)}.crp-logo-img{height:52px;width:auto;display:block;border-radius:6px}.crp-ftr-logo-img{height:52px;width:auto;border-radius:6px}
nav{display:flex;gap:1.75rem;align-items:center}
nav a{text-decoration:none;color:var(--g600);font-weight:500;font-size:.85rem;transition:color .2s}
nav a:hover{color:var(--black)}
.crp-btn-hdr{background:var(--accent);color:var(--white)!important;padding:.6rem 1.4rem;border-radius:50px;font-size:.85rem;font-weight:600;transition:background .2s}
.crp-btn-hdr:hover{background:var(--accent-dk)}
.menu-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.menu-toggle span{width:22px;height:2px;background:var(--g800)}
@media(max-width:768px){
.menu-toggle{display:flex}
nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;padding:1rem;border-top:1px solid var(--g200);box-shadow:0 10px 30px rgba(0,0,0,.1)}
nav.active{display:flex}nav a{padding:.875rem 0;border-bottom:1px solid var(--g100)}
.crp-btn-hdr{width:100%;text-align:center;justify-content:center;margin-top:.5rem}
.crp-hdr{position:relative}
}

/* ============================================
   SMOKPRO — Estilos de secciones
   ============================================ */

/* Botones */
.crp-btn-blk{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 2rem;background:var(--accent);color:var(--white);font-weight:600;font-size:.9rem;border-radius:8px;text-decoration:none;transition:background .2s,transform .2s}
.crp-btn-blk:hover{background:var(--accent-dk);transform:translateY(-2px)}
.crp-btn-out{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 2rem;background:transparent;color:var(--g700);font-weight:600;font-size:.9rem;border-radius:8px;border:1.5px solid var(--g300);text-decoration:none;transition:all .2s}
.crp-btn-out:hover{border-color:var(--black);color:var(--black)}

/* Hero */
.crp-hero{display:flex;align-items:center;gap:4rem;padding:8rem 4rem 5rem;min-height:100vh;max-width:1200px;margin:0 auto}
.crp-hero-inner{flex:1;max-width:560px}
.crp-hero-inner h1{font-size:clamp(2.4rem,4.5vw,3.75rem);letter-spacing:-1.5px;line-height:1.08;margin-bottom:1.25rem}
.crp-hero-inner p{font-size:1.08rem;color:var(--g600);line-height:1.75;margin-bottom:2rem;max-width:460px}
.crp-hero-btns{display:flex;gap:1rem;flex-wrap:wrap}
.crp-hero-img{flex:1;max-width:580px}
.crp-hero-img img{width:100%;height:520px;object-fit:cover;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.13)}

/* About */
.crp-about{padding:6rem 0;background:#F0FBFC;border-top:1px solid var(--g200);border-bottom:1px solid var(--g200)}
.crp-about-top{margin-bottom:2.5rem}
.crp-about-top h2{font-size:2.25rem;letter-spacing:-.5px}
.crp-about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:5rem;align-items:center}
.crp-about-txt p{font-size:1.05rem;color:var(--g600);line-height:1.85}
.crp-about-nums{display:flex;flex-direction:column}
.crp-about-nums>div{display:flex;align-items:baseline;gap:.75rem;padding:1.75rem 0;border-bottom:1px solid var(--g200)}
.crp-about-nums>div:first-child{padding-top:0}
.crp-about-nums>div:last-child{border-bottom:none;padding-bottom:0}
.crp-about-nums strong{font-size:3rem;font-weight:800;color:var(--accent);line-height:1}
.crp-about-nums span{font-size:.78rem;color:var(--g500);text-transform:uppercase;letter-spacing:1px;font-weight:600}

/* MVV */
.crp-mvv{padding:6rem 0;background:var(--white);border-bottom:1px solid var(--g200)}
.crp-mvv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.crp-mvv-box{padding:2.5rem 2rem;border:1px solid var(--g200);border-top:3px solid var(--accent);background:var(--g50);transition:transform .3s,box-shadow .3s}
.crp-mvv-box:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,.07)}
.crp-mvv-ic{width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;background:var(--accent-light);border-radius:14px}
.crp-mvv-ic svg{width:24px;height:24px;color:var(--accent)}
.crp-mvv-box h3{font-size:1.1rem;margin-bottom:.75rem}
.crp-mvv-box p{font-size:.9rem;color:var(--g600);line-height:1.72}

/* Beneficios */
.crp-benef{padding:6rem 0;background:var(--g50);border-bottom:1px solid var(--g200)}
.crp-benef-list{display:flex;flex-direction:column}
.crp-bl{display:grid;grid-template-columns:72px 1fr;gap:2rem;align-items:flex-start;padding:2.5rem 0;border-bottom:1px solid var(--g200);transition:padding-left .25s}
.crp-bl:first-child{padding-top:0}
.crp-bl:last-child{border-bottom:none}
.crp-bl:hover{padding-left:.625rem}
.crp-bl>strong{font-size:3.25rem;font-weight:800;color:var(--g200);line-height:1;transition:color .3s;padding-top:.1rem}
.crp-bl:hover>strong{color:var(--black)}
.crp-bl h3{font-size:1.1rem;margin-bottom:.5rem}
.crp-bl p{font-size:.92rem;color:var(--g600);line-height:1.7}

/* Servicios */
.crp-serv{padding:6rem 0;background:#E0F5F7;border-bottom:1px solid var(--g200)}
.crp-serv-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.crp-scol{border-radius:16px;overflow:hidden;border:1px solid var(--g200);background:var(--g50);transition:transform .3s,box-shadow .3s}
.crp-scol:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,0,0,.09)}
.crp-scol img{width:100%;height:240px;object-fit:cover;transition:transform .5s}
.crp-scol:hover img{transform:scale(1.04)}
.crp-scol h3{font-size:1.1rem;padding:1.5rem 1.5rem .5rem}
.crp-scol p{font-size:.9rem;color:var(--g600);padding:0 1.5rem 1.75rem;line-height:1.65}

/* Sectores */
.crp-sect{padding:6rem 0;background:var(--g800)}
.crp-sect .crp-ey{color:var(--g500)}
.crp-sect .crp-sec-hd h2{color:var(--white)}
.crp-sect-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.crp-sl{display:flex;gap:1.5rem;align-items:flex-start;padding:2.25rem 2rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;transition:background .3s,transform .3s}
.crp-sl:hover{background:rgba(255,255,255,.08);transform:translateY(-4px)}
.crp-sl-ic{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border-radius:8px}
.crp-sl-ic svg{width:22px;height:22px;color:var(--g300)}
.crp-sl h3{color:var(--white);font-size:1rem;margin-bottom:.4rem}
.crp-sl p{font-size:.88rem;color:var(--g400);line-height:1.65}

/* Cifras */
.crp-cifras{background:var(--black)}
.crp-cifras .crp-w{padding-top:0;padding-bottom:0}
.crp-cifras-bar{display:grid;grid-template-columns:repeat(3,1fr)}
.crp-cfb{text-align:center;padding:4.5rem 2rem;border-right:1px solid rgba(255,255,255,.08)}
.crp-cfb:last-child{border-right:none}
.crp-cfb strong{display:block;font-size:3.5rem;font-weight:800;color:var(--white);line-height:1;margin-bottom:.5rem}
.crp-cfb span{font-size:.72rem;color:var(--g500);text-transform:uppercase;letter-spacing:1.5px}

/* CTA */
.crp-cta{padding:5rem 0;background:var(--g50);border-bottom:1px solid var(--g200)}
.crp-cta-card{background:var(--black);border-radius:20px;padding:4.5rem 3rem;text-align:center}
.crp-cta-card h2{color:var(--white);font-size:2.25rem;margin-bottom:.875rem;letter-spacing:-.5px}
.crp-cta-card p{color:var(--g400);margin-bottom:2.25rem;font-size:1.05rem}
.crp-cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.crp-cta-btns .crp-btn-blk{background:var(--white);color:var(--black)}
.crp-cta-btns .crp-btn-blk:hover{background:var(--g100)}
.crp-cta-btns .crp-btn-out{color:var(--g300);border-color:rgba(255,255,255,.2)}
.crp-cta-btns .crp-btn-out:hover{color:var(--white);border-color:var(--white)}

/* Contacto */
.crp-contact{padding:6rem 0;background:var(--white)}
.crp-cnt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.crp-cg{display:flex;flex-direction:column;gap:.6rem;padding:2.5rem 2rem;background:var(--g50);border:1px solid var(--g200);border-radius:16px;transition:transform .3s,box-shadow .3s}
.crp-cg:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,.06)}
.crp-cg-ic{width:48px;height:48px;background:var(--accent2);border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}
.crp-cg-ic svg{width:22px;height:22px;color:var(--white)}
.crp-cg strong{font-size:.68rem;text-transform:uppercase;letter-spacing:2px;color:var(--g400)}
.crp-cg p{font-size:.92rem;color:var(--g700);line-height:1.6}
.crp-cg a{color:var(--black);font-size:.95rem;font-weight:600;text-decoration:none}
.crp-cg a:hover{color:var(--g600)}

/* Footer */
.crp-footer{background:#051820;padding:3rem 0;text-align:center}
.crp-ftr-inner{display:flex;flex-direction:column;align-items:center;gap:1.5rem}
.crp-footer .crp-logo{color:var(--white);font-size:1.3rem}
.crp-ftr-nav{display:flex;gap:2rem}
.crp-ftr-nav a{color:var(--g500);text-decoration:none;font-size:.88rem;transition:color .2s}
.crp-ftr-nav a:hover{color:var(--white)}
.crp-footer p{color:var(--g600);font-size:.82rem;margin:0}

/* Responsive — 1024px */
@media(max-width:1024px){
  .crp-hero{flex-direction:column;min-height:auto;padding:8rem 2rem 5rem;gap:3rem}
  .crp-hero-inner{max-width:100%}
  .crp-hero-img{max-width:100%;width:100%}
  .crp-hero-img img{height:400px}
  .crp-about-grid{grid-template-columns:1fr;gap:3rem}
  .crp-mvv-grid,.crp-serv-cols,.crp-sect-list,.crp-cnt-grid{grid-template-columns:1fr 1fr}
  .crp-cifras-bar{grid-template-columns:1fr 1fr}
  .crp-cfb{border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}
  .crp-cfb:nth-child(2){border-right:none}
  .crp-cfb:last-child{border-bottom:none}
}

/* Responsive — 768px */
@media(max-width:768px){
  .crp-hero{padding:7rem 1.5rem 4rem}
  .crp-hero-inner h1{font-size:2.25rem}
  .crp-hero-img img{height:280px;border-radius:16px}
  .crp-mvv-grid,.crp-serv-cols,.crp-sect-list,.crp-cnt-grid{grid-template-columns:1fr}
  .crp-cifras-bar{grid-template-columns:1fr 1fr}
  .crp-hero-btns,.crp-cta-btns{flex-direction:column}
  .crp-btn-blk,.crp-btn-out{width:100%}
  .crp-cta-card{padding:3rem 1.5rem;border-radius:18px}
  .crp-cta-card h2{font-size:1.75rem}
  .crp-ftr-inner{flex-direction:column;text-align:center}
  .crp-ftr-nav{flex-wrap:wrap;justify-content:center;gap:.75rem}
  .crp-bl{grid-template-columns:56px 1fr;gap:1.25rem}
}

/* PAGES 13-17 — All new section variants */
*{margin:0;padding:0;box-sizing:border-box}
:root{--black:#051820;--g900:#082530;--g800:#0A3040;--g700:#164050;--g600:#2A6070;--g500:#408A95;--g400:#60AAB5;--g300:#90CCD5;--g200:#C0E5EA;--g100:#E0F5F7;--g50:#F0FBFC;--white:#fff;
--accent:#0097A7;--accent-dk:#00838F;--accent-light:#E0F7FA;--accent2:#00BFA5;--accent2-light:#E0F2F1}
html{scroll-behavior:smooth}
body{font-family:'Barlow',sans-serif;color:var(--g700);line-height:1.6;background:var(--white);font-size:16px;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Barlow',sans-serif;color:var(--g900);font-weight:700;line-height:1.15}
img{display:block;max-width:100%}
.wrap{max-width:1200px;margin:0 auto;padding:0 2rem}
.ey{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem}
.sec-hd{text-align:center;max-width:640px;margin:0 auto 3.5rem}
.sec-hd h2{font-size:2.25rem;margin-bottom:1rem;letter-spacing:-.5px}
.sec-hd p{color:var(--g500);line-height:1.7}

/* Header */
header{position:fixed;top:0;left:0;right:0;background:rgba(240,251,252,0.98);z-index:1000;border-bottom:none;transition:box-shadow .3s;margin:10px 20px 0;border-radius:8px;box-shadow:0 2px 20px rgba(0,151,167,0.10)}
header.scrolled{box-shadow:0 2px 20px rgba(0,151,167,0.12)}
.hdr-wrap{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}
.logo{text-decoration:none}.logo-t{font-size:1.1rem;font-weight:700;color:var(--g900)}
nav{display:flex;gap:1.75rem;align-items:center}
nav a{text-decoration:none;color:var(--g600);font-weight:500;font-size:.85rem;transition:color .2s}
nav a:hover{color:var(--black)}
.btn-hdr{background:var(--accent);color:var(--white)!important;padding:.6rem 1.4rem;border-radius:50px;font-size:.85rem;font-weight:600;transition:background .2s}
.btn-hdr:hover{background:var(--accent-dk)}
.menu-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.menu-toggle span{width:22px;height:2px;background:var(--g800)}

/* Buttons */
.btn-w{display:inline-flex;padding:1rem 2rem;background:var(--white);color:var(--black);font-weight:600;border-radius:8px;text-decoration:none;font-size:.95rem;transition:all .3s;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.btn-w:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.12)}
.btn-ghost{display:inline-flex;padding:1rem 2rem;background:transparent;color:var(--white);border:2px solid rgba(255,255,255,.3);font-weight:600;border-radius:8px;text-decoration:none;font-size:.95rem;transition:all .3s}
.btn-ghost:hover{border-color:rgba(255,255,255,.7)}
.btn-blk-pill{display:inline-flex;padding:.9rem 2rem;background:var(--accent);color:var(--white);font-weight:600;border-radius:50px;text-decoration:none;font-size:.95rem;transition:all .3s}
.btn-blk-pill:hover{background:var(--accent-dk);transform:translateY(-2px)}
.hro-btns{display:flex;gap:1rem;flex-wrap:wrap}

/* ========= PAGE 13 ========= */
/* Hero: Gradient text */
.hro-grad{background:linear-gradient(135deg,#051820 0%,#0A3040 50%,#082530 100%);min-height:100vh;display:flex;align-items:center;padding:6rem 2rem}
.hro-grad-inner{max-width:800px;margin:0 auto;text-align:center}
.hro-grad h1{font-size:clamp(3rem,8vw,5.5rem);color:var(--white);letter-spacing:-2px;margin-bottom:1.5rem;line-height:1;background:linear-gradient(180deg,#fff 0%,#60AAB5 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hro-grad p{font-size:1.15rem;color:var(--g400);max-width:550px;margin:0 auto 2.5rem;line-height:1.7}

/* About: Mosaic */
.abt-mosaic{padding:6rem 2rem;border-bottom:1px solid var(--g200)}
.abt-mosaic-g{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.abt-mosaic-txt h2{font-size:2.25rem;margin-bottom:1rem}
.abt-mosaic-txt p{color:var(--g600);line-height:1.8}
.abt-mosaic-imgs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.abt-mosaic-imgs img{border-radius:14px;object-fit:cover;height:200px;width:100%}
.mos-1{grid-row:span 2;height:100%!important}

/* MVV: Tabs */
.mvv-tabs{padding:6rem 2rem;background:var(--g50)}
.tabs-row{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.tab-block{padding:2.5rem;border:1px solid var(--g200);border-top:4px solid var(--accent);background:var(--white);transition:transform .3s,box-shadow .3s}
.tab-block:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,.06)}
.tab-top{font-size:.7rem;text-transform:uppercase;letter-spacing:2px;color:var(--g500);font-weight:600;margin-bottom:1rem}
.tab-block p{font-size:.9rem;color:var(--g600);line-height:1.65}

/* Beneficios: Circle icons */
.bnf-circles{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.circles-g{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}
.circle-card{text-align:center;padding:2rem 1.5rem;transition:transform .3s}
.circle-card:hover{transform:translateY(-4px)}
.circle-ic{width:64px;height:64px;border:2px solid var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;transition:all .3s}
.circle-ic svg{width:28px;height:28px;color:var(--accent)}
.circle-card:hover .circle-ic{background:var(--accent)}
.circle-card:hover .circle-ic svg{color:var(--white)}
.circle-card h3{font-size:1rem;margin-bottom:.5rem}
.circle-card p{font-size:.88rem;color:var(--g600);line-height:1.6}

/* Servicios: Wide rows */
.srv-wide{padding:6rem 2rem;background:var(--g50)}
.wide-rows{display:flex;flex-direction:column;gap:4rem}
.wide-row{display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:center}
.wide-row-rev{grid-template-columns:1fr 1.3fr}
.wide-row-rev .wide-img{order:2}
.wide-row-rev .wide-txt{order:1}
.wide-img img{width:100%;height:320px;object-fit:cover;border-radius:16px;transition:transform .6s}
.wide-img:hover img{transform:scale(1.03)}
.wide-txt h3{font-size:1.5rem;margin-bottom:.75rem}
.wide-txt p{color:var(--g600);line-height:1.75}

/* Sectores: Dark cards */
.sct-dkcards{padding:6rem 2rem;background:var(--g800)}
.dkcards-g{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.dkcard{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:2.5rem 2rem;transition:all .3s}
.dkcard:hover{background:rgba(255,255,255,.07);transform:translateY(-4px)}
.dkcard-ic{width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}
.dkcard-ic svg{width:28px;height:28px;color:var(--g300)}
.dkcard h3{color:var(--white);font-size:1.05rem;margin-bottom:.5rem}
.dkcard p{color:var(--g400);font-size:.9rem;line-height:1.6}

/* Cifras: Two-tone */
.cif-twotone{display:grid;grid-template-columns:1fr 2fr}
.twotone-dark{background:var(--g800);padding:4rem 3rem;display:flex;flex-direction:column;justify-content:center}
.twotone-light{background:var(--g50);padding:4rem 3rem;display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;align-content:center}
.tt-num{text-align:center;padding:1.5rem}
.tt-num strong{display:block;font-size:2.75rem;font-weight:800;color:var(--accent);line-height:1;margin-bottom:.35rem}
.tt-num span{font-size:.78rem;color:var(--g500);text-transform:uppercase;letter-spacing:.5px}

/* CTA: Underlined */
.cta-uline{padding:5rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.cta-uline h2{font-size:2.25rem;margin-bottom:1rem}
.cta-uline p{color:var(--g500);margin-bottom:2rem;font-size:1.05rem}
.uline-link{font-size:1.2rem;font-weight:600;color:var(--black);text-decoration:none;border-bottom:2px solid var(--black);padding-bottom:4px;transition:border-color .3s}
.uline-link:hover{border-color:var(--g400)}

/* Contacto: Stacked */
.cnt-stacked{padding:6rem 2rem;background:var(--g50)}
.stacked-items{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}
.stacked-row{display:flex;gap:1.5rem;align-items:flex-start;padding:1.5rem;background:var(--white);border:1px solid var(--g200);border-radius:14px;transition:transform .3s}
.stacked-row:hover{transform:translateX(6px)}
.stacked-ic{width:44px;height:44px;background:var(--g100);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.stacked-ic svg{width:20px;height:20px;color:var(--g700)}
.stacked-row strong{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:2px;color:var(--g400);margin-bottom:.25rem}
.stacked-row p,.stacked-row a{font-size:.95rem;color:var(--g700);line-height:1.5;text-decoration:none}

/* Footer: Thick top */
.ftr-thicktop{border-top:4px solid var(--accent);padding:3rem 2rem 1.5rem;background:var(--white)}
.ftr-thicktop-inner{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:2rem}
.ftr-thicktop-inner p{color:var(--g500);font-size:.88rem;margin-top:.5rem}
.ftr-links{display:flex;gap:2rem}
.ftr-links a{color:var(--g500);text-decoration:none;font-size:.9rem;transition:color .2s}
.ftr-links a:hover{color:var(--black)}
.ftr-copy{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--g200);padding-top:1.5rem}
.ftr-copy p{font-size:.8rem;color:var(--g400);margin:0}
.ftr-copy a{font-size:.8rem;color:var(--g400);text-decoration:none}

/* ========= PAGE 14 ========= */
/* Hero: Boxed */
.hro-boxed{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:6rem 2rem}
.hro-boxed-bg{position:absolute;inset:0;z-index:0}
.hro-boxed-bg img{width:100%;height:100%;object-fit:cover}
.hro-boxed-bg::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.6)}
.hro-boxed-card{position:relative;z-index:1;background:rgba(0,0,0,.7);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:4rem;max-width:700px;text-align:center}
.hro-boxed-card h1{color:var(--white);font-size:3rem;margin-bottom:1rem;letter-spacing:-.5px}
.hro-boxed-card p{color:var(--g400);margin-bottom:2rem;font-size:1.05rem}

/* About: Quote */
.abt-quote{padding:7rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.abt-quote-inner{max-width:800px;margin:0 auto;text-align:center}
.abt-quote-inner h2{font-size:2.5rem;margin-bottom:2rem}
.abt-quote-inner blockquote{font-size:1.3rem;font-style:italic;color:var(--g600);line-height:1.8;padding:2rem 0;border-top:2px solid var(--g200);border-bottom:2px solid var(--g200);margin-bottom:3rem}
.abt-quote-stats{display:flex;gap:4rem;justify-content:center}
.abt-quote-stats div{text-align:center}
.abt-quote-stats strong{display:block;font-size:2rem;font-weight:800;color:var(--black)}
.abt-quote-stats span{font-size:.75rem;color:var(--g500);text-transform:uppercase;letter-spacing:1px}

/* MVV: Border columns */
.mvv-brdcol{padding:6rem 2rem;background:var(--g50)}
.brdcol-g{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.brdcol-item{padding:2rem;border-left:4px solid var(--black);background:var(--white);transition:box-shadow .3s}
.brdcol-item:hover{box-shadow:0 8px 25px rgba(0,0,0,.06)}
.brdcol-item h3{font-size:1.1rem;margin-bottom:.75rem}
.brdcol-item p{font-size:.9rem;color:var(--g600);line-height:1.65}

/* Beneficios: Timeline */
.bnf-timeline{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.tl-list{max-width:700px;margin:0 auto;position:relative;padding-left:2rem}
.tl-list::before{content:'';position:absolute;left:7px;top:0;bottom:0;width:2px;background:var(--g200)}
.tl-item{display:flex;gap:1.5rem;margin-bottom:2rem;position:relative}
.tl-dot{width:16px;height:16px;border-radius:50%;background:var(--black);border:3px solid var(--white);flex-shrink:0;position:relative;z-index:1;margin-top:3px}
.tl-content h3{font-size:1rem;margin-bottom:.35rem}
.tl-content p{font-size:.9rem;color:var(--g600);line-height:1.6}

/* Servicios: Icon detail */
.srv-icondet{padding:6rem 2rem;background:var(--g50)}
.icondet-list{display:flex;flex-direction:column;gap:2rem;max-width:900px;margin:0 auto}
.icondet-row{display:grid;grid-template-columns:60px 1fr 200px;gap:2rem;align-items:center;padding:2rem;background:var(--white);border:1px solid var(--g200);border-radius:16px;transition:box-shadow .3s}
.icondet-row:hover{box-shadow:0 10px 30px rgba(0,0,0,.05)}
.icondet-ic{width:48px;height:48px;background:var(--g100);border-radius:14px;display:flex;align-items:center;justify-content:center}
.icondet-ic svg{width:24px;height:24px;color:var(--g700)}
.icondet-txt h3{font-size:1.1rem;margin-bottom:.35rem}
.icondet-txt p{font-size:.9rem;color:var(--g600);line-height:1.6}
.icondet-img{width:200px;height:140px;object-fit:cover;border-radius:8px}

/* Sectores: Vertical timeline */
.sct-vtimeline{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.vtl-list{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:2.5rem}
.vtl-item{display:flex;gap:2rem;align-items:flex-start}
.vtl-marker{width:50px;height:50px;background:var(--black);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.vtl-marker span{color:var(--white);font-weight:700;font-size:.9rem}
.vtl-item h3{font-size:1.15rem;margin-bottom:.35rem}
.vtl-item p{font-size:.9rem;color:var(--g600);line-height:1.6}

/* Cifras: Highlight bar */
.cif-hlbar{padding:5rem 2rem;background:var(--g50);border-bottom:1px solid var(--g200)}
.hlbar-inner{display:flex;justify-content:center;gap:4rem;flex-wrap:wrap}
.hlbar-item{text-align:center}
.hlbar-item strong{display:block;font-size:3rem;font-weight:800;color:var(--black);margin-bottom:.5rem}
.hlbar-line{width:40px;height:3px;background:var(--black);margin:0 auto .75rem}
.hlbar-item span{font-size:.78rem;color:var(--g500);text-transform:uppercase;letter-spacing:.5px}

/* CTA: Gradient */
.cta-gradbg{background:linear-gradient(135deg,#0097A7 0%,#00838F 100%);padding:5rem 2rem}
.cta-gradbg h2{color:var(--white);font-size:2.25rem;margin-bottom:1rem}
.cta-gradbg p{color:var(--g400);margin-bottom:2rem;font-size:1.05rem}

/* Contacto: Map panel */
.cnt-mappanel{padding:0}
.mappanel-g{display:grid;grid-template-columns:1fr 1fr}
.mappanel-info{padding:5rem 4rem}
.mappanel-info h2{font-size:2rem;margin-bottom:1.5rem}
.mappanel-items{display:flex;flex-direction:column;gap:2rem;margin-top:2rem}
.mappanel-items>div{display:flex;gap:1rem;align-items:flex-start}
.mp-ic{width:40px;height:40px;background:var(--g100);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.mp-ic svg{width:18px;height:18px;color:var(--g700)}
.mappanel-items strong{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:2px;color:var(--g400);margin-bottom:.25rem}
.mappanel-items p,.mappanel-items a{font-size:.95rem;color:var(--g700);line-height:1.5;text-decoration:none}
.mappanel-map{background:var(--g100);min-height:400px}

/* Footer: Gradient dark */
.ftr-graddark{background:linear-gradient(180deg,#0A3040,#051820);padding:3rem 2rem 2rem}
.ftr-graddark-inner{display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center}
.ftr-graddark-inner .ftr-links{margin:0}
.ftr-graddark-inner .ftr-links a{color:var(--g500)}
.ftr-graddark-inner .ftr-links a:hover{color:var(--white)}
.ftr-copy-txt{font-size:.8rem;color:var(--g500);margin:0}

/* ========= PAGE 15 ========= */
/* Hero: Stacked */
.hro-stacked{padding:10rem 2rem 6rem;background:var(--white);border-bottom:1px solid var(--g200)}
.hro-stacked h1{font-size:clamp(3.5rem,10vw,7rem);letter-spacing:-3px;line-height:.95;margin-bottom:3rem;max-width:700px}
.hro-stacked-btm{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;max-width:700px}
.hro-stacked-btm p{color:var(--g500);max-width:350px;line-height:1.7}

/* About: 3 col */
.abt-3col{padding:6rem 2rem;background:var(--g50);border-bottom:1px solid var(--g200)}
.col3-g{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-bottom:3rem}
.col3-g p{color:var(--g600);line-height:1.8;font-size:1rem}
.col3-stats{display:flex;flex-direction:column;gap:1.5rem}
.col3-stats div{display:flex;align-items:baseline;gap:.5rem}
.col3-stats strong{font-size:2rem;font-weight:800;color:var(--black)}
.col3-stats span{font-size:.8rem;color:var(--g500);text-transform:uppercase}
.col3-img{width:100%;height:350px;object-fit:cover;border-radius:16px}

/* MVV: Full-stack blocks */
.mvv-fullstack{padding:0}
.fstack-block{padding:0}
.fstack-dark{background:var(--g800);color:var(--white)}
.fstack-light{background:var(--g50)}
.fstack-inner{padding:4rem 2rem;max-width:800px}
.fstack-inner p{font-size:1.15rem;line-height:1.8;color:var(--g600)}
.fstack-dark .fstack-inner p{color:var(--g300)}

/* Beneficios: Tiles */
.bnf-tiles{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.tiles-g{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.tile{background:var(--g50);border:1px solid var(--g200);border-radius:16px;padding:2.5rem 1.5rem;text-align:center;transition:all .3s;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center}
.tile:hover{background:var(--black);border-color:var(--black)}
.tile:hover h3{color:var(--white)}
.tile:hover p{color:var(--g400)}
.tile:hover .tile-ic svg{color:var(--white)}
.tile-ic{margin-bottom:1rem}
.tile-ic svg{width:32px;height:32px;color:var(--black);transition:color .3s}
.tile h3{font-size:.95rem;margin-bottom:.5rem;transition:color .3s}
.tile p{font-size:.82rem;color:var(--g600);line-height:1.5;transition:color .3s}

/* Servicios: Masonry */
.srv-masonry{padding:6rem 2rem;background:var(--g50)}
.masonry-g{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.mas-card{position:relative;border-radius:16px;overflow:hidden;height:280px}
.mas-tall{grid-row:span 2;height:100%}
.mas-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.mas-card:hover img{transform:scale(1.05)}
.mas-overlay{position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(transparent,rgba(0,0,0,.8))}
.mas-overlay h3{color:var(--white);font-size:1.1rem}

/* Sectores: Badges */
.sct-badges{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.badges-g{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.badge-item{padding:2.5rem 2rem;border-radius:16px;border:1px solid var(--g200);transition:all .3s}
.badge-item:hover{border-color:var(--black);box-shadow:0 8px 25px rgba(0,0,0,.06)}
.badge-ic{width:48px;height:48px;background:var(--g100);border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;transition:background .3s}
.badge-item:hover .badge-ic{background:var(--black)}
.badge-item:hover .badge-ic svg{color:var(--white)}
.badge-ic svg{width:24px;height:24px;color:var(--g700);transition:color .3s}
.badge-item h3{font-size:1.05rem;margin-bottom:.5rem}
.badge-item p{font-size:.9rem;color:var(--g600);line-height:1.6}

/* Cifras: Bordered grid */
.cif-brdgrid{padding:5rem 2rem;background:var(--g50);border-bottom:1px solid var(--g200)}
.brdgrid-g{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:900px;margin:0 auto}
.brdgrid-item{text-align:center;padding:2.5rem 1.5rem;border:1px solid var(--g200)}
.brdgrid-item strong{display:block;font-size:2.5rem;font-weight:800;color:var(--black);margin-bottom:.35rem}
.brdgrid-item span{font-size:.78rem;color:var(--g500);text-transform:uppercase;letter-spacing:.5px}

/* CTA: Dual tone */
.cta-dualtone{display:grid;grid-template-columns:1fr 1fr}
.dual-left{background:var(--black);padding:4rem 3rem;display:flex;align-items:center}
.dual-left h2{color:var(--white);font-size:2.25rem;letter-spacing:-.5px}
.dual-right{background:var(--g50);padding:4rem 3rem;display:flex;flex-direction:column;justify-content:center}
.dual-right p{color:var(--g600);margin-bottom:2rem;font-size:1.05rem}

/* Contacto: Bare */
.cnt-bare{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.cnt-bare h2{margin-bottom:2rem}
.bare-info{max-width:500px;margin:0 auto}
.bare-info p,.bare-info a{display:block;font-size:1.1rem;color:var(--g600);line-height:1.7;margin-bottom:.75rem;text-decoration:none}

/* Footer: Two split */
.ftr-twosplit{background:var(--black);padding:3rem 2rem 2rem;color:var(--white)}
.ftr-twosplit-inner{display:flex;justify-content:space-between;align-items:flex-start}
.ftr-twosplit-inner .logo-t{color:var(--white)}
.ftr-twosplit-right{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}
.ftr-twosplit-right a{color:var(--g400);text-decoration:none;font-size:.9rem;transition:color .2s}
.ftr-twosplit-right a:hover{color:var(--white)}
.ftr-twosplit-right p{color:var(--g500);font-size:.8rem;margin-top:1rem}

/* ========= PAGE 16 ========= */
/* Hero: Asymmetric */
.hro-asymm{padding:8rem 2rem 4rem;background:var(--g50);min-height:90vh;display:flex;align-items:center}
.hro-asymm-inner{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.asymm-txt h1{font-size:3.25rem;letter-spacing:-1px;margin-bottom:1.5rem}
.asymm-txt p{color:var(--g600);margin-bottom:2rem;line-height:1.7}
.asymm-deco img{width:100%;height:550px;object-fit:cover;border-radius:16px}

/* About: Dark split */
.abt-dksplit{display:grid;grid-template-columns:1fr 1.5fr}
.dksplit-dk{background:var(--g800);padding:5rem 4rem;display:flex;flex-direction:column;justify-content:center}
.dksplit-lt{padding:5rem 4rem;background:var(--white)}
.dksplit-lt p{color:var(--g600);line-height:1.8;font-size:1.05rem;margin-bottom:2rem}
.dksplit-stats{display:flex;gap:3rem}
.dksplit-stats div{text-align:center}
.dksplit-stats strong{display:block;font-size:2rem;font-weight:800;color:var(--black)}
.dksplit-stats span{font-size:.75rem;color:var(--g500);text-transform:uppercase}

/* MVV: Icon row */
.mvv-iconrow{padding:6rem 2rem;background:var(--g50)}
.iconrow-g{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.iconrow-item{text-align:center;padding:2.5rem 2rem;background:var(--white);border:1px solid var(--g200);border-radius:16px;transition:all .3s}
.iconrow-item:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,.06)}
.ir-ic{width:56px;height:56px;background:var(--black);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}
.ir-ic svg{width:24px;height:24px;color:var(--white)}
.iconrow-item h3{font-size:1.1rem;margin-bottom:.5rem}
.iconrow-item p{font-size:.9rem;color:var(--g600);line-height:1.6}

/* Beneficios: Underline cards */
.bnf-uline{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.uline-g{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}
.uline-card{padding:2rem;transition:transform .3s}
.uline-card:hover{transform:translateY(-3px)}
.uline-card strong{font-size:2rem;font-weight:800;color:var(--g200);display:block;margin-bottom:.5rem}
.uline-card:hover strong{color:var(--black)}
.uline-card h3{font-size:1rem;margin-bottom:.5rem}
.uline-bar{width:30px;height:2px;background:var(--black);margin-bottom:.75rem}
.uline-card p{font-size:.88rem;color:var(--g600);line-height:1.6}

/* Servicios: Detail list */
.srv-detlist{padding:6rem 2rem;background:var(--g50)}
.detlist{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:0}
.det-item{display:flex;gap:2rem;padding:2.5rem 0;border-bottom:1px solid var(--g200);align-items:flex-start}
.det-item:last-child{border-bottom:none}
.det-num{font-size:3rem;font-weight:800;color:var(--g200);line-height:1;min-width:60px;transition:color .3s}
.det-item:hover .det-num{color:var(--black)}
.det-item h3{font-size:1.25rem;margin-bottom:.5rem}
.det-item p{font-size:.95rem;color:var(--g600);line-height:1.7}

/* Sectores: Image grid */
.sct-imggrid{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.imggrid-g{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.imggrid-card{border-radius:16px;overflow:hidden;border:1px solid var(--g200);transition:transform .3s,box-shadow .3s}
.imggrid-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,.06)}
.imggrid-card img{width:100%;height:200px;object-fit:cover}
.imggrid-card h3{padding:1.25rem 1.25rem .25rem;font-size:1rem}
.imggrid-card p{padding:0 1.25rem 1.25rem;font-size:.88rem;color:var(--g600);line-height:1.5}

/* Cifras: Counter row */
.cif-counter{padding:5rem 2rem;background:var(--g50);border-bottom:1px solid var(--g200)}
.counter-row{display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap}
.counter-item{text-align:center;padding:2rem 3rem}
.counter-item strong{display:block;font-size:3.5rem;font-weight:800;color:var(--black);line-height:1;margin-bottom:.35rem}
.counter-item span{font-size:.78rem;color:var(--g500);text-transform:uppercase;letter-spacing:.5px}
.counter-sep{width:1px;height:60px;background:var(--g200)}

/* CTA: Black box */
.cta-blkbox{padding:4rem 2rem;background:var(--white)}
.blkbox{background:var(--black);border-radius:20px;padding:4rem 3rem;text-align:center;color:var(--white)}
.blkbox h2{color:var(--white);font-size:2rem;margin-bottom:.75rem}
.blkbox p{color:var(--g400);margin-bottom:2rem;font-size:1.05rem}

/* Contacto: Two-panel */
.cnt-twopanel{padding:6rem 2rem;background:var(--g50)}
.twopanel-g{display:grid;grid-template-columns:1fr 1fr;gap:4rem;max-width:1000px;margin:0 auto}
.twopanel-left h2{font-size:2rem;margin-bottom:1rem}
.twopanel-left p{color:var(--g600);line-height:1.7}
.twopanel-right{display:flex;flex-direction:column;gap:2rem}
.tp-row{display:flex;gap:1rem;align-items:flex-start}
.tp-ic{width:40px;height:40px;background:var(--white);border:1px solid var(--g200);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tp-ic svg{width:18px;height:18px;color:var(--g700)}
.tp-row strong{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:2px;color:var(--g400);margin-bottom:.25rem}
.tp-row p,.tp-row a{font-size:.95rem;color:var(--g700);line-height:1.5;text-decoration:none}

/* ========= PAGE 17 ========= */
/* Hero: Cinematic */
.hro-cine{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:6rem 2rem}
.hro-cine-bg{position:absolute;inset:0;z-index:0}
.hro-cine-bg img{width:100%;height:100%;object-fit:cover}
.hro-cine-bg::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.7)}
.hro-cine-inner{position:relative;z-index:1;max-width:700px}
.hro-cine h1{font-size:clamp(3rem,8vw,5rem);color:var(--white);letter-spacing:-1.5px;margin-bottom:1.5rem}
.hro-cine p{font-size:1.15rem;color:var(--g400);margin-bottom:2.5rem}

/* About: Number focused */
.abt-numfocus{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.numfocus-top{max-width:700px;margin:0 auto 3rem;text-align:center}
.numfocus-top h2{font-size:2.5rem;margin-bottom:1rem}
.numfocus-top p{color:var(--g600);line-height:1.8}
.numfocus-nums{display:flex;justify-content:center;gap:6rem;flex-wrap:wrap}
.nf-item{text-align:center}
.nf-item strong{display:block;font-size:4rem;font-weight:800;color:var(--black);line-height:1;margin-bottom:.25rem}
.nf-item span{font-size:.78rem;color:var(--g500);text-transform:uppercase;letter-spacing:1px}

/* MVV: Vertical blocks */
.mvv-vblocks{padding:6rem 2rem;background:var(--g50)}
.vblocks-g{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:900px;margin:0 auto}
.vblock{padding:2rem;background:var(--white);border-radius:16px;border:1px solid var(--g200);transition:transform .3s,box-shadow .3s}
.vblock:hover{transform:translateY(-4px);box-shadow:0 10px 25px rgba(0,0,0,.05)}
.vblock-line{width:30px;height:3px;background:var(--black);margin-bottom:1.25rem}
.vblock h3{font-size:1.1rem;margin-bottom:.75rem}
.vblock p{font-size:.9rem;color:var(--g600);line-height:1.65}

/* Beneficios: Expandable rows */
.bnf-expand{padding:6rem 2rem;background:var(--white);border-bottom:1px solid var(--g200)}
.expand-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}
.expand-row{padding:2rem;border:1px solid var(--g200);border-radius:14px;transition:all .3s}
.expand-row:hover{border-color:var(--black);box-shadow:0 4px 15px rgba(0,0,0,.05)}
.expand-head{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}
.expand-ic{width:40px;height:40px;background:var(--g100);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .3s}
.expand-row:hover .expand-ic{background:var(--black)}
.expand-row:hover .expand-ic svg{color:var(--white)}
.expand-ic svg{width:20px;height:20px;color:var(--g700);transition:color .3s}
.expand-head h3{font-size:1rem}
.expand-row p{font-size:.9rem;color:var(--g600);line-height:1.6;padding-left:56px}

/* Servicios: Horizontal scroll cards */
.srv-hscroll{padding:6rem 0 4rem;background:var(--g50)}
.hscroll-track{display:flex;gap:1.5rem;overflow-x:auto;padding:0 2rem 2rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.hscroll-track::-webkit-scrollbar{height:4px}
.hscroll-track::-webkit-scrollbar-thumb{background:var(--g300);border-radius:4px}
.hscroll-card{min-width:300px;background:var(--white);border-radius:16px;overflow:hidden;border:1px solid var(--g200);scroll-snap-align:start;flex-shrink:0;transition:transform .3s}
.hscroll-card:hover{transform:translateY(-4px)}
.hscroll-card img{width:100%;height:200px;object-fit:cover}
.hscroll-card h3{padding:1rem 1rem .25rem;font-size:1rem}
.hscroll-card p{padding:0 1rem 1rem;font-size:.88rem;color:var(--g600);line-height:1.5}

/* Sectores: Dark minimal list */
.sct-dkmin{padding:6rem 2rem;background:var(--g800)}
.dkmin-list{max-width:700px;margin:0 auto}
.dkmin-item{display:flex;gap:2rem;padding:2rem 0;border-bottom:1px solid rgba(255,255,255,.08);align-items:flex-start}
.dkmin-item:last-child{border-bottom:none}
.dkmin-item span{font-size:2rem;font-weight:800;color:rgba(255,255,255,.15);min-width:50px}
.dkmin-item:hover span{color:var(--white)}
.dkmin-item h3{color:var(--white);font-size:1.1rem;margin-bottom:.35rem}
.dkmin-item p{color:var(--g400);font-size:.9rem;line-height:1.6}

/* Cifras: Compact inline */
.cif-compact{background:var(--black);padding:3.5rem 2rem}
.compact-row{display:flex;justify-content:center;gap:4rem;flex-wrap:wrap}
.compact-item{text-align:center}
.compact-item strong{display:block;font-size:2.5rem;font-weight:800;color:var(--white);line-height:1;margin-bottom:.25rem}
.compact-item span{font-size:.7rem;color:var(--g500);text-transform:uppercase;letter-spacing:1px}

/* CTA: Inverted */
.cta-inverted{padding:5rem 2rem;background:var(--g50);border-bottom:1px solid var(--g200)}
.cta-inverted h2{font-size:2.25rem;margin-bottom:1rem}
.cta-inverted p{color:var(--g500);margin-bottom:2rem;font-size:1.05rem}

/* Contacto: Full dark centered */
.cnt-fulldark{padding:6rem 2rem;background:var(--g800)}
.cnt-fulldark h2{margin-bottom:2.5rem}
.fulldark-items{max-width:500px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}
.fulldark-items>div{display:flex;gap:1.5rem;align-items:flex-start;text-align:left}
.fd-ic{width:44px;height:44px;background:rgba(255,255,255,.06);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fd-ic svg{width:20px;height:20px;color:var(--g300)}
.fulldark-items p,.fulldark-items a{color:var(--g300);font-size:.95rem;line-height:1.5;text-decoration:none}

/* ========= RESPONSIVE ALL ========= */
@media(max-width:1024px){
    .hro-grad h1{font-size:3.5rem}
    .abt-mosaic-g,.abt-dksplit,.hro-asymm-inner,.cif-twotone,.cta-dualtone,.mappanel-g,.twopanel-g{grid-template-columns:1fr}
    .abt-mosaic-imgs{grid-template-columns:1fr 1fr}.mos-1{grid-row:auto;height:200px!important}
    .tabs-row,.brdcol-g,.circles-g,.dkcards-g,.badges-g,.iconrow-g,.uline-g,.tiles-g,.vblocks-g,.brdgrid-g,.imggrid-g{grid-template-columns:1fr 1fr}
    .wide-row,.wide-row-rev{grid-template-columns:1fr}
    .wide-row-rev .wide-img,.wide-row-rev .wide-txt{order:unset}
    .icondet-row{grid-template-columns:1fr}
    .icondet-img{display:none}
    .counter-row{gap:0}
    .counter-sep{display:none}
    .asymm-deco img{height:400px}
    .hlbar-inner{gap:2rem}
}
@media(max-width:768px){
    .menu-toggle{display:flex}
    nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;padding:1rem;border-top:1px solid var(--g200);box-shadow:0 10px 30px rgba(0,0,0,.1)}
    nav.active{display:flex}
    nav a{padding:.875rem 0;border-bottom:1px solid var(--g100)}
    .btn-hdr{width:100%;text-align:center;justify-content:center;margin-top:.5rem}
    .hdr-wrap{position:relative}
    .hro-stacked h1{font-size:3rem}
    .hro-stacked-btm{flex-direction:column}
    .hro-boxed-card{padding:2.5rem 1.5rem}
    .hro-boxed-card h1{font-size:2rem}
    .col3-g{grid-template-columns:1fr}
    .tabs-row,.brdcol-g,.circles-g,.dkcards-g,.badges-g,.iconrow-g,.uline-g,.tiles-g,.vblocks-g,.brdgrid-g,.imggrid-g{grid-template-columns:1fr}
    .hro-btns,.cta-btns{flex-direction:column}
    .btn-w,.btn-ghost,.btn-blk-pill{width:100%;justify-content:center;text-align:center}
    .ftr-thicktop-inner,.ftr-twosplit-inner{flex-direction:column;gap:1.5rem;text-align:center}
    .ftr-links{flex-direction:column;gap:.75rem;align-items:center}
    .ftr-twosplit-right{align-items:center}
    .ftr-copy{flex-direction:column;gap:.5rem;text-align:center}
    .abt-quote-stats{flex-direction:column;gap:1.5rem}
    .numfocus-nums{flex-direction:column;gap:2rem}
    .dksplit-stats{flex-direction:column;gap:1rem}
    .blkbox{padding:3rem 1.5rem;border-radius:16px}
    .compact-row{gap:2rem}
    .hscroll-card{min-width:260px}
    .mappanel-info{padding:3rem 2rem}
}
