.woi-app{--yellow:#f3c900;--ink:#111;--muted:#6d6d6d;max-width:1120px;margin:35px auto 70px;color:var(--ink);font-family:inherit}.woi-app *{box-sizing:border-box}.woi-hero{position:relative;overflow:hidden;text-align:center;background:#111;color:#fff;padding:64px 7%;border-radius:28px;box-shadow:0 22px 60px #0002}.woi-hero:before,.woi-hero:after{content:"";position:absolute;border-radius:50%;background:var(--yellow)}.woi-hero:before{width:220px;height:220px;left:-130px;top:-120px}.woi-hero:after{width:160px;height:160px;right:-80px;bottom:-95px}.woi-kicker{position:relative;z-index:1;font-size:13px;font-weight:900;letter-spacing:.17em}.woi-hero h1{position:relative;z-index:1;font-size:clamp(48px,8vw,92px);line-height:.82;letter-spacing:-.055em;margin:15px 0 14px;font-weight:950}.woi-date{position:relative;z-index:1;color:var(--yellow);font-weight:900;font-size:clamp(17px,2vw,23px);letter-spacing:.07em}.woi-hero p{position:relative;z-index:1;max-width:670px;margin:20px auto 0;font-size:18px;line-height:1.55;color:#eee}.woi-pills{position:relative;z-index:1;display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:25px}.woi-pills span{padding:9px 14px;border-radius:99px;border:1px solid #ffffff30;background:#ffffff12;font-size:13px;font-weight:800}.woi-card{position:relative;z-index:2;background:#fff;margin:-18px 22px 0;padding:38px;border:1px solid #e6e6e2;border-radius:24px;box-shadow:0 18px 55px #0002}.woi-step{display:flex;gap:13px;align-items:center;margin-bottom:22px}.woi-step>b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--yellow)}.woi-step strong{display:block;font-size:21px}.woi-step small{display:block;color:var(--muted);margin-top:2px}.woi-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.woi-slot{font:inherit;text-align:left;background:#fff;color:#111;border:2px solid #e4e4df;border-radius:15px;padding:18px 15px;cursor:pointer;transition:.18s}.woi-slot:hover{border-color:#111;transform:translateY(-2px);box-shadow:0 8px 22px #0001}.woi-slot strong,.woi-slot small{display:block}.woi-slot strong{font-size:16px}.woi-slot small{margin-top:5px;color:#6d6d6d;font-weight:700}.woi-slot.selected{background:#111;color:#fff;border-color:#111;box-shadow:inset 0 -4px var(--yellow)}.woi-slot.selected small{color:var(--yellow)}.woi-slot.full{opacity:.4;cursor:not-allowed}.woi-card form{border-top:1px solid #e5e5e0;margin-top:32px;padding-top:30px}.woi-selected{background:#111;color:#fff;padding:13px 16px;border-radius:11px;margin-bottom:24px}.woi-selected b{color:var(--yellow)}.woi-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.woi-grid .wide{grid-column:1/-1}.woi-grid label,.woi-counts label{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.woi-grid input,.woi-counts input{display:block;width:100%;min-height:50px;margin-top:7px;border:1.5px solid #d5d5d0;border-radius:11px;padding:11px 13px;font:inherit}.woi-grid input:focus,.woi-counts input:focus{outline:0;border-color:#111;box-shadow:0 0 0 3px #f3c90055}.woi-counts{display:grid;grid-template-columns:1fr 1fr .7fr;gap:15px;margin:20px 0}.woi-counts label,.woi-total{background:#f5f5f2;padding:16px;border-radius:13px}.woi-counts label small{display:block;color:#777;text-transform:none;margin-top:2px}.woi-total{display:flex;flex-direction:column;justify-content:center;align-items:center}.woi-total b{font-size:36px;line-height:1}.woi-consent{display:flex;gap:9px;color:#555;font-size:13px;line-height:1.4;margin:17px 0}.woi-submit{width:100%;border:0;border-radius:13px;padding:17px;background:var(--yellow);color:#111;font:inherit;font-size:16px;font-weight:950;cursor:pointer}.woi-submit:hover{filter:brightness(.96);transform:translateY(-1px)}.woi-submit:disabled{opacity:.55}.woi-note{text-align:center;color:#777;font-size:12px}.woi-error{background:#fff0f0;color:#8b1b1b;border:1px solid #efbbbb;border-radius:10px;padding:12px}.woi-confirm{text-align:center;background:#111;color:#fff;margin:25px 22px 0;padding:48px 25px;border-radius:24px}.woi-check{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 17px;border-radius:50%;background:var(--yellow);color:#111;font-size:34px;font-weight:900}.woi-confirm h2{font-size:clamp(27px,4vw,43px);margin:8px 0 14px}.woi-confirm p{max-width:650px;margin:9px auto;color:#e7e7e7;line-height:1.6}@media(max-width:760px){.woi-hero{border-radius:20px;padding:48px 22px}.woi-card{margin:-12px 7px 0;padding:24px 17px}.woi-slots{grid-template-columns:1fr 1fr}.woi-grid{grid-template-columns:1fr}.woi-grid .wide{grid-column:auto}.woi-counts{grid-template-columns:1fr 1fr}.woi-total{grid-column:1/-1;flex-direction:row;gap:12px}.woi-total b{font-size:30px}.woi-confirm{margin:20px 7px 0}}@media(max-width:480px){.woi-slots{grid-template-columns:1fr}.woi-hero h1{font-size:49px}.woi-hero p{font-size:16px}}
.woi-closed{text-align:center;padding:30px 15px}.woi-closed h2{font-size:30px;margin:0 0 8px}.woi-closed p{color:#6d6d6d;margin:0}

/* v1.2 — WPBakery/theme collision protection */
#woi-app.woi-app{display:block!important;width:100%!important;max-width:1120px!important;margin:35px auto 70px!important;line-height:1.4!important}
#woi-app .woi-hero{background:#111!important;color:#fff!important}
#woi-app .woi-hero h1{color:#fff!important;text-transform:uppercase!important;margin:15px 0 14px!important;padding:0!important}
#woi-app .woi-hero p{color:#eee!important}
#woi-app .woi-date{color:#f3c900!important}
#woi-app .woi-card{background:#fff!important;color:#111!important}
#woi-app .woi-step{margin:0 0 22px!important}
#woi-app .woi-step>b{display:grid!important}
#woi-app .woi-step strong{color:#111!important;margin:0!important}
#woi-app .woi-step small{color:#6d6d6d!important;margin:2px 0 0!important}
#woi-app .woi-slots{display:grid!important}
#woi-app button.woi-slot{display:block!important;width:100%!important;height:auto!important;min-height:82px!important;background:#fff!important;color:#111!important;border:2px solid #e4e4df!important;padding:18px 15px!important;margin:0!important;white-space:normal!important;line-height:1.25!important}
#woi-app button.woi-slot strong{display:block!important;color:inherit!important;font-size:16px!important;line-height:1.25!important;margin:0 0 6px!important}
#woi-app button.woi-slot small{display:block!important;color:#6d6d6d!important;font-size:12px!important;line-height:1.25!important;margin:0!important}
#woi-app button.woi-slot.selected{background:#111!important;color:#fff!important;border-color:#111!important;box-shadow:inset 0 -4px #f3c900!important}
#woi-app button.woi-slot.selected small{color:#f3c900!important}
#woi-app .woi-submit{background:#f3c900!important;color:#111!important}
#woi-app [hidden]{display:none!important}
@media(max-width:760px){#woi-app.woi-app{margin:18px auto 40px!important}}

/* v1.3 — live-site visual refinements */
#woi-app .woi-hero{
  padding-top:72px!important;
  padding-bottom:62px!important;
}
#woi-app .woi-hero .woi-kicker{
  margin-bottom:14px!important;
  line-height:1.4!important;
}
#woi-app .woi-hero h1{
  font-size:clamp(48px,6.7vw,86px)!important;
  line-height:1.04!important;
  letter-spacing:-.025em!important;
  word-spacing:.08em!important;
  margin:0 auto 22px!important;
  max-width:980px!important;
}
#woi-app .woi-date{
  display:block!important;
  margin:0 auto 18px!important;
  line-height:1.35!important;
}
#woi-app .woi-hero p{
  margin:0 auto!important;
  line-height:1.65!important;
}
#woi-app .woi-pills{
  margin-top:28px!important;
}
#woi-app .woi-grid label{
  display:block!important;
  color:#111!important;
}
#woi-app .woi-grid input,
#woi-app .woi-counts input{
  display:block!important;
  width:100%!important;
  min-height:52px!important;
  background:#fff!important;
  color:#111!important;
  border:2px solid #cfcfca!important;
  border-radius:10px!important;
  box-shadow:none!important;
  opacity:1!important;
  padding:12px 14px!important;
}
#woi-app .woi-grid input:hover,
#woi-app .woi-counts input:hover{
  border-color:#aaa!important;
}
#woi-app .woi-grid input:focus,
#woi-app .woi-counts input:focus{
  border-color:#f3c900!important;
  box-shadow:0 0 0 3px rgba(243,201,0,.18)!important;
  outline:none!important;
}
#woi-app .woi-grid{
  row-gap:20px!important;
}
#woi-app .woi-counts{
  margin-top:24px!important;
}
@media(max-width:760px){
 #woi-app .woi-hero{padding-top:54px!important;padding-bottom:48px!important}
 #woi-app .woi-hero h1{font-size:clamp(42px,13vw,64px)!important;line-height:1.02!important;letter-spacing:-.02em!important}
}

/* v1.4 — confirmation visibility */
#woi-app .woi-confirm h2{
  color:#f3c900!important;
  opacity:1!important;
  text-shadow:none!important;
}
