
/* COLOR CAROUSEL (top-of-homepage, CNBC-style scannability, real evergreen content) */
.color-carousel-wrap{padding:18px 0 8px}
.color-carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 18px 14px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.color-carousel::-webkit-scrollbar{display:none}
.cc-slide{position:relative;scroll-snap-align:start;flex:0 0 auto;width:150px;height:200px;border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;display:block}
.cc-slide img{width:100%;height:100%;object-fit:cover;display:block}
.cc-glow{position:absolute;inset:-22px;filter:blur(22px);opacity:.55;z-index:-1}
.cc-scrim{position:absolute;inset:0;background:linear-gradient(to bottom, transparent 38%, rgba(23,19,15,.92) 100%)}
.cc-flame{position:absolute;top:9px;right:9px;font-size:1rem;filter:drop-shadow(0 0 5px rgba(255,180,60,.9));animation:flame-flicker 2.6s ease-in-out infinite}
@keyframes flame-flicker{0%,100%{transform:scale(1) rotate(-2deg);opacity:1}25%{transform:scale(1.08) rotate(1deg);opacity:.85}50%{transform:scale(.95) rotate(-1deg);opacity:1}75%{transform:scale(1.05) rotate(2deg);opacity:.9}}
@media (prefers-reduced-motion: reduce){.cc-flame{animation:none}}
.cc-slide{opacity:0;transform:translateY(18px);transition:opacity .55s ease, transform .55s ease}
.cc-slide.in-view{opacity:1;transform:translateY(0)}
.cc-txt{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;display:flex;flex-direction:column}
.cc-name{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:#fff}
.cc-sub{font-family:'Work Sans',sans-serif;font-size:.72rem;color:var(--cenizad);margin-top:2px}
@media(min-width:900px){.cc-slide{width:175px;height:230px}}

/* VIRTUAL ALTAR */
.va-stage{max-width:720px;margin:0 auto;text-align:center;padding:20px 10px 40px}
.va-step{display:none}
.va-step.active{display:block;animation:vaFade .5s ease}
@keyframes vaFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.va-intentions{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin:26px 0}
.va-intent-btn{background:var(--panel);border:1.5px solid var(--linea);border-radius:10px;padding:20px 14px;cursor:pointer;color:var(--ceniza);font-family:'Newsreader',serif;transition:border-color .15s,transform .15s}
.va-intent-btn:hover{transform:translateY(-2px);border-color:var(--velad)}
.va-intent-btn.selected{border-color:var(--vela);background:var(--panel2)}
.va-intent-swatch{width:26px;height:26px;border-radius:50%;margin:0 auto 10px;border:1px solid rgba(255,255,255,.15)}
.va-intent-name{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}
.va-intent-desc{font-size:.82rem;color:var(--cenizad);margin-top:4px}
.va-petition{width:100%;max-width:520px;min-height:100px;margin:18px auto 6px;background:var(--panel);border:1px solid var(--linea);border-radius:8px;color:var(--ceniza);font-family:'Newsreader',serif;font-size:.98rem;padding:14px;resize:vertical}
.va-privacy-note{max-width:520px;margin:0 auto 22px;font-size:.8rem;color:var(--cenizad);font-style:italic}
.va-candle-wrap{position:relative;width:120px;height:170px;margin:24px auto}
.va-candle-body{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:120px;border-radius:6px 6px 3px 3px;box-shadow:inset -6px 0 12px rgba(0,0,0,.35)}
.va-flame{position:absolute;top:-26px;left:50%;transform:translateX(-50%);width:14px;height:26px;background:radial-gradient(ellipse at 50% 70%,#fff3c4 0%,var(--vela) 45%,#a94a1f 100%);border-radius:50% 50% 50% 50% / 60% 60% 40% 40%;opacity:0;filter:blur(.3px)}
.va-candle-wrap.lit .va-flame{opacity:1;animation:vaFlicker 2.4s ease-in-out infinite}
.va-candle-wrap.lit .va-glow{opacity:1}
.va-glow{position:absolute;top:-60px;left:50%;transform:translateX(-50%);width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(226,165,76,.28) 0%,rgba(226,165,76,0) 70%);opacity:0;transition:opacity 1.4s ease}
@keyframes vaFlicker{0%,100%{transform:translateX(-50%) scale(1) rotate(-1deg)}30%{transform:translateX(-50%) scale(1.05) rotate(1deg)}55%{transform:translateX(-50%) scale(.97) rotate(-2deg)}80%{transform:translateX(-50%) scale(1.03) rotate(1deg)}}
.va-lit-message{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.6rem;color:var(--vela);margin:18px 0 6px}
.va-error-box{background:var(--panel);border:1px solid var(--linea);border-radius:8px;padding:18px 20px;max-width:480px;margin:20px auto;color:var(--cenizad);font-size:.92rem}
.va-loading{color:var(--cenizad);font-size:.9rem;margin:20px 0}

/* LANGUAGE SWITCHER */
.lang-switch{display:flex;align-items:center;gap:6px;font-family:'Work Sans',sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.04em;margin-left:14px}
.lang-switch a{color:var(--cenizad);padding:4px 6px}
.lang-switch a.lang-active{color:var(--vela)}
.lang-switch span{color:var(--linea)}
@media(max-width:900px){.lang-switch{margin:10px 0 0;justify-content:center;width:100%;padding-top:10px;border-top:1px solid var(--linea)}}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --noche:#17130f;--panel:#221c16;--panel2:#2a231b;
  --ceniza:#ede7da;--cenizad:#bcae98;
  --vela:#e2a54c;--velad:#a97a35;
  --rosa:#b5636a;--copal:#5c7a5f;--azul:#5f7f96;--morado:#7a5f8a;
  --linea:rgba(222,213,194,.12);
}
html{scroll-behavior:smooth}
body{font-family:'Newsreader',serif;background:var(--noche);color:var(--ceniza);line-height:1.7;font-size:16px}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%;height:auto}
.wrap{max-width:900px;margin:0 auto;padding:0 22px}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:600;color:var(--ceniza)}
.eyebrow{font-family:'Work Sans',sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--vela);margin-bottom:12px}

