/* Front-page and navigation foundation layer. */
.intent-section{background:#101010;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.intent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.intent-card{position:relative;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--intent-bg,#171717);overflow:hidden;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.intent-card:before{content:"";position:absolute;inset:auto -25% -45% auto;width:170px;height:170px;border-radius:50%;background:var(--intent-accent,rgba(252,200,3,.18));filter:blur(10px);pointer-events:none}.intent-card-media{position:absolute;inset:0;z-index:0;background:center/cover no-repeat;opacity:.5;transition:transform .45s ease,opacity .2s ease}.intent-card.has-image:after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(0deg,rgba(8,8,8,.96),rgba(8,8,8,.2) 78%);pointer-events:none}.intent-card.has-image:hover .intent-card-media{transform:scale(1.04);opacity:.62}
.intent-card:hover{transform:translateY(-5px);border-color:rgba(252,200,3,.55);background:#1d1d1d}.intent-card--discover{--intent-accent:rgba(106,169,255,.24)}.intent-card--learn{--intent-accent:rgba(252,200,3,.24)}.intent-card--practice{--intent-accent:rgba(171,23,23,.34)}.intent-card--listen{--intent-accent:rgba(105,224,167,.22)}
.intent-icon{position:relative;z-index:1;display:grid;place-items:center;width:43px;height:43px;border:1px solid rgba(255,255,255,.18);border-radius:13px;font-size:1.35rem;font-weight:1000;color:var(--yellow)}.intent-copy{position:relative;z-index:1;display:grid;gap:7px}.intent-copy strong{font-size:1.4rem;letter-spacing:-.04em}.intent-copy span{color:var(--muted);font-size:.92rem;line-height:1.35}.intent-arrow{position:absolute;right:20px;bottom:20px;color:#aaa}
.route-section{background:#0d0d0d}.route-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:18px}.route-feature{position:relative;min-height:480px;display:flex;flex-direction:column;justify-content:end;gap:13px;padding:32px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#171717 center/cover no-repeat;isolation:isolate}.route-feature:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.95),rgba(0,0,0,.08) 76%),var(--route-image) center/cover no-repeat;transition:transform .5s ease}.route-feature:hover:before{transform:scale(1.04)}.route-feature strong{font-size:clamp(2.3rem,5vw,5.3rem);line-height:.9;letter-spacing:-.06em;max-width:720px}.route-excerpt{max-width:650px;color:#d0d0cb}.route-feature .btn{align-self:flex-start;margin-top:8px}.route-stack{display:grid;grid-template-rows:repeat(3,1fr);gap:12px}.route-item{display:grid;grid-template-columns:125px 1fr;gap:15px;align-items:stretch;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface);transition:transform .2s ease,border-color .2s ease}.route-item:hover{transform:translateX(4px);border-color:rgba(252,200,3,.48)}.route-item img{width:125px;height:100%;min-height:110px;object-fit:cover;border-radius:10px;background:#222}.route-item span{display:flex;flex-direction:column;justify-content:center;gap:6px}.route-item small{color:var(--yellow);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.route-item strong{line-height:1.05}.route-item em{font-style:normal;color:#9e9e98;font-size:.82rem;margin-top:auto}
.taxonomy-section{background:#101010}.category-showcase{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:18px}.category-lead{position:relative;min-height:430px;display:flex;flex-direction:column;justify-content:end;gap:10px;padding:30px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#191919;isolation:isolate}.category-lead:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.94),rgba(0,0,0,.08) 78%),var(--category-image) center/cover no-repeat;transition:opacity .65s ease,transform .5s ease}.category-lead.is-image-changing:before{opacity:.35}.category-lead:hover:before{transform:scale(1.04)}.category-lead strong{font-size:clamp(2.5rem,5vw,5.8rem);line-height:.86;letter-spacing:-.07em}.category-lead>span:not(.eyebrow){color:#d2d2cc;max-width:550px}.category-lead em{font-style:normal;color:var(--yellow);font-weight:850;margin-top:6px}.taxonomy-rotators{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;min-width:0}.taxonomy-rotator{min-width:0}.taxonomy-rotator-label{padding:0 2px 10px;color:var(--yellow);font-size:.72rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.category-list{display:grid;align-content:start;border-top:1px solid var(--line)}.category-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:18px 2px;border-bottom:1px solid var(--line);transition:padding .2s ease,color .2s ease,opacity .35s ease,transform .35s ease}.category-row.is-queued{display:none}.category-row.is-rotating{opacity:0;transform:translateY(-8px)}.category-row:hover{padding-left:8px;color:var(--yellow)}.category-row span{display:grid;gap:5px;min-width:0}.category-row small{color:#8e8e89;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}.category-row strong{font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.05;letter-spacing:-.035em;overflow-wrap:anywhere}.category-row .icon{color:#898985;flex:0 0 auto}
.tag-section{background:#0b0b0b;border-top:1px solid var(--line)}.tag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tag-card{position:relative;min-height:250px;display:flex;flex-direction:column;justify-content:end;gap:8px;padding:24px;border:1px solid rgba(171,23,23,.5);border-radius:18px;background:linear-gradient(145deg,rgba(171,23,23,.22),rgba(255,255,255,.025) 54%),#141414;overflow:hidden;transition:transform .2s ease,border-color .2s ease}.tag-card:hover{transform:translateY(-5px);border-color:var(--yellow)}.tag-card--2{background:linear-gradient(145deg,rgba(252,200,3,.18),rgba(255,255,255,.025) 54%),#141414}.tag-card--3{background:linear-gradient(145deg,rgba(105,224,167,.12),rgba(255,255,255,.025) 54%),#141414}.tag-mark{position:absolute;right:18px;top:9px;color:rgba(255,255,255,.1);font-size:7rem;font-weight:1000;line-height:1}.tag-card strong{position:relative;font-size:clamp(1.9rem,3.7vw,3.7rem);line-height:.9;letter-spacing:-.06em}.tag-card>span:not(.tag-mark):not(.eyebrow){color:#b8b8b2;min-height:2.7em}.tag-card em{font-style:normal;color:var(--yellow);font-weight:850;margin-top:5px}
.mobile-nav-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 4px;border-bottom:1px solid var(--line)}.mobile-nav-actions .icon-btn{width:100%;height:48px;border-radius:12px;background:rgba(255,255,255,.045)}.mobile-nav-actions .saved-count{right:7px;top:5px}.cart-button{position:relative}.cart-count{background:var(--red);color:#fff}.cart-count:empty{display:none}.menu-open{overflow:hidden}.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 13px 16px;border-bottom:1px solid var(--line)}.mobile-nav-head>div{display:grid;gap:4px}.mobile-nav-head strong{font-size:1.25rem;line-height:1}.mobile-nav-status{color:#777;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;text-align:right}.mobile-nav-foundation-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding-top:10px}.mobile-nav-foundation-links a,.mobile-nav-foundation-links button{min-height:54px!important;background:rgba(255,255,255,.035)!important;border:1px solid transparent!important}.mobile-nav-foundation-links a:hover,.mobile-nav-foundation-links button:hover{border-color:rgba(252,200,3,.4)!important}.mobile-nav-placeholder{padding:12px 13px 4px;margin:0;color:#777;font-size:.78rem;border-top:1px solid var(--line)}
@media (max-width:960px){.mobile-nav{max-height:calc(100vh - 100px);overflow:auto}.mobile-nav.open{display:block}.mobile-nav-foundation-links{display:grid}}@media (max-width:760px){.intent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-layout,.category-showcase{grid-template-columns:1fr}.taxonomy-rotators{grid-template-columns:repeat(2,minmax(0,1fr))}.route-feature{min-height:390px}.category-lead{min-height:350px}.tag-grid{grid-template-columns:1fr 1fr}.route-stack{grid-template-rows:none}.route-item{min-height:120px}}@media (max-width:520px){.taxonomy-rotators{grid-template-columns:1fr}.intent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tag-grid{grid-template-columns:1fr}.intent-card{min-height:168px;padding:14px;gap:12px}.intent-icon{width:36px;height:36px;border-radius:10px;font-size:1.05rem}.intent-copy{gap:5px}.intent-copy strong{font-size:1.05rem;line-height:1}.intent-copy span{font-size:.76rem;line-height:1.25}.intent-arrow{right:12px;bottom:12px;width:17px;height:17px}.route-feature{padding:24px}.route-item{grid-template-columns:96px 1fr}.route-item img{width:96px}.category-lead{padding:24px}.mobile-nav-foundation-links{grid-template-columns:1fr}}
.archive-hero{position:relative;margin:0 0 44px;padding:32px;border:1px solid var(--line);border-radius:24px;overflow:hidden}.archive-hero--category{background:linear-gradient(135deg,rgba(252,200,3,.15),rgba(255,255,255,.02) 58%),#151515}.archive-hero--tag{background:linear-gradient(135deg,rgba(171,23,23,.3),rgba(255,255,255,.02) 58%),#151515;border-color:rgba(171,23,23,.52)}.archive-hero h1{position:relative;font-size:clamp(3.1rem,8vw,8rem);line-height:.85;letter-spacing:-.08em;margin:10px 0 18px}.archive-hero p{position:relative;max-width:680px;color:#c8c8c2;margin:0 0 18px}.archive-stat{position:relative;color:var(--yellow);font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.tag-mark--archive{position:absolute;right:24px;top:0;color:rgba(255,255,255,.1);font-size:12rem;font-weight:1000;line-height:1}

/* 0.0.2.22 · bloques RAPEALO Superficies */
.home-surfaces{overflow:hidden}
.home-surfaces .rpsf-web{width:100%}
.home-surfaces-videos{background:linear-gradient(180deg,rgba(171,23,23,.06),transparent 46%)}
.home-surfaces-spotify{background:linear-gradient(180deg,rgba(105,224,167,.05),transparent 46%)}

/* 0.0.2.34 · navegación móvil autenticada con vistas internas */
.mobile-user-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px 0;border-bottom:1px solid var(--line)}
.mobile-user-tab{position:relative;min-height:66px;padding:9px 6px!important;display:flex!important;flex-direction:column;justify-content:center!important;align-items:center!important;gap:6px;border:1px solid rgba(255,255,255,.07)!important;border-radius:12px!important;background:rgba(255,255,255,.045)!important;color:var(--text)!important;text-align:center!important;font-size:.76rem;font-weight:900;line-height:1.05;text-decoration:none}
.mobile-user-tab .icon{width:20px;height:20px}.mobile-user-tab:hover,.mobile-user-tab.is-active{background:var(--yellow)!important;color:#090909!important;border-color:var(--yellow)!important}.mobile-user-tab:disabled{opacity:.45;cursor:not-allowed}.mobile-user-count{position:absolute;top:5px;right:7px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:var(--red);color:#fff;font-size:.62rem}
.mobile-inner-close{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:999px;background:var(--yellow);color:#080808;flex:0 0 auto}.mobile-inner-close[hidden]{display:none}.mobile-inner-close .icon{width:18px;height:18px}
.mobile-nav-main[hidden],.mobile-inner-panel[hidden]{display:none!important}.mobile-inner-panel{margin:10px -12px -12px;padding:18px 12px 14px;background:var(--yellow);color:#090909;border-radius:0 0 var(--radius) var(--radius);animation:rapealoMobileInner .18s ease-out}.mobile-inner-title{display:grid;gap:2px;margin-bottom:12px}.mobile-inner-title span{font-size:.68rem;font-weight:1000;letter-spacing:.12em}.mobile-inner-title strong{font-size:1.7rem;line-height:1}.mobile-inner-items{display:grid;gap:8px}.mobile-inner-item{display:grid!important;grid-template-columns:70px 1fr;gap:10px;align-items:center;min-height:70px;padding:7px!important;border:1px solid rgba(0,0,0,.16)!important;border-radius:11px!important;background:rgba(255,255,255,.3)!important;color:#080808!important;text-decoration:none}.mobile-inner-item img{width:70px;height:58px;object-fit:cover;border-radius:8px}.mobile-inner-item>span{display:grid;gap:3px}.mobile-inner-item small{font-size:.62rem;font-weight:1000;text-transform:uppercase;letter-spacing:.07em;opacity:.65}.mobile-inner-item strong{font-size:.9rem;line-height:1.12}.mobile-inner-empty{padding:14px;border-radius:11px;background:rgba(255,255,255,.3);color:#090909}.mobile-inner-panel .cart-drawer-items{display:grid;gap:8px}.mobile-inner-panel .cart-drawer-item{border-color:rgba(0,0,0,.18);background:rgba(255,255,255,.28)}.mobile-inner-panel .cart-drawer-copy,.mobile-inner-panel .cart-drawer-name,.mobile-inner-panel .cart-drawer-meta,.mobile-inner-panel .cart-drawer-total,.mobile-inner-panel .cart-drawer-empty{color:#090909}.mobile-inner-panel .cart-drawer-remove{color:#8d0000}.mobile-inner-panel .btn{border-color:#090909!important;color:#090909!important;background:transparent!important}.mobile-inner-panel .btn-primary{background:#090909!important;color:var(--yellow)!important}
@keyframes rapealoMobileInner{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
@media(max-width:420px){.mobile-user-tab{font-size:.69rem}.mobile-inner-item{grid-template-columns:62px 1fr}.mobile-inner-item img{width:62px;height:54px}}


/* 0.0.2.35 · menú móvil logueado: menú dedicado, accesos inferiores en tarjetas y carrito compacto */
.mobile-menu-list--logged{padding:10px 0;border-bottom:1px solid var(--line)}
.mobile-user-tabs--secondary{padding:10px 0 0;border-bottom:0;border-top:1px solid var(--line);margin-top:8px}
.mobile-user-tabs--secondary .mobile-user-tab{min-width:0}
.mobile-inner-panel .rapealo-cart-fragment{min-height:0}
.mobile-inner-panel .cart-drawer-items{padding:0}
.mobile-inner-panel .cart-drawer-item{padding:9px;border-bottom:0;border-radius:11px}
.mobile-inner-panel .cart-drawer-thumb{width:64px;height:64px;border-radius:9px}
.mobile-inner-panel .cart-drawer-item{grid-template-columns:64px minmax(0,1fr)}
.mobile-inner-panel .cart-drawer-summary{display:none!important}
.mobile-inner-panel .cart-drawer-empty{min-height:150px}
@media(max-width:420px){.mobile-user-tabs--secondary{gap:6px}.mobile-user-tabs--secondary .mobile-user-tab{font-size:.66rem}}


/* 0.0.2.42 — WooCommerce carousel. Strictly contained inside the existing .container. */
.home-products,.home-products *{box-sizing:border-box}.rapealo-product-carousel{position:relative;max-width:100%;min-width:0;overflow:hidden}.rapealo-product-controls{display:flex;justify-content:flex-end;gap:8px;margin:0 0 14px}.rapealo-product-track{display:flex;gap:16px;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;scrollbar-width:none;padding:2px 0 12px}.rapealo-product-track::-webkit-scrollbar{display:none}.rapealo-product-card{flex:0 0 calc((100% - 48px)/4);min-width:0;max-width:calc((100% - 48px)/4);scroll-snap-align:start;background:var(--surface);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);overflow:hidden;color:var(--text);text-decoration:none}.rapealo-product-image{display:block;aspect-ratio:1/1;background:#111;overflow:hidden}.rapealo-product-image img{display:block;width:100%;height:100%;object-fit:cover}.rapealo-product-copy{display:grid;gap:8px;padding:16px}.rapealo-product-copy strong{font-size:1rem;line-height:1.2;overflow-wrap:anywhere}.rapealo-product-price{color:var(--yellow);font-weight:800}.rapealo-product-price del{opacity:.55}.rapealo-product-price ins{text-decoration:none}
@media(max-width:960px){.rapealo-product-card{flex-basis:calc((100% - 16px)/2);max-width:calc((100% - 16px)/2)}}
@media(max-width:640px){.rapealo-product-card{flex-basis:82%;max-width:82%}.rapealo-product-controls{margin-bottom:10px}}
