:root{
  --bg: #ffffff; /* fondo blanco */
  --card: #ffffff;
  --brand-accent: #ff6b35; /* coral/orange accent (high urgency) */
  --brand-cta: #ffd400; /* CTA yellow for highlights */
  --brand-dark: #0b1220;   /* dark for text */
  --brand-black: #071027;
  --muted: #6b6f76;
  --text: var(--brand-black);
  --radius:12px;
  --glass: rgba(255,255,255,0.6);
  --space-xxs:4px; --space-xs:8px; --space-sm:12px; --space-md:20px; --space-lg:36px; --maxw:1200px;
}

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;800&family=Playfair+Display:wght@400;700&display=swap');
*{box-sizing:border-box}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; margin:0; background:linear-gradient(180deg,var(--bg),#ffffff); color:var(--text); -webkit-font-smoothing:antialiased}
.container{max-width:1200px;margin:0 auto;padding:1rem}
.site-header{padding:var(--space-md) 0}
.site-header{background:transparent;position:sticky;top:0;z-index:50;backdrop-filter:blur(6px)}
.logo{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:0.3px;color:var(--brand-dark);font-family:'Playfair Display',serif}
.subtitle{margin:0.25rem 0 1rem;color:var(--muted)}
.controls{display:flex;gap:0.5rem;align-items:center}
.controls input, .controls select{padding:0.6rem 0.8rem;border-radius:10px;border:1px solid rgba(15,23,36,0.06);background:#fff;box-shadow:0 6px 18px rgba(35,40,50,0.04)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;padding:1rem 0}
.card{background:var(--card);border-radius:var(--radius);padding:0;overflow:hidden;box-shadow:0 8px 28px rgba(11,22,45,0.04);display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 48px rgba(11,22,45,0.08)}
.card img{width:100%;height:200px;object-fit:cover;display:block}
.card-body{padding:1.1rem;flex:1;display:flex;flex-direction:column}
.card h3{margin:0 0 0.5rem;font-size:1.05rem}
.card .cat{font-size:0.82rem;color:var(--brand-accent);font-weight:800;margin-bottom:0.6rem}
.card p{margin:0 0 0.8rem;color:var(--muted);font-size:0.95rem}
.card .features{margin-top:auto;font-size:0.9rem;color:#444}
.card .btn-row{display:flex;gap:0.5rem;margin-top:0.8rem}
.btn{display:inline-block;padding:0.75rem 1.05rem;border-radius:14px;text-decoration:none;color:var(--brand-dark);background:var(--brand-cta);font-weight:800;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,0.06)}
.btn.secondary{background:#fff;color:var(--brand-black);border:1px solid rgba(11,22,45,0.06)}

.btn.primary{background:linear-gradient(90deg,var(--brand-accent),#ff8a55);color:#fff;box-shadow:0 12px 36px rgba(255,107,53,0.16)}
.btn.ghost{background:transparent;border:1px solid rgba(11,22,45,0.06);color:var(--brand-dark)}

.btn.dark{background:var(--brand-dark);color:var(--brand-cta)}

/* Price and discount */
.price{font-size:1.05rem;font-weight:800;color:var(--brand-dark)}
.orig-price{color:var(--muted);text-decoration:line-through;margin-left:0.6rem;font-weight:600}
.discount-badge{position:absolute;top:10px;left:10px;background:var(--brand-accent);color:#fff;padding:6px 8px;border-radius:8px;font-weight:800;font-size:0.85rem}
.card{position:relative}
.site-footer{padding:1.25rem 0;color:var(--muted);font-size:0.9rem}
.small{font-size:0.8rem;color:#9aa0a6}
@media (max-width:520px){.card img{height:140px}.controls{flex-direction:column;align-items:stretch}}

/* Hero */
.hero{background:linear-gradient(90deg, rgba(255,212,0,0.06), rgba(255,212,0,0.02));border-radius:16px;padding:2.75rem;margin-bottom:1.25rem;display:flex;gap:1rem;align-items:center;align-items:center}
.hero h2{margin:0;font-size:2.25rem;font-family:'Playfair Display',serif;color:var(--brand-black);line-height:1.05}
.hero .lead{margin-top:0.6rem;color:var(--muted);font-size:1.05rem;max-width:60ch}
.hero-benefits{display:flex;gap:1rem;margin:0;padding:0;list-style:none}
.hero-benefits li{background:#fff;padding:0.45rem 0.6rem;border-radius:10px;box-shadow:0 8px 20px rgba(11,22,45,0.04);font-weight:700;color:var(--brand-accent)}

/* Featured strip styles */
#featured.featured-strip{padding:0.6rem 0}
.featured-strip-inner{display:flex;gap:1rem;overflow-x:auto;padding:0.6rem}
.featured-card{min-width:260px;flex:0 0 auto;background:var(--card);border-radius:12px;overflow:hidden;box-shadow:0 10px 30px rgba(11,22,45,0.06);display:flex;flex-direction:column}
.featured-strip-viewport{position:relative}
.featured-strip-inner{scroll-behavior:smooth;padding:0.6rem}
.featured-prev,.featured-next{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:999px;border:0;background:rgba(7,16,39,0.85);color:var(--brand-cta);font-size:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,0.18);z-index:60}
.featured-prev{left:8px}
.featured-next{right:8px}
.featured-prev:focus,.featured-next:focus{outline:3px solid rgba(255,212,0,0.25)}
.featured-card.hero{min-width:420px}
.featured-card img{width:100%;height:220px;object-fit:cover;display:block}
.featured-body{padding:1rem;display:flex;flex-direction:column;gap:0.5rem}
.featured-card{transition:transform .18s ease,box-shadow .18s ease}
.featured-card:hover{transform:translateY(-6px);box-shadow:0 22px 60px rgba(11,22,45,0.12)}
.featured-card .cat{font-weight:800;color:var(--brand-accent);font-size:0.9rem}
.featured-card h3{margin:0;font-size:1.05rem}
.featured-card .rating{color:#ffb400;font-weight:700}
.featured-card .price-row{margin-top:0.5rem}
.featured-card .price{font-size:1.1rem;font-weight:900;color:var(--brand-dark)}
.featured-card .orig-price{margin-left:0.6rem;color:var(--muted);text-decoration:line-through;font-weight:700}
.featured-card .btn-row{display:flex;gap:0.5rem}
.featured-card .discount-badge{position:absolute;top:12px;left:12px;background:var(--brand-accent);color:#fff;padding:6px 10px;border-radius:8px;font-weight:800;font-size:0.9rem}
.featured-card{position:relative}

@media (max-width:900px){.featured-card.hero{min-width:320px}.featured-card img{height:180px}}
@media (max-width:520px){.featured-card{min-width:220px}.featured-card.hero{min-width:260px}.featured-card img{height:140px}}

.header-top{padding-bottom:0.25rem;border-bottom:1px solid rgba(11,22,45,0.03);position:relative}
.main-nav a{margin:0 0.5rem;color:var(--brand-dark);text-decoration:none;font-weight:700}
.main-nav a:hover{color:var(--brand-accent)}

/* prevent nav items wrapping */
.main-nav{white-space:nowrap}

/* Language selector in header */
.lang-switch{display:inline-flex;align-items:center;margin-left:0.75rem}
.lang-select{padding:0.45rem 0.6rem;border-radius:8px;border:1px solid rgba(11,22,45,0.06);background:#fff;font-weight:700;font-size:0.95rem}
@media (max-width:720px){
  .lang-switch{margin-left:0;margin-top:0.5rem}
  .lang-select{width:100%}
}

/* Ensure language selector stays visible and not overlapped by mobile menu button */
@media (max-width:720px){
  .header-top{padding-right:72px}
  .lang-switch{position:relative;z-index:1402}
}

.brand img{border-radius:6px;height:56px;display:block}

/* Responsive nav for small screens */
@media (max-width:720px){
  .main-nav{display:flex;flex-direction:row;gap:0.5rem;overflow:auto;padding:0.5rem 0}
  .main-nav a{padding:0.45rem 0.6rem;background:transparent;border-radius:8px}
  .header-search{flex-direction:column;align-items:stretch}
}

/* Mobile drawer styles */
@media (max-width:720px){
  /* hide desktop nav/search; they will be moved into drawer */
  .main-nav{display:none !important}
  .header-search{display:none !important}
  #mobile-menu-btn{display:inline-flex}
}

#mobile-menu-btn{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;border:0;background:linear-gradient(90deg,var(--brand-accent),#ff8a55);color: #fff;cursor:pointer;font-size:22px;position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:1300;padding:6px;box-shadow:0 8px 24px rgba(11,22,45,0.12)}
#mobile-menu-btn span{display:inline-block;transform:translateY(1px);font-size:18px}
#mobile-drawer-overlay{position:fixed;inset:0;background:rgba(7,16,39,0.45);z-index:1200;display:none}
#mobile-drawer{position:fixed;left:0;top:0;height:100%;width:84%;max-width:360px;background:var(--card);z-index:1250;box-shadow:2px 0 40px rgba(7,16,39,0.12);transform:translateX(-110%);transition:transform .28s ease}
#mobile-drawer.open{transform:translateX(0)}
#mobile-drawer .drawer-header{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 1rem;border-bottom:1px solid rgba(11,22,45,0.04)}
#mobile-drawer .drawer-body{padding:1rem;overflow:auto;height:calc(100% - 56px)}
#mobile-drawer .drawer-body{-webkit-overflow-scrolling:touch}
#mobile-drawer .drawer-body .main-nav{display:block}
#mobile-drawer .drawer-body .main-nav a{display:block;padding:0.6rem 0;border-bottom:1px solid rgba(11,22,45,0.03)}
#mobile-drawer .drawer-body form{margin-top:0.5rem}
#mobile-drawer .drawer-close{background:transparent;border:0;font-size:20px;cursor:pointer}

/* Ensure nav and search inside drawer are visible even if global mobile rules hide them */
#mobile-drawer .drawer-body .main-nav, #mobile-drawer .drawer-body .header-search { display: block !important }

/* Editorial highlight responsive adjustments */
.editorial-highlight{display:flex;gap:1rem;align-items:center;background:#fff;padding:1rem;border-radius:12px;box-shadow:0 8px 24px rgba(11,22,45,0.04)}
@media (max-width:720px){
  .editorial-highlight{flex-direction:column;align-items:stretch}
  .editorial-highlight > div{width:100%}
  .editorial-highlight img{max-width:100%;width:100%;height:auto;border-radius:8px;margin:0 auto}
}

/* Footer tweaks for better spacing and legibility */
.site-footer{padding:2rem 1rem;background:linear-gradient(180deg,transparent,#f8f9fc);border-top:1px solid rgba(11,22,45,0.03)}
.site-footer a{color:var(--brand-dark);text-decoration:none}
.site-footer .col h4{margin-bottom:0.6rem}
.site-footer p{color:var(--muted)}
.site-footer .footer-grid{align-items:start}

/* Two-column CTA / Why choose us - responsive rules */
.two-col-cta{display:flex;gap:1rem;align-items:stretch}
.two-col-cta > div{flex:2}
.two-col-cta > aside{flex:1}
.two-col-cta .btn{white-space:normal}
@media (max-width:720px){
  .two-col-cta{flex-direction:column;gap:0.75rem}
  .two-col-cta > div, .two-col-cta > aside{width:100%;flex:unset}
  .two-col-cta .lead{font-size:1rem}
  .two-col-cta .btn{width:100%;display:block}
  .two-col-cta .btn.ghost{margin-top:0.5rem}
  .two-col-cta .card, .two-col-cta aside{box-shadow:none}
}

/* Slight visual polish for the feature list inside the CTA */
.two-col-cta ul{margin:0.5rem 0 0 1.05rem;color:var(--muted)}
.two-col-cta ul li{margin-bottom:0.45rem}



/* Marketing sections */
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.feature{background:linear-gradient(180deg, rgba(255,212,0,0.03), transparent);padding:1rem;border-radius:10px}
.trust-badges img{height:40px;margin-right:0.5rem}
.testimonials .card{padding:1rem}
.faq details{background:#fff;padding:0.8rem;border-radius:8px;margin-bottom:0.5rem}

/* CTA sections */
.cta-hero{display:flex;gap:1rem;align-items:center;justify-content:space-between;background:var(--brand-yellow);padding:1.2rem;border-radius:12px;color:var(--brand-black);margin-top:1rem}
.cta-hero .btn{background:var(--brand-black);color:var(--brand-yellow)}

/* Product page */
.product-hero{display:flex;gap:1.5rem;align-items:flex-start;padding:1rem}
.product-hero img, .product-hero-img{width:480px;max-width:40%;border-radius:10px;box-shadow:0 12px 30px rgba(11,22,45,0.08)}
.product-meta{flex:1}
.breadcrumbs{font-size:0.9rem;color:var(--muted);margin-bottom:0.5rem}

.product-title{font-size:2rem;margin:0 0 0.5rem;color:var(--brand-black);font-weight:900}
.product-tabs{margin-top:1rem;border-top:1px solid rgba(11,22,45,0.04);padding-top:1rem}
.tabs{display:flex;gap:0.5rem}
.tabs button{background:transparent;border:0;padding:0.6rem 0.9rem;border-radius:8px;font-weight:700}
.tabs button.active{background:var(--brand-yellow);color:var(--brand-black)}
.tab-content{margin-top:1rem}
.product-price{font-size:1.25rem;color:var(--brand-black);font-weight:900;margin-top:0.25rem}
.rating{color:#ffb400;font-weight:700;margin-bottom:0.5rem}
.editorial{background:linear-gradient(180deg, rgba(255,212,0,0.03), transparent);padding:1rem;border-radius:8px;margin-top:1rem}
.long-desc{margin-top:1rem;line-height:1.6;color:var(--muted)}

/* Footer enhanced */
.site-footer{padding:2.5rem 0;background:linear-gradient(180deg,transparent, #f8f9fc);border-top:1px solid rgba(11,22,45,0.03)}
.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
.newsletter{display:flex;gap:0.5rem}
.newsletter input{padding:0.6rem;border-radius:8px;border:1px solid rgba(11,22,45,0.06)}

/* Footer: show a white/contrasted logo variant when requested (uses same png and applies filter) */
.site-footer .brand-footer img{height:36px;display:block;filter:brightness(0) invert(1);}

@media (max-width:800px){.product-hero{flex-direction:column}.product-hero img{max-width:100%;width:100%}}

@media (max-width:900px){.footer-grid{grid-template-columns:repeat(2,1fr)}.hero{flex-direction:column}.hero img{max-width:260px}}

@media (max-width:520px){.card img{height:140px}.controls{flex-direction:column;align-items:stretch}.hero h2{font-size:1.5rem}.hero-benefits{flex-direction:column;gap:0.5rem}.footer-grid{grid-template-columns:1fr}}

/* Sticky CTA */
.sticky-cta{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;background:rgba(7,16,39,0.95);color:var(--brand-cta);padding:0.8rem 1.1rem;border-radius:40px;box-shadow:0 14px 36px rgba(7,16,39,0.28);z-index:1100;backdrop-filter:blur(4px)}
.sticky-cta a{color:var(--brand-cta);text-decoration:none;font-weight:800}

/* Hide sticky CTA on larger screens where it may conflict with header layout */
@media (min-width:721px){
  .sticky-cta{display:none}
}

/* Footer responsive improvements */
.site-footer{padding:2rem 1rem}
.footer-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
@media (max-width:720px){
  .site-footer{padding:1.25rem}
  .footer-grid{grid-template-columns:1fr;gap:0.75rem}
  .site-footer .col{padding:0.4rem 0}
  .site-footer .brand-footer img{height:44px}
  .newsletter{flex-direction:column}
  .newsletter input{width:100%;margin-bottom:0.5rem}
}

/* Ensure CTA buttons inside header are visible on dark backgrounds */
.main-nav .btn.cta, .btn.cta{background:linear-gradient(90deg,var(--brand-accent),#ff8a55);color:#fff;border:0;padding:0.55rem 0.9rem;border-radius:12px}
.main-nav .btn.cta:hover, .btn.cta:hover{filter:brightness(1.03)}

/* Additional mobile improvements */
@media (max-width:420px){
  :root{--space-md:12px;--space-sm:8px}
  .container{padding:0.75rem}
  .grid{grid-template-columns:1fr !important;gap:0.8rem}
  .card img{height:140px}
  .card .card-body{padding:0.85rem}
  .featured-prev, .featured-next{display:none}
  .site-header{padding:0.5rem 0}
  .header-search{flex-direction:column;gap:0.6rem}
  .header-search form{width:100%}
  .header-search select{width:48%}
  .header-search > div{display:flex;gap:0.5rem;width:100%;justify-content:flex-end}
  .main-nav{overflow:auto}
  .sticky-cta{left:unset;right:12px;transform:none}
}

/* Search suggestions dropdown */
#search-suggestions{background:#fff;border:1px solid rgba(11,22,45,0.06);box-shadow:0 10px 30px rgba(11,22,45,0.06);border-radius:8px;overflow:hidden;font-size:0.95rem;z-index:1400}
.sugg-group{padding:0.4rem 0}
.sugg-title{padding:0.5rem 0.8rem;color:var(--muted);font-weight:700;font-size:0.8rem;border-bottom:1px solid rgba(11,22,45,0.03)}
.sugg-item{padding:0.6rem 0.8rem;cursor:pointer}
.sugg-item:hover{background:linear-gradient(90deg, rgba(255,212,0,0.04), transparent)}
.sugg-meta{color:var(--muted);font-size:0.85rem;margin-left:0.45rem}
.sugg-empty{padding:0.5rem 0.8rem;color:var(--muted)}