/* NAV */
nav.site{background:rgba(23,19,15,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--linea);position:sticky;top:0;z-index:100;padding:0 5%;height:64px;display:flex;align-items:center;justify-content:space-between}
.brand{font-family:'Cormorant Garamond',serif;font-weight:600;font-style:italic;font-size:1.25rem;display:flex;align-items:center;gap:9px}
.brand svg{width:19px;height:19px;flex-shrink:0}
.nav-links{display:flex;gap:6px;list-style:none;align-items:center}
.nav-links>li{position:relative}
.nav-links>li>a{display:block;font-family:'Work Sans',sans-serif;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--cenizad);padding:10px 12px;transition:color .15s}
.nav-links>li>a:hover{color:var(--vela)}
.has-menu:hover .menu{display:block}
.menu{display:none;position:absolute;top:100%;left:0;background:var(--panel);border:1px solid var(--linea);min-width:220px;border-radius:6px;padding:8px;box-shadow:0 16px 34px rgba(0,0,0,.4)}
.menu a{display:block;font-family:'Newsreader',serif;font-size:.92rem;color:var(--ceniza);padding:9px 12px;border-radius:4px}
.menu a:hover{background:var(--panel2);color:var(--vela)}
.mobile-toggle{display:none;background:none;border:none;color:var(--ceniza);font-size:1.6rem;cursor:pointer;padding:4px 8px}
@media(max-width:900px){
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--panel);flex-direction:column;padding:10px 5%;border-bottom:1px solid var(--linea);gap:2px;max-height:calc(100vh - 64px);overflow-y:auto;-webkit-overflow-scrolling:touch}
  .nav-links.open{display:flex}
  .nav-links>li{width:100%}
  .nav-links>li>a{padding:13px 4px;border-bottom:1px solid var(--linea)}
  .has-menu .menu{position:static;display:block;background:none;border:none;padding:0 0 8px 14px;box-shadow:none}
  .mobile-toggle{display:block}
}

/* MARQUEE */
.marquee{background:var(--panel);border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);overflow:hidden;padding:11px 0;white-space:nowrap}
.marquee-inner{display:inline-block;animation:mq 26s linear infinite}
.mq-item{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--velad);padding:0 22px}
.mq-sep{color:var(--linea);padding:0 6px}
@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* HERO IMAGE */
.hero-img-wrap{max-width:920px;margin:0 auto;padding:0 22px 50px}
.hero-img-wrap img{width:100%;height:auto;border-radius:10px;border:1px solid var(--linea);box-shadow:0 30px 70px rgba(0,0,0,.55)}
.hero-img-cap{text-align:center;font-family:'Work Sans',sans-serif;font-size:.72rem;color:var(--cenizad);letter-spacing:.05em;margin-top:12px;text-transform:uppercase}

