/* Design B skin for the inner pages (loaded after the original stylesheets).
   Shared header/footer come from site-b.css; this file re-colours page bodies. */

/* ---------- global type + palette ---------- */
body.theme-b{font-family:var(--body)!important;background:var(--ink)!important;color:var(--cream)}
body.theme-b :is(p,li,label,small,span,a,button,input,select,textarea,td,th,dd,dt,legend,strong){font-family:var(--body)}
body.theme-b :is(h1,h2,h3,.fresh-heading h2){font-family:var(--display)!important;font-weight:900!important;text-transform:uppercase;letter-spacing:-.005em!important;line-height:.9!important}
body.theme-b h1{font-size:clamp(56px,9vw,128px)!important}
body.theme-b h2{font-size:clamp(40px,5.2vw,76px)!important}
body.theme-b h3{font-size:clamp(26px,2.4vw,34px)!important;line-height:.95!important}
body.theme-b h4{font-family:var(--body)}
body.theme-b .section-label,body.theme-b .nova-kicker,body.theme-b .eyebrow{font-family:var(--body)!important;color:var(--coral)!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase}
body.theme-b .section-label::before,body.theme-b .section-label::after{display:none!important}
body.theme-b a{color:var(--coral)}
body.theme-b .skip-link{position:absolute;left:-9999px;top:8px;transform:none!important}
body.theme-b .skip-link:focus{left:8px;z-index:100;background:var(--cream);color:var(--ink);padding:10px 14px;border-radius:8px}
body.theme-b .top-contact-strip{display:none!important}

/* buttons */
body.theme-b .btn,body.theme-b .btn-gold,body.theme-b .btn-lg{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px!important;border-radius:999px!important;background:var(--coral)!important;color:var(--ink)!important;border:2px solid var(--coral)!important;font-family:var(--body)!important;font-weight:700!important;font-size:16px!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;text-decoration:none!important}
body.theme-b .btn:hover{background:var(--coral-hi)!important;border-color:var(--coral-hi)!important}
body.theme-b .btn-outline-gold,body.theme-b .btn-outline{background:transparent!important;color:var(--cream)!important;border-color:var(--line2)!important}
body.theme-b [hidden]{display:none!important}

/* ---------- resource pages: events, packages, planning ---------- */
body.theme-b.resource-page main.container{max-width:1440px;margin:0 auto;padding:0 var(--gutter) 40px}
body.theme-b .resource-hero{padding-top:28px}
body.theme-b .resource-breadcrumb,body.theme-b .resource-breadcrumb a{color:var(--dim)!important;font-size:14px}
body.theme-b.resource-page h1{color:var(--cream)!important;margin:18px 0 20px!important}
body.theme-b.resource-page :is(h2,h3){color:var(--cream)!important}
body.theme-b.resource-page :is(p,li){color:var(--muted);font-size:17px}
body.theme-b .resource-intro{font-size:clamp(17px,1.5vw,20px)!important;color:var(--muted)!important;max-width:760px}
body.theme-b .resource-photo{border-radius:var(--radius)!important;height:clamp(260px,40vw,520px)!important}
body.theme-b.resource-page section{border-color:var(--line)!important}
body.theme-b .event-overview{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:start}
@media(max-width:900px){body.theme-b .event-overview{grid-template-columns:1fr}}
body.theme-b :is(.event-package,.planning-panel,.research-package,.venue-jump a,.venue-jump>*){background:var(--panel)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;color:var(--cream)!important;box-shadow:none!important}
body.theme-b .event-package,body.theme-b .planning-panel{padding:clamp(22px,3vw,36px)!important}
body.theme-b :is(.event-package,.planning-panel,.research-package) :is(h3,h2){color:var(--cream)!important}
body.theme-b :is(.event-package,.planning-panel,.research-package) :is(p,li){color:var(--muted)!important}
body.theme-b :is(.event-package,.research-package) strong,body.theme-b .research-price{color:var(--coral)!important;font-family:var(--display)!important;font-weight:900!important;font-size:26px!important;text-transform:uppercase;line-height:1}
body.theme-b .research-package{padding:28px!important;gap:14px}
body.theme-b .research-package .btn{margin-top:auto;width:100%}
body.theme-b .research-packages{gap:16px!important}
body.theme-b .venue-jump{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border:0!important;background:none!important}
body.theme-b .venue-jump a{padding:22px!important;text-decoration:none;display:block}
body.theme-b .venue-jump a *{color:var(--cream)!important}
body.theme-b .resource-cta{background:var(--coral)!important;color:var(--ink)!important;border:0!important;border-radius:32px!important;padding:clamp(28px,4vw,56px)!important;margin-top:56px!important}
body.theme-b .resource-cta :is(h2,p){color:var(--ink)!important}
body.theme-b .resource-cta a:not(.btn){color:var(--ink)!important;font-weight:700}
body.theme-b .resource-cta .btn{background:var(--ink)!important;color:var(--cream)!important;border-color:var(--ink)!important;margin-right:18px}
body.theme-b .planning-grid{gap:16px!important}
body.theme-b table{border-color:var(--line)!important;color:var(--cream)}
body.theme-b :is(td,th){border-color:var(--line)!important}

