/* Tulum · blog en marca 2026 (índice /blog/, 5 artículos y 3 guías estáticas).
   Se carga DESPUÉS de tulum.css y solo añade lo propio de la lectura: página de día (body.day, hueso),
   columna de ~66 caracteres, títulos en Libre Caslon Display, énfasis <em> en Bodoni Moda cursiva,
   texto en Jost 300/400, cajas y tablas en arena (#E7E0D4) con filete oro fino, enlaces con subrayado oro.
   Tokens y fuentes: los de tulum.css (:root). Un solo oro por vista: el oro va en filetes, números romanos y rótulos. */

body.blog{--col:66ch;--wide:1200px;background:var(--bone);color:var(--carbon);font:300 18px/1.7 var(--text)}
body.blog main{display:block}

/* ---------- Enlaces de lectura: subrayado oro ---------- */
.blog :is(.post-body,.article-container,.sources-section,.breadcrumb,.blog-outlet,.blog-endnote) a:not(.cta-pri):not(.cta-sec):not(.cta-button){
  color:inherit;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1px;text-underline-offset:.24em;transition:text-decoration-thickness .25s,color .25s}
.blog :is(.post-body,.article-container,.sources-section,.breadcrumb,.blog-outlet,.blog-endnote) a:not(.cta-pri):not(.cta-sec):not(.cta-button):hover{text-decoration-thickness:2px;color:var(--gold-text-lt)}

