/* Shared additions for full VEVE pages; the original site remains the shell. */
.page-main{padding-top:34px;min-height:75vh}
.page-main>.section:first-child{padding-top:70px}
.page-main .page-intro{max-width:850px;margin-bottom:46px}
.page-title{font-family:var(--headline);font-weight:400;text-transform:uppercase;font-size:clamp(42px,6.5vw,82px);line-height:1.02;letter-spacing:-.02em;margin:16px 0 24px;overflow-wrap:anywhere}
.page-intro>p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.8;max-width:690px}
.nav-left a[aria-current=page],.nav-mobile a[aria-current=page],.header-book[aria-current=page]{color:var(--bright);text-decoration:underline;text-underline-offset:7px}
.mix-filters{display:flex;gap:25px;flex-wrap:wrap;padding-bottom:23px;border-bottom:1px solid var(--line);margin-bottom:30px}
.page-main .mix-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.page-main .mix-card{min-width:0;display:flex;flex-direction:column}
.page-main .card-art{display:block;width:100%;aspect-ratio:16/10;text-decoration:none;overflow:hidden}
.page-main .card-art>img{width:100%;height:100%;object-fit:cover}
.page-main .mix-card .card-copy{display:flex;flex:1;flex-direction:column}
.page-main .mix-card h2{font-family:var(--headline);font-weight:400;font-size:21px;line-height:1.25;letter-spacing:.01em;margin:8px 0 13px;text-transform:uppercase;overflow-wrap:anywhere}
.page-main .mix-title-link{font:inherit;text-decoration:none;display:inline;color:var(--white)}
.page-main .mix-title-link:hover{color:var(--bright)}
.page-main .card-description{font-size:12px;line-height:1.7;margin-bottom:23px;overflow-wrap:anywhere}
.platform-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.page-main .card-copy>.platform-links{margin-top:auto;padding-top:10px;gap:12px}
.page-main .card-copy .platform-links .text-link{font-size:9px;letter-spacing:.04em}
.page-main .card-art .mini-play{pointer-events:none}
.page-main .type-art{height:100%;min-height:190px;display:grid;place-items:center;background:radial-gradient(ellipse at 75% 30%,#7830af80,transparent 60%),linear-gradient(145deg,#1f1232,#090510);text-align:center;font-family:var(--headline);font-size:55px;color:var(--bright)}
.page-main .type-art small{font-family:var(--body);font-size:10px;display:block;letter-spacing:.13em;text-transform:uppercase;margin-top:10px;color:var(--muted)}
.mix-detail .page-intro{margin-bottom:30px;max-width:1000px}
.mix-detail .page-title{font-size:clamp(35px,5.4vw,66px);max-width:1000px}
.mix-duration{font-size:12px!important;text-transform:uppercase;letter-spacing:.14em;color:var(--bright)!important}
.detail-player{position:relative;width:100%;aspect-ratio:16/9;border:1px solid var(--line);background:#050208;box-shadow:0 22px 100px #0008}
.detail-player iframe{display:block;width:100%;height:100%;border:0}
.detail-player.audio{aspect-ratio:auto;height:450px}
.player-help{color:var(--muted);font-size:12px;margin:20px 0}
.more-mixes{margin-top:40px}
.back-link{margin-bottom:25px;display:inline-flex}
.page-booking-cta{border-top:1px solid var(--line)}
.about-section .about-layout{grid-template-columns:.85fr 1.15fr;gap:70px}
.about-section .page-intro{margin:0}
.page-main .about-copy{padding-top:20px}
.page-main .gallery-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:36px}
.page-main .gallery-row figure{margin:0;min-width:0}
.page-main .gallery-row img{display:block;aspect-ratio:4/3;width:100%;object-fit:cover;object-position:50% 0}
.page-main .gallery-row figcaption{font-size:12px;line-height:1.8;margin-top:15px;color:var(--muted)}
.page-main .gallery-row figcaption a{display:inline-flex;margin:12px 0}
.booking-page{min-height:calc(90svh - 100px)}
.booking-page .page-intro{margin:0 auto 36px;max-width:800px}
.booking-page .page-intro>p{margin-inline:auto}
.booking-details{max-width:650px;margin:0 auto 32px;padding:27px 32px;text-align:left;border:1px solid var(--line);background:#140b20b3}
.booking-details h2{font-family:var(--headline);font-size:23px;font-weight:400;text-transform:uppercase;margin:0 0 14px}
.booking-details p{color:var(--muted);font-size:14px;line-height:1.8;margin:12px 0 0}
.booking-page .booking-actions{flex-direction:row-reverse}
.booking-page #booking-open{background:var(--violet);color:#100719;border-color:var(--violet)}
.booking-note a{color:var(--bright);text-underline-offset:4px}
@media(max-width:1000px){.page-main .mix-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-section .about-layout{gap:35px}}
@media(max-width:760px){.page-main{padding-top:15px}.page-main>.section:first-child{padding-top:46px}.page-main .page-intro{margin-bottom:30px}.page-intro>p:not(.eyebrow){font-size:14px}.page-title{font-size:48px}.mix-filters{gap:23px;margin-bottom:23px}.page-main .mix-grid{gap:20px}.page-main .mix-card h2{font-size:19px}.page-main .card-copy .platform-links{gap:16px}.page-main .card-copy .platform-links .text-link{font-size:9px}.about-section .about-layout{grid-template-columns:1fr;gap:7px}.page-main .about-copy{padding-top:0}.page-main .gallery-row{grid-template-columns:1fr}.booking-details{padding:22px}.mix-detail .page-title{font-size:36px}.detail-player.audio{height:370px}}
@media(max-width:500px){.page-main .mix-grid{grid-template-columns:1fr}.page-main .mix-card h2{font-size:22px}.page-main .card-art{aspect-ratio:16/9}.page-main .type-art{min-height:200px}.page-main .card-copy .platform-links .text-link{font-size:10px}.page-main .mix-card .card-copy{padding:23px}.mix-detail .page-title{font-size:32px}.mix-filters{justify-content:space-between}}
