/* MyCitysound Account Gateway 1.0.0. Every rule is scoped to gateway-owned classes. */
.mcg-layout {
  --mcg-ink:#051810; --mcg-panel:#08261b; --mcg-lime:#baff30; --mcg-gold:#ffd447;
  --mcg-white:#f6fbf6; --mcg-muted:#bed0c5; --mcg-line:rgba(188,255,58,.17);
  display:grid!important; grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)!important;
  gap:clamp(26px,3.4vw,54px)!important; align-items:start!important;
  width:100%!important; max-width:1400px!important; margin:0 auto!important;
  padding:36px clamp(22px,3vw,44px) calc(120px + env(safe-area-inset-bottom))!important;
  box-sizing:border-box; color:var(--mcg-white);
}
.mcg-layout .mcg-brand {display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;min-width:0!important;max-width:none!important;padding:0!important;}
.mcg-layout .mcg-auth {min-width:0!important;max-width:none!important;width:auto!important;box-sizing:border-box;align-self:start!important;background:#f4f8f4!important;color:#0a1d15!important;border-radius:30px!important;padding:clamp(26px,3vw,44px)!important;border:1px solid rgba(255,255,255,.7)!important;box-shadow:0 28px 75px rgba(0,0,0,.16)!important;}
.mcg-layout .mcg-brand-heading {font-size:clamp(38px,4.7vw,68px)!important;letter-spacing:-.052em!important;line-height:1.06!important;margin:10px 0 18px!important;overflow-wrap:anywhere;}
.mcg-layout .mcg-brand-tagline {color:var(--mcg-lime)!important;font-size:clamp(16px,1.4vw,21px)!important;line-height:1.35!important;font-weight:700!important;margin:0 0 12px!important;}
.mcg-layout .mcg-brand-description {max-width:560px!important;color:#d2e0d8!important;font-size:16px!important;line-height:1.6!important;margin:0 0 24px!important;}
.mcg-layout .mcg-brand-eyebrow {font-size:12px!important;letter-spacing:.2em!important;color:var(--mcg-gold)!important;font-weight:750!important;margin:0!important;}
.mcg-layout .mcg-trip-secondary {order:5!important;align-self:flex-start!important;background:none!important;background-image:none!important;color:#e2e9e3!important;box-shadow:none!important;border:0!important;border-radius:0!important;font-size:13px!important;line-height:1.6!important;font-weight:600!important;padding:0!important;margin:17px 0 0!important;text-decoration:underline!important;text-underline-offset:5px!important;}
.mcg-layout .mcg-auth-heading {font-size:clamp(37px,4vw,54px)!important;line-height:1.08!important;letter-spacing:-.035em!important;margin:12px 0 10px!important;color:#0a1d15!important;}
.mcg-layout .mcg-auth-kicker {font-size:12px!important;line-height:1.5!important;letter-spacing:.17em!important;color:#45795f!important;font-weight:750!important;margin:0!important;}
.mcg-layout .mcg-auth-description {font-size:17px!important;line-height:1.5!important;color:#526c5f!important;margin:0 0 24px!important;}
.mcg-layout .mcg-auth input[type=email],.mcg-layout .mcg-auth input[type=text],.mcg-layout .mcg-auth input[type=password] {box-sizing:border-box;max-width:100%;border:1px solid #b9cbbf;border-radius:10px;background:#fff;color:#102b1c;font:inherit;padding:12px 14px;}
.mcg-layout .mcg-auth-note {font-size:12px!important;line-height:1.6!important;color:#506959!important;margin:17px 0 0!important;padding:15px 0 0!important;border-top:1px solid #d4dfd7;}
.mcg-rewards,.mcg-dialog {font-family:inherit;text-align:left;}
.mcg-rewards *,.mcg-dialog * {box-sizing:border-box;}
.mcg-rewards {position:relative;isolation:isolate;order:3;overflow:hidden;min-width:0;border:1px solid var(--mcg-line);border-radius:25px;padding:23px;background:radial-gradient(ellipse at 100% 50%,rgba(163,222,28,.10),transparent 65%),linear-gradient(140deg,#092c1e,#051d15);box-shadow:0 18px 45px rgba(0,0,0,.16);}
.mcg-rewards::before {content:"";position:absolute;inset:0 24px auto;height:1px;background:linear-gradient(90deg,transparent,#c1dc52,transparent);opacity:.4;pointer-events:none;}
.mcg-panel-top {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px;}
.mcg-kicker {display:block;color:#ffd447;font-size:11px;font-weight:750;line-height:1.4;letter-spacing:.14em;}
.mcg-one-account {display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:#c0d3c5;font-size:11px;line-height:1.4;}
.mcg-one-account svg {width:15px;height:15px;fill:none;stroke:#baff30;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.mcg-rewards-body {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(150px,.65fr);gap:14px;align-items:center;}
.mcg-rewards-copy {min-width:0;}
.mcg-rewards h2 {color:#f6fbf6!important;font-family:inherit!important;font-size:clamp(28px,2.9vw,43px)!important;font-weight:780!important;line-height:1.07!important;letter-spacing:-.04em!important;margin:0 0 13px!important;text-transform:none!important;}
.mcg-rewards h2 span {color:#baff30!important;}
.mcg-rewards-intro {font-size:13px!important;line-height:1.65!important;color:#c6d7cc!important;max-width:410px;margin:0 0 18px!important;}
.mcg-benefits {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;}
.mcg-benefit {display:flex;align-items:flex-start;gap:8px;min-width:0;}
.mcg-icon {display:grid;place-items:center;width:29px;height:29px;flex:0 0 29px;border-radius:9px;background:rgba(186,255,48,.08);border:1px solid rgba(186,255,48,.15);color:#d6ef5b;}
.mcg-icon svg {width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.mcg-benefit h3 {font-family:inherit!important;letter-spacing:-.01em!important;text-transform:none!important;font-size:12px!important;font-weight:700!important;line-height:1.35!important;color:#f6fbf6!important;margin:1px 0 4px!important;}
.mcg-benefit p {font-size:11px!important;line-height:1.5!important;color:#b4c7bc!important;margin:0!important;}
.mcg-phone-scene {position:relative;height:287px;align-self:center;min-width:0;pointer-events:none;}
.mcg-orbit {position:absolute;left:50%;top:46%;border:1px solid rgba(186,255,48,.09);border-radius:50%;transform:translate(-50%,-50%);}
.mcg-orbit-one {width:230px;height:230px;}.mcg-orbit-two {width:300px;height:300px;}
.mcg-phone {position:absolute;right:0;top:3px;width:150px;height:263px;border:2px solid #5c7168;border-radius:23px;background:#06100c;transform:rotate(7deg);box-shadow:10px 20px 30px rgba(0,0,0,.45),0 0 26px rgba(186,255,48,.08);padding:6px;}
.mcg-camera {width:39px;height:7px;position:absolute;top:7px;left:50%;transform:translateX(-50%);border-radius:8px;background:#020804;z-index:1;}
.mcg-phone-screen {height:100%;padding:19px 9px 9px;border-radius:16px;background:radial-gradient(circle at 100% 0,rgba(168,231,60,.18),transparent 65%),#0b2318;}
.mcg-phone-label {display:block;text-align:center;font-size:6px;letter-spacing:.13em;font-weight:650;color:#a0b3a6;margin-bottom:12px;}
.mcg-phone-brand {display:block;font-size:10px;letter-spacing:-.04em;font-weight:800;color:#fff;}
.mcg-phone-screen>strong {display:block;font-size:19px;line-height:1.1;letter-spacing:-.04em;font-weight:850;color:#baff30;}
.mcg-phone-card {background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);border-radius:9px;padding:10px 8px;margin-top:12px;}
.mcg-phone-card span {display:block;font-size:5.5px;letter-spacing:.13em;color:#dddfac;font-weight:700;margin-bottom:4px;}
.mcg-phone-card b {display:block;font-size:10px;line-height:1.3;color:#f6fbf6;font-weight:650;}
.mcg-phone-tiles {display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin:12px 0;}
.mcg-phone-tiles>span {display:block;border:1px solid rgba(186,255,48,.1);border-radius:6px;text-align:center;color:#c3ec4d;font-size:14px;line-height:1.5;}
.mcg-phone-tiles small {display:block;color:#bccbbb;font-size:5px;margin-bottom:4px;}
.mcg-phone-cta {display:flex;justify-content:space-between;align-items:center;background:#baff30;color:#102107;font-size:7px;line-height:1.4;font-weight:800;padding:8px;border-radius:10px;}
.mcg-phone-line {width:32px;height:2px;border-radius:2px;margin:13px auto 0;background:#8eaa96;}
.mcg-member-card {position:absolute;bottom:7px;left:-13px;width:148px;height:85px;padding:14px;transform:rotate(-10deg);border-radius:12px;background:linear-gradient(125deg,#143b24,#07190f);border:1px solid #8da840;box-shadow:0 14px 22px rgba(0,0,0,.45);}
.mcg-member-card span {display:block;color:#f6fbf6;font-size:8px;letter-spacing:-.01em;font-weight:750;}
.mcg-member-card strong {display:block;color:#c0f33f;font-size:14px;letter-spacing:-.03em;line-height:1.2;}
.mcg-member-card small {display:block;color:#baccba;font-size:6px;letter-spacing:.1em;margin-top:10px;}
.mcg-member-card svg {position:absolute;bottom:12px;right:12px;width:17px;height:17px;fill:none;stroke:#d3df64;stroke-width:1.3;}
.mcg-actions {display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px;}
.mcg-button {appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:16px!important;min-height:44px!important;padding:12px 17px!important;border-radius:12px!important;font-family:inherit!important;font-weight:730!important;font-size:13px!important;line-height:1.4!important;text-decoration:none!important;cursor:pointer!important;box-shadow:none!important;transition:background-color .15s ease,border-color .15s ease!important;}
.mcg-button-primary {color:#0a210e!important;background:linear-gradient(100deg,#c0ff37,#ffd64b)!important;border:1px solid transparent!important;}
.mcg-button-secondary {color:#edf7ee!important;border:1px solid #45604e!important;background:transparent!important;}
.mcg-button:hover {filter:brightness(1.07);}.mcg-button:disabled {opacity:.55;cursor:not-allowed!important;}
.mcg-button:focus-visible,.mcg-dialog-close:focus-visible {outline:3px solid #ffd64b!important;outline-offset:4px;}
.mcg-fineprint {font-size:10px!important;line-height:1.6!important;color:#aac0b0!important;margin:12px 0 16px!important;}
.mcg-journey {display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid rgba(192,217,172,.12);padding-top:15px;color:#bfcec3;font-size:9px;font-weight:700;letter-spacing:.13em;}
.mcg-journey i {font-size:13px;font-weight:400;font-style:normal;color:#baff30;}
.mcg-dialog {box-sizing:border-box;color:#edf6ef;background:#082219;border:1px solid #74963c;border-radius:24px;width:min(600px,calc(100vw - 30px));max-height:calc(100dvh - 60px);overflow-y:auto;padding:27px;margin:auto;box-shadow:0 28px 90px rgba(0,0,0,.5);}
.mcg-dialog:not([open]) {display:none!important;}
.mcg-dialog::backdrop {background:rgba(0,12,7,.78);backdrop-filter:blur(3px);}
.mcg-dialog-head {display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px;}
.mcg-dialog-close {display:grid;place-items:center;color:#fff;font:28px/1 sans-serif;background:rgba(255,255,255,.08);width:40px;height:40px;padding:0;border:1px solid #45604e;border-radius:12px;cursor:pointer;}
.mcg-dialog h2 {font-family:inherit!important;font-size:34px!important;line-height:1.1!important;letter-spacing:-.03em!important;color:#f6fbf6!important;margin:0 0 16px!important;font-weight:750!important;}
.mcg-dialog h2 span {color:#baff30!important;}
.mcg-dialog>p {font-size:14px;line-height:1.7;color:#cfdfd2;}
.mcg-steps {padding-left:22px;margin:22px 0;color:#baff30;}
.mcg-steps li {padding-left:5px;margin:0 0 17px;}
.mcg-steps strong {display:block;font-size:14px;color:#edf6ef;}
.mcg-steps span {display:block;font-size:13px;line-height:1.6;color:#bfcec3;margin-top:4px;}
.mcg-dialog .mcg-dialog-note {font-size:11px;margin:17px 0 0;color:#afc8b7;}
.mcg-dialog .mcg-destination-note {font-size:12px;padding:12px;border:1px solid #7a8054;border-radius:9px;}
.mcg-rewards [hidden],.mcg-dialog [hidden] {display:none!important;}
@media(min-width:1500px) {.mcg-rewards-body{grid-template-columns:minmax(0,1.4fr) 180px}.mcg-phone{width:157px;height:273px}.mcg-phone-scene{height:295px}.mcg-rewards{padding:26px}.mcg-benefit h3{font-size:13px!important}.mcg-benefit p{font-size:12px!important}}
@media(max-width:1080px) and (min-width:851px) {.mcg-layout{grid-template-columns:minmax(0,1fr) minmax(330px,.85fr)!important;gap:25px!important;padding-left:22px!important;padding-right:22px!important}.mcg-phone-scene{display:none}.mcg-rewards-body{grid-template-columns:1fr}.mcg-rewards h2{font-size:36px!important}.mcg-rewards{padding:22px}.mcg-layout .mcg-auth{padding:28px!important}.mcg-benefit p{font-size:12px!important}}
@media(max-width:850px) {.mcg-layout{grid-template-columns:minmax(0,1fr)!important;max-width:660px!important;gap:28px!important;padding:22px 20px calc(120px + env(safe-area-inset-bottom))!important}.mcg-layout .mcg-auth{order:0!important;border-radius:25px!important}.mcg-layout .mcg-brand{order:1!important}.mcg-layout .mcg-brand-heading{font-size:clamp(34px,8vw,57px)!important}.mcg-rewards{padding:23px}.mcg-rewards h2{font-size:34px!important}.mcg-layout .mcg-auth-heading{font-size:43px!important}.mcg-benefits{gap:17px 10px}.mcg-rewards-body{grid-template-columns:minmax(0,1.4fr) 150px}.mcg-trip-secondary{font-size:13px!important}}
@media(max-width:480px) {.mcg-layout{padding-left:14px!important;padding-right:14px!important}.mcg-layout .mcg-auth{padding:25px 22px!important}.mcg-rewards{padding:21px 18px}.mcg-rewards-body{grid-template-columns:minmax(0,1fr)}.mcg-phone-scene{display:none}.mcg-rewards h2{font-size:35px!important}.mcg-benefit p{font-size:12px!important}.mcg-benefit h3{font-size:12px!important}.mcg-one-account{font-size:10px}.mcg-panel-top{gap:8px}.mcg-kicker{font-size:10px}.mcg-button{padding:12px 14px!important;gap:9px!important}.mcg-actions{gap:8px}.mcg-dialog{padding:22px}.mcg-dialog h2{font-size:29px!important}}
@media(prefers-reduced-motion:reduce) {.mcg-button{transition:none!important}}
