/* ASCWORLD seasonal skin. Original assets, text, layout logic and scripts are retained. */
@import url('./template-colors.css');
@import url('./complete-palette.css');
html[data-season="halloween"]{--season-ink:#241633;--season-paper:#fff8ee;--season-card:#fffcf6;--season-copper:#a94b20;--season-border:#d9c8b8;--season-muted:#6c5d68}
html[data-season="halloween"] body{background:var(--season-paper);color:var(--season-ink)}
html[data-season="halloween"] :is(.portal-home,.im-home,.school-directory,.school-detail,.sd-page,.visa-page,.edu-page,.esl-page,.guide-page,.policy-page){--portal-green:#241633;--portal-muted:#6c5d68;--im-green:#241633;--im-dark:#241633;--im-muted:#6c5d68;--im-gold:#c99050;--school-dark:#241633;--school-green:#241633;--school-muted:#6c5d68;--school-gold:#c99050;background:var(--season-paper);color:var(--season-ink)}
html[data-season="halloween"] #site-header{background:var(--season-card);color:var(--season-ink);border-bottom-color:#c99050;box-shadow:0 4px 18px #2416330b;padding-top:28px}
html[data-season="halloween"] #site-header :is(#navigation,.language,.sub-toggle){color:var(--season-ink);border-color:var(--season-border)}
html[data-season="halloween"] #site-header #navigation a[aria-current="page"]{background:#f6ecdf;color:#241633;border-bottom-color:#a94b20}
html[data-season="halloween"] #site-header :is(#navigation>a,.nav-winter>a,.submenu a):hover{background:#f6ecdf;color:#241633}
html[data-season="halloween"] #site-header .submenu{background:var(--season-card);border-color:var(--season-border);border-top-color:#a94b20}
html[data-season="halloween"] #site-header .menu-toggle{background:#241633;border-color:#241633}
/* Original logo image remains byte-for-byte untouched beneath this separate alpha frame. */
html[data-season="halloween"] #site-header .brand::before{content:"";position:absolute;inset:-18px -20px -7px -20px;background:url('./assets/logo-overlay.png') center top/100% 100% no-repeat;pointer-events:none;z-index:1}
html[data-season="halloween"] #site-footer{background:var(--season-card);border-top:1px solid var(--season-border);color:#241633}
html[data-season="halloween"] :is(.portal-context,.portal-kicker,.feature-photo-caption,.project-credit){color:#6c5d68;border-color:var(--season-border)}
html[data-season="halloween"] :is(.flagship,.school-spotlight,.camp-preview,.learning-row article,.company-band){background:var(--season-card);border-color:var(--season-border)}
html[data-season="halloween"] .school-spotlight,html[data-season="halloween"] .flagship{border:1px solid var(--season-border);border-radius:14px}
html[data-season="halloween"] .company-band{background:#f4eade}
html[data-season="halloween"] :is(.portal-home h1,.portal-home h2,.portal-home h3,.cn-home-intro){color:#241633}
html[data-season="halloween"] :is(.portal-link,.im-text-link){color:#71351e!important;border-color:#a9754d}
html[data-season="halloween"] :is(a.button,a.btn,a.portal-button,a.im-button,a.school-button,a.sd-button,a.visa-button,a.edu-button,a.esl-button){position:relative;background:#301a38;border:1px solid #b97c42;border-radius:8px;color:#fff8ee!important;padding-right:60px;min-height:46px;box-shadow:0 3px 8px #24163312}
html[data-season="halloween"] :is(a.button,a.btn,a.portal-button,a.im-button,a.school-button,a.sd-button,a.visa-button,a.edu-button,a.esl-button)::after{content:"";position:absolute;right:11px;top:50%;transform:translateY(-50%);width:28px;height:28px;background:url('./assets/button-ghost.png') center/contain no-repeat;pointer-events:none}
html[data-season="halloween"] :is(a.button,a.btn,a.portal-button,a.im-button,a.school-button,a.sd-button,a.visa-button,a.edu-button,a.esl-button):hover{background:#45254d;border-color:#e0a565}
html[data-season="halloween"] :is(.portal-button.light,.im-button-gold){background:#fff8ee;color:#241633!important}
/* Stable semantic roles: light secondary = pumpkin, dark primary = ghost. Hover never changes icon. */
html[data-season="halloween"] :is(a.portal-button.light,a.im-button-gold)::after{background-image:url('./assets/button-pumpkin.png')}
html[data-season="halloween"] :is(a.portal-button.light,a.im-button-gold):hover{background:#f3e6da;color:#241633!important}
html[data-season="halloween"] .visa-entry{background:#301a38;border-radius:12px}
html[data-season="halloween"] .visa-entry :is(h2,p){color:#fff8ee}
html[data-season="halloween"] :is(.school-image,.flagship-image,.camp-photo-frame,.learning-photo){outline:1px solid #d9c8b8;outline-offset:4px;border-radius:8px}
/* Decorative hero occupies new reserved heading whitespace, never replaces original project photographs. */
html[data-season="halloween"] .portal-home .school-feature-heading{position:relative;min-height:330px;padding-right:42%;background:linear-gradient(110deg,#fffcf6 45%,#f3e6da);border-radius:13px 13px 0 0}
html[data-season="halloween"] .portal-home .school-feature-heading::after{content:"";position:absolute;right:12px;top:10px;bottom:12px;width:39%;background:url('./assets/hero-cluster.png') center/contain no-repeat;pointer-events:none}
html[data-season="halloween"] .portal-home .flagship-heading{position:relative;padding-right:40%;min-height:260px;background:#fffcf6}
html[data-season="halloween"] .portal-home .flagship-heading::after{content:"";position:absolute;right:10px;top:10px;bottom:10px;width:36%;background:url('./assets/hero-cluster.png') center/contain no-repeat;pointer-events:none}
/* NET about photo accordion's purely decorative chevron, not keyboard arrow handling. */
html[data-season="halloween"] a[href$="#project-journal"] > span[aria-hidden="true"]{display:none}
html[data-season="halloween"] :focus-visible{outline:3px solid #a94b20;outline-offset:4px}
/* No form visibility, checked, required, disabled, validation or honeypot rules are changed. */
@media(max-width:1000px){html[data-season="halloween"] .portal-home .school-feature-heading{padding-right:36%}html[data-season="halloween"] .portal-home .school-feature-heading::after{width:33%}html[data-season="halloween"] .portal-home .flagship-heading{padding-right:0;padding-bottom:180px}html[data-season="halloween"] .portal-home .flagship-heading::after{top:auto;bottom:4px;right:20px;width:210px;height:175px}}
@media(max-width:760px){html[data-season="halloween"] #site-header{padding-top:22px}html[data-season="halloween"] #site-header .brand::before{inset:-13px -8px -4px -10px}html[data-season="halloween"] .portal-home .school-feature-heading{padding-right:20px;padding-bottom:220px;min-height:0}html[data-season="halloween"] .portal-home .school-feature-heading::after{top:auto;bottom:8px;right:50%;transform:translateX(50%);width:250px;height:205px}html[data-season="halloween"] .portal-home .flagship-heading::after{right:50%;transform:translateX(50%)}html[data-season="halloween"] .portal-button{max-width:100%}html[data-season="halloween"] :is(.school-image,.flagship-image,.camp-photo-frame,.learning-photo){outline-offset:2px}}
@media(prefers-reduced-motion:reduce){html[data-season="halloween"] *,html[data-season="halloween"] *::before,html[data-season="halloween"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Homepage announcement strip: compact normal flow; transparent 44px close hit area. */
#halloween-promo{display:none}
html[data-season="halloween"] #halloween-promo{display:block;position:relative;margin:0;padding:7px max(52px,calc((100vw - 1180px)/2));background:#301a38;color:#fff8ee;border-bottom:1px solid #c99050}
html[data-season="halloween"] #halloween-promo p{margin:0;color:#fff8ee;font-size:13px;line-height:1.55;overflow-wrap:break-word}
html[data-season="halloween"] #halloween-promo strong{color:#ffd496;font-weight:800;white-space:nowrap}
html[data-season="halloween"] #halloween-promo button{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;color:#fff8ee;cursor:pointer}
html[data-season="halloween"] #halloween-promo button::before,html[data-season="halloween"] #halloween-promo button::after{content:"";position:absolute;left:15px;top:21px;width:14px;height:1.5px;background:currentColor;transform:rotate(45deg)}
html[data-season="halloween"] #halloween-promo button::after{transform:rotate(-45deg)}
html[data-season="halloween"] #halloween-promo button:hover{color:#ffd496;background:transparent}
html[data-season="halloween"] #halloween-promo button:focus-visible{outline:2px solid #ffd496;outline-offset:-7px}
@media(max-width:760px){html[data-season="halloween"] #halloween-promo{padding:7px 48px 7px 16px}}

/* LA optional polish 2026-10-25. Scoped presentation only; original event/disabled states retained. */
html[data-season="halloween"] #main.family-feature a.button:is(.primary,.light),
html[data-season="halloween"] #main #inquiry-submit{position:relative;padding-right:60px;box-sizing:border-box}
html[data-season="halloween"] #main.family-feature a.button:is(.primary,.light)::after,
html[data-season="halloween"] #main #inquiry-submit::after{content:"";display:block;position:absolute;right:11px;top:50%;transform:translateY(-50%);width:28px;height:28px;background:url('./assets/button-ghost.png') center/contain no-repeat;pointer-events:none}
html[data-season="halloween"] #main.family-feature a.button.light::after{background-image:url('./assets/button-pumpkin.png')}
html[data-season="halloween"] #main #inquiry-form[aria-busy="true"] #inquiry-submit::after{visibility:hidden}
/* Chinese visa hero only, two-column widths. Balance 11 CJK characters without a one-character final line. */
@media(min-width:768px){html[data-season="halloween"][lang^="zh"] #main.visa-page .visa-hero-copy>h1{max-inline-size:9em;text-wrap:balance;white-space:normal;overflow-wrap:normal}}

/* School directory/profile compatibility: seasonal colors only, original layout and photographs retained. */
html[data-season="halloween"] :is(.sd-main,.sd-wrap){--sd-cream:var(--season-paper);--sd-gold:#c99050}
html[data-season="halloween"] .sd-school-profile{--school-paper:var(--season-paper);--school-white:var(--season-card);--school-gold:#c99050}
html[data-season="halloween"] .sd-school-profile .school-quick-facts dl>div{border:0}
html[data-season="halloween"] .sd-school-profile .school-quick-facts dl>div+div{border-top:1px solid var(--season-border)}
html[data-season="halloween"] :is(.school-project-tags li){background:#f6ecdf;border-color:var(--season-border);color:var(--season-ink)}
html[data-season="halloween"] :is(.school-mode-note,.school-gateway-reference,.school-gateway-footnote){color:var(--season-muted)}
html[data-season="halloween"] :is(.sd-filter-panel,.sd-card,.sd-detail-facts){background:var(--season-card);border-color:var(--season-border)}
html[data-season="halloween"] :is(.sd-hero .sd-tagline,.sd-card-title){color:var(--season-ink)}
html[data-season="halloween"] :is(.sd-data-note,.sd-code,.sd-gallery-status){color:var(--season-muted);border-color:var(--season-border)}
html[data-season="halloween"] .sd-matching-prompt{background:#f6ecdf;border-color:var(--season-border)}
html[data-season="halloween"] .sd-region-filters input{background:var(--season-card);color:var(--season-ink);border-color:var(--season-border)}
html[data-season="halloween"] #preschool-city-options .ps-region-filters{background:#f6ecdf;border-color:var(--season-border)}
html[data-season="halloween"] #preschool-city-options .ps-region-filters label{color:var(--season-ink)}
html[data-season="halloween"] #preschool-city-options .ps-region-filters :is(select,input){background:var(--season-card);color:var(--season-ink);border-color:var(--season-border)}
html[data-season="halloween"] #ps-empty{border-color:var(--season-border)}
html[data-season="halloween"] :is(.sd-region-filters,#preschool-city-options .ps-region-filters) :focus-visible{outline-color:var(--season-copper)}
html[data-season="halloween"] :is(a.sd-detail-link,a.sd-contact-primary,a.school-inquiry-button){position:relative;background:#301a38;border:1px solid #b97c42;border-radius:8px;color:#fff8ee!important;padding-right:60px;min-height:46px;box-shadow:0 3px 8px #24163312}
html[data-season="halloween"] :is(a.sd-detail-link,a.sd-contact-primary,a.school-inquiry-button)::after{content:"";position:absolute;right:11px;top:50%;transform:translateY(-50%);width:28px;height:28px;background:url('./assets/button-ghost.png') center/contain no-repeat;pointer-events:none}
html[data-season="halloween"] :is(a.sd-detail-link,a.sd-contact-primary,a.school-inquiry-button):hover{background:#45254d;border-color:#e0a565}
