:root{
  --cream:#f4efe4;
  --paper:#fbf7ef;
  --ink:#173a49;
  --blue:#193b91;
  --deep:#0f2d3a;
  --green:#36583b;
  --sage:#90a58a;
  --gold:#e6a428;
  --orange:#c86b2b;
  --red:#862f2c;
  --line:rgba(23,58,73,.16);
  --radius:26px;
  --sans:'Manrope',system-ui,sans-serif;
  --serif:'Cormorant Garamond',Georgia,serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-weight:300;overflow-x:hidden}
a{color:inherit}
img{display:block;max-width:100%}
button,input{font:inherit}
.grain{position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.065;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.38'/%3E%3C/svg%3E")}
.section{position:relative;padding:120px clamp(24px,6vw,96px)}
.site-header{position:fixed;z-index:90;top:0;left:0;right:0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:18px clamp(22px,4vw,64px);background:rgba(244,239,228,.83);backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:.3s ease}
.site-header.scrolled{border-color:var(--line)}
.brand{width:128px}
.nav{justify-self:center;display:flex;gap:28px;font-size:13px;letter-spacing:.05em}
.nav a,.header-ticket,.footer a,.text-link,.social-links a{text-decoration:none}
.nav a{opacity:.72;transition:.2s}.nav a:hover{opacity:1}
.header-ticket{font-size:12px;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--ink);padding:11px 15px;border-radius:999px}
.menu-toggle{display:none;background:none;border:0;color:var(--ink)}
.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;margin:0 0 22px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.92;letter-spacing:-.035em}
h1{font-size:clamp(62px,9vw,150px);margin-bottom:34px}
h2{font-size:clamp(52px,7.2vw,112px);margin-bottom:34px}
h3{font-size:clamp(44px,5vw,78px);margin-bottom:22px}
em{font-weight:400}
.hero{min-height:100svh;padding-top:150px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;overflow:hidden}
.hero-copy{position:relative;z-index:2;max-width:970px}
.hero-sub{max-width:650px;font-size:15px;line-height:1.8;letter-spacing:.03em;margin-bottom:34px}
.button-row{display:flex;flex-wrap:wrap;gap:12px}.button-row.compact{margin-top:26px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid transparent;text-decoration:none;cursor:pointer;transition:.2s ease;font-size:13px;letter-spacing:.02em}
.button:hover{transform:translateY(-2px)}
.button.primary{background:var(--ink);color:var(--cream)}
.button.ghost{border-color:rgba(23,58,73,.38);background:transparent;color:var(--ink)}
.button.cream{background:var(--cream);color:#311b20}
.button:disabled{opacity:.38;cursor:not-allowed;transform:none}
.hero-art{justify-self:end;width:min(38vw,560px);opacity:.94}.hero-art img{filter:drop-shadow(0 28px 50px rgba(19,57,73,.12))}
.hero-flower,.hero-leaf{position:absolute;pointer-events:none}.hero-flower{width:180px;right:3vw;top:8vh;opacity:.45}.hero-leaf{width:220px;left:35vw;bottom:-50px;opacity:.35}
.scroll-cue{position:absolute;left:clamp(24px,6vw,96px);bottom:28px;text-decoration:none;font-size:11px;letter-spacing:.15em;text-transform:uppercase;opacity:.65}.scroll-cue span{margin-left:8px}
.manifesto{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(48px,8vw,130px);align-items:center;background:var(--paper)}
.manifesto-image img{border-radius:var(--radius);aspect-ratio:1/1;object-fit:cover;object-position:center}
.manifesto-copy{max-width:700px}.manifesto-copy>p:not(.eyebrow):not(.pullquote),.about-copy>p:not(.eyebrow):not(.pullquote){font-size:16px;line-height:1.9;max-width:600px}
.pullquote{font-family:var(--serif);font-style:italic;font-size:clamp(28px,3vw,46px);line-height:1.05;margin-top:42px}
.section-heading{max-width:1080px;margin-bottom:80px}.section-heading>p:not(.eyebrow){font-size:15px;line-height:1.8}
.music{background:linear-gradient(180deg,var(--cream),#e9eee7 48%,var(--cream));overflow:hidden}
.album{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,8vw,120px);align-items:center;max-width:1240px;margin:0 auto 150px}.album:last-child{margin-bottom:0}
.album-copy{max-width:560px}.album-copy>p:not(.album-number):not(.album-kicker){font-size:15px;line-height:1.9}.album-number{font-size:11px;letter-spacing:.16em}.album-kicker{text-transform:uppercase;font-size:11px;letter-spacing:.14em;line-height:1.6;font-weight:600}
.generated-cover{position:relative;aspect-ratio:1/1;border-radius:var(--radius);overflow:hidden;background:radial-gradient(circle at 24% 24%,#f4d88b 0,transparent 24%),linear-gradient(145deg,#d6e4dd,#6d8f83 52%,#173f53);box-shadow:0 26px 55px rgba(21,49,55,.18)}
.generated-cover>img{position:absolute;width:72%;right:-8%;bottom:-8%;opacity:.85;mix-blend-mode:screen}.sea-cover{background:radial-gradient(circle at 80% 20%,#f5e7b8 0,transparent 22%),linear-gradient(145deg,#a4c9cc,#2d7892 50%,#112e54)}.sea-cover>img{width:100%;right:-12%;bottom:-4%;mix-blend-mode:screen}
.cover-copy{position:absolute;inset:8%;display:flex;flex-direction:column;justify-content:space-between;color:#fff}.cover-copy span,.cover-copy small{font-family:var(--sans);text-transform:uppercase;letter-spacing:.17em;font-size:10px}.cover-copy strong{font-family:var(--serif);font-weight:400;font-style:italic;font-size:clamp(56px,7vw,110px);line-height:.74}
.youtube{background:var(--deep);color:var(--cream);overflow:hidden}.section-heading.light{color:var(--cream)}.youtube-botanical{position:absolute;width:min(40vw,540px);right:-11vw;top:-120px;opacity:.22}
.video-shell{max-width:1240px;margin:auto;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 25px 60px rgba(0,0,0,.28)}.video-shell iframe{width:100%;height:100%;border:0}.text-link{display:block;width:max-content;margin:28px auto 0;font-size:13px}.light-link{color:var(--cream)}
.breath{min-height:78vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.breath-whale{width:min(520px,65vw);margin-bottom:24px}.breath p{font-family:var(--serif);font-style:italic;font-size:clamp(46px,8vw,110px)}
.merch{background:#eef0e9}.merch-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:24px}.merch-card{margin:0}.merch-card img{width:100%;height:100%;min-height:420px;object-fit:cover;border-radius:var(--radius)}.merch-card.large img{min-height:520px}.merch-card figcaption{display:flex;justify-content:space-between;gap:20px;padding:16px 6px 0;font-size:12px;line-height:1.5}.merch-card figcaption span{opacity:.67;text-align:right}.merch-note{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:54px;border-top:1px solid var(--line);padding-top:28px}.merch-note p{font-family:var(--serif);font-size:36px;margin:0}
.concert{min-height:100svh;background:radial-gradient(circle at 18% 10%,rgba(234,188,70,.9),transparent 30%),radial-gradient(circle at 78% 74%,rgba(22,70,79,.92),transparent 32%),radial-gradient(circle at 48% 86%,rgba(155,47,38,.82),transparent 31%),linear-gradient(135deg,#a65c2a,#6d5a31 54%,#173743);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,8vw,120px);align-items:center;overflow:hidden}.concert:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.concert>*{position:relative;z-index:1}.presenta{font-family:var(--serif);font-style:italic;font-size:28px;margin-bottom:12px}.concert h2{font-family:var(--sans);font-size:clamp(66px,8.8vw,152px);font-weight:300;letter-spacing:.02em;line-height:.82;margin-bottom:16px}.concert-subtitle{font-family:var(--serif);font-style:italic;font-size:clamp(34px,4vw,58px)}.elements-line{letter-spacing:.1em;text-transform:uppercase;font-size:11px;margin:34px 0}.concert-meta{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:34px;font-size:13px}.concert-photo img{border-radius:var(--radius);width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid rgba(255,255,255,.28)}
.experience{background:#141e1d;color:var(--cream)}.experience-lead{max-width:1120px;margin-bottom:90px}.experience-lead>p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:760px}.elements-journey{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);overflow:hidden}.element{min-height:390px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;background:#1b2926}.element span{font-size:10px;letter-spacing:.16em;opacity:.5;margin-bottom:auto}.element h3{font-size:52px;margin-bottom:12px}.element p{font-size:12px;line-height:1.6;opacity:.75}.element.air{background:linear-gradient(180deg,#405a58,#1f302e)}.element.space{background:linear-gradient(180deg,#202629,#14191c)}.element.earth{background:linear-gradient(180deg,#5b5b3f,#292b22)}.element.water{background:linear-gradient(180deg,#25576c,#182b36)}.element.fire{background:linear-gradient(180deg,#8d482a,#3b211d)}
.release-seed{display:grid;grid-template-columns:1fr 1fr;background:var(--paper);padding-left:0;padding-right:0;padding-bottom:0}.release-panel,.seed-panel{min-height:580px;padding:clamp(50px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.release-panel{background:#dbe5e1}.seed-panel{background:#ead9bd}.release-panel p:last-child,.seed-panel p:last-child{font-size:16px;line-height:1.9;max-width:500px}.release-note{grid-column:1/-1;padding:70px 24px;text-align:center;font-family:var(--serif);font-size:clamp(32px,4vw,58px);line-height:1.05}
.tickets{background:var(--cream)}.ticket-picker{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:1100px;margin:auto}.ticket-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:34px;min-height:370px;display:flex;flex-direction:column;cursor:pointer;background:rgba(255,255,255,.35);transition:.25s}.ticket-card:hover{transform:translateY(-4px);border-color:rgba(23,58,73,.35)}.ticket-card:has(input:checked){background:var(--ink);color:var(--cream);border-color:var(--ink);transform:translateY(-4px)}.ticket-card input{position:absolute;opacity:0;pointer-events:none}.ticket-check{font-size:24px;align-self:flex-end}.ticket-card:has(input:checked) .ticket-check{font-size:0}.ticket-card:has(input:checked) .ticket-check:after{content:"●";font-size:18px}.ticket-type{text-transform:uppercase;letter-spacing:.16em;font-size:11px;margin-top:auto}.ticket-card strong{font-family:var(--serif);font-weight:400;font-size:68px;line-height:1;margin:12px 0}.ticket-card strong small{font-family:var(--sans);font-size:11px;letter-spacing:.15em}.ticket-card p{font-size:13px;line-height:1.7;max-width:390px}.choose{font-size:12px;text-decoration:underline;text-underline-offset:5px;margin-top:20px}.ticket-summary{text-align:center;margin-top:34px}.ticket-summary p{font-family:var(--serif);font-style:italic;font-size:26px}.ticket-summary small{display:block;margin-top:14px;font-size:10px;letter-spacing:.03em;opacity:.62}
.personal{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,7vw,100px);align-items:center;background:#dfe8e0}.personal-art{width:min(560px,70vw);justify-self:center}.personal-copy{max-width:770px}.personal-copy>p:last-child{font-size:15px;line-height:1.9}.questions{margin:42px 0;border-top:1px solid var(--line)}.questions p{font-family:var(--serif);font-size:clamp(30px,4vw,54px);padding:21px 0;margin:0;border-bottom:1px solid var(--line)}.questions span{font-family:var(--sans);font-size:10px;letter-spacing:.16em;margin-right:14px}
.about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,8vw,120px);align-items:center}.about-photo img{width:100%;border-radius:var(--radius);aspect-ratio:4/3;object-fit:cover}
.social{text-align:center;min-height:80vh;display:grid;place-items:center;overflow:hidden;background:#f5e5c9}.social>div{position:relative;z-index:2}.social-flower{position:absolute;width:min(430px,60vw);left:-110px;bottom:-110px;opacity:.45}.social-links{display:flex;flex-direction:column;gap:14px;font-size:14px}.social-links a{text-decoration:underline;text-underline-offset:5px}
.footer{background:var(--deep);color:var(--cream);padding:80px clamp(24px,6vw,96px) 36px;text-align:center}.footer>img{width:260px;margin:0 auto 26px}.footer>p{font-family:var(--serif);font-style:italic;font-size:32px}.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;font-size:12px;margin:32px 0 55px}.footer small{opacity:.5;font-size:10px}
.toast{position:fixed;z-index:120;left:50%;bottom:24px;transform:translate(-50%,24px);background:var(--ink);color:var(--cream);padding:14px 18px;border-radius:999px;font-size:12px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}.drift{animation:float 8s ease-in-out infinite}.drift-two{animation-delay:-3s}@keyframes float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-18px) rotate(2deg)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.drift{animation:none}.button{transition:none}}
@media(max-width:900px){
  .site-header{grid-template-columns:auto 1fr auto}.brand{width:105px}.menu-toggle{display:block;justify-self:end}.header-ticket{display:none}.nav{position:absolute;top:68px;left:18px;right:18px;display:none;flex-direction:column;padding:20px;background:rgba(244,239,228,.98);border:1px solid var(--line);border-radius:18px}.nav.open{display:flex}
  .hero,.manifesto,.concert,.personal,.about{grid-template-columns:1fr}.hero{padding-top:130px}.hero-art{width:min(72vw,500px);justify-self:center;margin-top:36px}.hero-leaf{display:none}.manifesto-image{order:2}.manifesto-copy{order:1}.album{grid-template-columns:1fr;margin-bottom:100px}.album-sea .album-copy{order:2}.album-sea .album-cover{order:1}.merch-grid{grid-template-columns:1fr}.merch-note{align-items:flex-start;flex-direction:column}.concert{min-height:auto}.concert-photo{margin-top:10px}.elements-journey{grid-template-columns:1fr}.element{min-height:250px}.release-seed{grid-template-columns:1fr}.release-note{grid-column:auto}.ticket-picker{grid-template-columns:1fr}.personal-art{width:min(440px,80vw)}
}
@media(max-width:560px){
  .section{padding:88px 20px}.site-header{padding:15px 18px}.brand{width:92px}.hero{padding-top:110px}.hero-sub{font-size:13px}.button-row{flex-direction:column}.button{width:100%}.hero-art{width:86vw}.hero-flower{width:100px}.section-heading{margin-bottom:50px}.album{gap:34px}.merch-card img,.merch-card.large img{min-height:300px}.merch-card figcaption{flex-direction:column}.merch-card figcaption span{text-align:left}.concert-meta{flex-direction:column;gap:5px}.release-panel,.seed-panel{min-height:440px;padding:70px 20px}.ticket-card{min-height:330px;padding:26px}.social-links{font-size:12px}
}

/* Entrada sonora */
body.sound-gate-open{overflow:hidden}
.sound-gate{position:fixed;inset:0;z-index:300;background:radial-gradient(circle at 50% 34%,rgba(53,88,59,.48),transparent 34%),linear-gradient(160deg,#102f3b,#183a36 52%,#0c262f);display:grid;place-items:center;color:var(--cream);transition:opacity .8s ease,visibility .8s ease}
.sound-gate:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");opacity:.45;pointer-events:none}
.sound-gate.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.sound-gate-inner{position:relative;z-index:1;width:min(88vw,520px);text-align:center;display:flex;flex-direction:column;align-items:center}
.sound-gate-inner img{width:min(300px,72vw);margin-bottom:26px}
.sound-gate-inner p{font-family:var(--serif);font-style:italic;font-size:clamp(28px,4vw,46px);margin-bottom:34px}
.sound-enter{border:1px solid rgba(244,239,228,.68);background:var(--cream);color:var(--deep);min-width:190px;padding:15px 30px;border-radius:999px;cursor:pointer;font-size:13px;letter-spacing:.12em;text-transform:uppercase;transition:.25s ease}
.sound-enter:hover{transform:translateY(-2px);background:#fff}
.sound-gate-inner small{margin-top:15px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;opacity:.62}
.sound-toggle{position:fixed;right:22px;bottom:22px;z-index:210;border:1px solid rgba(23,58,73,.22);background:rgba(244,239,228,.84);backdrop-filter:blur(12px);color:var(--ink);border-radius:999px;padding:10px 14px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 30px rgba(16,40,48,.08)}
.sound-toggle span{display:inline-block;margin-left:7px;font-size:11px;opacity:.55}.sound-toggle.is-playing span{opacity:1}
.concert-page .concert{padding-top:150px}
.concert-page .site-header{background:rgba(244,239,228,.9)}
@media(max-width:560px){.sound-toggle{right:14px;bottom:14px}.concert-page .concert{padding-top:120px}}


/* V3 refinamientos */
.hero-art{width:min(42vw,610px)}
.hero-art img{border-radius:28px;box-shadow:0 30px 80px rgba(18,44,54,.12)}
.real-cover{background:transparent;box-shadow:0 26px 55px rgba(21,49,55,.12);border-radius:var(--radius);overflow:hidden;border:1px solid rgba(23,58,73,.08)}
.real-cover img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;background:#e9eded}
.sky-real-cover img{background:#ececeb}
.sea-real-cover img{background:#d8e5e6}
.breath{background:linear-gradient(180deg,#f4efe4 0%,#edf1ec 100%)}
.breath-whale{width:min(600px,72vw);border-radius:24px;box-shadow:0 28px 70px rgba(18,44,54,.08)}

/* Concerts page premium + intimate */
.concert-page{background:#f6f1e8;color:#24373d}
.concert-page .site-header{background:rgba(246,241,232,.88);border-bottom:1px solid rgba(23,58,73,.08)}
.concert-page .concert{min-height:auto;background:linear-gradient(180deg,#f6f1e8 0%,#efe6d7 100%);color:#24373d;align-items:center}
.concert-page .concert:before{display:none}
.concert-page .concert-intro{max-width:700px}
.concert-page .presenta{color:#6b5a46;font-size:24px}
.concert-page .concert h2{font-family:var(--serif);font-size:clamp(70px,9vw,146px);font-weight:400;letter-spacing:-.035em;line-height:.88;margin-bottom:10px;color:#102f3b}
.concert-page .concert-subtitle{font-size:clamp(30px,4vw,52px);color:#6d594c;margin-bottom:14px}
.concert-note{max-width:520px;font-size:14px;line-height:1.9;margin:18px 0 0;color:#4d534f}
.concert-page .elements-line{letter-spacing:.16em;color:#6c6a5f;margin:28px 0 24px}
.concert-page .concert-meta{gap:10px;margin-bottom:34px}
.concert-page .concert-meta span{padding:10px 14px;border:1px solid rgba(16,47,59,.12);border-radius:999px;background:rgba(255,255,255,.45);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.concert-page .concert-photo{background:#fff;padding:18px;border-radius:32px;box-shadow:0 30px 80px rgba(33,44,38,.08);border:1px solid rgba(23,58,73,.08)}
.concert-page .concert-photo img{aspect-ratio:4/4.3;border:none;border-radius:22px;box-shadow:none}
.concert-page .concert-photo figcaption{font-size:13px;line-height:1.8;color:#5c635f;padding:16px 8px 4px}
.concert-page .button.cream{background:#173a49;color:#f6f1e8}
.concert-page .button.cream:hover{background:#102f3b}
.concert-page .experience{background:linear-gradient(180deg,#fffdfa 0%,#f4ecdf 100%);color:#24373d}
.concert-page .experience-lead{max-width:980px}
.concert-page .experience-lead>p:not(.eyebrow){color:#4f5751}
.concert-page .elements-journey{gap:18px;background:none;border:none;overflow:visible}
.concert-page .element{min-height:330px;border-radius:28px;border:1px solid rgba(23,58,73,.08);box-shadow:0 24px 50px rgba(31,43,38,.05);padding:34px;background:#fff;color:#24373d}
.concert-page .element span{opacity:.45}
.concert-page .element h3{font-size:48px;color:#102f3b}
.concert-page .element p{opacity:.76;font-size:13px}
.concert-page .element.air{background:linear-gradient(180deg,#f6fbfb,#e9efee)}
.concert-page .element.space{background:linear-gradient(180deg,#fbfaf8,#efebe4)}
.concert-page .element.earth{background:linear-gradient(180deg,#f5f2e6,#ebe2cb)}
.concert-page .element.water{background:linear-gradient(180deg,#edf7fa,#dce9ef)}
.concert-page .element.fire{background:linear-gradient(180deg,#fbefe7,#f1ddcf)}
.concert-page .release-seed{background:#f6f1e8}
.concert-page .release-panel,.concert-page .seed-panel{min-height:520px}
.concert-page .release-panel{background:#edf2ee}
.concert-page .seed-panel{background:#f1e6d2}
.concert-page .release-note{color:#354246}
.concert-page .tickets{background:#fffdfa}
.concert-page .ticket-picker{max-width:980px;gap:26px}
.concert-page .ticket-card{background:#fff;border:1px solid rgba(23,58,73,.12);box-shadow:0 24px 55px rgba(18,44,54,.05);min-height:390px;padding:40px}
.concert-page .ticket-card:hover{transform:translateY(-6px);box-shadow:0 28px 60px rgba(18,44,54,.09)}
.concert-page .ticket-card:has(input:checked){background:#173a49;color:#f5efe3;box-shadow:0 30px 60px rgba(16,47,59,.18)}
.concert-page .ticket-card strong{font-size:74px}
.concert-page .ticket-summary{margin-top:42px;padding:38px 28px;border:1px solid rgba(23,58,73,.1);border-radius:28px;background:#fff;max-width:820px;margin-left:auto;margin-right:auto;box-shadow:0 24px 55px rgba(18,44,54,.05)}
.concert-page .ticket-summary p{font-size:30px;color:#102f3b}
.concert-page .ticket-summary small{max-width:620px;margin:16px auto 0;line-height:1.7}
.concert-page .personal{background:linear-gradient(180deg,#e4ece4,#d8e5dd)}
.concert-page .personal-art{filter:drop-shadow(0 20px 40px rgba(20,47,59,.08))}
@media(max-width:900px){.concert-page .concert-photo{padding:14px}.concert-page .elements-journey{grid-template-columns:1fr}.concert-page .element{min-height:240px}.hero-art{width:min(78vw,620px)}}
@media(max-width:560px){.concert-note{font-size:13px}.concert-page .ticket-summary{padding:28px 18px}.concert-page .ticket-card{padding:28px}.concert-page .ticket-card strong{font-size:58px}}


/* V4 - conciertos visibles desde arriba */
.hero-art{display:flex;align-items:center;justify-content:center}
.hero-art img{filter:drop-shadow(0 28px 50px rgba(19,57,73,.10));background:transparent;border-radius:0;box-shadow:none}
.breath-whale{box-shadow:none;border-radius:0}

.concert-preview{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(34px,6vw,90px);align-items:center;background:linear-gradient(180deg,#eef2eb 0%,#f7f1e8 100%);border-top:1px solid rgba(23,58,73,.08);border-bottom:1px solid rgba(23,58,73,.08)}
.concert-preview-copy{max-width:760px}
.concert-preview-copy p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:680px}
.concert-preview-meta{display:flex;flex-wrap:wrap;gap:10px 12px;margin:28px 0 18px}
.concert-preview-meta span{padding:10px 14px;border-radius:999px;border:1px solid rgba(23,58,73,.12);background:rgba(255,255,255,.55);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.concert-preview-card{background:rgba(255,255,255,.78);border:1px solid rgba(23,58,73,.12);border-radius:30px;padding:clamp(28px,4vw,42px);box-shadow:0 24px 60px rgba(18,44,54,.07)}
.concert-preview-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;opacity:.64;margin-bottom:18px}
.concert-preview-card h3{font-size:clamp(52px,6vw,92px);line-height:.88;margin-bottom:8px;color:#102f3b}
.concert-preview-subtitle{font-family:var(--serif);font-style:italic;font-size:clamp(28px,3vw,42px);margin-bottom:18px;color:#66574a}
.concert-preview-elements{font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin:0 0 22px;color:#6f6d62}
.concert-preview-text{font-size:15px;line-height:1.8;max-width:420px;margin-bottom:26px}

@media(max-width:900px){
  .concert-preview{grid-template-columns:1fr}
}
@media(max-width:560px){
  .concert-preview-meta{flex-direction:column;align-items:flex-start}
  .concert-preview-card h3{font-size:54px}
}


/* V5 payments */
.ticket-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.ticket-actions .button{min-width:220px}
@media(max-width:560px){.ticket-actions{flex-direction:column}.ticket-actions .button{width:100%}}


/* V7 · selector interactivo de lugares */
.seat-selection{background:#fffdfa}
.seat-legend{max-width:1100px;margin:-34px auto 34px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:18px 22px;border:1px solid rgba(23,58,73,.1);border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(18,44,54,.045)}
.seat-legend>div{display:grid;grid-template-columns:auto auto;column-gap:9px;align-items:center}
.seat-legend strong{font-size:12px;font-weight:500}.seat-legend small{grid-column:2;font-size:10px;opacity:.58;margin-top:2px}
.legend-shape{display:inline-block;grid-row:1/3;background:#f4ead8;border:1px solid rgba(23,58,73,.28);box-shadow:0 2px 8px rgba(23,58,73,.07)}
.legend-shape.chair{width:21px;height:21px;border-radius:50%}.legend-shape.mat{width:29px;height:17px;border-radius:7px;background:#aab49a}
.legend-status{margin-left:auto!important;display:flex!important;gap:7px!important;align-items:center!important;font-size:10px;text-transform:uppercase;letter-spacing:.1em;opacity:.72}
.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-left:8px}.legend-dot.selected{background:#173a49}.legend-dot.sold{background:#a7aaa4;opacity:.55}

.seat-map-shell{max-width:1120px;margin:0 auto;border-radius:30px;overflow:hidden;background:#18271f;box-shadow:0 30px 90px rgba(18,36,29,.16);border:1px solid rgba(23,58,73,.1)}
.seat-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;color:#f6f0e3;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.12)}
.seat-map-toolbar>div{display:flex;align-items:center;gap:14px}.seat-map-kicker{font-size:9px;letter-spacing:.18em;opacity:.62}.seat-map-toolbar strong{font-size:12px;font-weight:400}.seat-map-mobile-hint{font-size:9px;letter-spacing:.1em;text-transform:uppercase;opacity:.52}
.seat-map-viewport{overflow:auto;-webkit-overflow-scrolling:touch;background:#253321;scrollbar-width:thin}
.seat-map-canvas{position:relative;width:100%;min-width:780px;aspect-ratio:1/1}
.seat-map-canvas>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.seat-hotspots{position:absolute;inset:0;z-index:2}
.seat-spot{position:absolute;transform:translate(-50%,-50%);z-index:3;border:1px solid rgba(16,47,59,.62);color:#123344;background:rgba(255,250,239,.90);backdrop-filter:blur(4px);box-shadow:0 3px 12px rgba(22,44,35,.18);font-family:var(--sans);font-size:8px;font-weight:600;letter-spacing:.02em;cursor:pointer;display:grid;place-items:center;transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease,opacity .16s ease}
.seat-spot:hover{transform:translate(-50%,-50%) scale(1.16);z-index:5;box-shadow:0 6px 18px rgba(16,47,59,.25)}
.seat-spot.chair-seat{width:31px;height:31px;border-radius:50%}
.seat-spot.mat-seat{width:42px;height:27px;border-radius:9px;background:rgba(223,229,211,.94)}
.seat-spot.is-selected{background:#173a49;color:#f7f1e6;border-color:#f5e8ce;transform:translate(-50%,-50%) scale(1.18);box-shadow:0 0 0 4px rgba(255,250,239,.78),0 8px 24px rgba(16,47,59,.35);z-index:6}
.seat-spot.is-sold{background:rgba(89,94,88,.6);color:rgba(255,255,255,.76);border-color:rgba(255,255,255,.16);opacity:.68;cursor:not-allowed;text-decoration:line-through}

.seat-detail{max-width:900px;margin:34px auto 0;padding:28px 30px;border-radius:28px;background:#fff;border:1px solid rgba(23,58,73,.10);box-shadow:0 22px 60px rgba(18,44,54,.055);display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}
.seat-detail-label{font-size:9px;letter-spacing:.18em;text-transform:uppercase;opacity:.5}.seat-detail-main>p{font-family:var(--serif);font-style:italic;font-size:30px;color:#102f3b;margin:8px 0 10px}.seat-detail-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.seat-detail-meta span,.seat-detail-meta strong{padding:8px 12px;border:1px solid rgba(23,58,73,.12);border-radius:999px;font-size:11px;font-weight:400}.seat-detail-meta strong{background:#eef1eb;color:#173a49}
.seat-detail .ticket-actions{display:flex;flex-direction:column;gap:10px;min-width:250px}.seat-detail>small{grid-column:1/-1;line-height:1.7;opacity:.56;font-size:10px;border-top:1px solid rgba(23,58,73,.08);padding-top:14px}

@media(max-width:900px){
  .seat-detail{grid-template-columns:1fr}.seat-detail .ticket-actions{min-width:0;flex-direction:row}.seat-detail .ticket-actions .button{flex:1}.legend-status{margin-left:0!important;width:100%;padding-top:8px;border-top:1px solid rgba(23,58,73,.08)}
}
@media(max-width:560px){
  .seat-legend{margin-top:-18px;padding:15px}.seat-map-shell{margin-left:-4px;margin-right:-4px;border-radius:22px}.seat-map-toolbar{align-items:flex-start;flex-direction:column;gap:6px;padding:14px 16px}.seat-map-canvas{min-width:760px}.seat-spot.chair-seat{width:29px;height:29px}.seat-spot.mat-seat{width:39px;height:25px}.seat-detail{padding:22px 18px}.seat-detail-main>p{font-size:26px}.seat-detail .ticket-actions{flex-direction:column}.seat-detail-meta{gap:7px}
}


/* V8 · noche cálida para conciertos */
.concert-page{
  background:
    radial-gradient(circle at 12% 18%, rgba(214,132,66,.14), transparent 24%),
    radial-gradient(circle at 84% 14%, rgba(208,167,88,.11), transparent 22%),
    radial-gradient(circle at 50% 80%, rgba(42,83,76,.16), transparent 28%),
    linear-gradient(180deg, #12181d 0%, #182127 18%, #1c2622 34%, #1a2421 48%, #18211f 62%, #12181d 100%);
  color:#f2eadc;
}
.concert-page .grain{opacity:.22;mix-blend-mode:soft-light}
.concert-page .site-header{background:rgba(17,22,26,.78);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,236,200,.08)}
.concert-page .site-header .nav a,.concert-page .site-header .brand,.concert-page .site-header .menu-toggle{color:#f1e6d4}
.concert-page .header-ticket{background:#c78b58;color:#fff6e9;border-color:rgba(255,255,255,.1)}
.concert-page .header-ticket:hover{background:#d29b6c}
.concert-page .concert{
  background:
    radial-gradient(circle at 22% 22%, rgba(207,148,82,.16), transparent 24%),
    radial-gradient(circle at 80% 20%, rgba(86,125,107,.12), transparent 20%),
    linear-gradient(180deg, rgba(15,19,22,.96) 0%, rgba(22,29,31,.94) 55%, rgba(28,36,31,.92) 100%);
  color:#f2eadc;
}
.concert-page .concert h2,.concert-page .element h3,.concert-page .ticket-summary p,.concert-page .seat-detail-main>p{color:#fff5e6}
.concert-page .presenta,.concert-page .concert-subtitle{color:#dec3a5}
.concert-note{color:#dbc9b4}
.concert-page .elements-line{color:#d1ba96}
.concert-page .concert-meta span{background:rgba(255,244,225,.08);border-color:rgba(255,232,195,.15);color:#f0e2cf}
.concert-page .concert-photo{background:rgba(255,246,234,.05);border:1px solid rgba(255,232,195,.14);box-shadow:0 30px 70px rgba(0,0,0,.28)}
.concert-page .concert-photo figcaption{color:#d8cbb7}
.concert-page .button.cream{background:#c78b58;color:#fff8ed}
.concert-page .button.cream:hover{background:#d49a67}
.concert-page .experience{background:linear-gradient(180deg, rgba(22,29,31,.95) 0%, rgba(30,38,35,.96) 100%); color:#f1eadf}
.concert-page .experience .eyebrow,.concert-page .release-panel .eyebrow,.concert-page .seed-panel .eyebrow,.concert-page .section-heading .eyebrow,.concert-page .personal .eyebrow{color:#d1b892}
.concert-page .experience-lead>p:not(.eyebrow){color:#d9cfbf}
.concert-page .element{border-color:rgba(255,232,195,.12);box-shadow:0 20px 50px rgba(0,0,0,.18);color:#f2eadc}
.concert-page .element p{color:#e8dbc8;opacity:.9}
.concert-page .element.air{background:linear-gradient(180deg,#44545a,#314047)}
.concert-page .element.space{background:linear-gradient(180deg,#4a403c,#372f2e)}
.concert-page .element.earth{background:linear-gradient(180deg,#6b5a45,#4e4134)}
.concert-page .element.water{background:linear-gradient(180deg,#38505f,#283846)}
.concert-page .element.fire{background:linear-gradient(180deg,#7b533f,#5a392d)}
.concert-page .release-seed{background:linear-gradient(180deg, rgba(25,32,31,.96) 0%, rgba(20,26,29,.96) 100%)}
.concert-page .release-panel,.concert-page .seed-panel{border:1px solid rgba(255,232,195,.1);box-shadow:0 24px 50px rgba(0,0,0,.18)}
.concert-page .release-panel{background:linear-gradient(180deg,#2c3b38,#202d2b);color:#f4e8d9}
.concert-page .seed-panel{background:linear-gradient(180deg,#5b4538,#413028);color:#fff1e2}
.concert-page .release-note{color:#e0d2bd}
.concert-page .tickets{background:linear-gradient(180deg, rgba(19,25,29,.98) 0%, rgba(22,29,31,.98) 100%); color:#f1eadf}
.concert-page .seat-selection .section-heading p:not(.eyebrow){color:#dbcdb8}
.concert-page .seat-legend{background:rgba(255,247,235,.08);border-color:rgba(255,232,195,.12);box-shadow:0 18px 38px rgba(0,0,0,.18);color:#f1eadf}
.concert-page .legend-shape{border-color:rgba(255,232,195,.24);box-shadow:none}
.concert-page .legend-shape.chair{background:#f4dfc0}
.concert-page .legend-shape.mat{background:#8e9b7a}
.concert-page .legend-status{border-top-color:rgba(255,232,195,.08)}
.concert-page .legend-dot.selected{background:#d09a67}
.concert-page .seat-map-shell{background:#151d20;border-color:rgba(255,232,195,.12);box-shadow:0 35px 90px rgba(0,0,0,.38)}
.concert-page .seat-map-toolbar{color:#f8ecda;border-bottom-color:rgba(255,232,195,.10)}
.concert-page .seat-map-viewport{background:#1c2622}
.concert-page .seat-spot{background:rgba(255,245,227,.92);color:#21343a;border-color:rgba(255,236,210,.3)}
.concert-page .seat-spot.mat-seat{background:rgba(187,201,170,.92)}
.concert-page .seat-spot.is-selected{background:#c78b58;color:#fff8ef;border-color:#ffdfb9;box-shadow:0 0 0 4px rgba(255,239,214,.28),0 10px 24px rgba(0,0,0,.34)}
.concert-page .seat-spot.is-sold{background:rgba(112,114,109,.5);color:rgba(255,255,255,.68);border-color:rgba(255,255,255,.12)}
.concert-page .seat-detail{background:rgba(255,247,235,.08);border-color:rgba(255,232,195,.12);box-shadow:0 26px 64px rgba(0,0,0,.24)}
.concert-page .seat-detail-meta span,.concert-page .seat-detail-meta strong{background:rgba(255,250,244,.08);border-color:rgba(255,232,195,.13);color:#f3e8d8}
.concert-page .seat-detail-meta strong{background:rgba(199,139,88,.18);color:#ffe8cf}
.concert-page .seat-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.concert-page .seat-list span{padding:8px 12px;border-radius:999px;background:rgba(199,139,88,.16);border:1px solid rgba(255,223,185,.16);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#ffe8cf}
.concert-page .seat-detail>small{border-top-color:rgba(255,232,195,.08);color:#d1c1aa}
.concert-page .ticket-actions .button.primary{background:#c78b58;color:#fff8ed;border-color:#d49a67}
.concert-page .ticket-actions .button.primary:hover{background:#d59c6a}
.concert-page .ticket-actions .button.ghost{background:transparent;color:#f4e6d1;border-color:rgba(255,232,195,.22)}
.concert-page .ticket-actions .button.ghost:hover{background:rgba(255,247,235,.08)}
.concert-page .personal{background:linear-gradient(180deg, rgba(30,38,35,.96) 0%, rgba(19,24,28,.98) 100%); color:#f2eadc}
.concert-page .personal-copy p:not(.eyebrow){color:#d9cfbf}
.concert-page .footer{background:#12181d;color:#f0e6d8}
.concert-page .footer a{color:#f0e6d8}


/* V9 · velas / oscilaciones cálidas */
.concert-page{position:relative;overflow-x:hidden}
.concert-page .site-header,
.concert-page main,
.concert-page .footer{position:relative;z-index:2}
.concert-page .grain{z-index:0}
.candle-field{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.candle-glow{
  position:absolute;
  width:18px;
  height:18px;
  border-radius:999px;
  opacity:.36;
  background:radial-gradient(circle, rgba(255,245,219,.95) 0%, rgba(240,164,92,.88) 16%, rgba(187,58,34,.54) 38%, rgba(187,58,34,0) 72%);
  box-shadow:
    0 0 12px rgba(255,213,156,.52),
    0 0 24px rgba(236,136,74,.34),
    0 0 44px rgba(176,41,34,.22),
    0 0 84px rgba(255,175,92,.14);
  filter: blur(.2px);
  animation: candlePulse 4.8s ease-in-out infinite, candleFloat 9s ease-in-out infinite;
  transform-origin:center;
}
.candle-glow::before{
  content:'';
  position:absolute;
  inset:-16px;
  border-radius:inherit;
  background:radial-gradient(circle, rgba(255,206,118,.22) 0%, rgba(255,206,118,.08) 42%, rgba(255,206,118,0) 74%);
  animation: candleHalo 5.6s ease-in-out infinite;
}
.glow-1{top:12%;left:6%;animation-delay:.2s,0s}
.glow-2{top:18%;right:9%;animation-delay:1.4s,-2s}
.glow-3{top:36%;left:8%;animation-delay:2.3s,-1s}
.glow-4{top:43%;right:7%;animation-delay:.8s,-3s}
.glow-5{top:60%;left:10%;animation-delay:1.7s,-1.6s}
.glow-6{top:68%;right:8%;animation-delay:2.8s,-4.4s}
.glow-7{top:79%;left:12%;animation-delay:1.1s,-2.8s}
.glow-8{top:84%;right:13%;animation-delay:3.1s,-5.1s}
.glow-9{top:56%;left:48%;width:22px;height:22px;animation-delay:2.1s,-2.2s}
.glow-10{top:29%;right:40%;width:16px;height:16px;animation-delay:.6s,-3.7s}

.concert-page .concert-photo,
.concert-page .seat-map-shell,
.concert-page .seat-detail,
.concert-page .release-panel,
.concert-page .seed-panel{
  position:relative;
}
.concert-page .concert-photo::after,
.concert-page .seat-map-shell::after,
.concert-page .seat-detail::after,
.concert-page .release-panel::after,
.concert-page .seed-panel::after{
  content:'';
  position:absolute;
  inset:auto;
  width:160px;
  height:160px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,194,122,.10) 0%, rgba(188,65,39,.08) 30%, rgba(188,65,39,0) 74%);
  filter:blur(14px);
  pointer-events:none;
  animation:warmOscillation 7.5s ease-in-out infinite;
}
.concert-page .concert-photo::after{bottom:-24px;left:-20px}
.concert-page .seat-map-shell::after{bottom:-30px;right:-20px}
.concert-page .seat-detail::after{top:-22px;right:8%}
.concert-page .release-panel::after{bottom:-10px;right:6%}
.concert-page .seed-panel::after{top:-12px;left:6%}

@keyframes candlePulse{
  0%,100%{opacity:.22;transform:scale(.92)}
  18%{opacity:.34;transform:scale(1)}
  38%{opacity:.46;transform:scale(1.08)}
  55%{opacity:.29;transform:scale(.96)}
  78%{opacity:.52;transform:scale(1.12)}
}
@keyframes candleFloat{
  0%,100%{translate:0 0}
  25%{translate:3px -8px}
  50%{translate:-2px -4px}
  75%{translate:4px -10px}
}
@keyframes candleHalo{
  0%,100%{opacity:.45;transform:scale(.95)}
  50%{opacity:.9;transform:scale(1.12)}
}
@keyframes warmOscillation{
  0%,100%{opacity:.48;transform:scale(.96)}
  50%{opacity:.88;transform:scale(1.12)}
}

@media (max-width: 700px){
  .candle-glow{opacity:.28}
  .glow-9,.glow-10{display:none}
}

@media (prefers-reduced-motion: reduce){
  .candle-glow,
  .candle-glow::before,
  .concert-page .concert-photo::after,
  .concert-page .seat-map-shell::after,
  .concert-page .seat-detail::after,
  .concert-page .release-panel::after,
  .concert-page .seed-panel::after{
    animation:none !important;
  }
}