/* HERO */
.hero{padding:64px 22px 0;text-align:center;max-width:820px;margin:0 auto}
.hero h1{font-size:clamp(1.85rem,5vw,3.1rem);line-height:1.18;margin-bottom:18px}
.hero .lead{color:var(--ceniza);opacity:.85;max-width:56ch;margin:0 auto 30px;font-size:1.06rem}
.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:40px}
.btn{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.85rem;letter-spacing:.02em;padding:13px 24px;border-radius:6px;display:inline-block;transition:transform .12s,box-shadow .12s;box-shadow:3px 3px 0 rgba(0,0,0,.3)}
.btn:hover{transform:translate(-1px,-1px)}
.btn-primary{background:var(--vela);color:var(--noche)}
.card a.btn-primary,.card-product a.btn-primary{color:var(--noche)} /* keep button label visible inside cards */
.btn-outline{background:transparent;color:var(--ceniza);border:1.5px solid var(--cenizad)}

.stat-strip{display:flex;max-width:820px;margin:0 auto;border-top:1px solid var(--linea);border-bottom:1px solid var(--linea)}
.stat{flex:1;padding:20px 10px;text-align:center;border-right:1px solid var(--linea)}
.stat:last-child{border-right:none}
.stat-val{font-family:'Cormorant Garamond',serif;font-weight:600;font-style:italic;font-size:1.8rem;color:var(--vela)}
.stat-lbl{font-family:'Work Sans',sans-serif;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--cenizad);margin-top:4px}

/* SECTIONS */
section{padding:56px 22px;border-top:1px solid var(--linea)}
.section-head{text-align:center;max-width:600px;margin:0 auto 34px}
.section-head p{color:var(--cenizad);font-size:.98rem;margin-top:10px}
.section-head h2{font-size:1.9rem;font-style:italic}

/* CARD GRID */
.card-grid{max-width:900px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.card{background:var(--panel);border:1px solid var(--linea);border-radius:8px;padding:22px 20px;transition:transform .15s,border-color .15s}
.card:hover{transform:translateY(-3px);border-color:var(--velad)}
.card .swatch{width:24px;height:24px;border-radius:50%;margin-bottom:12px;border:1px solid rgba(255,255,255,.15)}
.card h3{font-size:1.1rem;margin-bottom:7px}
.card p{color:var(--cenizad);font-size:.9rem;margin-bottom:12px}
.card a{font-family:'Work Sans',sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.04em;color:var(--vela);text-transform:uppercase}

/* COVER CARDS (color grid using guide covers) */
.card-cover{background:var(--panel);border:1px solid var(--linea);border-radius:8px;overflow:hidden;transition:transform .15s,border-color .15s;text-decoration:none;display:block}
.card-cover:hover{transform:translateY(-4px);border-color:var(--velad)}
.card-cover img{width:100%;height:auto;display:block;border-bottom:1px solid var(--linea)}
.card-cover .cc-body{padding:16px 18px 18px}
.card-cover h3{font-size:1.05rem;margin-bottom:5px;color:var(--ceniza)}
.card-cover p{color:var(--cenizad);font-size:.85rem;margin-bottom:0}

/* GOLD DECORATIVE DIVIDER */
.divider-gold{display:flex;align-items:center;justify-content:center;gap:14px;max-width:420px;margin:38px auto;color:var(--vela);opacity:.75;font-size:.9rem;letter-spacing:.15em}
.divider-gold::before,.divider-gold::after{content:"";flex:1;height:1px;background:linear-gradient(to var(--dir,right),transparent,var(--vela),transparent)}

/* FACT BOX (web equivalent of the PDF '¿Sabías que?' box) */
.fact-box{max-width:640px;margin:26px auto;background:var(--panel2,var(--panel));border:1px solid var(--vela);border-radius:8px;padding:18px 22px}
.fact-box .fb-label{font-family:'Work Sans',sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--vela);margin-bottom:6px}
.fact-box p{color:var(--ceniza);font-size:.92rem;font-style:italic;margin:0}

