.detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:35px 0;padding:25px 0;border-top:1px solid #c5a9ba;border-bottom:1px solid #c5a9ba}.detail-facts strong{font-size:17px;color:#652b88}.detail-facts p{font-size:14px;margin-bottom:0}.catalog-note{padding-left:16px;border-left:3px solid #cf276a}.workshop-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px;margin:30px 0}.workshop-option{position:relative;padding:25px 0 25px 48px;border-top:1px solid #ccb5c0}.workshop-number{position:absolute;left:0;top:26px;font-size:13px;color:#86406c}.workshop-option h4{font-size:20px;line-height:1.3;margin:0 0 12px}.workshop-option p{font-size:15px;margin:0}.parent-steps{padding-left:25px;max-width:850px}.parent-steps li{padding:10px 0 10px 8px}.parent-steps p{margin:8px 0 0}.parent-faq{margin:28px 0;max-width:850px}.parent-faq details{padding:18px 0;border-top:1px solid #ccb5c0}.parent-faq summary{font-weight:bold;cursor:pointer;line-height:1.5}.parent-faq summary:focus-visible{outline:3px solid #652b88;outline-offset:4px}.parent-faq details p{padding-left:18px;font-size:15px}@media(max-width:760px){.detail-facts,.workshop-catalog{grid-template-columns:1fr}.detail-facts{gap:20px}.workshop-option{padding-left:38px}.workshop-option h4{font-size:18px}}
.ai-detail-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:5%;align-items:center;margin-top:30px}
.ai-detail-intro .panel-intro{margin-top:0}
.ai-detail-robot{margin:0 10px 12px 0;border:7px solid #652b88;box-shadow:10px 10px 0 #cf276a;transform:rotate(2deg)}
.ai-detail-robot img{display:block;width:100%;height:auto}
@media(max-width:850px){.ai-detail-intro{grid-template-columns:1fr;gap:24px}.ai-detail-robot{width:calc(100% - 12px);max-width:520px;justify-self:center}}
/* Session details only; the approved robot introduction stays unchanged. */
.ai-session{background:#211229;color:#f8efdf;margin:45px 0 0;padding:clamp(24px,4vw,55px);border-top:8px solid #cf276a}
.ai-session-heading{display:flex;align-items:center;justify-content:space-between;gap:30px}
.ai-session-kicker{font-size:11px;letter-spacing:2px;color:#ef88b5;margin:0 0 20px}
.link-panel .ai-session h3{font:clamp(36px,4.5vw,65px)/1.05 Georgia,serif;margin:0}
.ai-session h3 em{color:#ffbe55}
.ai-session-time{display:flex;align-items:center;gap:18px;transform:rotate(4deg);background:#ffbe55;color:#211229;padding:16px 22px;box-shadow:7px 7px #652b88;flex-shrink:0}
.ai-session-time strong{font:85px/.9 Impact,'Arial Narrow',sans-serif}
.ai-session-time span{font-size:11px;line-height:1.7;max-width:140px}
.ai-session-flow{list-style:none;padding:0;margin:48px 0 28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px}
.ai-session-flow li{position:relative;border-top:1px solid #b68aa7;padding-top:20px}
.ai-session-number{font:italic 36px/1 Georgia,serif;color:#ef88b5}
.ai-session-flow h4{font:clamp(25px,2.8vw,40px)/1.1 Georgia,serif;margin:18px 0 14px;color:#ffbe55}
.ai-session-flow li:nth-child(2) h4{color:#ef88b5}
.ai-session-flow p{font-size:16px;margin:0;color:#dfcbd9}
.ai-session-arrow{position:absolute;right:-30px;top:12px;font:35px/1 Arial,sans-serif;color:#ffbe55}
.link-panel .ai-session-footnote{font-size:14px;color:#dfcbd9;border-left:3px solid #cf276a;padding-left:18px;max-width:900px;margin:36px 0 0}
.ai-season{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:35px;background:#ffbe55;color:#211229;padding:clamp(24px,3vw,42px);margin-bottom:45px;align-items:center}
.ai-season-date{border-right:1px dashed #652b88;padding-right:30px}
.ai-season-date>span{display:block;font-size:11px;letter-spacing:1px}
.ai-season-date strong{display:block;font:clamp(27px,3.1vw,46px)/1.2 Impact,'Arial Narrow',sans-serif;margin:14px 0;white-space:nowrap}
.ai-season-date strong span{color:#652b88}
.ai-season p{font-size:15px;margin:0 0 10px}.ai-season p:last-child{margin:0}
@media(max-width:850px){.ai-session-heading{align-items:flex-start;flex-direction:column}.ai-session-time{align-self:flex-end}.ai-session-flow{grid-template-columns:1fr;gap:25px;margin-top:35px}.ai-session-arrow{display:none}.ai-session-flow li{padding-left:52px}.ai-session-number{position:absolute;left:0;top:23px}.ai-session-flow h4{margin-top:0}.ai-season{grid-template-columns:1fr;gap:22px}.ai-season-date{border-right:0;border-bottom:1px dashed #652b88;padding:0 0 22px}}
/* A family guide in the same carnival palette as the community scene. */
.family-panel{background:#211229;color:#f8efdf;padding:40px 0;border-top:1px solid #b68aa766}
.family-panel .family-heading{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(230px,.6fr);gap:6%;padding:30px 3% 40px;border:0;align-items:center}
.family-panel .panel-eyebrow{color:#ef88b5;letter-spacing:2px}
.family-panel .family-heading h2{font:clamp(72px,10vw,160px)/.86 Impact,'Arial Narrow',sans-serif;letter-spacing:-.025em;text-transform:uppercase;margin:34px 0 0;max-width:none;color:#ffbe55}
.family-panel .family-heading h2 em{font:italic .94em/1.08 Georgia,serif;text-transform:none;color:#ef88b5;letter-spacing:-.06em}
.family-panel .family-subtitle{font:italic clamp(25px,3vw,44px)/1.3 Georgia,serif;margin:20px 0 0}
.family-panel .close-panel{position:absolute;top:0;right:0;color:#f8efdf;border-color:#b68aa7}
.family-date{position:relative;justify-self:center;width:min(100%,310px);margin-top:60px;padding:105px 20px 24px;background:#f4a04b;color:#211229;transform:rotate(5deg);box-shadow:12px 12px 0 #cf276a;text-align:center}
.family-date img{position:absolute;width:190px;height:190px;object-fit:contain;top:-70px;left:calc(50% - 95px);transform:rotate(-5deg);filter:drop-shadow(0 6px 3px #21122944)}
.family-date>div{border-top:2px dashed #663647;padding-top:16px}
.family-date span{display:block;font-size:12px;letter-spacing:3px;font-weight:bold}
.family-date strong{display:block;font:clamp(80px,8vw,125px)/1 Impact,'Arial Narrow',sans-serif}
.family-welcome{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding:30px 3% 60px}
.family-welcome .panel-intro{font:clamp(22px,2.2vw,31px)/1.45 Georgia,serif;margin:0 0 22px}
.family-welcome p:last-child{color:#dfcbd9;font-size:16px}
.family-welcome figure{margin:0;transform:rotate(-2deg);border:8px solid #652b88;background:#652b88;box-shadow:10px 12px 0 #cf276a}
.family-welcome img{display:block;width:100%;height:auto}
.family-welcome figcaption{padding:12px 5px 4px;color:#f8efdf;font-size:10px;letter-spacing:1.5px}
.family-panel .family-tickets{margin:10px 0 50px;padding:0;background:#ffbe55;color:#211229;gap:0;border:0;transform:rotate(-1deg)}
.family-tickets>div{padding:28px;border-right:2px dashed #855531}
.family-tickets>div:last-child{border:0}
.family-tickets .ticket-label{display:block;font-size:10px;letter-spacing:2px;margin-bottom:18px;color:#512044}
.family-tickets strong{display:block;font:clamp(22px,2.3vw,33px)/1.12 Georgia,serif;color:#211229}
.family-tickets p{line-height:1.6}
.family-chapter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:8%;margin:0 3%;padding:35px 0;border-top:1px solid #b68aa766}
.family-panel .family-chapter h3{font:clamp(28px,3.2vw,44px)/1.12 Georgia,serif;color:#ef88b5;margin:0}
.family-chapter>div>p:first-child{margin-top:0}
.family-chapter p{font-size:16px;color:#dfcbd9}
.family-chapter .parent-steps{margin:0;padding-left:24px}
.family-chapter .parent-steps li{padding-top:0;padding-bottom:24px}
.family-chapter .parent-steps li::marker{color:#ffbe55;font-weight:bold;font-size:22px}
.family-chapter .parent-steps strong{color:#f8efdf}
.family-panel .parent-faq{max-width:none;background:#f8efdf;color:#211229;padding:clamp(22px,4vw,55px);margin:40px 0 28px;border-top:8px solid #cf276a}
.family-panel .parent-faq h3{font:italic clamp(30px,4vw,52px)/1.2 Georgia,serif;margin:0 0 25px}
.family-panel .parent-faq details{padding:20px 0}
.family-panel .registration-status{background:#652b88;border-left:5px solid #ffbe55;padding:28px 32px;color:#fff}
.family-panel .registration-status>strong{font:26px/1.2 Georgia,serif}
.family-panel>.registration-status+p{padding:0 3%}
.family-panel .inline-action{display:inline-block;color:#ffbe55;padding:12px 10px 12px 0}
.family-panel a:focus-visible,.family-panel button:focus-visible,.family-panel h2:focus-visible{outline-color:#ffbe55}
.family-panel .parent-faq a:focus-visible,.family-panel .parent-faq summary:focus-visible{outline-color:#652b88}
.link-panel.family-panel .photo-story{color:#f8efdf;border-color:#b68aa766}
.link-panel.link-panel.family-panel .photo-story-heading>p{color:#ef88b5}
.link-panel.family-panel .photo-slot figcaption{color:#dfcbd9}
.link-panel.family-panel .real-photo figcaption strong{color:#f8efdf}
@media(max-width:760px){
 .family-panel .family-heading{grid-template-columns:1fr;gap:30px;padding-top:75px}
 .family-panel .family-heading h2{font-size:clamp(66px,16vw,115px)}
 .family-date{width:220px;margin:45px 15px 10px;justify-self:end}
 .family-welcome{grid-template-columns:1fr;gap:30px;padding-bottom:45px}
 .family-welcome figure{margin:0 10px}
 .family-panel .family-tickets{transform:none;grid-template-columns:1fr}
 .family-tickets>div{border-right:0;border-bottom:2px dashed #855531;padding:24px}
 .family-chapter{grid-template-columns:1fr;gap:22px;padding:28px 0}
}
