/*
Theme Name: Emiritf_v1.1.0
Description: Tema hijo de Twenty Twenty-Five para el EP Young Handsome and Famous.
Author: Emiri
Template: twentytwentyfive
Version: 1.1.0
Requires at least: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: emiritf
*/

.emiritf-home {
 --emiri-violet: #4511b1; --emiri-lilac: #d5c2ff; --emiri-paper: #f2edff;
 --emiri-ink: #130c24; --emiri-muted: #685486; --emiri-header: 80px; --emiri-admin: 0px;
 --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
 --ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
 color: var(--emiri-violet); background: var(--emiri-paper);
}
body.admin-bar .emiritf-home { --emiri-admin: 32px; }
.emiritf-home *, .emiritf-home *::before, .emiritf-home *::after { box-sizing: border-box; }
.emiritf-home :where(h1,h2,p,figure,ol) { margin: 0; }
.emiritf-home a { color: inherit; text-underline-offset: .25em; }
.emiritf-home a:focus-visible, .wp-site-blocks :where(a,button,input,textarea,select):focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
.emiritf-header {
 position: sticky; top: var(--emiri-admin); z-index: 20; min-height: var(--emiri-header);
 display: flex; align-items: center; justify-content: space-between; gap: 1rem;
 padding: .75rem clamp(1rem, 4vw, 4rem); color: var(--emiri-violet); background: var(--emiri-paper);
 border-bottom: 1px solid currentColor;
}
.emiritf-home[data-scheme="dark"] .emiritf-header { color: var(--emiri-lilac); background: #100b18; }
.emiritf-home[data-scheme="violet"] .emiritf-header { color: #fff; background: var(--emiri-violet); }
.emiritf-wordmark { display: inline-flex; align-items: baseline; gap: .8rem; text-decoration: none; font-size: 1.5rem; font-weight: 800; letter-spacing: -.06em; }
.emiritf-wordmark > span { font-size: .65rem; letter-spacing: .16em; font-weight: 400; }
.emiritf-header nav { display: flex; gap: clamp(.25rem, 2vw, 2rem); }
.emiritf-header nav a { display: inline-flex; gap: .4rem; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; font-size: .8rem; text-decoration: none; }
.emiritf-header nav a[aria-current] { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: .5em; }
.emiritf-nav-number { font-size: .65rem; font-variant-numeric: tabular-nums; }
.emiritf-progress { position: absolute; height: 3px; inset: auto 0 -1px; background: currentColor; transform-origin: left; transform: scaleX(.25); }
html.emiritf-story-page { scroll-snap-type: y proximity; }
.emiritf-scene {
 position: relative; min-height: calc(100svh - var(--emiri-header) - var(--emiri-admin));
 padding: clamp(1.5rem, 4vw, 4rem); scroll-margin-top: var(--emiri-header);
 scroll-snap-align: start; isolation: isolate; overflow: clip;
}
.emiritf-scene :where(h1,h2) { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; letter-spacing: -.065em; line-height: .97; color: inherit; }
.emiritf-scene :where(h1,h2) em { font-weight: 400; }
.emiritf-eyebrow { font-size: .68rem; font-weight: 700; letter-spacing: .18em; line-height: 1.5; margin-bottom: 1.5rem !important; }
.emiritf-deck { margin-top: 1.5rem !important; font-size: clamp(.95rem, 1.5vw, 1.15rem); line-height: 1.5; max-width: 35ch; }
.emiritf-intro { display: grid; grid-template-columns: 1.1fr 1fr; gap: 2rem; align-items: center; padding-bottom: 4rem; }
.emiritf-intro h1 { font-size: clamp(3.5rem, 6.6vw, 7rem); }
.emiritf-cta { display: inline-flex; gap: 2rem; align-items: center; justify-content: space-between; min-height: 48px; margin-top: 1.5rem; padding: .8rem 1.25rem; color: #fff !important; background: var(--emiri-violet); text-decoration: none; font-size: .85rem; transition: transform 160ms var(--ease-out); }
.emiritf-art { min-width: 0; }
.emiritf-art img { display: block; width: 100%; height: auto; }
.emiritf-cover { width: min(100%, 560px); justify-self: center; }
.emiritf-cover img { max-height: 67svh; object-fit: contain; }
.emiritf-scene-note { position: absolute; bottom: 1.5rem; left: clamp(1.5rem, 4vw, 4rem); font-size: .65rem; letter-spacing: .05em; }
.emiritf-universe { display: flex; align-items: center; color: var(--emiri-lilac); background: #100b18; }
.emiritf-backdrop { position: absolute; inset: 0; z-index: -2; }
.emiritf-backdrop img { width: 100%; height: 100%; object-fit: cover; object-position: 62% center; }
.emiritf-universe::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(10,5,20,.94) 0%, rgba(10,5,20,.8) 35%, rgba(10,5,20,.12) 75%); }
.emiritf-universe h2 { font-size: clamp(3.5rem, 7.5vw, 8rem); max-width: 11ch; }
.emiritf-text-link { display: inline-flex; gap: 2rem; align-items: center; min-height: 44px; margin-top: 1.5rem; font-size: .85rem; }
.emiritf-identity { display: grid; grid-template-columns: .7fr 1.3fr; align-items: center; gap: 3rem; color: #fff; background: var(--emiri-violet); }
.emiritf-identity h2 { font-size: clamp(3.5rem, 6vw, 6.5rem); }
.emiritf-banner img { max-height: 70svh; object-fit: contain; }
.emiritf-tracks { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(2rem, 6vw, 6rem); padding-bottom: 4rem; }
.emiritf-track-art img { max-height: 68svh; object-fit: contain; }
.emiritf-track-copy h2 { font-size: clamp(2.8rem, 4.5vw, 4.8rem); margin-bottom: 1rem; }
.emiritf-track-copy .emiritf-eyebrow { margin-bottom: .8rem !important; }
.emiritf-tracklist { padding-left: 1.5rem; }
.emiritf-tracklist li { padding: .45rem .25rem; border-bottom: 1px solid #d4c5f1; font-size: clamp(.85rem, 1.2vw, 1.05rem); line-height: 1.35; }
.emiritf-tracklist li::marker { font-size: .7rem; font-variant-numeric: tabular-nums; }
.emiritf-tracklist span { display: block; color: var(--emiri-muted); font-size: .72rem; }
.emiritf-footer { position: absolute; inset: auto clamp(1.5rem, 4vw, 4rem) 1.5rem; display: flex; justify-content: space-between; gap: 1rem; font-size: .65rem; }
.emiritf-home :where(h1,h2,p,a,li) { overflow-wrap: break-word; }
.emiritf-reveal { transition: opacity 600ms var(--ease-in-out), transform 600ms var(--ease-in-out); }
.emiritf-enhanced .emiritf-scene:not(.is-seen) .emiritf-reveal { opacity: 0; transform: translateY(24px); }
.emiritf-enhanced .emiritf-scene:not(.is-seen):focus-within .emiritf-reveal { opacity: 1; transform: none; }
.emiritf-art.emiritf-reveal { transition-delay: 50ms; }
.emiritf-keyboard .emiritf-reveal { transition: none; }
@supports (animation-timeline: scroll(root block)) {
 .emiritf-progress { animation: emiritf-reading auto linear both; animation-timeline: scroll(root block); }
 @keyframes emiritf-reading { from { transform: scaleX(0); } to { transform: scaleX(1); } }
}
@media (hover: hover) and (pointer: fine) { .emiritf-cta:hover { transform: translateY(-2px); } }
@media (max-width: 782px) { body.admin-bar .emiritf-home { --emiri-admin: 46px; } }
@media (max-width: 700px) {
 .emiritf-home { --emiri-header: 69px; }
 .emiritf-wordmark > span, .emiritf-nav-label { display: none; }
 .emiritf-header { padding-inline: 1rem; }
 .emiritf-nav-number { font-size: .8rem; }
 .emiritf-scene { padding: 1.5rem 1rem 3.5rem; }
 .emiritf-intro { grid-template-columns: 1fr; gap: 1.5rem; }
 .emiritf-intro h1 { font-size: clamp(2.9rem, 11.5vw, 5rem); }
 .emiritf-intro .emiritf-eyebrow { margin-bottom: .8rem !important; }
 .emiritf-deck { font-size: .85rem; margin-top: 1rem !important; }
 .emiritf-intro .emiritf-deck br { display: none; }
 .emiritf-cta { margin-top: 1rem; }
 .emiritf-cover { width: min(68%, 300px); }
 .emiritf-cover img { max-height: 36svh; }
 .emiritf-universe h2 { font-size: clamp(3.3rem, 14vw, 5rem); }
 .emiritf-universe { align-items: flex-end; }
 .emiritf-universe::before { background: linear-gradient(0deg, rgba(10,5,20,.97) 0%, rgba(10,5,20,.76) 40%, rgba(10,5,20,.12) 85%); }
 .emiritf-backdrop img { object-position: 58% center; }
 .emiritf-identity { grid-template-columns: 1fr; align-content: center; gap: 2rem; }
 .emiritf-identity h2 { font-size: clamp(3.5rem, 14vw, 5rem); }
 .emiritf-tracks { grid-template-columns: .65fr 1.35fr; gap: 1rem; align-content: center; }
 .emiritf-track-copy h2 { font-size: clamp(2.5rem, 10vw, 4rem); }
 .emiritf-track-copy .emiritf-eyebrow { font-size: .55rem; }
 .emiritf-tracklist { padding-left: 1.2rem; }
 .emiritf-tracklist li { font-size: .85rem; padding-block: .6rem; }
 .emiritf-tracklist span { font-size: .68rem; }
 .emiritf-scene-note { left: 1rem; font-size: .55rem; }
 .emiritf-footer { inset-inline: 1rem; }
}
@media (max-width: 600px) { body.admin-bar #wpadminbar { position: fixed; } }
@media (max-width: 360px) {
 .emiritf-wordmark { font-size: 1.2rem; }
 .emiritf-header nav a { min-width: 42px; }
 .emiritf-tracks { grid-template-columns: 1fr; }
 .emiritf-track-art { width: 120px; justify-self: center; }
}
@media (prefers-reduced-motion: reduce) {
 html.emiritf-story-page { scroll-snap-type: none; }
 .emiritf-reveal { transition: opacity 160ms ease; }
 .emiritf-enhanced .emiritf-scene:not(.is-seen) .emiritf-reveal { transform: none; }
 .emiritf-cta, .emiritf-art.emiritf-reveal { transition-delay: 0ms; }
 .emiritf-cta { transition: none; }
 .emiritf-cta:hover { transform: none; }
}
