:root{--gold:#c9a35c;--goldlight:#e8cf9a}
html{scroll-behavior:smooth}
.font-serif{font-family:"Cormorant Garamond",serif}
.btn-gold{display:inline-block;background:linear-gradient(135deg,#c9a35c,#8a5a2b);color:#28140b;font-weight:600;letter-spacing:.04em;padding:.7rem 1.6rem;border-radius:9999px;transition:.25s}
/* Solo zonas +18 usan .btn-gold. En zona pública usar .btn-cafe */
.btn-gold:hover{filter:brightness(1.12);transform:translateY(-1px)}
.btn-cafe{display:inline-block;background:#7c4527;color:#e2d5c3;font-weight:600;letter-spacing:.04em;padding:.7rem 1.6rem;border-radius:9999px;transition:.25s}
.btn-cafe:hover{filter:brightness(1.18);transform:translateY(-1px)}
.btn-cream{display:inline-block;background:#e2d5c3;color:#7c4527;font-weight:600;letter-spacing:.04em;padding:.7rem 1.6rem;border-radius:9999px;transition:.25s}
.btn-cream:hover{filter:brightness(1.06);transform:translateY(-1px)}
.btn-outline{display:inline-block;border:1px solid #7c4527;color:#7c4527;padding:.7rem 1.6rem;border-radius:9999px;transition:.25s}
.btn-outline:hover{background:rgba(124,69,39,.12)}
.btn-outline-cream{display:inline-block;border:1px solid rgba(226,213,195,.8);color:#e2d5c3;padding:.7rem 1.6rem;border-radius:9999px;transition:.25s}
.btn-outline-cream:hover{background:rgba(226,213,195,.15)}
/* Delineado dorado solo para chrome oscuro de zonas +18 */
.btn-outline-gold{display:inline-block;border:1px solid rgba(201,163,92,.7);color:#e8cf9a;padding:.7rem 1.6rem;border-radius:9999px;transition:.25s}
.btn-outline-gold:hover{background:rgba(201,163,92,.15)}
.btn-outline-dark{display:inline-block;border:1px solid #7c4527;color:#7c4527;padding:.7rem 1.6rem;border-radius:9999px}
.gold-text{background:linear-gradient(135deg,#f3e2b3,#c9a35c 55%,#8a5a2b);-webkit-background-clip:text;background-clip:text;color:transparent}
/* Solo zonas +18 usan .gold-text y .hero-bg. En zona pública usar .hero-light + text-cafe */
.hero-bg{background:radial-gradient(1000px 500px at 50% -10%,rgba(201,163,92,.25),transparent),linear-gradient(#1a0d06,#28140b 60%,#1a0d06)}
.hero-light{background:radial-gradient(900px 420px at 50% -10%,rgba(226,213,195,.16),transparent),linear-gradient(#6b3a20,#7c4527 55%,#5e3219)}
/* Franja secundaria para secciones destacadas públicas (FAQ, CTAs) */
.band-cafe{background:linear-gradient(#6b3a20,#7c4527 55%,#5e3219)}
.card-luxe{background:rgba(255,255,255,.04);border:1px solid rgba(201,163,92,.25);backdrop-filter:blur(6px)}
.blur-18{filter:blur(18px) saturate(.8);pointer-events:none;user-select:none}
/* Tira compacta para previsualizar galería +18 (igual de contenida que la tarjeta tántrica) */
.preview-strip{position:relative;max-height:220px;overflow:hidden;border-radius:1rem}
@media(min-width:768px){.preview-strip{max-height:260px}}
/* Botón flotante de WhatsApp que provoca clic */
.wa-float{position:fixed;bottom:1.25rem;right:1.25rem;z-index:40;display:flex;align-items:center;gap:.6rem}
.wa-btn{position:relative;width:4rem;height:4rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#2ee06f,#128C7E);box-shadow:0 10px 30px rgba(18,140,126,.55),0 0 0 4px rgba(37,211,102,.18);transition:transform .25s;animation:wa-nudge 5s ease-in-out infinite}
.wa-btn:hover{transform:scale(1.12) rotate(6deg)}
.wa-ring{position:absolute;inset:0;border-radius:9999px;border:2px solid rgba(37,211,102,.7);animation:wa-ring 2.2s ease-out infinite;pointer-events:none}
.wa-ring-2{animation-delay:1.1s}
@keyframes wa-ring{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.7);opacity:0}}
@keyframes wa-nudge{0%,88%,100%{transform:rotate(0)}90%{transform:rotate(-12deg) scale(1.06)}92%{transform:rotate(10deg) scale(1.1)}94%{transform:rotate(-6deg)}96%{transform:rotate(4deg)}}
.wa-dot{position:absolute;top:.3rem;right:.3rem;width:.85rem;height:.85rem;border-radius:9999px;background:#ff3b30;border:2px solid #fff;animation:wa-blink 1.6s ease-in-out infinite}
@keyframes wa-blink{0%,100%{opacity:1}50%{opacity:.35}}
.wa-label{background:#7c4527;color:#e2d5c3;font-size:.8rem;letter-spacing:.03em;padding:.55rem 1rem;border-radius:9999px;border:1px solid rgba(226,213,195,.5);box-shadow:0 8px 20px rgba(0,0,0,.35);white-space:nowrap;opacity:0;transform:translateX(8px);transition:.3s;pointer-events:none}
.wa-float:hover .wa-label{opacity:1;transform:none}
@media(min-width:768px){.wa-label{opacity:1;transform:none;animation:wa-label-in 1s ease .8s both}}
@keyframes wa-label-in{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
.espacios-viewport{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.espacios-track{display:flex;width:max-content;animation:espacios-scroll 36s linear infinite}
.espacios-viewport:hover .espacios-track{animation-play-state:paused}
@keyframes espacios-scroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.espacios-track{animation:none;overflow-x:auto}}
.adult-zone{background:linear-gradient(#1d0f08,#28140b)}
details.faq{border:1px solid rgba(124,69,39,.25);border-radius:1rem;background:#fff;box-shadow:0 6px 18px rgba(124,69,39,.08)}
details.faq summary{cursor:pointer;padding:1rem 1.25rem;font-weight:500;list-style:none}
details.faq summary::-webkit-details-marker{display:none}
details.faq div{padding:0 1.25rem 1.25rem;color:#7c4527}
.table-luxe th{background:#7c4527;color:#e2d5c3}
/* Cabecera dorada solo para tablas de zona +18 */
.table-dark th{background:linear-gradient(135deg,#542c18,#7c4527);color:#e8cf9a}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