.prayer-text{max-width:600px;margin:26px auto;padding:24px 28px;border-left:2px solid var(--vela);background:var(--panel)}
.prayer-text p{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--vela);font-size:1.08rem;line-height:1.85;text-align:center;margin:0}

/* BUNDLE FAN (7 covers + bundle cover on tienda) */
.bundle-fan{max-width:900px;margin:0 auto 30px;text-align:center}
.bundle-fan .fan-row{display:flex;justify-content:center;flex-wrap:wrap;margin-bottom:20px}
.bundle-fan .fan-row img{width:88px;border-radius:5px;border:1.5px solid var(--linea);box-shadow:0 8px 20px rgba(0,0,0,.4);margin:0 -14px;transition:transform .15s,z-index 0s;position:relative}
.bundle-fan .fan-row img:hover{transform:translateY(-10px) scale(1.08);z-index:5}

/* MOBILE STICKY TAB BAR */
.mobile-tab-bar{display:none}
@media(max-width:768px){
  .mobile-tab-bar{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:1000;
    background:var(--panel);border-top:1px solid var(--linea);
    padding:10px 6px;justify-content:space-around;
    box-shadow:0 -8px 24px rgba(0,0,0,.35);
  }
  .mobile-tab-bar a{
    display:flex;flex-direction:column;align-items:center;gap:2px;
    color:var(--cenizad);text-decoration:none;font-size:.72rem;
    font-family:'Work Sans',sans-serif;flex:1;text-align:center;
  }
  .mobile-tab-bar a.mtb-highlight{color:var(--vela);font-weight:700}
  body{padding-bottom:112px}

  /* MOBILE DENSITY REBUILD (v6.3) -- CNBC/People-style compactness.
     Scoped entirely to this media query; desktop is untouched. */

  /* Tighter module transitions: 56px section padding -> ~16-28px range */
  section{padding:22px 18px;border-top:1px solid var(--linea)}
  .divider-gold{padding:6px 0 !important;font-size:.85rem}

  /* Shorter hero */
  .hero{padding:20px 18px 0}
  .hero h1{margin-bottom:10px}
  .hero .lead{margin-bottom:18px;font-size:.96rem}

  /* Condensed single-line stat strip (was 4 padded blocks) */
  .stat-strip{display:block;white-space:nowrap;overflow-x:auto;padding:10px 18px;border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);scrollbar-width:none}
  .stat-strip::-webkit-scrollbar{display:none}
  .stat-strip .stat{display:inline-flex;align-items:baseline;gap:5px;padding:0 14px 0 0;border-right:none;text-align:left}
  .stat-strip .stat-val{font-size:1.05rem}
  .stat-strip .stat-lbl{margin-top:0;font-size:.62rem}

  /* Compact "SECTION + VER TODO" header, single line */
  .section-head{margin-bottom:10px}
  .section-head.compact{display:flex;align-items:baseline;justify-content:space-between;gap:10px;text-align:left}
  .section-head.compact .eyebrow{display:none}
  .section-head.compact h2{font-size:1.15rem;margin:0}
  .section-head.compact .ver-todo{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.74rem;color:var(--vela);white-space:nowrap;flex-shrink:0}

  /* Tighter carousel edge padding so the next card's peek is closer */
  .color-carousel{padding:4px 18px 10px}
  .color-carousel-wrap{padding:10px 0 4px}

  /* Persistent horizontal category nav (mobile only, every page) */
  .mobile-catnav-wrap{position:relative;background:var(--panel);border-bottom:1px solid var(--linea)}
  .mobile-catnav{display:flex;overflow-x:auto;scrollbar-width:none}
  .mobile-catnav::-webkit-scrollbar{display:none}
  .mobile-catnav a{font-family:'Work Sans',sans-serif;font-weight:600;font-size:.72rem;color:var(--cenizad);padding:11px 13px;white-space:nowrap;border-bottom:2px solid transparent;flex:0 0 auto}
  .mobile-catnav a.active{color:var(--vela);border-color:var(--vela)}
  .mobile-catnav-fade{position:absolute;top:0;right:0;bottom:0;width:34px;background:linear-gradient(to right, transparent, var(--panel) 82%);pointer-events:none}
}

