/*
  FRANGIS 2.0 — capa visual de conservación de marca
  Derivada de la web original de FRANGIS Store.
  Mantiene la arquitectura funcional V3 y recupera su identidad original.
*/
:root{
  /* FRANGIS ORIGINAL — extraído del proyecto publicado */
  --frangis-primary:#d5a64b;
  --frangis-secondary:#f0c878;
  --frangis-background:#070706;
  --frangis-surface:#11100e;
  --frangis-surface-2:#17130e;
  --frangis-text:#f8f4ed;
  --frangis-text-muted:#bfb8aa;
  --frangis-line:#3a2c17;
  --frangis-whatsapp:#25d366;
  --frangis-warm:#8a5a18;
  --frangis-warm-dark:#3a2310;

  --font-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --font-body:Montserrat,Arial,Helvetica,sans-serif;

  /* Mapeo sobre los tokens funcionales de V3 */
  --ivory:var(--frangis-background);
  --paper:var(--frangis-surface);
  --paper-2:#0d0b08;
  --ink:var(--frangis-text);
  --charcoal:#0b0a09;
  --muted:var(--frangis-text-muted);
  --line:var(--frangis-line);
  --gold:var(--frangis-primary);
  --gold-dark:var(--frangis-secondary);
  --burgundy:#a87325;
  --rose:#2b1a0c;
  --sage:#777064;
  --white:#fff;
  --success:#57a773;
  --danger:#d16b6b;
  --focus:var(--frangis-secondary);
  --shadow:0 18px 50px rgba(0,0,0,.34);
  --shadow-soft:0 10px 30px rgba(0,0,0,.22);
  --radius:4px;
  --radius-sm:3px;
  --serif:var(--font-display);
  --sans:var(--font-body);
}

