/* Capa redondeada (inspiración K18: cada producto en su baldosa de color, tarjetas y paneles con esquinas amplias, botones píldora).
   Va después de estilos.css y motion.css y solo cambia forma, fondo y presentación del producto. */
:root{
  --r-xl:40px; --r-l:28px; --r-m:20px; --r-s:14px;
  --sombra-suave:0 1px 2px rgba(46,36,36,.04),0 12px 32px rgba(46,36,36,.08);
  --sombra-producto:drop-shadow(0 26px 22px rgba(58,32,18,.30)) drop-shadow(0 6px 6px rgba(58,32,18,.18));
  /* Tonos de baldosa, uno por producto, todos dentro de la gama cálida de la marca */
  --t-cacau:linear-gradient(160deg,#F2D7A8 0%,#D9A45F 55%,#B97C3E 100%);
  --t-oro:linear-gradient(160deg,#F7E6BF 0%,#E7C27A 60%,#C99A45 100%);
  --t-cafe:linear-gradient(160deg,#E9DCCF 0%,#BFA08A 60%,#8E6B57 100%);
  --t-niebla:linear-gradient(160deg,#F1F1EE 0%,#D9DDDC 60%,#B8BFC0 100%);
  --t-terracota:linear-gradient(160deg,#FBE3D6 0%,#F0B79C 60%,#D9876A 100%);
  --t-crema:linear-gradient(160deg,#FBF4EA 0%,#EFDFC9 60%,#DCC2A2 100%);
}

/* Botones y campos en píldora */
.btn{border-radius:999px}
nav .btn{border-radius:999px}

/* Baldosas de producto */
.baldosa{position:relative;border-radius:var(--r-l);overflow:hidden;display:flex;align-items:flex-end;justify-content:center;isolation:isolate}
.baldosa::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 55% at 50% 38%,rgba(255,255,255,.55),transparent 70%);z-index:-1}
.baldosa::after{content:"";position:absolute;left:18%;right:18%;bottom:9%;height:7%;border-radius:50%;background:rgba(58,32,18,.28);filter:blur(14px);z-index:-1}
.baldosa img{filter:var(--sombra-producto);mix-blend-mode:normal!important;object-fit:contain}
/* Con la clase .baldosa delante para ganar a los fondos de estilos.css y de cada página */
.baldosa.tono-cacau,.trat .baldosa.tono-cacau,.paso-m .baldosa.tono-cacau{background:var(--t-cacau)}
.baldosa.tono-oro,.trat .baldosa.tono-oro,.ampolla .baldosa.tono-oro{background:var(--t-oro)}
.baldosa.tono-cafe,.trat .baldosa.tono-cafe{background:var(--t-cafe)}
.baldosa.tono-niebla,.trat .baldosa.tono-niebla{background:var(--t-niebla)}
.baldosa.tono-terracota,.trat .baldosa.tono-terracota{background:var(--t-terracota)}
.baldosa.tono-crema,.trat .baldosa.tono-crema{background:var(--t-crema)}
.chapa{position:absolute;top:16px;left:16px;z-index:2;background:rgba(255,255,255,.72);backdrop-filter:blur(6px);color:var(--cacao);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:7px 12px;border-radius:999px}

/* Tarjetas de tratamiento */
.rejilla{gap:calc(3*var(--u))}
.trat{border:0;border-radius:var(--r-l);background:#fff;box-shadow:var(--sombra-suave);overflow:hidden}
.trat .img{height:340px;padding:calc(4*var(--u)) calc(3*var(--u)) calc(5*var(--u));border-radius:var(--r-l) var(--r-l) 0 0}
.trat .img img{max-height:100%;max-width:88%;mix-blend-mode:normal}
.trat .cuerpo{padding:calc(3*var(--u)) calc(3.5*var(--u)) calc(3.5*var(--u))}
.trat .ver{border-top:0;padding-top:0;display:inline-flex;align-items:center;gap:8px}
.trat .ver::before{content:"";width:28px;height:1px;background:currentColor;transition:width .4s var(--curva)}
.trat:hover .ver::before{width:44px}

/* Franja de sellos en píldoras */
.confianza{border-bottom:0;padding:calc(4*var(--u)) 0 0}
.sello{background:#fff;border-radius:999px;padding:14px 20px;box-shadow:var(--sombra-suave)}

/* Paneles oscuros redondeados e insertados */
.oscuro.resultados,.oscuro.contacto{margin:0 clamp(8px,1.6vw,20px);border-radius:var(--r-xl)}
.oscuro.contacto{margin-bottom:clamp(8px,1.6vw,20px)}
.exclusivo{margin:clamp(48px,6vw,80px) clamp(8px,1.6vw,20px);border-radius:var(--r-xl);background:var(--t-crema)}

/* Comparadores y fotos */
.comparar{border-radius:var(--r-l)}
.foto-portada .comparar{border-radius:var(--r-xl)}
.foto-portada .pista-arrastre{border-radius:999px;right:20px;bottom:20px}
.salon .foto{border-radius:var(--r-xl);overflow:hidden}
.salon .foto img{border-radius:0}
.paso{border-bottom:0;background:#fff;border-radius:var(--r-m);padding:calc(2.5*var(--u)) calc(3*var(--u));box-shadow:var(--sombra-suave)}
.pasos{gap:calc(2*var(--u))}

/* Marquesina en banda redondeada */
.marquesina{margin:0 clamp(8px,1.6vw,20px) clamp(8px,1.6vw,20px);border-radius:999px;border:0;background:linear-gradient(90deg,#3A2E2E,#5C4D4D 50%,#3A2E2E)}

/* Formulario con campos redondeados */
input,select{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-s);padding:14px 16px;transition:border-color .3s,background .3s}
input:focus,select:focus{outline:none;border-color:var(--oro);background:rgba(255,255,255,.1)}
select option{background:#fff}

/* Página de producto */
.escaparate{border-radius:var(--r-xl);overflow:hidden;margin:calc(5*var(--u)) 0;min-height:540px;padding-bottom:calc(5*var(--u))}
.escaparate.tono-cacau{background:var(--t-cacau)}
.escaparate img{width:92%;max-width:560px;filter:var(--sombra-producto)}
.escaparate .suelo{display:none}
.ventajas{background:none;border:0;gap:calc(2*var(--u))}
.ventaja{background:#fff;border-radius:var(--r-l);box-shadow:var(--sombra-suave)}
.paso-m{border:0;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--sombra-suave)}
.paso-m .img{height:340px;padding:calc(4*var(--u)) 0 calc(4.5*var(--u));border-radius:var(--r-l) var(--r-l) 0 0}
.paso-m .img img{max-height:100%;mix-blend-mode:normal}
.paso-m .num{color:rgba(46,36,36,.55)}
.ampolla{border-radius:var(--r-xl);margin:0 clamp(8px,1.6vw,20px)}
.ampolla .img{border-radius:var(--r-xl);aspect-ratio:1;align-items:center}
.ampolla .img img{width:84%;mix-blend-mode:normal}
.faq{border-top:0;display:grid;gap:calc(1.5*var(--u))}
details{background:#fff;border:0;border-radius:var(--r-m);padding:0 calc(3*var(--u));box-shadow:var(--sombra-suave);transition:box-shadow .3s}
details[open]{box-shadow:0 18px 40px rgba(46,36,36,.10)}

@media (max-width:900px){
  .trat .img,.paso-m .img{height:300px}
  .escaparate{min-height:380px;margin:calc(3*var(--u)) 0 calc(6*var(--u))}
  .sello{padding:12px 14px;font-size:13px}
  .oscuro.resultados,.oscuro.contacto,.exclusivo,.ampolla{border-radius:var(--r-l)}
  .marquesina{border-radius:var(--r-l)}
}

.ampolla .baldosa::after{bottom:22%}
.escaparate.baldosa::after{bottom:7%}

/* Sellos de confianza: una sola franja fina en vez de cuatro píldoras */
.confianza{padding:calc(5*var(--u)) 0 0}
.confianza .caja{display:block}
.franja-sellos{display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.72);border:1px solid rgba(156,122,34,.18);border-radius:999px;padding:calc(2.25*var(--u)) calc(2*var(--u));backdrop-filter:blur(6px)}
.franja-sellos .sello{background:none;box-shadow:none;border-radius:0;padding:4px calc(2*var(--u));display:flex;align-items:center;justify-content:center;gap:calc(1.5*var(--u));position:relative}
.franja-sellos .sello+.sello::before{content:"";position:absolute;left:0;top:14%;bottom:14%;width:1px;background:linear-gradient(180deg,transparent,rgba(156,122,34,.35),transparent)}
.franja-sellos .ico{flex:none;width:46px;height:46px;border-radius:50%;border:1px solid rgba(156,122,34,.45);display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#FFFDF8,#F4EADB)}
.franja-sellos .ico svg{width:22px;height:22px;flex:none;stroke:var(--oro-texto);stroke-width:1.3}
.txt-sello{display:flex;flex-direction:column;line-height:1.15}
.txt-sello strong{font-family:var(--serif);font-weight:600;font-size:20px;white-space:nowrap;color:var(--cacao);letter-spacing:-.005em}
.txt-sello small{white-space:nowrap;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--gris);margin-top:5px}
@media (max-width:1180px){ .txt-sello strong{font-size:18px} .franja-sellos .ico{width:40px;height:40px} .franja-sellos .sello{padding:4px calc(1.25*var(--u))} }
@media (max-width:900px){
  .franja-sellos{grid-template-columns:1fr 1fr;border-radius:var(--r-l);padding:calc(1*var(--u)) 0}
  .franja-sellos .sello{padding:calc(2.5*var(--u)) calc(1.5*var(--u));flex-direction:column;text-align:center;gap:calc(1.25*var(--u))}
  .txt-sello{align-items:center}
  .txt-sello strong{white-space:normal}
  .franja-sellos .sello+.sello::before{display:none}
  .franja-sellos .sello:nth-child(2n){border-left:1px solid rgba(156,122,34,.18)}
  .franja-sellos .sello:nth-child(n+3){border-top:1px solid rgba(156,122,34,.18)}
  .franja-sellos .ico{width:40px;height:40px}
  .txt-sello strong{font-size:18px}
  .txt-sello small{font-size:10px}
}

/* Home: 8 tratamientos en 4 columnas */
@media (min-width:1200px){ .rejilla-4{grid-template-columns:repeat(4,1fr)} .rejilla-4 .trat .img{height:280px} .rejilla-4 .trat h3{font-size:26px} .rejilla-4 .trat .cuerpo{padding-left:24px;padding-right:24px} .rejilla-4 .trat .tipo{letter-spacing:.08em;white-space:nowrap} }
@media (min-width:901px) and (max-width:1199px){ .rejilla-4{grid-template-columns:repeat(2,1fr)} }

/* Productos anchos o altos dentro de su baldosa: que nunca se salgan */
.paso-m .img img,.pieza .img img{max-width:86%;width:auto;height:auto;object-fit:contain}
.ampolla .img img{width:auto;max-width:84%;max-height:82%;object-fit:contain}

.video-ancho .capa blockquote{display:none}
.video-ancho .capa{padding:calc(2*var(--u)) calc(3*var(--u))}

/* Portada de producto: la baldosa con aire arriba y abajo, y el producto con margen dentro */
.producto-portada .caja{min-height:0}
.escaparate{height:auto!important;min-height:0!important;align-self:center;aspect-ratio:1/1.04;max-height:560px;margin:calc(8*var(--u)) 0!important;padding:calc(8*var(--u)) 11% calc(9*var(--u))!important;align-items:flex-end}
.escaparate img,.escaparate.estrecho img{width:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain}
.escaparate .chapa{top:20px;left:20px}
@media (max-width:900px){
  .escaparate{aspect-ratio:1/1;margin:calc(3*var(--u)) 0 calc(7*var(--u))!important;padding:calc(7*var(--u)) 10% calc(7*var(--u))!important}
}

/* Botones: siempre en una línea; en móvil, los de la portada ocupan todo el ancho y quedan iguales */
.btn,.ver-original,.sonido,.chapa,.formato,.tag{white-space:nowrap}
@media (max-width:520px){
  .acciones{flex-direction:column;align-items:stretch;gap:12px}
  .acciones .btn{justify-content:center;width:100%;padding:16px 20px}
  .btn{font-size:15px}
  nav .btn{font-size:13px;padding:10px 16px}
}

/* Móvil: las seis ventajas en dos columnas, más compactas */
@media (max-width:900px){
  .ventajas{grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:calc(4*var(--u))}
  .ventaja{padding:18px 16px!important;border-radius:var(--r-m)!important}
  .ventaja .n{font-size:16px}
  .ventaja h3{font-size:21px;line-height:1.1}
  .ventaja p{font-size:13px;line-height:1.45}
}

/* Consentimiento del formulario y fila legal del pie (todas las páginas) */
.consentimiento{display:flex;gap:12px;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:13px;font-weight:400;line-height:1.55;color:#CDBFB3;cursor:pointer}
.consentimiento input{appearance:none;-webkit-appearance:none;flex:0 0 20px;width:20px;height:20px;margin:1px 0 0;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:6px;background:rgba(255,255,255,.06);cursor:pointer;display:grid;place-content:center;transition:background .2s,border-color .2s}
.consentimiento input::after{content:"";width:10px;height:6px;border-left:2px solid var(--cacao);border-bottom:2px solid var(--cacao);transform:rotate(-45deg) translate(1px,-1px);opacity:0;transition:opacity .2s}
.consentimiento input:checked{background:var(--oro);border-color:var(--oro)}
.consentimiento input:checked::after{opacity:1}
.consentimiento input:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
.consentimiento a{color:var(--oro);text-decoration:underline;text-underline-offset:3px}
.pie-legal{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;padding-top:calc(2*var(--u));border-top:1px solid rgba(255,255,255,.08)}
.pie-legal nav{gap:calc(3*var(--u));flex-wrap:wrap}
.pie-legal nav a{color:#CDBFB3} .pie-legal nav a:hover,.pie-legal nav a[aria-current]{color:#fff}
@media (max-width:900px){ .pie-legal nav a{display:inline} .pie-legal nav{display:flex} .pie-legal{flex-direction:column;align-items:flex-start} }
/* Pie en móvil: se ven los enlaces de productos y del menú (la regla general del móvil oculta los del menú de arriba) */
@media (max-width:900px){
  footer nav a:not(.btn){display:inline}
  footer .caja > nav:not(.pie-productos){width:100%;flex-wrap:wrap;gap:10px 24px}
  .pie-productos{gap:10px 20px}
  .pie-legal nav{gap:10px 20px}
}
