/* Studios presentation uses the approved homepage design language.
   No pricing data, CMS markup, or booking behavior belongs in this file. */
body[data-page="pricing"] {
  --studio-section-space: clamp(40px,5vw,64px);
  --studio-heading-size: clamp(30px,4vw,48px);
  font-family: "Outfit","Inter",sans-serif;
  background: var(--brand-off-white);
}
body[data-page="pricing"] :is(h1,h2,h3,h4,h5,p,li,label,input,select,textarea,.btn,.nav-links a,.mobile-menu a,.bundle-name,.bundle-price,.bundle-cadence,.studio-hour-price,.studio-hour-cadence) { font-family: "Outfit","Inter",sans-serif; }
body[data-page="pricing"] .section { padding-block: var(--studio-section-space); }
body[data-page="pricing"] .section-head { margin-bottom: 32px; }
body[data-page="pricing"] :is(.section-title,.final-cta h2) { font-size: var(--studio-heading-size); font-weight: 600; line-height: 1.08; letter-spacing: -.04em; text-wrap: balance; margin-bottom: 20px; }
body[data-page="pricing"] .section-sub { max-width: 68ch; font-size: 16px; line-height: 1.65; }
body[data-page="pricing"] :is(#pricing-tiers,#included,#bundles,#sets) { background: var(--brand-off-white); color: var(--brand-dark-text); --text-1: var(--brand-dark-text); --text-2: var(--brand-muted); --text-3: var(--brand-muted); }
body[data-page="pricing"] :is(#pricing-tiers,#included,#bundles,#sets) .section-title { color: var(--brand-deep-purple); }
body[data-page="pricing"] .section > .glow { display: none; }
body[data-page="pricing"] .pricing-media-hero { min-height: 0; padding: 132px 0 56px; background: var(--brand-off-white); color: var(--brand-dark-text); }
body[data-page="pricing"] .pricing-media-hero-background { opacity: .04; pointer-events: none; }
body[data-page="pricing"] .pricing-media-hero-layout { grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); gap: clamp(32px,5vw,72px); }
body[data-page="pricing"] .pricing-media-hero h1 { color: var(--brand-deep-purple); font-weight: 600; font-size: clamp(42px,5.8vw,82px); line-height: 1.03; letter-spacing: -.045em; text-wrap: balance; }
body[data-page="pricing"] .pricing-media-hero-kicker { color: var(--brand-electric-blue); font-size: 14px; letter-spacing: 0; text-transform: none; font-weight: 500; margin-bottom: 16px; }
body[data-page="pricing"] .pricing-media-hero-summary { color: var(--brand-muted); font-size: 16px; line-height: 1.65; margin: 24px 0; }
body[data-page="pricing"] .pricing-media-preview { border: 1px solid var(--brand-light-gray); border-radius: 24px; padding: 12px; background: var(--brand-white); box-shadow: 0 20px 40px -28px rgba(16,0,33,.25); backdrop-filter: none; }
body[data-page="pricing"] .pricing-media-preview-stage { aspect-ratio: 4 / 3.6; border-radius: 16px; }
body[data-page="pricing"] .pricing-media-preview-copy { background: linear-gradient(transparent,rgba(16,0,33,.95)); }
body[data-page="pricing"] .pricing-media-preview-status span { background: var(--brand-deep-purple); color: var(--brand-white); }
body[data-page="pricing"] .pricing-media-preview-thumbnails button { border-radius: 12px; }
body[data-page="pricing"] .pricing-media-preview-thumbnails button.is-active { border-color: var(--brand-electric-blue); }
body[data-page="pricing"] .btn { min-height: 48px; padding: 12px 20px; font-size: 14px; font-weight: 500; line-height: 1.4; }
body[data-page="pricing"] .btn-primary { background: var(--brand-cta-gradient); color: var(--brand-white); border-color: transparent; }
body[data-page="pricing"] .pricing-media-hero .btn-ghost { color: var(--brand-deep-purple); background: transparent; border-color: var(--brand-border); backdrop-filter: none; }
body[data-page="pricing"] .studio-hour-card { border-radius: 24px; background: var(--brand-white); border-color: var(--brand-border); box-shadow: none; padding: 28px; }
body[data-page="pricing"] .studio-hour-card-top { min-height: 112px; }
body[data-page="pricing"] .studio-hour-name { color: var(--brand-deep-purple); font-size: 26px; font-weight: 600; }
body[data-page="pricing"] .studio-hour-price { font-size: clamp(42px,4.1vw,54px); font-weight: 600; letter-spacing: -.04em; }
body[data-page="pricing"] .studio-hour-desc { font-size: 15px; line-height: 1.6; }
body[data-page="pricing"] .studio-hour-card-featured { border-color: var(--brand-electric-blue); background: var(--brand-white); }
body[data-page="pricing"] .studio-hour-card-signature { background: var(--brand-purple-gradient); color: var(--brand-white); --text-1: var(--brand-white); --text-2: rgba(255,255,255,.8); --text-3: rgba(255,255,255,.72); }
body[data-page="pricing"] .studio-hour-card-signature .studio-hour-name { color: var(--brand-white); }
body[data-page="pricing"] :is(.studio-hour-card-featured,.studio-hour-card-signature) { padding-top: 38px; }
body[data-page="pricing"] .studio-hour-badge { color: var(--brand-white); background: var(--brand-electric-blue); border-color: var(--brand-electric-blue); letter-spacing: .04em; }
body[data-page="pricing"] .included-panel { background: var(--brand-light-gray); border: 1px solid var(--brand-border); border-radius: 24px; box-shadow: none; padding: clamp(24px,4vw,48px); }
body[data-page="pricing"] .included-col h4 { font-size: 20px; font-weight: 600; color: var(--brand-deep-purple); }
body[data-page="pricing"] .included-col li { color: var(--brand-muted); font-size: 15px; line-height: 1.6; }
body[data-page="pricing"] #guests { background: var(--brand-deep-purple); --text-1: var(--brand-white); --text-2: rgba(255,255,255,.8); }
body[data-page="pricing"] #guests .section-title { color: var(--brand-white); }
body[data-page="pricing"] .guest-photo-card { border-radius: 20px; border-color: rgba(255,255,255,.15); }
body[data-page="pricing"] .bundle-card { background: var(--brand-white); border: 1px solid var(--brand-border); border-radius: 24px; box-shadow: none; }
body[data-page="pricing"] .bundle-card.featured { border-color: var(--brand-electric-blue); background: var(--brand-white); }
body[data-page="pricing"] :is(.bundle-name,.bundle-price) { color: var(--brand-deep-purple); }
body[data-page="pricing"] .bundle-name { font-size: 22px; font-weight: 600; line-height: 1.25; }
body[data-page="pricing"] .bundle-price { font-size: clamp(28px,2.5vw,36px); font-weight: 600; }
body[data-page="pricing"] :is(.bundle-desc,.bundle-features li) { color: var(--brand-muted); font-size: 15px; line-height: 1.6; }
body[data-page="pricing"] :is(#sets,#bundles) .btn-ghost { border-color: var(--brand-border); color: var(--brand-deep-purple); background: var(--brand-white); }
body[data-page="pricing"] #sets .set-card { background: var(--brand-white); border: 1px solid var(--brand-border); border-radius: 20px; box-shadow: none; }
body[data-page="pricing"] #sets .set-body { padding: 24px; }
body[data-page="pricing"] #sets .set-body h4 { color: var(--brand-deep-purple); font-size: 20px; line-height: 1.25; }
body[data-page="pricing"] #sets .set-body p { color: var(--brand-muted); font-size: 15px; line-height: 1.6; }
body[data-page="pricing"] .final-cta { padding-block: var(--studio-section-space); background: var(--brand-purple-gradient); }
body[data-page="pricing"] .final-cta h2 { color: var(--brand-white); }
body[data-page="pricing"] .final-cta p { color: rgba(255,255,255,.8); font-size: 16px; line-height: 1.65; }
@media(max-width:900px) {
 body[data-page="pricing"] .pricing-media-hero-layout { grid-template-columns: 1fr; gap: 32px; }
 body[data-page="pricing"] .pricing-media-hero-copy { max-width: 700px; }
 body[data-page="pricing"] .pricing-media-preview { max-width: 560px; width: 100%; margin-inline: auto; }
}
@media(max-width:760px) {
 body[data-page="pricing"] { --studio-section-space: 40px; --studio-heading-size: clamp(28px,7.4vw,38px); }
 body[data-page="pricing"] .pricing-media-hero { padding: 108px 0 40px; }
 body[data-page="pricing"] .pricing-media-hero h1 { font-size: clamp(38px,9vw,56px); }
 body[data-page="pricing"] :is(.section-sub,.pricing-media-hero-summary,.final-cta p) { font-size: 15px; }
 body[data-page="pricing"] .section-head { margin-bottom: 24px; }
 body[data-page="pricing"] .studio-hour-card { padding: 28px 24px; }
 body[data-page="pricing"] :is(.studio-hour-card-featured,.studio-hour-card-signature) { padding-top: 38px; }
 body[data-page="pricing"] .studio-hour-card-top { min-height: 0; }
}
/* The light hero needs the same legible dark navigation surface as home. */
body[data-page="pricing"] .nav { background: rgba(16,0,33,.94); border-bottom: 1px solid rgba(255,255,255,.12); }
body[data-page="pricing"] footer { background: var(--brand-deep-purple); color: var(--brand-white); }
@media(min-width:1025px) {
 body[data-page="pricing"] .studio-hour-card-featured { grid-column: span 3; }
}
body[data-page="pricing"] .pricing-media-hero-background { opacity: 0; }

/* Guest collage: retain every CMS card, with the staggered framing of the reference. */
body[data-page="pricing"] #guests {
 background: var(--brand-off-white);
 --text-1: var(--brand-deep-purple);
 --text-2: rgba(23,16,33,.72);
}
body[data-page="pricing"] #guests .section-title { color: var(--brand-deep-purple); }
body[data-page="pricing"] #guests .container { position: relative; }
body[data-page="pricing"] #guestsGrid {
 display: grid;
 grid-template-columns: repeat(4,minmax(0,1fr));
 gap: 16px;
 align-items: end;
 max-width: 1100px;
 margin: 32px auto 0;
 position: relative;
 isolation: isolate;
}
body[data-page="pricing"] #guestsGrid::before,
body[data-page="pricing"] #guestsGrid::after {
 content: "";
 position: absolute;
 border-radius: 50%;
 background: var(--brand-electric-blue);
 width: 18px;
 height: 18px;
 pointer-events: none;
 z-index: -1;
}
body[data-page="pricing"] #guestsGrid::before { top: 12px; left: 44%; }
body[data-page="pricing"] #guestsGrid::after { bottom: 12px; right: 44%; background: var(--brand-brand-blue); width: 12px; height: 12px; }
body[data-page="pricing"] #guestsGrid .guest-photo-card {
 width: 100%;
 aspect-ratio: 1.06;
 border: 0;
 border-radius: 24px 24px 4px 24px;
 background: var(--brand-light-gray);
 box-shadow: none;
 min-width: 0;
}
body[data-page="pricing"] #guestsGrid .guest-photo-card:nth-child(even) {
 width: 80%;
 border-radius: 24px 24px 24px 4px;
}
body[data-page="pricing"] #guestsGrid .guest-photo-card:nth-child(n+5) { align-self: start; }
body[data-page="pricing"] #guestsGrid .guest-photo-card:nth-child(n+5):nth-child(odd) {
 width: 80%;
 justify-self: end;
 border-radius: 24px 4px 24px 24px;
}
body[data-page="pricing"] #guestsGrid .guest-photo-card:nth-child(n+5):nth-child(even) {
 width: 100%;
 border-radius: 4px 24px 24px 24px;
}
body[data-page="pricing"] #guestsGrid .guest-photo-card img { width:100%; height:100%; object-fit:cover; object-position:center 35%; }
body[data-page="pricing"] #guestsGrid .guest-photo-card::after { display:none; }
@media(max-width:650px) {
 body[data-page="pricing"] #guestsGrid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:24px; }
 body[data-page="pricing"] #guestsGrid .guest-photo-card { border-radius:18px 18px 4px 18px; }
 body[data-page="pricing"] #guestsGrid .guest-photo-card:nth-child(4n+3) { width:80%; justify-self:end; align-self:start; border-radius:18px 4px 18px 18px; }
 body[data-page="pricing"] #guestsGrid .guest-photo-card:nth-child(4n+4) { width:100%; align-self:start; border-radius:4px 18px 18px 18px; }
 body[data-page="pricing"] #guestsGrid .guest-photo-card:nth-child(4n+1) { width:100%; justify-self:stretch; align-self:end; }
 body[data-page="pricing"] #guestsGrid .guest-photo-card:nth-child(4n+2) { width:80%; align-self:end; }
}

