:root{--ink:#102653;--navy:#002b82;--paper:#f8faff;--gold:#245edb;--muted:#536681;--line:#d4e0f3;--serif:'Shippori Mincho','Yu Mincho','Hiragino Mincho ProN',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--serif);font-size:14px;font-weight:400;line-height:1.9}a{color:inherit;text-decoration:none}button,video{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5}h2{font-size:clamp(30px,3.1vw,48px);font-weight:700;letter-spacing:.055em}h3{font-size:21px;font-weight:700}p{color:var(--muted)}:focus-visible{outline:3px solid #2465e3;outline-offset:5px}.skip{position:absolute;top:-90px;padding:14px;background:white;z-index:100}.skip:focus{top:0}.site-header{height:96px;padding:0 4.4%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:30}.wordmark{font-family:Georgia,serif;font-size:42px;line-height:1;letter-spacing:-2px;white-space:nowrap}.wordmark span{display:block;font:400 8px Arial,sans-serif;letter-spacing:1.4px;margin-top:10px}nav{display:flex;align-items:center;gap:29px;font-size:12px;font-weight:700}nav a:not(.nav-cta){padding:10px 0;border-bottom:1px solid transparent}nav a:hover,nav a[aria-current]{border-bottom-color:var(--gold)}.nav-cta{background:var(--navy);color:white;padding:15px 23px}.nav-cta span{margin-left:25px}.menu-toggle{display:none}.hero{min-height:700px;height:calc(100svh - 96px);max-height:1000px;position:relative;background:var(--navy);color:white;overflow:hidden}.hero-video,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(0,22,78,.84),rgba(0,40,120,.38) 65%,rgba(0,40,120,.2)),linear-gradient(0deg,rgba(0,20,70,.75),transparent 40%)}.hero-content{position:relative;margin:0 8%;padding-top:7vh}.eyebrow{font:400 10px/1.6 Arial,sans-serif;letter-spacing:2.3px;font-weight:700;color:var(--gold);margin-bottom:25px}.hero .eyebrow{color:#dceaff;display:flex;align-items:center;gap:15px}.tiny-line{width:30px;height:1px;background:var(--gold)}.hero h1{font-family:var(--serif);font-weight:700;font-size:clamp(48px,5.4vw,82px);line-height:1.42;letter-spacing:.065em;margin:0 0 26px}.hero em,.event-hero em{font-style:inherit;color:#86bcff}.hero-copy{color:#edf5ff;font-size:14px;letter-spacing:.07em;line-height:2}.hero-actions{display:flex;gap:35px;align-items:center;margin-top:30px}.button{min-height:57px;padding:17px 25px;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;font-size:13px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px)}.gold{background:#1255d9;color:#102653}.gold:hover{background:#0642b8}.outline{border:1px solid var(--ink)}.outline-light{border:1px solid #88afe8;color:white}.hero-link{font-size:12px;border-bottom:1px solid #8fafe0;padding:10px 0}.hero-link span{margin-left:30px}.hero-side{position:absolute;right:3%;top:20%;writing-mode:vertical-rl;font:400 9px Arial;letter-spacing:3px}.hero-bottom{position:absolute;bottom:28px;left:8%;right:5%;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1px}.hero-bottom>a{font:400 9px Arial;letter-spacing:2px}.video-toggle{border:1px solid #96b6e6;background:#002b8266;color:white;padding:6px 13px;font:400 9px Arial;letter-spacing:2px}.film-strip{position:relative;padding:65px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;background:#eaf1ff}.film-copy h2{font-size:27px;margin-bottom:15px}.film-copy p:last-child{font-size:12px}.film-strip video{width:100%;aspect-ratio:16/9;background:var(--navy);object-fit:contain}.film-caption{position:absolute;right:8%;bottom:33px;font:400 8px Arial;letter-spacing:2px}.section{padding:110px 8%}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%}.serif{font-family:var(--serif)}.gold-text{color:#1255d9}.lead{font-size:22px;color:var(--ink);line-height:1.8}.about-copy>p:not(.lead){line-height:2.2}.values{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:25px;margin-top:35px;font:400 13px Georgia;letter-spacing:1px}.values small{display:block;font:400 11px/1.9 var(--serif);margin-top:10px;color:var(--muted)}.photo-band{position:relative;height:530px;margin:0 4%}.photo-band img{width:100%;height:100%;object-position:center 45%}.photo-band:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#001b65b8,transparent)}.photo-band>div{position:absolute;z-index:1;left:5%;bottom:40px}.photo-band>div>p:last-child{color:white;font:400 40px/1.6 var(--serif);margin:0}.photo-band .eyebrow{color:#c3ddff}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;margin-bottom:8px}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.benefit{background:var(--paper);padding:35px;display:flex;flex-direction:column}.benefit.feature{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;padding:0}.benefit-image img{height:100%;width:100%;min-height:330px}.benefit-body{padding:35px}.number{font:400 9px Arial;letter-spacing:1.4px;color:#526b97;display:block;margin-bottom:25px}.line-icon{font:400 48px Georgia;color:#2461d7;margin-bottom:20px;line-height:1}.benefit p{font-size:13px;line-height:2}.benefit h3{font-size:20px}.benefit small{color:var(--muted);font-size:10px}.text-link{display:inline-block;font-size:12px;padding-bottom:8px;border-bottom:1px solid var(--ink)}.text-link:hover{color:#134db8}.chapters{padding-top:50px}.chapters .eyebrow{margin-bottom:12px}.chapters h3{font-size:20px}.tags{display:flex;gap:10px;flex-wrap:wrap}.tags span{border:1px solid var(--line);border-radius:30px;padding:8px 18px;font-size:12px}.events-preview{background:#eaf1ff}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.preview-photo{position:relative;overflow:hidden}.preview-photo img{aspect-ratio:1.5;width:100%;transition:transform .4s}.preview-card:hover img{transform:scale(1.04)}.preview-photo>span{position:absolute;bottom:0;left:0;background:var(--paper);font-size:10px;padding:5px 17px}.event-date{margin-top:23px;font:400 22px Georgia;color:var(--ink)}.event-date small{font:400 10px Arial;margin-left:10px}.preview-card h3{font-size:20px;display:flex;justify-content:space-between;border-bottom:1px solid #c6d6ef;padding-bottom:15px}.preview-card>p:last-child{font-size:12px}.voice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.voice{border-top:1px solid var(--gold);padding-top:15px}.quote{font:400 60px Georgia;color:var(--gold);display:block;height:55px}.industry{font-size:10px;letter-spacing:1px;color:#134db8}.voice h3{font-size:17px;margin:15px 0}.voice p{font-size:12px;line-height:2}.note{font-size:10px;margin-top:22px;color:var(--muted);line-height:1.9}.membership{background:#eaf1ff}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.plan{position:relative;padding:45px;background:var(--paper);display:flex;flex-direction:column}.plan h3{font-size:29px;margin-bottom:10px}.plan .eyebrow{margin-bottom:15px}.plan>p{font-size:12px}.price{font:400 60px Georgia;margin:25px 0 15px;letter-spacing:-1.5px}.price span{font:400 11px/1.9 var(--serif);letter-spacing:0;margin-left:10px}.plan ul{list-style:none;padding:20px 0;border-top:1px solid var(--line);margin-bottom:30px;font-size:12px}.plan li{padding:7px 0}.plan li:before{content:'✓';margin-right:12px;color:#3578ef}.plan .button{margin-top:auto}.partner{background:var(--navy);color:white}.partner>p{color:#dbe9ff}.partner ul{border-color:#426aab}.plan-label{position:absolute;top:0;right:0;background:var(--gold);color:var(--navy);padding:4px 15px;font-size:9px}.payment-note{display:grid;grid-template-columns:1fr 1.8fr;margin-top:35px;gap:20px}.payment-note strong{font-weight:700}.payment-note p{font-size:11px}.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:8%}.faq>div>p:not(.eyebrow){font-size:13px}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:18px;padding:22px 0;font-size:13px}summary::-webkit-details-marker{display:none}summary>span{font:400 12px Georgia;color:#245edb}summary b{margin-left:auto;font-weight:700;color:#245edb;flex-shrink:0}details[open] summary b{transform:rotate(45deg)}details>p{font-size:12px;line-height:2;margin-left:44px;padding-bottom:15px}.company{background:#eff4ff;display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.company h2{font-size:33px}.company p{font-size:12px}.signature{color:var(--ink);padding-top:20px}.company dl{margin:0}dl>div{display:grid;grid-template-columns:100px 1fr;gap:15px;border-bottom:1px solid var(--line);padding:17px 0;font-size:12px}dt{color:var(--muted)}dd{margin:0}.join{display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:white;gap:40px}.join h2{font-family:var(--serif);font-size:43px}.join p:not(.eyebrow){color:#d0e2ff;font-size:13px}.join-actions{display:flex;flex-direction:column;gap:15px;min-width:310px}.join-actions small{font-size:10px;color:#d0e2ff;text-align:center}.site-footer{padding:60px 8% 25px;background:#e4edfc}.footer-main{display:grid;grid-template-columns:1.4fr 1fr .7fr;gap:50px;padding-bottom:50px}.footer-main strong{font-size:13px}.footer-main p{font-size:11px;line-height:2}.footer-nav{display:flex;flex-direction:column;gap:14px;font-size:12px}.footer-bottom{border-top:1px solid #c4d4ef;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:9px}.footer-bottom>div{display:flex;gap:18px}.event-hero{height:560px;position:relative;overflow:hidden;color:white;background:var(--navy)}.event-hero>img{position:absolute;width:100%;height:100%;object-position:center 60%}.event-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#001c60e6,#002b8255)}.event-hero>div{position:relative;z-index:1;padding:65px 8%}.event-hero h1{font:400 56px/1.5 var(--serif);margin:0 0 20px}.event-hero p:not(.eyebrow){color:#e4efff}.event-hero-label{position:absolute;bottom:30px;right:5%;z-index:1;font:400 10px Arial;letter-spacing:4px}.filters{display:flex;gap:10px;border-bottom:1px solid var(--line);padding-bottom:20px}.filters button{border:1px solid #c8d9f5;border-radius:30px;background:transparent;padding:9px 25px;font-size:12px}.filters button.active{background:var(--navy);color:white;border-color:var(--navy)}.filter-result{font-size:12px;min-height:15px;margin:10px 0}.event-detail{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;padding:45px 0;border-bottom:1px solid var(--line);scroll-margin-top:30px}.event-detail[hidden]{display:none}.event-visual{position:relative;align-self:start}.event-visual>img{width:100%;aspect-ratio:1/1.07}.date-block{position:absolute;left:0;top:0;background:var(--paper);padding:15px 25px;display:flex;flex-direction:column}.date-block>span{font-size:10px}.date-block strong{font:400 40px Georgia}.event-meta{display:flex;gap:15px;align-items:center;font-size:11px;color:#2559ae}.pill{border:1px solid #bed2f0;padding:2px 12px;font-size:10px}.event-info h2{font-size:31px;margin:15px 0 6px}.event-subtitle{font-size:15px}.event-info dl{margin:20px 0}.event-info dl>div{grid-template-columns:55px 1fr;padding:12px 0}.event-info dd small{display:block;font-size:10px;color:var(--muted)}.event-info dd a{font-size:10px;text-decoration:underline}.event-info>p:not(.event-subtitle){font-size:12px}.booking{border:1px solid var(--ink);margin-top:25px}.booking summary{padding:14px 20px;background:var(--navy);color:white}.booking summary b{color:var(--gold)}.booking-links{padding:10px 20px}.booking-links a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:14px 0;font-size:12px}.booking-links a:hover{color:#1255d9}.booking-links span{font-size:10px;color:var(--muted)}.booking>.note{margin:0;padding:10px 20px}.participation{background:#eaf1ff}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:45px}.steps-grid>div>span{font:400 50px Georgia;color:#3474de}.steps-grid h3{font-size:19px;margin:20px 0 12px}.steps-grid p{font-size:12px}.event-policy{border-top:1px solid #c4d4ef;margin-top:40px;padding-top:30px}.event-policy strong{font-size:14px;font-weight:700}.event-policy p{font-size:12px;margin-top:10px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.gallery img{width:100%;height:300px}.legal{max-width:1000px;margin:auto;min-height:70vh}.legal h1{font-size:32px}.legal-copy{white-space:pre-wrap;font-size:14px;line-height:2.2}.legal~footer{padding:40px 8%}body>header:not(.site-header){padding:30px 8%;display:flex;justify-content:space-between;align-items:center}
@media(min-width:1600px){.section,.film-strip{padding-left:max(8%,calc((100vw - 1320px)/2));padding-right:max(8%,calc((100vw - 1320px)/2))}}
@media(max-width:1100px){nav{gap:15px;font-size:10px}.site-header{padding:0 4%}.nav-cta{padding:12px}.nav-cta span{margin-left:10px}.section{padding:80px 6%}.benefit{padding:25px}.benefit-body{padding:25px}.voice-grid{grid-template-columns:repeat(2,1fr)}.event-detail{gap:30px}.hero-content{padding-top:65px}.hero{min-height:730px}.hero h1{font-size:65px}}
@media(max-width:760px){body{font-size:13px}.site-header{height:78px;padding:0 6%}.wordmark{font-size:35px}.wordmark span{font-size:6px;letter-spacing:1px}.menu-toggle{display:block;background:none;border:0;padding:12px 0;font:400 10px Arial;letter-spacing:1px}.menu-toggle span{margin-left:12px;font-size:20px}nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:25px 6%;box-shadow:0 15px 20px #002b8222}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:5px;font-size:13px}nav a{padding:13px!important}.hero{height:calc(100svh - 78px);min-height:660px;max-height:850px}.hero-content{margin:0 7%;padding-top:65px}.hero h1{font-size:clamp(39px,9.8vw,62px);line-height:1.5;margin-bottom:24px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:28px}.hero-copy{font-size:11px;line-height:2.1}.hero-actions{gap:22px;margin-top:30px}.hero-actions .button{font-size:12px;padding:15px 18px;gap:23px;min-height:53px}.hero-link{font-size:10px}.hero-link span{margin-left:13px}.hero-bottom{left:7%;right:7%;bottom:24px}.hero-bottom>span{display:none}.hero-bottom>a{font-size:7px;letter-spacing:1.2px}.hero-side{right:3%;top:20%;font-size:7px}.hero-shade{background:linear-gradient(90deg,#001d63df,#002b8255),linear-gradient(0deg,#001a6299,transparent)}.film-strip{padding:45px 7% 55px;grid-template-columns:1fr;gap:20px}.film-copy h2{font-size:25px}.film-copy .eyebrow{margin-bottom:17px}.film-caption{bottom:25px;right:7%}.section{padding:65px 7%}.about,.faq,.company{grid-template-columns:1fr;gap:25px}h2{font-size:31px}.eyebrow{font-size:9px;margin-bottom:18px}.lead{font-size:20px}.about-copy>p{font-size:12px}.values{margin-top:25px}.photo-band{height:360px;margin:0}.photo-band img{object-position:55% center}.photo-band>div{left:7%;bottom:24px}.photo-band>div>p:last-child{font-size:29px}.photo-band .eyebrow{font-size:7px}.section-heading{display:block;margin-bottom:30px}.section-heading>p,.section-heading>.text-link{margin-top:20px}.benefit-grid{grid-template-columns:1fr}.benefit.feature{grid-column:auto;grid-template-columns:1fr}.benefit-image img{height:230px;min-height:0}.benefit,.benefit-body{padding:28px}.benefit:not(.feature){display:block}.line-icon{display:block;font-size:38px}.benefit .number{margin-bottom:18px}.benefit h3{font-size:21px}.chapters h3{font-size:18px}.tags{gap:8px}.tags span{font-size:10px;padding:6px 12px}.preview-grid{grid-template-columns:1fr;gap:32px}.preview-photo img{aspect-ratio:1.7}.event-date{margin:18px 0 12px}.voice-grid{gap:20px}.voice h3{font-size:16px}.voice p{font-size:11px}.plan-grid{grid-template-columns:1fr;gap:20px}.plan{padding:32px 25px}.plan h3{font-size:26px}.price{font-size:52px}.price span{font-size:10px}.payment-note{grid-template-columns:1fr;gap:8px}.faq h2{margin-bottom:20px}summary{font-size:12px;gap:12px}.faq details>p{margin-left:34px}.company h2{font-size:30px}.company dl>div{grid-template-columns:80px 1fr}.join{display:block}.join h2{font-size:32px}.join-actions{min-width:0;margin-top:30px}.site-footer{padding:45px 7% 25px}.footer-main{grid-template-columns:1fr 1fr;gap:30px;padding-bottom:30px}.footer-main>.wordmark{grid-column:span 2}.footer-main p{font-size:10px}.footer-nav{font-size:11px}.footer-bottom{flex-wrap:wrap;font-size:8px;gap:15px}.footer-bottom>div{order:3;gap:12px;flex-wrap:wrap}.footer-bottom>a{margin-left:auto}.event-hero{height:540px}.event-hero>div{padding:60px 7%}.event-hero h1{font-size:39px}.event-hero p:not(.eyebrow){font-size:12px}.event-hero-label{font-size:8px}.event-detail{grid-template-columns:1fr;gap:25px;padding:30px 0 40px}.event-visual>img{aspect-ratio:1.6}.date-block{padding:8px 18px}.date-block strong{font-size:32px}.event-info h2{font-size:28px}.event-subtitle{font-size:13px}.steps-grid{grid-template-columns:1fr;gap:25px;margin-top:30px}.steps-grid>div{border-top:1px solid #c4d4ef;padding-top:20px}.steps-grid>div>span{font-size:36px}.steps-grid h3{margin-top:10px}.gallery img{height:180px}.gallery img:last-child{display:none}.gallery{grid-template-columns:1fr 1fr}.legal h1{font-size:26px}.legal-copy{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Reserve image space before native lazy loading completes. */
.preview-photo{aspect-ratio:1.5;background:#dce7fa}.preview-photo img{height:100%}.benefit-image{background:#dce7fa}.event-hero .hero-video{position:absolute}.event-hero-label .video-toggle{position:relative;z-index:2}@media(max-width:760px){.preview-photo{aspect-ratio:1.7}}

.film-strip .intro-youtube{display:block;width:100%;aspect-ratio:16/9;border:0;background:var(--navy)}

/* Version 1 — Samurai Blue */
.gold{color:#fff}.partner .eyebrow,.join .eyebrow,.event-hero .eyebrow{color:#9cc9ff}.partner .plan-label{background:#77afff;color:#082557}.partner .plan li:before{color:#9cc9ff}.hero .tiny-line{background:#86bcff}.join{background:linear-gradient(120deg,#00256f,#0649b7)}.partner{background:linear-gradient(145deg,#002b82,#003ba0)}.nav-cta:hover{background:#1255d9}.voice{border-top-color:#80acf0}.outline:hover{background:#e8f0ff}.outline-light:hover{background:#ffffff12}

/* Italic hero catchphrases on all screen sizes. */
.hero h1,.event-hero h1{font-style:italic}

/* Keep the brochure download action readable on narrow screens. */
.hero-actions{flex-wrap:wrap}.hero-actions .brochure-download{gap:16px}
@media(max-width:760px){.hero-actions{gap:12px}.hero-actions .brochure-download{gap:10px}.hero{min-height:740px}}

/* Strong editorial hierarchy: bold focal points, quiet supporting copy. */
body{font-size:13px;font-weight:400}
h1,h2,h3{font-weight:900}
h2{font-size:clamp(32px,3.7vw,57.6px);line-height:1.22;letter-spacing:-.035em}
h3{line-height:1.4;letter-spacing:-.025em}
.hero{height:auto;min-height:max(720px,calc(100svh - 96px));max-height:none}
.hero-content{margin:0 8%;padding-top:65px;padding-bottom:110px}
.hero h1{font-size:clamp(51.2px,6.2vw,94.4px);font-weight:900;line-height:1.16;letter-spacing:-.045em;margin-bottom:32px}
.hero h1 em{display:inline-block;font-size:1.08em;letter-spacing:-.06em}
.hero-copy{font-size:12px;font-weight:400;line-height:1.95;letter-spacing:.025em}
.eyebrow{font-weight:500;font-size:10px;letter-spacing:2.8px}
.hero-side,.hero-bottom,.hero-bottom>a,.video-toggle,.film-caption,.number{font-weight:400}
.wordmark{font-weight:700}.wordmark span{font-weight:400}
nav{font-weight:600}.nav-cta,.button{font-weight:800}
.button{font-size:12.9px}.hero-actions{margin-top:28px}
.film-copy h2{font-size:clamp(24px,2.4vw,36.8px)}
.lead{font-size:clamp(18.4px,2vw,28.8px);font-weight:800;line-height:1.55;letter-spacing:-.035em}
.about-copy>p:not(.lead){font-size:12px;font-weight:400;line-height:2.1}
.values{font-size:15.6px;font-weight:800}.values small{font-weight:400;font-size:11px}
.photo-band>div>p:last-child{font-size:clamp(35.2px,4.4vw,64px);font-weight:900;line-height:1.3;letter-spacing:-.025em}
.section-heading{align-items:end;gap:32px}.section-heading>div{min-width:0}
.section-heading>p{font-size:11px;font-weight:400;line-height:1.9;flex-shrink:0}
.benefit h3{font-size:clamp(17.6px,1.6vw,23.2px);font-weight:800}
.benefit p,.voice p,.plan>p,.steps-grid p{font-weight:400}
.benefit p{font-size:11px}.benefit small{font-weight:400;font-size:11px}
.chapters h3{font-size:clamp(18.4px,2.2vw,30.4px);font-weight:800}
.tags span{font-weight:500;font-size:11px}
.event-date{font-size:25.6px;font-weight:800;letter-spacing:-1px}.event-date small{font-weight:400;letter-spacing:0}
.preview-card h3{font-size:19.2px;font-weight:800}.preview-card>p:last-child{font-weight:400}
.voice h3{font-size:17.6px;font-weight:800}.voice p{font-size:11px}
.industry,.note,.price span,.plan-label,.payment-note p,.join-actions small{font-weight:400}
.note{font-size:11px}.plan h3{font-size:28.8px;font-weight:900}
.price{font-size:clamp(54.4px,5.6vw,83.2px);font-weight:900;line-height:1.1;letter-spacing:-.055em}
.price span{display:block;font-size:11px;line-height:1.8;margin:12px 0 0;letter-spacing:0}
.plan ul{font-weight:400;font-size:12px}.payment-note strong{font-weight:800}
.faq h2{font-size:clamp(28.8px,3vw,46.4px)}
summary{font-weight:700;font-size:12.9px}summary>span{font-weight:400}summary b{font-weight:400}
details>p{font-weight:400;font-size:11px}
.company h2{font-size:clamp(27.2px,3vw,44.8px)}.company p,.company dl{font-weight:400}
.join h2{font-size:clamp(32px,3.8vw,56px);font-weight:900;line-height:1.25;letter-spacing:-.035em}
.join p:not(.eyebrow){font-weight:400;font-size:11px}
.footer-main p,.footer-nav,.footer-bottom{font-weight:400}.footer-main strong{font-weight:700}
.event-hero{height:auto;min-height:600px}.event-hero>div{padding-top:70px;padding-bottom:70px}
.event-hero h1{font-size:clamp(43.2px,5.6vw,80px);font-weight:900;line-height:1.2;letter-spacing:-.045em}
.event-hero p:not(.eyebrow){font-size:12px;font-weight:400}.event-hero-label{font-weight:400}
.event-info h2{font-size:clamp(24px,2.6vw,36.8px);font-weight:900}
.event-subtitle{font-weight:600}.event-meta,.event-info dl,.event-info>p:not(.event-subtitle),.booking-links{font-weight:400}
.date-block strong{font-weight:900}.steps-grid>div>span{font-size:56px;font-weight:800}.steps-grid h3{font-size:20px;font-weight:800}
.event-policy strong{font-weight:700}.event-policy p,.legal-copy{font-weight:400}
@media(min-width:761px) and (max-width:1100px){
 .section-heading{flex-wrap:wrap}.voice h3{font-size:16.8px}
 .benefit-grid{grid-template-columns:repeat(2,1fr)}
 .hero h1{font-size:clamp(56px,6.8vw,75.2px)}
}
@media(max-width:760px){
 body{font-size:12px}.section{padding-top:64px;padding-bottom:64px}
 h2{font-size:clamp(27.2px,7vw,46.4px);line-height:1.25}
 .hero{min-height:max(700px,calc(100svh - 78px))}
 .hero-content{margin:0 7%;padding-top:60px;padding-bottom:100px}
 .hero h1{font-size:clamp(31.2px,8.6vw,60.8px);line-height:1.24;letter-spacing:-.055em;margin-bottom:28px}
 .hero h1 em{font-size:1.08em}
 .hero-copy{font-size:11px;line-height:1.9}.hero-copy br{display:none}
 .hero-actions{align-items:stretch;gap:12px}
 .hero-actions .button{width:100%;max-width:350px;font-size:12px;padding:15px 18px;gap:16px;min-height:54px}
 .hero-bottom{bottom:25px}.hero-side{font-size:7px}
 .film-copy h2{font-size:24px}.lead{font-size:19.2px}
 .about-copy>p:not(.lead){font-size:12px}
 .photo-band>div>p:last-child{font-size:32px}
 .section-heading>p{font-size:11px}.benefit h3{font-size:20px}
 .chapters h3{font-size:20.8px}.preview-card h3{font-size:19.2px}
 .event-date{font-size:24px}.voice-grid{grid-template-columns:1fr;gap:28px}
 .voice h3{font-size:20px}.voice p{font-size:12px}
 .plan h3{font-size:24px}.price{font-size:60.8px}.price span{font-size:11px}
 .plan .button{font-size:11px;gap:12px}.plan ul{font-size:11px}
 .faq h2,.company h2{font-size:clamp(25.6px,6.8vw,38.4px)}
 summary{font-size:12px}.join h2{font-size:clamp(28px,7.2vw,44px)}
 .event-hero{min-height:550px}.event-hero>div{padding:60px 7% 90px}
 .event-hero h1{font-size:clamp(32px,8.4vw,51.2px)}
 .event-info h2{font-size:24px}.steps-grid h3{font-size:20px}
 .steps-grid>div>span{font-size:41.6px}.date-block strong{font-size:30.4px}
}

/* Crossfade photographs behind the fixed community message. */
.photo-band{overflow:hidden}
.photo-band>img{position:absolute;inset:0;opacity:0;transition:opacity 1.5s ease}
.photo-band>img.is-active{opacity:1}
.slideshow-toggle{position:absolute;right:24px;bottom:24px;z-index:2;border:1px solid #ffffff80;background:#002b8280;color:white;padding:8px 14px;font:inherit;font-size:11px}
.slideshow-toggle[hidden]{display:none}
@media(max-width:760px){.slideshow-toggle{right:7%;bottom:auto;top:20px}}
@media(prefers-reduced-motion:reduce){.photo-band>img{transition:none}}

/* Dedicated headquarters access section. */
.access-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:6%;align-items:start}
.access-map{background:#e4edfc;min-width:0}
.access-map iframe{display:block;width:100%;height:560px;border:0}
.access-info>h3{font-size:24px;margin-bottom:12px}
.access-address{font-size:14px;line-height:2}
.access-route{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}
.access-route h3{font-size:17px;margin-bottom:15px}
.access-route ul{list-style:none;margin:0;padding:0}
.access-route li{font-size:13px;line-height:1.8;margin-bottom:14px}
.access-route li:last-child{margin-bottom:0}
.access-route li span,.access-route p{color:var(--muted);font-size:12px}
@media(max-width:760px){.access-grid{grid-template-columns:1fr;gap:28px}.access-map iframe{height:320px}.access-info>h3{font-size:22px}.access-address{font-size:13px}}

/* Samurai Blue backgrounds for the introduction and company sections. */
.about,.company{--ink:#fff;--muted:#dbe9ff;--line:#426aab;background:var(--navy);color:var(--ink)}
.about .eyebrow,.company .eyebrow{color:#9cc9ff}
.about .gold-text{color:#9cc9ff}
.about .values small{color:var(--muted)}
.about :focus-visible,.company :focus-visible{outline-color:#9cc9ff}

/* Match the header brand and CTA buttons to Samurai Blue. */
.site-header .wordmark{color:var(--navy)}
.nav-cta,.button{background:var(--navy);color:#fff;border-color:var(--navy)}
.nav-cta:hover,.button:hover{background:#0642b8;border-color:#0642b8}
.nav-cta:focus-visible,.button:focus-visible{outline-color:#9cc9ff}

/* White brochure download button. */
.button.brochure-download{background:#fff;color:var(--navy);border-color:#fff}
.button.brochure-download:hover{background:#e8f0ff;border-color:#e8f0ff}

/* Samurai Blue around the photograph slideshow. */
.photo-band-wrap{background:var(--navy);display:flow-root}
.photo-band-wrap .photo-band{margin-bottom:64px}

/* Highlight the community creation benefit. */
.community-benefit{background:var(--navy);color:#fff}
.community-benefit p{color:#dbe9ff}
.community-benefit .number,.community-benefit .line-icon{color:#9cc9ff}

/* Chapter flyer selector and full-screen image viewer. */
.chapter-tags button{font:inherit;font-size:12px;border:1px solid var(--line);border-radius:30px;padding:8px 18px;background:transparent;color:var(--ink)}
.chapter-tags button[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.chapter-tags button:hover{border-color:var(--navy)}
.chapter-preview{margin-top:28px}
.flyer-preview-button{display:block;width:min(240px,100%);padding:0;border:0;background:transparent;cursor:zoom-in}
.flyer-preview-button img{width:100%;height:auto;object-fit:contain;box-shadow:0 8px 24px #002b821c}
.flyer-caption,.flyer-unavailable{font-size:12px;margin:14px 0 0}
.flyer-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgba(0,16,52,.93);color:#fff;overflow:auto}
.flyer-dialog::backdrop{background:rgba(0,16,52,.93)}
.flyer-dialog-content{min-height:100%;display:flex;flex-direction:column;align-items:center;gap:20px;padding:76px 5% 24px;pointer-events:none}
.flyer-dialog .chapter-tags{justify-content:center;max-width:1100px;pointer-events:auto}
.flyer-dialog .chapter-tags button{color:white;border-color:#88afe8}
.flyer-dialog .chapter-tags button[aria-pressed="true"]{background:white;color:var(--navy);border-color:white}
.flyer-close{position:fixed;right:24px;top:18px;z-index:1;padding:10px 18px;border:1px solid #88afe8;background:var(--navy);color:white;font:inherit;font-size:13px;pointer-events:auto}
.flyer-expanded{max-width:100%;width:auto;height:auto;max-height:calc(100dvh - 190px);object-fit:contain;pointer-events:auto}
.flyer-dialog-unavailable{color:white}
body.flyer-viewer-open{overflow:hidden}
.flyer-preview-button[hidden],.flyer-unavailable[hidden],.flyer-expanded[hidden],.flyer-dialog-unavailable[hidden]{display:none}
@media(max-width:760px){.chapter-tags button{font-size:11px;padding:7px 12px}.flyer-preview-button{width:min(200px,100%)}.flyer-dialog-content{padding:70px 5% 20px;gap:18px}.flyer-close{right:5%;top:14px}.flyer-expanded{max-height:calc(100dvh - 260px)}}

/* Browse chapter flyers in a horizontal row. */
.flyer-scroll{position:relative;display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 8px 20px;scrollbar-color:var(--navy) #e4edfc;overscroll-behavior-x:contain}
.flyer-card{flex:0 0 240px;min-width:0;margin:0;scroll-snap-align:start}
.flyer-card .flyer-preview-button{width:100%}
.flyer-placeholder{aspect-ratio:1414/2000;display:flex;align-items:center;justify-content:center;background:#e4edfc;color:var(--muted);font-size:13px}
@media(max-width:760px){.flyer-scroll{gap:18px}.flyer-card{flex-basis:200px}}

/* Frame the flyer matching the selected chapter label. */
.flyer-card .flyer-preview-button,.flyer-card .flyer-placeholder{border-radius:12px;outline:3px solid transparent;outline-offset:4px}
.flyer-card.is-selected .flyer-preview-button,.flyer-card.is-selected .flyer-placeholder{outline-color:var(--navy)}
.flyer-card .flyer-preview-button img{border-radius:12px}
.flyer-card .flyer-preview-button:focus-visible{outline-color:var(--navy)}

/* Leave enough room to center the first and last flyer as well. */
.flyer-scroll{--flyer-width:240px;scroll-snap-type:x mandatory}
.flyer-scroll::before,.flyer-scroll::after{content:'';flex:0 0 max(0px,calc((100% - var(--flyer-width))/2 - 24px))}
.flyer-card{scroll-snap-align:center}
@media(max-width:760px){.flyer-scroll{--flyer-width:200px}.flyer-scroll::before,.flyer-scroll::after{flex-basis:max(0px,calc((100% - var(--flyer-width))/2 - 18px))}}

/* Repeated flyer rows allow continuous scrolling in either direction. */
.flyer-scroll::before,.flyer-scroll::after{display:none}

/* White header with blue branding, navigation, and buttons. */
.site-header{background:#fff;color:var(--navy)}
.site-header .wordmark{color:var(--navy)}
.header-brand{display:flex;align-items:center;gap:14px;flex-shrink:0}
.header-company-logo{width:64px;height:auto;object-fit:contain}
.site-header nav a:hover,.site-header nav a[aria-current]{border-bottom-color:var(--navy)}
.site-header .nav-cta{background:var(--navy);color:#fff;border-color:var(--navy)}
.site-header .nav-cta:hover{background:#0642b8;border-color:#0642b8}
.site-header :focus-visible{outline-color:#2465e3}
@media(max-width:760px){
  .header-brand{gap:10px}
  .header-company-logo{width:44px}
  .site-header nav{background:#fff;box-shadow:0 15px 20px #002b8222}
  .site-header .menu-toggle{background:var(--navy);color:#fff;padding:8px 12px}
}

/* Center the supplied brand banner beneath the FV eyebrow. */
.hero-shade{opacity:.72}
.hero .hero-content{position:relative;display:flex;flex-direction:column;height:100%;padding-top:clamp(36px,6vh,70px);padding-bottom:100px}
.hero .eyebrow{justify-content:center}
.hero h1.hero-banner{width:100%;max-width:1200px;margin:0 auto 26px;line-height:1}
.hero-banner img{display:block;width:100%;max-width:100%;height:auto;object-fit:contain;transform:scale(.88);transform-origin:center}
@media(prefers-reduced-motion:no-preference){
  .hero h1.hero-banner{animation:hero-banner-fade-in 1.2s ease-out .3s both}
}
@keyframes hero-banner-fade-in{
  from{opacity:0}
  to{opacity:1}
}
.hero .hero-actions{justify-content:center;margin-top:auto;padding-top:24px;flex-shrink:0}
/* Keep industry labels and illustrations balanced across story cards. */
.voice-industry{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:40px}
.voice-industry .industry{line-height:1.5}
.voice-illustration{display:block;width:32px;height:32px;object-fit:contain;flex-shrink:0}
@media(max-width:760px){.voice-illustration{width:36px;height:36px}.voice-industry{min-height:44px}}
/* Representative portrait and signature below the company message. */
.company dl,.company dd{min-width:0}
.company dd{overflow-wrap:anywhere}
.company dd small{display:block;font-size:11px;line-height:1.9;margin-top:5px}
.company>div{min-width:0}
.company-representative{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(12px,2vw,24px);margin:28px 0 0;border-bottom:1px solid var(--line)}
.company-representative img{width:100%;max-width:230px;height:auto;object-fit:contain;align-self:end;justify-self:center}
.company-representative figcaption{min-width:0;padding:16px 0;color:#fff;line-height:1.8;overflow-wrap:anywhere}
.representative-company,.representative-role,.representative-name{display:block}
.representative-company{font-size:13px;margin-bottom:12px}
.representative-role{font-size:12px;color:#dbe9ff}
.representative-name{font-size:clamp(18px,1.8vw,23px);font-weight:700;letter-spacing:.04em;margin-top:4px}
@media(max-width:420px){
  .company-representative{grid-template-columns:1fr;gap:0;text-align:center}
  .company-representative img{width:min(70%,210px)}
  .representative-company{font-size:12px}
  .representative-name{font-size:19px;letter-spacing:.04em}
}
/* Flyer-inspired industry illustrations below the first view. */
.industry-strip{padding:24px 4.4% 30px;background:#002b82;color:#fff;border-top:1px solid #d4af37;border-bottom:1px solid #d4af37}
.industry-strip h2{display:flex;align-items:center;gap:20px;margin:0 0 18px;font-size:25px;text-align:center;letter-spacing:.12em}
.industry-strip h2::before,.industry-strip h2::after{content:'';height:1px;flex:1;background:#d4af37}
.industry-list{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 24px;margin:0;padding:0;list-style:none}
.industry-list li{display:flex;align-items:center;gap:10px;max-width:100%;min-width:0;font-size:14px}
.industry-list li span{min-width:0;overflow-wrap:anywhere}
.industry-list img{width:48px;height:48px;object-fit:contain;flex-shrink:0}
@media(max-width:760px){
  .industry-strip{padding:22px 7% 26px}
  .industry-strip h2{font-size:22px;gap:14px}
  .industry-list{gap:16px 20px}
  .industry-list li{font-size:12px;gap:8px}
  .industry-list img{width:38px;height:38px}
}
@media(max-width:760px){
  .hero{height:calc(100svh - 78px);min-height:0;max-height:none}
  .hero .hero-content{padding-top:24px;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  .hero .eyebrow{margin-bottom:16px;flex-shrink:0}
  .hero-banner img{transform:scale(1.1)}
  .hero h1.hero-banner{margin-top:auto;margin-bottom:0;flex-shrink:0}
  .hero .hero-actions{flex-wrap:wrap;gap:12px;margin-top:0;padding-top:20px}
  .hero .hero-bottom{bottom:calc(20px + env(safe-area-inset-bottom,0px))}
}

.faq h2 .faq-title{display:block;margin-top:16px;color:var(--navy);font-family:var(--serif);font-size:clamp(48px,5vw,72px);font-weight:700;line-height:1.1;letter-spacing:.06em}

/* White company message panel with blue text beside the company details. */
.company{background:linear-gradient(to right,#fff 0%,#fff 50%,var(--navy) 50%,var(--navy) 100%)}
.company>div{--ink:#002b82;--muted:#002b82;--line:#d4e0f3;color:var(--ink)}
.company>div .eyebrow,.company-representative figcaption,.company .representative-role{color:var(--ink)}
@media(max-width:760px){
  .company{background:var(--navy)}
  .company>div{background:#fff;padding:28px 24px}
}

.voices .voices-title{display:block;margin:0 0 12px;color:var(--navy);font-family:var(--serif);font-size:clamp(40px,4.5vw,64px);font-weight:700;line-height:1.4;letter-spacing:.04em}

.voices-intro>p{font-size:13px;margin-bottom:8px}
@media(max-width:760px){.voices-intro{margin-top:20px}}

/* Keep the first-view banner centered independently of the surrounding text. */
.hero{height:max(640px,calc(100svh - 96px));min-height:0}
.hero .hero-content{height:100%}
.hero h1.hero-banner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;width:100%}
.hero-banner img{max-height:max(240px,calc(100svh - 340px));margin:auto}
.hero .hero-actions{position:absolute;bottom:100px;left:0;right:0;margin:0;padding:0}
.company{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.about>div,.plan,.film-copy,.event-info,.access-info,.voices-intro{min-width:0}
@media(min-width:761px) and (max-width:1200px){
  .site-header{height:78px;padding:0 6%}
  .header-brand{gap:10px}.header-company-logo{width:44px}
  .menu-toggle{display:block;border:0;background:var(--navy);color:#fff;padding:8px 12px;font-size:10px;letter-spacing:1px}
  .menu-toggle span{margin-left:12px;font-size:20px}
  .site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:25px 6%;box-shadow:0 15px 20px #002b8222}
  .site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:5px;font-size:13px}
  .site-header nav a{padding:13px}
  .hero{height:max(640px,calc(100svh - 78px))}
  .section{padding:80px 6%}
  .film-strip{padding:50px 6%;gap:5%}
  .about{gap:6%}
  .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .benefit,.benefit-body{padding:28px}
  .preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .voice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .plan{padding:32px 24px}.plan .button{gap:12px;padding:16px;font-size:12px}
  .faq{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:5%}
  .company{gap:6%}.company dl>div{grid-template-columns:90px minmax(0,1fr)}
  .company-representative{grid-template-columns:1fr;gap:0;text-align:center}
  .company-representative img{max-width:210px}
  .join{flex-wrap:wrap}.join-actions{width:100%;min-width:0}
  .access-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:5%}
  .event-detail{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px}
  .footer-main{gap:24px}
}
@media(min-width:761px) and (max-width:900px){
  .about,.film-strip,.faq,.access-grid,.event-detail{grid-template-columns:1fr;gap:28px}
  .plan-grid{grid-template-columns:1fr}
  .film-caption{position:static;grid-column:1;text-align:right}
}
@media(max-width:760px){
  .hero{height:max(620px,calc(100svh - 78px))}
  .hero h1.hero-banner{margin:0}
  .hero .hero-actions{bottom:calc(72px + env(safe-area-inset-bottom,0px));padding:0;margin:0}
  .company{grid-template-columns:1fr}
}

/* Community flyer immediately below the first view. */
.industry-strip[hidden]{display:none}
.community-overview{margin:0;background:#002b82}
.community-overview img{display:block;width:100%;height:auto;margin:0 auto}

/* Center the live hero text and actions above the bottom controls. */
.hero .hero-content{height:auto;min-height:inherit;justify-content:center;align-items:center;padding-top:80px;padding-bottom:100px}
.hero-message{width:100%;text-align:center;color:#fff;text-shadow:0 2px 20px #00112bcc}
.hero-milestone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:154px;height:154px;margin:0 auto 24px;border:3px solid #e9c66d;border-radius:50%;color:#392607;background:radial-gradient(circle at 35% 25%,#fffbe3 0%,#fae6a3 40%,#d3a345 74%,#a77623 100%);box-shadow:0 0 0 5px #bb8b3233,0 12px 38px #0007,inset 0 0 0 5px #fff6;text-shadow:0 1px 0 #fff9}
.hero-milestone::before{content:"";position:absolute;inset:9px;border:1px solid #9d702c;border-radius:50%;pointer-events:none}
.milestone-stars{font-size:12px;letter-spacing:5px;margin-left:5px;color:#89601b;line-height:1.4}
.milestone-label{font-size:15px;font-weight:700;letter-spacing:.15em;line-height:1.7}
.milestone-count{font-family:Georgia,"Times New Roman",serif;font-size:57px;font-weight:700;line-height:1;letter-spacing:-.045em}
.milestone-count>span{font-family:inherit;font-size:21px;margin-left:4px;letter-spacing:0}
.milestone-achievement{font-size:18px;font-weight:800;letter-spacing:.3em;padding-left:.3em;line-height:1.6}
.hero h1.hero-title{margin:0;font-style:normal;font-weight:700;line-height:1.4;letter-spacing:.045em}
.hero-title-intro{display:block;font-size:clamp(20px,2.1vw,30px);color:#f5da91;letter-spacing:.16em}
.hero-title-community{display:block;font-size:clamp(24px,3.4vw,49px);letter-spacing:.065em}
.hero-title-brand{display:block;font-family:Georgia,"Times New Roman",serif;font-size:clamp(72px,8.5vw,124px);line-height:1.1;letter-spacing:.035em}
.hero .hero-usp{color:#fff}
.hero-usp{margin:22px 0 0;font-size:clamp(16px,1.8vw,25px);font-weight:600;line-height:1.9;letter-spacing:.06em}
.hero .hero-actions{position:static;margin-top:30px;padding:0;width:100%;flex-shrink:0}
.hero{height:auto;min-height:max(760px,calc(100svh - 96px))}
@media(max-width:760px){
 .hero{height:auto;min-height:max(740px,calc(100svh - 78px))}
 .hero .hero-content{margin:0 5%;padding-top:64px;padding-bottom:100px}
 .hero-milestone{width:132px;height:132px;margin-bottom:26px}
 .milestone-count{font-size:49px}.milestone-label{font-size:13px}.milestone-achievement{font-size:16px}
 .hero-title-community{font-size:clamp(18px,4.7vw,32px);letter-spacing:.015em}
 .hero-title-brand{font-size:clamp(70px,19vw,110px)}
 .hero-usp{font-size:clamp(13px,3.5vw,18px);letter-spacing:.015em;margin-top:20px}
 .hero .hero-actions{margin-top:30px;gap:12px}
}

/* Show the complete exchange timetable in the upcoming event card. */
.preview-photo.preview-photo-schedule{aspect-ratio:auto}
.preview-photo.preview-photo-schedule img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.preview-photo.preview-photo-schedule>span{position:static;display:inline-block;margin:8px 12px}

/* Full-width event CTA below the section heading. */
.events-preview-cta{display:flex;width:100%;justify-content:center;gap:16px;min-height:64px;padding:20px 24px;font-size:16px;color:#fff;border:5px solid transparent;background:linear-gradient(#1255d9,#1255d9) padding-box,linear-gradient(115deg,#9a6815 0%,#e9bd55 18%,#fff5c5 32%,#d6a335 46%,#a9771c 60%,#fff1ac 78%,#e0b447 90%,#a7771f 100%) border-box;box-shadow:0 0 12px #e9bd5540,0 6px 18px #a7762326}
.events-preview-cta:hover{background:linear-gradient(#0642b8,#0642b8) padding-box,linear-gradient(115deg,#b08125 0%,#f1cd70 18%,#fffbe2 32%,#e6b74d 46%,#bc8c2c 60%,#fff8ce 78%,#f0ca69 90%,#bd8d32 100%) border-box}

/* Keep the timetable uncropped and place its date below the image. */
.event-visual-schedule>img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.event-visual-schedule .date-block{position:static}

.community-concept-title{margin:0;padding:32px 5%;background:#fff;color:var(--navy);text-align:center;font-size:clamp(24px,3vw,36px)}

.benefits-title{margin:0 0 20px;color:var(--navy);font-size:clamp(36px,4.5vw,64px);font-weight:800;line-height:1.4;letter-spacing:.04em}

/* Stack all five numbered benefits at the full content width. */
#benefits .benefit-grid{grid-template-columns:minmax(0,1fr);width:100%}
#benefits .benefit{grid-column:1;width:100%;min-width:0}
#benefits .benefit .number{display:flex;align-items:center;gap:16px;margin-bottom:20px}
#benefits .benefit-number{font:700 clamp(32px,4vw,48px)/1 Arial,sans-serif;letter-spacing:0;color:var(--gold)}
#benefits .community-benefit .benefit-number{color:#9cc9ff}

#benefits .benefit-banner{width:100%;height:auto;object-fit:contain;margin:0 0 24px}

#benefits .benefit-heading{display:flex;align-items:center;gap:16px;margin-bottom:20px}
#benefits .benefit-heading h3{margin:0;min-width:0}

/* Show all four exchange photos without cropping, including group portraits. */
#benefits .benefit-slideshow{position:relative;width:100%;aspect-ratio:4/3;margin:0 0 24px;overflow:hidden;background:#001b52}
.benefit-slideshow>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .7s ease}
.benefit-slideshow>img.is-active{opacity:1}
.benefit-slideshow .slideshow-toggle{top:auto;right:16px;bottom:16px;background:#002b82d9}

/* Display the supplied membership price sheet at its original proportions. */
.membership-plan-image{display:block;width:100%;height:auto;object-fit:contain}
.membership-plan-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
@media(max-width:760px){.membership-plan-actions{grid-template-columns:1fr;gap:12px}}

/* Keep the LINE icon beside the registration label on every page. */
.line-registration{gap:16px}
.line-registration-label{display:flex;align-items:center;gap:10px;min-width:0}
.line-registration-icon{width:32px;height:32px;flex-shrink:0;object-fit:contain}

/* Business overview beneath the representative signature divider. */
.company-business-overview{width:100%;height:auto;object-fit:contain;margin-top:28px}

/* Mobile benefit images open at the full viewport width. */
.benefit-image-zoom{display:block;width:100%;padding:0;border:0;background:none;text-align:inherit}
.benefit-image-zoom:disabled{cursor:default}
.benefit-slideshow-zoom{display:none}
.benefit-image-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:64px 0 24px;border:0;overflow:auto;background:#001034;color:#fff}
.benefit-image-dialog::backdrop{background:rgba(0,16,52,.93)}
.benefit-image-expanded{display:block;width:100%;max-width:none;height:auto;object-fit:contain}
.benefit-image-close{position:fixed;top:12px;right:12px;z-index:1;border:1px solid #fff;background:#001034;color:#fff;padding:8px 14px}
body.benefit-viewer-open{overflow:hidden}
@media(max-width:760px){
 .benefit-image-zoom{cursor:zoom-in}
 .benefit-slideshow-zoom{display:block;position:absolute;inset:0;z-index:1;font-size:0}
 .benefit-slideshow .slideshow-toggle{z-index:2}
}

.company-website-link{text-decoration:underline;text-underline-offset:.2em}