/* ---------- legal page ---------- */
body.theme-b.legal-page .legal-content{max-width:860px;padding-block:48px}
body.theme-b.legal-page :is(p,li){color:var(--muted)}
body.theme-b.legal-page :is(h1,h2){color:var(--cream)}

/* ---------- location pages ---------- */
body.theme-b.location-page main,body.theme-b.location-page #main-content{background:var(--ink)}
/* light sections become cream "menu board" panels; dark sections become ink */
body.theme-b.location-page :is(.section,section){background-color:var(--ink)!important;color:var(--cream)}
body.theme-b.location-page :is(.section,section) :is(h2,h3){color:var(--cream)!important}
body.theme-b.location-page :is(.section,section) :is(p,li,.section-sub,dd){color:var(--muted)!important}
body.theme-b.location-page :is(.section,section):nth-of-type(even){background-color:var(--cream)!important;color:var(--ink)}
body.theme-b.location-page :is(.section,section):nth-of-type(even) :is(h2,h3,h4,strong){color:var(--ink)!important}
body.theme-b.location-page :is(.section,section):nth-of-type(even) :is(p,li,.section-sub,dd,span){color:var(--dark-text)!important}
/* cards */
body.theme-b.location-page :is(.event-card,.included-item,.trust-item,.faq-item,.floorplan-card,.research-package,.review-welcome-card,.selected-location-card,.gallery-item){border-radius:var(--radius)!important;box-shadow:none!important}
body.theme-b.location-page :is(.section,section):nth-of-type(odd) :is(.event-card,.included-item,.trust-item,.faq-item,.floorplan-card,.research-package,.review-welcome-card,.selected-location-card){background:var(--panel)!important;border:1px solid var(--line)!important;color:var(--cream)!important}
body.theme-b.location-page :is(.section,section):nth-of-type(even) :is(.event-card,.included-item,.trust-item,.faq-item,.floorplan-card,.research-package,.review-welcome-card,.selected-location-card){background:#fff!important;border:1px solid #D8CFC0!important;color:var(--ink)!important}
body.theme-b.location-page .research-price{color:var(--coral-deep)!important}
body.theme-b.location-page :is(.section,section):nth-of-type(odd) .research-price{color:var(--coral)!important}
body.theme-b.location-page :is(.included-diamond,.event-icon,.trust-icon){color:var(--coral)!important;border-color:var(--coral)!important}
body.theme-b.location-page .gallery-item img,body.theme-b.location-page .floorplan-img{border-radius:16px}
body.theme-b.location-page .floorplan-img{background:#fff}
/* hero areas keep their photos; tint + type */
body.theme-b.location-page :is(.hero,.location-hero,.wingate-focus-hero,.fresh-hero){background-color:var(--ink)!important}
body.theme-b.location-page :is(.hero,.location-hero,.wingate-focus-hero,.fresh-hero) :is(h1,p,span,li){color:var(--cream)!important}
/* quote form panel on location pages: dark, like the homepage */
body.theme-b.location-page #contact{background:var(--ink)!important}
body.theme-b.location-page #contact :is(.contact-form-box,.fresh-form-card){background:var(--panel)!important;border:1px solid var(--line)!important;border-radius:32px!important;color:var(--cream)!important;color-scheme:dark!important;box-shadow:none!important}
body.theme-b.location-page #contact :is(.contact-form-box,.fresh-form-card) :is(p,label,small,legend,.form-step-label,.checkbox-field span){color:var(--muted)!important}
body.theme-b.location-page #contact :is(.contact-form-box,.fresh-form-card) label{color:var(--cream)!important;font-weight:600}
body.theme-b.location-page #contact .form-step-label{color:var(--coral)!important;letter-spacing:.12em;text-transform:uppercase;font-size:13px}
body.theme-b.location-page #contact :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){background:var(--ink)!important;color:var(--cream)!important;-webkit-text-fill-color:var(--cream)!important;border:2px solid var(--line2)!important;border-radius:14px!important;min-height:52px;color-scheme:dark!important}
body.theme-b.location-page #contact select option{background:var(--ink);color:var(--cream)}
body.theme-b.location-page #contact :is(input,textarea)::placeholder{color:var(--dim)!important;-webkit-text-fill-color:var(--dim)!important}
body.theme-b.location-page #contact form .btn{background:var(--coral)!important;color:var(--ink)!important;border-color:var(--coral)!important}
body.theme-b.location-page #contact form .btn-outline-gold{background:transparent!important;color:var(--cream)!important;border-color:var(--line2)!important}
body.theme-b.location-page #contact :is(.contact-form-box,.fresh-form-card) a{color:var(--coral)!important}
body.theme-b.location-page #contact :is(h2,h3){color:var(--cream)!important}
body.theme-b.location-page #form-success{background:var(--coral);color:var(--ink);border-radius:18px;padding:24px}
body.theme-b.location-page #form-success *{color:var(--ink)!important}

/* ---------- fixes after first review ---------- */
html:has(body.theme-b){background:var(--ink)!important}
body.theme-b :is(main,.resource-page main,#main,#main-content){background:transparent!important}
body.theme-b .site-header{background:rgba(17,17,19,.94)!important;margin:0!important}
body.theme-b .site-header .nav a:not(.btn){color:var(--cream)!important;white-space:nowrap}
body.theme-b .site-header .nav .btn-ghost{background:transparent!important;color:var(--cream)!important;border-color:var(--line2)!important}
body.theme-b .site-header .btn{min-height:44px!important;padding:0 18px!important;font-size:15px!important;white-space:nowrap}
body.theme-b .site-header .logo{color:var(--cream)!important;font-family:var(--display)!important}
body.theme-b > footer.wrap{background:var(--ink)!important;padding:0 var(--gutter) 56px!important;margin:0 auto!important;max-width:1520px;border:0!important}
body.theme-b > footer.wrap :is(b){color:var(--cream)!important;font-family:var(--body)}
body.theme-b > footer.wrap .foot-grid{color:var(--muted)}
body.theme-b .research-price,body.theme-b :is(.event-package,.research-package) strong{font-size:21px!important}

/* ---------- contrast fixes on location pages ---------- */
/* Quality Inn */
body.theme-b .included-item strong{color:var(--cream)!important}
body.theme-b :is(.rooms-desc-item,.contact-details){background:var(--panel)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important}
body.theme-b .rooms-desc-item :is(h3,p){color:var(--cream)!important}
body.theme-b .rooms-desc-item p{color:var(--muted)!important}
body.theme-b .contact-details :is(dt){color:var(--coral)!important}
body.theme-b .contact-details :is(dd,span,.contact-sub){color:var(--muted)!important}
body.theme-b .contact-details a{color:var(--coral)!important}
body.theme-b .floorplan-disclaimer{color:var(--dark-text)!important;background:#fff!important;border-radius:12px}
body.theme-b.location-page .section.bg-dark :is(p,li){color:var(--muted)!important}
body.theme-b.location-page .contact-person-card :is(small,span,strong,p){color:var(--muted)!important}
body.theme-b.location-page .contact-person-card strong{color:var(--cream)!important}
body.theme-b.location-page .contact-form-box span{color:var(--coral)!important}
/* FAQ cards follow their section colour */
body.theme-b.location-page .faq-item :is(summary,.faq-answer,p){color:inherit!important}
body.theme-b.location-page :is(.section,section):nth-of-type(even) .faq-item{color:var(--ink)!important}
body.theme-b.location-page :is(.section,section):nth-of-type(even) .faq-item .faq-answer{color:var(--dark-text)!important}
body.theme-b.location-page :is(.section,section):nth-of-type(odd) .faq-item{color:var(--cream)!important}
body.theme-b.location-page :is(.section,section):nth-of-type(odd) .faq-item .faq-answer{color:var(--muted)!important}
/* Wingate */
body.theme-b .privacy-card{background:var(--panel)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;box-shadow:none!important}
body.theme-b .privacy-card :is(h2,li,p){color:var(--cream)!important}
body.theme-b .privacy-card :is(p,li){color:var(--muted)!important}
body.theme-b .privacy-card .privacy-card-number{color:var(--coral)!important;opacity:.35}
body.theme-b .wingate-included-grid{gap:12px!important;border:0!important;background:transparent!important}
body.theme-b .wingate-included-grid article{background:var(--panel)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important}
body.theme-b .wingate-included-grid article h3{color:var(--cream)!important}
body.theme-b .wingate-included-grid article p{color:var(--muted)!important}
body.theme-b .wingate-included-grid article span{color:var(--coral)!important}
body.theme-b .addon-list{gap:10px!important;background:transparent!important;border:0!important}
body.theme-b .addon-list span{background:var(--ink)!important;color:var(--cream)!important;border:0!important;border-radius:16px!important}
body.theme-b .addon-list b{color:var(--coral)!important}
body.theme-b .av-callout{background:#fff!important;border-left:0!important;border-radius:16px!important}
body.theme-b .av-callout :is(strong,p){color:var(--ink)!important}
body.theme-b .wingate-hero-facts b{font-family:var(--display)!important;font-size:40px!important;color:var(--cream)!important}
/* stronger selectors where the original CSS uses ids */
body.theme-b #main-content .rooms-desc-item h3{color:var(--cream)!important}
body.theme-b #main-content .rooms-desc-item p{color:var(--muted)!important}
body.theme-b #contact :is(.section-label){color:var(--coral)!important}
body.theme-b #contact .contact-left p,body.theme-b #contact > .container > div > p{color:var(--muted)!important}
body.theme-b #contact .contact-details :is(dd,span,.contact-sub){color:var(--muted)!important}
body.theme-b #contact .contact-person-card small{color:var(--muted)!important}
body.theme-b #contact .contact-form-box span{color:var(--coral)!important}
body.theme-b #main-content .addon-list span{color:var(--cream)!important}
body.theme-b #main-content .floorplan-disclaimer{color:var(--dark-text)!important}
body.theme-b .mobile-action-bar{display:none!important}
body.theme-b :is(.fresh-location-bar,.location-context-bar){margin-top:0!important}
body.theme-b :is(summary,.faq-item summary,.faq-question){font-family:var(--body)!important;font-weight:600}