/* Hide the mobile category nav on desktop -- never shown above 768px */
.mobile-catnav-wrap{display:none}
@media(max-width:768px){.mobile-catnav-wrap{display:block}}


.btn-block-primary{display:block;text-align:center;font-family:'Work Sans',sans-serif;font-weight:700;font-size:1rem;background:var(--vela);color:#241a0c;padding:15px;border-radius:9px;max-width:640px;margin:0 auto}
.btn-text-row{display:flex;gap:22px;justify-content:center;margin-top:14px}
.btn-text-link{font-family:'Work Sans',sans-serif;font-weight:600;font-size:.85rem;color:var(--vela);border-bottom:1px solid var(--velad);padding-bottom:2px}
/* MAGAZINE HERO -- full-bleed photo, headline overlaid directly on it */
.magazine-hero{position:relative;width:100%;height:400px;overflow:hidden;margin:0 0 4px}
.magazine-hero img{width:100%;height:100%;object-fit:cover;object-position:center 15%;display:block;animation:kenburns 22s ease-in-out infinite alternate}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.06)}}
@media (prefers-reduced-motion: reduce){.magazine-hero img{animation:none}}
.magazine-hero .scrim{position:absolute;inset:0;background:linear-gradient(to bottom, rgba(23,19,15,0) 0%, rgba(23,19,15,.35) 45%, rgba(23,19,15,.96) 100%)}
.magazine-hero .overlay-text{position:absolute;left:0;right:0;bottom:0;padding:22px 22px 26px;text-align:center}
.magazine-hero .overlay-text .eyebrow{color:var(--vela);margin-bottom:8px}
.magazine-hero .overlay-text h1{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.6);font-size:1.9rem;line-height:1.18;margin-bottom:0}
.hero-ember{position:absolute;bottom:0;border-radius:50%;background:radial-gradient(circle, #ffd28a 0%, rgba(255,180,60,0) 70%);pointer-events:none;animation:ember-rise linear infinite}
@keyframes ember-rise{0%{transform:translateY(0) translateX(0);opacity:0}10%{opacity:.9}90%{opacity:.3}100%{transform:translateY(-400px) translateX(var(--drift));opacity:0}}
@media (prefers-reduced-motion: reduce){.hero-ember{animation:none;display:none}}
@media(min-width:900px){
  .magazine-hero{height:460px;max-width:900px;margin:0 auto 4px;border-radius:0 0 14px 14px}
  .magazine-hero img{object-position:center 8%}
}
@media(max-width:768px){
  .magazine-hero{height:300px}
  .magazine-hero .overlay-text h1{font-size:1.5rem}
}
/* HOMEPAGE REDESIGN COMPONENTS */
.subnav-scroll-wrap{position:relative}
.subnav-fade{position:absolute;top:0;right:0;bottom:0;width:34px;background:linear-gradient(to right, transparent, var(--noche) 82%);pointer-events:none}
.quiz-entry{margin:22px auto 0;max-width:640px;background:var(--panel);border:1px solid var(--linea);border-radius:9px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.quiz-entry p{font-family:'Work Sans',sans-serif;font-weight:600;font-size:.86rem;color:var(--ceniza)}
.quiz-entry span{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.8rem;color:var(--vela);white-space:nowrap}
.intent-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:640px;margin:0 auto}
.intent-chip{display:flex;align-items:center;gap:9px;background:var(--panel);border:1px solid var(--linea);border-radius:8px;padding:13px 14px;transition:border-color .15s}
.intent-chip:hover{border-color:var(--velad)}
.intent-chip .ic{font-size:1.1rem}
.intent-chip p{font-family:'Work Sans',sans-serif;font-weight:600;font-size:.85rem;color:var(--ceniza)}
.guide-row .imgwrap{position:relative;flex-shrink:0}
.guide-row .badge-ic{position:absolute;bottom:-4px;right:-4px;background:var(--noche);border:1.5px solid var(--vela);border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.75rem}
.essential-ic{font-size:1.25rem;width:26px;text-align:center;flex-shrink:0;display:inline-block}
.guide-rows{max-width:640px;margin:0 auto}
.guide-row{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--linea);opacity:0;transform:translateY(18px);transition:opacity .55s ease, transform .55s ease}
.guide-row.in-view{opacity:1;transform:translateY(0)}

/* "Cada quien llega por algo distinto" -- real emotional moments, no
   direct address, each tied to a real existing prayer page */
.moments-intro{padding:4px 0 2px;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.05rem;color:var(--cenizad);line-height:1.6;text-align:center}
.moments{max-width:640px;margin:0 auto}
.moment{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--linea);opacity:0;transform:translateY(14px);transition:opacity .5s ease, transform .5s ease}
.moment.in-view{opacity:1;transform:translateY(0)}
.moment .ic{font-size:1.3rem;flex-shrink:0;width:30px;text-align:center;margin-top:2px}
.moment p{font-family:'Cormorant Garamond',serif;font-size:1.08rem;line-height:1.4;color:var(--ceniza)}
.moment a.mlink{display:block;font-family:'Work Sans',sans-serif;font-size:.72rem;color:var(--vela);font-weight:700;margin-top:4px}