body[data-page="pricing"] #guests { scroll-margin-top: 88px; }

/* Studio video and distribution diagram share the homepage framing. */
body[data-page="pricing"] .studio-hero-video-frame { min-width:0; padding:12px; background:var(--brand-white); border:1px solid var(--brand-light-gray); border-radius:24px; box-shadow:0 20px 40px -28px rgba(16,0,33,.25); }
body[data-page="pricing"] .studio-hero-video { display:block; width:100%; aspect-ratio:1.15; object-fit:cover; border-radius:16px; background:var(--brand-deep-purple); }
body[data-page="pricing"] .studio-distribution { background:var(--brand-white); color:var(--brand-deep-purple); scroll-margin-top:88px; }
body[data-page="pricing"] .studio-distribution-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(32px,5vw,72px); align-items:center; }
body[data-page="pricing"] .studio-distribution-kicker { color:var(--brand-electric-blue); font-weight:500; font-size:14px; margin-bottom:16px; }
body[data-page="pricing"] .studio-distribution .section-title { color:var(--brand-deep-purple); }
body[data-page="pricing"] .studio-distribution .section-sub { color:var(--brand-muted); }
body[data-page="pricing"] .studio-distribution-map { position:relative; min-width:0; width:100%; aspect-ratio:1.5; min-height:300px; }
body[data-page="pricing"] .studio-distribution-wires { position:absolute; inset:0; width:100%; height:100%; }
body[data-page="pricing"] .studio-distribution-wires .wire { stroke-width:2; stroke-dasharray:5 9; animation:studio-signal 3s linear infinite; }
.wire-spotify { stroke:#1DB954; }.wire-apple { stroke:#9933CC; }.wire-amazon { stroke:#008F9B; }.wire-iheart { stroke:#C6002B; }
@keyframes studio-signal { to { stroke-dashoffset:-56; } }
body[data-page="pricing"] .studio-distribution-hub { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:176px; padding:20px 12px; border-radius:24px; background:var(--brand-purple-gradient); color:var(--brand-white); text-align:center; box-shadow:0 12px 32px -16px rgba(16,0,33,.3); }
body[data-page="pricing"] .studio-distribution-icons { display:flex; justify-content:center; align-items:center; gap:10px; margin-bottom:10px; color:#FFF; }
body[data-page="pricing"] .studio-distribution-icons svg { width:24px; height:24px; }
body[data-page="pricing"] .studio-distribution-hub strong { display:block; font-size:18px; font-weight:500; }
body[data-page="pricing"] .studio-distribution-hub span { display:block; font-size:11px; color:rgba(255,255,255,.8); margin-top:3px; }
body[data-page="pricing"] .studio-platform { position:absolute; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; width:126px; padding:16px 8px; background:var(--brand-white); border:1px solid var(--brand-light-gray); border-radius:20px; box-shadow:0 10px 24px -18px rgba(16,0,33,.2); text-decoration:none; color:var(--brand-deep-purple); font-size:13px; font-weight:500; transition:transform .2s,border-color .2s; }
body[data-page="pricing"] .studio-platform img { width:44px; height:44px; object-fit:contain; }
body[data-page="pricing"] .studio-platform:hover { transform:translateY(-3px); border-color:var(--brand-electric-blue); }
body[data-page="pricing"] .studio-platform:focus-visible { outline:3px solid var(--brand-electric-blue); outline-offset:4px; }
.studio-platform-1 { left:0; top:2%; }.studio-platform-2 { right:0; top:2%; }.studio-platform-3 { left:0; bottom:2%; }.studio-platform-4 { right:0; bottom:2%; }
body[data-page="pricing"] #bundles .bundles-grid { max-width:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
body[data-page="pricing"] #bundles .bundle-card { padding:0; overflow:hidden; }
body[data-page="pricing"] #bundles .bundle-card:hover { transform:none; }
body[data-page="pricing"] .studio-bundle-details summary { display:flex; align-items:center; justify-content:space-between; gap:20px; list-style:none; cursor:pointer; padding:24px; }
body[data-page="pricing"] .studio-bundle-details summary::-webkit-details-marker { display:none; }
body[data-page="pricing"] .studio-bundle-details summary:focus-visible { outline:3px solid var(--brand-electric-blue); outline-offset:-4px; border-radius:22px; }
body[data-page="pricing"] .studio-bundle-preview { min-width:0; }
body[data-page="pricing"] .studio-bundle-preview .bundle-name { font-size:22px; margin:0 0 8px; }
body[data-page="pricing"] .studio-bundle-preview .bundle-desc { margin:0 0 16px; min-height:0; }
body[data-page="pricing"] .studio-bundle-preview .bundle-price { font-size:20px; margin:0 0 4px; }
body[data-page="pricing"] .studio-bundle-preview .bundle-cadence { margin:0; color:var(--brand-muted); }
body[data-page="pricing"] .studio-bundle-preview .bundle-badge { position:static; transform:none; display:inline-flex; margin:0 0 12px; font-size:10px; padding:5px 9px; }
body[data-page="pricing"] .studio-bundle-indicator { flex:0 0 32px; height:32px; border-radius:50%; background:var(--brand-light-gray); color:var(--brand-electric-blue); display:grid; place-items:center; font-size:22px; transition:transform .2s; }
body[data-page="pricing"] .studio-bundle-details[open] .studio-bundle-indicator { transform:rotate(45deg); }
body[data-page="pricing"] .studio-bundle-content { padding:0 24px 24px; }
body[data-page="pricing"] .studio-bundle-content .bundle-features { margin:0 0 24px; padding-top:20px; border-top:1px solid var(--brand-light-gray); }
@media(max-width:900px) {
 body[data-page="pricing"] .studio-hero-video-frame { width:100%; max-width:640px; margin-inline:auto; }
 body[data-page="pricing"] .studio-hero-video { aspect-ratio:16/10; }
 body[data-page="pricing"] .studio-distribution-layout { grid-template-columns:1fr; }
 body[data-page="pricing"] .studio-distribution-map { max-width:620px; margin-inline:auto; }
}
@media(max-width:600px) {
 body[data-page="pricing"] #bundles .bundles-grid { grid-template-columns:1fr; gap:14px; }
 body[data-page="pricing"] .studio-bundle-details summary { padding:20px; gap:12px; }
 body[data-page="pricing"] .studio-bundle-content { padding:0 20px 20px; }
 body[data-page="pricing"] .studio-platform { width:100px; padding:12px 6px; font-size:11px; border-radius:16px; }
 body[data-page="pricing"] .studio-platform img { width:32px; height:32px; }
 body[data-page="pricing"] .studio-distribution-hub { width:142px; padding:16px 8px; border-radius:18px; }
 body[data-page="pricing"] .studio-distribution-icons { gap:6px; }
 body[data-page="pricing"] .studio-distribution-icons svg { width:20px; height:20px; }
 body[data-page="pricing"] .studio-distribution-hub strong { font-size:16px; }
 body[data-page="pricing"] .studio-distribution-hub span { font-size:9px; }
}
@media(prefers-reduced-motion:reduce) {
 body[data-page="pricing"] .studio-distribution-wires .wire { animation:none; }
}
body[data-page="pricing"] #bundles { scroll-margin-top:88px; }
@media(min-width:601px) { body[data-page="pricing"] .studio-bundle-details summary { min-height:226px; } }

/* Requested section contrast: light gray hours, deep purple sets. */
body[data-page="pricing"] section#pricing-tiers { background:var(--brand-light-gray); }
body[data-page="pricing"] section#sets {
 background:var(--brand-deep-purple);
 color:var(--brand-white);
 --text-1:var(--brand-white);
 --text-2:rgba(255,255,255,.8);
 --text-3:rgba(255,255,255,.72);
 scroll-margin-top:88px;
}
body[data-page="pricing"] section#sets .section-title { color:var(--brand-white); -webkit-text-fill-color:var(--brand-white); }
body[data-page="pricing"] section#sets .section-sub { color:rgba(255,255,255,.8); }
body[data-page="pricing"] section#sets .set-card { --text-1:var(--brand-deep-purple); --text-2:var(--brand-muted); --text-3:var(--brand-muted); color:var(--brand-deep-purple); }
body[data-page="pricing"] section#sets .shows-note { color:rgba(255,255,255,.8); }
body[data-page="pricing"] section#sets .shows-note a { color:var(--brand-white) !important; text-decoration:underline; text-underline-offset:3px; }