/* ---------- Revelado suave (solo con JS; sin JS todo visible) ---------- */
html.js .blog .reveal{opacity:0;transform:translateY(14px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
html.js .blog .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html.js .blog .reveal{opacity:1;transform:none;transition:none}}

/* ---------- Portada del artículo ---------- */
.post-hero{padding:clamp(120px,17vh,190px) var(--g) clamp(36px,5vw,72px)}
.post-hero-inner{max-width:var(--wide);margin:0 auto}
.post-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:clamp(22px,3vw,34px);font:500 11px/16px var(--text);letter-spacing:.24em;text-transform:uppercase;color:var(--muted-lt)}
.post-cat{color:var(--gold-text-lt)}
.post-meta-row .dot{width:3px;height:3px;border-radius:50%;background:var(--gold);flex:none}
.post-h1{font:400 clamp(38px,6vw,92px)/1.04 var(--display);letter-spacing:-.018em;font-variation-settings:"opsz" 96;max-width:19ch;text-wrap:balance;margin:0}
.post-h1 em{display:block;margin-top:.08em;font-family:var(--italic);font-style:italic;font-weight:400;font-variation-settings:"opsz" 96;padding-right:.04em;padding-left:.06em;margin-left:-.06em}
.post-desc{margin-top:clamp(26px,3.4vw,40px);max-width:46ch;font:300 clamp(18px,1.6vw,21px)/1.6 var(--text);color:#3b3833}
.post-hero-inner::after{content:"";display:block;width:64px;height:1px;background:var(--gold);margin-top:clamp(36px,5vw,64px)}

/* ---------- Cuerpo del artículo ---------- */
.post-body{max-width:calc(var(--wide) + 2 * var(--g));margin:0 auto;padding:clamp(36px,5vw,64px) var(--g) clamp(48px,7vw,96px)}
.post-section{margin:0 0 clamp(44px,6vw,80px)}
.post-section>*{max-width:var(--col)}
.post-h2{position:relative;font:400 clamp(28px,3.5vw,46px)/1.12 var(--display);letter-spacing:-.012em;font-variation-settings:"opsz" 72;text-wrap:balance;margin:0 0 clamp(18px,2vw,26px);padding-top:26px;max-width:26ch}
.post-h2::before{content:"";position:absolute;left:0;top:0;width:32px;height:1px;background:var(--gold)}
.post-section p{font:300 18px/1.75 var(--text);color:#2a2724;margin:0 0 1.15em}
.post-section p:last-child{margin-bottom:0}
.post-section strong{font-weight:500;color:var(--carbon)}
.blog em{font-family:var(--italic);font-style:italic;font-variation-settings:"opsz" 24}
.post-section p em{font-size:1.04em}
.post-section :is(ul,ol),.article-container :is(ul,ol){margin:0 0 1.3em;padding-left:1.4em}
.post-section li,.article-container li{margin-bottom:.55em;padding-left:.3em}
.post-section li::marker,.article-container li::marker{color:var(--gold-text-lt)}

/* Tablas: arena + filete oro; se ensanchan más allá de la columna de texto y, si no caben, corren dentro de su marco */
.post-table-wrap{max-width:min(100%,980px)!important;overflow-x:auto;margin:clamp(28px,3.4vw,44px) 0;-webkit-overflow-scrolling:touch;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}
.post-table,.comparison-table{width:100%;min-width:600px;border-collapse:collapse;font:300 15px/1.55 var(--text);color:#2a2724}
.post-table th,.comparison-table th{background:var(--sand);text-align:left;font:500 11px/16px var(--text);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text-lt);padding:16px 18px;border-bottom:1px solid var(--gold);vertical-align:bottom}
.post-table td,.comparison-table td{padding:15px 18px;border-bottom:1px solid var(--line-lt);vertical-align:top}
.post-table tr:last-child td,.comparison-table tr:last-child td{border-bottom:0}
.post-table td:first-child,.comparison-table td:first-child{font-weight:400;color:var(--carbon)}
.comparison-table td strong{font-weight:500}
.comparison-table td.highlight{color:var(--gold-text-lt);font-weight:500}
.comparison-table td.warning{color:var(--carbon);font-weight:500}

/* Cita destacada */
.pull-quote-block{max-width:min(100%,900px)!important;margin:clamp(48px,7vw,96px) 0;padding:clamp(32px,4.4vw,56px) clamp(24px,4vw,56px);background:var(--sand);border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}
.pull-quote-block p{font:italic 400 clamp(23px,2.5vw,34px)/1.3 var(--italic)!important;font-variation-settings:"opsz" 48;letter-spacing:-.005em;color:var(--carbon)!important;margin:0!important;text-wrap:balance;max-width:none}

/* Fuentes */
.sources-section{max-width:calc(var(--wide) + 2 * var(--g));margin:0 auto;padding:0 var(--g) clamp(56px,8vw,112px)}
.sources-section>*{max-width:var(--col)}
.sources-section h3{font:500 11px/16px var(--text);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-text-lt);padding-top:26px;border-top:1px solid var(--line-lt);margin:0 0 20px}
.sources{margin:0;padding-left:1.4em;font:300 15px/1.65 var(--text);color:#3b3833}
.sources li{margin-bottom:10px;padding-left:.3em}
.sources li::marker{color:var(--gold-text-lt);font-family:var(--italic);font-style:italic}

/* Cierre del artículo (arena) */
.post-cta{background:var(--sand);padding:clamp(72px,10vw,136px) var(--g);border-top:1px solid var(--gold)}
.post-cta-inner{max-width:var(--wide);margin:0 auto}
.post-cta h3{font:400 clamp(30px,4.2vw,58px)/1.08 var(--display);letter-spacing:-.014em;font-variation-settings:"opsz" 72;text-wrap:balance;max-width:20ch;margin:0 0 clamp(20px,2.4vw,30px)}
.post-cta h3 em{font-family:var(--italic);font-style:italic;font-weight:400;font-variation-settings:"opsz" 72;padding-right:.04em}
.post-cta p{font:300 18px/1.65 var(--text);color:#2a2724;max-width:52ch;margin:0}
.post-cta-btns{display:flex;flex-wrap:wrap;gap:8px 44px;margin-top:clamp(28px,3.4vw,44px)}
.cta-pri,.cta-sec,.cta-button{position:relative;display:inline-flex;align-items:center;gap:18px;min-height:44px;font:500 12px/1 var(--text);letter-spacing:.26em;text-transform:uppercase;text-decoration:none;color:var(--carbon);padding:10px 0 14px;border-bottom:1px solid var(--gold);transition:gap .5s var(--ease),color .3s}
.cta-pri::after,.cta-button::after{content:"";display:block;width:28px;height:1px;background:currentColor}
.cta-sec{border-bottom-color:var(--line-lt)}
.cta-pri:hover,.cta-button:hover{gap:28px;color:var(--gold-text-lt)}
.cta-sec:hover{color:var(--gold-text-lt);border-bottom-color:var(--gold)}
.cta-pri:active,.cta-button:active{transform:translateY(1px)}
.blog :is(.cta-pri,.cta-sec,.cta-button):focus-visible{outline:2px solid var(--gold-text-lt);outline-offset:4px}

/* ---------- Índice del blog (lista editorial como el Journal del perfil) ---------- */
.blog-hero{padding:clamp(120px,17vh,190px) var(--g) clamp(28px,4vw,56px)}
.blog-hero-inner{max-width:var(--wide);margin:0 auto}
.blog-hero .label{color:var(--gold-text-lt);margin-bottom:clamp(22px,3vw,34px)}
.blog-hero h1{font:400 clamp(42px,7vw,112px)/1.02 var(--display);letter-spacing:-.02em;font-variation-settings:"opsz" 96;max-width:14ch;text-wrap:balance}
.blog-hero h1 em{font-family:var(--italic);font-style:italic;font-weight:400;font-variation-settings:"opsz" 96;padding-right:.04em}
.blog-hero p:not(.label){margin-top:clamp(26px,3.4vw,40px);max-width:50ch;font:300 clamp(18px,1.6vw,21px)/1.6 var(--text);color:#3b3833}
.blog-hero-inner::after{content:"";display:block;width:64px;height:1px;background:var(--gold);margin-top:clamp(36px,5vw,64px)}
.blog-grid{max-width:calc(var(--wide) + 2 * var(--g));margin:0 auto;padding:clamp(24px,3vw,40px) var(--g) clamp(72px,10vw,136px)}
.blog-card{display:grid;grid-template-columns:minmax(150px,210px) minmax(0,1fr);column-gap:clamp(24px,4vw,72px);row-gap:12px;align-items:baseline;padding:clamp(28px,3.4vw,44px) 0;border-top:1px solid var(--line-lt);text-decoration:none;color:var(--carbon);transition:padding .6s var(--ease)}
.blog-card:last-child{border-bottom:1px solid var(--line-lt)}
.card-meta{grid-column:1;grid-row:1/span 3;display:flex;flex-direction:column;gap:8px}
.card-cat{font:500 11px/16px var(--text);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-text-lt)}
.card-date{font:300 13px/20px var(--text);color:var(--muted-lt)}
.card-h{grid-column:2;font:400 clamp(24px,2.9vw,42px)/1.14 var(--display);letter-spacing:-.012em;font-variation-settings:"opsz" 72;text-wrap:balance;margin:0;transition:color .4s}
.card-desc{grid-column:2;font:300 16px/1.65 var(--text);color:#3b3833;max-width:60ch;margin:0}
.card-read{grid-column:2;justify-self:start;margin-top:8px;font:500 11px/1 var(--text);letter-spacing:.24em;text-transform:uppercase;padding:14px 0 12px;border-bottom:1px solid var(--gold)}
.blog-card:hover{padding-left:14px}
.blog-card:hover .card-h{color:var(--gold-text-lt)}
.blog-card:focus-visible{outline:2px solid var(--gold-text-lt);outline-offset:4px}
@media(max-width:760px){
  .blog-card{grid-template-columns:1fr}
  .card-meta{grid-row:auto;flex-direction:row;flex-wrap:wrap;gap:6px 16px;align-items:baseline}
  .card-h,.card-desc,.card-read{grid-column:1}
  .blog-card:hover{padding-left:0}
}

/* ---------- Guías estáticas (blog-*.html) ---------- */
.breadcrumb{max-width:calc(var(--wide) + 2 * var(--g));margin:0 auto;padding:clamp(112px,15vh,150px) var(--g) 0;font:500 11px/1.9 var(--text);letter-spacing:.2em;text-transform:uppercase;color:var(--muted-lt)}
.article-container{max-width:calc(var(--wide) + 2 * var(--g));margin:0 auto;padding:clamp(28px,4vw,48px) var(--g) clamp(48px,7vw,96px)}
.article-container>*{max-width:var(--col)}
.article-meta{font:500 11px/16px var(--text);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-text-lt);margin-bottom:clamp(20px,2.6vw,30px)}
.article-title{font:400 clamp(36px,5.6vw,84px)/1.05 var(--display);letter-spacing:-.018em;font-variation-settings:"opsz" 96;text-wrap:balance;max-width:20ch;margin:0 0 clamp(26px,3.4vw,40px)}
.article-subtitle{font:300 clamp(18px,1.6vw,21px)/1.6 var(--text)!important;color:#3b3833!important;max-width:52ch!important;border-left:1px solid var(--gold);padding-left:clamp(18px,2vw,28px);margin:0 0 clamp(36px,5vw,64px)!important}
.article-container h2{position:relative;font:400 clamp(28px,3.5vw,46px)/1.12 var(--display);letter-spacing:-.012em;font-variation-settings:"opsz" 72;text-wrap:balance;margin:clamp(48px,6vw,80px) 0 clamp(18px,2vw,26px);padding-top:26px;max-width:26ch}
.article-container h2::before{content:"";position:absolute;left:0;top:0;width:32px;height:1px;background:var(--gold)}
.article-container h3{font:400 clamp(22px,2vw,28px)/1.2 var(--display);letter-spacing:-.005em;font-variation-settings:"opsz" 48;margin:1.8em 0 .5em}
.article-container p{font:300 18px/1.75 var(--text);color:#2a2724;margin:0 0 1.15em}
.article-container p strong,.article-container li strong,.article-container td strong{font-weight:500;color:var(--carbon)}
.article-container>.comparison-table,.article-container .post-table-wrap{max-width:min(100%,980px)}
.callout,.savings-box,.key-takeaway,.cta-box{max-width:min(100%,780px)!important;background:var(--sand);border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:clamp(26px,3.4vw,44px) clamp(22px,3.4vw,44px);margin:clamp(32px,4vw,52px) 0}
.callout strong{display:block;font:500 11px/16px var(--text);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-text-lt);margin-bottom:12px}
.callout p:last-child,.savings-box p:last-child,.key-takeaway p:last-child,.cta-box p:last-child{margin-bottom:0}
.savings-box{text-align:left}
.savings-box .big-number{display:block;font:400 clamp(44px,6vw,84px)/1 var(--display);letter-spacing:-.02em;color:var(--gold-text-lt);font-feature-settings:"lnum","tnum";margin:.12em 0 .3em}
.key-takeaway h3{margin-top:0;font-size:clamp(26px,2.6vw,36px)}
.key-takeaway ul{margin-bottom:1.15em}
.cta-box h3{margin-top:0;font-size:clamp(26px,3vw,40px);max-width:22ch}
.cta-box p{max-width:52ch}
.cta-button{margin-top:clamp(12px,1.6vw,20px)}
.faq-section{margin:clamp(48px,6vw,80px) 0}
.faq-item{padding:clamp(22px,2.6vw,30px) 0;border-bottom:1px solid var(--line-lt)}
.faq-item:first-of-type{border-top:1px solid var(--line-lt)}
.faq-item h3{margin:0 0 .5em;font-size:clamp(20px,1.8vw,25px)}
.faq-item p{margin:0;font-size:17px;color:#3b3833}
.process-list{list-style:none!important;padding-left:0!important;counter-reset:proc}
.process-list li{counter-increment:proc;position:relative;padding:20px 0 20px 3.2em!important;margin:0!important;border-bottom:1px solid var(--line-lt)}
.process-list li:first-child{border-top:1px solid var(--line-lt)}
.process-list li::before{content:counter(proc);position:absolute;left:0;top:14px;font:italic 400 34px/1 var(--italic);color:var(--gold-text-lt)}
/* Pasos (guía de vestidos de baño): OJO, tulum.css ya define .step para el recorrido del perfil; aquí se anula */
.blog .step{flex:none;display:flex;flex-direction:row;align-items:flex-start;gap:clamp(16px,2.2vw,28px);grid-template-rows:none;padding:24px 0;margin:0;border-bottom:1px solid var(--line-lt)}
.blog .step:first-of-type{border-top:1px solid var(--line-lt)}
.step-number{flex:none;min-width:1.5em;font:italic 400 40px/1 var(--italic);color:var(--gold-text-lt);text-align:left}
.step-content{min-width:0}
.step-content h3{margin:0 0 .35em!important;font-size:clamp(21px,1.9vw,26px)}
.step-content p{margin:0!important;max-width:60ch;font-size:17px!important}

/* Salida a contacto y nota final de las guías (antes con estilos en línea) */
.blog-endwrap{max-width:calc(var(--wide) + 2 * var(--g));margin:0 auto;padding:0 var(--g) clamp(56px,8vw,112px)}
.blog-outlet{max-width:min(100%,780px);background:var(--sand);border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:clamp(26px,3.4vw,44px) clamp(22px,3.4vw,44px)}
.blog-outlet .o-k{margin:0 0 14px;font:500 11px/16px var(--text);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-text-lt)}
.blog-outlet .o-h{margin:0 0 14px;font:400 clamp(24px,2.6vw,34px)/1.2 var(--display);font-variation-settings:"opsz" 48;color:var(--carbon);text-wrap:balance}
.blog-outlet .o-p{margin:0 0 24px;font:300 17px/1.65 var(--text);color:#3b3833}
.blog-outlet .o-links{display:flex;flex-wrap:wrap;gap:6px 36px}
.blog-outlet .o-links a{display:inline-flex;align-items:center;min-height:44px;font:500 12px/1 var(--text);letter-spacing:.24em;text-transform:uppercase;text-decoration:none!important;color:var(--carbon);border-bottom:1px solid var(--gold);padding:10px 0 12px}
.blog-outlet .o-links a:hover{color:var(--gold-text-lt)}
.blog-endnote{margin-top:clamp(32px,4vw,48px);max-width:var(--col)}
.blog-endnote p{margin:0 0 6px;font:300 13px/1.7 var(--text);color:var(--muted-lt)}

/* ---------- Formulario de contacto (carbón, como el del lookbook) ---------- */
.contact-section{background:var(--carbon);color:var(--bone);padding:clamp(80px,11vw,160px) var(--g)}
.contact-section .container{max-width:var(--wide);margin:0 auto}
.contact-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(40px,7vw,120px);align-items:start}
.contact-section .label{color:var(--gold-text)}
.contact-info .display-lg{font:400 clamp(36px,4.6vw,68px)/1.06 var(--display);letter-spacing:-.016em;font-variation-settings:"opsz" 96;color:var(--bone);margin:22px 0 clamp(20px,2.4vw,30px);text-wrap:balance}
.contact-info .body-text{font:300 17px/1.65 var(--text);color:rgba(242,239,233,.78);max-width:36ch;margin:0}
.contact-details{margin-top:clamp(28px,3.4vw,44px);display:grid;gap:22px;border-top:1px solid var(--line);padding-top:26px}
.contact-detail-item .label{display:block;margin-bottom:6px;color:var(--muted)}
.small-detail{font:400 16px/1.5 var(--text);color:var(--bone);margin:0}
.small-detail a{text-decoration:underline!important;text-decoration-color:var(--gold)!important;text-underline-offset:.24em;color:var(--bone)!important}
.contact-form h3{font:400 clamp(26px,2.6vw,36px)/1.15 var(--display);font-variation-settings:"opsz" 72;color:var(--bone);margin:0 0 6px}
.contact-form .form-subtitle{font:400 15px/1.6 var(--text);color:rgba(242,239,233,.7);margin:0 0 clamp(26px,3vw,36px)}
.form-group{margin-bottom:20px}
.form-label{display:block;margin-bottom:8px;font:500 11px/1.3 var(--text);letter-spacing:.12em;text-transform:uppercase;color:rgba(242,239,233,.72)}
.form-label span{text-transform:none;letter-spacing:0}
.form-label .opt{opacity:.7;font-weight:400}
.form-input,.form-select{width:100%;background:rgba(242,239,233,.07);border:1px solid rgba(242,239,233,.22);border-radius:6px;padding:12px 14px;color:var(--bone);font:400 15px/1.3 var(--text);min-height:46px;color-scheme:dark;outline:none;transition:border-color .3s,background .3s}
.form-select{appearance:auto}
.form-select option{color:#131211;background:#F2EFE9}
.form-input::placeholder{color:#A8A195;opacity:1}
.form-input:hover,.form-select:hover{border-color:rgba(242,239,233,.4)}
.contact-form :is(.form-input,.form-select,.form-submit):focus-visible{outline:2px solid #E0BD72;outline-offset:2px}
#tf-moq{margin-bottom:20px;padding:18px 20px;background:rgba(201,160,78,.1);border-left:1px solid var(--gold);font:300 14px/1.65 var(--text);color:var(--bone)}
#tf-moq strong{display:block;margin-bottom:6px;font-weight:500}
.form-submit{width:100%;min-height:52px;padding:16px;background:#C9A04E;color:#131211;font:600 13px/1 var(--text);letter-spacing:.12em;text-transform:uppercase;border:none;border-radius:6px;cursor:pointer;transition:filter .3s}
.form-submit:hover{filter:brightness(1.08)}
.form-submit:disabled{cursor:default;opacity:.85}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}}
@media(max-width:760px){.contact-section :is(.form-input,.form-select){font-size:16px}}

/* ---------- Pie: en día ya se aclara con las reglas DR-04 de tulum.css; aquí solo el respiro ---------- */
body.blog .foot{margin-top:0}

/* ---------- Móvil 390: nada desborda ---------- */
@media(max-width:600px){
  .post-h1,.article-title,.blog-hero h1{max-width:none}
  .post-section p,.article-container p{font-size:17px}
  .post-table,.comparison-table{font-size:14px}
  .post-table th,.post-table td,.comparison-table th,.comparison-table td{padding:12px 14px}
  .breadcrumb{letter-spacing:.14em}
  .step-number{font-size:30px;min-width:1em}
  .process-list li{padding-left:2.6em!important}
}
.blog :is(h1,h2,h3,p,li,td,th,a){overflow-wrap:break-word}

/* foto de portada del artículo (blog-motion-2026.py): mismo marco, parallax, destape y toque de Midas que el perfil */
.post-ph{max-width:1200px;margin:clamp(8px,2vh,24px) auto clamp(40px,7vh,88px);padding:0 var(--g)}
.post-ph .ph{aspect-ratio:3/2;background:var(--sand)}
.post-ph .ph img{width:100%;height:100%;object-fit:cover;display:block}
.post-ph .ph::after{content:"";position:absolute;inset:clamp(10px,1.4vw,18px);z-index:2;pointer-events:none;border:1px solid rgba(201,160,78,.55)}
.post-ph.tall{max-width:760px}.post-ph.tall .ph{aspect-ratio:4/5;max-height:82svh;margin:0 auto}
.post-ph.wide .ph{aspect-ratio:4/1}
@media(max-width:760px){.post-ph .ph{aspect-ratio:4/5}.post-ph.wide .ph{aspect-ratio:16/9}}

/* ── ORO DEL PERFIL EN EL BLOG (28-sep, Jose: "no veo el oro, efectos 21st.dev") ── */
/* cursiva del título en oro vivo (destello al entrar + sigue el mouse; receta .day .gw de tulum.css) */
.post-h1 .gw,.blog-hero h1 .gw{display:inline-block;padding-bottom:.1em}
/* cita destacada en oro vivo */
.pull-quote-block p.gw{color:transparent!important;display:block}
/* cifras grandes: odómetro que rueda y queda en oro vivo */
.big-number[data-odo]{color:var(--gold-text-lt)}
.big-number[data-odo] .dg{display:inline-block;height:1em;overflow:hidden;vertical-align:top}
.big-number[data-odo] .col{display:flex;flex-direction:column}
.big-number[data-odo].done{
  --lx:-30%;
  background-image:radial-gradient(ellipse 24% 75% at var(--lx) 38%,rgba(255,246,214,.9),rgba(255,230,160,.35) 38%,rgba(255,230,160,0) 72%),url(img/grain.png),linear-gradient(100deg,#6B4A12 0%,#A47A2C 28%,#D9B25E 46%,#8C6420 64%,#5E4010 100%);
  background-size:100% 100%,160px 160px,100% 100%;background-blend-mode:screen,soft-light,normal;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 .5px rgba(255,240,200,.9)) drop-shadow(0 1px 0 rgba(70,46,10,.35))}
/* subtítulos: el filete dorado se dibuja al llegar */
.post-h2::before{width:72px;transform:scaleX(0);transform-origin:left;transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.article-container h2[data-line]{position:relative;padding-top:24px}
.article-container h2[data-line]::before{content:"";position:absolute;left:0;top:0;width:72px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
[data-line].is-in::before,html:not(.js) [data-line]::before{transform:scaleX(1)}
/* capitular dorada en Bodoni cursiva */
.post-body>.post-section:first-of-type>p:first-of-type::first-letter{float:left;font:400 4.2em/.82 var(--display);color:var(--gold-text-lt);padding:.06em .1em 0 0}
/* pasos numerados de la guía: número en oro vivo */
.step-number{background:linear-gradient(100deg,#6B4A12,#A47A2C 30%,#D9B25E 48%,#8C6420 66%,#5E4010);-webkit-background-clip:text;background-clip:text;color:transparent}
/* tarjetas del índice: luz dorada que sigue el cursor (ref. 21st.dev Spotlight Card) + filete que se enciende */
.blog-card[data-spot]{position:relative;isolation:isolate}
.blog-card[data-spot]::before{content:"";position:absolute;inset:0 -24px;z-index:-1;pointer-events:none;opacity:0;transition:opacity .6s cubic-bezier(.16,1,.3,1);
  background:radial-gradient(520px circle at var(--sx,50%) var(--sy,50%),rgba(201,160,78,.30),rgba(201,160,78,.09) 40%,transparent 70%)}
.blog-card[data-spot]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.16,1,.3,1)}
.blog-card[data-spot]:hover::before{opacity:1}.blog-card[data-spot]:hover::after{transform:scaleX(1)}
@media (prefers-reduced-motion:reduce){.post-h2::before,.article-container h2[data-line]::before{transform:none;transition:none}}