/* "Para cuando no sabes qué decir" -- gratitude phrase card */
.phrase-block{max-width:640px;margin:0 auto;background:var(--panel);border:1px solid var(--linea);border-radius:10px;padding:16px 18px;opacity:0;transform:translateY(18px);transition:opacity .55s ease, transform .55s ease}
.phrase-block.in-view{opacity:1;transform:translateY(0)}
.phrase-block .tag{font-size:.68rem;color:var(--vela);font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.phrase-block p.phrase{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.05rem;color:var(--ceniza);line-height:1.5;margin-bottom:6px}
.phrase-block .more{font-size:.78rem;color:var(--vela);font-weight:700;margin-top:6px;display:inline-block}
.guide-row img{width:58px;height:58px;object-fit:cover;border-radius:7px;flex-shrink:0}
.guide-row p{font-family:'Work Sans',sans-serif;font-weight:600;font-size:.92rem;line-height:1.32;color:var(--ceniza)}
.guide-row span{font-family:'Work Sans',sans-serif;font-size:.72rem;color:var(--cenizad)}
.essential-list{max-width:640px;margin:0 auto}
.essential-row{display:flex;align-items:baseline;gap:14px;padding:11px 0}
.essential-num{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:1.2rem;color:var(--velad);width:22px;flex-shrink:0}
.essential-row p{font-family:'Work Sans',sans-serif;font-weight:600;font-size:.92rem;color:var(--ceniza)}
.monthly-feature{max-width:640px;margin:0 auto;border:1.5px solid var(--vela);border-radius:11px;overflow:hidden;background:var(--panel)}
.monthly-feature img{width:100%;height:220px;object-fit:cover}
.monthly-feature-body{padding:18px 20px}
.monthly-feature-toprow{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}
.monthly-feature-tag{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.72rem;color:var(--vela);text-transform:uppercase;letter-spacing:.04em}
.monthly-feature-updated{font-family:'Work Sans',sans-serif;font-size:.72rem;color:var(--cenizad)}
.resources-block{max-width:640px;margin:0 auto;background:var(--panel);border-radius:10px;padding:6px 20px}
.resources-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--linea)}
.resources-row:last-child{border-bottom:none}
.resources-row p{font-family:'Work Sans',sans-serif;font-weight:600;font-size:.9rem;color:var(--ceniza)}
.resources-row span{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.8rem;color:var(--vela)}

.card-product{border-color:var(--vela);background:rgba(226,165,76,.06)}
.card-product .badge{display:inline-block;background:var(--vela);color:var(--noche);font-family:'Work Sans',sans-serif;font-size:.7rem;font-weight:700;padding:2px 9px;border-radius:3px;letter-spacing:.03em}
.card-product-price{font-size:1.15rem;font-weight:700;color:var(--vela);margin:10px 0}
.card-product-price span{font-size:.72rem;font-weight:400;color:var(--cenizad)}

/* ARTICLE / GUIDE BODY */
.article-body{max-width:640px;margin:0 auto;color:var(--cenizad)}
.article-body p{margin-bottom:18px}
.article-body strong{color:var(--ceniza)}
.article-body h3{color:var(--ceniza);font-size:1.25rem;margin:28px 0 10px}
.breadcrumb{max-width:640px;margin:0 auto 8px;font-family:'Work Sans',sans-serif;font-size:.74rem;color:var(--cenizad);text-transform:uppercase;letter-spacing:.05em}
.breadcrumb a{color:var(--velad)}

