:root{
  --ink:#1c2732;
  --ivory:#fbf7ef;
  --gold:#d8b46a;
  --gold2:#f0d79d;
  --blue:#073b67;
  --blue2:#0c6296;
  --card-w:390px;
  --card-h:230px;
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:linear-gradient(180deg,#fffdf9 0%,#f6efe5 100%);font-family:Georgia,"Times New Roman",serif}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button{font:inherit}

.site-header{height:86px;display:flex;align-items:center;justify-content:center;background:#061d35;border-bottom:1px solid rgba(240,207,139,.45);position:relative;z-index:20}
.site-header a{color:var(--gold2);letter-spacing:.32em;font-size:clamp(23px,2.5vw,37px);font-weight:500;padding-left:.32em}

/* Carrusel: cada imagen conserva completa su composición original */
.hero{overflow:hidden;background:#071d32}
.track{display:flex;will-change:transform}
.track figure{margin:0;flex:0 0 100%;aspect-ratio:1760/894;background:#071d32;display:flex;align-items:center;justify-content:center;overflow:hidden}
.track img{width:100%;height:auto;max-height:none;object-fit:initial}

.intro{padding:72px 24px 62px;text-align:center}
.intro h1{margin:0 auto;max-width:1050px;font-size:clamp(31px,4.2vw,63px);line-height:1.08;font-weight:400;color:#173a58}
.section-kicker{text-align:center;margin:0 0 34px;color:#31506a;font-size:clamp(18px,2vw,25px);font-weight:400;letter-spacing:.12em}

.feature-section{max-width:1320px;margin:0 auto;padding:18px 30px 86px}
.feature-grid{display:grid;grid-template-columns:repeat(3,var(--card-w));justify-content:center;gap:28px}
.function-card,.standard-card{width:var(--card-w);height:var(--card-h);border-radius:var(--radius);border:1.5px solid rgba(224,188,111,.88);box-shadow:0 18px 38px rgba(22,29,36,.13);overflow:hidden}
.function-card{position:relative;padding:0;background:transparent;cursor:pointer;perspective:1100px;color:inherit}
.function-card .card-front,.function-card .card-back{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;transition:opacity .42s ease,transform .5s ease;background-size:cover;background-position:center}
.function-card .card-front{background:linear-gradient(rgba(5,36,66,.10),rgba(5,36,66,.18)),url("assets/stone-clean.jpg") center/cover;color:#f4d99e;opacity:1;transform:scale(1)}
.function-card .card-front b{font-weight:400;font-size:clamp(24px,2.05vw,35px);letter-spacing:.08em}
.ornament{font-style:normal;margin-top:19px;font-size:22px;letter-spacing:.18em;color:#f5dfad;opacity:.88}
.function-card .card-back{opacity:0;transform:scale(.97);color:#fff7e7}
.function-card .card-back b{font-size:clamp(19px,1.6vw,26px);font-weight:400;letter-spacing:.05em}
.function-card .card-back small{display:block;margin-top:14px;max-width:310px;font-size:16px;line-height:1.42}
.function-card:hover .card-front,.function-card.is-open .card-front{opacity:0;transform:scale(1.035)}
.function-card:hover .card-back,.function-card.is-open .card-back{opacity:1;transform:scale(1)}
.tone-rose{background:linear-gradient(135deg,#8d5363,#c58994)}
.tone-emerald{background:linear-gradient(135deg,#0e5449,#32917d)}
.tone-plum{background:linear-gradient(135deg,#513051,#8d5688)}
.tone-burgundy{background:linear-gradient(135deg,#661a31,#a4455c)}
.tone-champagne{background:linear-gradient(135deg,#8a6b3d,#c7a15f)}
.tone-sapphire{background:linear-gradient(135deg,#0c4d78,#188ab3)}
.countdown-back{gap:12px}
.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;width:100%;max-width:330px}
.countdown span{display:flex;flex-direction:column;align-items:center;padding:8px 4px;border:1px solid rgba(255,245,221,.45);border-radius:12px;background:rgba(255,255,255,.08)}
.countdown strong{font-size:25px;font-weight:400}.countdown em{font-style:normal;font-size:10px;letter-spacing:.09em;margin-top:4px}
.interaction-hint{margin:25px 0 0;text-align:center;color:#716960;font-size:15px}

/* sección de colores: vuelve al formato de dos tarjetas, limpio y sin texto duplicado */
.colors{max-width:1040px;margin:0 auto;padding:8px 24px 104px;display:flex;justify-content:center;gap:34px;flex-wrap:wrap}
.stone-card{display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(rgba(4,30,54,.08),rgba(4,30,54,.08)),url("assets/stone-clean.jpg") center/cover;color:#f2d498}
.stone-card h2{margin:0;font-size:clamp(41px,4.2vw,61px);line-height:.93;letter-spacing:.02em;font-weight:400}
.color-card{background:#fffaf2;padding:25px 27px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.color-buttons{display:flex;justify-content:center;gap:10px;flex-wrap:nowrap;width:100%}
.palette-btn{width:31px;height:31px;flex:0 0 31px;padding:0;border-radius:50%;border:2px solid #fff;outline:1px solid rgba(66,55,44,.24);cursor:pointer;transition:transform .2s ease}
.palette-btn:hover,.palette-btn.active{transform:scale(1.18)}
.tone-display{width:100%;height:92px;border-radius:18px;background:linear-gradient(90deg,#052b50,#0c4f82,#2479a9,#76b7d3,#c7e2ee,#eef8fb);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.palette-name{color:#29435c;letter-spacing:.16em;font-size:17px}

.camila{max-width:1180px;margin:0 auto;padding:0 30px 110px}
.camila-panel{display:grid;grid-template-columns:minmax(280px,.72fr) 1.28fr;border-radius:32px;overflow:hidden;background:#071f37;border:1px solid rgba(223,185,106,.65);box-shadow:0 24px 55px rgba(19,28,38,.18)}
.camila-photo{background:#eadcca;display:flex;justify-content:center;align-items:center;min-height:570px}.camila-photo img{width:100%;height:100%;object-fit:contain}
.camila-copy{padding:60px;color:#f7e9ca;display:flex;flex-direction:column;justify-content:center}.camila-copy>span{color:#d9b86f;letter-spacing:.19em;font-size:14px}.camila-copy h2{margin:18px 0 34px;max-width:610px;font-weight:400;font-size:clamp(39px,4vw,63px);line-height:1}.camila-copy strong{align-self:flex-start;border:1px solid #d9b86f;border-radius:999px;padding:13px 22px;color:#f0dba9;letter-spacing:.07em;font-size:14px}

.celebrations{padding:18px 28px 112px;max-width:1320px;margin:0 auto}.celebration-heading{text-align:center;margin-bottom:64px}.celebration-heading h2{margin:0;color:#183c59;font-size:clamp(34px,4vw,58px);line-height:1.04;font-weight:400;letter-spacing:.025em}
.event-layout{display:flex;flex-direction:column;gap:66px}.event-row{display:grid;grid-template-columns:minmax(0,1fr) var(--card-w);align-items:center;gap:42px}.event-row.reverse{grid-template-columns:var(--card-w) minmax(0,1fr)}
.event-photo{display:flex;justify-content:center;align-items:center;min-width:0}.event-photo img{width:100%;height:auto;max-height:none;object-fit:initial;border-radius:30px;border:1.5px solid rgba(216,180,106,.82);box-shadow:0 18px 40px rgba(20,30,42,.13)}
.event-copy{color:#f4d99f;padding:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(rgba(4,31,57,.08),rgba(4,31,57,.08)),url("assets/stone-clean.jpg") center/cover}
.event-copy b{font-weight:400;font-size:clamp(27px,2.5vw,39px);line-height:1;letter-spacing:.04em}.event-copy p{margin:17px 0 0;color:#fff0cf;font-size:18px;line-height:1.35}
.other-visual{width:100%;min-height:280px;border-radius:30px;border:1.5px solid rgba(216,180,106,.82);box-shadow:0 18px 40px rgba(20,30,42,.13);display:grid;place-items:center;background:linear-gradient(135deg,#fbf5e9,#e7d3b9)}.other-visual span{color:#9b7c48;font-size:clamp(30px,4vw,56px);letter-spacing:.25em;padding-left:.25em}

.faq{max-width:1040px;margin:0 auto;padding:18px 28px 112px}.faq-heading{text-align:center;margin-bottom:38px}.faq-heading>span{font-size:13px;letter-spacing:.2em;color:#a27e3d}.faq-heading h2{margin:10px 0 0;color:#173a58;font-size:clamp(38px,4.3vw,58px);font-weight:400}
.faq-list{border-top:1px solid rgba(32,63,86,.18)}.faq-item{border-bottom:1px solid rgba(32,63,86,.18)}.faq-item button{width:100%;border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;padding:24px 4px;color:#234763;cursor:pointer;font-size:clamp(18px,2vw,23px)}.faq-item button i{font-style:normal;font-size:29px;color:#b38a44;transition:transform .28s ease}.faq-item.open button i{transform:rotate(180deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .34s ease}.faq-answer>p{overflow:hidden;margin:0;color:#655f57;font-size:17px;line-height:1.6}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer>p{padding:0 48px 24px 4px}

.closing{text-align:center;padding:86px 24px 95px;background:#061e36;color:#f7e8c7}.closing h2{margin:0;color:#e4c785;font-size:clamp(37px,4.5vw,65px);font-weight:400}.closing p{margin:17px auto 34px;font-size:21px}.closing a{display:inline-block;border:1px solid #e2c37d;border-radius:999px;padding:15px 25px;color:#f8e9c8;font-size:17px}
footer{padding:24px;text-align:center;background:#041628;color:#bcae94;letter-spacing:.08em;font-size:13px}

@media (max-width:1260px){.feature-grid{grid-template-columns:repeat(2,var(--card-w))}}
@media (max-width:900px){
  :root{--card-w:min(390px,calc(100vw - 40px));--card-h:220px}
  .feature-grid{grid-template-columns:var(--card-w)}
  .camila-panel{grid-template-columns:1fr}.camila-photo{min-height:0;height:auto}.camila-photo img{width:100%;height:auto}.camila-copy{padding:45px 34px}
  .event-row,.event-row.reverse{grid-template-columns:1fr;justify-items:center;gap:26px}.event-row.reverse .event-copy{order:2}.event-row.reverse .event-photo,.event-row.reverse .other-visual{order:1}
  .event-photo{width:100%}.event-copy{width:var(--card-w)}.other-visual{width:100%;min-height:240px}
}
@media (max-width:620px){
  .site-header{height:72px}.intro{padding:50px 18px}.intro h1 br,.celebration-heading h2 br{display:none}
  .feature-section,.celebrations,.faq{padding-left:16px;padding-right:16px}.colors{padding-left:16px;padding-right:16px}
  .function-card,.standard-card{max-width:100%}.color-card{padding:20px 16px}.color-buttons{gap:7px}.palette-btn{width:27px;height:27px;flex-basis:27px}.tone-display{height:82px}
  .camila{padding-left:16px;padding-right:16px}.camila-copy{padding:36px 24px}.event-layout{gap:48px}.event-row{gap:20px}.faq-item button{padding:20px 2px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* v9 — tarjetas verticales, todas con la misma medida */
:root{--card-w:330px;--card-h:430px}
.feature-grid{grid-template-columns:repeat(3,var(--card-w));gap:34px}
.function-card .card-front,.function-card .card-back{padding:34px 26px}
.function-card .card-front b{font-size:30px;line-height:1.08}
.function-card .card-back b{font-size:25px}
.function-card .card-back small{font-size:17px;line-height:1.55;max-width:255px}
.ornament{font-size:27px;margin-top:30px}

/* Adornos con vida: cada función tiene un motivo distinto */
.function-card .card-front::before,.function-card .card-back::before{
  content:"";position:absolute;left:22px;right:22px;top:20px;height:92px;pointer-events:none;opacity:.88
}
.deco-flowers .card-front::before,.deco-flowers .card-back::before{
  background:
   radial-gradient(circle at 8% 55%,#f6e3b5 0 4px,transparent 5px),
   radial-gradient(circle at 20% 30%,#f6e3b5 0 3px,transparent 4px),
   radial-gradient(circle at 35% 58%,#f6e3b5 0 5px,transparent 6px),
   radial-gradient(circle at 52% 25%,#f6e3b5 0 3px,transparent 4px),
   radial-gradient(circle at 68% 55%,#f6e3b5 0 5px,transparent 6px),
   radial-gradient(circle at 84% 28%,#f6e3b5 0 3px,transparent 4px),
   radial-gradient(circle at 94% 58%,#f6e3b5 0 4px,transparent 5px);
  border-bottom:1px solid rgba(246,227,181,.38)
}
.deco-stars .card-front::before,.deco-stars .card-back::before{
 background:
  radial-gradient(circle at 8% 20%,#fff1c9 0 2px,transparent 3px),radial-gradient(circle at 22% 65%,#fff1c9 0 1.5px,transparent 2.5px),
  radial-gradient(circle at 38% 28%,#fff1c9 0 2.5px,transparent 3.5px),radial-gradient(circle at 56% 70%,#fff1c9 0 1.5px,transparent 2.5px),
  radial-gradient(circle at 73% 24%,#fff1c9 0 2px,transparent 3px),radial-gradient(circle at 92% 58%,#fff1c9 0 2.5px,transparent 3.5px);
 border-bottom:1px dotted rgba(255,241,201,.5)
}
.deco-leaves .card-front::before,.deco-leaves .card-back::before{
 background:linear-gradient(12deg,transparent 48%,rgba(246,227,181,.55) 49% 50%,transparent 51%);
 border-radius:50%;border-top:1px solid rgba(246,227,181,.45)
}
.deco-constellation .card-front::before,.deco-constellation .card-back::before{
 background:
  linear-gradient(22deg,transparent 48%,rgba(255,239,196,.42) 49% 50%,transparent 51%),
  radial-gradient(circle at 10% 68%,#fff0c4 0 2px,transparent 3px),radial-gradient(circle at 31% 38%,#fff0c4 0 2px,transparent 3px),
  radial-gradient(circle at 53% 65%,#fff0c4 0 3px,transparent 4px),radial-gradient(circle at 76% 28%,#fff0c4 0 2px,transparent 3px),
  radial-gradient(circle at 94% 57%,#fff0c4 0 2px,transparent 3px)
}

/* Colores: misma estructura de la referencia, pero en la medida común */
.colors{max-width:760px;gap:42px;align-items:center}
.stone-card h2{font-size:42px;line-height:1.02}
.color-card{padding:34px 24px;justify-content:flex-start;gap:24px}
.color-buttons{margin-top:18px;gap:8px}
.palette-btn{width:29px;height:29px;flex-basis:29px}
.tone-display{height:165px;border-radius:20px;margin-top:18px}
.palette-name{font-size:16px;margin-top:5px}

/* Fotos completas, un poco más pequeñas; las tarjetas conservan su medida */
.event-row,.event-row.reverse{grid-template-columns:minmax(0,760px) var(--card-w);justify-content:center;gap:48px}
.event-row.reverse{grid-template-columns:var(--card-w) minmax(0,760px)}
.event-photo{width:100%;max-width:760px}
.event-photo img{width:100%;height:auto;object-fit:contain}
.event-copy b{font-size:31px}.event-copy p{font-size:18px;max-width:250px}

/* El carrusel no recorta: la altura nace de la proporción real del archivo */
.track figure{aspect-ratio:auto;height:auto;min-height:0}
.track img{width:100%;height:auto;object-fit:contain}

@media(max-width:1120px){.feature-grid{grid-template-columns:repeat(2,var(--card-w))}.event-row,.event-row.reverse{grid-template-columns:1fr;justify-items:center}.event-row.reverse .event-copy{order:2}.event-row.reverse .event-photo{order:1}}
@media(max-width:760px){:root{--card-w:min(330px,calc(100vw - 40px));--card-h:430px}.feature-grid{grid-template-columns:var(--card-w)}.colors{flex-direction:column}.event-photo{max-width:100%}}

/* v10 — correcciones visuales finales de esta revisión */
:root{--card-w:350px;--card-h:470px}

/* Carrusel: sin franjas. JS adapta la altura al alto real de cada imagen. */
.hero{background:transparent;transition:height .55s ease;overflow:hidden}
.track{align-items:flex-start}
.track figure{background:transparent;align-self:flex-start;height:auto!important;min-height:0!important}
.track img{display:block;width:100%;height:auto!important;object-fit:unset!important}

/* Zona de funciones: fondo azul, tarjetas azules limpias y borde champagne. */
.feature-section{max-width:none;background:#082b4b;padding-top:58px;padding-bottom:96px}
.feature-section .section-kicker{color:#f0d79d;margin-bottom:46px}
.feature-grid{max-width:1180px;margin:0 auto;grid-template-columns:repeat(3,var(--card-w));gap:46px 42px}
.function-card{background:#082b4b;border:1.6px solid #d8b46a;box-shadow:0 16px 34px rgba(0,0,0,.18)}
.function-card .card-front{background:#082b4b;color:#f2d79a}
.function-card .card-back{border-radius:inherit}
.function-card .card-front b{font-size:28px;position:relative;z-index:2}
.function-card .card-back b,.function-card .card-back small,.countdown{position:relative;z-index:2}
.interaction-hint{color:#d9c69e;margin-top:32px}

/* Sin pelotitas: cada motivo usa líneas, estrellas, flores u hojas reconocibles. */
.function-card .card-front::before,.function-card .card-back::before{
  position:absolute;left:24px;right:24px;top:30px;height:auto;background:none!important;border:0!important;
  color:#efd596;text-align:center;font-size:30px;line-height:1.25;letter-spacing:.13em;opacity:.9;white-space:pre-line
}
.function-card .card-front::after,.function-card .card-back::after{
  content:"";position:absolute;left:42px;right:42px;bottom:34px;height:1px;
  background:linear-gradient(90deg,transparent,#d8b46a,transparent);opacity:.65
}
.deco-flowers .card-front::before,.deco-flowers .card-back::before{content:"❀  ❦  ❀\A  𓆸  ❧  𓆸"}
.deco-stars .card-front::before,.deco-stars .card-back::before{content:"✦ ─── ✧ ─── ✦\A   ☆       ✦";font-size:25px}
.deco-leaves .card-front::before,.deco-leaves .card-back::before{content:"❧  𓿓  ❦  𓿓  ❧";font-size:28px}
.deco-constellation .card-front::before,.deco-constellation .card-back::before{content:"✦ ── ✧ ───── ☆\A      ╲       ╱\A        ✦ ── ✧";font-size:22px;line-height:1.05}
.ornament{display:none}

/* Las caras interiores mantienen color, pero con más profundidad y vida. */
.tone-rose{background:linear-gradient(145deg,#8d3f5b,#c76d86)}
.tone-emerald{background:linear-gradient(145deg,#075b50,#1b9a82)}
.tone-plum{background:linear-gradient(145deg,#4d2758,#8f4e96)}
.tone-burgundy{background:linear-gradient(145deg,#64142e,#b13f61)}
.tone-champagne{background:linear-gradient(145deg,#8c672c,#c79a45)}
.tone-sapphire{background:linear-gradient(145deg,#074d7a,#087fae)}

/* Elegí tus colores: proporciones de la referencia, texto más chico y muestra de 6 tonos bien visible. */
.colors{max-width:820px;gap:46px;padding-top:38px;align-items:center}
.stone-card h2{font-size:34px!important;line-height:1.08;letter-spacing:.025em}
.color-card{padding:34px 25px 28px;gap:20px}
.color-buttons{margin-top:8px;gap:10px}
.palette-btn{width:31px;height:31px;flex-basis:31px}
.tone-display{height:190px;margin-top:14px;border-radius:21px}
.palette-name{font-size:16px;letter-spacing:.18em;margin-top:4px}

/* Celebraciones: fotos completas, tarjetas algo más largas y más aire entre elementos. */
.event-layout{gap:82px}
.event-row,.event-row.reverse{gap:64px;grid-template-columns:minmax(0,720px) var(--card-w)}
.event-row.reverse{grid-template-columns:var(--card-w) minmax(0,720px)}
.event-photo{max-width:720px}
.event-copy{background:#082b4b;border-color:#d8b46a;color:#f2d79a;padding:34px}
.event-copy p{color:#f8e7bd}

@media(max-width:1180px){.feature-grid{grid-template-columns:repeat(2,var(--card-w))}.event-row,.event-row.reverse{grid-template-columns:1fr;justify-items:center}.event-row.reverse .event-copy{order:2}.event-row.reverse .event-photo{order:1}}
@media(max-width:760px){:root{--card-w:min(350px,calc(100vw - 40px));--card-h:470px}.feature-grid{grid-template-columns:var(--card-w);gap:34px}.event-row,.event-row.reverse{gap:28px}.colors{gap:30px}}
.tone-display{background:linear-gradient(90deg,#052b50 0% 16.66%,#0c4f82 16.66% 33.33%,#2479a9 33.33% 50%,#76b7d3 50% 66.66%,#c7e2ee 66.66% 83.33%,#eef8fb 83.33% 100%)}


/* ===== V11 FINAL CORRECTIONS ===== */
:root{--card-w:350px;--card-h:500px}

/* Toda la zona y las tarjetas comparten la misma piedra azul. El borde dorado las separa. */
.feature-section{
  background:#082b4b url("assets/stone-clean.jpg") center/cover fixed;
  position:relative;
}
.feature-section::before{content:"";position:absolute;inset:0;background:rgba(3,25,48,.18);pointer-events:none}
.feature-section>*{position:relative;z-index:1}
.feature-section .section-kicker,.feature-section .interaction-hint{color:#f2d79a}
.function-card{
  background:url("assets/stone-clean.jpg") center/cover;
  border:1.8px solid #d8b46a;
  box-shadow:0 18px 38px rgba(0,0,0,.20);
}
.function-card .card-front{
  background:linear-gradient(rgba(4,31,57,.10),rgba(4,31,57,.10)),url("assets/stone-clean.jpg") center/cover;
  color:#f4d99e;
}
/* Frente limpio: únicamente el nombre. */
.function-card .card-front::before,.function-card .card-front::after{display:none!important;content:none!important}
.function-card .card-front b{font-size:27px;max-width:82%;line-height:1.12}

/* Los adornos aparecen SOLO al descubrir el contenido. Son dibujos lineales, no símbolos/pelotitas. */
.function-card .card-back{overflow:hidden;padding:100px 30px 38px}
.function-card .card-back::after{display:none!important;content:none!important}
.function-card .card-back::before{
  content:""!important;display:block!important;position:absolute!important;left:50%!important;top:28px!important;
  width:230px!important;height:70px!important;right:auto!important;bottom:auto!important;transform:translateX(-50%)!important;
  background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;opacity:.92!important;
}
.deco-flowers .card-back::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 230 70'%3E%3Cg fill='none' stroke='%23f1d89b' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M15 50 C55 18 78 55 112 31 C145 8 174 48 215 20'/%3E%3Cpath d='M58 39c-10-13-21-10-20 2 1 10 13 13 20-2zm0 0c10-13 21-10 20 2-1 10-13 13-20-2z'/%3E%3Ccircle cx='58' cy='39' r='4'/%3E%3Cpath d='M166 32c-9-12-19-9-18 2 1 9 12 12 18-2zm0 0c9-12 19-9 18 2-1 9-12 12-18-2z'/%3E%3Ccircle cx='166' cy='32' r='4'/%3E%3Cpath d='M92 39q-12-15-22-2M127 27q11-16 24-6'/%3E%3C/g%3E%3C/svg%3E")}
.deco-stars .card-back::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 230 70'%3E%3Cg fill='none' stroke='%23f1d89b' stroke-width='1.8'%3E%3Cpath d='M18 51L52 22 91 44 128 17 170 42 213 20'/%3E%3Cpath d='M52 22l-5 5m5-5 5 5m71-10-5 6m5-6 5 6m80-3-5 5m5-5 5 5'/%3E%3Cpath d='M88 44l3-8 3 8 8 3-8 3-3 8-3-8-8-3zM166 42l3-7 3 7 7 3-7 3-3 7-3-7-7-3z'/%3E%3C/g%3E%3C/svg%3E")}
.deco-leaves .card-back::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 230 70'%3E%3Cg fill='none' stroke='%23f1d89b' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M20 53 Q72 10 115 42 Q160 67 212 18'/%3E%3Cpath d='M48 35q-18-6-20 9 14 5 20-9zm27-12q-4-17 11-16 4 14-11 16zm75 28q-4-17 11-16 4 14-11 16zm30-15q15-11 21 2-11 10-21-2z'/%3E%3C/g%3E%3C/svg%3E")}
.deco-constellation .card-back::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 230 70'%3E%3Cg fill='none' stroke='%23f1d89b' stroke-width='1.7'%3E%3Cpath d='M25 49L62 22 96 38 128 14 158 42 205 24'/%3E%3Ccircle cx='25' cy='49' r='3'/%3E%3Ccircle cx='62' cy='22' r='4'/%3E%3Ccircle cx='96' cy='38' r='3'/%3E%3Ccircle cx='128' cy='14' r='4'/%3E%3Ccircle cx='158' cy='42' r='3'/%3E%3Ccircle cx='205' cy='24' r='4'/%3E%3Cpath d='M112 55l3-7 3 7 7 3-7 3-3 7-3-7-7-3z'/%3E%3C/g%3E%3C/svg%3E")}

/* Más aire entre tarjetas. */
.feature-grid{gap:54px 48px}

/* Color: vuelve al formato visual de dos tarjetas iguales, con texto proporcionado. */
.colors{max-width:860px;gap:38px;padding-top:46px}
.stone-card h2{font-size:31px!important;line-height:1.06}
.color-card{padding:34px 24px;justify-content:flex-start}
.tone-display{height:175px;margin-top:22px}

/* Celebraciones: mismas tarjetas verticales, fotos completas un poco más contenidas y más separación. */
.event-layout{gap:88px}
.event-row,.event-row.reverse{gap:72px;grid-template-columns:minmax(0,680px) var(--card-w)}
.event-row.reverse{grid-template-columns:var(--card-w) minmax(0,680px)}
.event-photo{max-width:680px}
.event-copy{height:var(--card-h);background:linear-gradient(rgba(4,31,57,.08),rgba(4,31,57,.08)),url("assets/stone-clean.jpg") center/cover;border:1.8px solid #d8b46a}

/* Nueva Comunión apaisada: misma altura natural que el resto del carrusel. */
.track figure{aspect-ratio:auto!important}
.track img{width:100%;height:auto!important}

@media(max-width:1180px){
  .feature-grid{grid-template-columns:repeat(2,var(--card-w))}
  .event-row,.event-row.reverse{grid-template-columns:1fr;justify-items:center}
}
@media(max-width:760px){
  :root{--card-w:min(350px,calc(100vw - 40px));--card-h:500px}
  .feature-grid{grid-template-columns:var(--card-w);gap:38px}
}

/* ===== V12 — unificación final de fondos y proporciones ===== */
/* La piedra acompaña el desplazamiento de la página: ya no queda fija. */
body{
  background:#082b4b url("assets/stone-clean.jpg") center top/cover repeat-y;
}
.intro{background:#fffdf9;}

/* Carrusel sin espacio sobrante alrededor de las imágenes. */
.hero{line-height:0;background:transparent!important;}
.track figure{line-height:0;background:transparent!important;}
.track img{vertical-align:top;}

/* Secciones sobre la misma piedra azul, sin cortes blancos. */
.feature-section{
  background:#082b4b url("assets/stone-clean.jpg") center top/cover repeat-y!important;
  background-attachment:scroll!important;
}
.feature-section::before{background:rgba(3,25,48,.12)}
.colors,.camila,.celebrations,.faq{background:transparent;}

/* Tarjetas: mismo azul piedra y borde dorado un poco más presente. */
.function-card,.standard-card{
  border:2.2px solid #e0bd72;
  box-shadow:0 18px 38px rgba(0,0,0,.20),0 0 0 1px rgba(244,216,151,.08);
}
.function-card,.function-card .card-front,.stone-card,.event-copy{
  background-image:linear-gradient(rgba(4,31,57,.08),rgba(4,31,57,.08)),url("assets/stone-clean.jpg")!important;
  background-position:center!important;background-size:cover!important;
}

/* Paleta: ya no deja un bloque blanco dentro de la página. */
.color-card{
  background:linear-gradient(rgba(4,31,57,.16),rgba(4,31,57,.16)),url("assets/stone-clean.jpg") center/cover!important;
  color:#f3d99f;
}
.palette-name{color:#f3d99f;}
.palette-btn{outline-color:rgba(239,211,151,.7);border-color:#f7ead0;}

/* Demo de Camila integrado a la piedra. */
.camila-panel{
  background:linear-gradient(rgba(4,31,57,.14),rgba(4,31,57,.14)),url("assets/stone-clean.jpg") center/cover;
  border:2.2px solid #e0bd72;
}
.camila-copy{background:transparent;}

/* Celebraciones y preguntas: textos claros sobre la piedra. */
.celebration-heading h2,.faq-heading h2{color:#f3d99f;}
.faq-heading>span{color:#e0bd72;}
.faq-list{border-top-color:rgba(224,189,114,.48)}
.faq-item{border-bottom-color:rgba(224,189,114,.42)}
.faq-item button{color:#fff0cf;}
.faq-answer>p{color:#f4e7ca;}

/* Cierre y pie: misma piedra, sin otro azul que desentone. */
.closing{
  background:linear-gradient(rgba(3,25,48,.18),rgba(3,25,48,.18)),url("assets/stone-clean.jpg") center/cover;
  border-top:1px solid rgba(224,189,114,.55);
}
footer{
  background:linear-gradient(rgba(3,25,48,.28),rgba(3,25,48,.28)),url("assets/stone-clean.jpg") center bottom/cover;
  color:#e7d2a2;border-top:1px solid rgba(224,189,114,.35);
}

/* ===== V13 — patrón único de piedra + adornos interiores fiables ===== */
html{background:#082b4b}
body{
  background-color:#082b4b!important;
  background-image:url("assets/stone-clean.jpg")!important;
  background-repeat:repeat-y!important;
  background-size:100% auto!important;
  background-position:center top!important;
  background-attachment:scroll!important;
}
/* Sólo la frase conserva fondo blanco. Todas las demás secciones dejan ver la MISMA piedra del body. */
.feature-section,.colors,.camila,.celebrations,.faq,.closing,footer{
  background:transparent!important;
  background-image:none!important;
}
.feature-section::before{display:none!important}
/* Evitar cualquier capa que cambie el tono/escala del fondo común. */
.colors::before,.camila::before,.celebrations::before,.faq::before,.closing::before{display:none!important}

/* Tarjetas cerradas: piedra nítida, borde dorado ligeramente acentuado. */
.function-card,.standard-card,.camila-panel{
  border-color:#e7c36f!important;
  border-width:2.4px!important;
}
.function-card,.function-card .card-front,.stone-card,.event-copy,.color-card{
  background-image:url("assets/stone-clean.jpg")!important;
  background-size:cover!important;
  background-position:center!important;
}
/* Cara abierta: el adorno real va DENTRO, por encima del contenido. */
.function-card .card-back{padding:118px 30px 38px!important}
.function-card .card-back::before{display:none!important}
.inner-decoration{position:absolute;left:50%;top:28px;transform:translateX(-50%);width:235px;height:72px;z-index:3;pointer-events:none}
.inner-decoration *{vector-effect:non-scaling-stroke}
.function-card .card-back b,.function-card .card-back small,.countdown{z-index:4!important}

/* Carrusel: cero línea/margen del contenedor. */
.hero,.track,.track figure,.track img{margin:0!important;padding:0!important;border:0!important;outline:0!important}
.hero{font-size:0!important}
.track figure{font-size:0!important}
.track img{display:block!important}

/* ===== V14 — acabado visual ===== */
/* Una sola piedra continua a lo largo de la página, sin empalmes visibles. */
body{
  background-image:url("assets/stone-clean.jpg")!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-attachment:scroll!important;
}
/* Marfil para la lectura; dorado queda reservado a bordes y detalles. */
.section-kicker,.stone-card h2,.celebration-heading h2,.faq-heading h2,
.faq-item button,.closing h2,.closing p,.event-copy b,.event-copy p,
.interaction-hint,.palette-name,.camila-copy h2,.camila-copy span,.camila-copy strong{
  color:#fff4df!important;
}
/* Borde un poco más definido sin volverse grueso. */
.function-card,.standard-card,.camila-panel{border:2.6px solid #e8c36e!important}

/* Adornos interiores: composiciones más ricas, siempre detrás/encima del texto sin invadirlo. */
.inner-decoration{width:255px!important;height:92px!important;top:25px!important;opacity:.98}
.inner-decoration .fine{stroke:#ffe5a4;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round}
.inner-decoration .soft{stroke:#ffe5a4;stroke-width:1.15;fill:none;opacity:.78}
.inner-decoration .spark{fill:#ffe5a4;stroke:none}
.function-card .card-back{padding-top:128px!important}

/* El carrusel no dibuja ni un píxel de fondo sobrante. */
.hero{overflow:hidden!important}
.hero,.track,.track figure{background:none!important}
.track figure{overflow:hidden!important}
/* Karol: apenas más contenida para verla completa con menos desplazamiento. */
.track figure:nth-child(6){justify-content:center!important}
.track figure:nth-child(6) img{width:96%!important;margin:0 auto!important}

/* ===== V15 — correcciones finales acordadas ===== */
/* Piedra sin efecto "cortina": conserva su textura y proporción natural. */
body{
  background-image:url("assets/stone-clean.jpg")!important;
  background-size:100% auto!important;
  background-repeat:repeat-y!important;
  background-position:center top!important;
  background-attachment:scroll!important;
}
/* Azul y oro apenas suavizados, sin perder luminosidad. */
.function-card,.standard-card,.camila-panel{border-color:#dfbd72!important}
.inner-decoration .fine{stroke:#f4dda8!important}
.inner-decoration .soft{stroke:#f4dda8!important}
.inner-decoration .spark{fill:#f4dda8!important}

/* Cerradas: sólo piedra + nombre + borde. Los adornos aparecen únicamente al descubrirlas. */
.function-card .card-front::before,.function-card .card-front::after,
.function-card .card-front .ornament{display:none!important}

/* Tonos abiertos más suaves y elegantes. */
.tone-rose{background:linear-gradient(145deg,#9d6175,#bd8190)!important}
.tone-emerald{background:linear-gradient(145deg,#39786f,#5b9a8d)!important}
.tone-plum{background:linear-gradient(145deg,#68496f,#8c6a91)!important}
.tone-burgundy{background:linear-gradient(145deg,#7e4156,#a86578)!important}
.tone-champagne{background:linear-gradient(145deg,#92754b,#b99a67)!important}
.tone-sapphire{background:linear-gradient(145deg,#376c8b,#5a8faa)!important}

/* Comunión: sin bandas azules laterales; ocupa exactamente todo el ancho. */
.track figure:nth-child(6) img{width:100%!important;margin:0!important;max-width:none!important}

/* Novios: elimina la finísima franja superior sin alterar la composición. */
.track figure:nth-child(2){overflow:hidden!important}
.track figure:nth-child(2) img{transform:translateY(-3px)!important;width:100%!important}

/* ===== V16 — continuidad real de la piedra + tonos más suaves ===== */
/* Una sola imagen continua detrás de TODA la página. No se reinicia en cada sección. */
html{background:#092c4b;}
body{
  background:#092c4b url("assets/stone-continuous.jpg") center top/100% auto no-repeat!important;
}
/* Solo la frase conserva su franja marfil. Todo lo demás deja ver el mismo fondo continuo. */
.feature-section,.colors,.camila,.celebrations,.faq,.closing,footer{
  background:transparent!important;
  background-image:none!important;
}
.feature-section::before{display:none!important;content:none!important}
.closing,footer{border-color:rgba(211,183,119,.42)}

/* Dorado champagne un poco más suave, pero todavía luminoso. */
.feature-section .section-kicker,.feature-section .interaction-hint,
.function-card .card-front,.stone-card,.event-copy,.palette-name,
.celebration-heading h2,.faq-heading h2,.closing h2{
  color:#e5cc96!important;
}
.function-card,.standard-card,.camila-panel,.event-copy{
  border-color:#d3b777!important;
}
.function-card{box-shadow:0 16px 34px rgba(0,0,0,.16)!important}

/* Colores descubiertos más suaves y parejos. */
.tone-rose{background:linear-gradient(145deg,#9a6173,#b97889)!important}
.tone-emerald{background:linear-gradient(145deg,#397c70,#5c9b8d)!important}
.tone-plum{background:linear-gradient(145deg,#6f5075,#8b678d)!important}
.tone-burgundy{background:linear-gradient(145deg,#815063,#a26a7b)!important}
.tone-champagne{background:linear-gradient(145deg,#9a8057,#b69a6d)!important}
.tone-sapphire{background:linear-gradient(145deg,#3e7897,#6597ae)!important}
.function-card .card-back{color:#fff8e9!important}
.function-card .card-back::before{opacity:.82!important}

/* El carrusel no agrega líneas, rellenos ni separación alrededor de cada foto. */
.hero,.track,.track figure{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.track figure{line-height:0!important}
.track img{display:block!important;margin:0!important;padding:0!important;border:0!important;width:100%!important;height:auto!important}

/* ===== V17 — azul piedra apenas más rebajado en la web ===== */
/* Capa azul muy suave sobre la piedra: baja intensidad sin apagar el oro ni el texto. */
body{
  background-color:#0a2946!important;
  background-image:linear-gradient(rgba(7,35,60,.18),rgba(7,35,60,.18)),url("assets/stone-continuous.jpg")!important;
  background-position:center top!important;
  background-size:100% auto!important;
  background-repeat:no-repeat!important;
}
/* Mantener la misma lectura de piedra en las tarjetas cerradas, también un punto más suave. */
.function-card .card-front,.stone-card,.event-copy,.color-card{
  background-image:linear-gradient(rgba(7,35,60,.12),rgba(7,35,60,.12)),url("assets/stone-clean.jpg")!important;
}

/* ===== V18 — piedra nítida y uniforme + Comunión completa ===== */
/* La piedra usa una única textura de alta nitidez, sin ampliaciones locales ni bloques borrosos. */
body{
  background-color:#0a2946!important;
  background-image:url("assets/stone-page-crisp.jpg")!important;
  background-position:center top!important;
  background-size:100% auto!important;
  background-repeat:no-repeat!important;
  background-attachment:scroll!important;
}
.feature-section,.colors,.camila,.celebrations,.faq,.closing,footer{
  background:transparent!important;
  background-image:none!important;
}
/* Comunión ya viene preparada al formato exacto del carrusel, con la imagen completa. */
.track figure:nth-child(6) img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  margin:0!important;
  transform:none!important;
}

/* ===== V19 — fondo reconstruido solo con la zona nítida de la piedra ===== */
/* El original tenía desenfoque real en su lateral izquierdo. Esta versión
   excluye esa zona y mantiene la misma escala/nitidez en todo el ancho. */
body{
  background-color:#0a2946!important;
  background-image:url("assets/stone-page-sharp-v19.jpg")!important;
  background-position:center top!important;
  background-size:100% auto!important;
  background-repeat:no-repeat!important;
  background-attachment:scroll!important;
}
.feature-section,.colors,.camila,.celebrations,.faq,.closing,footer{
  background:transparent!important;
  background-image:none!important;
}

/* ===== V20 — fondo rehecho desde cero, sin el lateral borroso ===== */
html,body{background-color:#092943!important;}
body{
  background-image:url("assets/stone-new-v20.jpg")!important;
  background-position:center top!important;
  background-size:1800px 1800px!important;
  background-repeat:repeat-y!important;
  background-attachment:scroll!important;
}
.feature-section,.colors,.camila,.celebrations,.faq,.closing,footer{
  background-color:transparent!important;
  background-image:none!important;
}
/* Ellusyan junto a Otros eventos: más discreto, como habíamos acordado. */
.other-visual span{
  font-size:clamp(22px,2.6vw,38px)!important;
  letter-spacing:.20em!important;
}

/* ===== V21 — recuperación de contenido + pulido tipográfico ===== */
/* Una sola familia tipográfica en toda la experiencia, incluidos controles. */
html,body,button,a,input,textarea,select{font-family:Georgia,"Times New Roman",serif!important}
button,a{font-style:normal}

/* Baby Shower vuelve a identificarse en el carrusel sin modificar la fotografía. */
.track figure.baby-slide{position:relative!important}
.track figure.baby-slide figcaption{
  position:absolute;left:0;right:0;bottom:5.5%;z-index:3;
  margin:auto;width:max-content;max-width:88%;
  color:#fff8e9;font-size:clamp(15px,1.35vw,23px);font-weight:700;
  letter-spacing:.16em;line-height:1;text-shadow:0 2px 12px rgba(0,0,0,.55);
}

/* Opciones complementarias: muestran amplitud sin sumar otra fila de tarjetas grandes. */
.extra-options{max-width:1080px;margin:34px auto 0;text-align:center;color:#f7efdf}
.extra-options>span{display:block;margin-bottom:14px;color:#e5cc96;font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.extra-option-list{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.extra-option-list b{border:1px solid rgba(211,183,119,.78);border-radius:999px;padding:9px 14px;font-size:12px;letter-spacing:.08em;font-weight:400;color:#f7efdf;background:rgba(4,31,54,.34)}

/* Estilos de invitación: contenido recuperado con el lenguaje visual actual. */
.invitation-styles{padding:86px 24px 92px;background:transparent;color:#f7efdf}
.styles-heading{max-width:1040px;margin:0 auto 34px;text-align:center}
.styles-heading>span{display:block;color:#e5cc96;font-size:13px;letter-spacing:.2em;margin-bottom:15px}
.styles-heading h2{margin:0 0 18px;color:#e5cc96;font-size:clamp(34px,4.5vw,62px);font-weight:400;line-height:1.05}
.styles-heading p{max-width:760px;margin:0 auto;font-size:17px;line-height:1.65}
.style-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.style-grid article{min-height:210px;padding:34px 30px;border:1px solid rgba(211,183,119,.78);border-radius:24px;background:rgba(5,36,61,.58);box-shadow:0 14px 30px rgba(0,0,0,.12)}
.style-grid h3{margin:0 0 18px;color:#e5cc96;font-size:18px;letter-spacing:.08em;font-weight:700}
.style-grid p{margin:0;font-size:16px;line-height:1.6;color:#f7efdf}
.style-note{text-align:center;margin:28px auto 0;color:#f7efdf;font-size:17px}

/* Unificar jerarquía y legibilidad de textos secundarios. */
.faq-item button,.faq-answer,.event-copy p,.function-card small,.camila-copy strong,.closing p{font-family:inherit!important}

/* Pie final de marca recuperado, discreto. */
footer{display:flex;flex-direction:column;align-items:center;gap:7px;padding:30px 20px 34px!important;color:#f7efdf!important}
footer strong{color:#e5cc96;font-size:13px;letter-spacing:.18em;font-weight:700}
footer span{font-size:13px;letter-spacing:.04em;color:#f7efdf}

@media (max-width:800px){
  .style-grid{grid-template-columns:1fr;max-width:560px}
  .invitation-styles{padding:64px 20px 70px}
  .style-grid article{min-height:auto}
  .extra-option-list{gap:8px}
}

/* ===== V22 — legibilidad final sobre piedra azul ===== */
/* Todo texto apoyado directamente sobre la piedra pasa a marfil.
   El champagne queda reservado a bordes, flechas, líneas y ornamentos. */
.feature-section .section-kicker,
.feature-section .interaction-hint,
.function-card .card-front,
.function-card .card-front b,
.extra-options>span,
.extra-option-list b,
.stone-card,
.stone-card h2,
.palette-name,
.camila-copy span,
.camila-copy h2,
.camila-copy strong,
.celebration-heading h2,
.event-copy b,
.event-copy p,
.styles-heading>span,
.styles-heading h2,
.styles-heading p,
.style-grid h3,
.style-grid p,
.style-note,
.faq-heading>span,
.faq-heading h2,
.faq-item button,
.faq-answer>p,
.closing h2,
.closing p,
footer strong,
footer span{
  color:#fff4df!important;
}

/* Apenas más grandes: mejora lectura sin perder delicadeza. */
.feature-section .section-kicker,
.extra-options>span,
.styles-heading>span,
.faq-heading>span{font-size:14px!important}
.interaction-hint{font-size:15px!important;line-height:1.45!important}
.extra-option-list b{font-size:13px!important}
.palette-name{font-size:17px!important}
.faq-item button{font-size:clamp(18px,1.25vw,21px)!important}
.faq-answer>p{font-size:17px!important;line-height:1.6!important}
.event-copy p,.function-card small{font-size:17px!important;line-height:1.5!important}
.style-grid p{font-size:17px!important}
.style-note{font-size:18px!important}
footer strong,footer span{font-size:14px!important}

/* Mantener champagne solo como acento gráfico. */
.function-card,.stone-card,.event-copy,.color-card,.extra-option-list b,.style-grid article,
.camila-panel,.closing a{border-color:#d3b777!important}
.faq-item .arrow,.faq-item button::after{color:#d3b777!important}

/* ===== V23 — ajuste integral de legibilidad y coherencia ===== */
/* Marfil para lectura; champagne solo en bordes y acentos. */
.feature-section .section-kicker{font-size:clamp(19px,1.55vw,24px)!important;line-height:1.35!important;letter-spacing:.13em!important;color:#fff4df!important}
.interaction-hint{font-size:18px!important;line-height:1.5!important;color:#fff4df!important;margin-top:30px!important}
.extra-options>span{font-size:17px!important;line-height:1.4!important;color:#fff4df!important;margin-bottom:16px!important}
.extra-option-list{gap:12px!important}
.extra-option-list b{font-size:15px!important;line-height:1.25!important;padding:11px 17px!important;color:#fff4df!important;letter-spacing:.055em!important}

/* Tarjetas funcionales: caras lisas, sin dibujos. */
.function-card .inner-decoration,.function-card .ornament{display:none!important}
.function-card .card-back{padding:38px 30px!important}
.function-card .card-back b{font-size:clamp(24px,1.75vw,29px)!important;line-height:1.15!important}
.function-card .card-back small{font-size:19px!important;line-height:1.5!important;max-width:285px!important;margin-top:16px!important}
.function-card .card-front b{font-size:clamp(28px,2vw,33px)!important}

/* Personalización creativa: título principal y tarjetas con la misma silueta vertical. */
.invitation-styles{padding-top:82px!important}
.styles-heading{margin-bottom:38px!important}
.styles-heading h2{font-size:clamp(40px,4.2vw,60px)!important;color:#fff4df!important;letter-spacing:.035em!important}
.styles-heading p{font-size:20px!important;line-height:1.6!important;max-width:850px!important}
.style-grid{grid-template-columns:repeat(3,minmax(0,320px))!important;justify-content:center!important;gap:28px!important}
.style-grid article{width:100%!important;min-height:390px!important;border-radius:28px!important;padding:42px 32px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;background:linear-gradient(rgba(4,31,57,.12),rgba(4,31,57,.12)),url("assets/stone-clean.jpg") center/cover!important}
.style-grid h3{font-size:23px!important;line-height:1.2!important;color:#fff4df!important;margin-bottom:22px!important}
.style-grid p{font-size:19px!important;line-height:1.58!important}
.style-note{font-size:20px!important;line-height:1.5!important;margin-top:32px!important}

/* Celebraciones: frases secundarias claramente legibles. */
.event-copy b{font-size:clamp(30px,2.35vw,38px)!important}
.event-copy p{font-size:21px!important;line-height:1.42!important;max-width:290px!important;margin-top:18px!important}

/* Preguntas frecuentes: subir toda la escala, no solo las preguntas. */
.faq-heading>span{font-size:17px!important;letter-spacing:.16em!important;color:#fff4df!important}
.faq-heading h2{font-size:clamp(43px,4.4vw,64px)!important;color:#fff4df!important}
.faq-item button{font-size:clamp(20px,1.5vw,24px)!important;line-height:1.35!important;padding:26px 5px!important}
.faq-answer>p{font-size:19px!important;line-height:1.65!important}

/* Textos de tarjetas de color y demo. */
.palette-name{font-size:19px!important}
.camila-copy span{font-size:16px!important}
.camila-copy strong{font-size:17px!important}

@media(max-width:800px){
 .style-grid{grid-template-columns:1fr!important;max-width:360px!important}
 .style-grid article{min-height:350px!important}
 .extra-option-list b{font-size:14px!important}
 .interaction-hint{font-size:17px!important}
 .event-copy p{font-size:19px!important}
}

/* ===== V24 — última pasada de legibilidad ===== */
/* La imagen de Comunión aprobada se usa sin retoques. */
.feature-section .section-kicker{font-size:clamp(21px,1.7vw,26px)!important}
.interaction-hint{font-size:20px!important}
.extra-options>span{font-size:19px!important}
.extra-option-list b{font-size:17px!important;padding:12px 19px!important}
.function-card .card-back b{font-size:clamp(26px,1.9vw,31px)!important}
.function-card .card-back small{font-size:20px!important;line-height:1.52!important}
.function-card .card-front b{font-size:clamp(29px,2.1vw,35px)!important}
.styles-heading p{font-size:21px!important}
.style-grid h3{font-size:25px!important}
.style-grid p{font-size:20px!important}
.style-note{font-size:21px!important}
.event-copy p{font-size:22px!important;line-height:1.45!important}
.faq-heading>span{font-size:18px!important}
.faq-item button{font-size:clamp(22px,1.65vw,26px)!important}
.faq-answer>p{font-size:20px!important}
.palette-name{font-size:20px!important}
@media(max-width:800px){
 .feature-section .section-kicker{font-size:20px!important}
 .interaction-hint{font-size:18px!important}
 .extra-options>span{font-size:17px!important}
 .extra-option-list b{font-size:15px!important}
 .style-grid p,.style-note{font-size:18px!important}
 .event-copy p{font-size:20px!important}
 .faq-item button{font-size:20px!important}
 .faq-answer>p{font-size:18px!important}
}


/* ===== V25 — correcciones finales puntuales ===== */
/* Fondo de piedra: permanece quieto mientras se desplaza el contenido. */
body{
  background-attachment:fixed!important;
  background-position:center top!important;
}

/* Carrusel de altura uniforme: evita que una foto vertical agrande toda la portada. */
.hero{
  aspect-ratio:1760/894!important;
  height:auto!important;
  overflow:hidden!important;
}
.track{height:100%!important;align-items:stretch!important}
.track figure{
  height:100%!important;
  aspect-ratio:auto!important;
  flex:0 0 100%!important;
  overflow:hidden!important;
}
.track img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Las caras abiertas usan siete tonos distintos, suaves y elegantes. */
.tone-rose{background:linear-gradient(145deg,#a86f82,#c58fa0)!important}
.tone-emerald{background:linear-gradient(145deg,#4b897f,#69a397)!important}
.tone-plum{background:linear-gradient(145deg,#77627f,#967ca0)!important}
.tone-silver{background:linear-gradient(145deg,#71818b,#9aa8af)!important;color:#fff8e9!important}
.tone-champagne{background:linear-gradient(145deg,#aa8c5e,#c5a979)!important}
.tone-sapphire{background:linear-gradient(145deg,#527f98,#719bb0)!important}
.tone-ivory{background:linear-gradient(145deg,#d8ccb8,#eee4d2)!important;color:#1d3850!important}
.tone-ivory b,.tone-ivory small{color:#1d3850!important}

/* Texto siempre contenido dentro de las tarjetas. */
.function-card .card-back{overflow:hidden!important}
.function-card .card-back small{max-width:285px!important}
.style-grid article{min-height:430px!important;height:430px!important;overflow:hidden!important}
.style-grid h3,.style-grid p{overflow-wrap:anywhere}

/* Flechas del FAQ en marfil para que se distingan sobre la piedra. */
.faq-item button i{color:#fff4df!important}

@media(max-width:800px){
  body{background-attachment:scroll!important}
  .style-grid article{height:auto!important;min-height:390px!important}
}
