/*
Theme Name: Go Ski Michigan Tourism
Theme URI: https://www.goskimichigan.com/
Author: Michigan Snowsports Industries Association
Description: Production-ready tourism theme with a centralized homepage editor.
Version: 2.6.2
Requires at least: 6.2
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: gsm-tourism
*/
:root{--gsm-navy:#06233f;--gsm-blue:#0b5f91;--gsm-cyan:#28c6e8;--gsm-ice:#eaf7fb;--gsm-ink:#14212b;--gsm-muted:#60717d;--gsm-radius:22px;--gsm-shadow:0 18px 50px rgba(2,28,50,.13);--gsm-max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--gsm-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff;line-height:1.6}a{color:var(--gsm-blue);text-decoration:none}a:hover{color:var(--gsm-navy)}img{max-width:100%;height:auto}.container,.wrap{width:min(calc(100% - 36px),var(--gsm-max));margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(6,35,63,.08)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}.custom-logo{max-height:54px;width:auto}.site-title{font-size:1.25rem;font-weight:900;color:var(--gsm-navy)}.primary-menu{display:flex;gap:22px;list-style:none;margin:0;padding:0;align-items:center}.primary-menu a{font-weight:700;color:var(--gsm-navy)}.menu-toggle{display:none;border:0;background:var(--gsm-navy);color:#fff;padding:10px 14px;border-radius:999px}.hero{position:relative;min-height:76vh;display:grid;align-items:end;color:#fff;background:linear-gradient(135deg,#0b5f91,#06233f);padding:90px 0 92px;overflow:hidden}.hero-media{position:absolute;inset:0;display:block;z-index:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,23,40,.84),rgba(3,23,40,.25))}.hero-content{position:relative;z-index:2;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:900;color:var(--gsm-cyan)}h1{font-size:clamp(2.5rem,5vw,4.25rem);line-height:1.05;letter-spacing:-.02em;margin:.18em 0 .28em;font-weight:950}.hero p{font-size:clamp(1.08rem,2vw,1.35rem);max-width:650px;color:rgba(255,255,255,.9)}.button-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;font-weight:850;background:var(--gsm-cyan);color:var(--gsm-navy);box-shadow:0 10px 25px rgba(40,198,232,.25)}.button.secondary{background:#fff}.section{padding:78px 0;position:relative;overflow:hidden}.section-media{position:absolute;inset:0;z-index:0}.section-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.section-wash{position:absolute;inset:0;z-index:1;background:rgba(255,255,255,.92)}.image-section>.container{position:relative;z-index:2}.section.tint{background:var(--gsm-ice)}.section.dark{background:var(--gsm-navy);color:#fff}.section-header{max-width:760px;margin-bottom:34px}.section-header h2,.banner-copy h2,.cta h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05;margin:.15em 0 .25em}.section-header p{font-size:1.12rem;color:var(--gsm-muted)}.card-grid,.gsm-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.feature-card,.resort-card,.program-card{background:#fff;border-radius:var(--gsm-radius);overflow:hidden;box-shadow:var(--gsm-shadow);height:100%}.feature-card{padding:28px}.feature-card h3,.program-card h3{margin:.35em 0;font-size:1.45rem;color:var(--gsm-navy)}.card-media{aspect-ratio:16/10;background:linear-gradient(135deg,#cdeef7,#88c7df);background-size:cover;background-position:center}.card-body{padding:24px}.tag{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--gsm-ice);color:var(--gsm-blue);font-weight:800;font-size:.78rem}.quick-links{position:relative;z-index:5;margin-top:-56px}.quick-links .feature-card{border-top:5px solid var(--gsm-cyan)}.feature-banner{position:relative;overflow:hidden;padding:110px 0;color:#fff;background:linear-gradient(135deg,#0b5f91,#06233f)}.feature-banner>.container{position:relative;z-index:2}.banner-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,23,40,.88),rgba(3,23,40,.35))}.banner-copy{max-width:650px}.banner-copy p{font-size:1.15rem}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat{text-align:center;padding:28px 12px;border:1px solid rgba(255,255,255,.16);border-radius:18px}.stat strong{display:block;font-size:2.2rem;color:var(--gsm-cyan)}.newsletter-section{position:relative;overflow:hidden}.newsletter-section>.container{position:relative;z-index:2}.newsletter-wash{position:absolute;inset:0;z-index:1;background:rgba(255,255,255,.88)}.cta{padding:42px;border-radius:30px;background:linear-gradient(135deg,var(--gsm-blue),var(--gsm-navy));color:#fff;display:grid;grid-template-columns:1.7fr auto;align-items:center;gap:30px}.site-footer{background:#031827;color:rgba(255,255,255,.78);padding:58px 0 28px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:38px}.site-footer h3,.site-footer h4{color:#fff}.site-footer a{color:rgba(255,255,255,.82)}.entry-content{width:min(calc(100% - 36px),900px);margin:56px auto 90px}.archive-header{padding:70px 0;background:var(--gsm-ice)}.gsm-meta{font-size:.92rem;color:var(--gsm-muted)}.notice{padding:16px 18px;border-radius:14px;background:var(--gsm-ice)}@media(max-width:900px){.primary-menu{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:flex-start;box-shadow:var(--gsm-shadow)}.primary-menu.is-open{display:flex}.menu-toggle{display:block}.card-grid,.gsm-directory-grid{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.cta{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.hero{min-height:68vh}.hero-overlay{background:linear-gradient(90deg,rgba(3,23,40,.86),rgba(3,23,40,.35))}.card-grid,.gsm-directory-grid,.stats,.footer-grid{grid-template-columns:1fr}.section{padding:58px 0}.header-inner{min-height:68px}.primary-menu{top:68px}}

/* Constant Contact inline newsletter form */
.newsletter-cta{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)}.newsletter-form-wrap{background:rgba(255,255,255,.98);border-radius:22px;padding:24px;color:var(--gsm-ink);min-width:0}.newsletter-form-wrap .ctct-inline-form{width:100%}.newsletter-form-wrap form{margin:0}.newsletter-form-wrap input,.newsletter-form-wrap select,.newsletter-form-wrap textarea{max-width:100%}@media(max-width:900px){.newsletter-cta{grid-template-columns:1fr}.newsletter-form-wrap{width:100%}}

