/* Scoped to the optional test template. Existing theme navigation and FV remain shared. */
.cx-v2{--cx-navy:#334460;--cx-ink:#2a2826;--cx-muted:#6e6963;--cx-line:#d9d3ca;--cx-pink:#fbf4f4;color:var(--cx-ink);background:#fff;font-size:14px;line-height:2;overflow:hidden}
.cx-v2 *, .cx-v2 *::before,.cx-v2 *::after{box-sizing:border-box}
.cx-v2 h2,.cx-v2 h3,.cx-v2 p{margin:0}.cx-v2 h2{font-size:40px;line-height:1.45;font-weight:500;letter-spacing:-.025em}.cx-v2 h3{font-size:20px;line-height:1.7;font-weight:500}.cx-v2 p{color:var(--cx-muted)}.cx-v2 a{color:inherit;text-decoration:none}.cx-v2 img{display:block;max-width:100%}.cx-v2 section[id]{scroll-margin-top:100px}.cx-v2 .cx-label{font-size:12px;line-height:1.6;letter-spacing:.06em;margin-bottom:20px;color:inherit}.cx-v2 .cx-display{font-size:72px;line-height:1.12;letter-spacing:-.045em;font-weight:500}.cx-pad{padding:160px max(40px,calc((100vw - 1200px)/2))}.cx-arrow{width:58px;height:58px;border:1px solid currentColor;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px;font-family:Arial,sans-serif;line-height:1;transition:color .25s,background .25s,transform .25s}.cx-v2 a:hover .cx-arrow{color:#fff;background:var(--cx-navy);transform:translate(2px,-2px)}.cx-v2 a:focus-visible{outline:2px solid var(--cx-navy);outline-offset:5px}
.cx-intro{display:grid;grid-template-columns:464fr 640fr;gap:96px;background:#fff;padding-bottom:100px}.cx-intro .cx-intro-title{font-size:24px;line-height:1.8;margin:40px 0 24px}.cx-index>a{display:grid;grid-template-columns:24px 1fr 48px;gap:24px;padding:30px 0;border-top:1px solid var(--cx-line);align-items:center;min-height:192px;transition:background .25s}.cx-index>a:last-child{border-bottom:1px solid var(--cx-line)}.cx-index>a:hover{background:#f3e8e8}.cx-index .cx-label{margin:0 0 6px;font-size:11px}.cx-index h3{font-size:23px;margin-bottom:10px}.cx-index p{font-size:13px;line-height:1.85}.cx-index-num{align-self:start;font-size:12px;margin-top:2px;color:var(--cx-muted)}.cx-index .cx-arrow{width:44px;height:44px;font-size:18px}
.cx-lifecycle{display:grid;grid-template-columns:560fr 588fr;gap:72px;align-items:center;padding-top:20px;padding-bottom:140px;background:var(--cx-pink)}.cx-cycle{position:relative;width:100%;aspect-ratio:1}.cx-cycle svg{width:100%;height:100%}.cx-cycle-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--cx-navy)}.cx-cycle-center strong{font-size:28px;line-height:1.7;font-weight:500}.cx-cycle-center .cx-label{margin-bottom:14px}.cx-lifecycle h2{font-size:27px;margin-bottom:20px}.cx-lifecycle>div>p{margin-bottom:24px}.cx-phase{padding:22px 28px;background:white;margin-top:12px;font-size:12px;line-height:1.9}.cx-phase h3{font-size:17px;margin-bottom:12px}.cx-phase h3>span{font-size:13px;margin-right:10px}.cx-phase h3 small{font-size:10px;margin-left:12px;font-weight:400}.cx-phase ol{margin:0;padding-left:2em;list-style:decimal}.cx-phase-dark{background:var(--cx-navy);color:white}
.cx-loop{padding:120px 0;overflow:hidden}.cx-loop-track{display:flex;width:max-content;animation:cx-loop 55s linear infinite}.cx-loop-group{display:flex;gap:24px;padding-right:24px;flex-shrink:0}.cx-loop img{height:360px;width:510px;object-fit:cover;border-radius:8px}.cx-loop img:nth-child(odd){width:300px}.cx-loop:hover .cx-loop-track{animation-play-state:paused}@keyframes cx-loop{to{transform:translateX(-50%)}}
.cx-support{display:grid;grid-template-columns:620fr 600fr;gap:100px;padding-right:max(40px,calc((100vw - 1200px)/2));background:var(--cx-pink);min-height:1160px}.cx-support-photo{overflow:hidden;position:relative;min-height:100%}.cx-support-photo img{position:absolute;right:0;top:0;height:134.4%;width:auto;max-width:none}.cx-support-content{padding:140px 0}.cx-support-content>h2{margin-bottom:26px}.cx-support-content>p{margin-bottom:42px}.cx-features article{display:grid;grid-template-columns:150px 1fr;gap:30px;align-items:center;padding:28px 0;border-top:1px solid var(--cx-line)}.cx-features article:last-child{border-bottom:1px solid var(--cx-line)}.cx-features article>img{width:150px;max-height:145px;object-fit:contain}.cx-features .cx-label{margin-bottom:6px;font-size:10px}.cx-features h3{font-size:18px;margin-bottom:12px}.cx-features p{font-size:13px}
.cx-museum{padding:50px max(40px,calc((100vw - 1340px)/2)) 160px}.cx-museum-heading h2{font-size:36px}.cx-museum-visual{position:relative;margin:30px 0 0 auto;width:80%;isolation:isolate}.cx-museum-visual>img{width:100%;position:relative}.cx-museum-visual>span{position:absolute;top:48%;left:-35%;white-space:nowrap;font-size:160px;color:var(--cx-pink);font-weight:500;z-index:-1;letter-spacing:-.035em}.cx-museum-about{display:grid;grid-template-columns:300fr 620fr;gap:100px;margin:150px 50px 100px auto;max-width:1030px}.cx-museum-about h2{font-size:32px}.cx-museum-about h3{font-size:20px;margin-bottom:28px}.cx-museum-about p{font-size:14px}.cx-tour{position:relative;display:block;margin:0 70px;min-height:440px;padding:70px 80px;color:#fff!important;overflow:hidden}.cx-tour>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.48);transition:transform .6s}.cx-tour:hover>img{transform:scale(1.035)}.cx-tour>div{position:relative}.cx-tour h2{font-size:46px}.cx-tour h3{font-size:20px;margin:8px 0 26px}.cx-tour p{color:#fff}.cx-tour-link{display:flex;align-items:center;gap:35px;margin-top:30px}.cx-tour .cx-arrow{width:48px;height:48px}
.cx-events{padding:160px 0;background:var(--cx-pink)}.cx-events-head{display:grid;grid-template-columns:1fr 1fr;gap:160px;margin:0 max(40px,calc((100vw - 1340px)/2)) 64px}.cx-events-head .cx-display{margin-bottom:35px}.cx-events-head>nav>a{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--cx-line);padding:18px 0}.cx-events-head>nav>a:last-child{border-bottom:1px solid var(--cx-line)}.cx-events-head nav .cx-label{margin:0;font-size:10px}.cx-events-head nav h3{font-size:18px}.cx-events-head nav .cx-arrow{border:0;font-size:22px;width:40px;height:40px}.cx-events-slider{border-top:1px solid var(--cx-line);padding-top:40px;margin-left:max(40px,calc((100vw - 1340px)/2))}.cx-events .event-slider__bottom{padding-right:50px}.cx-events .event-slider__title{font-size:16px;line-height:1.7}.cx-events .event-slider__img-wrap img{width:100%;height:100%}
.cx-community{padding-top:160px;padding-bottom:160px}.cx-community-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-bottom:80px}.cx-community h2{font-size:40px;line-height:1.35}.cx-text-link{display:flex;align-items:center;gap:30px;margin-top:32px}.cx-text-link .cx-arrow{color:white;background:var(--cx-navy);width:44px;height:44px}.cx-community-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.cx-community-icon{background:var(--cx-pink);height:260px;display:flex;justify-content:center;align-items:center;margin-bottom:30px}.cx-community-icon img{width:65%;max-height:80%;object-fit:contain;mix-blend-mode:multiply}.cx-community-grid .cx-label{font-size:11px;margin-bottom:14px}.cx-community-grid h3{font-size:24px;margin-bottom:16px}.cx-community-grid p{font-size:14px}
.cx-contact{background:var(--cx-navy);color:white;padding:130px 0;overflow:hidden}.cx-contact>h2{font-size:88px;font-weight:500;white-space:nowrap;color:#ffffff20;letter-spacing:-.025em;margin:0 0 80px}.cx-contact-grid{display:grid;grid-template-columns:1fr 1fr;max-width:1200px;margin:auto}.cx-contact-grid>a{border-top:1px solid #ffffff40;border-bottom:1px solid #ffffff40;padding:40px 54px;display:flex;align-items:center;gap:30px}.cx-contact-grid>a:first-child{padding-left:0;border-right:1px solid #ffffff40}.cx-contact-grid>a:last-child{padding-right:0}.cx-contact-grid .cx-label{font-size:11px;margin-bottom:4px;color:#c4c9d0}.cx-contact-grid h3{font-size:24px;margin-bottom:10px}.cx-contact-grid p{font-size:12px;color:#c4c9d0}.cx-contact-grid .cx-arrow{width:72px;height:72px}.cx-breadcrumb{display:flex;gap:16px;padding:36px 5%;font-size:11px;background:white;color:#6e6963}
@media(min-width:1600px){.cx-support{grid-template-columns:1fr 600px}}
@media(max-width:1100px){.cx-pad{padding-left:40px;padding-right:40px}.cx-intro{gap:48px}.cx-v2 .cx-display{font-size:60px}.cx-index h3{font-size:19px}.cx-index>a{gap:14px}.cx-support{gap:45px;grid-template-columns:40% 1fr}.cx-features article{grid-template-columns:100px 1fr;gap:20px}.cx-features article>img{width:100px}.cx-museum-about{margin-right:0;gap:60px}.cx-events-head{gap:70px}.cx-tour{margin:0;padding:60px}.cx-community-head{gap:40px}.cx-community h2{font-size:34px}.cx-community-grid{gap:24px}.cx-contact-grid{margin:0 40px}.cx-lifecycle{gap:35px}.cx-cycle-center strong{font-size:23px}}
@media(max-width:767px){.cx-v2{font-size:14px}.cx-pad{padding:80px 24px}.cx-v2 h2{font-size:30px}.cx-v2 .cx-display{font-size:58px}.cx-v2 .cx-label{margin-bottom:16px}.cx-intro{grid-template-columns:1fr;gap:48px}.cx-intro .cx-intro-title{font-size:20px;margin:28px 0 20px}.cx-index>a{grid-template-columns:20px 1fr 34px;padding:25px 0;min-height:0;gap:12px}.cx-index .cx-label{margin-bottom:7px;font-size:10px}.cx-index h3{font-size:19px}.cx-index .cx-arrow{width:34px;height:34px}.cx-lifecycle{grid-template-columns:1fr;padding-top:0;gap:40px}.cx-cycle{max-width:480px;margin:auto}.cx-cycle-center strong{font-size:24px}.cx-lifecycle h2{font-size:24px}.cx-phase{padding:20px}.cx-phase h3{font-size:16px}.cx-phase h3 small{font-size:9px;margin-left:4px}.cx-loop{padding:64px 0}.cx-loop-group{gap:14px;padding-right:14px}.cx-loop img{width:310px;height:230px}.cx-loop img:nth-child(odd){width:190px}.cx-support{display:block;padding:0;min-height:0}.cx-support-photo{height:460px;min-height:0}.cx-support-photo img{height:134.4%;right:0}.cx-support-content{padding:70px 24px}.cx-features article{grid-template-columns:84px 1fr;gap:20px}.cx-features article>img{width:84px}.cx-features h3{font-size:16px}.cx-features .cx-label{margin-bottom:6px}.cx-museum{padding:64px 24px 80px}.cx-museum-heading h2{font-size:30px}.cx-museum-visual{width:100%;margin-top:40px}.cx-museum-visual>span{font-size:68px;left:-8%}.cx-museum-about{grid-template-columns:1fr;gap:30px;margin:65px 0 50px}.cx-museum-about h2{font-size:27px}.cx-museum-about h3{font-size:18px}.cx-tour{padding:40px 26px;min-height:430px}.cx-tour h2{font-size:36px}.cx-tour h3{font-size:17px}.cx-tour p br{display:none}.cx-tour-link{gap:24px;font-size:13px}.cx-events{padding:80px 0}.cx-events-head{grid-template-columns:1fr;gap:40px;margin:0 24px 40px}.cx-events-head nav .cx-label{margin:0}.cx-events-slider{margin-left:24px}.cx-events .event-slider__bottom{padding-right:24px}.cx-community-head{grid-template-columns:1fr;gap:30px;margin-bottom:50px}.cx-community h2{font-size:32px}.cx-community-grid{grid-template-columns:1fr;gap:44px}.cx-community-icon{height:250px;margin-bottom:24px}.cx-community-icon img{height:180px;width:auto}.cx-community-grid .cx-label{margin-bottom:10px}.cx-community-grid h3{font-size:22px}.cx-contact{padding:70px 0}.cx-contact>h2{font-size:46px;margin-bottom:40px}.cx-contact-grid{display:block;margin:0 24px}.cx-contact-grid>a,.cx-contact-grid>a:first-child,.cx-contact-grid>a:last-child{padding:28px 0;border-right:0;gap:24px}.cx-contact-grid>a:last-child{border-top:0}.cx-contact-grid .cx-label{margin-bottom:5px}.cx-contact-grid h3{font-size:21px}.cx-contact-grid .cx-arrow{width:50px;height:50px}.cx-breadcrumb{padding:25px 24px;gap:12px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.cx-loop-track{animation:none}.cx-loop{overflow-x:auto}.cx-loop-group[aria-hidden]{display:none}.cx-v2 a .cx-arrow,.cx-tour>img{transition:none}}
.cx-v2 img{height:auto}.cx-loop img{height:360px}.cx-support-photo img{height:134.4%}.cx-tour>img{height:100%}.cx-cycle-center strong{font-size:24px}.cx-cycle-center .cx-label{font-size:11px}.cx-phase ol{display:flex;flex-direction:column;align-items:flex-start;gap:4px;counter-reset:phase;padding:0;list-style:none}.cx-phase li{counter-increment:phase;background:#fbf8f8;padding:1px 10px;font-size:11px;line-height:1.7}.cx-phase li:before{content:counter(phase) ' ';margin-right:8px;opacity:.65}.cx-phase-dark li{background:#ffffff12}.cx-phase:first-of-type ol{flex-direction:row;flex-wrap:wrap}.cx-lifecycle{min-height:837px}.cx-museum-visual>img{height:auto}.cx-museum{min-height:1960px}.cx-community{min-height:1133px}
@media(max-width:767px){.cx-loop img{height:230px}.cx-lifecycle,.cx-museum,.cx-community{min-height:0}.cx-cycle-center strong{font-size:22px}.cx-community-icon img{height:180px}}
@media(max-width:767px){.cx-support-photo img{height:180%}.cx-events .event-slider__bottom{flex-wrap:wrap;gap:28px}.cx-events .event-slider__btn{width:100%}.cx-events .event-slider__btn .btn{width:100%;white-space:nowrap}.cx-events .event-slider__arrows{gap:16px}.cx-events .event-slider__title{font-size:15px}}

/* Detail pass: measured Figma IndexRow (640 × 186, gap 32, inset 36, circle 52). */
.cx-v2{letter-spacing:0;--cx-ease:cubic-bezier(.22,1,.36,1)}
.cx-v2 .cx-display{font-size:64px;line-height:1.3;font-weight:600;letter-spacing:.005em}
.cx-intro>div{display:flex;flex-direction:column;align-items:flex-start;gap:36px}
.cx-intro>div>.cx-label,.cx-intro .cx-intro-title{margin:0}
.cx-intro .cx-intro-title{font-size:24px;line-height:1.8;font-weight:600}
.cx-intro>div>p:last-child{font-size:14px;line-height:2.2;color:var(--cx-ink)}
.cx-index{padding-top:24px;position:relative}
.cx-index:before{content:"";position:absolute;top:24px;left:0;right:0;border-top:1px solid var(--cx-line)}
.cx-index>a{grid-template-columns:28px minmax(0,1fr) 52px;gap:32px;padding:36px 0;min-height:186px;border-top:0;border-bottom:1px solid var(--cx-line);position:relative;isolation:isolate}
.cx-index-num{align-self:center;margin:0;font-size:16px;color:var(--cx-navy)}
.cx-index .cx-label{font-size:12px;line-height:1.6;letter-spacing:.04em;margin:0 0 6px;color:var(--cx-muted)}
.cx-index h3{font-size:20px;line-height:1.5;font-weight:600;letter-spacing:.025em;margin-bottom:8px}
.cx-index p{font-size:12px;line-height:1.85}
.cx-index .cx-arrow{width:52px;height:52px;color:var(--cx-navy)}
.cx-index>a:hover{background:transparent}
.cx-index>a:before{content:"";position:absolute;inset:0 -16px;background:#eee7e4;z-index:-1;transform:scaleY(0);transform-origin:bottom;transition:transform .55s var(--cx-ease)}
.cx-index>a:hover:before,.cx-index>a:focus-visible:before{transform:scaleY(1)}
.cx-arrow{position:relative;overflow:hidden;transform:none!important;transition:background .4s var(--cx-ease),color .4s var(--cx-ease),border-color .4s}
.cx-arrow-track{display:block;width:18px;height:18px;position:relative;transform:rotate(0deg)}
.cx-arrow-track svg{position:absolute;inset:0;width:18px;height:18px;transition:transform .55s var(--cx-ease)}
.cx-arrow-track svg+svg{transform:translateX(-210%)}
.cx-arrow-diagonal .cx-arrow-track{transform:rotate(-45deg)}
.cx-v2 a:hover .cx-arrow-track svg,.cx-v2 a:focus-visible .cx-arrow-track svg{transform:translateX(210%)}
.cx-v2 a:hover .cx-arrow-track svg+svg,.cx-v2 a:focus-visible .cx-arrow-track svg+svg{transform:translateX(0)}
.cx-v2 a:focus-visible .cx-arrow{background:var(--cx-navy);color:white}
.cx-lifecycle{padding-left:max(40px,calc((100% - 1240px)/2));padding-right:max(40px,calc((100% - 1200px)/2));grid-template-columns:560fr 588fr}
.cx-lifecycle h2{font-weight:600}.cx-phase{padding:22px 24px}.cx-phase h3{line-height:1.5}.cx-phase li{margin:0}
.cx-features article{padding:32px 0;gap:32px}.cx-features h3{line-height:1.65;font-weight:600}.cx-features p{line-height:2}
.cx-support-content>p{margin-bottom:48px}.cx-features .cx-label{margin-bottom:10px}
.cx-museum-about{margin-top:160px;margin-bottom:100px}.cx-museum-about .cx-label{margin-bottom:24px}.cx-museum-about h3{line-height:1.8;margin-bottom:28px}.cx-museum-about p{line-height:2.2}
.cx-events-head>nav>a{padding:18px 0}.cx-events-head>nav h3{line-height:1.6}.cx-events-head nav .cx-arrow{width:40px;height:40px}.cx-events-head nav .cx-arrow-track{width:16px;height:16px}
.cx-community-head p{line-height:2.2}.cx-community-grid h3{margin-bottom:20px;font-weight:500}.cx-community-grid p{line-height:2.1}
.cx-contact>h2{margin-bottom:56px}.cx-contact-grid>a{padding-top:40px;padding-bottom:40px}.cx-contact-grid .cx-arrow{color:#fff}.cx-contact-grid a:hover .cx-arrow{background:white;color:var(--cx-navy)}
.cx-loop-track{animation-duration:65s}.cx-loop-group{gap:24px}
.cx-motion-line{display:block;overflow:clip;padding-bottom:.08em;margin-bottom:-.08em}
.cx-motion-line>span{display:block;transform-origin:0 100%}
.cx-museum-visual>img,.cx-museum-visual>span,.cx-support-photo>img{will-change:transform}
@media(min-width:1101px){.cx-pad{padding-left:max(40px,calc((100% - 1200px)/2));padding-right:max(40px,calc((100% - 1200px)/2))}.cx-lifecycle{padding-left:max(40px,calc((100% - 1240px)/2))}.cx-events-head{grid-template-columns:560fr 620fr;gap:160px}.cx-events{padding-top:160px;padding-bottom:140px}}
@media(max-width:1100px){.cx-index>a{gap:20px;grid-template-columns:24px minmax(0,1fr) 44px}.cx-index .cx-arrow{width:44px;height:44px}.cx-index h3{font-size:18px}.cx-intro>div{gap:28px}.cx-v2 .cx-display{font-size:56px}}
@media(max-width:767px){.cx-v2 .cx-display{font-size:48px;line-height:1.25}.cx-intro>div{gap:28px}.cx-intro .cx-intro-title{font-size:20px;line-height:1.8}.cx-intro>div>p:last-child{font-size:13px;line-height:2.1}.cx-index{padding-top:0}.cx-index:before{top:0}.cx-index>a{grid-template-columns:22px minmax(0,1fr) 40px;gap:14px;padding:28px 0;min-height:0}.cx-index-num{font-size:12px}.cx-index .cx-arrow{width:40px;height:40px}.cx-index h3{font-size:17px;line-height:1.65}.cx-index .cx-label{font-size:10px}.cx-index p{font-size:12px;line-height:1.9}.cx-lifecycle{padding-left:24px;padding-right:24px}.cx-features article{gap:20px;padding:28px 0}.cx-museum-about{margin:64px 0 48px}.cx-community-grid h3{margin-bottom:16px}.cx-contact>h2{margin-bottom:36px}.cx-support-photo>img,.cx-museum-visual>img,.cx-museum-visual>span{will-change:auto}}
@media(prefers-reduced-motion:reduce){.cx-v2 .cx-arrow-track svg,.cx-index>a:before{transition:none}.cx-museum-visual>img,.cx-museum-visual>span,.cx-support-photo>img{will-change:auto}}
/* Reserve enough image bleed for the 30px scroll translation. */
@media(min-width:768px){.cx-support-photo img{height:calc(134.4% + 48px)}}

/* Automatic horizontal gallery with independent inner-image parallax. */
.cx-index>a:before{display:none}
.cx-index>a:hover,.cx-index>a:focus-visible{background:transparent}
.cx-parallax{background:#fbf4f4;padding:80px 0;overflow:hidden}
.cx-parallax-warp{position:relative}
.cx-parallax-track{display:flex;position:relative;width:max-content;will-change:transform}
.cx-parallax-group{position:relative;display:flex;align-items:center;flex-shrink:0;gap:24px;padding-right:24px}
.cx-parallax-photo,.cx-parallax-photo.is-wide{position:relative;margin:0;width:clamp(340px,60vw,800px);height:clamp(240px,33.75vw,400px);flex-shrink:0;overflow:hidden;border-radius:12px}
.cx-parallax-photo img{position:absolute;left:-12.5%;top:0;display:block;width:125%;max-width:none;height:100%;object-fit:cover;will-change:transform}
@media(max-width:767px){.cx-parallax{padding:56px 0}.cx-parallax-photo,.cx-parallax-photo.is-wide{width:82vw;height:250px;border-radius:8px}.cx-parallax-group{gap:16px;padding-right:16px}}
@media(prefers-reduced-motion:reduce){.cx-parallax{overflow-x:auto}.cx-parallax-track{transform:none!important;will-change:auto}.cx-parallax-photo img{transform:none!important;will-change:auto}.cx-parallax-group[aria-hidden]{display:none}}

/* Revised Figma desktop and SP (400): independent museum photographs. */
.cx-museum{padding:64px max(24px,calc((100% - 1200px)/2)) 160px;min-height:0;background:#fff}
.cx-museum-stage{position:relative;max-width:1200px;margin:auto;height:920px}
.cx-museum-heading{position:relative;z-index:2;pointer-events:none}
.cx-museum-heading .cx-label{margin-bottom:16px;font-size:12px;color:var(--cx-navy)}
.cx-museum-heading h2{font-size:60px;line-height:1.25;letter-spacing:.04em;font-weight:600}
.cx-museum-heading .cx-museum-tagline{margin-top:8px;color:var(--cx-navy);font-size:16px;letter-spacing:.04em}
.cx-museum-visual{position:absolute;inset:0;width:100%;margin:0;isolation:isolate}
.cx-museum-visual:before{content:"";position:absolute;left:-10%;top:240px;width:68.33%;height:616px;background:var(--cx-pink);z-index:-1}
.cx-museum-side{position:absolute;left:-54px;top:120px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.22em}
.cx-museum-photo{position:absolute;margin:0;will-change:transform}
.cx-museum-photo-frame{overflow:hidden;position:relative;box-shadow:0 24px 40px rgba(31,26,23,.16)}
.cx-museum-photo img{display:block;width:100%;height:100%;object-fit:cover}
.cx-museum-photo figcaption{margin-top:14px;font-size:10px;line-height:1.6;letter-spacing:.12em;color:var(--cx-muted)}
.cx-museum-photo--interior{left:1.667%;top:196px;width:43.333%}
.cx-museum-photo--interior .cx-museum-photo-frame{aspect-ratio:520/660}
.cx-museum-photo--entrance{left:50%;top:56px;width:28.333%}
.cx-museum-photo--entrance .cx-museum-photo-frame{aspect-ratio:340/460}
/* Display the entrance area of the existing composite without adding assets. */
.cx-museum-photo--entrance img{position:absolute;left:0;bottom:0;width:322.32%;height:134.4%;max-width:none;object-fit:fill}
.cx-museum-photo--office{right:0;top:596px;width:35%}
.cx-museum-photo--office .cx-museum-photo-frame{aspect-ratio:420/320}
.cx-museum-about{grid-template-columns:340fr 800fr;gap:60px;max-width:1200px;margin:80px auto 100px}
.cx-museum-about h2{font-size:32px;font-weight:600;white-space:nowrap}
.cx-museum-about h3{font-size:18px;font-weight:500;line-height:1.8;margin-bottom:28px}
.cx-museum-about p{font-size:14px;line-height:2.2}
.cx-tour{max-width:1200px;margin:0 auto;min-height:440px;padding:80px}
.cx-tour h2{font-size:40px;font-weight:600;letter-spacing:.025em}
.cx-tour h3{font-size:20px;margin:12px 0 20px}
.cx-events-head{max-width:1340px;margin-left:auto;margin-right:auto;padding:0 0;gap:100px;grid-template-columns:520fr 720fr}
.cx-events-head .cx-display{font-size:60px;margin-bottom:24px}
.cx-events-head>nav>a{display:grid;grid-template-columns:160px 1fr 24px;gap:16px;padding:16px 0;border-top:0;border-bottom:1px solid var(--cx-line)}
.cx-events-head nav h3{font-size:16px;font-weight:500}
.cx-events-head nav .cx-arrow{width:24px;height:24px}
.cx-community h2{font-weight:600;letter-spacing:.015em}
@media(min-width:768px) and (max-width:1439px){
 .cx-museum-stage{height:calc((100vw - 48px)*.766667)}
 .cx-museum-photo--interior{top:21.3%}.cx-museum-photo--entrance{top:6.087%}.cx-museum-photo--office{top:64.78%}
 .cx-museum-visual:before{top:26.087%;height:66.957%}
 .cx-museum-heading h2{font-size:clamp(32px,4.167vw,60px)}
 .cx-events-head{margin-left:40px;margin-right:40px;gap:60px}
}
@media(max-width:767px){
 .cx-pad{padding:72px 24px}
 .cx-intro{gap:28px}.cx-intro>div{gap:24px}
 .cx-index>a{grid-template-columns:20px minmax(0,1fr) 32px;gap:12px;padding:24px 0}
 .cx-index .cx-arrow{width:32px;height:32px}.cx-index h3{font-size:17px}
 .cx-lifecycle{display:flex;flex-direction:column;gap:24px;align-items:stretch;padding:72px 24px;min-height:0}
 .cx-cycle{width:100%;max-width:352px}.cx-cycle-center strong{font-size:22px}
 .cx-lifecycle h2{font-size:24px}.cx-phase{padding:20px;margin-top:12px}
 .cx-support-photo{height:300px}.cx-support-photo img{height:100%;width:100%;object-fit:cover;object-position:center}
 .cx-support-content{padding:20px 24px 72px}.cx-support-content>h2{font-size:28px;margin-bottom:16px}
 .cx-support-content>p{font-size:13px;margin-bottom:24px}
 .cx-features article{grid-template-columns:88px minmax(0,1fr);gap:16px;padding:24px 0}
 .cx-features article>img{width:88px}.cx-features h3{font-size:15px;margin-bottom:10px}.cx-features p{font-size:12px;line-height:1.9}
 .cx-museum{padding:72px 0;min-height:0}
 .cx-museum-stage{height:auto;max-width:none}
 .cx-museum-heading{padding:0 24px}.cx-museum-heading .cx-label{font-size:11px;margin-bottom:12px}
 .cx-museum-heading h2{font-size:34px}.cx-museum-heading .cx-museum-tagline{font-size:13px;margin-top:8px}
 .cx-museum-visual{position:relative;inset:auto;height:520px;margin:0;width:100%}
 .cx-museum-visual:before{left:0;top:120px;width:70%;height:260px}
 .cx-museum-side{display:none}
 .cx-museum-photo--interior{left:6%;top:60px;width:52.5%}
 .cx-museum-photo--interior .cx-museum-photo-frame{aspect-ratio:210/270}
 .cx-museum-photo--entrance{left:auto;right:0;top:190px;width:37.5%}
 .cx-museum-photo--entrance .cx-museum-photo-frame{aspect-ratio:150/190}
 .cx-museum-photo--office{right:15%;top:350px;width:57.5%}
 .cx-museum-photo--office .cx-museum-photo-frame{aspect-ratio:230/160}
 .cx-museum-photo figcaption{display:none}
 .cx-museum-photo{will-change:auto}
 .cx-museum-about{display:grid;grid-template-columns:1fr;gap:20px;margin:24px 24px 32px}
 .cx-museum-about .cx-label{font-size:11px;margin-bottom:10px}
 .cx-museum-about h2{font-size:24px}.cx-museum-about h3{font-size:14px;line-height:1.9;margin-bottom:16px}.cx-museum-about p{font-size:12px;line-height:2}
 .cx-tour{margin:0 24px;min-height:280px;padding:36px 24px}
 .cx-tour h2{font-size:28px}.cx-tour h3{font-size:14px;margin:8px 0 16px}.cx-tour p{font-size:12px;line-height:1.9}
 .cx-tour-link{margin-top:24px;gap:20px;font-size:11px}.cx-tour .cx-arrow{width:36px;height:36px}
 .cx-events{padding:72px 0}.cx-events-head{display:grid;grid-template-columns:1fr;gap:24px;margin:0 24px 24px}
 .cx-events-head .cx-display{font-size:40px;margin-bottom:16px}.cx-events-head p{font-size:13px}
 .cx-events-head>nav>a{grid-template-columns:104px minmax(0,1fr) 20px;gap:12px;padding:14px 0}
 .cx-events-head nav h3{font-size:13px}.cx-events-head nav .cx-label{font-size:9px}
 .cx-events-slider{padding-top:24px;margin-left:24px}
 .cx-community-head{gap:24px;margin-bottom:32px}.cx-community h2{font-size:28px}
 .cx-community-head p{font-size:13px}.cx-community-grid{gap:32px}
 .cx-community-icon{height:200px;margin-bottom:20px}.cx-community-icon img{height:160px}
 .cx-community-grid h3{font-size:22px;margin-bottom:12px}.cx-community-grid p{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.cx-museum-photo{will-change:auto}}
/* Let the existing semantic group share the three-column navigation grid. */
.cx-events-head>nav>a>div{display:contents}
.cx-events-head>nav>a:hover .cx-arrow,.cx-events-head>nav>a:focus-visible .cx-arrow{background:transparent;color:var(--cx-navy)}

/* Figma revision: 2925:633 (desktop), 2927:633 (SP). */
.cx-support{display:block;min-height:0;padding:150px max(40px,calc((100% - 1200px)/2));background:var(--cx-pink)}
.cx-support-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:72px}
.cx-support-heading .cx-label{color:var(--cx-navy);margin-bottom:24px}
.cx-support-heading h2{font-size:40px;line-height:1.5;font-weight:600;letter-spacing:.02em}
.cx-support-heading>p{font-size:16px;line-height:2;color:var(--cx-ink)}
.cx-support-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;align-items:start}
.cx-support-card{display:flex;flex-direction:column;gap:20px;min-width:0}
.cx-support-card .cx-label{margin:0;font-size:12px;line-height:1.6;color:var(--cx-navy)}
.cx-support-illustration{display:flex;align-items:center;justify-content:center;background:#fff;height:230px;width:100%}
.cx-support-illustration img{width:80%;height:80%;max-width:280px;object-fit:contain}
.cx-support-card h3{font-size:20px;line-height:1.7;font-weight:600;letter-spacing:0}
.cx-support-card>p:not(.cx-label){font-size:14px;line-height:2;color:var(--cx-muted)}
/* Preserve the portrait/landscape proportions of each source photo. */
.cx-parallax-photo,.cx-parallax-photo.is-wide{height:clamp(260px,27.78vw,400px);width:auto;aspect-ratio:var(--photo-ratio,3/2)}
@media(max-width:1023px) and (min-width:768px){.cx-support{padding:100px 40px}.cx-support-heading{gap:40px}.cx-support-cards{gap:24px}.cx-support-card h3{font-size:18px}.cx-support-illustration{height:190px}}
@media(max-width:767px){
 .cx-support{padding:72px 24px}
 .cx-support-heading{display:flex;flex-direction:column;align-items:stretch;gap:24px;margin-bottom:36px}
 .cx-support-heading .cx-label{font-size:11px;margin-bottom:16px}
 .cx-support-heading h2{font-size:28px;line-height:1.5}
 .cx-support-heading>p{font-size:13px;line-height:2}
 .cx-support-cards{grid-template-columns:1fr;gap:40px}
 .cx-support-card{gap:14px}
 .cx-support-card .cx-label{font-size:10px;margin:0}
 .cx-support-illustration{height:190px}
 .cx-support-illustration img{width:76%;height:80%;max-width:260px}
 .cx-support-card h3{font-size:16px;line-height:1.7}
 .cx-support-card>p:not(.cx-label){font-size:12px;line-height:2}
 .cx-support-detail-pc{display:none}
 .cx-parallax-photo,.cx-parallax-photo.is-wide{width:auto;height:250px}
}

/* Stronger inner-image travel; keep enough bleed to prevent exposed edges. */
.cx-parallax-photo img{left:-32.5%;width:165%}
@media(prefers-reduced-motion:no-preference){.cx-museum-photo{will-change:transform}}
@media(prefers-reduced-motion:reduce){.cx-parallax-photo img{left:0;width:100%}}

/* Clear community CTA and the theme's shared gray hover color. */
.cx-community .cx-text-link{display:inline-flex;justify-content:space-between;align-items:center;width:max-content;max-width:100%;min-height:60px;gap:32px;padding:12px 20px 12px 28px;border:1px solid #626262;border-radius:999px;background:#fff;color:#2a2826;font-size:14px;font-weight:500;line-height:1.5;transition:background .3s,color .3s,border-color .3s}
.cx-community .cx-text-link .cx-arrow{width:32px;height:32px;border:0;background:transparent;color:inherit}
.cx-v2 a:is(:hover,:focus-visible) .cx-arrow{background:#626262;color:#fff;border-color:#626262}
.cx-community .cx-text-link:is(:hover,:focus-visible){background:#626262;border-color:#626262;color:#fff}
.cx-v2 .cx-community .cx-text-link:is(:hover,:focus-visible) .cx-arrow{background:transparent;color:#fff}
@media(max-width:767px){.cx-community .cx-text-link{width:100%;min-height:56px;padding:12px 20px 12px 24px;gap:20px}}
@media(prefers-reduced-motion:reduce){.cx-community .cx-text-link{transition:none}}

/* Match the event hover cutout to this section's background. */
.cx-events .event-slider__corner{
 background:var(--cx-pink);
 -webkit-mask:url("../img/common/icon-corner-white.svg") center / 100% 100% no-repeat;
 mask:url("../img/common/icon-corner-white.svg") center / 100% 100% no-repeat;
}
.cx-events .event-slider__corner>img{visibility:hidden}

/* Explicit sentence break and right-aligned support introduction. */
.cx-support-heading{grid-template-columns:minmax(200px,1fr) minmax(0,760px);gap:48px}
.cx-support-heading>p{text-align:right}
@media(min-width:1024px){.cx-support-heading>p{white-space:nowrap;font-size:clamp(12px,1.112vw,16px)}}
@media(max-width:1023px) and (min-width:768px){.cx-support-heading{grid-template-columns:1fr 2fr;gap:32px}}

/* Test-page footer: one background and the shared footer container width. */
.footer.cx-footer{padding-top:0}
.cx-footer .cx-footer-contact,.cx-footer .cx-contact{background:#1f1f1f}
.cx-footer .cx-contact{padding:88px 0 0}
.cx-footer .cx-contact>h2{margin-bottom:48px}
.cx-footer .cx-contact-grid{max-width:none;margin:0}
.cx-footer .cx-contact-grid>a{padding-top:36px;padding-bottom:36px;justify-content:space-between}
.cx-footer .cx-contact-grid>a>div{min-width:0}
.cx-footer>.container{padding-top:48px}
.cx-footer .footer__bottom{border-top:0;padding-top:0}
.cx-footer-contact a:focus-visible{outline-color:#fff}
@media(max-width:767px){
 .cx-footer .cx-contact{padding-top:56px}
 .cx-footer .cx-contact>h2{margin-bottom:32px}
 .cx-footer .cx-contact-grid>a{padding-top:28px;padding-bottom:28px}
 .cx-footer>.container{padding-top:36px}
}

/* Decorative contact title: equal repeated units make the loop seamless. */
.cx-contact-marquee{overflow:hidden}
.cx-contact-marquee-track{display:flex;width:max-content;animation:cx-contact-drift 60s linear infinite}
.cx-contact-marquee-track>span{display:block;flex-shrink:0;padding-right:72px}
.cx-contact-marquee:hover .cx-contact-marquee-track,
.cx-footer:focus-within .cx-contact-marquee-track{animation-play-state:paused}
@keyframes cx-contact-drift{to{transform:translateX(-50%)}}
@media(max-width:767px){
 .cx-contact-marquee-track{animation-duration:42s}
 .cx-contact-marquee-track>span{padding-right:40px}
}
@media(prefers-reduced-motion:reduce){.cx-contact-marquee-track{animation:none}}

/* Clip the spare arrow inside its icon viewport, not just the large circle. */
.cx-footer .cx-arrow-track{overflow:hidden}
.cx-footer .cx-contact-grid>a:is(:hover,:focus-visible) .cx-arrow{
 background:#fff;color:#1f1f1f;border-color:#fff;
}