html{background:var(--frangis-background)}
body{background:var(--frangis-background);color:var(--frangis-text);font-family:var(--font-body);letter-spacing:.005em}
::selection{background:var(--frangis-primary);color:#130e07}
:focus-visible{outline:2px solid var(--frangis-secondary);outline-offset:3px}

.section-alt{background:#0b0a09}
.section-dark{background:#0b0a09}
.section-rose{background:radial-gradient(circle at 78% 28%,rgba(213,166,75,.13),transparent 32%),#0d0b08;border-block:1px solid var(--frangis-line)}
.kicker,.eyebrow{color:var(--frangis-secondary);letter-spacing:.18em}
.display,.h1,.h2,.h3{font-family:var(--font-display);letter-spacing:0}
.lead,.muted{color:var(--frangis-text-muted)}
.rule{border-color:var(--frangis-line)}
.notice{background:rgba(213,166,75,.07);border-left-color:var(--frangis-primary);color:#d8d0c3;border-radius:0}
.notice strong{color:var(--frangis-text)}
.card{background:linear-gradient(180deg,#17130e,#0d0b08);border-color:var(--frangis-line);box-shadow:none}
.chip{background:#0b0a09;border-color:var(--frangis-line);color:#d6cec2;border-radius:999px}

/* Botones: lenguaje original FRANGIS */
.btn{border-radius:4px;text-transform:none;letter-spacing:.015em;transition:background 180ms ease,color 180ms ease,border-color 180ms ease,transform 180ms ease,box-shadow 180ms ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary,.btn-gold{background:linear-gradient(135deg,#b77a20,#f2cb77);color:#171006;border-color:#d5a64b;box-shadow:0 8px 24px rgba(181,119,31,.14)}
.btn-primary:hover,.btn-gold:hover{background:linear-gradient(135deg,#ca8d2b,#f5d58f);color:#100b05;border-color:#f0c878}
.btn-secondary{background:transparent;color:var(--frangis-secondary);border-color:var(--frangis-primary)}
.btn-secondary:hover{background:rgba(213,166,75,.09);color:#fff;border-color:var(--frangis-secondary)}
.btn-ghost{background:transparent;color:#e6ded1;border-color:var(--frangis-line)}
.btn-ghost:hover{border-color:var(--frangis-primary);background:rgba(213,166,75,.06)}
.btn-link{color:var(--frangis-secondary)}
.icon-btn{background:#0b0a09;border-color:var(--frangis-line);color:var(--frangis-text);border-radius:50%}
.icon-btn:hover{border-color:var(--frangis-primary);background:#17130e;color:var(--frangis-secondary)}

/* Barra informativa y header */
.announcement{background:linear-gradient(90deg,#8a5a18,#e3b45b,#8a5a18);color:#130e07;font-weight:700;letter-spacing:.025em}
.site-header{background:rgba(7,7,6,.94);border-bottom:1px solid var(--frangis-line);backdrop-filter:blur(10px)}
.header-inner{height:78px}
.logo-wrap{gap:10px}
.logo-image{width:145px;height:40px;background:#000;border-radius:0;object-fit:contain}
.brand-descriptor{font-family:var(--font-body);font-size:.61rem;letter-spacing:.55em;color:var(--frangis-primary);font-weight:700;margin-left:0}
.primary-nav{font-size:.82rem;gap:24px}
.primary-nav>a,.nav-dropdown>button{color:#eee7dc}
.primary-nav>a:after,.nav-dropdown>button:after{background:var(--frangis-primary)}
.nav-dropdown-menu{background:#0d0b08;border-color:var(--frangis-line);box-shadow:0 20px 50px rgba(0,0,0,.42);border-radius:3px}
.nav-dropdown-menu a:hover{background:rgba(213,166,75,.08);color:var(--frangis-secondary)}
.cart-count{background:var(--frangis-primary);color:#160f07}

/* Hero: evolución directa del original */
.hero{padding:58px 0 68px;background:radial-gradient(circle at 78% 38%,#3a2310 0,transparent 35%),linear-gradient(120deg,#050505,#0e0b08)}
.hero-grid{grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr);gap:44px}
.hero-copy{padding:30px 0}
.hero-copy .display{font-size:clamp(3.4rem,6.3vw,6rem);line-height:.92;font-weight:600;color:#fbf7f0}
.hero-copy .lead{color:#c8c0b5;max-width:640px;line-height:1.72}
.hero-micro{color:#d9cbb5;font-size:.8rem}
.hero-poster{position:relative;min-height:0;background:#050505;border:1px solid var(--frangis-line);box-shadow:0 28px 70px rgba(0,0,0,.55);overflow:hidden;display:grid;place-items:center}
.hero-poster picture,.hero-poster img{width:100%;display:block}
.hero-poster img{height:min(690px,72vh);object-fit:cover;object-position:center 34%}
.hero-poster:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(240,200,120,.04);pointer-events:none}

/* Beneficios */
.benefit-strip{background:#0d0b08;border-block-color:var(--frangis-line)}
.benefit{border-color:var(--frangis-line);padding:25px 22px}
.benefit-mark{border-color:var(--frangis-primary);color:var(--frangis-secondary);border-radius:50%}
.benefit strong{color:#f5eee3;font-family:var(--font-display);font-size:1.2rem;font-weight:600}
.benefit p{color:var(--frangis-text-muted)}

/* Categorías */
.category-grid{gap:16px}
.category-card{background:linear-gradient(160deg,#17130e,#0b0a09 72%);border-color:var(--frangis-line);min-height:245px;padding:24px}
.category-card:hover{border-color:var(--frangis-primary);box-shadow:0 18px 44px rgba(0,0,0,.3);transform:translateY(-2px)}
.category-card:before{width:220px;height:220px;background:radial-gradient(circle,rgba(213,166,75,.16),rgba(213,166,75,.025) 58%,transparent 70%);opacity:1;right:-62px;top:-62px}
.category-card:after{width:62px;height:158px;border:1px solid rgba(240,200,120,.26);border-radius:26px 26px 12px 12px;background:linear-gradient(180deg,rgba(240,200,120,.12),rgba(255,255,255,.025));box-shadow:0 15px 24px rgba(0,0,0,.22)}
.category-card h3{color:#f6eee3;font-family:var(--font-display);font-weight:600}
.category-card p{color:var(--frangis-text-muted)}
.category-card .arrow{border-color:var(--frangis-primary);color:var(--frangis-secondary);border-radius:50%}

/* Productos */
.product-grid{gap:17px}
.product-card{background:linear-gradient(180deg,#17130e,#0b0a09);border-color:var(--frangis-line);box-shadow:none}
.product-card:hover{border-color:var(--frangis-primary);box-shadow:0 18px 42px rgba(0,0,0,.3);transform:translateY(-2px)}
.product-media{background:#fff;border-bottom-color:var(--frangis-line)}
.product-badges .badge,.badge{background:rgba(7,7,6,.9);color:var(--frangis-secondary);border-color:rgba(213,166,75,.55);border-radius:2px}
.product-code{color:#928b80}
.product-card h3{font-family:var(--font-display);font-size:1.55rem;font-weight:600;color:#f7efe4}
.inspired{color:#c8bba9}
.product-price{color:var(--frangis-secondary)}
.product-price .old{color:#8f877c}
.product-actions .icon-btn{border-radius:4px}

/* Envíos */
.shipping-banner{background:radial-gradient(circle at 78% 50%,rgba(240,200,120,.18),transparent 30%),linear-gradient(105deg,#0a0907,#2b1a0a 48%,#0b0907);border-block:1px solid var(--frangis-line)}
.shipping-copy .kicker{color:var(--frangis-secondary)}
.shipping-copy p{color:#d8d0c4}
.shipping-fact{border-color:rgba(240,200,120,.24);background:rgba(0,0,0,.17)}
.shipping-visual{background:radial-gradient(circle,#3a2410 0,#15100a 48%,#090807 78%);border-left:1px solid var(--frangis-line)}
.shipping-visual:before{color:rgba(240,200,120,.12)}
.shipping-pin{border-color:var(--frangis-primary);background:#0b0a09}
.shipping-pin:after{background:var(--frangis-secondary)}

/* Diagnóstico */
.quiz-teaser{background:linear-gradient(145deg,#15110c,#0b0a09);border-color:var(--frangis-line);box-shadow:none}
.quiz-step{background:#0a0908;border-color:var(--frangis-line)}
.quiz-step span{color:var(--frangis-primary)}
.quiz-step strong{color:#f3ece2}
.quiz-step small{color:var(--frangis-text-muted)}
.quiz-card{background:linear-gradient(150deg,#15110c,#0b0a09);border-color:var(--frangis-line)}
.quiz-progress{background:#2d251b}
.quiz-progress span{background:linear-gradient(90deg,#b77a20,#f0c878)}
.quiz-choice{background:#0b0a09;border-color:var(--frangis-line);color:#f5eee4;border-radius:3px}
.quiz-choice:hover,.quiz-choice.active{border-color:var(--frangis-primary);background:rgba(213,166,75,.08)}

/* Experiencia */
.experience-grid{gap:52px}
.editorial-image{background:#000;border-color:var(--frangis-line);box-shadow:0 24px 60px rgba(0,0,0,.42)}
.pillar{border-color:var(--frangis-line)}
.pillar-num{color:var(--frangis-secondary)}
.pillar h3{font-family:var(--font-display);font-weight:600;color:#f6efe5}
.pillar p{color:var(--frangis-text-muted)}

/* Viaje del perfume */
.journey-frangis{background:radial-gradient(circle at 15% 40%,rgba(213,166,75,.10),transparent 25%),#080706}
.journey-layout{display:grid;grid-template-columns:minmax(300px,.78fr) 1.22fr;gap:48px;align-items:start}
.journey-art{margin:0;border:1px solid var(--frangis-line);background:#000;box-shadow:0 24px 60px rgba(0,0,0,.38)}
.journey-art img{width:100%;height:auto}
.journey-art figcaption{padding:10px 12px;color:#958d82;font-size:.7rem;line-height:1.5;border-top:1px solid var(--frangis-line)}
.journey-timeline{display:grid;gap:0;margin-top:28px;border-block:1px solid var(--frangis-line)}
.journey-step{display:grid;grid-template-columns:116px 1fr;gap:22px;padding:22px 0;border-bottom:1px solid var(--frangis-line)}
.journey-step:last-child{border-bottom:0}
.journey-step-time{color:var(--frangis-secondary);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.journey-step h3{font:600 1.7rem var(--font-display);margin:0 0 5px;color:#f8f1e7}
.journey-step p{margin:0;color:var(--frangis-text-muted)}

/* Familias olfativas */
.olfactory-card{background:linear-gradient(160deg,#15110c,#0b0a09);border-color:var(--frangis-line)}
.olfactory-card:before{background:radial-gradient(circle,rgba(213,166,75,.20),transparent 68%);opacity:1}
.olfactory-card strong{font-family:var(--font-display);font-size:1.3rem;color:#f5eee3}
.olfactory-card span{color:var(--frangis-text-muted)}

/* FAQ */
.faq-list{border-color:var(--frangis-line)}
.faq-list details{border-color:var(--frangis-line)}
.faq-list summary{color:#f4ece1}
.faq-list summary:after{color:var(--frangis-secondary)}
.faq-answer{color:var(--frangis-text-muted)}

/* Instagram + CTA final */
.instagram-frangis{background:linear-gradient(120deg,#0a0908,#171109);border-block:1px solid var(--frangis-line)}
.instagram-inner,.final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.instagram-copy,.final-cta-copy{max-width:760px}
.instagram-handle{color:var(--frangis-secondary);font-weight:700;letter-spacing:.03em}
.final-cta{background:radial-gradient(circle at 80% 40%,rgba(213,166,75,.14),transparent 28%),#0d0b08;border-top:1px solid var(--frangis-line)}

/* Footer */
.site-footer{background:#050505;color:#f4eee5;border-top:1px solid var(--frangis-line)}
.footer-logo{width:170px;background:#000}
.site-footer .brand-descriptor{color:var(--frangis-primary)}
.site-footer p,.site-footer a{color:#bfb8aa}
.site-footer a:hover{color:var(--frangis-secondary)}
.footer-title{color:var(--frangis-secondary)}
.footer-legal{border-color:rgba(213,166,75,.18);color:#948d83}

/* Páginas internas */
.page-hero{background:radial-gradient(circle at 80% 35%,rgba(213,166,75,.09),transparent 25%),#0d0b08;border-color:var(--frangis-line)}
.breadcrumbs{color:#958d82}
.breadcrumbs a:hover{color:var(--frangis-secondary)}
.filters-panel,.catalog-empty,.aside-card,.form-card{background:#0d0b08;border-color:var(--frangis-line)}
.check-row{color:#d3cbbf}
.check-row input{accent-color:var(--frangis-primary)}
.catalog-search input,.catalog-toolbar select{background:#090909;color:#f7efe5;border-color:var(--frangis-line);border-radius:3px}
.product-info .reference{color:#c2b7a7}
.option-btn{background:#0b0a09;color:#f7efe5;border-color:var(--frangis-line);border-radius:3px}
.option-btn.active{border-color:var(--frangis-primary);box-shadow:inset 0 0 0 1px var(--frangis-primary);color:var(--frangis-secondary)}
.product-facts{background:var(--frangis-line);border-color:var(--frangis-line)}
.product-fact{background:#0d0b08}
.product-tabs{border-color:var(--frangis-line)}
.product-tabs details{border-color:var(--frangis-line)}
.intensity-meter i{background:#302719}
.intensity-meter i.on{background:var(--frangis-primary)}
.prose p,.prose li{color:#c3baae}
.prose blockquote{color:#eee4d7;border-color:var(--frangis-primary)}
.form-field input,.form-field select,.form-field textarea{background:#090909;color:#f7efe5;border-color:var(--frangis-line);border-radius:3px}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--frangis-primary);outline:2px solid rgba(213,166,75,.15)}

/* Búsqueda */
.search-overlay{background:rgba(0,0,0,.78)}
.search-box{background:#0d0b08;border-color:var(--frangis-line);box-shadow:0 20px 70px rgba(0,0,0,.55);border-radius:4px}
.search-head{border-color:var(--frangis-line)}
.search-head input{color:#f8f4ed}
.search-result{border-radius:3px}
.search-result:hover{background:rgba(213,166,75,.07)}

/* Mi selección */
.drawer-backdrop{background:rgba(0,0,0,.72)}
.cart-drawer{background:#0d0b08;color:#f8f4ed;box-shadow:-18px 0 55px rgba(0,0,0,.55)}
.cart-head,.cart-item,.cart-summary{border-color:var(--frangis-line)}
.cart-summary{background:#090807}
.qty-control button,.cart-location input{background:#090909;color:#f8f4ed;border-color:var(--frangis-line)}
.remove-item{color:#e18484}
.toast{background:#17130e;color:#fff;border:1px solid var(--frangis-line);border-radius:3px}
.consent{background:#0d0b08;border-color:var(--frangis-line)}
.consent p{color:#c9c0b4}
.not-found strong{color:var(--frangis-primary)}

/* Botón WhatsApp reconocido, sin contaminar la paleta FRANGIS */
.floating-whatsapp{background:var(--frangis-whatsapp)!important;color:#062d14!important}

/* Compatibilidad con clases generadas por JS */
[data-wa-message].wa-accent{border-color:var(--frangis-whatsapp)}

/* Móvil */
@media(max-width:1080px){
  .hero-grid{grid-template-columns:1fr 1fr}
  .hero-poster img{height:610px}
}
@media(max-width:900px){
  .site-header{background:rgba(7,7,6,.97)}
  .mobile-panel{background:#080706;border-top:1px solid var(--frangis-line)}
  .mobile-panel nav a{border-color:var(--frangis-line);color:#f3ece2}
  .hero-grid{grid-template-columns:1fr}
  .hero-poster{order:-1;max-width:620px;margin-inline:auto;width:100%}
  .hero-poster img{height:min(650px,74vh);object-position:center 31%}
  .journey-layout{grid-template-columns:1fr}
  .journey-art{max-width:620px;margin-inline:auto}
  .filters-panel{background:#0d0b08;border-radius:4px 4px 0 0;box-shadow:0 -18px 40px rgba(0,0,0,.5)}
  .instagram-inner,.final-cta-inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){
  .logo-image{width:110px;height:32px}
  .hero{padding:26px 0 50px}
  .hero-copy .display{font-size:clamp(3rem,14vw,4.6rem)}
  .hero-poster img{height:auto;object-fit:contain}
  .category-card{min-height:210px}
  .product-card h3{font-size:1.24rem}
  .journey-step{grid-template-columns:1fr;gap:6px;padding:18px 0}
  .sticky-mobile-cta{background:#090807;border-color:var(--frangis-line)}
}

@media(prefers-reduced-motion:reduce){
  .hero-poster,.product-card,.category-card{transform:none!important}
}
.floating-whatsapp{position:fixed;right:22px;bottom:22px;z-index:115;width:58px;height:58px;border:0;border-radius:50%;display:grid;place-items:center;background:var(--frangis-whatsapp);color:#062d14;box-shadow:0 12px 34px rgba(0,0,0,.34);transition:transform 180ms ease,box-shadow 180ms ease}
.floating-whatsapp:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(0,0,0,.42)}
.floating-whatsapp .icon{width:26px;height:26px;stroke-width:2}
@media(max-width:620px){.floating-whatsapp{right:14px;bottom:78px;width:54px;height:54px}}
/* Hero product crop: misma pieza aprobada, sin claims inferiores incrustados */
.hero-poster img{height:auto;aspect-ratio:941/720;object-fit:cover;object-position:center}
@media(max-width:900px){.hero-poster img{height:auto;aspect-ratio:941/720;object-fit:cover}}
@media(max-width:620px){
  .product-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}
  .product-actions .btn{min-width:0;padding:7px 5px;font-size:.68rem;line-height:1.15;white-space:normal}
  .product-actions .icon-btn{min-width:0}
}
@media(min-width:1081px){
  [data-home-products]{grid-template-columns:repeat(5,minmax(0,1fr))}
}


/* === PATCH COMERCIAL SEPTIEMBRE 2026 === */
.hero-price-note{margin:18px 0 0;color:var(--frangis-secondary);font-weight:600;letter-spacing:.02em}.hero-price-note strong{font-size:1.15em;color:#fff}.courtesy-sample-strip{background:#0d0b08;border-block:1px solid var(--frangis-line)}.sample-strip-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding-block:24px}.sample-strip-inner .kicker{margin-bottom:5px}.sample-strip-inner .h3{margin:0 0 5px}.sample-strip-inner p:last-child{margin:0;color:var(--frangis-text-muted)}.sample-mark{width:72px;height:72px;border:1px solid var(--frangis-primary);border-radius:50%;display:grid;place-items:center;color:var(--frangis-secondary);font:700 1.15rem var(--font-body);box-shadow:0 0 0 7px rgba(213,166,75,.06)}.cart-item-price{margin-top:6px!important;color:#d9cbb5!important}.cart-item-price strong{color:var(--frangis-secondary)}.cart-delivery-note,.cart-sample-note{margin:8px 0;font-size:.76rem;line-height:1.5}.cart-delivery-note{color:#d9cbb5}.cart-sample-note{padding:9px 10px;border:1px solid rgba(213,166,75,.32);background:rgba(213,166,75,.06);color:#f0d6a1}.product-sample-note{margin:12px 0 0;padding:10px 12px;border-left:2px solid var(--frangis-primary);background:rgba(213,166,75,.06);color:#ead8b5;font-size:.82rem}.journey-visual{position:relative;min-height:600px;border:1px solid var(--frangis-line);background:radial-gradient(circle at 50% 48%,rgba(213,166,75,.2),transparent 28%),linear-gradient(180deg,#050403,#0e0904);overflow:hidden;padding:28px;display:grid;grid-template-rows:auto 1fr auto auto}.journey-visual:before,.journey-visual:after{content:"";position:absolute;border:1px solid rgba(213,166,75,.22);border-radius:50%;width:420px;height:420px;left:50%;top:48%;transform:translate(-50%,-50%)}.journey-visual:after{width:330px;height:330px;border-color:rgba(240,200,120,.12)}.journey-visual-head{position:relative;z-index:2;text-align:center}.journey-visual-head span,.journey-visual-head strong{display:block;font-family:var(--font-display);letter-spacing:.08em}.journey-visual-head span{font-size:1.15rem;color:#fff}.journey-visual-head strong{font-size:2.65rem;color:var(--frangis-secondary);line-height:1}.journey-visual-head small{display:block;margin:10px auto 0;max-width:420px;color:#d9cbb5;line-height:1.5}.journey-product{position:relative;z-index:2;display:grid;place-items:center;min-height:310px}.journey-product img{width:min(86%,390px);height:auto;object-fit:contain;filter:drop-shadow(0 20px 35px rgba(0,0,0,.48))}.journey-senses{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;padding:12px 0;border-block:1px solid rgba(213,166,75,.2);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#f0d6a1}.journey-senses i{font-style:normal;color:var(--frangis-primary)}.journey-disclaimer{position:relative;z-index:2;margin:14px 0 0;color:#a99e8f;font-size:.72rem;line-height:1.55;text-align:center}.special-collection-card{border:1px solid var(--frangis-line);background:radial-gradient(circle at 85% 20%,rgba(213,166,75,.12),transparent 30%),#0b0907;padding:28px}.special-collection-card .h3{margin:0 0 10px;color:#f8f1e7}.special-collection-card p{max-width:760px}.form-field input[type=number],.form-field input[type=date]{min-height:48px}
@media(max-width:760px){.sample-strip-inner{grid-template-columns:auto 1fr}.sample-strip-inner .btn{grid-column:1/-1;width:100%}.journey-visual{min-height:540px;padding:22px}.journey-visual-head strong{font-size:2.15rem}.journey-product{min-height:270px}}
@media(max-width:430px){.sample-mark{width:58px;height:58px;font-size:.95rem}.sample-strip-inner{gap:14px}.journey-visual{min-height:500px;padding:18px}.journey-visual-head strong{font-size:1.85rem}.journey-product img{width:min(92%,340px)}.journey-senses{gap:6px;font-size:.62rem}}

/* === PATCH UX + FILTROS SEPTIEMBRE 2026 === */
/* Producto: jerarquía y acciones más claras */
.product-card{height:100%;overflow:hidden;transition:transform 200ms ease,border-color 200ms ease,box-shadow 200ms ease}
.product-card:hover{transform:translateY(-2px)}
.product-card .product-media{background:#faf8f3;overflow:hidden}
.product-card .product-media img{object-fit:contain;padding:10px;transition:transform 200ms ease}
.product-card:hover .product-media img{transform:scale(1.02)}
.product-body{display:flex;flex-direction:column;flex:1;gap:0}
.product-card-copy{display:flex;flex-direction:column;flex:1}
.product-card-commerce{margin-top:auto}
.product-card h3{overflow-wrap:normal;word-break:normal;hyphens:none}
.product-price{margin-top:16px;color:var(--frangis-secondary);font-weight:800;letter-spacing:.01em}
.product-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:12px;align-items:stretch}
.product-actions .btn{min-width:0;min-height:44px;justify-content:center;text-align:center;padding:9px 10px}
.product-add-btn{display:inline-flex;align-items:center;gap:7px}
.product-add-btn .icon{width:17px;height:17px;flex:0 0 auto}
.product-wa-link{grid-column:1/-1;min-height:42px;border:0;border-top:1px solid rgba(213,166,75,.18);background:transparent;color:#d7cbbb;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 4px 2px;font:600 .78rem/1.3 var(--font-body);cursor:pointer;transition:color 180ms ease,background 180ms ease}
.product-wa-link:hover,.product-wa-link:focus-visible{color:#fff;background:rgba(37,211,102,.035)}
.product-wa-link .icon{width:16px;height:16px;stroke:var(--frangis-whatsapp)}
.product-actions button:focus-visible,.product-actions a:focus-visible{outline:2px solid var(--frangis-secondary);outline-offset:2px}

/* Categorías: producto real cuando existe, recurso editorial cuando no */
.category-grid--visual .category-card{min-height:270px;padding:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(135px,.95fr);align-items:stretch;isolation:isolate;background:linear-gradient(145deg,#17130e,#0b0a09);overflow:hidden}
.category-grid--visual .category-card:before,.category-grid--visual .category-card:after{display:none}
.category-card__content{position:relative;z-index:2;padding:26px;display:flex;flex-direction:column;justify-content:flex-end;min-width:0}
.category-card__content h3{margin:0;color:#f6eee3;font-family:var(--font-display);font-size:clamp(1.65rem,2.2vw,2.1rem);font-weight:600}
.category-card__content p{max-width:100%;margin:8px 0 18px;color:var(--frangis-text-muted);font-size:.88rem;line-height:1.55}
.category-card__media{position:relative;z-index:1;min-height:100%;background:#faf8f3;display:grid;place-items:center;overflow:hidden}
.category-card__media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,10,9,.15),transparent 32%);pointer-events:none}
.category-card__media img{width:100%;height:100%;object-fit:contain;padding:12px;transition:transform 220ms ease}
.category-card--product:hover .category-card__media img{transform:scale(1.025)}
.category-cta{display:inline-flex;align-items:center;gap:8px;color:var(--frangis-secondary);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.category-eyebrow{color:var(--frangis-secondary);font-size:.66rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px}
.category-card--editorial{grid-template-columns:1fr;position:relative}
.category-card--editorial:before{display:block!important;content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 28%,rgba(213,166,75,.18),transparent 28%),linear-gradient(135deg,transparent 55%,rgba(213,166,75,.06));opacity:1}
.category-card--editorial:after{display:block!important;content:"";position:absolute;width:64px;height:166px;right:36px;top:34px;border:1px solid rgba(240,200,120,.28);border-radius:26px 26px 12px 12px;transform:rotate(7deg);background:linear-gradient(180deg,rgba(240,200,120,.10),rgba(255,255,255,.018));box-shadow:0 20px 30px rgba(0,0,0,.25)}
.category-card--editorial .category-card__content{max-width:72%}

/* Catálogo: filtros legibles, chips y estado vacío */
.filters-panel{max-height:calc(100vh - 126px);overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(213,166,75,.45) transparent}
.filter-group{padding:0 0 14px;margin:0 0 14px;border:0;border-bottom:1px solid rgba(213,166,75,.16)}
.filter-group:last-of-type{border-bottom:0}
.filter-group legend{color:#f4eadf;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.check-row{min-height:44px;margin:0;display:flex;align-items:center;gap:11px;cursor:pointer;padding:6px 4px;border-radius:3px;transition:background 160ms ease,color 160ms ease}
.check-row:hover{background:rgba(213,166,75,.055);color:#fff}
.check-row input{width:17px;height:17px;flex:0 0 auto}
.check-row small{color:#8f8577;font-size:.72rem}
.check-row[hidden]{display:none!important}
.catalog-toolbar{margin-bottom:12px}
.catalog-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 16px;padding:10px 0;border-bottom:1px solid rgba(213,166,75,.14)}
.catalog-filter-summary[hidden]{display:none!important}
.filter-chip-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.filter-chip{border:1px solid rgba(213,166,75,.38);background:#0c0a08;color:#e9ddcd;min-height:34px;border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;gap:7px;font:600 .72rem/1.2 var(--font-body);cursor:pointer}
.filter-chip:hover,.filter-chip:focus-visible{border-color:var(--frangis-primary);color:#fff}
.filter-chip--search{cursor:default}
.filter-summary-actions{display:flex;align-items:center;gap:12px}
.catalog-empty--filters{grid-column:1/-1;padding:40px 28px;text-align:center}
.catalog-empty--filters h3{font-family:var(--font-display);font-size:1.8rem;color:#f7efe4;margin:0 0 8px}
.catalog-empty--filters p{margin:0 auto 20px;max-width:560px}
.empty-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.mobile-filter-button{min-height:44px}
.filter-backdrop{display:none}

@media(max-width:900px){
  .filter-backdrop{display:block;position:fixed;inset:0;z-index:165;border:0;background:rgba(0,0,0,.72);cursor:default}
  .filters-panel{z-index:170;max-height:min(82vh,760px);overflow:auto;padding-bottom:calc(24px + env(safe-area-inset-bottom));border-radius:8px 8px 0 0}
  .filters-panel.open{display:block}
  .filters-panel .section-head{position:sticky;top:-24px;z-index:2;background:#0d0b08;padding:18px 0 12px;margin-bottom:8px;border-bottom:1px solid rgba(213,166,75,.16)}
  .check-row{min-height:46px}
}

@media(max-width:760px){
  .category-grid--visual{grid-template-columns:1fr}
  .category-grid--visual .category-card{min-height:235px;grid-template-columns:minmax(0,1.1fr) minmax(125px,.9fr)}
  .category-card__content{padding:22px}
  .category-card--editorial{grid-template-columns:1fr}
  .catalog-filter-summary{align-items:flex-start;flex-direction:column}
}

@media(max-width:620px){
  .section{padding-block:54px}
  .product-grid{grid-template-columns:1fr;gap:14px}
  .product-body{padding:16px}
  .product-card h3{font-size:1.45rem}
  .product-meta{display:flex}
  .product-actions{grid-template-columns:1fr;gap:8px}
  .product-actions .btn{width:100%;font-size:.8rem;min-height:46px;padding:10px 12px}
  .product-wa-link{grid-column:auto;min-height:44px;padding-top:10px}
  .product-media{aspect-ratio:1/1}
  .product-card .product-media img{padding:14px}
  .category-grid--visual .category-card{grid-template-columns:minmax(0,1fr) 132px;min-height:220px}
  .category-card__content{padding:20px}
  .category-card__content p{font-size:.82rem;margin-bottom:14px}
  .category-card--editorial{grid-template-columns:1fr}
  .category-card--editorial .category-card__content{max-width:78%}
  .catalog-toolbar{gap:10px}
  .catalog-toolbar .mobile-filter-button,.catalog-toolbar select,.catalog-search{width:100%;max-width:none}
}

@media(max-width:390px){
  .category-grid--visual .category-card{grid-template-columns:1fr;min-height:0}
  .category-card__media{min-height:190px;max-height:220px}
  .category-card__content{min-height:180px}
  .category-card--editorial .category-card__content{max-width:82%;min-height:210px}
}

@media(prefers-reduced-motion:reduce){
  .product-card,.product-card .product-media img,.category-card,.category-card__media img{transition:none!important;transform:none!important}
}


/* === PATCH FEROMONAS + ENVIOS + UX SEPTIEMBRE 2026 === */
/* La accion Cerrar pertenece al drawer movil, no al sidebar desktop. */
.filters-panel [data-close-filters]{display:none}
.catalog-page .page-hero{padding-block:38px 30px}
.catalog-page .page-hero + .section{padding-top:46px}
.catalog-page .pheromone-safe-note{padding:24px 0 0}
.catalog-page .pheromone-safe-note + .section{padding-top:38px}
.pheromone-safe-note .special-collection-card{padding:20px 24px;background:linear-gradient(120deg,rgba(213,166,75,.075),rgba(0,0,0,.08)),#0b0907}
.pheromone-safe-note .special-collection-card p{margin-bottom:0}
.pheromone-responsible-note{margin:20px 0 0;padding:14px 16px;border-left:2px solid var(--frangis-primary);background:rgba(213,166,75,.055);color:#cfc4b5;font-size:.78rem;line-height:1.55}
.pheromone-responsible-note strong{display:block;color:#f0c878;margin-bottom:4px}
.pheromone-responsible-note p{margin:0}
.catalog-empty--collection{grid-column:1/-1;padding:44px 28px;text-align:center;background:radial-gradient(circle at 50% 0,rgba(213,166,75,.08),transparent 40%),#0b0907}
.catalog-empty--collection h3{font-family:var(--font-display);font-size:1.9rem;color:#f7efe4;margin:0 0 8px}
.catalog-empty--collection .kicker{margin-bottom:8px}

/* Producto aprobado desde arte FRANGIS: conservar su fondo oscuro original. */
.product-card--pheromones .product-media{background:#090807}
.product-card--pheromones .product-media img{padding:0}

/* Categorias editoriales: mismas tarjetas FRANGIS, ilustracion dorada y toda el area clicable. */
.category-grid--visual .category-card--illustrated{min-height:270px;padding:0;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(150px,.75fr);background:radial-gradient(circle at 82% 28%,rgba(213,166,75,.13),transparent 28%),linear-gradient(145deg,#17130e,#0b0a09);border:1px solid rgba(213,166,75,.26);overflow:hidden;isolation:isolate}
.category-grid--visual .category-card--illustrated:before,.category-grid--visual .category-card--illustrated:after{display:none!important}
.category-card--illustrated .category-card__content{padding:28px 18px 28px 28px;justify-content:center}
.category-card--illustrated .category-card__content p{max-width:360px;margin-bottom:14px}
.category-art{position:relative;display:grid;place-items:center;min-height:100%;color:#d8aa58;background:radial-gradient(circle at 50% 45%,rgba(240,200,120,.10),transparent 50%)}
.category-art svg{width:min(112px,70%);height:auto;filter:drop-shadow(0 0 12px rgba(213,166,75,.14))}
.category-go{position:absolute;right:20px;bottom:20px;width:42px;height:42px;border:1px solid var(--frangis-secondary);border-radius:50%;display:grid;place-items:center;color:#f0c878;font-size:1.15rem;background:#0b0907}
.category-card--illustrated:hover .category-go,.category-card--illustrated:focus-visible .category-go{background:var(--frangis-primary);color:#080706}
.category-card--illustrated:hover .category-art svg{transform:translateY(-2px)}
.category-card--illustrated .category-art svg{transition:transform 200ms ease}

/* Envio: el precio usa Montserrat para que 10 nunca se confunda con I0. */
.shipping-price{font-family:var(--font-body);font-weight:800;font-variant-numeric:tabular-nums lining-nums;letter-spacing:0;white-space:nowrap;color:var(--frangis-secondary)}
.shipping-visual{align-content:center;gap:16px;padding:24px;text-align:center}
.shipping-visual-caption{position:absolute;left:20px;right:20px;bottom:24px;color:#cbbca7;font:600 .73rem/1.4 var(--font-body);letter-spacing:.02em}
.shipping-visual-caption strong{color:#f0c878;font-variant-numeric:tabular-nums}
.shipping-fact{line-height:1.5}
.shipping-fact strong{margin-bottom:5px}

@media(max-width:900px){
  .filters-panel [data-close-filters]{display:inline-flex}
  .catalog-page .page-hero{padding-block:30px 24px}
  .catalog-page .page-hero + .section{padding-top:32px}
  .catalog-page .pheromone-safe-note + .section{padding-top:30px}
}
@media(max-width:760px){
  .category-grid--visual .category-card--illustrated{grid-template-columns:minmax(0,1fr) 140px;min-height:225px}
  .category-card--illustrated .category-card__content{padding:22px}
  .shipping-copy .h2{font-size:clamp(2rem,11vw,3.1rem)}
  .shipping-visual{min-height:240px}
}
@media(max-width:430px){
  .category-grid--visual .category-card--illustrated{grid-template-columns:minmax(0,1fr) 118px;min-height:210px}
  .category-card--illustrated .category-card__content{padding:20px 10px 20px 20px}
  .category-art svg{width:min(92px,76%)}
  .category-go{right:14px;bottom:14px;width:38px;height:38px}
  .shipping-price{display:inline-block}
  .shipping-visual-caption{bottom:18px}
}
@media(prefers-reduced-motion:reduce){.category-card--illustrated .category-art svg{transition:none!important;transform:none!important}}

/* ==========================================================
   Guía olfativa visual · FRANGIS
   Recursos sensoriales, navegación directa al catálogo y CTA
   ========================================================== */
.olfactory-section .section-head{align-items:end}
.olfactory-intro{max-width:720px;margin:10px 0 0;color:var(--frangis-text-muted)}
.olfactory-grid--visual{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.olfactory-card--visual{min-height:0;padding:0;display:flex;flex-direction:column;justify-content:stretch;background:#0b0a09;border:1px solid var(--frangis-line);overflow:hidden;text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.olfactory-card--visual:before{display:none}
.olfactory-card--visual picture{display:block;aspect-ratio:4/3;overflow:hidden;background:#0a0908}
.olfactory-card--visual img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1);transition:transform .2s ease,filter .2s ease}
.olfactory-card__body{display:flex!important;flex-direction:column;align-items:flex-start;gap:7px;padding:20px 20px 22px;min-height:146px;color:var(--frangis-text-muted)}
.olfactory-card__body strong{font-family:var(--font-display);font-size:1.55rem;line-height:1.05;color:#f7efe5}
.olfactory-card__body>span{font-size:.86rem;line-height:1.55;color:var(--frangis-text-muted)}
.olfactory-card__body em{margin-top:auto;padding-top:8px;font:700 .72rem var(--font-body);font-style:normal;letter-spacing:.12em;text-transform:uppercase;color:var(--frangis-secondary);transition:transform .2s ease,color .2s ease}
.olfactory-card--visual:hover{transform:translateY(-3px);border-color:rgba(240,200,120,.72);box-shadow:0 18px 38px rgba(0,0,0,.22)}
.olfactory-card--visual:hover img{transform:scale(1.03);filter:brightness(1.04)}
.olfactory-card--visual:hover .olfactory-card__body em{transform:translateX(3px);color:#f6d89c}
.olfactory-card--visual:focus-visible{outline:2px solid var(--frangis-secondary);outline-offset:4px}
.olfactory-quiz-cta{margin-top:22px;padding:22px 24px;border:1px solid var(--frangis-line);background:linear-gradient(115deg,#0a0908,#171108);display:flex;align-items:center;justify-content:space-between;gap:24px}
.olfactory-quiz-cta>div{display:grid;gap:4px}
.olfactory-quiz-cta strong{font-family:var(--font-display);font-size:1.35rem;font-weight:600;color:#f6eee3}
.olfactory-quiz-cta span{font-size:.86rem;color:var(--frangis-text-muted)}
.olfactory-guide-explorer{margin:28px 0 42px}
.olfactory-guide-explorer>h2{margin-bottom:6px}
.olfactory-guide-explorer>p{margin-top:0}
.olfactory-grid--guide{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}
.olfactory-grid--guide .olfactory-card__body{min-height:132px}

@media(max-width:900px){
  .olfactory-grid--visual{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .olfactory-quiz-cta{align-items:flex-start;flex-direction:column}
  .olfactory-quiz-cta .btn{width:100%}
  .olfactory-grid--guide{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .olfactory-section .section-head{align-items:flex-start}
  .olfactory-grid--visual,.olfactory-grid--guide{grid-template-columns:1fr}
  .olfactory-card__body{min-height:0;padding:17px 18px 19px}
  .olfactory-card__body strong{font-size:1.42rem}
  .olfactory-card--visual picture{aspect-ratio:16/10}
  .olfactory-quiz-cta{margin-top:16px;padding:19px 18px}
}
@media(prefers-reduced-motion:reduce){
  .olfactory-card--visual,.olfactory-card--visual img,.olfactory-card__body em{transition:none!important;transform:none!important}
}
\n/* FRANGIS client patch 2026-09: hero clarity, gift incentive and San Borja delivery */
.hero-poster img{image-rendering:auto;backface-visibility:hidden;transform:translateZ(0)}
.gift-promo-strip{background:#0d0b08;border-block:1px solid var(--frangis-line)}
.gift-strip-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding-block:24px}
.gift-strip-inner .kicker{margin-bottom:5px}.gift-strip-inner .h3{margin:0 0 5px}.gift-strip-inner p:last-child{margin:0;color:var(--frangis-text-muted)}
.gift-mark{width:72px;height:72px;border:1px solid var(--frangis-primary);border-radius:50%;display:grid;place-items:center;font-size:1.65rem;box-shadow:0 0 0 7px rgba(213,166,75,.06);background:rgba(213,166,75,.035)}
.cart-gift-note{margin:8px 0;padding:9px 10px;border:1px solid rgba(213,166,75,.32);background:rgba(213,166,75,.06);color:#f0d6a1;font-size:.76rem;line-height:1.5}
.cart-gift-note[hidden]{display:none!important}
.product-gift-note{margin:12px 0 0;padding:10px 12px;border-left:2px solid var(--frangis-primary);background:rgba(213,166,75,.06);color:#ead8b5;font-size:.82rem}
.shipping-visual-caption strong,.shipping-price{font-family:var(--font-body);font-weight:800;font-variant-numeric:tabular-nums lining-nums;letter-spacing:0;white-space:nowrap}
@media(max-width:760px){.gift-strip-inner{grid-template-columns:auto 1fr}.gift-strip-inner .btn{grid-column:1/-1;width:100%}}
@media(max-width:430px){.gift-mark{width:58px;height:58px;font-size:1.25rem}.gift-strip-inner{gap:14px}}
