@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=DM+Sans:wght@400;600;700;900&display=swap');
:root{--purple:#411a56;--pink:#ec4c9a;--pale:#ffd8e6;--lime:#d6f27b;--orange:#ff743d;--sky:#8ddff2;--cream:#fff9f1;--shadow:8px 8px 0 var(--purple)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--purple);font-family:"DM Sans",sans-serif;line-height:1.55}img{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button,a{cursor:pointer}.site-header{position:sticky;z-index:50;top:0;display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1rem,4vw,4rem);border-bottom:3px solid var(--purple);background:rgba(255,249,241,.95);backdrop-filter:blur(10px)}.brand{display:inline-flex;flex-direction:column;text-decoration:none;font:900 1.15rem/1 "Archivo Black",sans-serif;color:var(--purple)}.brand small{margin-top:.25rem;color:var(--pink);letter-spacing:.16em}.nav{display:flex;align-items:center;gap:1.5rem}.nav a{color:inherit;font-weight:900;text-decoration:none}.menu-button{display:none;border:0;background:none;font-size:1.8rem}.section{position:relative;padding:clamp(4rem,8vw,8rem) max(1.2rem,calc((100vw - 1180px)/2));overflow:hidden}.hero{min-height:86vh;display:grid;grid-template-columns:1.05fr .85fr;align-items:center;gap:6vw}.hero h1,.section-title,.sales-number,.checkout-modal h2{margin:.2rem 0;font:900 clamp(3.8rem,8vw,8.5rem)/.84 "Archivo Black",sans-serif;letter-spacing:-.065em}.hero h1 span,.section-title span{color:var(--pink)}.lede{max-width:38rem;font-size:clamp(1.15rem,2vw,1.45rem)}.eyebrow{margin:0 0 1rem;color:var(--pink);font-weight:900;letter-spacing:.18em;text-transform:uppercase;font-size:.78rem}.eyebrow.lime{color:var(--lime)}.eyebrow.purple{color:var(--purple)}.hero-frame{aspect-ratio:4/5;overflow:hidden;border:5px solid var(--purple);border-radius:48% 48% 3rem 3rem;box-shadow:18px 18px 0 var(--pink);transform:rotate(2deg);background:var(--pink)}.hero-frame img{width:100%;height:100%;object-fit:cover}.blob{position:absolute;border-radius:999px;opacity:.55;z-index:-1}.blob-a{width:25rem;height:25rem;background:var(--sky);left:-10rem;top:8rem}.blob-b{width:20rem;height:20rem;background:var(--lime);right:-6rem;bottom:-5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.95rem 1.35rem;border:3px solid var(--purple);border-radius:999px;background:var(--pink);box-shadow:4px 4px 0 var(--purple);font-weight:900;text-decoration:none;color:var(--purple);transition:.15s}.btn:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--purple)}.btn-outline{background:var(--cream)}.btn-small{padding:.65rem 1rem;font-size:.88rem}.button-row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.marquee{overflow:hidden;border-block:4px solid var(--purple);background:var(--lime);padding:1rem 0;font:900 1.2rem "Archivo Black",sans-serif;white-space:nowrap}.marquee div{width:max-content;animation:marquee 22s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.split,.sales,.frame-section,.support{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,7rem);align-items:center}.section-title{font-size:clamp(3rem,6vw,6.3rem)}.section-title.light{color:var(--cream)}.big-copy{font-size:clamp(1.5rem,3vw,2.3rem);font-weight:900;line-height:1.2}.dark{background:var(--purple);color:var(--cream)}.tour-list{margin-top:3rem;border-top:2px solid rgba(255,255,255,.4)}.tour-row{display:grid;grid-template-columns:1fr 2fr auto;gap:2rem;align-items:center;padding:1.4rem 0;border-bottom:2px solid rgba(255,255,255,.3)}.tour-row time{font-weight:900;color:var(--lime)}.tour-row h3,.tour-row p{margin:.15rem 0}.sold-out{font-weight:900;color:var(--pink);text-transform:uppercase}.sales{background:var(--pale)}.sales-number{font-size:clamp(4rem,9vw,9rem)}.sales-label{font:900 1.3rem "Archivo Black";letter-spacing:.14em}.roll-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin:2rem 0 4rem}.roll-grid div,.continent-grid div{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:2px solid var(--purple);border-radius:1rem;background:white}.subhead{margin-top:3rem;font:900 1.5rem "Archivo Black"}.continent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.continent-grid div{flex-direction:column;background:var(--sky)}.pink{background:var(--pink)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:3rem}.guest-card,.news-card,.review-card{overflow:hidden;border:3px solid var(--purple);border-radius:1.5rem;background:var(--cream);box-shadow:var(--shadow)}.guest-card img,.news-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.guest-card div,.news-card div{padding:1.25rem}.guest-card h3,.news-card h3{margin:.3rem 0;font:900 1.35rem "Archivo Black"}.guest-card p{margin:0;color:var(--pink);font-weight:900}.news-grid{grid-template-columns:repeat(2,1fr)}.news-card{display:grid;grid-template-columns:.8fr 1.2fr}.news-card img{height:100%;aspect-ratio:auto}.text-link{padding:0;border:0;background:none;color:var(--pink);font-weight:900}.sky{background:var(--sky)}.media-grid{grid-template-columns:repeat(2,1fr)}.media-card{position:relative;min-height:22rem;overflow:hidden;padding:0;border:3px solid var(--purple);border-radius:2rem;background:var(--purple);text-align:left;box-shadow:var(--shadow)}.media-card>img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.72}.media-copy{position:absolute;inset:auto 0 0;padding:2rem;color:white;background:linear-gradient(transparent,rgba(65,26,86,.95));display:flex;flex-direction:column}.media-copy strong{font:900 1.5rem "Archivo Black"}.play{position:absolute;left:2rem;top:2rem;display:grid;width:4rem;height:4rem;place-items:center;border:3px solid var(--purple);border-radius:50%;background:var(--lime);font-size:1.4rem}.upload{position:relative;overflow:hidden}.upload input{position:absolute;inset:0;opacity:0}.frame-section .btn{margin:.5rem .5rem .5rem 0}#frame-canvas{width:100%;border:4px solid var(--purple);border-radius:2.2rem;box-shadow:var(--shadow);background:var(--pink)}.lime-bg{background:var(--lime)}.review-pages{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:3rem}.review-card{padding:1.5rem}.review-card blockquote{margin:1rem 0;font-size:1.15rem;font-weight:700}.review-card small{display:block}.stars{color:var(--pink);letter-spacing:.1em}.pagination{display:flex;justify-content:center;gap:.5rem;margin:2rem}.pagination button{width:2.5rem;height:2.5rem;border:2px solid var(--purple);border-radius:50%;background:var(--cream);font-weight:900}.pagination button.active{background:var(--pink)}.review-form{max-width:850px;margin:3rem auto 0;padding:2rem;border:3px solid var(--purple);border-radius:2rem;background:var(--cream);box-shadow:var(--shadow)}.review-form h3{font:900 2rem "Archivo Black";margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-grid label{font-weight:900}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;margin-top:.35rem;padding:.8rem;border:2px solid var(--purple);border-radius:.8rem;background:white}.form-grid textarea{min-height:7rem;resize:vertical}.support{background:var(--purple);color:var(--cream)}.support-links{display:grid;gap:1rem}.support-card{display:flex;flex-direction:column;padding:1.5rem;border:3px solid var(--purple);border-radius:1.5rem;background:var(--lime);box-shadow:8px 8px 0 var(--pink);color:var(--purple);text-decoration:none}.support-card strong{font:900 1.4rem "Archivo Black"}.footer{padding:3rem max(1.2rem,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;background:var(--pale);border-top:3px solid var(--purple)}.footer p{grid-column:1}.footer nav{grid-column:2;grid-row:1/3;display:flex;gap:1rem;flex-wrap:wrap}.footer nav button{border:0;background:none;font-weight:900;text-decoration:underline}.modal{width:min(680px,calc(100% - 2rem));max-height:92vh;overflow:auto;padding:2rem;border:4px solid var(--purple);border-radius:2rem;background:var(--cream);box-shadow:12px 12px 0 var(--pink)}.modal::backdrop{background:rgba(34,10,49,.78)}.modal-close{position:sticky;z-index:2;float:right;top:0;width:2.8rem;height:2.8rem;border:2px solid var(--purple);border-radius:50%;background:var(--pink);font-size:1.5rem;font-weight:900}.wide-modal img{width:100%;max-height:24rem;object-fit:cover;border-radius:1.2rem}.wide-modal h2,.modal h2{font:900 clamp(2rem,5vw,4rem)/.95 "Archivo Black";letter-spacing:-.04em}.checkout-modal{width:min(1000px,calc(100% - 2rem))}.disclaimer,.save-warning{padding:1rem;border:2px solid var(--purple);border-radius:1rem;background:var(--lime);font-weight:800}.artist-picker{margin:1.5rem 0;border:2px solid var(--purple);border-radius:1rem}.artist-picker legend{font-weight:900}.artist-picker>div{display:grid;grid-template-columns:repeat(5,1fr);gap:.7rem}.artist-picker label{display:block;text-align:center;font-size:.75rem;font-weight:900}.artist-picker input{position:absolute;opacity:0}.artist-picker img{aspect-ratio:1;object-fit:cover;border:4px solid transparent;border-radius:1rem}.artist-picker input:checked+img{border-color:var(--pink)}.checkout-support{margin-top:2rem;padding:1.5rem;border-radius:1.2rem;background:var(--pale)}.checkout-support a{display:inline-block;margin-right:1rem;color:var(--purple);font-weight:900}.ticket-screen{padding-top:1rem}.ticket{display:grid;grid-template-columns:1fr 13rem;overflow:hidden;margin:1rem 0;border:4px solid var(--purple);border-radius:2rem;background:var(--pale);box-shadow:10px 10px 0 var(--pink)}.ticket-main{padding:2rem}.ticket-main>small{color:var(--pink);font-weight:900;letter-spacing:.2em}.ticket-main h2{font-size:clamp(3rem,7vw,6rem);margin:1rem 0}.ticket-details{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;padding-top:1.5rem;border-top:2px dashed rgba(65,26,86,.4)}.ticket-details div{display:flex;flex-direction:column}.ticket-details small{color:var(--pink);font-weight:900;letter-spacing:.14em}.ticket-main code{display:block;margin-top:2rem}.ticket-stub{padding:1.5rem;border-left:4px dashed var(--purple);background:var(--lime);display:flex;flex-direction:column;justify-content:space-around;align-items:center;text-align:center;font:900 1.8rem "Archivo Black"}.ticket-art{display:grid;width:8rem;height:8rem;place-items:center;overflow:hidden;border:4px solid white;border-radius:1.5rem;background:white repeating-linear-gradient(45deg,#411a56 0,#411a56 8px,transparent 8px,transparent 16px)}.ticket-art img{width:6.5rem;height:6.5rem;object-fit:cover;border-radius:1rem}.simple-page{min-height:65vh;padding:5rem max(1rem,calc((100vw - 900px)/2))}
@media(max-width:900px){.hero,.split,.sales,.frame-section,.support{grid-template-columns:1fr}.hero-frame{max-width:550px}.roll-grid{grid-template-columns:repeat(2,1fr)}.continent-grid,.card-grid,.review-pages{grid-template-columns:1fr 1fr}.artist-picker>div{grid-template-columns:repeat(3,1fr)}.ticket{grid-template-columns:1fr}.ticket-stub{border-left:0;border-top:4px dashed var(--purple);flex-direction:row}}
@media(max-width:640px){.menu-button{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;padding:1.2rem;background:var(--cream);border-bottom:3px solid var(--purple);flex-direction:column}.nav.open{display:flex}.hero{min-height:auto}.hero h1{font-size:3.8rem}.card-grid,.review-pages,.news-card,.roll-grid,.continent-grid,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.tour-row{grid-template-columns:1fr}.footer{grid-template-columns:1fr}.footer p,.footer nav{grid-column:1;grid-row:auto}.artist-picker>div{grid-template-columns:repeat(2,1fr)}.ticket-details{grid-template-columns:1fr}.ticket-main{padding:1.2rem}}
@media print{body *{visibility:hidden}.ticket,.ticket *{visibility:visible}.ticket{position:fixed;inset:0;width:100%;box-shadow:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Faithful WordPress port of the supplied Positivity Tour frontend */
.site-header{position:fixed;inset:0 0 auto;z-index:50;padding:1rem;background:transparent;border:0;backdrop-filter:none}.header-pill{width:min(1280px,100%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.5rem;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(255,249,241,.9);box-shadow:0 12px 50px rgba(76,28,72,.12);backdrop-filter:blur(18px)}.brand-inline{display:block;font-size:1.45rem}.brand-inline span{color:var(--pink)}.header-pill .nav{gap:1.25rem;font-size:.78rem}.header-ticket{padding:.7rem 1.25rem;border:0;border-radius:999px;background:var(--purple);color:white;font-weight:900}.header-ticket:hover{background:var(--pink)}
.hero{min-height:100vh;padding-top:8rem;background:var(--pale);grid-template-columns:.9fr 1.1fr}.hero-badge{display:inline-flex;padding:.55rem 1rem;border:2px solid var(--purple);border-radius:999px;background:var(--lime);font-size:.8rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;transform:rotate(-2deg)}.hero h1{font-size:clamp(4.2rem,10vw,9.5rem);line-height:.76}.hero h1 span,.hero h1 em{display:block}.hero h1 em{color:transparent;font-style:normal;-webkit-text-stroke:3px var(--purple)}.hero .lede{color:#5e4667;font-weight:600}.hero-primary{background:var(--purple);color:white;box-shadow:6px 6px 0 var(--pink)}.play-mini{display:grid;width:2.25rem;height:2.25rem;place-items:center;border-radius:50%;background:var(--lime)}.hero-visual{position:relative;width:100%;max-width:620px;margin:auto}.city-sticker{position:absolute;left:-.5rem;bottom:-1.2rem;padding:.75rem 1.15rem;border-radius:1rem;background:var(--lime);box-shadow:5px 5px 0 var(--purple);font:900 1.3rem "Archivo Black";transform:rotate(-7deg)}.tour-sticker{position:absolute;right:-.5rem;top:2.5rem;display:grid;width:6rem;height:6rem;place-items:center;border-radius:50%;background:var(--orange);box-shadow:5px 5px 0 var(--purple);color:white;text-align:center;font-weight:900;transform:rotate(12deg)}
.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:2rem}.about-stats div{padding:1rem;border-radius:1.5rem;background:var(--pale)}.about-stats b{display:block;color:var(--pink);font:900 2.4rem "Archivo Black"}.about-stats span{display:block;font-size:.72rem;font-weight:900;text-transform:uppercase}.sales{display:block;background:var(--sky)}.ticket-love-card{display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden;border:3px solid var(--purple);border-radius:2.75rem;background:var(--cream);box-shadow:12px 12px 0 var(--purple)}.ticket-love-card>div{padding:clamp(2rem,5vw,4rem)}.ticket-love-card .sales-number{font-size:clamp(4.5rem,10vw,9rem);line-height:.8}.ticket-love-card>div>h3{color:var(--pink);font:900 clamp(2.5rem,5vw,4.8rem)/.9 "Archivo Black";text-transform:uppercase}.ticket-love-cta{display:flex;flex-direction:column;justify-content:center;background:var(--lime)}.ticket-love-cta small{font-weight:900;text-transform:uppercase;letter-spacing:.16em}.ticket-love-cta h3{color:var(--purple)!important;font-size:clamp(2rem,4vw,3.5rem)!important}.roll-call-section{background:var(--sky)}.roll-panel{padding:2rem;border-radius:2.5rem;background:var(--purple)}.roll-grid{margin:0}.roll-grid div{border:0;background:rgba(255,255,255,.07);color:white}.roll-grid strong{color:var(--lime)}
.watch-section{background:var(--sky)}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:2rem}.section-heading-row p{max-width:28rem;font-weight:700;color:#5e4667}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:3rem}.highlight-grid button{position:relative;overflow:hidden;padding:0;border:0;border-radius:2rem;background:var(--purple);text-align:left}.highlight-grid button:nth-child(2){transform:translateY(-1.2rem)}.highlight-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:.4s}.highlight-grid button:hover img{transform:scale(1.05)}.highlight-grid button:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(65,26,86,.95))}.highlight-play{position:absolute;z-index:2;right:1.25rem;top:1.25rem;display:grid;width:3.5rem;height:3.5rem;place-items:center;border-radius:50%;background:var(--lime)}.highlight-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:1.5rem;color:white}.highlight-copy strong,.highlight-copy small{display:block}.highlight-copy strong{font:900 1.8rem "Archivo Black"}
.pink{background:var(--pale)}.support{background:var(--orange)}.footer{background:#2a1138;color:rgba(255,255,255,.7);border:0}.footer .brand,.footer nav button{color:white}
@media(max-width:1100px){.header-pill .nav{display:none}.menu-button{display:grid}.header-ticket{margin-left:auto}}
@media(max-width:900px){.ticket-love-card{grid-template-columns:1fr}.highlight-grid{grid-template-columns:1fr 1fr}.hero{grid-template-columns:1fr}.hero-visual{margin-top:2rem}}
@media(max-width:640px){.hero h1{font-size:4.1rem}.about-stats,.highlight-grid{grid-template-columns:1fr}.highlight-grid button:nth-child(2){transform:none}.section-heading-row{align-items:start;flex-direction:column}.city-sticker{font-size:.9rem}.tour-sticker{width:5rem;height:5rem}.roll-panel{padding:1rem}}

/* Exact section system from the canonical tour frontend */
.tour-row{grid-template-columns:110px 1fr 1fr auto}.tour-row>div{display:contents}.tour-row h3{font-size:1.5rem}.tour-row p{color:rgba(255,255,255,.6)}.tour-row .btn{border:0;background:var(--lime);box-shadow:none}.tour-row .btn:hover{background:var(--orange);color:white}
.guest-card{border-radius:2.25rem;box-shadow:8px 8px 0 var(--purple)}.guest-card div{padding:1.5rem}.guest-card h3{font-size:1.85rem;text-transform:uppercase}.guest-card p{display:inline-block;padding:.45rem .8rem;border-radius:999px;background:var(--lime);color:var(--purple);font-size:.72rem;text-transform:uppercase}.guest-card small{display:block;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(65,26,86,.15);font-weight:700}
.news-section{background:var(--purple);color:white}.news-section .news-card{border:2px solid rgba(255,255,255,.15);border-radius:2.5rem;box-shadow:9px 9px 0 var(--pink);color:var(--purple)}.news-section .news-card:first-child{grid-column:1/-1;grid-template-columns:1.15fr .85fr}.news-card h3{text-transform:uppercase;font-size:clamp(1.8rem,3vw,3rem);line-height:.95}.news-card small{font-weight:900;text-transform:uppercase;letter-spacing:.12em}.news-card .text-link{display:inline-flex;margin-top:1rem;padding:.75rem 1.25rem;border-radius:999px;background:var(--purple);color:white}
.reviews-section,.messages-section{background:var(--cream)}.review-heading{display:grid;grid-template-columns:1fr .7fr;gap:2rem;align-items:end}.rating-card{padding:1.5rem;border-radius:2rem;background:var(--lime)}.rating-card strong{display:block;font:900 3rem "Archivo Black"}.rating-card strong small{font-size:1.5rem}.rating-card span{display:block;color:var(--pink);font-size:1.6rem;letter-spacing:.15em}.rating-card p{margin:.35rem 0 0;font-weight:800}.review-card:nth-child(4n+1){background:var(--pale)}.review-card:nth-child(4n+2){background:var(--sky)}.review-card:nth-child(4n+3){background:white}.review-card{border:2px solid var(--purple);border-radius:2rem;box-shadow:6px 6px 0 var(--purple)}
.frame-section{background:var(--sky)}.media-grid{grid-template-columns:repeat(4,1fr)}.media-card{min-height:30rem;border:2px solid var(--purple);border-radius:2.25rem;box-shadow:7px 7px 0 var(--purple)}.media-card:nth-child(even){transform:translateY(1.5rem)}
.support:before{content:"";position:absolute;inset:0;opacity:.2;background-image:radial-gradient(#fff 2px,transparent 2px);background-size:26px 26px}.support>*{position:relative}.support .support-card{border:3px solid var(--purple);background:var(--cream);box-shadow:8px 8px 0 var(--purple)}.support .support-card:first-child{background:#00d64f}.support .support-card:last-child{background:#ff5e5b;color:white}
@media(max-width:900px){.media-grid{grid-template-columns:1fr 1fr}.review-heading{grid-template-columns:1fr}.tour-row{grid-template-columns:110px 1fr auto}.tour-row p{grid-column:2}}
@media(max-width:640px){.media-grid{grid-template-columns:1fr}.media-card:nth-child(even){transform:none}.tour-row{grid-template-columns:1fr}.tour-row>div{display:block}.news-section .news-card,.news-section .news-card:first-child{display:block;grid-column:auto}.review-heading{display:block}}
