:root{--orange:#d95f00;--orange-dark:#d95f00;--ink:#15202b;--slate:#435160;--muted:#6d7883;--paper:#f5f4ef;--line:#dcded9;--white:#fff;--shadow:0 22px 60px rgba(17,28,38,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbfbf9;color:var(--ink);font-family:Manrope,Arial,sans-serif}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:34px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;gap:42px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.header{height:88px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;gap:36px;background:rgba(251,251,249,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(21,32,43,.08);position:sticky;top:0;z-index:30}.brand{width:112px;margin-right:auto}.brand img{width:100%}.nav{display:flex;gap:32px;font-size:14px;font-weight:700}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--orange);transition:.25s}.nav a:hover:after{right:0}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;font-weight:800;font-size:13px;letter-spacing:.02em;cursor:pointer;transition:.25s}.btn-primary{background:var(--orange);color:#fff;box-shadow:0 12px 28px rgba(217,95,0,.22)}.btn-primary:hover{background:var(--orange-dark);transform:translateY(-2px)}.btn-ghost{border:1px solid rgba(21,32,43,.22);background:transparent}.btn-dark{background:var(--ink);color:#fff}.menu-toggle{display:none;border:0;background:none;width:40px;padding:6px}.menu-toggle span{height:2px;background:var(--ink);display:block;margin:6px 0}.hero{min-height:690px;padding:72px clamp(24px,5vw,76px) 70px;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:70px;align-items:center;background:radial-gradient(circle at 82% 20%,rgba(217,95,0,.12),transparent 28%),linear-gradient(135deg,#fbfbf8 0%,#f1f1eb 100%);overflow:hidden}.eyebrow{margin:0 0 16px;color:var(--orange);font-weight:800;font-size:12px;letter-spacing:.2em}.hero h1,.section h2,.catalog-section h2,.cta-section h2{font-family:"Playfair Display",Georgia,serif}.hero h1{font-size:clamp(48px,6vw,86px);line-height:.98;letter-spacing:-.045em;margin:0 0 28px;max-width:800px}.hero h1 em{font-style:normal;color:var(--orange)}.hero-lead{max-width:660px;color:var(--slate);font-size:18px;line-height:1.8;margin:0 0 34px}.hero-actions{display:flex;gap:14px}.hero-metrics{display:flex;gap:44px;margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}.hero-metrics div{display:flex;flex-direction:column}.hero-metrics strong{font-size:28px}.hero-metrics span{font-size:12px;color:var(--muted);margin-top:5px}.hero-visual{position:relative;perspective:1200px}.hero-image{border-radius:12px;overflow:visible;box-shadow:0 28px 70px rgba(17,28,38,.2),0 0 0 1px rgba(255,255,255,.5);transform:rotate(1.2deg);position:relative;isolation:isolate;padding:5px;background:linear-gradient(135deg,#d95f00 0%,var(--orange) 28%,#fff4df 52%,#24303b 76%,var(--orange) 100%);background-size:260% 260%;animation:heroFrameGlow 8s ease-in-out infinite,heroFloat 7s ease-in-out infinite;transition:transform .45s ease,box-shadow .45s ease}.hero-image:before{content:"";position:absolute;inset:-12px;border-radius:18px;background:conic-gradient(from 130deg,rgba(217,95,0,.05),rgba(217,95,0,.65),rgba(255,255,255,.8),rgba(21,32,43,.35),rgba(217,95,0,.05));filter:blur(18px);opacity:.48;z-index:-2;animation:heroAura 9s linear infinite}.hero-image:after{content:"";position:absolute;inset:5px;border-radius:7px;border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 0 34px rgba(255,255,255,.13);pointer-events:none;z-index:2}.hero-image img{width:100%;aspect-ratio:1.48/1;object-fit:cover;border-radius:7px;position:relative;z-index:1}.hero-image:hover{transform:rotate(0deg) translateY(-7px) scale(1.012);box-shadow:0 34px 84px rgba(17,28,38,.26),0 0 0 1px rgba(217,95,0,.28)}@keyframes heroFrameGlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes heroFloat{0%,100%{translate:0 0}50%{translate:0 -7px}}@keyframes heroAura{to{transform:rotate(360deg)}}.hero-card{position:absolute;left:-48px;bottom:-48px;width:280px;background:#fff;box-shadow:var(--shadow);padding:20px;display:flex;gap:16px;align-items:center}.hero-card img{width:72px;height:72px;object-fit:contain}.hero-card p{font-size:12px;line-height:1.5;margin:0;color:var(--muted)}.hero-card b{color:var(--ink)}.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);background:var(--ink);color:#fff;padding:32px clamp(24px,5vw,76px);gap:36px}.trust-strip div{display:flex;align-items:flex-start;gap:18px}.trust-strip span{color:var(--orange);font-family:"Playfair Display",serif;font-size:28px}.trust-strip p{margin:0;font-size:13px;color:#cbd1d6;line-height:1.6}.trust-strip b{color:#fff}.section{padding:110px clamp(24px,5vw,76px)}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:52px}.section-heading h2,.quality h2,.about h2{font-size:clamp(38px,4vw,58px);line-height:1.08;margin:0}.section-heading>p{color:var(--muted);line-height:1.8;max-width:600px}.quickstart{background:#fff}.quickstart-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:end;margin-bottom:46px}.quickstart-heading h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(38px,4vw,58px);line-height:1.08;margin:0}.quickstart-heading>p{color:var(--muted);line-height:1.8;max-width:620px}.journey-shell{border:1px solid var(--line);background:var(--paper);box-shadow:0 18px 50px rgba(21,32,43,.07)}.journey-tabs{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-bottom:1px solid var(--line)}.journey-tab{border:0;border-right:1px solid var(--line);background:#fff;padding:20px 16px;font-weight:800;color:var(--slate);cursor:pointer;position:relative}.journey-tab:last-child{border-right:0}.journey-tab:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:transparent}.journey-tab.active{color:var(--ink);background:#fff}.journey-tab.active:after{background:var(--orange)}.journey-panel{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:54px;padding:48px}.journey-panel[hidden]{display:none}.journey-intro{padding-right:36px;border-right:1px solid var(--line)}.journey-intro>span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);font-weight:900}.journey-intro h3{font-family:"Playfair Display",Georgia,serif;font-size:34px;line-height:1.15;margin:12px 0 16px}.journey-intro p{color:var(--muted);line-height:1.7;margin:0}.journey-steps{display:grid;grid-template-columns:1fr 1fr;gap:28px 34px}.journey-steps article{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start}.journey-steps article>b{width:42px;height:42px;display:grid;place-items:center;background:var(--ink);color:#fff;font-family:"Playfair Display",Georgia,serif;font-size:20px}.journey-steps h4{margin:2px 0 7px;font-size:15px}.journey-steps p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.journey-actions{grid-column:1/-1;display:flex;align-items:center;gap:24px;padding-top:8px;border-top:1px solid var(--line)}.quote-tip{display:flex;gap:10px;align-items:center;margin-top:18px;padding:16px 18px;background:var(--ink);color:#fff;font-size:13px}.quote-tip b{color:var(--orange)}.quote-tip span{color:#d5dade}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.category-card{padding:0;text-align:left;border:1px solid var(--line);background:#fff;cursor:pointer;transition:.3s}.category-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:transparent}.category-img{background:#eef0ea;overflow:hidden;aspect-ratio:1.45/1}.category-img img{width:100%;height:100%;object-fit:cover;transition:.35s}.category-card:hover img{transform:scale(1.04)}.category-info{padding:24px}.category-info span{font-size:11px;color:var(--orange);font-weight:800;text-transform:uppercase;letter-spacing:.12em}.category-info h3{font-size:21px;margin:8px 0}.category-info p{min-height:64px;color:var(--muted);font-size:13px;line-height:1.6}.category-info b{font-size:12px}.catalog-section{padding:100px clamp(24px,5vw,76px);background:#f0f1ed}.catalog-toolbar{display:flex;justify-content:space-between;align-items:end;gap:40px}.catalog-toolbar h2{font-size:52px;margin:0}.search-box{width:min(460px,100%);height:54px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;padding:0 18px;gap:12px}.search-box span{font-size:28px;color:var(--muted)}.search-box input{border:0;outline:0;width:100%;background:transparent}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:36px 0 16px}.filter-btn{border:1px solid #c9ccc7;background:transparent;padding:10px 15px;font-size:12px;font-weight:700;cursor:pointer}.filter-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.results-line{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;color:var(--muted);font-size:13px}.results-line button{border:0;background:none;color:var(--orange);font-weight:800;cursor:pointer}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.product-card{background:#fff;border:1px solid #dde0da;display:flex;flex-direction:column;min-width:0;transition:.25s;cursor:pointer;position:relative}.product-card:hover{transform:translateY(-4px);box-shadow:0 16px 38px rgba(21,32,43,.1)}.product-image{aspect-ratio:1/1;background:#f5f6f1;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.product-body{padding:18px;display:flex;flex-direction:column;flex:1}.product-category{font-size:9px;color:var(--orange);font-weight:800;letter-spacing:.1em;text-transform:uppercase}.product-body h3{font-size:15px;line-height:1.35;margin:8px 0 10px}.product-model{font-size:11px;color:var(--muted);min-height:31px}.product-footer{margin-top:auto;padding-top:16px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eceee9;font-size:11px;font-weight:800}.product-footer span:last-child{color:var(--orange)}.catalog-more{text-align:center;margin-top:34px}.quality{display:grid;grid-template-columns:.9fr 1.1fr;gap:86px;align-items:center;background:#fff}.quality-image{position:relative;background:#eef0ea;padding:34px}.quality-image:before{content:"";position:absolute;inset:-20px 35% 55% -20px;background:var(--orange);z-index:0}.quality-image img{position:relative;z-index:1;width:100%}.quality-copy>p:not(.eyebrow){font-size:16px;color:var(--muted);line-height:1.8}.feature-list{margin:34px 0}.feature-list article{padding:18px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:220px 1fr;gap:24px}.feature-list article:last-child{border-bottom:1px solid var(--line)}.feature-list span{color:var(--muted);font-size:13px;line-height:1.6}.text-link{font-weight:800;color:var(--orange)}.about{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center;background:var(--paper)}.about-copy>p:not(.eyebrow){font-size:16px;line-height:1.9;color:var(--muted);max-width:760px}.values-panel{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.values-panel>strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink)}.about-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.about-badges span{padding:10px 14px;border:1px solid #cfd2cc;font-size:11px;font-weight:700;background:#fff}.quote-card{background:var(--ink);color:#fff;padding:54px;min-height:310px;display:flex;flex-direction:column;justify-content:center}.quote-card p{font-family:"Playfair Display",serif;color:var(--orange);font-size:48px;margin:0 0 20px}.quote-card span{line-height:1.8;color:#cbd1d6}.institutional-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}.institutional-grid article{background:#fff;border:1px solid var(--line);padding:22px}.institutional-grid article span{display:inline-block;margin-bottom:10px;color:var(--orange);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.institutional-grid article h3{margin:0 0 10px;font-size:18px;line-height:1.35}.institutional-grid article p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.brand-card img{max-width:240px;margin-bottom:24px;background:#fff;padding:12px;border-radius:8px}.brand-card p{font-size:38px;line-height:1.1;margin:0 0 18px}.brand-card span{font-size:15px}.cta-section{padding:100px clamp(24px,5vw,76px);display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;background:linear-gradient(135deg,#1b2733,#101820);color:#fff}.cta-section h2{font-size:54px;margin:0 0 22px}.cta-section>div>p:last-child{color:#bac2c9;line-height:1.8}.contact-form{display:flex;flex-direction:column;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid #46515a;background:#26323d;color:#fff;padding:14px;outline:0;text-transform:none;letter-spacing:0}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--orange)}.footer{padding:70px clamp(24px,5vw,76px) 26px;background:#fff;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:48px;font-size:13px}.footer-brand img{width:130px}.footer-brand p,.footer p{color:var(--muted);line-height:1.7}.footer h3{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.footer>div:not(.footer-brand){display:flex;flex-direction:column;gap:9px}.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;margin:18px 0 0}.whatsapp-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#21b75a;color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 12px 26px rgba(0,0,0,.22);z-index:35}.product-modal{border:0;padding:0;max-width:880px;width:calc(100% - 30px);box-shadow:var(--shadow)}.product-modal::backdrop{background:rgba(5,10,15,.72);backdrop-filter:blur(4px)}.modal-close{position:absolute;right:15px;top:10px;z-index:2;border:0;background:#fff;width:38px;height:38px;font-size:26px;cursor:pointer}.modal-layout{display:grid;grid-template-columns:1fr 1fr}.modal-layout>img{width:100%;height:100%;min-height:480px;object-fit:cover;background:#eef0ea}.modal-info{padding:52px 42px}.modal-info h2{font-family:"Playfair Display",serif;font-size:38px;line-height:1.1;margin:10px 0 20px}.modal-info ul{padding:0;list-style:none;color:var(--muted);line-height:1.7}.modal-info li{padding:8px 0;border-bottom:1px solid var(--line)}.modal-actions{display:flex;gap:10px;margin-top:28px}.empty-state{grid-column:1/-1;padding:80px;text-align:center;color:var(--muted)}@media(prefers-reduced-motion:reduce){.hero-image,.hero-image:before{animation:none}.hero-image{transition:none}}@media(max-width:1100px){.quickstart-heading{gap:46px}.journey-panel{gap:36px;padding:40px}.journey-intro{padding-right:22px}.hero{grid-template-columns:1fr 1fr;gap:36px}.product-grid{grid-template-columns:repeat(3,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.header-cta{display:none}.quality{gap:46px}.cta-section{gap:40px}}@media(max-width:820px){.quickstart-heading,.journey-panel{grid-template-columns:1fr;gap:32px}.journey-intro{padding-right:0;padding-bottom:28px;border-right:0;border-bottom:1px solid var(--line)}.journey-steps{grid-template-columns:1fr 1fr}.journey-panel{padding:34px}.quote-tip{align-items:flex-start}.topbar{display:none}.header{height:74px;padding:0 20px}.menu-toggle{display:block}.nav{position:absolute;top:74px;left:0;right:0;background:#fff;display:none;flex-direction:column;padding:24px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.hero{grid-template-columns:1fr;padding:58px 22px 90px}.hero h1{font-size:54px}.hero-visual{margin-top:20px}.hero-card{left:10px}.trust-strip{grid-template-columns:1fr;padding:28px 22px}.section,.catalog-section,.cta-section{padding:72px 22px}.section-heading,.quality,.about,.cta-section{grid-template-columns:1fr;gap:42px}.category-grid{grid-template-columns:1fr 1fr}.catalog-toolbar{align-items:stretch;flex-direction:column}.product-grid{grid-template-columns:repeat(2,1fr)}.footer{grid-template-columns:1fr 1fr;padding:60px 22px 24px}.modal-layout{grid-template-columns:1fr}.modal-layout>img{min-height:300px}.hero-metrics{gap:22px}.feature-list article{grid-template-columns:1fr}.institutional-grid{grid-template-columns:1fr}.quote-card{min-height:auto}}@media(max-width:540px){.journey-tabs{grid-template-columns:1fr}.journey-tab{border-right:0;border-bottom:1px solid var(--line)}.journey-tab:last-child{border-bottom:0}.journey-steps{grid-template-columns:1fr}.journey-panel{padding:26px 20px}.journey-intro h3{font-size:29px}.journey-actions{align-items:stretch;flex-direction:column}.quote-tip{flex-direction:column;gap:4px}.brand{width:94px}.hero h1{font-size:44px}.hero-actions,.hero-metrics{flex-direction:column}.hero-card{position:relative;left:auto;bottom:auto;width:100%;margin-top:14px}.category-grid,.product-grid,.form-row,.footer{grid-template-columns:1fr}.category-info p{min-height:auto}.catalog-toolbar h2,.cta-section h2{font-size:40px}.modal-actions{flex-direction:column}.footer .copyright{grid-column:1}.search-box{width:100%}}

.brand-b2b{align-self:flex-start;margin-top:28px;text-align:center}


/* AJUSTES FINALES 2026: títulos, sello SUS 304 y WhatsApp */
.hero h1,
.quickstart-heading h2,
.section-heading h2,
.catalog-toolbar h2,
.quality-copy h2,
.about-copy > h2 {
  text-transform: uppercase;
}

.product-materials-callout {
  margin: 34px 0 44px;
  padding: 22px 28px;
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  gap: 28px;
  align-items: center;
  background: linear-gradient(120deg, #121b24 0%, #26313b 100%);
  border-left: 5px solid var(--orange);
  box-shadow: 0 18px 44px rgba(21, 32, 43, .13);
  color: #fff;
}
.materials-seal {
  width: 132px;
  height: 132px;
  padding: 7px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .22), 0 12px 28px rgba(0, 0, 0, .28);
}
.materials-seal img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  border-radius: 50%;
}
.materials-copy .eyebrow {
  margin-bottom: 7px;
  color: #d95f00;
}
.materials-copy h3 {
  margin: 0 0 9px;
  font-family: "Playfair Display", serif;
  font-size: clamp(25px, 3vw, 37px);
  line-height: 1.05;
  letter-spacing: .015em;
}
.materials-copy p:last-child {
  margin: 0;
  max-width: 740px;
  color: #d7dde2;
  font-size: 14px;
  line-height: 1.7;
}

