:root{
  --navy:#0d2d57;
  --navy-2:#092343;
  --red:#e51c23;
  --ink:#132033;
  --muted:#5c6777;
  --soft:#f5f7fa;
  --white:#fff;
  --line:#dfe4ea;
  --serif:"Playfair Display", Georgia, serif;
  --sans:"Inter", Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);color:var(--ink);background:#fff}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1160px,92%);margin:auto}
.topbar{background:var(--navy-2);color:#fff;font-size:13px;padding:10px 0}
.topbar__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:center}
.topbar__grid span:nth-child(2){text-align:center}.topbar__grid span:nth-child(3){text-align:right}
.header{background:#fff;box-shadow:0 1px 0 rgba(13,45,87,.08);position:sticky;top:0;z-index:50}
.header__inner{min-height:104px;display:grid;grid-template-columns:170px 1fr 310px;align-items:center;gap:24px}
.brand img{width:142px;height:74px;object-fit:contain}
.nav{display:flex;justify-content:center;gap:34px;font-size:14px;font-weight:600}
.nav a{padding:12px 2px;border-bottom:2px solid transparent}.nav a:hover,.nav a.active{color:var(--red);border-color:var(--red)}
.header__actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}
.search{width:240px;height:40px;border:1px solid #cad1da;border-radius:8px;display:flex;align-items:center;overflow:hidden;background:#fff}
.search input{border:0;outline:0;padding:0 12px;width:100%;font-size:13px}.search button{border:0;background:none;font-size:22px;color:var(--navy);cursor:pointer;padding:0 12px}
.cart{font-size:28px;position:relative}.cart span{position:absolute;right:-6px;top:-6px;width:20px;height:20px;background:var(--red);color:#fff;border-radius:50%;font-size:11px;display:grid;place-items:center;font-weight:700}
.menu-toggle{display:none;border:0;background:none;font-size:30px;color:var(--navy);cursor:pointer}
.hero{background:linear-gradient(90deg,var(--navy) 0 52%,#fff 52%)}
.hero__grid{display:grid;grid-template-columns:43% 57%;min-height:370px}
.hero__copy{color:#fff;padding:52px 44px 52px 0;position:relative;z-index:2}
.hero__copy:after{content:"";position:absolute;right:-65px;top:0;width:100px;height:100%;background:var(--red);clip-path:polygon(72% 0,100% 0,28% 100%,0 100%);z-index:-1}
.eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:.18em;margin-bottom:15px}.eyebrow.blue{color:#1a4a80}
.hero h1,.categories h2,.story h2{font-family:var(--serif)}
.hero h1{font-size:48px;line-height:1;margin:0 0 5px}.hero h2{font:italic 700 37px var(--serif);margin:0 0 24px}.hero p{max-width:520px;line-height:1.65;margin:0 0 26px;font-size:15px}
.btn{display:inline-flex;align-items:center;gap:16px;padding:14px 24px;border-radius:28px;font-weight:700;font-size:14px}.btn--red{background:var(--red);color:#fff}.btn--red:hover{filter:brightness(.95)}.btn--blue{background:var(--navy);color:#fff;border-radius:6px}
.hero__photo{background:url('../ima/hero.jpg') center/cover no-repeat;min-height:370px}
.features{padding:34px 0;background:#fff}.features__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.features article{text-align:center;padding:4px 30px;border-right:1px solid var(--line)}.features article:last-child{border-right:0}.features .icon{font-size:42px;color:var(--navy)}.features h3{margin:8px 0 8px;color:var(--navy);font-size:16px}.features p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.categories{background:var(--soft);padding:34px 0 38px}.categories__grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:16px;align-items:stretch}
.categories__intro{padding-right:20px}.categories h2{font-size:38px;line-height:1.08;margin:0 0 12px;color:#16365e}.categories__intro p{color:var(--muted);line-height:1.55;font-size:14px;margin-bottom:20px}
.category-card{min-height:235px;background-image:linear-gradient(180deg,transparent 45%,rgba(3,19,39,.72)),var(--bg);background-size:cover;background-position:center;border-radius:4px;display:flex;align-items:flex-end;padding:18px;color:#fff;font-weight:700;font-size:17px;transition:.25s}.category-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(13,45,87,.17)}
.story{display:grid;grid-template-columns:42% 58%;min-height:300px}.story__image{background:url('../ima/quality.jpg') center/cover no-repeat}.story__copy{padding:38px 7vw 30px 5vw;background:#fff}.story h2{font-size:34px;line-height:1.16;margin:0 0 14px}.story p{max-width:600px;color:var(--muted);line-height:1.6;font-size:14px}.signature{font:italic 700 28px var(--serif);color:var(--navy);margin-top:10px}.signature:after{content:"";display:block;width:44px;height:3px;background:var(--red);margin-top:10px}
.dark-features{background:linear-gradient(90deg,#0d2d57,#102b50);color:#fff;padding:30px 0}.dark-features__grid{display:grid;grid-template-columns:repeat(3,1fr)}.dark-features article{display:flex;gap:20px;padding:0 28px;border-right:1px solid rgba(255,255,255,.25)}.dark-features article:last-child{border-right:0}.bigicon{font-size:42px;line-height:1}.dark-features h3{margin:0 0 7px;font-size:14px}.dark-features p{margin:0;font-size:12px;line-height:1.5;color:#dfe8f2}
.payments{background:#f7f8fb;padding:20px 0;border-bottom:1px solid #d7dce3}.payments__inner{display:flex;align-items:center;justify-content:center;gap:55px}.payments strong{color:var(--navy);font-size:14px;text-align:center}.paylogos{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.pay{display:inline-grid;place-items:center;background:#fff;border:1px solid #e0e3e8;border-radius:4px;height:34px;padding:0 12px;font-weight:800;font-size:14px}.paypal{color:#0d3c84}.mastercard{color:#ce1e2f}.visa{color:#1549a5}.amex{color:#2d91c9;font-size:10px}.discover{color:#222;font-size:11px}
.footer{background:var(--navy-2);color:#fff}.footer__grid{display:grid;grid-template-columns:1.1fr 1.3fr .8fr .8fr;gap:40px;padding:34px 0}.footer__brand img{width:145px;height:110px;object-fit:contain;background:#fff;border-radius:50%;padding:16px}.footer__contact p{margin:8px 0;color:#eff5fb;font-size:13px}.footer__links{display:flex;flex-direction:column;gap:7px;font-size:13px}.footer__social h4{margin:0 0 16px}.footer__social div{display:flex;gap:16px;font-size:28px}.footer__bottom{text-align:center;background:#08203d;padding:16px;font-size:12px;color:#d4deea}
@media(max-width:980px){
 .header__inner{grid-template-columns:130px 1fr auto}.brand img{width:120px}.menu-toggle{display:block;justify-self:end}.nav{display:none;position:absolute;left:0;right:0;top:104px;background:#fff;flex-direction:column;gap:0;padding:10px 4%;box-shadow:0 10px 24px rgba(0,0,0,.08)}.nav.open{display:flex}.nav a{padding:14px 0}.header__actions{display:none}
 .hero{background:var(--navy)}.hero__grid{grid-template-columns:1fr}.hero__copy{padding-right:0}.hero__copy:after{display:none}.hero__photo{min-height:320px}
 .categories__grid{grid-template-columns:1fr 1fr}.categories__intro{grid-column:1/-1}.category-card{min-height:260px}
 .story{grid-template-columns:1fr}.story__image{min-height:300px}.dark-features__grid{grid-template-columns:1fr;gap:20px}.dark-features article{border-right:0;border-bottom:1px solid rgba(255,255,255,.18);padding:0 0 20px}.dark-features article:last-child{border-bottom:0}
 .footer__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
 .topbar__grid{grid-template-columns:1fr;text-align:center;gap:8px}.topbar__grid span:nth-child(2),.topbar__grid span:nth-child(3){text-align:center}.topbar__grid span:nth-child(3){display:none}
 .header__inner{min-height:86px}.nav{top:86px}.brand img{height:62px}.hero h1{font-size:39px}.hero h2{font-size:30px}.hero__copy{padding:40px 0}.hero__photo{min-height:250px}
 .features__grid{grid-template-columns:1fr 1fr}.features article{border-right:0;border-bottom:1px solid var(--line);padding:20px}.categories__grid{grid-template-columns:1fr}.category-card{min-height:290px}.story__copy{padding:32px 6%}.payments__inner{flex-direction:column;gap:18px}.paylogos{justify-content:center}.footer__grid{grid-template-columns:1fr;text-align:center}.footer__brand img{margin:auto}.footer__social div{justify-content:center}
}

/* Aviso discreto de construcción */
.construction-banner{background:#fff4d6;color:#6d5110;border-bottom:1px solid #ecd89e;text-align:center;font-size:12px;font-weight:700;letter-spacing:.04em;padding:7px 12px}

/* Efecto parallax suave del banner principal */
.hero{overflow:hidden}
.hero__photo{background-attachment:fixed;will-change:background-position;transition:background-position .08s linear}
@media (prefers-reduced-motion: reduce){.hero__photo{background-attachment:scroll!important;transition:none!important}}

/* Contacto */
.contact-section{padding:54px 0;background:#fff}
.contact-section__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.contact-section__intro h2{font-family:var(--serif);font-size:36px;line-height:1.1;margin:0 0 14px;color:#16365e}
.contact-section__intro p{color:var(--muted);line-height:1.65;font-size:14px}
.contact-phone{font-weight:700;color:var(--navy)!important}.contact-phone a{color:var(--red)}
.contact-form{background:var(--soft);border:1px solid #e3e7ec;border-radius:10px;padding:24px}
.contact-form label{display:block;font-size:13px;font-weight:700;color:var(--navy);margin-bottom:14px}
.contact-form input,.contact-form textarea{width:100%;margin-top:7px;border:1px solid #cfd6de;border-radius:7px;background:#fff;padding:12px 13px;font:inherit;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}
.contact-form input:focus,.contact-form textarea:focus{border-color:#7898ba;box-shadow:0 0 0 3px rgba(13,45,87,.08)}
.contact-form textarea{resize:vertical;min-height:120px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-submit{border:0;cursor:pointer}
.form-note{font-size:12px;color:var(--muted);margin:12px 0 0;min-height:18px}

/* Botón flotante de WhatsApp */
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:90;display:flex;align-items:center;gap:9px;background:#25D366;color:#fff;border-radius:999px;padding:12px 16px;box-shadow:0 10px 24px rgba(0,0,0,.18);font-size:14px;font-weight:800;transition:transform .2s,box-shadow .2s}
.whatsapp-float:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.22)}
.whatsapp-float__icon{width:26px;height:26px;border:2px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:14px}

@media(max-width:980px){
 .hero__photo{background-attachment:scroll}
 .contact-section__grid{grid-template-columns:1fr;gap:30px}
}
@media(max-width:650px){
 .form-row{grid-template-columns:1fr}
 .contact-section{padding:40px 0}.contact-section__intro h2{font-size:31px}
 .whatsapp-float{right:14px;bottom:14px;padding:12px}.whatsapp-float__text{display:none}
}
