:root{
  --cream:#f7f0e8;
  --cream-2:#fffaf4;
  --brown:#4a2414;
  --brown-2:#6f3a20;
  --terracotta:#a65f3b;
  --rose:#c98986;
  --olive:#6d7a62;
  --gold:#d0a15f;
  --text:#3f2b22;
  --muted:#79675e;
  --line:#e8d9cd;
  --white:#ffffff;
  --shadow:0 18px 45px rgba(82,48,31,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--text);font-family:"DM Sans",sans-serif;line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:10px clamp(18px,4vw,60px);background:rgba(255,250,244,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(74,36,20,.08)}
.brand img{width:170px;height:62px;object-fit:contain;object-position:left center}
.nav{display:flex;gap:24px;align-items:center;font-size:.95rem}
.nav a{font-weight:600}
.nav-cta{background:var(--brown);color:white;padding:10px 16px;border-radius:999px}
.menu-toggle{display:none;border:none;background:transparent;font-size:1.8rem;color:var(--brown)}
.hero{position:relative;min-height:76vh;display:flex;align-items:flex-end;padding:clamp(36px,6vw,80px);overflow:hidden;background:
  radial-gradient(circle at 75% 20%,rgba(255,255,255,.18),transparent 28%),
  linear-gradient(125deg,#3f2114 0%,#8b5b3d 54%,#c8a47f 100%)}
.hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(transparent 94%,rgba(255,255,255,.08) 94%);background-size:100% 18px;opacity:.16}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,18,10,.86),rgba(38,18,10,.25) 58%,rgba(38,18,10,.08))}
.hero-content{position:relative;z-index:2;max-width:720px;color:white}
.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:700;color:var(--terracotta)}
.hero .eyebrow{color:#f6c99f}
h1,h2,h3{font-family:"Cormorant Garamond",serif;margin:0;color:var(--brown)}
h1{font-size:clamp(3.1rem,8vw,6.9rem);line-height:.88;color:white;letter-spacing:-.03em}
h2{font-size:clamp(2.3rem,5vw,4rem);line-height:1}
h3{font-size:1.7rem;line-height:1.1}
.hero-copy{font-size:clamp(1.05rem,2.1vw,1.35rem);max-width:620px;margin:22px 0 30px;color:#fff8f0}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:700;transition:.2s ease}
.btn:hover{transform:translateY(-2px)}
.btn.primary{background:var(--terracotta);color:white}
.btn.ghost{border:1px solid rgba(255,255,255,.55);color:white;background:rgba(255,255,255,.08)}
.btn.light{background:#fff6eb;color:var(--brown)}
.hero-note{position:absolute;right:7%;top:16%;z-index:2;color:#fff4e7;font-family:"Parisienne",cursive;font-size:2rem;transform:rotate(-4deg)}
.hero-note span{font-size:2.25rem}
.section{padding:clamp(64px,8vw,110px) clamp(18px,5vw,74px);max-width:1500px;margin:auto}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:32px}
.section-intro,.small-note{max-width:420px;color:var(--muted)}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.category-card{background:rgba(255,255,255,.62);border:1px solid rgba(74,36,20,.08);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}
.category-photo{height:280px;display:grid;place-items:center;background:linear-gradient(145deg,#e8c8ad,#a16b4c);color:white;font-weight:700;letter-spacing:.04em;position:relative}
.mate-photo{background:linear-gradient(145deg,#d9b47c,#80603f)}
.cake-photo{background:linear-gradient(145deg,#e5b4b8,#995d68)}
.sweet-photo{background:linear-gradient(145deg,#e5c79f,#b57852)}
.catering-photo{background:linear-gradient(145deg,#b2bca8,#657059)}
.photo-placeholder{background:rgba(56,30,18,.52);padding:10px 14px;border-radius:999px;font-size:.86rem}
.card-body{padding:24px}
.card-body .icon{font-size:1.7rem;display:block;margin-bottom:6px}
.card-body p{color:var(--muted);min-height:48px}
.card-body a{display:inline-block;margin-top:8px;font-weight:800;color:var(--brown-2)}
.new-section{padding-top:30px}
.news-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.news-card{position:relative;background:var(--cream-2);border-radius:20px;padding:14px;border:1px solid var(--line)}
.news-image{height:180px;border-radius:14px;background:linear-gradient(135deg,#c99f7e,#7b4a31);display:grid;place-items:center;color:white;font-weight:700;margin-bottom:18px}
.news-card:nth-child(2) .news-image{background:linear-gradient(135deg,#d5b98f,#9b724f)}
.news-card:nth-child(3) .news-image{background:linear-gradient(135deg,#d5b49f,#aa7e68)}
.badge{position:absolute;z-index:2;top:26px;left:26px;background:#9e3f42;color:white;font-size:.72rem;font-weight:800;padding:6px 9px;border-radius:8px}
.news-card p{color:var(--muted)}
.story{max-width:1500px;margin:40px auto 0;display:grid;grid-template-columns:1.05fr .95fr;background:#fff8f1;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}
.story-photo{min-height:520px;background:linear-gradient(145deg,#9d7658,#5e3d2a);display:grid;place-items:center;color:#fff;padding:40px;text-align:center;font-weight:700}
.story-copy{padding:clamp(40px,7vw,90px);display:flex;flex-direction:column;justify-content:center}
.story-copy p{font-size:1.08rem}
.script{font-family:"Parisienne",cursive;color:var(--terracotta);font-size:2rem!important}
.script.big{font-size:clamp(2.8rem,6vw,5rem)!important;margin:0}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gallery-grid div{aspect-ratio:1.25;border-radius:18px;background:linear-gradient(145deg,#b98a68,#70472e);display:grid;place-items:center;color:white;font-weight:800}
.gallery-grid div:nth-child(2n){background:linear-gradient(145deg,#d8b88f,#9d7655)}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
blockquote{margin:0;background:#fffaf4;padding:26px;border-radius:18px;border:1px solid var(--line);box-shadow:0 10px 30px rgba(82,48,31,.06)}
blockquote p{font-size:1rem}
blockquote footer{color:var(--muted);font-size:.9rem}
.stars{color:#d8a33f;letter-spacing:.12em}
.final-cta{margin-top:40px;padding:clamp(50px,8vw,100px) clamp(18px,6vw,90px);display:flex;align-items:end;justify-content:space-between;gap:40px;background:linear-gradient(120deg,#3b2117,#764427);color:#fff}
.final-cta h2{color:white;max-width:850px}
.final-cta p{max-width:700px;color:#f2dfd2}
.footer{display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:30px;padding:34px clamp(18px,5vw,74px);background:#fffaf4;border-top:1px solid var(--line)}
.footer img{width:200px;height:95px;object-fit:contain}
.footer-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;font-size:.9rem;color:var(--muted)}
.footer-info p{margin:0}
.footer-tagline{font-family:"Cormorant Garamond",serif;font-size:1.15rem;color:var(--brown)}
.floating-wa{position:fixed;right:18px;bottom:18px;z-index:40;background:#2f7d4c;color:white;padding:12px 18px;border-radius:999px;font-weight:800;box-shadow:0 12px 30px rgba(32,90,57,.32)}
@media (max-width:900px){
  .menu-toggle{display:block}
  .nav{display:none;position:absolute;top:82px;left:16px;right:16px;flex-direction:column;align-items:stretch;background:#fffaf4;border:1px solid var(--line);padding:18px;border-radius:18px;box-shadow:var(--shadow)}
  .nav.open{display:flex}
  .hero{min-height:72vh;padding:46px 22px}
  .hero-note{display:none}
  .section-heading{align-items:start;flex-direction:column}
  .category-grid,.news-row,.review-grid{grid-template-columns:1fr}
  .story{margin-inline:16px;grid-template-columns:1fr}
  .story-photo{min-height:340px}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .final-cta{align-items:flex-start;flex-direction:column}
  .footer{grid-template-columns:1fr;text-align:center}
  .footer img{margin:auto}
  .footer-info{grid-template-columns:1fr}
  .brand img{width:145px;height:56px}
}
@media (max-width:520px){
  .hero{min-height:78vh}
  h1{font-size:3.7rem}
  .category-photo{height:220px}
  .gallery-grid{grid-template-columns:1fr 1fr;gap:10px}
  .gallery-grid div{font-size:.85rem}
  .floating-wa{font-size:.82rem;padding:11px 14px}
}

/* Ajustes V2 */
.brand{display:flex;align-items:center;min-width:0}
.brand img{width:245px;height:86px;object-fit:contain;object-position:left center;filter:none}
.footer img{width:270px;height:135px;object-fit:contain}
.wa-link{display:inline-flex!important;align-items:center;gap:8px}
.wa-link img,.catalog-btn img{width:19px;height:19px;display:block}
.floating-wa{display:flex;align-items:center;gap:9px;padding:11px 16px}
.floating-wa img{width:25px;height:25px;display:block}
.back-home{font-weight:700;color:var(--brown);padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.65)}

.catalog-page{background:var(--cream)}
.catalog-hero{padding:80px clamp(18px,6vw,92px) 70px;background:linear-gradient(120deg,#3b2117,#74462c);color:white;text-align:left}
.catalog-hero h1{font-size:clamp(3.2rem,7vw,6.4rem);color:white}
.catalog-hero p:not(.eyebrow){max-width:720px;font-size:1.1rem;color:#f5e8dd}
.catalog-section{padding:70px clamp(18px,6vw,92px);max-width:1500px;margin:auto}
.alt-catalog{background:#fffaf4;max-width:none}
.catalog-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}
.price-chip{background:var(--brown);color:white;padding:11px 17px;border-radius:999px;font-weight:800;white-space:nowrap}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.product-card{background:var(--cream-2);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 12px 30px rgba(82,48,31,.07)}
.product-photo{height:220px;display:grid;place-items:center;background:linear-gradient(145deg,#e7c5aa,#9d6748)}
.product-info{padding:22px}
.product-info p{color:var(--muted)}
.order-link{display:inline-flex;margin-top:6px;font-weight:800;color:var(--brown-2)}
.wide-product{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}
.wide-photo{min-height:320px;border-radius:24px;background:linear-gradient(145deg,#d9bb92,#987352);display:grid;place-items:center}
.catalog-btn{background:var(--terracotta);color:white;margin-top:14px;gap:8px}
.mini-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:20px}
.mini-product{background:#fffaf4;border:1px solid var(--line);border-radius:18px;padding:22px}
.product-price{font-size:1.25rem;font-weight:800;color:var(--terracotta)!important;margin:.3rem 0}
.combo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.combo-card{padding:28px;border-radius:22px;background:linear-gradient(145deg,#fff9f2,#f2e1d3);border:1px solid var(--line)}
.combo-card span{font-size:.75rem;font-weight:800;letter-spacing:.13em;color:var(--terracotta)}
.combo-card strong{display:block;font-size:1.8rem;color:var(--brown);margin:10px 0 16px}
.combo-card a{font-weight:800;color:var(--brown-2)}
.catalog-final{padding:70px clamp(18px,6vw,92px);background:linear-gradient(120deg,#3b2117,#74462c);color:white;text-align:center}
.catalog-final h2{color:white;max-width:760px;margin:0 auto 24px}
.catalog-final .btn{margin:auto}
.catalog-footer{grid-template-columns:280px 1fr}
@media(max-width:900px){
  .brand img{width:190px;height:72px}
  .footer img{width:230px;height:115px}
  .product-grid,.mini-product-grid,.combo-grid{grid-template-columns:1fr}
  .wide-product{grid-template-columns:1fr}
  .catalog-heading{align-items:flex-start;flex-direction:column}
  .catalog-footer{grid-template-columns:1fr}
  .back-home{font-size:.86rem}
}
@media(max-width:520px){
  .site-header{padding:8px 14px}
  .brand img{width:165px;height:64px}
  .floating-wa span{display:none}
  .floating-wa{width:52px;height:52px;padding:0;justify-content:center;border-radius:50%}
  .floating-wa img{width:28px;height:28px}
}

/* Tortas personalizadas V4 */
.cake-hero{background:linear-gradient(120deg,#4b2419,#875247 58%,#b77b78)}
.cake-hero-btn{margin-top:18px}
.cake-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cake-feature{background:#fffaf4;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 10px 28px rgba(82,48,31,.05)}
.cake-feature>span{font-size:2rem;display:block;margin-bottom:10px}
.cake-feature p{color:var(--muted);margin-bottom:0}
.cake-gallery-section{background:#fffaf4;max-width:none}
.cake-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1500px;margin:auto}
.cake-gallery-item{aspect-ratio:1/1;border-radius:22px;display:grid;place-items:center;background:linear-gradient(145deg,#e7c1bd,#a66d6c);overflow:hidden;color:#fff;font-weight:800}
.cake-gallery-item:nth-child(2n){background:linear-gradient(145deg,#ecd4bd,#ae7d61)}
.cake-gallery-item span{background:rgba(65,35,27,.42);padding:9px 13px;border-radius:999px}
.cake-how{max-width:1500px;margin:auto;padding:80px clamp(18px,6vw,92px);display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.cake-how>div>p:not(.eyebrow){color:var(--muted);max-width:570px}
.cake-steps{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.cake-steps li{display:flex;align-items:flex-start;gap:16px;background:#fffaf4;border:1px solid var(--line);padding:18px;border-radius:18px}
.cake-steps strong{width:42px;height:42px;flex:0 0 42px;border-radius:50%;display:grid;place-items:center;background:var(--terracotta);color:#fff}
.cake-steps span{display:grid;gap:3px}
.cake-steps b{font-size:1rem;color:var(--brown)}
.cake-steps small{color:var(--muted);font-size:.9rem}
.quote-section{display:grid;grid-template-columns:.78fr 1.22fr;gap:60px;align-items:start}
.quote-copy{position:sticky;top:120px}
.cake-form{background:#fffaf4;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.form-grid label{display:grid;gap:7px;font-size:.9rem;font-weight:700;color:var(--brown)}
.form-grid .full{grid-column:1/-1}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #dcc9bb;background:#fffdf9;color:var(--text);border-radius:13px;padding:13px 14px;font:inherit;outline:none}
.form-grid textarea{resize:vertical;min-height:110px}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--terracotta);box-shadow:0 0 0 3px rgba(166,95,59,.12)}
.form-help{color:var(--muted);font-size:.88rem;margin:16px 0}
.quote-submit{border:none;cursor:pointer;gap:9px;font:inherit}
.quote-submit img{width:20px;height:20px}
.cake-final{background:linear-gradient(120deg,#4b2419,#875247)}
@media(max-width:900px){
  .cake-feature-grid,.cake-gallery{grid-template-columns:1fr 1fr}
  .cake-how,.quote-section{grid-template-columns:1fr;gap:32px}
  .quote-copy{position:static}
}
@media(max-width:560px){
  .cake-feature-grid,.cake-gallery,.form-grid{grid-template-columns:1fr}
  .form-grid .full{grid-column:auto}
  .cake-form{padding:20px}
}

/* Inicio con fotos reales / carruseles por categoría */
/* Inicio con fotos reales / carruseles por categoría */
.home-hero{
  position:relative;
  min-height:clamp(610px,73vh,790px);
  display:flex;
  align-items:center;
  padding:clamp(58px,7vw,100px) clamp(22px,7vw,110px);
  overflow:hidden;
  isolation:isolate;
  background:#5b3827 url("assets/home/hero.jpg") center center / cover no-repeat;
}
.home-hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(90deg,rgba(38,20,12,.76) 0%,rgba(38,20,12,.58) 44%,rgba(38,20,12,.34) 72%,rgba(38,20,12,.24) 100%);
}
.home-hero:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,rgba(20,10,6,.12) 0%,rgba(20,10,6,.08) 55%,rgba(20,10,6,.30) 100%);
}
.home-hero-backdrop{
  position:absolute;
  left:clamp(18px,5vw,74px);
  top:50%;
  width:min(720px,76vw);
  height:74%;
  transform:translateY(-50%);
  border-radius:34px;
  background:radial-gradient(circle at 34% 40%,rgba(53,28,17,.36),rgba(53,28,17,.06) 67%,transparent 82%);
  filter:blur(1px);
  pointer-events:none;
  z-index:0;
}
.home-hero .hero-content{
  position:relative;
  z-index:2;
  max-width:760px;
  color:#fff;
  margin:0;
  text-align:left;
  text-shadow:0 3px 18px rgba(26,12,7,.28);
}
.home-hero .eyebrow{color:#ffd8b8}
.home-hero h1{
  color:#fffaf4;
  font-size:clamp(3.7rem,7vw,7rem);
  line-height:.88;
  text-shadow:0 4px 22px rgba(28,13,7,.38);
}
.home-hero .hero-copy{
  color:#fff8f0;
  max-width:680px;
  margin:22px 0 28px;
  font-size:clamp(1.05rem,1.7vw,1.3rem);
  text-shadow:0 2px 12px rgba(28,13,7,.42);
}
.home-hero .hero-actions{justify-content:flex-start}
.home-hero .btn.primary{
  background:#fff6eb;
  color:var(--brown);
  box-shadow:0 12px 30px rgba(30,14,8,.20);
}
.home-hero .home-ghost{
  border:1px solid rgba(255,255,255,.78);
  color:#fff;
  background:rgba(62,31,18,.24);
  backdrop-filter:blur(7px);
}
.home-hero .home-ghost:hover{background:rgba(62,31,18,.40)}
.hero-signature{
  position:absolute;
  z-index:2;
  right:5%;
  bottom:6%;
  color:#fff8ee;
  font-family:"Parisienne",cursive;
  font-size:clamp(1.8rem,2.8vw,3rem);
  line-height:.95;
  text-shadow:0 3px 16px rgba(35,16,9,.44);
  transform:rotate(-3deg);
}
.hero-signature span{font-size:1.08em}

.home-category-grid .category-card{transition:transform .25s ease,box-shadow .25s ease}
.home-category-grid .category-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(82,48,31,.14)}
.home-category-grid .category-photo{
  height:auto;
  aspect-ratio:3/2;
  padding:0;
  overflow:hidden;
  background:#eadfd4;
  display:block;
  position:relative;
}
.category-image{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#eadfd4;
  opacity:1;
  transform:scale(1);
  filter:blur(0);
  transition:
    opacity .56s cubic-bezier(.22,1,.36,1),
    transform .56s cubic-bezier(.22,1,.36,1),
    filter .56s cubic-bezier(.22,1,.36,1);
  will-change:opacity,transform,filter;
  backface-visibility:hidden;
}
.category-image-next{
  opacity:0;
  z-index:2;
  transform:scale(1.024);
  filter:blur(1.2px);
}
.category-image-next.is-visible{
  opacity:1;
  transform:scale(1);
  filter:blur(0);
}
.category-image.is-fading{
  opacity:0;
  transform:scale(.992);
  filter:blur(.7px);
}
.category-carousel.is-playing:not(.is-transitioning) .category-image{
  animation:delilu-photo-breathe 1.78s ease-out both;
}
@keyframes delilu-photo-breathe{
  from{transform:scale(1)}
  to{transform:scale(1.008)}
}
@media (prefers-reduced-motion:reduce){
  .category-image{transition:opacity .22s linear;filter:none!important;transform:none!important;animation:none!important}
}
.carousel-status{position:absolute;left:18px;right:18px;bottom:16px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}
.carousel-label{display:inline-flex;background:rgba(54,30,19,.72);backdrop-filter:blur(5px);color:#fff;padding:7px 11px;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.02em;opacity:0;transform:translateY(4px);transition:.3s ease}
.category-carousel:hover .carousel-label,.category-carousel.preview-active .carousel-label{opacity:1;transform:none}
.carousel-dots{display:flex;gap:5px;margin-left:auto}
.carousel-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.60);box-shadow:0 1px 6px rgba(40,20,10,.28);transition:width .32s cubic-bezier(.22,1,.36,1),background .25s ease;position:relative;overflow:hidden}
.carousel-dot.active{width:22px;border-radius:99px;background:rgba(255,255,255,.48)}
.carousel-dot.active:after{content:"";position:absolute;inset:0 auto 0 0;width:0;background:#fff;border-radius:inherit}
.category-carousel.is-playing .carousel-dot.active:after{animation:delilu-dot-progress 2.34s linear forwards}
@keyframes delilu-dot-progress{from{width:0}to{width:100%}}
.category-photo:after{content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(180deg,transparent 78%,rgba(41,21,12,.14));pointer-events:none}
.category-photo-empty{display:grid!important;place-items:center!important;background:linear-gradient(135deg,#a9b49f,#66715d)!important}
.category-photo-empty:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 25%,rgba(255,255,255,.18),transparent 26%)}
.category-photo-empty .photo-placeholder{position:relative;z-index:2}
.category-card-wide{grid-column:1/-1;display:grid;grid-template-columns:1.35fr .65fr}
.category-card-wide .category-photo{height:100%;min-height:360px;aspect-ratio:auto}
.category-card-wide .card-body{display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4vw,54px)}
.category-card-wide .card-body p{min-height:0;max-width:520px}

/* La sección "Lo nuevo en Delilú" queda desactivada hasta cargar la campaña del Día de la Madre. */
.new-section[hidden]{display:none!important}

@media (max-width:900px){
  .home-hero{
    min-height:620px;
    padding:62px 24px 54px;
    background-position:center center;
  }
  .home-hero:before{background:linear-gradient(180deg,rgba(38,20,12,.58) 0%,rgba(38,20,12,.52) 58%,rgba(38,20,12,.64) 100%)}
  .home-hero-backdrop{display:none}
  .home-hero .hero-content{max-width:720px;margin:auto;text-align:center}
  .home-hero h1{font-size:clamp(3.2rem,11.5vw,5.6rem)}
  .home-hero .hero-copy{margin:20px auto 26px}
  .home-hero .hero-actions{justify-content:center}
  .hero-signature{right:5%;bottom:4.5%;font-size:1.75rem}
  .category-card-wide{grid-column:auto;display:block}
  .category-card-wide .category-photo{min-height:0;aspect-ratio:3/2}
  .carousel-label{opacity:1;transform:none;font-size:.72rem}
}
@media (max-width:520px){
  .home-hero{min-height:585px;padding:48px 18px 64px;background-position:54% center}
  .home-hero h1{font-size:3.75rem}
  .home-hero .hero-copy{font-size:1rem;margin:18px auto 24px}
  .hero-signature{font-size:1.5rem;right:5%;bottom:4%}
  .home-category-grid .category-photo,.category-card-wide .category-photo{aspect-ratio:3/2}
  .carousel-status{left:12px;right:12px;bottom:12px}
}

/* Pastas V6 - menú actualizado */
.pasta-catalog-hero{
  min-height:430px;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg,rgba(45,23,14,.86) 0%,rgba(45,23,14,.62) 44%,rgba(45,23,14,.22) 100%),
    url("assets/home/pastas-sorrentinos.jpg") center 48% / cover no-repeat;
}
.pasta-catalog-hero>div{max-width:760px}
.pasta-catalog-hero h1{max-width:760px}
.pasta-hero-btn{margin-top:14px}
.catalog-subcopy{margin:10px 0 0;color:var(--muted);max-width:620px}
.pasta-heading{align-items:flex-end}

.sorrentinos-feature{display:grid;grid-template-columns:1.12fr .88fr;gap:30px;align-items:stretch}
.sorrentinos-photo-wrap{position:relative;min-height:560px;border-radius:28px;overflow:hidden;background:#eadfd4;box-shadow:var(--shadow)}
.sorrentinos-photo{width:100%;height:100%;object-fit:cover;object-position:center}
.photo-badge{position:absolute;left:20px;bottom:20px;padding:10px 14px;border-radius:999px;background:rgba(255,250,244,.92);color:var(--brown);font-weight:800;box-shadow:0 8px 26px rgba(55,28,15,.16);backdrop-filter:blur(8px)}
.sorrentinos-options{display:grid;grid-template-rows:1fr 1fr;gap:18px}
.pasta-price-card{display:flex;flex-direction:column;justify-content:space-between;background:#fffaf4;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 14px 34px rgba(82,48,31,.06)}
.pasta-price-card.featured{background:linear-gradient(145deg,#fffaf4,#f6e9dc)}
.pasta-price-card.premium{background:linear-gradient(145deg,#f4e4d5,#ead1bb);border-color:#d6b799}
.pasta-price-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.pasta-price-card-head h3{font-size:2rem}
.pasta-price-card-head strong{font-size:1.7rem;color:var(--terracotta);white-space:nowrap}
.pasta-kicker{display:block;font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--terracotta);margin-bottom:4px}
.flavor-list{list-style:none;margin:20px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.flavor-list li{position:relative;padding-left:17px;color:var(--text)}
.flavor-list li:before{content:"";position:absolute;left:0;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--terracotta)}
.premium .flavor-list{grid-template-columns:1fr;margin-bottom:8px}
.premium-note{margin:6px 0 18px;color:var(--muted);font-size:.94rem}

.pasta-variety-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.pasta-variety-card{background:#fffaf4;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 14px 34px rgba(82,48,31,.07)}
.pasta-variety-photo{height:380px;background:#eadfd4;overflow:hidden}
.pasta-variety-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.pasta-variety-info{padding:24px}
.pasta-variety-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}
.pasta-variety-title h3{font-size:2rem}
.pasta-variety-title span{color:var(--muted);font-size:.9rem;text-align:right}
.pasta-size-prices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.pasta-size-prices.one-price{grid-template-columns:minmax(180px,1fr) 1fr}
.pasta-size-prices>span{background:var(--cream);border-radius:16px;padding:14px 16px;display:flex;align-items:end;justify-content:space-between;gap:10px}
.pasta-size-prices small{display:block;color:var(--muted);font-weight:700}
.pasta-size-prices strong{font-size:1.3rem;color:var(--brown)}

.pasta-mini-grid{gap:20px}
.pasta-mini-product{position:relative;padding-top:26px}
.mini-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--cream);font-size:1.45rem;margin-bottom:14px}
.pasta-mini-product p:last-child{color:var(--muted);margin-bottom:0}

.pasta-combo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pasta-combo-grid .combo-card{min-height:220px;display:flex;flex-direction:column;align-items:flex-start}
.pasta-combo-grid .combo-card h3{font-size:1.55rem;margin-top:8px}
.pasta-combo-grid .combo-card strong{margin-top:auto}
.pasta-combo-grid .premium-combo{background:linear-gradient(145deg,#f0dfcf,#e7c7aa);border-color:#d3ae8a}
.pasta-final-v6{background:linear-gradient(120deg,#3b2117,#74462c)}

@media(max-width:1000px){
  .sorrentinos-feature{grid-template-columns:1fr}
  .pasta-variety-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sorrentinos-photo-wrap{min-height:460px}
  .sorrentinos-options{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .pasta-combo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .pasta-catalog-hero{min-height:400px;background-position:58% center}
  .sorrentinos-options,.pasta-variety-grid{grid-template-columns:1fr}
  .sorrentinos-photo-wrap{min-height:360px}
  .pasta-variety-photo{height:300px}
  .flavor-list{grid-template-columns:1fr}
  .pasta-price-card-head,.pasta-variety-title{align-items:flex-start;flex-direction:column}
  .pasta-variety-title span{text-align:left}
  .pasta-size-prices.one-price{grid-template-columns:1fr}
  .pasta-combo-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .pasta-catalog-hero{padding-top:60px;padding-bottom:60px}
  .sorrentinos-photo-wrap{min-height:290px}
  .pasta-variety-photo{height:250px}
  .pasta-price-card{padding:21px}
  .pasta-price-card-head strong{font-size:1.45rem}
}

/* ===== Para el mate · v7.1 ===== */
.mate-page-v7 .mate-catalog-hero {
  position: relative;
  min-height: 470px;
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  background: #4f3021 url("assets/mate/hero-mate-cafe.jpg") 58% center / cover no-repeat;
}
.mate-page-v7 .mate-catalog-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(90deg,
    rgba(39,21,13,.86) 0%,
    rgba(39,21,13,.76) 34%,
    rgba(39,21,13,.48) 52%,
    rgba(39,21,13,.14) 76%,
    rgba(39,21,13,.06) 100%);
}
.mate-page-v7 .mate-catalog-hero > div {
  position: relative;
  z-index: 1;
  max-width: 700px;
}
.mate-page-v7 .mate-catalog-hero .eyebrow { color: #f1c29e; }
.mate-page-v7 .mate-catalog-hero h1 { color: #fffaf4; text-shadow: 0 3px 18px rgba(28,14,8,.22); }
.mate-page-v7 .mate-catalog-hero p:not(.eyebrow) { color: #fff5ec; max-width: 650px; text-shadow: 0 2px 12px rgba(28,14,8,.28); }
.mate-page-v7 .mate-hero-btn {
  margin-top: 10px;
  background: rgba(255,250,244,.96);
  color: #4d2c1f;
  border-color: rgba(255,255,255,.55);
  box-shadow: 0 12px 30px rgba(30,14,7,.18);
}
.mate-page-v7 .mate-hero-btn:hover { background: #fff; transform: translateY(-1px); }
.mate-page-v7 .mate-section { padding-top: 78px; padding-bottom: 82px; }
.mate-page-v7 .mate-heading { margin-bottom: 34px; }
.mate-page-v7 .mate-heading h2 { margin-bottom: 8px; }
.mate-page-v7 .mate-product-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 28px;
}
.mate-page-v7 .mate-savoury-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
.mate-page-v7 .mate-product-card {
  background: #fffaf5;
  border: 1px solid rgba(92,54,35,.12);
  border-radius: 26px;
  overflow: hidden;
  box-shadow: 0 18px 44px rgba(83,50,32,.08);
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.mate-page-v7 .mate-product-photo {
  height: 300px;
  background: #f6ede4;
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.mate-page-v7 .mate-savoury-grid .mate-product-photo { height: 250px; }
.mate-page-v7 .mate-product-photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  border-radius: 18px;
}
.mate-page-v7 .bagel-photo { background: #efe5da; }
.mate-page-v7 .bagel-photo img { object-fit: contain; }
.mate-page-v7 .mate-dual-photo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.mate-page-v7 .mate-dual-photo img { min-width: 0; object-fit: cover; }
.mate-page-v7 .mate-product-body {
  padding: 24px 24px 26px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 1;
}
.mate-page-v7 .mate-product-title h3 {
  margin: 2px 0 0;
  font-family: 'Cormorant Garamond', serif;
  font-size: 2rem;
  line-height: 1;
  color: #4d2c1f;
}
.mate-page-v7 .mate-kicker {
  display: inline-block;
  font-size: .74rem;
  letter-spacing: .11em;
  text-transform: uppercase;
  font-weight: 700;
  color: #a76543;
}
.mate-page-v7 .mate-product-body > p {
  color: #735f55;
  line-height: 1.55;
  margin: 0;
}
.mate-page-v7 .mate-price-grid {
  display: grid;
  gap: 9px;
  margin-top: 2px;
}
.mate-page-v7 .mate-price-grid.three { grid-template-columns: repeat(3, minmax(0,1fr)); }
.mate-page-v7 .mate-price-grid.two { grid-template-columns: repeat(2, minmax(0,1fr)); }
.mate-page-v7 .mate-price-grid.one { grid-template-columns: minmax(0, 190px); }
.mate-page-v7 .mate-price-grid span {
  padding: 12px 10px;
  border-radius: 14px;
  background: #f5ebe2;
  border: 1px solid rgba(122,76,49,.10);
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.mate-page-v7 .mate-price-grid small {
  font-size: .75rem;
  color: #806b60;
  font-weight: 600;
}
.mate-page-v7 .mate-price-grid strong {
  font-size: 1.06rem;
  color: #4c2b1d;
}
.mate-page-v7 .mate-extra-price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-top: 1px dashed rgba(92,54,35,.18);
  padding-top: 12px;
  color: #725e53;
  font-size: .88rem;
}
.mate-page-v7 .mate-extra-price strong { color: #4c2b1d; font-size: 1rem; white-space: nowrap; }
.mate-page-v7 .mate-product-card .order-link {
  margin-top: auto;
  padding-top: 4px;
}
.mate-page-v7 .mate-sweet-section { background: #f4ebe2; }
.mate-page-v7 .mate-final-v7 { margin-top: 0; }

@media (max-width: 1050px) {
  .mate-page-v7 .mate-savoury-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .mate-page-v7 .mate-product-grid { gap: 22px; }
}
@media (max-width: 760px) {
  .mate-page-v7 .mate-catalog-hero {
    min-height: 430px;
    background-position: 68% center;
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .mate-page-v7 .mate-catalog-hero::before {
    background: linear-gradient(90deg, rgba(39,21,13,.86) 0%, rgba(39,21,13,.74) 58%, rgba(39,21,13,.42) 100%);
  }
  .mate-page-v7 .mate-catalog-hero > div { max-width: 92%; }
  .mate-page-v7 .mate-section { padding-top: 56px; padding-bottom: 60px; }
  .mate-page-v7 .mate-product-grid,
  .mate-page-v7 .mate-savoury-grid { grid-template-columns: 1fr; }
  .mate-page-v7 .mate-product-photo,
  .mate-page-v7 .mate-savoury-grid .mate-product-photo { height: 270px; }
  .mate-page-v7 .mate-price-grid.three { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .mate-page-v7 .mate-price-grid strong { font-size: .96rem; }
}
@media (max-width: 430px) {
  .mate-page-v7 .mate-product-body { padding: 20px; }
  .mate-page-v7 .mate-product-photo,
  .mate-page-v7 .mate-savoury-grid .mate-product-photo { height: 235px; padding: 10px; }
  .mate-page-v7 .mate-price-grid.three { grid-template-columns: 1fr; }
  .mate-page-v7 .mate-price-grid.three span { flex-direction: row; justify-content: space-between; align-items: center; padding: 10px 12px; }
  .mate-page-v7 .mate-price-grid.two { grid-template-columns: 1fr 1fr; }
  .mate-page-v7 .mate-dual-photo { grid-template-columns: 1fr 1fr; }
}


/* Tortas personalizadas V8 */
.cake-hero-photo{
  position:relative;
  min-height:clamp(560px,68vh,720px);
  display:flex;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background:#4a2b22 url("assets/home/tortas-hero-cumple.jpg") 68% 48% / cover no-repeat;
}
.cake-hero-photo::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(90deg,rgba(38,20,14,.88) 0%,rgba(38,20,14,.74) 38%,rgba(38,20,14,.38) 65%,rgba(38,20,14,.18) 100%);
}
.cake-hero-photo::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,rgba(26,12,8,.08),rgba(26,12,8,.24));
}
.cake-hero-content{max-width:650px;position:relative;z-index:1}
.cake-hero-photo .eyebrow{color:#f0b58d}
.cake-hero-photo h1{margin-bottom:18px;text-shadow:0 3px 24px rgba(0,0,0,.2)}
.cake-hero-photo p:not(.eyebrow){color:#fff3eb;max-width:610px}
.cake-hero-photo .cake-hero-btn{background:#fff7ef;color:var(--brown);box-shadow:0 10px 30px rgba(0,0,0,.18)}
.cake-hero-photo .cake-hero-btn:hover{transform:translateY(-2px);background:white}

.cake-feature>span{
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  background:var(--terracotta);color:white;font-size:.82rem;font-weight:800;letter-spacing:.08em;margin-bottom:15px
}

.cake-gallery-real{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.cake-gallery-real .cake-gallery-item{
  position:relative;aspect-ratio:16/10;background:#efe2d7;border:1px solid var(--line);
  box-shadow:0 14px 34px rgba(73,43,28,.08);display:block
}
.cake-gallery-real .cake-gallery-item img{
  width:100%;height:100%;display:block;object-fit:contain;background:#efe2d7;padding:0
}
.cake-gallery-real .cake-gallery-item figcaption{
  position:absolute;left:16px;right:16px;bottom:14px;display:flex;justify-content:space-between;align-items:flex-end;gap:14px;
  padding:12px 14px;border-radius:15px;background:rgba(47,27,18,.78);backdrop-filter:blur(7px);color:white
}
.cake-gallery-real .cake-gallery-item figcaption strong{font-size:1rem;color:white}
.cake-gallery-real .cake-gallery-item figcaption span{background:none;padding:0;border-radius:0;font-size:.82rem;font-weight:600;color:#f3ddd0;text-align:right}

@media(max-width:900px){
  .cake-hero-photo{background-position:62% center;min-height:580px}
  .cake-hero-photo::before{background:linear-gradient(90deg,rgba(38,20,14,.86) 0%,rgba(38,20,14,.68) 56%,rgba(38,20,14,.32) 100%)}
}
@media(max-width:680px){
  .cake-hero-photo{min-height:620px;background-position:70% center;align-items:flex-end;padding-bottom:72px}
  .cake-hero-photo::before{background:linear-gradient(180deg,rgba(38,20,14,.28) 0%,rgba(38,20,14,.52) 42%,rgba(38,20,14,.9) 100%)}
  .cake-hero-content{max-width:none}
  .cake-gallery-real{grid-template-columns:1fr}
  .cake-gallery-real .cake-gallery-item{aspect-ratio:4/3}
  .cake-gallery-real .cake-gallery-item figcaption{left:10px;right:10px;bottom:10px;flex-direction:column;align-items:flex-start;gap:2px}
  .cake-gallery-real .cake-gallery-item figcaption span{text-align:left}
}

/* ===== Mesas dulces · V9 ===== */
.sweet-page-v9 .sweet-hero-photo{
  position:relative;
  min-height:clamp(560px,68vh,720px);
  display:flex;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background:#3f241d url("assets/home/mesas-oreo.jpg") 72% center / cover no-repeat;
}
.sweet-page-v9 .sweet-hero-photo::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(90deg,rgba(35,18,13,.90) 0%,rgba(35,18,13,.76) 38%,rgba(35,18,13,.44) 62%,rgba(35,18,13,.14) 100%);
}
.sweet-page-v9 .sweet-hero-photo::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,rgba(21,10,7,.05),rgba(21,10,7,.28));
}
.sweet-page-v9 .sweet-hero-content{max-width:660px;position:relative;z-index:1}
.sweet-page-v9 .sweet-hero-photo .eyebrow{color:#efb68f}
.sweet-page-v9 .sweet-hero-photo h1{margin-bottom:18px;text-shadow:0 3px 24px rgba(0,0,0,.22)}
.sweet-page-v9 .sweet-hero-photo p:not(.eyebrow){color:#fff5ed;max-width:620px;text-shadow:0 2px 14px rgba(0,0,0,.22)}
.sweet-page-v9 .sweet-hero-btn{background:#fff7ef;color:var(--brown);box-shadow:0 10px 30px rgba(0,0,0,.18)}
.sweet-page-v9 .sweet-hero-btn:hover{transform:translateY(-2px);background:white}

.sweet-page-v9 .sweet-intro-section{padding-bottom:58px}
.sweet-page-v9 .sweet-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.sweet-page-v9 .sweet-feature{
  background:#fffaf5;
  border:1px solid var(--line);
  border-radius:24px;
  padding:28px;
  box-shadow:0 16px 38px rgba(75,43,27,.06);
}
.sweet-page-v9 .sweet-feature>span{
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  background:var(--terracotta);color:white;font-size:.82rem;font-weight:800;letter-spacing:.08em;margin-bottom:15px
}
.sweet-page-v9 .sweet-feature h3{margin:0 0 8px;font-size:1.55rem}
.sweet-page-v9 .sweet-feature p{margin:0;color:#765f54;line-height:1.6}

.sweet-page-v9 .sweet-products-section{background:#f4ebe2;max-width:none;padding-left:max(7%,calc((100% - 1200px)/2));padding-right:max(7%,calc((100% - 1200px)/2))}
.sweet-page-v9 .sweet-heading{max-width:1200px;margin-left:auto;margin-right:auto}
.sweet-page-v9 .sweet-product-grid{
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
}
.sweet-page-v9 .sweet-product-card{
  margin:0;
  background:#fffaf5;
  border:1px solid rgba(92,54,35,.12);
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 16px 38px rgba(75,43,27,.07);
}
.sweet-page-v9 .sweet-product-photo{
  height:245px;
  background:#efe4d9;
  padding:10px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.sweet-page-v9 .sweet-product-photo img{
  width:100%;height:100%;object-fit:contain;display:block;border-radius:14px;background:#efe4d9
}
.sweet-page-v9 .sweet-product-card figcaption{
  padding:18px 18px 20px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.sweet-page-v9 .sweet-product-card figcaption strong{
  font-family:'Cormorant Garamond',serif;
  font-size:1.6rem;
  line-height:1.05;
  color:var(--brown);
}
.sweet-page-v9 .sweet-product-card figcaption span{font-size:.88rem;color:#836d62}

.sweet-page-v9 .sweet-how{
  background:var(--brown);
  color:white;
  padding:76px max(7%,calc((100% - 1200px)/2));
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:70px;
  align-items:center;
}
.sweet-page-v9 .sweet-how .eyebrow{color:#efb68f}
.sweet-page-v9 .sweet-how h2{font-size:clamp(2.2rem,4.5vw,3.7rem);margin:8px 0 14px;color:white}
.sweet-page-v9 .sweet-how p:not(.eyebrow){color:#f0dfd7;line-height:1.7;max-width:560px}
.sweet-page-v9 .sweet-steps{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.sweet-page-v9 .sweet-steps li{
  display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:start;
  padding:17px 18px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08)
}
.sweet-page-v9 .sweet-steps li>strong{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff4eb;color:var(--brown)}
.sweet-page-v9 .sweet-steps span{display:grid;gap:4px}
.sweet-page-v9 .sweet-steps b{color:white}
.sweet-page-v9 .sweet-steps small{color:#ead8cf;line-height:1.45;font-size:.88rem}

.sweet-page-v9 .sweet-options-fieldset{border:0;padding:0;margin:0}
.sweet-page-v9 .sweet-options-fieldset legend{font-size:13px;font-weight:700;margin-bottom:9px}
.sweet-page-v9 .sweet-option-chips{display:flex;flex-wrap:wrap;gap:9px}
.sweet-page-v9 .sweet-option-chips label{display:block;cursor:pointer}
.sweet-page-v9 .sweet-option-chips input{position:absolute;opacity:0;pointer-events:none}
.sweet-page-v9 .sweet-option-chips span{
  display:inline-flex;align-items:center;min-height:42px;padding:10px 14px;border-radius:999px;
  border:1px solid var(--line);background:white;color:#6b4b3d;font-size:.88rem;font-weight:700;
  transition:.2s ease
}
.sweet-page-v9 .sweet-option-chips input:checked+span{background:var(--terracotta);border-color:var(--terracotta);color:white;box-shadow:0 8px 20px rgba(166,95,71,.18)}
.sweet-page-v9 .sweet-final{margin-top:0}

@media(max-width:980px){
  .sweet-page-v9 .sweet-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sweet-page-v9 .sweet-how{grid-template-columns:1fr;gap:38px}
}
@media(max-width:760px){
  .sweet-page-v9 .sweet-hero-photo{min-height:610px;background-position:63% center;align-items:flex-end;padding-bottom:72px}
  .sweet-page-v9 .sweet-hero-photo::before{background:linear-gradient(180deg,rgba(35,18,13,.24) 0%,rgba(35,18,13,.45) 38%,rgba(35,18,13,.90) 100%)}
  .sweet-page-v9 .sweet-hero-content{max-width:none}
  .sweet-page-v9 .sweet-feature-grid{grid-template-columns:1fr}
  .sweet-page-v9 .sweet-product-photo{height:280px}
  .sweet-page-v9 .sweet-how{padding:62px 5%}
}
@media(max-width:520px){
  .sweet-page-v9 .sweet-product-grid{grid-template-columns:1fr}
  .sweet-page-v9 .sweet-product-photo{height:260px}
  .sweet-page-v9 .sweet-feature{padding:22px}
}

/* V10.2 · Nuestra historia */
.story-photo{
  min-height:620px;
  background:#eadfd4;
  padding:0;
  overflow:hidden;
  position:relative;
}
.story-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 48%;
}
.story-copy h2{max-width:620px;margin-bottom:24px}
.story-copy p{line-height:1.75;margin:0 0 16px}
.story-copy .story-belief{margin-top:8px;color:var(--brown)}
.story-copy .script{margin-top:12px}
@media(max-width:800px){
  .story-photo{min-height:520px;max-height:680px}
  .story-photo img{object-position:center 46%}
  .story-copy{padding:44px 28px 52px}
}
@media(max-width:520px){
  .story-photo{min-height:430px}
  .story-copy{padding:38px 22px 46px}
  .story-copy h2{font-size:clamp(2.15rem,11vw,3.2rem)}
}


/* V10.3 · Instagram + opiniones de clientes */
.footer-social-link{color:var(--terracotta);font-weight:800}
.footer-social-link:hover{text-decoration:underline}
.floating-instagram{position:fixed;right:18px;bottom:76px;z-index:40;display:flex;align-items:center;gap:9px;padding:11px 16px;border-radius:999px;color:#fff;font-weight:800;background:linear-gradient(135deg,#833ab4,#fd1d1d 55%,#fcb045);box-shadow:0 12px 30px rgba(131,58,180,.25)}
.floating-instagram img{width:25px;height:25px;display:block}
.reviews-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:30px;align-items:start}
.review-grid-live{margin-top:18px}
.review-grid-live:empty{display:none}
.review-form-card{background:#fffaf4;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 14px 34px rgba(82,48,31,.07);position:sticky;top:110px}
.review-form-card h3{font-family:"Cormorant Garamond",serif;color:var(--brown);font-size:2rem;margin:.15rem 0 .6rem}
.review-form-card>p:not(.eyebrow){color:var(--muted);margin-top:0}
.review-form{display:grid;gap:16px;margin-top:20px}
.review-form label,.rating-fieldset{display:grid;gap:7px;font-size:.9rem;font-weight:700;color:var(--brown)}
.review-form input,.review-form textarea{width:100%;border:1px solid #dcc9bb;background:#fffdf9;color:var(--text);border-radius:13px;padding:13px 14px;font:inherit;outline:none}
.review-form textarea{resize:vertical;min-height:120px}
.review-form input:focus,.review-form textarea:focus{border-color:var(--terracotta);box-shadow:0 0 0 3px rgba(166,95,59,.12)}
.rating-fieldset{border:0;padding:0;margin:0}
.rating-fieldset legend{margin-bottom:6px}
.star-picker{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:3px;width:max-content}
.star-picker input{position:absolute;opacity:0;pointer-events:none}
.star-picker label{font-size:2rem;line-height:1;color:#d8c9ba;cursor:pointer;transition:transform .18s ease,color .18s ease}
.star-picker label:hover,.star-picker label:hover~label,.star-picker input:checked~label{color:#d8a33f}
.star-picker label:hover{transform:translateY(-2px) scale(1.05)}
.review-submit{border:0;cursor:pointer;font:inherit;justify-content:center}
.review-submit:disabled{opacity:.6;cursor:wait}
.review-note{font-size:.8rem!important;color:var(--muted);margin:0!important;line-height:1.45}
.review-status{font-size:.9rem!important;font-weight:700;margin:0!important;min-height:1.35em}
.review-status.success{color:#2f7d4c}
.review-status.error{color:#a33d34}
.review-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.live-review{animation:reviewAppear .35s ease both}
@keyframes reviewAppear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1000px){
  .reviews-layout{grid-template-columns:1fr}
  .review-form-card{position:static}
}
@media(max-width:520px){
  .floating-instagram{width:52px;height:52px;padding:0;justify-content:center;border-radius:50%;bottom:80px}
  .floating-instagram span{display:none}
  .floating-instagram img{width:27px;height:27px}
  .review-form-card{padding:20px}
}
