.mxws-app,
.mxws-submit-wrap {
  --mx-forest: #173f35;
  --mx-green: #245a49;
  --mx-pale: #dce9e1;
  --mx-butter: #f6d96b;
  --mx-soft-butter: #fff1b7;
  --mx-paper: #fffcf5;
  --mx-bg: #f7f4ea;
  --mx-ink: #18302a;
  --mx-muted: #687770;
  --mx-coral: #d9694f;
  --mx-border: #d8ded6;
  color: var(--mx-ink);
  font-family: "Avenir Next", "Segoe UI", system-ui, sans-serif;
}

.mxws-app *, .mxws-submit-wrap * { box-sizing: border-box; }
.mxws-app { padding: clamp(24px, 4vw, 54px); background: var(--mx-bg); border-radius: 28px; }
.mxws-hero { display: grid; grid-template-columns: minmax(0, 1fr); max-width: 900px; margin-bottom: 34px; }
.mxws-eyebrow { margin: 0 0 12px !important; display: flex; align-items: center; gap: 9px; color: var(--mx-coral); font-size: 12px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.mxws-eyebrow span { display: inline-block; width: 23px; height: 4px; background: var(--mx-coral); border-radius: 4px; }
.mxws-hero h2, .mxws-submit-heading h2 { margin: 0; color: var(--mx-forest); font-size: clamp(42px, 5vw, 72px); line-height: 1; letter-spacing: -.055em; }
.mxws-hero > p:last-child, .mxws-submit-heading > p:last-child { margin: 14px 0 0; color: var(--mx-muted); font-size: 17px; }

.mxws-filters { display: grid; grid-template-columns: 1fr 1.25fr 1fr auto; gap: 12px; align-items: end; padding: 20px; background: var(--mx-paper); border: 1px solid var(--mx-border); border-radius: 20px; box-shadow: 0 7px 20px rgba(23,63,53,.07); }
.mxws-filters label, .mxws-submit-form label { display: grid; gap: 7px; }
.mxws-filters label > span, .mxws-submit-form label > span, .mxws-public-weekdays > span { color: var(--mx-forest); font-size: 12px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.mxws-filters input, .mxws-filters select, .mxws-submit-form input, .mxws-submit-form select, .mxws-submit-form textarea { width: 100%; min-height: 48px; padding: 10px 13px; border: 1px solid var(--mx-border); border-radius: 12px; background: white; color: var(--mx-ink); font: inherit; }
.mxws-filters input:focus, .mxws-filters select:focus, .mxws-submit-form input:focus, .mxws-submit-form select:focus, .mxws-submit-form textarea:focus { border-color: var(--mx-forest); outline: 3px solid rgba(246,217,107,.55); }
.mxws-filters button, .mxws-submit-form > button, .mxws-empty button { min-height: 48px; padding: 0 20px; border: 0; border-radius: 13px; background: var(--mx-forest); color: white; font-weight: 900; cursor: pointer; }
.mxws-filters button:hover, .mxws-submit-form > button:hover { background: var(--mx-green); }

.mxws-days { margin: 24px 0 42px; display: grid; grid-template-columns: repeat(7, 1fr); gap: 10px; }
.mxws-days a { min-height: 82px; display: grid; place-content: center; text-align: center; border: 1px solid var(--mx-border); border-radius: 17px; background: rgba(255,252,245,.78); color: var(--mx-ink); text-decoration: none !important; transition: transform .18s ease, background .18s ease; }
.mxws-days a:hover { transform: translateY(-2px); }
.mxws-days span, .mxws-days strong { display: block; }
.mxws-days span { color: var(--mx-muted); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.mxws-days strong { margin-top: 4px; font-size: 19px; }
.mxws-days small { margin-top: 1px; color: var(--mx-muted); font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.mxws-days .is-active { transform: translateY(-4px); border-color: var(--mx-forest); background: var(--mx-forest); color: white; box-shadow: 0 7px 0 var(--mx-butter); }
.mxws-days .is-active span { color: var(--mx-butter); }
.mxws-days .is-active small { color: white; opacity: .82; }

.mxws-results-heading { display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: 18px; }
.mxws-results-heading h3 { margin: 0; color: var(--mx-forest); font-size: clamp(28px, 3vw, 40px); letter-spacing: -.045em; }
.mxws-results-heading > p { margin: 0 0 4px; color: var(--mx-muted); }
.mxws-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; align-items: start; }
.mxws-card { overflow: hidden; border: 1px solid var(--mx-border); border-radius: 24px; background: var(--mx-paper); box-shadow: 0 7px 18px rgba(23,63,53,.07); transition: transform .2s ease, box-shadow .2s ease; }
.mxws-card:hover { transform: translateY(-4px); box-shadow: 0 13px 26px rgba(23,63,53,.12); }
.mxws-tier-free { display: grid; grid-template-columns: 22% 78%; }
.mxws-tier-quarter { display: grid; grid-template-columns: 30% 70%; }
.mxws-tier-half { display: grid; grid-template-columns: 40% 60%; }
.mxws-tier-full { display: grid; grid-template-columns: 48% 52%; border-color: var(--mx-butter); box-shadow: 0 14px 34px rgba(23,63,53,.14); }
.mxws-card-media { min-height: 205px; display: grid; place-content: center; position: relative; overflow: hidden; background: var(--mx-butter); }
.mxws-card-media::after { content: ""; position: absolute; top: -55px; right: -45px; width: 230px; height: 230px; border: 2px dashed rgba(23,63,53,.23); border-radius: 50%; }
.mxws-tier-quarter .mxws-card-media { min-height: 235px; }
.mxws-tier-free .mxws-card-media { min-height: 180px; }
.mxws-tier-half .mxws-card-media { min-height: 330px; }
.mxws-tier-full .mxws-card-media { min-height: 440px; }
.mxws-card-media > span { position: relative; z-index: 1; font-size: 94px; filter: drop-shadow(0 9px 0 rgba(23,63,53,.12)); }
.mxws-card-media img { width: 100%; height: 100%; min-height: inherit; object-fit: cover; }
.mxws-card-media b { position: absolute; z-index: 2; top: 16px; left: 16px; padding: 8px 11px; border-radius: 999px; background: var(--mx-paper); font-size: 11px; }
.mxws-card-body { padding: 24px; }
.mxws-tier-free .mxws-card-body { padding: 24px 28px; }
.mxws-tier-quarter .mxws-card-body { padding: 28px 32px; display: flex; flex-direction: column; justify-content: center; }
.mxws-tier-half .mxws-card-body { padding: 34px; display: flex; flex-direction: column; justify-content: center; }
.mxws-tier-full .mxws-card-body { padding: clamp(34px, 5vw, 62px); display: flex; flex-direction: column; justify-content: center; }
.mxws-card-kicker { margin: 0 !important; color: var(--mx-muted); font-size: 12px; font-weight: 800; }
.mxws-card-kicker span { display: inline-block; width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; background: var(--mx-coral); box-shadow: 0 0 0 4px #f7ddd5; }
.mxws-card h3 { margin: 13px 0 8px; color: var(--mx-forest); font-size: clamp(27px, 3vw, 39px); line-height: 1.02; letter-spacing: -.045em; }
.mxws-tier-free h3 { font-size: clamp(23px, 2.4vw, 31px); }
.mxws-tier-quarter h3 { font-size: clamp(27px, 3vw, 37px); }
.mxws-tier-full h3 { font-size: clamp(38px, 4.6vw, 64px); }
.mxws-card-copy p { margin: 0; color: var(--mx-muted); line-height: 1.55; }
.mxws-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 18px; }
.mxws-tags span { padding: 7px 10px; border-radius: 999px; background: var(--mx-pale); color: var(--mx-green); font-size: 11px; font-weight: 900; }
.mxws-card-footer { margin-top: 22px; display: flex; align-items: center; justify-content: space-between; gap: 15px; color: var(--mx-muted); font-size: 13px; font-weight: 700; }
.mxws-card-footer a { flex: 0 0 auto; padding: 11px 15px; border-radius: 11px; background: var(--mx-forest); color: white !important; text-decoration: none !important; font-weight: 900; }
.mxws-card details { margin-top: 17px; padding: 12px 14px; border-radius: 12px; background: var(--mx-pale); color: #456057; font-size: 12px; }
.mxws-card summary { cursor: pointer; font-weight: 900; }
.mxws-card details p { margin: 8px 0 0; }
.mxws-empty { padding: 68px 20px; border: 1px dashed #b9c5bd; border-radius: 24px; background: var(--mx-paper); text-align: center; }
.mxws-empty > span { color: var(--mx-butter); font-size: 42px; }
.mxws-empty h3 { margin: 8px 0; color: var(--mx-forest); font-size: 26px; }
.mxws-empty p { color: var(--mx-muted); }
.mxws-disclaimer { margin: 24px 0 0 !important; color: var(--mx-muted); font-size: 12px; text-align: center; }

.mxws-submit-wrap { max-width: 980px; margin: 0 auto; padding: clamp(24px, 4vw, 48px); border-radius: 28px; background: var(--mx-bg); }
.mxws-submit-heading { margin-bottom: 30px; }
.mxws-success { margin-bottom: 28px; padding: 20px; border: 1px solid #b9d4c7; border-radius: 16px; background: var(--mx-pale); color: var(--mx-forest); }
.mxws-success p { margin: 5px 0 0; }
.mxws-submit-form { display: grid; gap: 24px; }
.mxws-submit-form fieldset { margin: 0; padding: 24px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; border: 1px solid var(--mx-border); border-radius: 20px; background: var(--mx-paper); }
.mxws-submit-form legend { padding: 0 10px; color: var(--mx-forest); font-size: 20px; font-weight: 900; }
.mxws-submit-form textarea { min-height: 95px; resize: vertical; }
.mxws-submit-form input[type="file"] { padding: 9px; }
.mxws-submit-form small { color: var(--mx-muted); }
.mxws-field-wide { grid-column: 1 / -1; }
.mxws-public-weekdays { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 9px 15px; }
.mxws-public-weekdays > span { flex: 0 0 100%; }
.mxws-public-weekdays label { display: inline-flex; grid-template-columns: auto 1fr; align-items: center; gap: 6px; }
.mxws-public-weekdays input, .mxws-consent input { width: auto; min-height: auto; }
.mxws-consent { display: grid !important; grid-template-columns: auto 1fr; align-items: start; gap: 10px !important; color: var(--mx-muted); }
.mxws-submit-form > button { justify-self: start; min-height: 52px; }
.mxws-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; }
.mxws-free-launch-note { padding: 18px 20px; border: 1px solid #b9d4c7; border-radius: 14px; background: var(--mx-pale); color: var(--mx-forest); }
.mxws-free-launch-note p { margin: 5px 0 0; color: var(--mx-muted); }

@media (max-width: 760px) {
  .mxws-app { padding: 24px 18px; border-radius: 18px; }
  .mxws-filters { grid-template-columns: 1fr; }
  .mxws-days { overflow-x: auto; grid-template-columns: repeat(7, minmax(84px, 1fr)); padding-bottom: 8px; }
  .mxws-grid { grid-template-columns: 1fr; }
  .mxws-tier-free, .mxws-tier-quarter, .mxws-tier-half, .mxws-tier-full { grid-template-columns: 1fr; }
  .mxws-tier-free .mxws-card-media, .mxws-tier-quarter .mxws-card-media, .mxws-tier-half .mxws-card-media, .mxws-tier-full .mxws-card-media { min-height: 230px; }
  .mxws-tier-free .mxws-card-body, .mxws-tier-quarter .mxws-card-body, .mxws-tier-half .mxws-card-body, .mxws-tier-full .mxws-card-body { padding: 24px; }
  .mxws-results-heading > p { display: none; }
  .mxws-submit-form fieldset { grid-template-columns: 1fr; padding: 20px; }
  .mxws-field-wide { grid-column: 1; }
  .mxws-public-weekdays { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .mxws-app *, .mxws-submit-wrap * { transition: none !important; scroll-behavior: auto !important; }
}