/* Operations Platform Homepage Builder compatibility */
.msia-homepage-builder{display:block}.msia-homepage-builder .section-header{position:relative;z-index:2}.msia-homepage-builder .section-media img{width:100%;height:100%;object-fit:cover}.msia-homepage-builder .newsletter-copy .section-header{margin:0}.msia-homepage-builder .newsletter-form-wrap>p{margin:0}


/* School Ski Days program page */
.ssd-hero{position:relative;min-height:54vh;display:flex;align-items:flex-end;padding:90px 0 72px;color:#fff;background:linear-gradient(135deg,var(--gsm-blue),var(--gsm-navy));overflow:hidden}.ssd-hero-media{position:absolute;inset:0;z-index:0;display:block}.ssd-hero-media img,.ssd-hero-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.ssd-hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,23,40,.9),rgba(3,23,40,.4))}.ssd-hero-content{position:relative;z-index:2;max-width:820px}.ssd-hero h1{font-size:clamp(2.5rem,5vw,4.25rem)}.ssd-lead{font-size:clamp(1.08rem,2vw,1.3rem);max-width:760px}.ssd-main{padding:78px 0}.ssd-intro-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:48px;align-items:start}.ssd-intro-copy{font-size:1.12rem}.ssd-fact-card{background:var(--gsm-navy);color:#fff;border-radius:var(--gsm-radius);padding:32px;box-shadow:var(--gsm-shadow)}.ssd-fact-card strong{display:block;color:var(--gsm-cyan);font-size:2rem;line-height:1.1}.ssd-fact-card span{display:block;margin-top:8px}.ssd-experience{padding:78px 0;background:var(--gsm-ice)}.ssd-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;list-style:none;padding:0;margin:32px 0 0}.ssd-checklist li{position:relative;background:#fff;border-radius:16px;padding:20px 20px 20px 54px;box-shadow:0 8px 24px rgba(2,28,50,.08)}.ssd-checklist li:before{content:'✓';position:absolute;left:20px;top:18px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--gsm-cyan);color:var(--gsm-navy);font-weight:900}.ssd-cost{padding:72px 0}.ssd-cost-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ssd-cost-card{padding:28px;border:1px solid rgba(6,35,63,.12);border-radius:20px}.ssd-cost-card h3{color:var(--gsm-navy);margin-top:0}.ssd-participants{padding:78px 0;background:var(--gsm-navy);color:#fff}.ssd-participants .section-header p{color:rgba(255,255,255,.76)}.ssd-table-wrap{overflow-x:auto;border-radius:20px;background:#fff;box-shadow:var(--gsm-shadow)}.ssd-table{width:100%;border-collapse:collapse;color:var(--gsm-ink);min-width:820px}.ssd-table th{background:var(--gsm-cyan);color:var(--gsm-navy);text-align:left;padding:16px 18px;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.ssd-table td{padding:18px;border-bottom:1px solid #e7eef2;vertical-align:top}.ssd-table tr:last-child td{border-bottom:0}.ssd-table strong{display:block;color:var(--gsm-navy);font-size:1.04rem}.ssd-program-type{display:inline-block;margin-top:6px;padding:4px 8px;border-radius:999px;background:var(--gsm-ice);color:var(--gsm-blue);font-size:.76rem;font-weight:800}.ssd-contact-links{display:flex;flex-direction:column;gap:4px}.ssd-contact-links a{font-weight:700}.ssd-final-cta{padding:72px 0}.ssd-final-box{padding:44px;border-radius:28px;background:linear-gradient(135deg,var(--gsm-blue),var(--gsm-navy));color:#fff;text-align:center}.ssd-final-box p{max-width:680px;margin:0 auto 26px;color:rgba(255,255,255,.84)}@media(max-width:900px){.ssd-intro-grid,.ssd-cost-grid{grid-template-columns:1fr}.ssd-checklist{grid-template-columns:1fr}}@media(max-width:620px){.ssd-hero{min-height:46vh;padding:72px 0 52px}.ssd-main,.ssd-experience,.ssd-cost,.ssd-participants,.ssd-final-cta{padding:56px 0}.ssd-final-box{padding:30px 22px}}


/* MSIA News & Updates homepage section */
.gsm-news-section{background:#f4f8fa}.gsm-news-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.gsm-news-header .section-header{margin-bottom:0}.gsm-news-all{flex:0 0 auto;border:2px solid rgba(6,35,63,.12)}.gsm-news-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.gsm-news-card{background:#fff;border-radius:var(--gsm-radius);overflow:hidden;box-shadow:var(--gsm-shadow);display:flex;flex-direction:column;min-width:0}.gsm-news-card-featured{grid-column:span 2;grid-row:span 2}.gsm-news-media{display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,var(--gsm-blue),var(--gsm-navy))}.gsm-news-card-featured .gsm-news-media{aspect-ratio:16/9}.gsm-news-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.gsm-news-card:hover .gsm-news-media img{transform:scale(1.035)}.gsm-news-placeholder{width:100%;height:100%;display:grid;place-items:center;color:rgba(255,255,255,.8);font-size:1.45rem;font-weight:950;letter-spacing:.18em}.gsm-news-body{padding:24px;display:flex;flex-direction:column;flex:1}.gsm-news-card-featured .gsm-news-body{padding:30px}.gsm-news-date{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;font-weight:850;color:var(--gsm-blue)}.gsm-news-card h3{font-size:1.25rem;line-height:1.15;margin:.55em 0 .45em}.gsm-news-card-featured h3{font-size:clamp(1.65rem,3vw,2.35rem)}.gsm-news-card h3 a{color:var(--gsm-navy)}.gsm-news-card p{color:var(--gsm-muted);margin:0 0 20px}.gsm-news-read{margin-top:auto;font-weight:850}.gsm-news-card-featured .gsm-news-read{font-size:1.02rem}@media(max-width:1000px){.gsm-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gsm-news-card-featured{grid-column:span 2;grid-row:auto}}@media(max-width:620px){.gsm-news-header{align-items:flex-start;flex-direction:column}.gsm-news-grid{grid-template-columns:1fr}.gsm-news-card-featured{grid-column:auto}.gsm-news-card-featured .gsm-news-media,.gsm-news-media{aspect-ratio:16/10}}

/* Upcoming Events */
.events-page,.single-event-page{background:#f4f7fa;color:#10283f}
.events-hero{padding:clamp(5rem,10vw,8rem) 0 clamp(3.5rem,7vw,5.5rem);background:linear-gradient(135deg,#09253d,#174e71);color:#fff}
.events-hero-inner{max-width:820px;text-align:center;margin-inline:auto}
.events-hero .eyebrow{color:#79d7ef;margin-bottom:.65rem}
.events-hero h1{margin:0 0 1rem;color:#fff}
.events-hero p:last-child{font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.65;margin:0 auto;max-width:760px;color:rgba(255,255,255,.9)}
.events-list-section{padding:clamp(3rem,7vw,6rem) 0}
.events-list{display:grid;gap:1.5rem;width:100%}
.event-card{display:grid;grid-template-columns:minmax(240px,34%) 1fr;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 12px 34px rgba(11,38,61,.09)}
.event-card-featured{grid-template-columns:minmax(320px,45%) 1fr;margin-bottom:1rem}
.event-card-image{display:block;min-height:260px;background:#dce7ee;overflow:hidden}
.event-card-featured .event-card-image{min-height:390px}
.event-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.event-card:hover .event-card-image img{transform:scale(1.025)}
.event-image-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:inherit;font-size:4rem;color:#7a9bb0}
.event-card-content{padding:clamp(1.5rem,4vw,3rem);align-self:center}
.event-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.event-badge{display:inline-flex;padding:.38rem .7rem;border-radius:999px;background:#e0f4fa;color:#0b5a76;font-size:.76rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.event-badge-audience{background:#edf0f7;color:#374967}
.event-date{margin:0 0 .45rem;color:#e05d35;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.event-card h2{margin:.1rem 0 .65rem;font-size:clamp(1.55rem,3vw,2.45rem);line-height:1.08}
.event-card h2 a{color:#10283f;text-decoration:none}
.event-location{margin:.35rem 0 .9rem;font-weight:700;color:#4b6476}
.event-summary{color:#536a78;line-height:1.65}
.event-summary p{margin-top:0}
.event-button{margin-top:.5rem}
.events-empty{padding:4rem 1.5rem;background:#fff;border-radius:20px;text-align:center}
.single-event-hero{position:relative;padding:clamp(5rem,10vw,9rem) 0 clamp(3rem,7vw,6rem);background:#123b58;color:#fff;overflow:hidden}
.single-event-media,.single-event-overlay{position:absolute;inset:0}
.single-event-media img{width:100%;height:100%;object-fit:cover}
.single-event-overlay{background:linear-gradient(90deg,rgba(5,24,39,.88),rgba(5,24,39,.48))}
.single-event-hero-content{position:relative;z-index:2;max-width:900px}
.single-event-hero h1{color:#fff;margin:.25rem 0 1rem}
.single-event-hero .event-location{color:rgba(255,255,255,.9);font-size:1.1rem}
.single-event-content{max-width:900px;padding-top:clamp(3rem,7vw,5rem);padding-bottom:clamp(4rem,8vw,7rem)}
.single-event-copy{font-size:1.1rem;line-height:1.75}
.gsm-event-fields input[type=date],.gsm-event-fields select{min-width:260px}
@media(max-width:760px){
 .event-card,.event-card-featured{grid-template-columns:1fr}
 .event-card-image,.event-card-featured .event-card-image{min-height:230px;max-height:300px}
 .event-card-content{padding:1.5rem}
}

/* Editable Upcoming Events page */
.editable-events-page .events-hero{position:relative;overflow:hidden}
.events-page-hero-media{position:absolute;inset:0;z-index:0}
.events-page-hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.events-page-hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,23,40,.92),rgba(3,23,40,.45))}
.editable-events-page .events-hero-inner{position:relative;z-index:2}
.events-page-intro{max-width:760px;font-size:clamp(1.05rem,2vw,1.25rem)}
.events-page-intro p:last-child{margin-bottom:0}


/* MSIA Media Center */
.media-center-page{background:#f5f8fa;color:var(--gsm-ink)}
.media-center-hero{position:relative;overflow:hidden;padding:clamp(5.5rem,11vw,9rem) 0 clamp(4rem,8vw,6.5rem);background:linear-gradient(135deg,var(--gsm-blue),var(--gsm-navy));color:#fff}
.media-center-hero-image,.media-center-hero-overlay{position:absolute;inset:0}.media-center-hero-image img{width:100%;height:100%;object-fit:cover}.media-center-hero-overlay{background:linear-gradient(90deg,rgba(3,23,40,.94),rgba(3,23,40,.5))}
.media-center-hero-inner{position:relative;z-index:2;max-width:850px;text-align:center;margin-inline:auto}.media-center-hero h1{color:#fff;margin:.2em 0}.media-center-hero p:last-child{font-size:clamp(1.08rem,2vw,1.3rem);color:rgba(255,255,255,.88)}
.media-center-welcome{padding:clamp(3.5rem,7vw,6rem) 0;background:#fff}.media-center-narrow{max-width:940px}.media-center-legal{font-size:1.04rem;line-height:1.8;color:#3f5767}.media-center-legal p:first-child{font-size:1.25rem;color:var(--gsm-navy)}
.media-center-nav{position:sticky;top:0;z-index:20;background:var(--gsm-navy);box-shadow:0 8px 20px rgba(3,23,40,.13)}.media-center-nav .wrap{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.media-center-nav a{display:block;padding:17px 22px;color:#fff;font-weight:850;text-decoration:none}.media-center-nav a:hover{background:rgba(255,255,255,.1);color:var(--gsm-cyan)}
.media-library-section{padding:clamp(4rem,8vw,7rem) 0;scroll-margin-top:80px}.media-photo-section{background:#eaf2f6}.media-press-section{background:#fff}.media-section-header{text-align:center;max-width:760px;margin:0 auto 42px}.media-section-header h2{font-size:clamp(2.1rem,4vw,3.4rem);margin:.15em 0}.media-section-header p:last-child{color:var(--gsm-muted);font-size:1.08rem}
.logo-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.media-logo-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--gsm-shadow);display:flex;flex-direction:column}.media-logo-preview{min-height:230px;padding:34px;display:grid;place-items:center;background:linear-gradient(135deg,#fff,#eef4f7)}.media-logo-preview img{width:100%;height:160px;object-fit:contain}.media-logo-preview span{font-size:2rem;font-weight:950;color:var(--gsm-blue)}.media-logo-body{padding:26px;display:flex;flex-direction:column;flex:1}.media-logo-body h3{margin:0 0 10px}.media-logo-body p{color:var(--gsm-muted)}.media-usage-note{font-size:.88rem}.media-download-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:16px}.media-download-links a{display:inline-flex;padding:9px 12px;border-radius:8px;background:var(--gsm-navy);color:#fff;font-size:.78rem;font-weight:900;text-decoration:none}.media-download-links a:hover{background:var(--gsm-blue)}
.photo-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.media-photo-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--gsm-shadow);display:flex;flex-direction:column}.media-photo-image{aspect-ratio:4/3;overflow:hidden;background:var(--gsm-navy);display:grid;place-items:center;color:#fff}.media-photo-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.media-photo-card:hover .media-photo-image img{transform:scale(1.03)}.media-photo-body{padding:24px;display:flex;flex-direction:column;flex:1}.media-photo-body h3{margin:0 0 8px}.media-photo-location{font-weight:750;color:var(--gsm-blue)}.media-photo-credit{padding:12px;border-radius:10px;background:#eef5f8;font-size:.88rem}.media-photo-body .button{margin-top:auto;align-self:flex-start}
.press-release-list{max-width:980px;margin-inline:auto}.press-release-card{display:grid;grid-template-columns:170px 1fr;gap:32px;padding:30px 0;border-bottom:1px solid rgba(6,35,63,.12)}.press-release-card:first-child{border-top:1px solid rgba(6,35,63,.12)}.press-release-date{font-weight:850;color:var(--gsm-blue);text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}.press-release-card h3{margin:0 0 8px;font-size:clamp(1.35rem,2.5vw,1.8rem)}.press-release-card h3 a{color:var(--gsm-navy)}.press-release-card p{color:var(--gsm-muted)}.press-release-link{font-weight:900}
.media-empty{max-width:760px;margin:auto;padding:44px;background:#fff;border-radius:22px;text-align:center;box-shadow:var(--gsm-shadow)}.media-contact-section{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--gsm-navy);color:#fff}.media-contact-card{display:flex;align-items:center;justify-content:space-between;gap:40px}.media-contact-card h2{color:#fff}.media-contact-card p{max-width:720px;color:rgba(255,255,255,.78)}
@media(max-width:980px){.logo-library-grid,.photo-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.logo-library-grid,.photo-library-grid{grid-template-columns:1fr}.press-release-card{grid-template-columns:1fr;gap:8px}.media-contact-card{align-items:flex-start;flex-direction:column}.media-center-nav .wrap{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.media-center-nav a{white-space:nowrap}.media-logo-preview{min-height:190px}}

/* Batman Of The Slopes — v2.4.3 */
.batman-page{background:#f3f7f9;color:var(--gsm-navy)}
.batman-hero{position:relative;min-height:clamp(430px,63vw,690px);display:flex;align-items:flex-end;overflow:hidden;background:radial-gradient(circle at 70% 20%,#1e4d70 0,#0a2842 42%,#041523 100%);color:#fff}
.batman-hero-image,.batman-hero-image img,.batman-hero-overlay{position:absolute;inset:0;width:100%;height:100%}.batman-hero-image img{object-fit:cover;object-position:center}.batman-hero-overlay{background:linear-gradient(90deg,rgba(2,15,25,.94) 0%,rgba(2,15,25,.72) 45%,rgba(2,15,25,.25) 100%),linear-gradient(0deg,rgba(2,15,25,.82),transparent 55%)}
.batman-hero-inner{position:relative;z-index:2;padding-top:150px;padding-bottom:clamp(4rem,8vw,7rem);width:min(calc(100% - 36px),var(--gsm-max));margin-inline:auto;text-align:center}.batman-hero h1{max-width:900px;margin:.15em auto;color:#fff;font-size:clamp(3rem,7vw,4.25rem);line-height:1.02}.batman-hero-deck{margin:0 auto;max-width:720px;font-size:clamp(1.2rem,2.2vw,1.65rem);font-weight:750;color:rgba(255,255,255,.84)}
.batman-intro-section{padding:clamp(4rem,8vw,7rem) 0;background:#fff}.batman-narrow{max-width:1120px}.batman-intro-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,6rem);align-items:start}.batman-intro-grid h2{font-size:clamp(2.1rem,4vw,3.6rem);line-height:1.04;margin:.2em 0}.batman-editor-content{font-size:1.08rem;line-height:1.78;color:var(--gsm-muted)}.batman-editor-content p:first-child{margin-top:0}.batman-social-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:40px;padding-top:30px;border-top:1px solid rgba(6,35,63,.12)}.batman-social-row span{font-weight:900;margin-right:auto}.batman-social-row .button-outline{background:transparent;color:var(--gsm-navy);border:2px solid var(--gsm-navy)}
.batman-code-section{padding:clamp(4rem,8vw,7rem) 0;background:var(--gsm-navy);color:#fff}.batman-code-header{max-width:850px;margin:0 auto clamp(2.5rem,5vw,4.5rem);text-align:center}.batman-code-header h2{color:#fff;font-size:clamp(2.25rem,4.8vw,4rem);line-height:1.04;margin:.2em 0}.batman-code-header>p:last-child{color:rgba(255,255,255,.72);font-size:1.1rem}.batman-code-kicker{margin:.35rem auto 1.35rem;color:rgba(255,255,255,.78);font-size:clamp(1.05rem,2vw,1.3rem);font-weight:700}.batman-code-grid{counter-reset:batman-code;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.batman-code-grid li{counter-increment:batman-code;position:relative;min-height:245px;padding:30px 26px 26px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.055);overflow:hidden}.batman-code-grid li:before{content:counter(batman-code,decimal-leading-zero);display:block;margin-bottom:34px;color:#80d7f5;font-size:1rem;font-weight:950;letter-spacing:.08em}.batman-code-grid li:after{content:"";position:absolute;top:60px;left:26px;width:42px;height:3px;background:#80d7f5}.batman-code-grid h3{margin:0 0 12px;color:#fff;font-size:1.25rem;line-height:1.2}.batman-code-grid p{margin:0;color:rgba(255,255,255,.72);line-height:1.65}
.batman-closing-section{padding:clamp(4rem,8vw,7rem) 0;background:linear-gradient(135deg,#eaf4f8,#fff)}.batman-closing-card{padding:clamp(2.4rem,6vw,5rem);border-radius:28px;background:#fff;box-shadow:var(--gsm-shadow);text-align:center}.batman-closing-card h2{max-width:800px;margin:.25em auto;font-size:clamp(2rem,4.5vw,3.7rem);line-height:1.05}.batman-closing-card>p:not(.eyebrow){font-size:1.2rem;color:var(--gsm-muted)}.batman-closing-card .button{margin-top:18px}
@media(max-width:940px){.batman-intro-grid{grid-template-columns:1fr}.batman-code-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.batman-hero{min-height:520px}.batman-hero-overlay{background:linear-gradient(0deg,rgba(2,15,25,.94) 0%,rgba(2,15,25,.55) 70%,rgba(2,15,25,.28) 100%)}.batman-code-grid{grid-template-columns:1fr}.batman-code-grid li{min-height:0}.batman-social-row span{width:100%;margin-bottom:8px}}

.batman-safety-callout{margin-top:28px;padding:clamp(2rem,5vw,3.6rem);border-radius:28px;background:linear-gradient(135deg,var(--gsm-blue),var(--gsm-navy));color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;box-shadow:var(--gsm-shadow)}.batman-safety-callout h2{margin:.2em 0 .35em;color:#fff;font-size:clamp(1.85rem,3.6vw,3rem);line-height:1.08}.batman-safety-callout p:not(.eyebrow){max-width:760px;margin:0;color:rgba(255,255,255,.8)}.batman-safety-callout .button{background:#fff;color:var(--gsm-navy);white-space:nowrap}.batman-related-resources{margin-top:clamp(3rem,7vw,5rem)}.batman-resources-header{text-align:center;max-width:760px;margin:0 auto 30px}.batman-resources-header h2{margin:.2em 0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.08}.batman-resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.batman-resource-card{display:block;padding:28px 24px;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(2,28,50,.09);color:var(--gsm-navy);transition:transform .2s ease,box-shadow .2s ease}.batman-resource-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(2,28,50,.14);color:var(--gsm-navy)}.batman-resource-number{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--gsm-ice);color:var(--gsm-blue);font-weight:950}.batman-resource-card h3{margin:20px 0 10px;font-size:1.25rem;line-height:1.2}.batman-resource-card p{margin:0;color:var(--gsm-muted);line-height:1.6}@media(max-width:940px){.batman-safety-callout{grid-template-columns:1fr}.batman-safety-callout .button{justify-self:start}.batman-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.batman-resource-grid{grid-template-columns:1fr}.batman-safety-callout{padding:28px 22px}.batman-safety-callout .button{width:100%}}

/* White Gold Card Experience — v2.5.0 */
.wgc-page{background:#f6f7f4;color:var(--gsm-navy)}.wgc-status{padding:12px 0;background:#d6aa45;color:#071b2c}.wgc-status .container{display:flex;justify-content:center;gap:12px;text-align:center}.wgc-status strong{text-transform:uppercase;letter-spacing:.08em}.wgc-status-on_sale{background:#bfe3c3}.wgc-status-limited{background:#f4cf69}.wgc-status-sold_out{background:#e8b5b5}.wgc-hero{position:relative;min-height:680px;display:flex;align-items:flex-end;overflow:hidden;background:linear-gradient(135deg,#061b2d,#153d58);color:#fff}.wgc-hero-media,.wgc-hero-media img,.wgc-hero-overlay{position:absolute;inset:0;width:100%;height:100%}.wgc-hero-media img{object-fit:cover}.wgc-hero-overlay{background:linear-gradient(90deg,rgba(3,19,32,.93),rgba(3,19,32,.55) 55%,rgba(3,19,32,.18)),linear-gradient(0deg,rgba(3,19,32,.75),transparent 55%)}.wgc-hero-content{position:relative;z-index:2;padding-top:150px;padding-bottom:90px}.wgc-hero h1{max-width:900px;margin:.12em 0;color:#fff;font-size:clamp(3.2rem,8vw,5.8rem);line-height:.96}.wgc-hero-content>p{max-width:760px;font-size:clamp(1.15rem,2.2vw,1.55rem);color:rgba(255,255,255,.82)}.wgc-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.wgc-gold-button{background:linear-gradient(135deg,#f5d883,#c6952f);color:#071b2c}.wgc-gold-button:hover{background:#fff;color:#071b2c}.wgc-hero .button-outline{border:2px solid rgba(255,255,255,.7);color:#fff;background:transparent}.wgc-stats{position:relative;z-index:3;margin-top:-28px}.wgc-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:24px;box-shadow:var(--gsm-shadow);overflow:hidden}.wgc-stat-grid div{padding:34px 24px;text-align:center;border-right:1px solid rgba(7,27,44,.1)}.wgc-stat-grid div:last-child{border:0}.wgc-stat-grid strong{display:block;color:#a8781e;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1}.wgc-stat-grid span{display:block;margin-top:9px;font-weight:800;color:var(--gsm-muted)}.wgc-overview,.wgc-features,.wgc-resorts,.wgc-how,.wgc-gallery,.wgc-faq,.wgc-news,.wgc-final{padding:clamp(4rem,8vw,7rem) 0}.wgc-two-col{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(3rem,7vw,7rem);align-items:center}.wgc-two-col h2{font-size:clamp(2.3rem,5vw,4.2rem);line-height:1.02}.wgc-two-col p{font-size:1.12rem;color:var(--gsm-muted);line-height:1.75}.wgc-premium-card{min-height:410px;padding:45px;border-radius:30px;background:radial-gradient(circle at 80% 10%,#efd78f,#bd8827 42%,#5e3d0e 100%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 26px 60px rgba(68,44,6,.24);transform:rotate(2deg)}.wgc-premium-card span{font-weight:950;letter-spacing:.18em}.wgc-premium-card strong{font-size:clamp(2.2rem,4vw,3.6rem);line-height:1}.wgc-premium-card small{text-transform:uppercase;letter-spacing:.12em}.wgc-features{background:var(--gsm-navy);color:#fff}.wgc-features h2{color:#fff}.wgc-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.wgc-feature-grid article{padding:30px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13)}.wgc-feature-grid article>span{color:#e8c361;font-weight:950}.wgc-feature-grid h3{color:#fff}.wgc-feature-grid p{color:rgba(255,255,255,.7)}.wgc-resorts{background:#e9f1f4}.wgc-resort-output>.gsm-ski-areas,.wgc-resort-output>.ski-area-grid{margin-top:30px}.wgc-integration-note{max-width:760px;margin:auto;padding:40px;background:#fff;border-radius:22px;text-align:center;box-shadow:var(--gsm-shadow)}.wgc-steps{list-style:none;padding:0;margin:35px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.wgc-steps li{padding:28px;background:#fff;border-radius:20px;box-shadow:0 12px 32px rgba(4,29,48,.08)}.wgc-steps b{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#d6aa45;color:#071b2c}.wgc-gallery{background:#e9f1f4}.wgc-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.wgc-gallery-grid figure{margin:0;border-radius:18px;overflow:hidden;background:#fff}.wgc-gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.wgc-gallery-grid figcaption{padding:14px;font-weight:800}.wgc-narrow{max-width:900px}.wgc-accordion details{background:#fff;border-radius:15px;margin:12px 0;box-shadow:0 8px 24px rgba(4,29,48,.07)}.wgc-accordion summary{cursor:pointer;padding:22px 26px;font-size:1.12rem;font-weight:900}.wgc-accordion details>div{padding:0 26px 22px;color:var(--gsm-muted)}.wgc-news{background:#fff}.wgc-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.wgc-news-grid article{border-radius:20px;overflow:hidden;background:#f4f7f8;box-shadow:0 12px 32px rgba(4,29,48,.08)}.wgc-news-grid img{width:100%;aspect-ratio:16/9;object-fit:cover}.wgc-news-grid article>div{padding:24px}.wgc-news-grid time{font-size:.8rem;text-transform:uppercase;font-weight:850;color:#a8781e}.wgc-final{background:var(--gsm-navy)}.wgc-final-card{padding:clamp(3rem,7vw,6rem);border-radius:30px;text-align:center;background:linear-gradient(135deg,#f0d584,#a9761f);color:#071b2c}.wgc-final-card h2{font-size:clamp(2.4rem,5vw,4.5rem);margin:.2em 0}.wgc-final-card p{max-width:760px;margin:0 auto 24px;font-size:1.15rem}.wgc-final-card .button{background:#071b2c;color:#fff}@media(max-width:900px){.wgc-stat-grid,.wgc-feature-grid,.wgc-steps{grid-template-columns:repeat(2,1fr)}.wgc-two-col{grid-template-columns:1fr}.wgc-gallery-grid,.wgc-news-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.wgc-hero{min-height:620px}.wgc-status .container{display:block}.wgc-stat-grid,.wgc-feature-grid,.wgc-steps,.wgc-gallery-grid,.wgc-news-grid{grid-template-columns:1fr}.wgc-stat-grid div{border-right:0;border-bottom:1px solid rgba(7,27,44,.1)}.wgc-actions .button{width:100%;justify-content:center}.wgc-premium-card{min-height:330px;transform:none}}


/* White Gold Card resort integration v2.5.1 */
.wgc-resort-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.wgc-resort-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 14px 34px rgba(6,35,63,.11);display:flex;flex-direction:column}.wgc-resort-image{display:block;aspect-ratio:16/10;overflow:hidden;background:#e8eef1}.wgc-resort-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.wgc-resort-card:hover .wgc-resort-image img{transform:scale(1.035)}.wgc-resort-card-body{padding:24px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.wgc-resort-card-body h3{margin:.3rem 0 .65rem;color:var(--gsm-navy)}.wgc-resort-card-body p{color:var(--gsm-muted);margin:0 0 20px}.wgc-resort-card-body .button{margin-top:auto}.wgc-integration-note{padding:28px;border-radius:20px;background:#fff7dc;border:1px solid rgba(172,126,22,.25);text-align:center}.wgc-integration-note strong{display:block;color:#6b4b00;font-size:1.15rem}.wgc-integration-note p{margin:.5rem auto 0;max-width:760px}@media(max-width:900px){.wgc-resort-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.wgc-resort-grid{grid-template-columns:1fr}}


/* White Gold Card visual resort cards — v2.5.2 */
.wgc-resort-grid{margin-top:38px}.wgc-resort-card{position:relative;min-width:0;border:1px solid rgba(6,35,63,.08);transition:transform .22s ease,box-shadow .22s ease}.wgc-resort-card:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(6,35,63,.16)}.wgc-resort-image{position:relative}.wgc-resort-placeholder{width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:26px;background:linear-gradient(145deg,#082943,#18506c 58%,#c79a36);color:#fff}.wgc-resort-placeholder span{font-size:.72rem;font-weight:950;letter-spacing:.18em;color:#f2d57d}.wgc-resort-placeholder strong{font-size:1.45rem;line-height:1.1;margin-top:8px}.wgc-resort-region{display:inline-flex;padding:6px 10px;border-radius:999px;background:#fff3cc;color:#76530b;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.wgc-resort-card-body h3{font-size:1.5rem;line-height:1.15}.wgc-resort-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:auto;padding-top:6px}.wgc-resort-actions .button{margin-top:0}.wgc-profile-link{font-weight:850;color:var(--gsm-navy);text-decoration:underline;text-decoration-color:rgba(6,35,63,.25);text-underline-offset:4px}.wgc-profile-link:hover{text-decoration-color:currentColor}@media(max-width:620px){.wgc-resort-card-body{padding:21px}.wgc-resort-image{aspect-ratio:16/9}}

/* White Gold Card split participating-location grids — v2.5.4 */
.wgc-location-group{margin-top:clamp(2.5rem,6vw,5rem)}.wgc-location-group:first-child{margin-top:2.25rem}.wgc-location-group__header{max-width:820px;margin-bottom:24px}.wgc-location-group__header h3{margin:0 0 .45rem;font-size:clamp(1.8rem,3.5vw,2.8rem);color:var(--gsm-navy)}.wgc-location-group__header p{margin:0;color:var(--gsm-muted);font-size:1.05rem;line-height:1.7}.wgc-location-group--shops{padding-top:clamp(2rem,5vw,4rem);border-top:1px solid rgba(6,35,63,.14)}.wgc-location-grid--ski-shop .wgc-resort-placeholder{background:linear-gradient(145deg,#0b3b59,#13728c 58%,#d6aa45)}

/* Our Partners page */
.partners-page{background:#fff}.partners-hero{padding:clamp(5rem,10vw,8rem) 0 clamp(3.5rem,7vw,5.5rem);background:linear-gradient(135deg,var(--gsm-navy),var(--gsm-blue));color:#fff;text-align:center}.partners-hero__inner{max-width:880px}.partners-hero h1{margin:.18em 0 .35em}.partners-intro{font-size:clamp(1.05rem,2vw,1.25rem);color:rgba(255,255,255,.88)}.partners-intro p{margin:0}.partners-grid-section{padding:clamp(3.5rem,7vw,6.5rem) 0;background:#f4f8fa}.partners-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.partner-logo-card{background:#fff;border:1px solid rgba(6,35,63,.09);border-radius:20px;padding:24px;text-align:center;box-shadow:0 12px 34px rgba(2,28,50,.08);transition:transform .2s ease,box-shadow .2s ease}.partner-logo-card:hover{transform:translateY(-4px);box-shadow:var(--gsm-shadow)}.partner-logo-card__image{height:150px;display:flex;align-items:center;justify-content:center;padding:12px}.partner-logo-card__image img{width:100%;height:100%;object-fit:contain}.partner-logo-card__image span{font-weight:900;color:var(--gsm-navy);font-size:1.15rem}.partner-logo-card h2{font-size:.98rem;line-height:1.3;color:var(--gsm-navy);margin:14px 0 0}.partners-opportunities{padding:clamp(3.5rem,7vw,6rem) 0}.partners-opportunities__box{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;padding:clamp(2rem,5vw,4rem);border-radius:30px;background:linear-gradient(135deg,var(--gsm-blue),var(--gsm-navy));color:#fff}.partners-opportunities__box h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.08;margin:.15em 0 .3em}.partners-opportunities__box p:not(.eyebrow){max-width:760px;color:rgba(255,255,255,.84);font-size:1.1rem}.partners-opportunities__box .button{white-space:nowrap}@media(max-width:960px){.partners-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.partners-opportunities__box{grid-template-columns:1fr;align-items:start}}@media(max-width:700px){.partners-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.partner-logo-card{padding:16px}.partner-logo-card__image{height:120px}}@media(max-width:420px){.partners-logo-grid{grid-template-columns:1fr}.partner-logo-card__image{height:145px}}

/* Homepage spacing refinement — v2.5.5 */
.quick-links{margin-bottom:32px}
.gsm-ski-areas .card-media img{width:100%;height:100%;object-fit:cover;display:block}