/* STEPS */
.steps{max-width:660px;margin:0 auto}
.step{display:flex;gap:20px;margin-bottom:28px}
.step:last-child{margin-bottom:0}
.step-num{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:1.6rem;color:var(--vela);width:38px;flex-shrink:0}
.step-body h3{font-family:'Work Sans',sans-serif;font-size:.96rem;font-weight:700;margin-bottom:6px;text-transform:none}
.step-body p{margin:0;color:var(--cenizad);font-size:.95rem}

/* FAQ */
.faq-list{max-width:660px;margin:0 auto;border-top:1px solid var(--linea)}
.faq-item{border-bottom:1px solid var(--linea)}
.faq-item summary{list-style:none;cursor:pointer;padding:19px 4px;display:flex;justify-content:space-between;gap:16px;font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:1.08rem}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item .chev{color:var(--vela);flex-shrink:0;transition:transform .2s}
.faq-item[open] .chev{transform:rotate(90deg)}
.faq-item .faq-body{padding:0 4px 20px;color:var(--cenizad);font-size:.94rem;max-width:58ch}

/* SHOP */
.shelf-cat{margin-bottom:30px}
.shelf-cat:last-child{margin-bottom:0}
.shelf-cat h3{font-family:'Work Sans',sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--vela);margin-bottom:13px}
.shelf{max-width:660px;margin:0 auto;display:flex;flex-direction:column;gap:9px}
.shelf-item{display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--panel);border:1px solid var(--linea);border-radius:7px;padding:14px 18px}
.shelf-item a{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.74rem;letter-spacing:.04em;text-decoration:none;color:var(--noche);background:var(--vela);padding:7px 15px;border-radius:5px;white-space:nowrap}
.shelf-note{max-width:660px;margin:16px auto 0;font-size:.83rem;color:var(--cenizad);text-align:center}

/* AFILIADOS (recommended-materials placeholder blocks) */
.afiliados{max-width:660px;margin:44px auto 0;background:var(--panel2);border:1px solid var(--linea);border-radius:10px;padding:24px 22px}
.afiliados .af-eyebrow{font-family:'Work Sans',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--vela);margin-bottom:6px}
.afiliados .af-lead{font-size:.88rem;color:var(--cenizad);margin-bottom:18px}
.af-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:560px){.af-grid{grid-template-columns:1fr}}
.af-item{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--linea);border-radius:7px;padding:13px 15px}
.af-item span{font-size:.9rem;color:var(--ceniza)}
.af-item a{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.7rem;letter-spacing:.04em;text-decoration:none;color:var(--noche);background:var(--vela);padding:6px 13px;border-radius:5px;white-space:nowrap}
.af-disc{font-family:'Work Sans',sans-serif;font-size:.68rem;color:var(--cenizad);margin-top:15px;letter-spacing:.02em;opacity:.85}

/* BLOG GRID (guides) */
.blog-grid{max-width:900px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.bcard{background:var(--panel);border:1px solid var(--linea);border-radius:8px;padding:22px}
.bcard .bcat{font-family:'Work Sans',sans-serif;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--velad);margin-bottom:10px}
.bcard h3{font-size:1.15rem;margin-bottom:9px}
.bcard p{color:var(--cenizad);font-size:.9rem;margin-bottom:14px}
.bcard a{font-family:'Work Sans',sans-serif;font-size:.76rem;font-weight:700;color:var(--vela);text-transform:uppercase;letter-spacing:.03em}

/* FOOTER */
footer{border-top:1px solid var(--linea);padding:50px 22px 30px}
.footer-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1fr;gap:26px}
.footer-grid h5{font-family:'Work Sans',sans-serif;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--vela);margin-bottom:14px}
.footer-grid ul{list-style:none}
.footer-grid li{margin-bottom:8px}
.footer-grid a{font-size:.86rem;color:var(--cenizad)}
.footer-grid a:hover{color:var(--vela)}
.footer-about{color:var(--cenizad);font-size:.86rem;max-width:34ch}
.footer-bottom{max-width:1080px;margin:34px auto 0;padding-top:20px;border-top:1px solid var(--linea);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-family:'Work Sans',sans-serif;font-size:.72rem;color:var(--cenizad)}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr 1fr}}

.freebie-grid .btn{display:block;width:100%;text-align:center;margin-top:16px;padding-left:12px;padding-right:12px}
