/* A full-site seasonal skin grounded in the supplied purple-and-gold artwork. */
html[data-hero-theme="halloween"]{
  --ink:#3C2B43;
  --navy:#35184C;
  --lagoon:#754699;
  --lagoon-deep:#552574;
  --coral:#673291;
  --sky:#FFF3E2;
  --sky-2:#E5D9EC;
  --line:rgba(80,42,100,.16);
  --hw-night:#261137;
  --hw-gold:#FFD57A;
  --hw-paper:#FFFAF3;
  --hw-muted:#74617D;
}
html[data-hero-theme="halloween"] body{background:var(--hw-paper);font-size:16px;font-weight:500;color:var(--ink);line-height:1.8}
html[data-hero-theme="halloween"] :focus-visible{outline-color:#8A4DB2;outline-offset:4px}
html[data-hero-theme="halloween"] .topbar{background:#1C0D2B;color:#F5E9DA;font-size:13px}
html[data-hero-theme="halloween"] .topbar .tel{color:var(--hw-gold);white-space:nowrap}
html[data-hero-theme="halloween"] header.site{background:rgba(38,17,55,.97);color:#FFF6E7;border-bottom:1px solid rgba(255,213,122,.28);backdrop-filter:blur(14px)}
html[data-hero-theme="halloween"] header.site .wrap{gap:18px}
html[data-hero-theme="halloween"] .logo .brand-logo{width:132px;filter:brightness(0) invert(1)}
html[data-hero-theme="halloween"] .logo small{display:none}
html[data-hero-theme="halloween"] nav.main a{font-size:15px;padding:10px 11px}
html[data-hero-theme="halloween"] nav.main a small{color:var(--hw-gold);font-size:11px;letter-spacing:.13em}
html[data-hero-theme="halloween"] nav.main a:hover{background:#48215F}
html[data-hero-theme="halloween"] .btn{border-radius:12px;font-size:16px;padding:14px 24px;letter-spacing:.02em}
html[data-hero-theme="halloween"] .btn-coral{background:var(--hw-gold);color:#301B40;box-shadow:0 7px 18px rgba(121,76,21,.16)}
html[data-hero-theme="halloween"] .btn-coral:hover{background:#FFE3A6;box-shadow:0 9px 24px rgba(121,76,21,.22)}
html[data-hero-theme="halloween"] .btn-ghost{background:transparent;border:1.5px solid #805199;color:var(--navy)}
html[data-hero-theme="halloween"] .btn-ghost:hover{background:#F1E5F5;color:var(--navy)}
html[data-hero-theme="halloween"] .btn-navy{background:#4A2465;color:#fff}
html[data-hero-theme="halloween"] .head-cta .btn{font-size:15px;padding:11px 18px}
html[data-hero-theme="halloween"] .head-cta .btn-ghost{color:#FFF0D2;border-color:#BA9763}
html[data-hero-theme="halloween"] .head-cta .btn-ghost:hover{background:#49285D}
html[data-hero-theme="halloween"] .menu-btn{background:#4A2861;flex-shrink:0}
html[data-hero-theme="halloween"] .menu-btn span{background:#FFE5A4}
html[data-hero-theme="halloween"] .event-hero{background:#281437;color:#FFF4DC}
html[data-hero-theme="halloween"] .event-hero__controls{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:none;background:transparent;padding:20px 0 0;color:#442252}
html[data-hero-theme="halloween"] .event-hero__caption{display:contents;font-size:15px;margin:0;letter-spacing:.02em}
html[data-hero-theme="halloween"] .event-hero__label{order:1}
html[data-hero-theme="halloween"] .event-hero__caption a{order:3;color:#673291;font-size:13px}
html[data-hero-theme="halloween"] .event-hero__choice,
html[data-hero-theme="halloween"] .event-hero__arrow{background:#3D2051;border-color:#88639C;color:#FFF5DC}
html[data-hero-theme="halloween"] .event-hero__pager{order:2;gap:8px}
html[data-hero-theme="halloween"] .event-hero__choice{width:40px;height:44px;font-size:14px;border-radius:12px}
html[data-hero-theme="halloween"] .event-hero__arrow{width:44px;height:44px;border-radius:12px}
html[data-hero-theme="halloween"] .event-hero__choice[aria-pressed="true"]{background:var(--hw-gold);border-color:var(--hw-gold);color:#301B40}
html[data-hero-theme="halloween"] .event-hero__choice:hover,
html[data-hero-theme="halloween"] .event-hero__arrow:hover{border-color:#FFE0A0}
html[data-hero-theme="halloween"] .search{margin-top:calc(-1 * clamp(12px,3.9vw,56px))}
html[data-hero-theme="halloween"] .search-card{background:#fff;border:1px solid #DCC7E7;border-top:4px solid #E3B563;border-radius:20px;padding:24px 26px;box-shadow:0 14px 38px rgba(70,28,88,.09)}
html[data-hero-theme="halloween"] .search-card .title{gap:12px;margin-bottom:20px}
html[data-hero-theme="halloween"] .search-card .title .tag{background:#5C2A7C;color:#fff;font-size:12px;border-radius:8px;padding:5px 10px;flex-shrink:0;white-space:nowrap}
html[data-hero-theme="halloween"] .search-card .title h2{color:#3B1D51;font-size:20px;font-weight:700;text-wrap:balance;line-height:1.5}
html[data-hero-theme="halloween"] .field label{font-size:13px;letter-spacing:.03em;color:#60466D;margin-bottom:8px}
html[data-hero-theme="halloween"] .field input,
html[data-hero-theme="halloween"] .field select{height:54px;background:#FCF8FE;border:1.5px solid #D8C4E3;font-size:16px;color:#35243F;border-radius:10px;padding:0 12px;min-width:0}
html[data-hero-theme="halloween"] .field input:focus,
html[data-hero-theme="halloween"] .field select:focus{outline:2px solid #9D6FB9;background:#fff;border-color:transparent}
html[data-hero-theme="halloween"] .search-grid{grid-template-columns:1.3fr 1fr 1fr .7fr .7fr auto}
html[data-hero-theme="halloween"] .search-grid .btn{height:54px}
html[data-hero-theme="halloween"] .search-sub{font-size:14px;gap:20px;margin-top:18px}
html[data-hero-theme="halloween"] .eyebrow{color:#693789;font-size:15px;letter-spacing:.15em}
html[data-hero-theme="halloween"] .h2{color:#3D1D53;font-size:clamp(26px,2.7vw,34px);line-height:1.4;letter-spacing:.01em}
html[data-hero-theme="halloween"] .section-head{margin-bottom:28px;gap:20px}
html[data-hero-theme="halloween"] .section-head p{font-size:15px;color:#66516E;line-height:1.85}
html[data-hero-theme="halloween"] .areas{padding:80px 0 72px}
html[data-hero-theme="halloween"] .map{background:linear-gradient(150deg,#F1E8F9,#FFF4DE);border:1px solid #E1CCE8;border-radius:22px}
html[data-hero-theme="halloween"] .map .isl{fill:#E1D1F0;stroke:#B99FCD}
html[data-hero-theme="halloween"] .map path[stroke="#9AB7DA"]{stroke:#B99FCD}
html[data-hero-theme="halloween"] .map text{fill:#552574}
html[data-hero-theme="halloween"] .map .pin circle{fill:#E7B351}
html[data-hero-theme="halloween"] .map .pin text{fill:#3D1D53}
html[data-hero-theme="halloween"] .map .pin:hover circle,
html[data-hero-theme="halloween"] .map .pin.on circle{fill:#673291}
html[data-hero-theme="halloween"] .map .pulse{fill:none;stroke:#9E72B8}
html[data-hero-theme="halloween"] .area-list a{padding:18px 10px}
html[data-hero-theme="halloween"] .area-list a:hover,
html[data-hero-theme="halloween"] .area-list a.on{background:#F2E8F7}
html[data-hero-theme="halloween"] .area-list .no{color:#744694;font-size:23px}
html[data-hero-theme="halloween"] .area-list b{font-size:18px;color:#442252}
html[data-hero-theme="halloween"] .area-list small{color:#74617D;font-size:13px;line-height:1.7}
html[data-hero-theme="halloween"] .campaign{background:#F8EDDB;border-top:1px solid #EBDDCA;border-bottom:1px solid #EBDDCA;padding:72px 0}
html[data-hero-theme="halloween"] .camp-card{border:1px solid #E2CFE5;border-radius:18px;box-shadow:0 7px 22px rgba(67,27,85,.06)}
html[data-hero-theme="halloween"] .camp-card .body{padding:20px 22px 24px}
html[data-hero-theme="halloween"] .camp-card .kind{font-size:12px;color:#673291}
html[data-hero-theme="halloween"] .camp-card h3{font-size:18px;color:#3D1D53;line-height:1.55}
html[data-hero-theme="halloween"] .camp-card p{font-size:14px;color:#66516E}
html[data-hero-theme="halloween"] .hotels{padding:80px 0}
html[data-hero-theme="halloween"] .tab{font-size:15px;border-radius:10px;border-color:#D5BFDF;color:#572E72;padding:11px 18px;background:#fff}
html[data-hero-theme="halloween"] .tab.on{background:#4E2669;border-color:#4E2669;color:#fff}
html[data-hero-theme="halloween"] .tab.on span{color:#FFE2A4}
html[data-hero-theme="halloween"] .area-banner{background:#F0E6F5;border:1px solid #DFCEE8;border-radius:16px;padding:16px;gap:22px}
html[data-hero-theme="halloween"] .area-banner b{font-size:22px}
html[data-hero-theme="halloween"] .area-banner p{font-size:14px;color:#66516E}
html[data-hero-theme="halloween"] .hotel{border:1px solid #DDCBE5;border-radius:16px;box-shadow:0 5px 18px rgba(55,25,76,.04)}
html[data-hero-theme="halloween"] .hotel:hover{border-color:#B891CE;box-shadow:0 10px 24px rgba(55,25,76,.12)}
html[data-hero-theme="halloween"] .hotel .body{padding:18px}
html[data-hero-theme="halloween"] .hotel h3{font-size:16px;font-weight:700;line-height:1.6;min-height:51px;color:#442252}
html[data-hero-theme="halloween"] .hotel .kana{font-size:12px;font-weight:400;color:#74617D}
html[data-hero-theme="halloween"] .hotel .addr{font-size:13px;color:#66516E}
html[data-hero-theme="halloween"] .hotel .addr::before{background:#9F77B6}
html[data-hero-theme="halloween"] .hotel .link{font-size:14px;color:#673291}
html[data-hero-theme="halloween"] .features{background:#2D153F;color:#fff;padding:80px 0}
html[data-hero-theme="halloween"] .features::before{background:radial-gradient(circle,rgba(255,213,122,.14),transparent 70%)}
html[data-hero-theme="halloween"] .features .eyebrow{color:#FFE0A0}
html[data-hero-theme="halloween"] .features .h2{color:#FFF6E7}
html[data-hero-theme="halloween"] .features .section-head p{color:#EBDCEC}
html[data-hero-theme="halloween"] .feat{background:#3D2050;border:1px solid #72517F;padding:28px 24px}
html[data-hero-theme="halloween"] .feat .ic{background:#64407A;border:1px solid #997BB0}
html[data-hero-theme="halloween"] .feat .ic svg{stroke:#FFE1A5}
html[data-hero-theme="halloween"] .feat h3{font-size:18px;color:#FFF4DB;font-weight:700}
html[data-hero-theme="halloween"] .feat p{font-size:15px;line-height:1.85;color:#E8DBEA;opacity:1}
html[data-hero-theme="halloween"] .news{padding:80px 0;background:#FFFAF3}
html[data-hero-theme="halloween"] .news-list .cat{background:#EEDFF3;color:#552574;font-size:12px}
html[data-hero-theme="halloween"] .news-list .cat.imp{background:#F8E9C8;color:#65471A}
html[data-hero-theme="halloween"] .news-list b{font-size:16px;font-weight:700;line-height:1.65}
html[data-hero-theme="halloween"] .news-list p{font-size:14px;color:#74617D}
html[data-hero-theme="halloween"] .reco{border-color:#DDCBE5;background:#fff}
html[data-hero-theme="halloween"] .reco span{font-size:14px}
html[data-hero-theme="halloween"] .members{padding:0 0 80px}
html[data-hero-theme="halloween"] .members-card{background:linear-gradient(120deg,#51276B,#754499);border:1px solid #BA95CE;border-radius:22px}
html[data-hero-theme="halloween"] .members-card>div:first-child{padding:44px}
html[data-hero-theme="halloween"] .members-card .eyebrow{color:#FFE0A0}
html[data-hero-theme="halloween"] .members-card p{font-size:16px;line-height:1.85;opacity:1}
html[data-hero-theme="halloween"] .members-card .btn-white{color:#552574}
html[data-hero-theme="halloween"] .members-card .btn-outline{border:1.5px solid #D2B6DF;color:#fff}
html[data-hero-theme="halloween"] .perk{background:rgba(35,13,49,.87);border:1px solid rgba(255,226,164,.24);font-size:14px}
html[data-hero-theme="halloween"] .perk b{color:#FFE0A0}
html[data-hero-theme="halloween"] .faq{background:#F2EAF6;padding:80px 0}
html[data-hero-theme="halloween"] details{border-color:#D9C3E4;border-radius:14px}
html[data-hero-theme="halloween"] summary{font-size:16px;font-weight:700;line-height:1.65;padding:20px}
html[data-hero-theme="halloween"] summary .q{color:#754699}
html[data-hero-theme="halloween"] summary .pm{background:#F1E3F5;color:#552574}
html[data-hero-theme="halloween"] details[open] summary .pm{background:#673291;color:#fff}
html[data-hero-theme="halloween"] details .a{font-size:15px;color:#66516E;line-height:1.85}
html[data-hero-theme="halloween"] .faq-cat{font-size:14px;color:#673291}
html[data-hero-theme="halloween"] .company{padding:80px 0;background:#FFFAF3}
html[data-hero-theme="halloween"] .company th{color:#74617D;font-size:14px}
html[data-hero-theme="halloween"] .company td{font-size:15px;color:#49354F}
html[data-hero-theme="halloween"] .social{background:#fff;border-color:#DDCBE5;padding:18px}
html[data-hero-theme="halloween"] .social b{font-size:15px;color:#442252}
html[data-hero-theme="halloween"] .social small{font-size:13px;color:#74617D}
html[data-hero-theme="halloween"] footer{background:#1C0E2A;border-top:2px solid #6E4782;padding:60px 0 28px;color:#F6EAD9}
html[data-hero-theme="halloween"] .foot-grid h4{color:#FFE0A0;font-size:16px}
html[data-hero-theme="halloween"] .foot-grid li{font-size:15px;opacity:1}
html[data-hero-theme="halloween"] .foot-brand p{font-size:14px;color:#E2D0E7;opacity:1}
html[data-hero-theme="halloween"] .foot-bottom{font-size:13px;opacity:1;color:#DACADF;border-color:#60416E;gap:12px}
html[data-hero-theme="halloween"] .page-hero{background:#35184C}
html[data-hero-theme="halloween"] .page-hero .eyebrow{color:#FFE0A0}
html[data-hero-theme="halloween"] .page-hero.has-img::before{background:linear-gradient(180deg,rgba(46,20,61,.15),rgba(46,20,61,.86))}
html[data-hero-theme="halloween"] .hotel-hero-in{background:linear-gradient(180deg,rgba(46,20,61,.12) 30%,rgba(46,20,61,.9))}
html[data-hero-theme="halloween"] .h1{font-size:clamp(28px,3.5vw,42px);line-height:1.45}
html[data-hero-theme="halloween"] .num-badge{background:#FFE0A0;color:#442252}
html[data-hero-theme="halloween"] .book-card{border-color:#D9C3E4;border-top:4px solid #E3B563;border-radius:20px;box-shadow:0 12px 30px rgba(55,25,76,.08)}
html[data-hero-theme="halloween"] .book-card h2{font-size:24px}
html[data-hero-theme="halloween"] .book-card p{font-size:15px;color:#66516E}
html[data-hero-theme="halloween"] .book-card .btn{white-space:normal;text-align:center}
html[data-hero-theme="halloween"] .book-notes{font-size:13px;color:#74617D}
html[data-hero-theme="halloween"] .hotel-meta b{font-size:13px;color:#74617D}
html[data-hero-theme="halloween"] .hotel-meta>div{font-size:15px}
html[data-hero-theme="halloween"] .small{font-size:14px;color:#74617D}
html[data-hero-theme="halloween"] .notice{background:#FFF0CC}
html[data-hero-theme="halloween"] .sticky-tabs{background:rgba(255,250,243,.97)}
html[data-hero-theme="halloween"] .plan-card,
html[data-hero-theme="halloween"] .step,
html[data-hero-theme="halloween"] .spot{border-color:#D9C3E4}
@media(max-width:1100px){
  html[data-hero-theme="halloween"] nav.main{display:none;position:absolute;top:74px;left:0;right:0;background:#2D153F;border-bottom:1px solid #856392;padding:12px 24px 20px}
  html[data-hero-theme="halloween"] nav.main.open{display:block}
  html[data-hero-theme="halloween"] nav.main ul{flex-direction:column;gap:0}
  html[data-hero-theme="halloween"] nav.main a{padding:14px 10px;border-bottom:1px solid #634473;border-radius:0}
  html[data-hero-theme="halloween"] .menu-btn{display:flex}
  html[data-hero-theme="halloween"] .head-cta .btn-ghost{display:none}
  html[data-hero-theme="halloween"] .search-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  html[data-hero-theme="halloween"] .search-grid .btn{grid-column:1/-1}
}
@media(max-width:860px){
  html[data-hero-theme="halloween"] .members-card>div:first-child{padding:34px 26px}
  html[data-hero-theme="halloween"] .news-list a{gap:12px}
}
@media(max-width:600px){
  html[data-hero-theme="halloween"] .wrap{padding-left:18px;padding-right:18px}
  html[data-hero-theme="halloween"] .topbar .wrap{flex-wrap:wrap;gap:0;padding-top:5px;padding-bottom:5px;line-height:1.6}
  html[data-hero-theme="halloween"] .topbar .wrap>div:first-child{flex:1 0 100%;font-size:12px;white-space:nowrap}
  html[data-hero-theme="halloween"] .topbar .wrap>div:last-child{flex:1 0 100%;font-size:11px;text-align:right;white-space:nowrap}
  html[data-hero-theme="halloween"] .topbar .tel{font-size:16px}
  html[data-hero-theme="halloween"] .logo .brand-logo{width:110px}
  html[data-hero-theme="halloween"] header.site .wrap{gap:12px}
  html[data-hero-theme="halloween"] .head-cta .btn{font-size:14px;padding:11px 14px}
  html[data-hero-theme="halloween"] .event-hero__controls{flex-direction:column;gap:12px;padding:18px 0 0}
  html[data-hero-theme="halloween"] .event-hero__caption{display:flex;width:100%;font-size:13px}
  html[data-hero-theme="halloween"] .search-card{padding:20px;border-radius:16px}
  html[data-hero-theme="halloween"] .search-card .title{align-items:center;margin-bottom:20px;gap:10px}
  html[data-hero-theme="halloween"] .search-card .title h2{font-size:18px}
  html[data-hero-theme="halloween"] .search-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
  html[data-hero-theme="halloween"] .search-grid>.field:first-child{grid-column:1/-1}
  html[data-hero-theme="halloween"] .field{min-width:0}
  html[data-hero-theme="halloween"] .field input,
  html[data-hero-theme="halloween"] .field select{font-size:15px;padding:0 10px}
  html[data-hero-theme="halloween"] .search-sub{font-size:13px;gap:12px 18px}
  html[data-hero-theme="halloween"] .areas,
  html[data-hero-theme="halloween"] .hotels,
  html[data-hero-theme="halloween"] .features,
  html[data-hero-theme="halloween"] .news,
  html[data-hero-theme="halloween"] .faq,
  html[data-hero-theme="halloween"] .company{padding:56px 0}
  html[data-hero-theme="halloween"] .campaign{padding:56px 0}
  html[data-hero-theme="halloween"] .members{padding:0 0 56px}
  html[data-hero-theme="halloween"] .section-head p{font-size:14px}
  html[data-hero-theme="halloween"] .area-layout{gap:28px}
  html[data-hero-theme="halloween"] .area-list a{grid-template-columns:24px 64px minmax(0,1fr) auto;gap:10px;padding:16px 4px}
  html[data-hero-theme="halloween"] .area-list b{font-size:16px}
  html[data-hero-theme="halloween"] .area-list small{font-size:12px}
  html[data-hero-theme="halloween"] .area-banner{padding:14px;gap:14px}
  html[data-hero-theme="halloween"] .area-banner img{width:96px;height:72px}
  html[data-hero-theme="halloween"] .area-banner b{font-size:19px}
  html[data-hero-theme="halloween"] .hotel h3{min-height:0}
  html[data-hero-theme="halloween"] .hotel-grid{gap:18px}
  html[data-hero-theme="halloween"] .social-grid{grid-template-columns:1fr}
  html[data-hero-theme="halloween"] .social{padding:16px}
  html[data-hero-theme="halloween"] .company th{width:100px;padding-left:0}
  html[data-hero-theme="halloween"] .company td{overflow-wrap:anywhere}
  html[data-hero-theme="halloween"] summary{padding:18px 16px;font-size:15px;gap:10px}
  html[data-hero-theme="halloween"] .faq-grid{gap:14px}
  html[data-hero-theme="halloween"] .foot-grid{gap:32px}
  html[data-hero-theme="halloween"] .foot-bottom{line-height:1.9}
}
@media(max-width:360px){
  html[data-hero-theme="halloween"] .wrap{padding-left:16px;padding-right:16px}
  html[data-hero-theme="halloween"] .search-grid{grid-template-columns:minmax(0,1fr)}
  html[data-hero-theme="halloween"] .event-hero__choice{width:34px}
  html[data-hero-theme="halloween"] .event-hero__arrow{width:40px}
}
