/* ==========================================================
   Producto digital · ficha única para Recetas + Entrenamiento
   La clasificación cambia el contenido; la UI es compartida.
   ========================================================== */
body.single-product{background:#050505!important}
.fs-digital-product{--fs-digital-panel:#0a0a0a;--fs-digital-line:#242424;min-height:100vh}

/* Hero ----------------------------------------------------- */
.fs-digital-hero{position:relative;padding:46px 0 58px;background:radial-gradient(circle at 76% 24%,rgba(204,255,0,.075),transparent 24%),radial-gradient(circle at 54% 78%,rgba(255,255,255,.022),transparent 28%),linear-gradient(180deg,#050505 0%,#070707 100%);border-bottom:1px solid var(--fs-sales-line)}
.fs-digital-breadcrumb{display:flex;align-items:center;gap:10px;min-height:32px;margin-bottom:56px;color:#63635e;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.fs-digital-breadcrumb a{color:#a4a49d!important;transition:color .2s ease}.fs-digital-breadcrumb a:hover{color:var(--fs-sales-accent)!important}
.fs-digital-breadcrumb span:last-child{max-width:52ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fs-digital-hero__grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(390px,.72fr);gap:clamp(60px,7vw,110px);align-items:center;min-height:610px}
.fs-digital-hero__copy{position:relative;z-index:2}
.fs-digital-eyebrow{margin-bottom:28px!important}
.fs-digital-title{max-width:830px;margin:0!important;color:var(--fs-sales-text)!important;font-size:clamp(62px,6.6vw,106px)!important;font-weight:760!important;line-height:.91!important;letter-spacing:-.064em!important;text-wrap:balance}
.fs-digital-lead{max-width:690px;margin:30px 0 0!important;color:#a5a59f!important;font-size:clamp(17px,1.55vw,21px)!important;line-height:1.65!important}

.fs-digital-buy{display:grid;grid-template-columns:minmax(150px,205px) minmax(280px,370px);gap:clamp(34px,4vw,58px);align-items:end;max-width:720px;margin-top:48px;padding-top:28px;border-top:1px solid var(--fs-sales-line)}
.fs-digital-buy__price>span{display:block;margin-bottom:8px;color:#72726c;font-size:9px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}
.fs-digital-buy__price>strong{display:block;color:#f5f5f1;font-size:clamp(48px,4.3vw,66px);font-weight:880;line-height:.9;letter-spacing:-.06em;white-space:nowrap}
.fs-digital-buy__price .amount,.fs-digital-buy__price .woocommerce-Price-currencySymbol{color:inherit!important;font-size:inherit!important}.fs-digital-buy__price del{opacity:.38;font-size:.55em;margin-right:7px}.fs-digital-buy__price ins{text-decoration:none;background:none}
.fs-digital-buy__action form.cart{margin:0!important}
.fs-digital-buy__action .single_add_to_cart_button{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%;min-height:60px!important;margin:0!important;padding:0 21px!important;border:1px solid rgba(204,255,0,.82)!important;border-radius:5px!important;background:transparent!important;color:#f5f5f1!important;font-size:14px!important;font-weight:800!important;text-transform:none!important;box-shadow:none!important;transition:background .2s ease,color .2s ease,transform .2s ease!important}
.fs-digital-buy__action .single_add_to_cart_button::after{content:"→";margin-left:18px;color:var(--fs-sales-accent);font-size:20px;font-weight:500;transition:transform .2s ease,color .2s ease}
.fs-digital-buy__action .single_add_to_cart_button:hover{background:var(--fs-sales-accent)!important;color:#050505!important;transform:translateY(-1px)}
.fs-digital-buy__action .single_add_to_cart_button:hover::after{color:#050505;transform:translateX(4px)}
.fs-digital-buy__action .single_add_to_cart_button:focus-visible{outline:2px solid var(--fs-sales-accent)!important;outline-offset:4px}
.fs-digital-buy__action p{margin:10px 0 0!important;color:#6f6f69!important;font-size:10px!important;line-height:1.5!important}

.fs-digital-cover-wrap{position:relative;display:flex;justify-content:flex-end;min-width:0;padding:14px 0 28px 58px}
.fs-digital-cover-wrap::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(transparent,#2c2c29 12%,#2c2c29 88%,transparent)}
.fs-digital-cover-wrap__word{position:absolute;left:27px;top:16px;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.11);font-size:clamp(68px,6.5vw,108px);font-weight:880;line-height:.76;letter-spacing:-.075em;transform:rotate(90deg);transform-origin:left top;white-space:nowrap;pointer-events:none}
.fs-digital-cover{position:relative;width:min(100%,510px);margin:0;aspect-ratio:4/5;overflow:hidden;border:1px solid #292925;background:#0c0c0c;box-shadow:0 32px 80px rgba(0,0,0,.28)}
.fs-digital-cover--image::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.035);pointer-events:none}
.fs-digital-cover__image{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.9) contrast(1.035)}
.fs-digital-cover__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.01) 45%,rgba(5,5,5,.84) 100%)}
.fs-digital-cover--fallback{display:flex;align-items:flex-end;justify-content:flex-end;padding:34px;background:radial-gradient(circle at 72% 26%,rgba(204,255,0,.13),transparent 27%),repeating-linear-gradient(135deg,transparent 0 42px,rgba(255,255,255,.018) 42px 43px),#0b0b0b}
.fs-digital-cover__fallback-word{position:absolute;left:-8px;top:34px;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.11);font-size:82px;font-weight:900;line-height:.8;letter-spacing:-.08em;transform:rotate(90deg);transform-origin:left top}
.fs-digital-cover__fallback-icon{display:grid;place-items:center;width:100px;height:100px;color:rgba(204,255,0,.85);font-size:62px}.fs-digital-cover__fallback-icon svg{width:1em;height:1em}
.fs-digital-cover__meta{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:26px 28px;color:#fff}
.fs-digital-cover__meta span{color:var(--fs-sales-accent);font-size:52px;font-weight:850;line-height:.75;letter-spacing:-.07em}
.fs-digital-cover__meta strong{max-width:150px;color:#d7d7d1;font-size:9px;font-weight:850;line-height:1.4;letter-spacing:.12em;text-align:right;text-transform:uppercase}
.fs-digital-scroll{display:flex;align-items:center;gap:10px;margin-top:34px;color:#63635d;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.fs-digital-scroll svg{transform:rotate(90deg)}

/* Facts ---------------------------------------------------- */
.fs-digital-facts{background:#070707;border-bottom:1px solid var(--fs-sales-line)}
.fs-digital-facts__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.fs-digital-facts__grid>div{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-height:68px;padding:16px 18px;color:#8b8b84;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.fs-digital-facts__grid>div+div::before{content:"";position:absolute;left:0;top:50%;width:1px;height:25px;background:#292926;transform:translateY(-50%)}
.fs-digital-facts__grid svg{color:#696963;font-size:17px}.fs-digital-facts__grid>div:first-child svg{color:var(--fs-sales-accent)}

/* Overview ------------------------------------------------- */
.fs-digital-overview{background:#050505}
.fs-digital-overview__grid{display:grid;grid-template-columns:minmax(280px,.66fr) minmax(0,1fr);gap:clamp(70px,9vw,130px);align-items:start}
.fs-digital-overview header{position:sticky;top:104px}
.fs-digital-overview h2{max-width:520px;margin:0!important;color:#f5f5f1!important;font-size:clamp(48px,4.9vw,72px)!important;font-weight:730!important;line-height:.98!important;letter-spacing:-.055em!important}
.fs-digital-overview__body{min-width:0}
.fs-digital-richtext{max-width:760px;color:#a1a19b;font-size:16px;line-height:1.78}
.fs-digital-richtext p{margin:0 0 22px!important;color:inherit!important;font:inherit!important}.fs-digital-richtext p:last-child{margin-bottom:0!important}
.fs-digital-richtext h2,.fs-digital-richtext h3,.fs-digital-richtext h4{margin:34px 0 14px!important;color:#efefea!important;font-size:24px!important;font-weight:720!important;line-height:1.2!important;letter-spacing:-.025em!important}
.fs-digital-richtext ul,.fs-digital-richtext ol{margin:20px 0!important;padding-left:22px!important;color:#a1a19b!important}.fs-digital-richtext li{margin:8px 0!important}
.fs-digital-richtext strong{color:#deded8}
.fs-digital-specs{margin:52px 0 0;border-top:1px solid var(--fs-sales-line)}
.fs-digital-specs>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:26px;padding:19px 0;border-bottom:1px solid var(--fs-sales-line)}
.fs-digital-specs dt{color:#696963;font-size:9px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.fs-digital-specs dd{margin:0;color:#cdcdc7;font-size:14px;font-weight:650}.fs-digital-specs dd .amount{color:inherit!important}

/* Process -------------------------------------------------- */
.fs-digital-process{background:#090909!important;border-top:1px solid var(--fs-sales-line);border-bottom:1px solid var(--fs-sales-line)}
.fs-digital-process__heading h2 span{color:#777771}
.fs-digital-steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--fs-sales-line);border-bottom:1px solid var(--fs-sales-line)}
.fs-digital-steps article{position:relative;min-height:330px;padding:34px 34px 40px;transition:background .25s ease}
.fs-digital-steps article+article{border-left:1px solid var(--fs-sales-line)}.fs-digital-steps article:hover{background:#0d0d0d}
.fs-digital-steps article>span{display:block;color:#5f5f59;font-size:10px;font-weight:850;letter-spacing:.12em}
.fs-digital-step__icon{display:grid;place-items:center;width:48px;height:48px;margin:64px 0 30px;border:1px solid #30302c;color:#808079;font-size:24px;transition:border-color .2s ease,color .2s ease,transform .2s ease}.fs-digital-step__icon svg{width:1em;height:1em}.fs-digital-steps article:hover .fs-digital-step__icon{border-color:#516600;color:var(--fs-sales-accent);transform:translateY(-3px)}
.fs-digital-steps h3{margin:0 0 14px!important;color:#f0f0eb!important;font-size:clamp(24px,2vw,31px)!important;font-weight:700!important;line-height:1.08!important;letter-spacing:-.035em!important}.fs-digital-steps p{max-width:330px;margin:0!important;color:#85857f!important;font-size:13px!important;line-height:1.65!important}

/* Related -------------------------------------------------- */
.fs-digital-related{background:#050505}
.fs-digital-related__head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:54px}
.fs-digital-related__head h2{max-width:800px;margin:0!important;color:#f5f5f1!important;font-size:clamp(46px,4.8vw,70px)!important;font-weight:730!important;line-height:.98!important;letter-spacing:-.055em!important}
.fs-digital-related__head>a{display:inline-flex;align-items:center;gap:12px;padding-bottom:5px;color:#d9d9d3!important;font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.fs-digital-related__head>a svg{color:var(--fs-sales-accent);font-size:18px;transition:transform .2s ease}.fs-digital-related__head>a:hover svg{transform:translateX(4px)}
.fs-digital-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.fs-digital-card{min-width:0;background:#0a0a0a;border:1px solid #222;transition:transform .25s ease,border-color .25s ease}.fs-digital-card:hover{transform:translateY(-4px);border-color:#3b4900}
.fs-digital-card__media{position:relative;display:block;aspect-ratio:1.12/1;overflow:hidden;background:#0d0d0d;border-bottom:1px solid #222}.fs-digital-card__media>img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.86) contrast(1.03);transition:transform .4s ease,filter .25s ease}.fs-digital-card:hover .fs-digital-card__media>img{transform:scale(1.03);filter:saturate(1) contrast(1.03)}.fs-digital-card__media>span{position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(5,5,5,.58))}
.fs-digital-card__fallback{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-between;padding:28px;background:radial-gradient(circle at 72% 25%,rgba(204,255,0,.09),transparent 28%),repeating-linear-gradient(135deg,transparent 0 38px,rgba(255,255,255,.015) 38px 39px)}.fs-digital-card__fallback strong{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.11);font-size:48px;font-weight:880;letter-spacing:-.06em}.fs-digital-card__fallback svg{color:var(--fs-sales-accent);font-size:34px}
.fs-digital-card__body{padding:25px 25px 23px}.fs-digital-card__meta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #222}.fs-digital-card__meta>span{color:#696963;font-size:8px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.fs-digital-card__meta>strong,.fs-digital-card__meta .amount{color:var(--fs-sales-accent)!important;font-size:14px!important;font-weight:850!important;white-space:nowrap}.fs-digital-card__meta del{opacity:.4;font-size:.78em}.fs-digital-card__meta ins{text-decoration:none;background:none}
.fs-digital-card h3{margin:0!important;color:#f3f3ee!important;font-size:clamp(24px,1.9vw,31px)!important;font-weight:700!important;line-height:1.06!important;letter-spacing:-.04em!important}.fs-digital-card h3 a{color:inherit!important}.fs-digital-card__body>p{min-height:68px;margin:16px 0 24px!important;color:#888882!important;font-size:13px!important;line-height:1.62!important}.fs-digital-card__link{display:flex;align-items:center;justify-content:space-between;padding-top:17px;border-top:1px solid #222;color:#e5e5df!important;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.fs-digital-card__link svg{color:var(--fs-sales-accent);font-size:18px;transition:transform .2s ease}.fs-digital-card:hover .fs-digital-card__link svg{transform:translateX(4px)}

/* Final ---------------------------------------------------- */
.fs-digital-final h2 span{color:var(--fs-sales-accent)}

@media (max-width:1080px){
    .fs-digital-hero__grid{grid-template-columns:minmax(0,1fr) minmax(330px,.58fr);gap:48px}.fs-digital-cover-wrap{padding-left:42px}.fs-digital-cover-wrap__word{display:none}
    .fs-digital-buy{grid-template-columns:170px minmax(260px,1fr);gap:30px}
    .fs-digital-overview__grid{grid-template-columns:minmax(250px,.6fr) minmax(0,1fr);gap:64px}
}
@media (max-width:820px){
    .fs-digital-hero{padding-top:36px}.fs-digital-breadcrumb{margin-bottom:38px}.fs-digital-hero__grid{grid-template-columns:1fr;gap:60px;min-height:0}.fs-digital-title{font-size:clamp(56px,13vw,82px)!important}.fs-digital-cover-wrap{justify-content:flex-start;padding:0}.fs-digital-cover-wrap::before{display:none}.fs-digital-cover{width:min(100%,600px);aspect-ratio:1.05/1}.fs-digital-cover__image{object-position:center}.fs-digital-scroll{margin-top:46px}
    .fs-digital-overview__grid{grid-template-columns:1fr;gap:44px}.fs-digital-overview header{position:static}.fs-digital-overview h2{max-width:680px}
    .fs-digital-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-digital-related__grid .fs-digital-card:nth-child(3){display:none}
}
@media (max-width:680px){
    .fs-digital-hero{padding:28px 0 40px}.fs-digital-breadcrumb{margin-bottom:32px}.fs-digital-breadcrumb span:last-child{max-width:28ch}.fs-digital-eyebrow{margin-bottom:20px!important}.fs-digital-title{font-size:clamp(50px,15vw,70px)!important}.fs-digital-lead{margin-top:24px!important;font-size:16px!important}.fs-digital-buy{grid-template-columns:1fr;gap:24px;margin-top:36px}.fs-digital-buy__price>strong{font-size:54px}.fs-digital-buy__action .single_add_to_cart_button{min-height:55px!important}.fs-digital-cover{aspect-ratio:1/1.08}.fs-digital-cover__meta{padding:22px}.fs-digital-cover__meta span{font-size:44px}.fs-digital-scroll{margin-top:30px}
    .fs-digital-facts__grid{grid-template-columns:1fr 1fr}.fs-digital-facts__grid>div{justify-content:flex-start;min-height:58px;padding-inline:10px}.fs-digital-facts__grid>div:nth-child(3)::before{display:none}.fs-digital-facts__grid>div:nth-child(n+3){border-top:1px solid var(--fs-sales-line)}
    .fs-digital-overview h2,.fs-digital-related__head h2{font-size:42px!important}.fs-digital-richtext{font-size:15px}.fs-digital-specs>div{grid-template-columns:105px 1fr;gap:18px}
    .fs-digital-steps{grid-template-columns:1fr}.fs-digital-steps article{min-height:0;padding:28px 0 30px}.fs-digital-steps article+article{border-left:0;border-top:1px solid var(--fs-sales-line)}.fs-digital-step__icon{margin:34px 0 22px}.fs-digital-steps p{max-width:520px}
    .fs-digital-related__head{align-items:flex-start;flex-direction:column;margin-bottom:38px}.fs-digital-related__grid{grid-template-columns:1fr}.fs-digital-related__grid .fs-digital-card:nth-child(3){display:block}.fs-digital-card__body>p{min-height:0}
}
@media (max-width:430px){
    .fs-digital-title{font-size:48px!important}.fs-digital-cover__meta strong{max-width:110px}.fs-digital-cover__fallback-word{font-size:64px}.fs-digital-overview h2,.fs-digital-related__head h2{font-size:38px!important}.fs-digital-card__body{padding:22px 20px}
}
@media (prefers-reduced-motion:reduce){.fs-digital-product *{scroll-behavior:auto!important}.fs-digital-card,.fs-digital-card__media>img,.fs-digital-card__link svg,.fs-digital-step__icon{transition:none!important}}

/* ==========================================================
   Packs · adapta la ficha editorial compartida sin crear otro
   lenguaje visual para el catálogo.
   ========================================================== */
.fs-digital-product--pack .fs-digital-cover--fallback{background:radial-gradient(circle at 72% 24%,rgba(204,255,0,.12),transparent 30%),repeating-linear-gradient(135deg,transparent 0 46px,rgba(255,255,255,.018) 46px 47px),#0b0b0b}
.fs-pack-included{border-top:1px solid var(--fs-sales-line)}
.fs-pack-included__grid{align-items:stretch}
.fs-pack-included-card{height:100%}
.fs-pack-included-card .fs-digital-card__media{cursor:default}
.fs-pack-included__quantity{position:absolute;top:16px;right:16px;z-index:3;display:grid;place-items:center;min-width:48px;height:34px;padding:0 10px;border:1px solid rgba(204,255,0,.42);background:rgba(5,5,5,.84);color:var(--fs-sales-accent);font-size:13px;font-weight:900;letter-spacing:.04em;backdrop-filter:blur(7px)}
.fs-pack-included-card .fs-digital-card__meta>strong{color:var(--fs-sales-accent)!important;font-size:9px!important;letter-spacing:.1em;text-transform:uppercase}
.fs-pack-included-card .fs-digital-card__body>p{min-height:0;margin-bottom:0!important}
@media (max-width:820px){.fs-pack-included__grid .fs-digital-card:nth-child(3){display:block}}


/* ==========================================================
   0.8.4 · Product hero spacing — preserve LIBRO/RECETA/PACK.
   The vertical cover word is deliberately left untouched.
   ========================================================== */
@media (min-width:1081px){
    .fs-digital-hero__copy{min-width:0}
    .fs-digital-title{
        max-width:100%;
        font-size:clamp(58px,5.55vw,88px)!important;
        line-height:.93!important;
    }
    .fs-digital-buy{
        grid-template-columns:minmax(245px,270px) minmax(280px,350px);
        gap:30px;
        max-width:650px;
    }
    .fs-digital-buy__price{min-width:0}
    .fs-digital-buy__price>strong{
        max-width:100%;
        font-size:clamp(40px,3.35vw,54px);
        letter-spacing:-.05em;
    }
    .fs-digital-buy__action{min-width:0}
}
@media (min-width:821px) and (max-width:1080px){
    .fs-digital-buy{
        grid-template-columns:minmax(210px,235px) minmax(260px,1fr);
        gap:26px;
        max-width:590px;
    }
    .fs-digital-buy__price>strong{font-size:clamp(40px,4.2vw,50px)}
}

/* ==========================================================
   0.8.5 · RECETA / TRAIN / PACK vertical rail labels.
   Keep the labels visible and contained without clipping the wrapper.
   ========================================================== */
@media (min-width:1081px){
    .fs-digital-cover-wrap{overflow:visible}
    .fs-digital-cover-wrap__word{
        top:24px;
        left:28px;
        font-size:clamp(68px,5.4vw,88px);
        line-height:.78;
    }
    .fs-digital-product--pack .fs-digital-cover-wrap__word{
        font-size:clamp(76px,6vw,96px);
    }
}

/* ==========================================================
   0.8.6 · Clean digital hero — no vertical decorative word/rail.
   ========================================================== */
.fs-digital-cover-wrap__word,
.fs-digital-cover__fallback-word{display:none!important}
.fs-digital-cover-wrap::before{display:none!important}
