/* Palette approved in paleta de cor/Nexus-paleta-vibrante-board.png.
   Color treatment is separate from layout while this direction is reviewed. */
:root{--navy:#030528;--ultramarine:#0806b8;--blue:#0035f6;--cyan:#0090f7;--yellow:#ffe43b;--yellow-soft:#fff18a;--ice:#e8f3ff;--page:#fff;--soft:#f1f5ff;--card:#fff;--ink:#030528;--muted:#525b76;--line:#d2dcf0;--tint:#e2ebff;--focus:#0035f6;--shadow:0 16px 50px #0305280b}
:root[data-theme="dark"]{--page:#030528;--soft:#080d3b;--card:#10184b;--ink:#f5f8ff;--muted:#bdc9e4;--line:#344279;--tint:#17255c;--focus:#ffe43b;--shadow:0 16px 50px #03052833}
:focus-visible{outline-color:var(--focus)}
.nav-shell{background:#030528e8;--focus:var(--yellow)}
.button-yellow:hover{background:var(--yellow-soft);box-shadow:0 6px 26px #ffe43b33}
.button-dark{background:var(--blue)}
.button-dark:hover{background:var(--ultramarine)}

/* Portrait artwork and live typography give both themes a human opening. */
.hero{background:#f1f2f4;color:var(--navy);--icon-filter:none;--focus:var(--blue)}
.hero-art{inset:0}
.hero-art img{object-position:center}
.hero:after{background:linear-gradient(90deg,#f1f2f4 0,#f1f2f4ed 24%,#f1f2f48c 43%,#f1f2f400 63%)}
.hero h1{max-width:690px;font-size:clamp(54px,5vw,76px);line-height:1.04}
.hero h1 span{display:block;font-size:1.25em;line-height:1.08;margin-top:4px}
.hero-eyebrow{color:var(--ultramarine)}
.eyebrow-line{background:var(--blue)}
.hero h1 span{color:var(--blue)}
.hero-description,.hero-meta{color:#333b57}
.hero .light-link{color:var(--blue);--icon-filter:none}
.hero .button-yellow{background:var(--blue);color:#fff;--icon-filter:invert(1)}
.hero .button-yellow:hover{background:var(--ultramarine)}
.demo-label{color:#525b76}
.hero-footnote{color:#eef2ff;background:#030528c9;padding:4px 10px;border-radius:6px}
:root[data-theme="dark"] .hero{background:var(--navy);color:#fff;--icon-filter:invert(1);--focus:var(--yellow)}
:root[data-theme="dark"] .hero:after{background:linear-gradient(90deg,#030528 0,#030528bf 22%,#03052844 42%,#03052800 60%)}
:root[data-theme="dark"] .hero-eyebrow{color:var(--yellow-soft)}
:root[data-theme="dark"] .eyebrow-line{background:var(--yellow)}
:root[data-theme="dark"] .hero h1 span{color:var(--yellow)}
:root[data-theme="dark"] .hero-description,:root[data-theme="dark"] .hero-meta{color:#eef2ff}
:root[data-theme="dark"] .hero .light-link{color:white;--icon-filter:invert(1)}
:root[data-theme="dark"] .hero .button-yellow{background:var(--yellow);color:var(--navy);--icon-filter:none}
:root[data-theme="dark"] .hero .button-yellow:hover{background:var(--yellow-soft)}
:root[data-theme="dark"] .demo-label{color:#dfe6f7}
.countdown-band{background:var(--yellow);color:var(--navy);border-top-color:#03052816;--icon-filter:none;--focus:var(--blue)}
.countdown-intro p{color:var(--navy)}
.countdown-intro .small-heading,.countdown div span,.countdown-note{color:#33345c}
.countdown strong{color:var(--blue)}
.count-separator{color:#6a632d}
.countdown-note{border-left-color:#03052830}

/* Quieter reading surfaces make the saturated sections stand apart. */
.about-section{background:radial-gradient(ellipse at 2% 45%,#0090f72e 0,transparent 45%),linear-gradient(115deg,#e2edff 0,#f6f9ff 45%,#fff 83%)}
:root[data-theme="dark"] .about-section{--muted:#dfe6f7;background:radial-gradient(ellipse at 0% 60%,#0090f770 0,transparent 45%),linear-gradient(110deg,#0806b8 0,#071a74 55%,#080d3b 100%)}
.about-copy strong{color:var(--blue)}
:root[data-theme="dark"] .about-copy strong{color:var(--yellow-soft)}
.about-grid{display:block}
.about-heading{margin-bottom:28px}
.about-heading h2{display:flex;align-items:center;gap:16px;font-size:20px;line-height:1.4;letter-spacing:0;font-weight:500}
.about-heading h2:before{content:"";width:44px;height:3px;background:var(--blue)}
:root[data-theme="dark"] .about-heading h2:before{background:var(--yellow)}
.about-copy{display:grid;grid-template-columns:1.15fr .85fr;column-gap:80px;align-items:start}
.about-copy .lead{grid-column:1;grid-row:1 / 3;font-size:clamp(28px,2.6vw,38px);line-height:1.35;letter-spacing:-.035em;margin:0}
.about-copy>p:not(.lead){grid-column:2;font-size:19px;line-height:1.7;margin:0}
.about-copy .text-link{grid-column:2;justify-self:start;align-self:end;margin-top:24px}
.audience{margin-top:42px}
:root[data-theme="dark"] .pillar-number{color:var(--yellow)}
:root[data-theme="dark"] .pillar-page[aria-current="true"]:after{background:var(--yellow)}
:root[data-theme="dark"] .census-note{border-left-color:var(--yellow)}

/* A second, independent art direction is used behind the experiences. */
.experiences-section{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,var(--ultramarine),var(--blue));--focus:var(--yellow)}
.experiences-art{position:absolute;z-index:-2;inset:0;pointer-events:none}
.experiences-art img{height:100%;width:100%;object-fit:cover;object-position:right center}
.experiences-section:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,#0806b8f2 0,#0806b8d9 30%,#0035f699 68%,#0035f64d),linear-gradient(0deg,#0806b8c9,transparent 38%)}
.experiences-section .section-heading .eyebrow,.experience-tag{color:var(--yellow-soft)}
.experiences-section .section-heading p:not(.eyebrow),.experience-bottom>span{color:#eef2ff}
.experience-card{background:#030528d9;border-color:#b8ceff55}
.experience-card:hover{border-color:var(--yellow)}
.experience-card:focus-within{outline:3px solid var(--yellow);outline-offset:5px}
.experience-card p{color:#dfe6f7}
.experience-open{background:var(--yellow)}

.tickets-section{background:radial-gradient(ellipse at 82% 48%,#0090f724 0,transparent 48%),linear-gradient(145deg,#fff,#edf3ff)}
:root[data-theme="dark"] .tickets-section{background:radial-gradient(ellipse at 82% 48%,#0035f659 0,transparent 48%),var(--page)}
.lot-tab[aria-selected="true"]{background:var(--blue)}
.ticket-pass{background:radial-gradient(ellipse at 100% 0,#0090f747 0,transparent 45%),linear-gradient(145deg,var(--blue),var(--ultramarine));border-color:#4d7dff;--focus:var(--yellow);box-shadow:0 20px 60px #0035f626}
.ticket-pass .ticket-kicker,.ticket-pass .ticket-description,.ticket-pass .price-caption,.ticket-pass .ticket-footnote{color:#eef2ff}
.pass-ribbon{background:var(--yellow-soft);border-color:var(--yellow-soft)}
.status-label{background:var(--yellow-soft);color:var(--navy)}
.exhibit-panel{background:var(--ultramarine);--focus:var(--yellow)}
.exhibit-image{width:100%;object-position:right center}
.exhibit-panel:after{background:linear-gradient(90deg,#0806b8 5%,#0806b8eb 35%,#0035f677 72%,#0035f61c)}
.exhibit-copy .eyebrow{color:var(--yellow-soft)}
.exhibit-copy>p:not(.eyebrow){color:#eef2ff}
.exhibit-caption{color:#dfe6f7}

/* The yellow ending is a deliberate change of lightness and temperature. */
.final-cta{background:linear-gradient(115deg,var(--yellow-soft),var(--yellow) 70%);color:var(--navy);--focus:var(--blue)}
.final-cta .eyebrow{color:#33345c}
.final-cta .button{background:var(--blue);color:white;--icon-filter:invert(1)}
.final-cta .button:hover{background:var(--ultramarine)}
.final-cta .button-icon{background:#ffffff18}
.site-footer{--focus:var(--yellow)}
.mobile-purchase{background:#030528f5;--focus:var(--yellow)}

@media(min-width:1251px){
 .hero-art{inset:auto 0 0;width:100%;aspect-ratio:2 / 1;max-height:calc(100% - 112px);-webkit-mask-image:linear-gradient(180deg,transparent,#000 10%);mask-image:linear-gradient(180deg,transparent,#000 10%)}
 .hero-art img{object-fit:contain;object-position:right bottom}
}
@media(min-width:768px) and (max-width:1250px){
 .hero-art{inset:auto 0 0;aspect-ratio:2 / 1;-webkit-mask-image:linear-gradient(180deg,transparent,#000 13%);mask-image:linear-gradient(180deg,transparent,#000 13%)}
 .hero-art img{object-fit:contain;object-position:right bottom}
 .hero:after{background:linear-gradient(90deg,#f1f2f4 0,#f1f2f4ed 26%,#f1f2f480 43%,#f1f2f400 59%)}
 :root[data-theme="dark"] .hero:after{background:linear-gradient(90deg,#030528 0,#030528ed 26%,#03052880 43%,#03052800 59%)}
 .hero h1{max-width:57%}
 .hero-description{max-width:47%}
 .hero-meta{max-width:47%;flex-direction:column;gap:10px}
 .demo-label{max-width:47%}
}
@media(max-width:980px){
 .hero-art{left:0;opacity:1}
 .hero h1{max-width:55%;font-size:clamp(40px,5.3vw,52px)}
 .hero-description{max-width:47%;font-size:18px}
 .hero-actions{max-width:52%;gap:14px;flex-wrap:wrap}
 .about-copy{column-gap:40px}
 .about-copy .lead{font-size:28px}
 .about-copy>p:not(.lead){font-size:18px}
}
@media(max-width:767px){
 .hero{display:flex;flex-direction:column;padding-bottom:0;min-height:unset}
 .hero-inner{order:0}
 .hero-art{position:relative;inset:auto;order:1;z-index:0;display:block;width:100%;height:auto;aspect-ratio:4 / 3;margin-top:22px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 38px);mask-image:linear-gradient(180deg,transparent,#000 38px)}
 .hero-art img{object-position:right center}
 .hero:after,:root[data-theme="dark"] .hero:after{display:none}
 .hero h1{max-width:560px;font-size:clamp(36px,9.8vw,46px)}
 .hero h1 span{font-size:1.2em}
 .hero-description{max-width:360px;font-size:17px}
 .hero-actions{max-width:none}
 .hero-meta{background:#e2e6ef;padding:12px 14px}
 .demo-label{background:transparent;padding:0}
 :root[data-theme="dark"] .hero-meta{background:#03052873}
 .hero-footnote{position:static;order:2;align-self:flex-start;margin:12px 20px 20px;padding:0;background:none;color:#525b76}
 :root[data-theme="dark"] .hero-footnote{color:#dfe6f7}
 .about-section{background:radial-gradient(ellipse at 20% 90%,#0090f727 0,transparent 48%),linear-gradient(155deg,#fff,#e8f3ff)}
 :root[data-theme="dark"] .about-section{background:radial-gradient(ellipse at 0% 95%,#0090f755 0,transparent 43%),linear-gradient(160deg,#0806b8,#071a74 55%,#080d3b)}
 .about-heading{margin-bottom:24px}
 .about-copy{display:block}
 .about-copy .lead{font-size:28px;line-height:1.4;margin-bottom:26px}
 .about-copy>p:not(.lead){font-size:17px;line-height:1.7}
 .about-copy .text-link{margin-top:24px}
 .experiences-art img{object-position:68% center}
 .experiences-section:after{background:linear-gradient(180deg,#0806b8ed,#0035f6a6 55%,#0806b8e6)}
 .exhibit-panel:after{background:linear-gradient(90deg,#0806b8f5,#0035f699)}
}
@media(max-width:374px){.hero h1{font-size:33px}.about-copy .lead{font-size:26px}}
@media(prefers-reduced-transparency:reduce){.nav-shell,.mobile-purchase{background:var(--navy)}}

/* Local motion backgrounds keep a still underneath every playback state. */
.section-motion{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.section-motion img,.section-motion video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:right center}
.section-motion video{opacity:0;transition:opacity .45s ease}
.section-motion.is-playing video{opacity:1}
.about-section{position:relative;isolation:isolate;overflow:hidden}
.about-section>.section-motion{display:none}
:root[data-theme="dark"] .about-section>.section-motion{display:block}
:root[data-theme="dark"] .about-section:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,#030528d9 0,#030528ad 48%,#0305284d)}
.experiences-section:after{background:linear-gradient(110deg,#030528d9 0,#03052899 50%,#03052833),linear-gradient(0deg,#03052899,transparent 45%)}
.exhibit-panel{background:#030528}
.exhibit-panel:after{background:linear-gradient(90deg,#030528e6 0,#030528b8 38%,#03052826 75%,transparent)}
.about-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
@media(max-width:767px){
 .section-motion img,.section-motion video{object-position:68% center}
 .experiences-section:after{background:linear-gradient(180deg,#030528c9,#03052880 55%,#030528c9)}
 .exhibit-panel:after{background:linear-gradient(90deg,#030528db,#03052880)}
 :root[data-theme="dark"] .about-section:after{background:linear-gradient(180deg,#030528d9,#030528a6)}
}
@media(prefers-reduced-motion:reduce){.section-motion video{display:none}}

/* Only an explicitly requested motion preview overrides the system setting. */
@media(prefers-reduced-motion:reduce){
 :root[data-motion-preview="on"] .section-motion video{display:block}
}