.whatsapp-float {
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.whatsapp-float:hover {
  transform: translateY(-3px) scale(1.04);
  background: #1fa855;
  box-shadow: 0 16px 32px rgba(0, 0, 0, .28);
}
.whatsapp-icon {
  width: 34px;
  height: 34px;
  overflow: visible;
}
.whatsapp-bubble {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.whatsapp-phone {
  fill: currentColor;
}

@media (max-width: 620px) {
  .product-materials-callout {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
    margin: 28px 0 34px;
  }
  .materials-seal {
    width: 88px;
    height: 88px;
    padding: 5px;
  }
  .materials-copy h3 {
    font-size: 24px;
  }
  .materials-copy p:last-child {
    font-size: 12px;
  }
}

/* ACTUALIZACIÓN FINAL: tipografía geométrica y nueva portada */
.hero h1,
.quickstart-heading h2,
.section-heading h2,
.catalog-toolbar h2,
.quality-copy h2,
.about-copy > h2 {
  font-family: "Aptos Display", "Aptos", "Arial Black", "Helvetica Neue", Arial, system-ui, sans-serif;
  font-weight: 900;
  font-style: normal;
  letter-spacing: -.052em;
  line-height: .98;
  text-wrap: balance;
  font-feature-settings: "kern" 1, "liga" 1;
}
.hero h1 em {
  font-family: inherit;
  font-weight: inherit;
}
.hero-image img {
  aspect-ratio: 567 / 402;
  object-position: center center;
}
@media (max-width: 540px) {
  .hero h1,
  .quickstart-heading h2,
  .section-heading h2,
  .catalog-toolbar h2,
  .quality-copy h2,
  .about-copy > h2 {
    letter-spacing: -.04em;
    line-height: 1.02;
  }
}


/* EDICIÓN CORPORATIVA 2026: jerarquía, color, logotipos y selección B2B */
:root {
  --orange: #d95f00;
  --orange-dark: #d95f00;
  --orange-rgb: 217, 95, 0;
}

/* Un único naranja corporativo en todos los elementos de interfaz */
.btn-primary:hover { background: var(--orange); filter: brightness(.9); }
.materials-copy .eyebrow { color: var(--orange); }
.hero-image {
  background: linear-gradient(135deg, var(--orange) 0 34%, #fff4df 50%, #24303b 70%, var(--orange) 100%);
}

/* Títulos geométricos: ligeramente más compactos y sin perder presencia */
.hero h1,
.quickstart-heading h2,
.section-heading h2,
.catalog-toolbar h2,
.quality-copy h2,
.about-copy > h2,
.cta-section h2 {
  font-family: "Aptos Display", "Aptos", "Arial Black", "Helvetica Neue", Arial, system-ui, sans-serif;
  font-weight: 900;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: -.046em;
  line-height: 1;
  text-wrap: balance;
}
.hero h1 { font-size: clamp(42px, 5.25vw, 76px); }
.quickstart-heading h2,
.section-heading h2,
.quality-copy h2,
.about-copy > h2 { font-size: clamp(33px, 3.55vw, 50px); }
.catalog-toolbar h2 { font-size: clamp(35px, 3.4vw, 46px); }
.cta-section h2 { font-size: clamp(36px, 3.7vw, 48px); }

/* Logo GRAVALU contenido en un solo plano visual y centrado */
.header { align-items: center; }
.brand {
  width: 136px;
  height: 70px;
  margin-right: auto;
  padding: 6px 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  background: #fff;
  border: 1px solid rgba(21,32,43,.08);
  border-radius: 14px;
  box-shadow: 0 9px 24px rgba(21,32,43,.08);
}
.brand img {
  width: auto;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
  margin: auto;
}

/* Logo GRAZZIANI centrado en su ventana azul */
.brand-card {
  align-items: center;
  text-align: center;
}
.brand-card img {
  width: min(270px, 100%);
  max-width: none;
  margin: 0 auto 24px;
}
.brand-card p,
.brand-card span { max-width: 620px; }
.brand-b2b { align-self: center; }

/* Nueva imagen de portada */
.hero-image img {
  aspect-ratio: 1600 / 1118;
  object-fit: cover;
  object-position: center;
}

/* Herramienta moderna: selección B2B persistente */
.catalog-smart-note {
  margin: 24px 0 6px;
  padding: 14px 18px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  max-width: 720px;
  border: 1px solid rgba(var(--orange-rgb), .24);
  background: rgba(var(--orange-rgb), .055);
  color: var(--slate);
}
.catalog-smart-note > span {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  font-size: 20px;
  font-weight: 900;
}
.catalog-smart-note p { margin: 0; font-size: 13px; line-height: 1.55; }
.catalog-smart-note strong { color: var(--ink); }

.product-card { overflow: hidden; }
.shortlist-btn {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  width: 39px;
  height: 39px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(21,32,43,.13);
  border-radius: 50%;
  background: rgba(255,255,255,.94);
  color: var(--ink);
  font-size: 21px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 7px 20px rgba(21,32,43,.12);
  transition: transform .2s ease, background .2s ease, color .2s ease;
}
.shortlist-btn:hover { transform: scale(1.07); }
.shortlist-btn.active {
  background: var(--orange);
  border-color: var(--orange);
  color: #fff;
}
.modal-select { margin-top: 10px; width: 100%; }

.selection-bar[hidden] { display: none !important; }
.selection-bar {
  position: fixed;
  left: 50%;
  bottom: 22px;
  z-index: 40;
  width: min(790px, calc(100% - 190px));
  min-height: 72px;
  padding: 11px 12px 11px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  transform: translateX(-50%);
  background: rgba(21,32,43,.97);
  color: #fff;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  box-shadow: 0 20px 55px rgba(0,0,0,.30);
  backdrop-filter: blur(16px);
}
.selection-summary { display: flex; align-items: center; gap: 13px; min-width: 0; }
.selection-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  font-weight: 900;
}
.selection-summary div { min-width: 0; }
.selection-summary strong { display: block; font-size: 12px; letter-spacing: .08em; }
.selection-summary small { display: block; margin-top: 4px; color: #cbd1d6; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.selection-bar-actions { display: flex; gap: 8px; }
.selection-bar .btn { min-height: 46px; padding: 0 18px; }
.selection-bar .btn-ghost { border-color: rgba(255,255,255,.28); color: #fff; }

.selection-modal {
  width: min(820px, calc(100% - 28px));
  max-height: min(82vh, 820px);
  padding: 0;
  border: 0;
  border-radius: 18px;
  box-shadow: 0 28px 90px rgba(0,0,0,.34);
}
.selection-modal::backdrop { background: rgba(5,10,15,.72); backdrop-filter: blur(5px); }
.selection-modal-close {
  position: absolute;
  top: 14px;
  right: 16px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: #f1f1ed;
  font-size: 27px;
  cursor: pointer;
}
.selection-modal-content { padding: 42px; }
.selection-modal-head h2 {
  margin: 5px 0 10px;
  font-family: "Aptos Display", "Aptos", "Arial Black", Arial, sans-serif;
  font-size: clamp(30px, 4vw, 44px);
  line-height: 1;
  letter-spacing: -.04em;
  text-transform: uppercase;
}
.selection-modal-head > p:last-child { margin: 0 0 28px; color: var(--muted); line-height: 1.7; }
.selection-list { display: grid; gap: 10px; max-height: 410px; overflow: auto; padding-right: 4px; }
.selection-item {
  display: grid;
  grid-template-columns: 76px minmax(0,1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--line);
  background: #fff;
}
.selection-item img { width: 76px; height: 76px; object-fit: cover; background: #eef0ea; }
.selection-item h3 { margin: 0 0 5px; font-size: 15px; }
.selection-item p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.45; }
.selection-remove { border: 0; background: transparent; color: var(--orange); font-weight: 900; cursor: pointer; padding: 10px; }
.selection-modal-actions { display: flex; justify-content: space-between; gap: 12px; margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--line); }
.selection-empty { padding: 38px 20px; text-align: center; color: var(--muted); background: var(--paper); }

@media (max-width: 820px) {
  .brand { width: 116px; height: 60px; padding: 5px 10px; }
  .selection-bar { width: calc(100% - 94px); left: 14px; transform: none; bottom: 14px; }
  .selection-bar-actions .selection-review { display: none; }
  .selection-summary strong { font-size: 11px; }
  .selection-bar .btn { padding: 0 13px; font-size: 11px; }
}
@media (max-width: 540px) {
  .hero h1 { font-size: 40px; }
  .quickstart-heading h2,
  .section-heading h2,
  .quality-copy h2,
  .about-copy > h2 { font-size: 32px; }
  .catalog-toolbar h2,
  .cta-section h2 { font-size: 34px; }
  .selection-bar {
    width: calc(100% - 80px);
    padding: 9px 9px 9px 12px;
    gap: 8px;
  }
  .selection-summary small { max-width: 120px; }
  .selection-icon { display: none; }
  .selection-modal-content { padding: 34px 20px 24px; }
  .selection-item { grid-template-columns: 58px minmax(0,1fr) auto; gap: 10px; }
  .selection-item img { width: 58px; height: 58px; }
  .selection-modal-actions { flex-direction: column; }
}


/* Ajuste final de portada: imagen completa, más contenida y con profundidad visual */
@media (min-width: 1101px) {
  .hero {
    grid-template-columns: minmax(0, 1.16fr) minmax(390px, .74fr);
    gap: clamp(48px, 5vw, 78px);
  }
}
.hero-visual {
  width: 100%;
  max-width: 590px;
  margin-left: auto;
  display: flex;
  justify-content: flex-end;
}
.hero-image {
  width: 100%;
  max-width: 560px;
  padding: 6px;
  overflow: hidden;
  background: linear-gradient(135deg, var(--orange) 0 24%, #f4d29a 44%, #25313c 68%, var(--orange) 100%);
  box-shadow:
    0 26px 64px rgba(17,28,38,.20),
    0 0 0 1px rgba(255,255,255,.46),
    inset 0 0 0 1px rgba(255,255,255,.30);
  transform: rotate(.45deg);
  animation: heroFrameGlow 10s ease-in-out infinite, heroFloat 8s ease-in-out infinite;
}
.hero-image img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 430px;
  aspect-ratio: auto;
  object-fit: contain;
  object-position: center;
  background: #111b25;
}
.hero-image:hover {
  transform: rotate(0deg) translateY(-5px) scale(1.006);
  box-shadow:
    0 34px 82px rgba(17,28,38,.25),
    0 0 0 1px rgba(217,95,0,.30),
    inset 0 0 0 1px rgba(255,255,255,.35);
}
.hero-light-sweep {
  position: absolute;
  top: -20%;
  bottom: -20%;
  left: -38%;
  width: 24%;
  z-index: 3;
  pointer-events: none;
  opacity: 0;
  transform: skewX(-18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
  filter: blur(1px);
  animation: heroSmartSweep 8.5s ease-in-out infinite;
}
@keyframes heroSmartSweep {
  0%, 62% { left: -38%; opacity: 0; }
  68% { opacity: .7; }
  80% { left: 118%; opacity: .18; }
  100% { left: 118%; opacity: 0; }
}

/* Se elimina el rótulo naranja bajo el logotipo y se reajusta el espaciado */
.brand-card img { margin-bottom: 28px; }
.brand-card > span { display: block; }

@media (max-width: 1100px) {
  .hero-visual { max-width: 620px; margin: 14px auto 0; justify-content: center; }
  .hero-image { max-width: 580px; }
  .hero-image img { max-height: none; }
}
@media (max-width: 820px) {
  .hero-visual { max-width: 100%; }
  .hero-image { max-width: 620px; margin: 0 auto; }
}
@media (max-width: 540px) {
  .hero-image { padding: 4px; transform: none; }
  .hero-image:hover { transform: translateY(-3px); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-light-sweep { animation: none; display: none; }
}

/* Revisión final: identidad horizontal GRAVALU y firma GRAZZIANI en portada */
.brand.brand-horizontal {
  position: relative;
  width: clamp(238px, 18vw, 318px);
  height: 70px;
  padding: 7px 14px;
  border: 0;
  border-radius: 18px;
  background: rgba(255,255,255,.82);
  box-shadow:
    0 13px 34px rgba(21,32,43,.10),
    inset 0 0 0 1px rgba(255,255,255,.76);
  backdrop-filter: blur(16px) saturate(1.08);
  -webkit-backdrop-filter: blur(16px) saturate(1.08);
  overflow: hidden;
}
.brand.brand-horizontal::after {
  content: "";
  position: absolute;
  inset: auto 13% -2px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--orange), transparent);
  opacity: .62;
}
.brand.brand-horizontal img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 2px 2px rgba(21,32,43,.08));
}
.hero-visual {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
}
.hero-grazziani-signature {
  width: min(320px, 72%);
  min-height: 0;
  padding: 4px 0 0;
  display: grid;
  place-items: center;
  position: relative;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.hero-grazziani-signature::before,
.hero-grazziani-signature::after {
  content: none;
}
.hero-grazziani-signature img {
  width: 100%;
  max-width: 320px;
  max-height: 78px;
  object-fit: contain;
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 10px 20px rgba(17,28,38,.16)) drop-shadow(0 2px 4px rgba(217,95,0,.14));
}
@media (max-width: 1100px) {
  .brand.brand-horizontal { width: 250px; height: 62px; padding: 6px 12px; }
  .hero-grazziani-signature { width: min(295px, 68%); }
  .hero-grazziani-signature img { max-height: 72px; }
}
@media (max-width: 820px) {
  .brand.brand-horizontal { width: 220px; height: 56px; }
  .hero-grazziani-signature { width: min(280px, 72%); }
  .hero-grazziani-signature img { max-height: 68px; }
}
@media (max-width: 540px) {
  .brand.brand-horizontal {
    width: 184px;
    height: 50px;
    padding: 5px 9px;
    border-radius: 14px;
  }
  .hero-grazziani-signature {
    width: min(240px, 78%);
    padding-top: 2px;
  }
  .hero-grazziani-signature img {
    max-height: 58px;
  }
}


/* Ajuste solicitado: logotipo GRAZZIANI bajo la portada, sin placa blanca */
.hero-grazziani-signature {
  width: min(290px, 66%);
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  transition: transform .35s ease, filter .35s ease;
}
.hero-grazziani-signature::before,
.hero-grazziani-signature::after {
  content: none;
  display: none;
}
.hero-grazziani-signature img {
  width: min(218px, 100%);
  max-height: none;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
  filter: drop-shadow(0 10px 16px rgba(17,28,38,.16));
}
.hero-grazziani-signature:hover {
  transform: translateY(-3px) scale(1.018);
  filter: brightness(1.02);
}
@media (max-width: 820px) {
  .hero-grazziani-signature { width: min(270px, 62%); }
  .hero-grazziani-signature img { width: min(205px, 100%); }
}
@media (max-width: 540px) {
  .hero-grazziani-signature { width: min(235px, 70%); }
  .hero-grazziani-signature img { width: min(182px, 100%); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-grazziani-signature { transition: none; }
  .hero-grazziani-signature:hover { transform: none; }
}
