/* MAD SPORTS PRO / HOTEL DETAIL JOURNEY V4 — scoped production UI
   Source styles are retained for the old renderer; this skin never styles unrelated pages. */
.mspj-enabled{--mspj4-green:#207d33;--mspj4-bright:#35aa4b;--mspj4-red:#ea1929;--mspj4-ink:#1b2634;--mspj4-muted:#69788b;--mspj4-line:#dce4e0;--mspj4-soft:#f1f9f3;--mspj4-paper:#fff;background:#f7f9f8!important;color:var(--mspj4-ink)!important;overflow:visible!important}
.mspj-enabled>.container,.mspj-enabled>.container.py-4{max-width:1450px!important;padding:clamp(8px,1.35vw,20px)!important;margin:0 auto!important;overflow:visible!important}
.mspj-enabled .mspj4-stage,.mspj-enabled .mspj4-stage *{box-sizing:border-box}
.mspj-enabled .mspj4-stage{display:flex;flex-direction:column;gap:18px;isolation:isolate;position:relative;min-height:350px;font-family:inherit;line-height:1.45}
.mspj-enabled .mspj4-stage [hidden]{display:none!important}
.mspj-enabled .mspj4-stage button,.mspj-enabled .mspj4-stage a{font:inherit;cursor:pointer}
.mspj-enabled .mspj4-stage button:disabled{opacity:.5;cursor:not-allowed}
.mspj-enabled .mspj4-stage button:focus-visible,.mspj-enabled .mspj4-stage a:focus-visible{outline:3px solid #53a971!important;outline-offset:3px}
.mspj-enabled.mspj-v4-boot #sportPageFlow,.mspj-enabled.mspj-v4-boot .mspv-scene,.mspj-enabled.mspj-v4-boot .mspv-keyfacts,.mspj-enabled.mspj-v4-boot #mspxDetailNav,.mspj-enabled.mspj-v4-boot #otherHotelsRegionSection,.mspj-enabled.mspj-v4-boot #interestedHotelsSection,.mspj-enabled.mspj-v4-boot #mspjBar,.mspj-enabled.mspj-v4-boot #mspjLocation{visibility:hidden!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important}
.mspj-enabled.mspj-v4-ready #sportPageFlow,.mspj-enabled.mspj-v4-ready .mspv-scene,.mspj-enabled.mspj-v4-ready .mspv-keyfacts,.mspj-enabled.mspj-v4-ready #mspxDetailNav,.mspj-enabled.mspj-v4-ready #mspjBar,.mspj-enabled.mspj-v4-ready #mspjLocation{display:none!important}
.mspj-enabled.mspj-v4-ready #otherHotelsRegionSection.mspj4-region-card,.mspj-enabled.mspj-v4-ready #interestedHotelsSection.mspj4-region-card{display:block!important}
.mspj-v4-ready~a.detail-quote-heart-btn,.mspj4-source-quote{display:none!important}
.mspj4-loading{min-height:360px;display:grid;align-content:center;justify-items:center;gap:18px;background:#fff;border:1px solid var(--mspj4-line);font-size:14px;letter-spacing:.13em;font-weight:900;color:var(--mspj4-ink)}
.mspj4-spinner{width:40px;height:40px;border:3px solid #e8f0eb;border-top-color:var(--mspj4-red);border-radius:50%;animation:mspj4spin .9s linear infinite}
@keyframes mspj4spin{to{transform:rotate(360deg)}}
/* Sticky command / navigation. */
.mspj-enabled .mspj4-nav{position:sticky;top:var(--mspj4-nav-offset,74px);z-index:900;display:grid;grid-template-columns:minmax(185px,1fr) minmax(360px,1.65fr) auto;align-items:center;min-height:78px;padding:11px 13px;gap:12px;background:rgba(255,255,255,.985);border:1px solid #dde3e8;border-radius:3px;box-shadow:0 9px 24px #1b33421c;backdrop-filter:blur(12px)}
.mspj-enabled .mspj4-brand{display:flex;align-items:center;gap:11px;min-width:0}
.mspj-enabled .mspj4-brand-symbol{height:46px;width:46px;flex:0 0 46px;display:grid;place-items:center;background:var(--mspj4-green);border-radius:3px;color:#fff;font-size:22px}
.mspj-enabled .mspj4-brand>div{min-width:0;display:grid;line-height:1.22}
.mspj-enabled .mspj4-brand small{font-size:10px;letter-spacing:.055em;font-weight:850;text-transform:uppercase;color:var(--mspj4-green);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.mspj-enabled .mspj4-brand strong{font-size:15px;font-weight:850;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.mspj-enabled .mspj4-tabs{display:flex;align-items:center;justify-content:center;gap:3px;min-width:0}
.mspj-enabled .mspj4-tab{border:0;background:transparent;color:#718092;font-size:11px!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.025em;padding:14px 10px;border-radius:3px;white-space:nowrap;transition:background .2s,color .2s}
.mspj-enabled .mspj4-tab:hover{color:#202f3b;background:#f0f4f6}
.mspj-enabled .mspj4-tab.is-active{background:#f3f5f7;color:#1f2e3a;box-shadow:inset 0 -3px var(--mspj4-green)}
.mspj-enabled .mspj4-actions{display:flex;align-items:center;gap:6px;justify-content:end}
.mspj-enabled .mspj4-icon-button{width:46px;height:46px;border:1px solid #dbe1e6;border-radius:3px;background:#fff;color:#526170;display:grid;place-items:center;font-size:18px!important}
.mspj-enabled .mspj4-icon-button:hover,.mspj-enabled .mspj4-icon-button.mspj4-copied{border-color:var(--mspj4-green);color:var(--mspj4-green)}
.mspj-enabled .mspj4-quote{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;min-height:46px;white-space:nowrap;color:#fff!important;background:var(--mspj4-red)!important;border:1px solid var(--mspj4-red)!important;border-radius:3px!important;text-transform:uppercase;font-size:12px!important;font-weight:900!important;box-shadow:0 7px 18px #ef273127;transition:background .2s,transform .2s}
.mspj-enabled .mspj4-quote:hover{background:#ca1020!important;transform:translateY(-1px)}
/* Shared blocks */
.mspj-enabled .mspj4-stage>section,.mspj-enabled .mspj4-stage>.mspj4-region-row,.mspj-enabled .mspj4-more-sports{scroll-margin-top:160px}
.mspj-enabled .mspj4-card,.mspj-enabled .mspj4-overview,.mspj-enabled .mspj4-hotel,.mspj-enabled .mspj4-training{background:#fff;border:1px solid var(--mspj4-line);border-radius:3px;box-shadow:0 3px 12px #1f423908;overflow:hidden}
.mspj-enabled .mspj4-hotel,.mspj-enabled .mspj4-training{display:flex;flex-direction:column;gap:14px;padding:18px}
.mspj-enabled .mspj4-section-head{display:flex;align-items:center;gap:14px;padding:13px 15px;background:#f3fbf5;border-bottom:1px solid #dce8df;min-height:66px}
.mspj-enabled .mspj4-head-icon{background:var(--mspj4-green);color:white;width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:3px;font-size:20px}
.mspj-enabled .mspj4-head-copy{min-width:0;flex:1}.mspj-enabled .mspj4-head-copy h2{font-size:17px!important;font-weight:850!important;letter-spacing:-.01em;text-transform:uppercase;color:#24303b;margin:0 0 4px!important;line-height:1.25}.mspj-enabled .mspj4-head-copy p{font-size:12px;margin:0;color:#82909c}.mspj-enabled .mspj4-head-count{color:#678377;border:1px solid #cae5ce;background:#fff;padding:5px 8px;border-radius:3px;font-size:12px;font-weight:800;white-space:nowrap}
.mspj-enabled .mspj4-overview{padding:18px}
.mspj-enabled .mspj4-overview-header{display:flex;justify-content:space-between;gap:18px;align-items:start;padding:1px 0 14px}
.mspj-enabled .mspj4-eyebrow{font-size:12px;font-weight:850;color:#627282;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;gap:9px}
.mspj-enabled .mspj4-eyebrow>span{display:inline-block;width:23px;height:3px;background:var(--mspj4-bright)}
.mspj-enabled .mspj4-overview-header h1{font-size:clamp(23px,3vw,38px)!important;font-weight:850!important;line-height:1.15!important;letter-spacing:-.028em;color:#151d29;text-transform:uppercase;margin:8px 0!important}
.mspj-enabled .mspj4-overview-meta{display:flex;flex-wrap:wrap;align-items:center;gap:13px;font-size:14px;color:var(--mspj4-muted)}
.mspj-enabled .mspj4-overview-meta>span{display:flex;align-items:center;gap:7px}
.mspj-enabled .mspj4-overview-meta .bi{color:var(--mspj4-red)}
.mspj-enabled .mspj4-stars{color:#faa900;font-size:17px;letter-spacing:1px;white-space:nowrap}
.mspj-enabled .mspj4-verified{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#278c46;display:flex;align-items:center;gap:5px}
/* Real API gallery — one primary image and up to four secondary images */
.mspj-enabled .mspj4-hero-gallery{height:clamp(310px,35vw,510px);display:grid;grid-template-columns:minmax(0,1.9fr) minmax(230px,.95fr);gap:6px}
.mspj-enabled .mspj4-gallery-major,.mspj-enabled .mspj4-primary-frame{min-width:0;min-height:0;position:relative;height:100%;overflow:hidden;border-radius:3px;background:#dfe9e2}
.mspj-enabled .mspj4-primary-img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}
.mspj-enabled .mspj4-gallery-prev,.mspj-enabled .mspj4-gallery-next{position:absolute;top:50%;transform:translateY(-50%);border:1px solid #ffffff6e;background:#14202cd6;color:white;width:39px;height:45px;display:grid;place-items:center;border-radius:3px;z-index:1}
.mspj-enabled .mspj4-gallery-prev{left:14px}.mspj-enabled .mspj4-gallery-next{right:14px}
.mspj-enabled .mspj4-gallery-prev:hover,.mspj-enabled .mspj4-gallery-next:hover{background:#e91929}
.mspj-enabled .mspj4-photo-count{position:absolute;bottom:13px;left:14px;padding:6px 10px;border-radius:3px;background:#172430d4;color:white;font-size:11px;font-weight:800}
.mspj-enabled .mspj4-gallery-sides{min-width:0;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:6px}
.mspj-enabled .mspj4-side-photo{position:relative;display:block;width:100%;min-width:0;min-height:0;overflow:hidden;border:0;padding:0;background:#d8e8dd;border-radius:3px}
.mspj-enabled .mspj4-side-photo>img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .25s ease}
.mspj-enabled .mspj4-side-photo:hover>img{transform:scale(1.045)}
.mspj-enabled .mspj4-single-photo{grid-template-columns:1fr}
.mspj-enabled .mspj4-no-images .mspj4-primary-frame{display:grid;place-items:center;background:linear-gradient(135deg,#eef3f0,#e0ebe5)}
.mspj-enabled .mspj4-quickstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:10px;margin-top:12px}
.mspj-enabled .mspj4-quickstat{display:flex;align-items:center;gap:11px;border:1px solid #dce9e0;background:#f5faf7;padding:11px 14px;border-radius:3px;min-height:64px}
.mspj-enabled .mspj4-quickstat>i{color:#25833b;font-size:21px}
.mspj-enabled .mspj4-quickstat strong{font-weight:850;font-size:15px}
.mspj-enabled .mspj4-quickstat small{font-size:11px;color:#73828b}
/* Hotel summary + editorial + inventory */
.mspj-enabled .mspj4-hotel-summary{display:grid;grid-template-columns:260px minmax(0,1fr) auto;gap:20px;padding:16px;border:1px solid var(--mspj4-line);border-radius:3px;align-items:center}
.mspj-enabled .mspj4-hotel-thumb{height:192px;min-height:120px;background:#edf5f0;border-radius:3px;overflow:hidden;display:grid;place-items:center;color:#38834d;font-size:40px}
.mspj-enabled .mspj4-hotel-thumb img{height:100%;width:100%;object-fit:cover}
.mspj-enabled .mspj4-mini-kicker{color:var(--mspj4-green);text-transform:uppercase;font-size:11px;font-weight:850;letter-spacing:.11em}
.mspj-enabled .mspj4-hotel-heading h2{font-size:clamp(21px,2.4vw,32px)!important;font-weight:850!important;color:#192331;margin:7px 0!important;line-height:1.2}
.mspj-enabled .mspj4-hotel-heading>p{color:#7c8996;font-size:13px;display:flex;align-items:center;gap:5px;margin:0 0 14px!important}
.mspj-enabled .mspj4-hotel-heading>p .bi{color:var(--mspj4-red)}
.mspj-enabled .mspj4-pills{display:flex;gap:6px;flex-wrap:wrap}
.mspj-enabled .mspj4-pills span{border:1px solid #dae1e9;background:#f8fafb;border-radius:3px;padding:7px 9px;display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#526575}
.mspj-enabled .mspj4-pills .bi{color:var(--mspj4-green)}
.mspj-enabled .mspj4-hotel-actions{display:flex;flex-direction:column;align-items:end;justify-content:space-between;align-self:stretch;gap:10px}
.mspj-enabled .mspj4-description{border:1px solid var(--mspj4-line);border-radius:3px;overflow:hidden}
.mspj-enabled .mspj4-accordion-button{border:0;background:#f4faf6;width:100%;display:flex;align-items:center;gap:14px;text-align:left;padding:15px 18px;min-height:66px;color:#22303c}
.mspj-enabled .mspj4-accordion-button>i:first-child{width:39px;height:39px;display:grid;place-items:center;background:var(--mspj4-green);color:#fff;border-radius:3px;font-size:18px}
.mspj-enabled .mspj4-accordion-button span{flex:1}.mspj-enabled .mspj4-accordion-button strong{font-weight:850;font-size:13px;text-transform:uppercase;display:block}.mspj-enabled .mspj4-accordion-button small{color:#7d8a98;font-size:12px;display:block;margin-top:3px}
.mspj-enabled .mspj4-accordion-button[aria-expanded=true]>i:last-child{transform:rotate(180deg)}
.mspj-enabled .mspj4-accordion-body{background:#fff;padding:24px 28px;border-top:2px solid #39a74a;color:#495b70;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.mspj-enabled .mspj4-accordion-body h1,.mspj-enabled .mspj4-accordion-body h2,.mspj-enabled .mspj4-accordion-body h3{color:#172132;line-height:1.25;letter-spacing:-.02em}
.mspj-enabled .mspj4-room-overview{border:1px solid #dce6df;border-radius:3px;overflow:hidden}
.mspj-enabled .mspj4-capacity{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;padding:15px;background:#fff}
.mspj-enabled .mspj4-capacity>div{background:#f3f8f5;border:1px solid #e0eae3;border-radius:3px;padding:16px;display:grid;gap:5px}
.mspj-enabled .mspj4-capacity strong{font-size:24px;font-weight:900;color:#1f6232}
.mspj-enabled .mspj4-capacity span{font-size:12px;color:#718178}
.mspj-enabled .mspj4-room-types{padding:5px 0}.mspj-enabled .mspj4-room-types h3,.mspj-enabled .mspj4-matrix-body h3{font-size:13px!important;text-transform:uppercase;letter-spacing:.055em;color:#485b68;font-weight:850;margin:12px 0!important}
.mspj-enabled .mspj4-unit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.mspj-enabled .mspj4-unit{padding:13px;border:1px solid #e0e7e3;background:#f9fbfa;border-radius:3px;display:flex;flex-direction:column;gap:6px}
.mspj-enabled .mspj4-unit strong{font-size:13px}.mspj-enabled .mspj4-unit span{font-size:11px;color:#218a42}.mspj-enabled .mspj4-unit small{font-size:11px;color:#7e8b97}
.mspj-enabled .mspj4-matrix{overflow:hidden}
.mspj-enabled .mspj4-matrix-body{padding:18px}
.mspj-enabled .mspj4-features{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.mspj-enabled .mspj4-feature{display:flex;align-items:center;gap:8px;min-height:46px;min-width:0;border-radius:3px;padding:8px 10px;font-size:12px;font-weight:500;color:#52636d;line-height:1.3}
.mspj-enabled .mspj4-feature>span:nth-child(2){min-width:0;overflow-wrap:anywhere;flex:1}
.mspj-enabled .mspj4-feature.is-available{background:#edf8ef;border:1px solid #b4dbb9}
.mspj-enabled .mspj4-feature.is-paid{background:#fff9e8;border:1px solid #eadba8}
.mspj-enabled .mspj4-feature.is-missing{background:#fff6f6;border:1px solid #f3c5cc;color:#9b6068}
.mspj-enabled .mspj4-feature-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:3px;flex:0 0 24px;background:white;font-size:12px;color:var(--mspj4-green)}
.mspj-enabled .is-paid .mspj4-feature-icon{color:#b98718}.mspj-enabled .is-missing .mspj4-feature-icon{color:#e73e51}
.mspj-enabled .mspj4-feature small{font-size:9px;color:#a67c19;white-space:nowrap}
.mspj-enabled .mspj4-feature.is-collapsed:not(.is-showing){display:none}
.mspj-enabled .mspj4-more{display:inline-flex;gap:9px;align-items:center;justify-content:center;padding:9px 12px;border:1px solid #cbded2;background:#fff;color:#265b36;border-radius:3px;font-size:12px!important;font-weight:800!important;margin:13px 0 0}
.mspj-enabled .mspj4-more:hover{background:#eaf6ed}
.mspj-enabled .mspj4-gallery-footer{border:1px solid var(--mspj4-line);border-radius:3px;overflow:hidden}
.mspj-enabled .mspj4-photostrip{display:flex;overflow-x:auto;gap:7px;padding:11px;scroll-snap-type:x mandatory}
.mspj-enabled .mspj4-photostrip button{flex:0 0 180px;height:118px;border:0;border-radius:3px;overflow:hidden;padding:0;scroll-snap-align:start}
.mspj-enabled .mspj4-photostrip img{height:100%;width:100%;object-fit:cover}
/* Training information */
.mspj-enabled .mspj4-training>.mspj4-section-head,.mspj-enabled .mspj4-hotel>.mspj4-section-head{border:1px solid #d6e8d9;border-top:3px solid #34a34b;border-radius:3px}
.mspj-enabled .mspj4-equipment-inner{padding:14px}
.mspj-enabled .mspj4-cta{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px 17px;background:linear-gradient(95deg,#fff,#fff4f4);border:1px solid #f7d7dc;border-left:4px solid var(--mspj4-red);border-radius:3px}
.mspj-enabled .mspj4-cta>div{display:flex;gap:14px;align-items:center;min-width:0}
.mspj-enabled .mspj4-cta>div>i{font-size:23px;color:var(--mspj4-red)}
.mspj-enabled .mspj4-cta h3{font-size:15px!important;font-weight:850;color:#1e2d3c;text-transform:uppercase;margin:0 0 3px!important}
.mspj-enabled .mspj4-cta p{font-size:12px;color:#7e8b99;margin:0}
.mspj-enabled .mspj4-fast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:13px}
.mspj-enabled .mspj4-fast-grid>div{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;min-height:112px;gap:11px;background:#f3faf5;border:1px solid #d4e9d9;border-radius:3px;padding:13px}
.mspj-enabled .mspj4-fast-grid>div i{color:#218638;font-size:24px}
.mspj-enabled .mspj4-fast-grid strong{font-size:12px!important;font-weight:700!important;color:#354b3b}
.mspj-enabled .mspj4-profile{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:13px}
.mspj-enabled .mspj4-profile-left{border-radius:3px;padding:27px 31px;min-height:205px;background:linear-gradient(105deg,#121924,#1f2632 60%,#3a202b);color:white;display:flex;flex-direction:column;justify-content:center}
.mspj-enabled .mspj4-profile-left .mspj4-mini-kicker{color:#ef7181}
.mspj-enabled .mspj4-profile-left h2{font-size:clamp(22px,2.8vw,33px)!important;line-height:1.14!important;letter-spacing:-.035em;margin:12px 0!important;color:white!important;font-weight:900!important}
.mspj-enabled .mspj4-profile-left p{font-size:13px!important;color:#d5dce7;line-height:1.7;margin:0;max-width:850px}
.mspj-enabled .mspj4-profile-stats{display:flex;gap:30px;margin-top:19px;padding-top:13px;border-top:1px solid #ffffff36}
.mspj-enabled .mspj4-profile-stats>div{display:flex;align-items:baseline;gap:9px}.mspj-enabled .mspj4-profile-stats strong{font-size:23px;color:white}.mspj-enabled .mspj4-profile-stats small{font-size:12px;color:#b4bac7}
.mspj-enabled .mspj4-profile-right{border:1px solid #cae3d1;border-radius:3px;background:#f7fbf8;overflow:hidden}
.mspj-enabled .mspj4-profile-right h3{background:#21752b;color:white!important;margin:0!important;font-size:16px!important;text-transform:uppercase;font-weight:850!important;padding:17px 18px}
.mspj-enabled .mspj4-profile-right>div{display:grid;gap:7px;padding:13px}
.mspj-enabled .mspj4-profile-right>div>div{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #cfdfd1;border-radius:3px;font-size:12px}
.mspj-enabled .mspj4-profile-right b{color:#218334}.mspj-enabled .mspj4-profile-right i{color:#238f44;font-size:18px}.mspj-enabled .mspj4-profile-right span{flex:1}
.mspj-enabled .mspj4-logistics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mspj-enabled .mspj4-logistics>.mspj4-card{overflow:hidden}.mspj-enabled .mspj4-logistics #sportTransitLogistics,.mspj-enabled .mspj4-logistics #sportTrainingSlots{padding:14px}
.mspj-enabled .mspj4-detail-fields{overflow:hidden}
.mspj-enabled .mspj4-fields-body{padding:15px;display:grid;gap:13px}
.mspj-enabled .mspj4-field-card{display:grid;grid-template-columns:minmax(205px,33%) minmax(0,1fr);min-height:220px;border:1px solid #e0e7e4;background:#fff;border-radius:3px;overflow:hidden;box-shadow:0 2px 8px #14291a0c}
.mspj-enabled .mspj4-field-visual{position:relative;min-height:200px;padding:22px 19px;background:linear-gradient(138deg,#172b2e,#09271f);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.mspj-enabled .mspj4-field-visual strong{font-size:27px!important;color:#fff!important;font-weight:850;line-height:1.2;position:relative;z-index:2}
.mspj-enabled .mspj4-field-counter{font-size:11px;letter-spacing:.14em;color:#bfd3c8;font-weight:800}
.mspj-enabled .mspj4-field-diagram{width:48%;min-width:130px;aspect-ratio:1.7;position:absolute;right:16px;bottom:20px;border:1px solid #b6d9ce;border-radius:3px;background:repeating-linear-gradient(90deg,#184f3c 0 15px,#1c5944 15px 30px);opacity:.94}
.mspj-enabled .mspj4-field-diagram::before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:1px solid #b5d9c7}
.mspj-enabled .mspj4-field-diagram::after{content:"";position:absolute;width:28px;height:28px;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid #d0e4dc;border-radius:50%}
.mspj-enabled .mspj4-field-diagram span:nth-child(1),.mspj-enabled .mspj4-field-diagram span:nth-child(2){position:absolute;width:15%;height:47%;top:26%;border:1px solid #d3e6d9}
.mspj-enabled .mspj4-field-diagram span:nth-child(1){left:0;border-left:0}.mspj-enabled .mspj4-field-diagram span:nth-child(2){right:0;border-right:0}
.mspj-enabled .mspj4-field-diagram--generic{background:repeating-linear-gradient(90deg,#13423b 0 14px,#194941 14px 28px)}
.mspj-enabled .mspj4-field-text{padding:24px 27px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.mspj-enabled .mspj4-field-text h3{font-size:18px!important;font-weight:800!important;margin:6px 0 12px!important;color:#1b2834!important}
.mspj-enabled .mspj4-field-dimension{font-size:clamp(29px,4vw,48px);font-weight:900!important;line-height:1.15;letter-spacing:-.04em;color:#17212e}
.mspj-enabled .mspj4-field-dimension>span{font-size:.7em;color:#8b96a2;font-weight:400}.mspj-enabled .mspj4-field-dimension small{font-size:16px;color:#81919d;font-weight:500;letter-spacing:0}
.mspj-enabled .mspj4-field-text>p{font-size:13px;color:#60717d;padding:13px 0;border-bottom:1px solid #e7ecea;margin:0}
.mspj-enabled .mspj4-field-caption{font-size:11px;color:#8a98a0;padding-top:9px;display:flex;align-items:center;gap:7px}
.mspj-enabled .mspj4-original-pitches #sportPitches{padding:0}
.mspj-enabled .mspj4-original-pitches #sportPitches>.pitch-summary-row{border-radius:3px!important;margin:0 0 12px!important}
/* Location using registered Google Maps embed; no artificial distances */
.mspj-enabled .mspj4-location{overflow:hidden}
.mspj-enabled .mspj4-location-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px;padding:12px}
.mspj-enabled .mspj4-location-metrics>div{display:grid;grid-template-columns:36px 1fr;align-content:center;gap:1px 11px;padding:13px;background:#eff8f2;border:1px solid #d4e5d8;border-radius:3px}
.mspj-enabled .mspj4-location-metrics>div>i{grid-row:1/4;align-self:center;display:grid;place-items:center;color:white;background:var(--mspj4-red);width:36px;height:36px;border-radius:3px;font-size:20px}
.mspj-enabled .mspj4-location-metrics span,.mspj-enabled .mspj4-location-metrics small{font-size:10px;color:#667981;text-transform:uppercase}
.mspj-enabled .mspj4-location-metrics strong{font-size:20px;font-weight:850}
.mspj-enabled .mspj4-map-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,.85fr);min-height:350px;padding:0 12px 12px;gap:12px}
.mspj-enabled .mspj4-map-main{min-height:350px;background:#eef5f0;position:relative}
.mspj-enabled .mspj4-map-main iframe{display:block;border:0;height:100%;min-height:350px;width:100%;border-radius:3px}
.mspj-enabled .mspj4-map-sidebar{border:1px solid #e0e8e3;padding:15px;background:#fbfdfb;border-radius:3px}
.mspj-enabled .mspj4-map-sidebar h3{font-size:16px!important;font-weight:850!important;text-transform:uppercase;margin:0 0 5px!important}
.mspj-enabled .mspj4-map-sidebar p{font-size:11px;color:#71818c;margin:0 0 13px}
.mspj-enabled .mspj4-map-points{display:grid;gap:9px}
.mspj-enabled .mspj4-map-choice{display:flex;align-items:center;gap:11px;text-align:left;width:100%;background:#f0f9f1;border:1px solid #d5e7d8;border-radius:3px;padding:11px;color:#384f40;font-size:12px!important}
.mspj-enabled .mspj4-map-choice span{flex:1}.mspj-enabled .mspj4-map-choice>i:first-child{color:#258d3b;font-size:20px}.mspj-enabled .mspj4-map-choice.is-active{border-color:#3bb65b;background:#e7f5eb}
.mspj-enabled .mspj4-map-airport{display:flex;gap:10px;align-items:center;border:1px solid #f1d5d9;border-radius:3px;background:#fff6f7;padding:13px;margin-top:11px;font-size:12px}
.mspj-enabled .mspj4-map-airport>i{color:var(--mspj4-red);font-size:21px}
.mspj-enabled .mspj4-map-toggle{display:flex;margin:0 12px 12px auto;border:0;background:#eaf6ed;color:#267c36;gap:8px;align-items:center;padding:9px 12px;border-radius:3px;font-size:11px!important;font-weight:850!important;text-transform:uppercase}
.mspj-enabled .mspj4-no-map{min-height:350px;display:grid;align-content:center;justify-items:center;color:#6b8271;font-size:13px}.mspj-enabled .mspj4-no-map i{font-size:33px}
.mspj-enabled .mspj4-distance-unavailable .mspj4-no-map{min-height:190px}
/* Original database-powered nearby and recently viewed carousels */
.mspj-enabled .mspj4-region-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.mspj-enabled .mspj4-region-row .region-hotels-section{padding:0!important;margin:0!important;min-width:0;border:1px solid #d7e7db!important;background:#fff!important;border-radius:3px!important;box-shadow:none!important;overflow:hidden}
.mspj-enabled .mspj4-region-row .region-hotels-heading{display:flex!important;align-items:center;padding:15px 17px!important;background:#f5fbf6!important;border-bottom:1px solid #d7e7db;gap:10px}
.mspj-enabled .mspj4-region-row .region-hotels-heading h2{font-size:16px!important;font-weight:850!important;margin:0 0 3px!important;color:#25313b}
.mspj-enabled .mspj4-region-row .region-hotels-heading p{font-size:11px!important;color:#8492a0!important;margin:0!important}
.mspj-enabled .mspj4-region-row .region-hotels-controls{margin-left:auto}
.mspj-enabled .mspj4-region-row .region-hotels-track{display:flex!important;gap:9px!important;padding:12px!important;overflow-x:auto!important;scroll-snap-type:x mandatory}
.mspj-enabled .mspj4-region-row .region-hotel-slide{flex:0 0 clamp(175px,42%,280px)!important;min-width:0!important;scroll-snap-align:start}
.mspj-enabled .mspj4-region-row .region-hotel-card{height:100%;border-radius:3px!important;box-shadow:none!important;border:1px solid #e0e8e3!important;background:white!important}
.mspj-enabled .mspj4-region-row .region-hotel-card .card-img{width:100%;height:160px!important;object-fit:cover;border-radius:2px!important}
.mspj-enabled .mspj4-region-row .region-hotel-card .h-title{font-size:13px!important;line-height:1.4;font-weight:800}
.mspj-enabled .mspj4-region-row .region-hotel-card .card-body{padding:10px!important}
.mspj-enabled .mspj4-more-sports{border:1px solid var(--mspj4-line);background:#fff;padding:20px;border-radius:3px}
.mspj-enabled .mspj4-empty{padding:16px;margin:0;font-size:12px;color:#8a98a5}
/* Fullscreen gallery (no native alert/confirm) */
.mspj4-lightbox{display:none;position:fixed;inset:0;z-index:999999;background:#0c141af5;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center;justify-items:center;padding:55px 20px 20px}
.mspj4-lightbox.is-open{display:grid}.mspj4-lightbox figure{width:100%;height:100%;max-height:85vh;margin:0;display:grid;align-content:center;justify-items:center;gap:12px}
.mspj4-lightbox figure img{max-height:76vh;max-width:100%;object-fit:contain}.mspj4-lightbox figcaption{color:#e4eced;font-size:12px;text-align:center}
.mspj4-lightbox button{width:42px;height:42px;border:1px solid #ffffff5e;border-radius:3px;background:#1b2735;color:white;font-size:19px}
.mspj4-lightbox-close{position:absolute;top:20px;right:24px}.mspj4-lightbox-left{grid-column:1;grid-row:1}.mspj4-lightbox-right{grid-column:3;grid-row:1}
body.mspj4-lightbox-open{overflow:hidden!important}
@media (max-width:1180px){
  .mspj-enabled .mspj4-nav{grid-template-columns:minmax(140px,1fr) auto;gap:6px}
  .mspj-enabled .mspj4-tabs{grid-column:1/3;grid-row:2;justify-content:center;border-top:1px solid #f0f2f4}
  .mspj-enabled .mspj4-actions{grid-column:2;grid-row:1}
  .mspj-enabled .mspj4-features{grid-template-columns:repeat(4,minmax(0,1fr))}
  .mspj-enabled .mspj4-hotel-summary{grid-template-columns:205px 1fr auto;gap:13px}
}
@media (max-width:790px){
 .mspj-enabled>.container,.mspj-enabled>.container.py-4{padding:8px!important}
 .mspj-enabled .mspj4-stage{gap:12px}
 .mspj-enabled .mspj4-nav{top:var(--mspj4-nav-offset,58px);padding:8px;min-height:0}
 .mspj-enabled .mspj4-brand-symbol{width:36px;height:36px;flex-basis:36px;font-size:18px}
 .mspj-enabled .mspj4-brand strong{font-size:12px}.mspj-enabled .mspj4-brand small{font-size:9px}
 .mspj-enabled .mspj4-icon-button{width:36px;height:36px;font-size:15px!important}
 .mspj-enabled .mspj4-nav .mspj4-quote{padding:7px 9px;min-height:36px;font-size:10px!important}
 .mspj-enabled .mspj4-tabs{overflow-x:auto;justify-content:start;scrollbar-width:none;gap:1px}
 .mspj-enabled .mspj4-tab{font-size:10px!important;flex-shrink:0;padding:10px}
 .mspj-enabled .mspj4-hero-gallery{height:370px;grid-template-columns:minmax(0,1.65fr) minmax(115px,.7fr)}
 .mspj-enabled .mspj4-overview-header h1{font-size:23px!important}
 .mspj-enabled .mspj4-hotel,.mspj-enabled .mspj4-training,.mspj-enabled .mspj4-overview{padding:10px}
 .mspj-enabled .mspj4-hotel-summary{grid-template-columns:145px 1fr;gap:11px;padding:10px}
 .mspj-enabled .mspj4-hotel-thumb{height:145px}
 .mspj-enabled .mspj4-hotel-actions{grid-column:1/-1;flex-direction:row;align-self:auto;align-items:center}
 .mspj-enabled .mspj4-features{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mspj-enabled .mspj4-unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mspj-enabled .mspj4-fast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mspj-enabled .mspj4-profile{grid-template-columns:1fr}
 .mspj-enabled .mspj4-map-grid{grid-template-columns:1fr}
 .mspj-enabled .mspj4-map-sidebar{padding:12px}
 .mspj-enabled .mspj4-region-row{grid-template-columns:1fr}
 .mspj-enabled .mspj4-region-row .region-hotel-slide{flex-basis:205px!important}
 .mspj-enabled .mspj4-logistics{grid-template-columns:1fr}
}
@media (max-width:490px){
 .mspj-enabled .mspj4-nav{grid-template-columns:minmax(0,1fr) auto;}
 .mspj-enabled .mspj4-brand{gap:7px}.mspj-enabled .mspj4-brand small{max-width:130px}.mspj-enabled .mspj4-brand strong{max-width:148px}
 .mspj-enabled .mspj4-actions{gap:3px}.mspj-enabled .mspj4-icon-button{width:31px;height:34px}
 .mspj-enabled .mspj4-nav .mspj4-quote{font-size:9px!important;padding:6px 7px}
 .mspj-enabled .mspj4-overview{padding:8px}.mspj-enabled .mspj4-overview-header{padding:4px 4px 10px}
 .mspj-enabled .mspj4-overview-header h1{font-size:20px!important}
 .mspj-enabled .mspj4-verified{display:none}
 .mspj-enabled .mspj4-hero-gallery{height:300px;grid-template-columns:1fr;grid-template-rows:1fr 78px}
 .mspj-enabled .mspj4-gallery-sides{display:flex;gap:5px;overflow-x:auto}
 .mspj-enabled .mspj4-side-photo{min-width:95px;flex:0 0 24%}
 .mspj-enabled .mspj4-hotel-summary{grid-template-columns:112px 1fr}
 .mspj-enabled .mspj4-hotel-thumb{height:125px}
 .mspj-enabled .mspj4-hotel-heading h2{font-size:19px!important}
 .mspj-enabled .mspj4-pills span{font-size:10px;padding:4px 6px}
 .mspj-enabled .mspj4-section-head{padding:11px 9px;gap:9px;min-height:58px}
 .mspj-enabled .mspj4-head-icon{width:38px;height:38px;flex-basis:38px;font-size:18px}
 .mspj-enabled .mspj4-head-copy h2{font-size:13px!important}.mspj-enabled .mspj4-head-copy p{font-size:10px}
 .mspj-enabled .mspj4-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
 .mspj-enabled .mspj4-feature{font-size:10px;min-height:45px;padding:6px}
 .mspj-enabled .mspj4-feature-icon{height:19px;width:19px;flex-basis:19px}
 .mspj-enabled .mspj4-matrix-body{padding:10px}
 .mspj-enabled .mspj4-unit-grid{grid-template-columns:1fr}
 .mspj-enabled .mspj4-field-card{grid-template-columns:1fr}
 .mspj-enabled .mspj4-field-visual{min-height:155px}
 .mspj-enabled .mspj4-field-diagram{width:42%;min-width:115px}
 .mspj-enabled .mspj4-field-text{padding:16px}
 .mspj-enabled .mspj4-cta{align-items:start;flex-wrap:wrap}
 .mspj-enabled .mspj4-cta>.mspj4-quote{margin-left:auto}
 .mspj-enabled .mspj4-profile-left{padding:23px}
 .mspj-enabled .mspj4-map-main,.mspj-enabled .mspj4-map-main iframe{min-height:290px}
 .mspj4-lightbox{grid-template-columns:45px minmax(0,1fr) 45px;padding:55px 5px 10px}
 .mspj4-lightbox button{width:35px;height:40px}
}
@media print{
 .mspj-enabled .mspj4-nav{position:relative;top:0;box-shadow:none}.mspj-enabled .mspj4-actions,.mspj-enabled .mspj4-quote,.mspj-enabled .mspj4-map-toggle,.mspj-enabled .mspj4-gallery-prev,.mspj-enabled .mspj4-gallery-next{display:none!important}
 .mspj-enabled .mspj4-stage{gap:10px}.mspj-enabled .mspj4-card,.mspj-enabled .mspj4-field-card{break-inside:avoid;box-shadow:none!important}
}
@media (prefers-reduced-motion:reduce){.mspj-enabled .mspj4-stage *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Hotel room choices and real CMS-sourced highlights */
.mspj-enabled .mspj4-hotel-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:10px 12px;border:1px solid #cedfd3;border-radius:3px;color:#215c34;background:white;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}
.mspj-enabled .mspj4-hotel-link:hover{color:white;background:#267d39;border-color:#267d39}
.mspj-enabled .mspj4-hotel-highlights{overflow:hidden}
.mspj-enabled .mspj4-highlight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:13px}
.mspj-enabled .mspj4-highlight-grid>div{display:flex;align-items:center;gap:11px;background:#f0faf2;border:1px solid #d0e7d4;padding:13px;border-radius:3px;min-height:70px}
.mspj-enabled .mspj4-highlight-grid i{font-size:18px;color:white;background:#24823b;width:33px;height:33px;display:grid;place-items:center;border-radius:3px;flex:0 0 33px}
.mspj-enabled .mspj4-highlight-grid strong{font-size:12px;font-weight:750;color:#354640;line-height:1.4}
@media(max-width:790px){.mspj-enabled .mspj4-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:490px){.mspj-enabled .mspj4-hotel-link{min-height:38px;font-size:11px;padding:9px}.mspj-enabled .mspj4-highlight-grid>div{padding:8px;gap:7px}.mspj-enabled .mspj4-highlight-grid strong{font-size:10px}}

/* Preserve source-rendered technical details and localized CMS content */
.mspj-enabled .mspj4-technical-details{padding:11px 14px}
.mspj-enabled .mspj4-technical-details summary{display:flex;align-items:center;justify-content:space-between;padding:12px 13px;background:#f4f9f5;border:1px solid #d8e9dc;border-radius:3px;font-size:12px;font-weight:800;color:#376443;cursor:pointer;list-style:none}
.mspj-enabled .mspj4-technical-details summary::-webkit-details-marker{display:none}
.mspj-enabled .mspj4-technical-details[open] summary i{transform:rotate(180deg)}
.mspj-enabled .mspj4-technical-content{padding:10px 0}
.mspj-enabled .mspj4-technical-content #sportPitches .pitch-summary-row{border-radius:3px!important;max-width:100%!important}
.mspj-enabled .mspj4-sport-notes .mspj4-notes-copy{padding:22px 24px;color:#4d6070;line-height:1.75;font-size:14px;overflow-wrap:anywhere}
.mspj-enabled .mspj4-sport-notes .mspj4-notes-copy p{margin-bottom:12px}
.mspj-enabled .mspj4-hotel-video{overflow:hidden}
.mspj-enabled .mspj4-hotel-video #detailHotelVideoCol{max-width:none!important;width:100%!important;padding:12px!important;flex:0 0 100%!important}
.mspj-enabled .mspj4-hotel-video #detailHotelVideoWrap{width:100%;min-height:300px}
.mspj-enabled .mspj4-hotel-video iframe{width:100%;height:100%;border:0;border-radius:3px}

.mspj-enabled .mspj4-generic-facility{border:1px solid #dbe7e0;padding:17px 20px;border-radius:3px;background:#f9fbfa}
.mspj-enabled .mspj4-generic-facility strong{display:block;font-size:16px;color:#1f3140}.mspj-enabled .mspj4-generic-facility p{font-size:13px;color:#708478;margin:7px 0 0}

/* ========================================================================
   MAD SPORTS PRO — HOTEL & SPORT DETAIL V5 / 30 OCT 2026
   Production refinement: only .mspj4 DOM in the two detail roots is affected.
   Keep sport-category colors for content; red remains the conversion action.
   ======================================================================== */
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{
  --mspj4-green:var(--mspv-accent,#237a3b);
  --mspj4-bright:var(--mspv-hover,#2d994e);
  --mspj4-red:#ed1427;--mspj4-ink:#1d2733;
  --mspj4-muted:#667488;--mspj4-line:#d9e3de;--mspj4-soft:#edf6ef;
  --mspj5-shadow:0 5px 20px rgba(20,39,32,.055);
  max-width:1530px!important;margin-top:82px!important;
  color:var(--mspj4-ink)!important;
}
.mspj-enabled .mspj4-stage{gap:15px;font-family:Inter,"Segoe UI",system-ui,-apple-system,Arial,sans-serif;letter-spacing:normal;}
.mspj-enabled .mspj4-stage :is(h1,h2,h3,h4,strong,b){font-family:inherit;letter-spacing:-.018em;}
.mspj-enabled .mspj4-stage p{line-height:1.64;}
.mspj-enabled .mspj4-card,.mspj-enabled .mspj4-overview,.mspj-enabled .mspj4-hotel,.mspj-enabled .mspj4-training{
  box-shadow:var(--mspj5-shadow);border-color:#dfe6e5;
}
.mspj-enabled .mspj4-nav{
  top:var(--mspj4-nav-offset,3px);min-height:68px;padding:8px 12px;
  grid-template-columns:minmax(170px,1.05fr) minmax(330px,1.65fr) auto;
  z-index:920;box-shadow:0 8px 28px rgba(12,29,39,.11);
}
.mspj-enabled .mspj4-nav .mspj4-brand-symbol{width:42px;height:42px;flex-basis:42px;font-size:20px;}
.mspj-enabled .mspj4-nav .mspj4-brand strong{font-size:14px;font-weight:850;}
.mspj-enabled .mspj4-nav .mspj4-tab{min-height:41px;font-size:11px!important;font-weight:750!important;padding:12px 10px;}
.mspj-enabled .mspj4-nav .mspj4-icon-button{width:42px;height:42px;}
.mspj-enabled .mspj4-quote{background:#ed1427!important;border-color:#ed1427!important;min-height:43px;padding:11px 17px;box-shadow:0 6px 14px rgba(237,20,39,.13);}
.mspj-enabled .mspj4-quote:hover{background:#c80d20!important;box-shadow:0 8px 19px rgba(237,20,39,.17);}
.mspj-enabled .mspj4-overview{padding:16px;}
.mspj-enabled .mspj4-overview-header h1{font-size:clamp(23px,2.5vw,36px)!important;line-height:1.18!important;font-weight:840!important;}
.mspj-enabled .mspj4-overview-header{padding-bottom:12px;}
.mspj-enabled .mspj4-eyebrow{font-size:11px;}
.mspj-enabled .mspj4-hero-gallery{height:clamp(320px,34vw,510px);gap:5px;}
.mspj-enabled .mspj4-hero-gallery .mspj4-primary-img{transition:transform .35s ease,filter .2s ease;}
.mspj-enabled .mspj4-hero-gallery .mspj4-primary-img:hover{filter:brightness(.96);}
.mspj-enabled .mspj4-hero-gallery button{transition:filter .17s ease,background .17s ease;}
.mspj-enabled .mspj4-hero-gallery button:hover{filter:brightness(.94);}
.mspj-enabled .mspj4-hero-gallery .mspj4-no-images{background:linear-gradient(135deg,#d8e7dc,#f3faf4);}
.mspj-enabled .mspj4-quickstats{gap:8px;margin-top:10px;}
.mspj-enabled .mspj4-quickstat{border-radius:3px;background:#f5faf7;}
.mspj-enabled .mspj4-section-head{padding:13px 14px;background:linear-gradient(105deg,#eaf6ed,#fafcfb 90%);border-bottom:1px solid #deebe0;}
.mspj-enabled .mspj4-head-icon{width:45px;height:45px;flex-basis:45px;}
.mspj-enabled .mspj4-head-copy h2{font-size:16px!important;font-weight:850!important;color:#23303b!important;}
.mspj-enabled .mspj4-head-copy p{font-size:11px;color:#758394;}
.mspj-enabled .mspj4-hotel,.mspj-enabled .mspj4-training{padding:12px;gap:12px;}
.mspj-enabled .mspj4-hotel-summary{border:1px solid #e1e9e3;border-radius:3px;box-shadow:none;padding:14px;}
.mspj-enabled .mspj4-hotel-heading h2{font-size:clamp(23px,2.3vw,31px)!important;font-weight:830!important;letter-spacing:-.035em;}
.mspj-enabled .mspj4-pills{flex-wrap:wrap;gap:5px;}
.mspj-enabled .mspj4-pills span{background:#f6faf7;border:1px solid #dfeae3;color:#475b51;}
.mspj-enabled .mspj4-accordion-button{min-height:66px;background:#f9fbf9;color:#293942;border-radius:3px;}
.mspj-enabled .mspj4-accordion-button:hover{background:#edf7f0;}
.mspj-enabled .mspj4-features{gap:7px;}
.mspj-enabled .mspj4-feature{border-radius:3px;min-height:47px;font-size:12px!important;line-height:1.4;padding:9px;}
.mspj-enabled .mspj4-feature.is-available{background:#f0f9f2;border:1px solid #b6ddbf;}
.mspj-enabled .mspj4-feature.is-paid{background:#fff9ec;border:1px solid #f2d6a1;}
.mspj-enabled .mspj4-feature.is-missing{background:#fff6f7;border:1px solid #efc5ce;color:#91616b;}
.mspj-enabled .mspj4-feature-icon{border-radius:3px;}
.mspj-enabled .mspj4-matrix{margin-top:2px;}
.mspj-enabled .mspj4-matrix-body{padding:17px;}
.mspj-enabled .mspj4-matrix-body>h3{font-size:13px!important;letter-spacing:.02em;font-weight:800!important;margin:14px 0 11px;}
.mspj-enabled .mspj4-fast-grid>div,.mspj-enabled .mspj4-highlight-grid>div{border-radius:3px;background:#f3f9f5;}
.mspj-enabled .mspj4-field-card{min-height:196px;}
.mspj-enabled .mspj4-field-text{padding:20px;}
.mspj-enabled .mspj4-field-text h3{font-weight:800!important;font-size:20px!important;}
.mspj-enabled .mspj4-field-dimension{font-weight:850!important;}
.mspj-enabled .mspj4-technical-details summary{border-radius:3px;}
.mspj-enabled .mspj4-region-row{gap:11px;}
.mspj-enabled .mspj4-region-row .region-hotels-heading h2{font-size:15px!important;line-height:1.34!important;}
.mspj-enabled .mspj4-region-row .region-hotel-card{transition:border-color .18s,transform .18s,box-shadow .18s;}
.mspj-enabled .mspj4-region-row .region-hotel-card:hover{border-color:#98cda6!important;transform:translateY(-1px);box-shadow:0 7px 17px rgba(24,65,45,.08)!important;}
.mspj-enabled .mspj4-region-row :is(.region-hotels-controls button,button[aria-label*="Next"],button[aria-label*="Previous"]){border-radius:3px!important;}
/* V5 interactive map. Every point is derived from coordinates or provided embeds. */
.mspj-enabled .mspj5-location{overflow:hidden;padding-bottom:11px;}
.mspj-enabled .mspj5-distance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;padding:12px 12px 6px;}
.mspj-enabled .mspj5-distance{display:flex;align-items:center;gap:11px;border:1px solid #d8e7dd;background:linear-gradient(115deg,#f0faf3,#f7fbf9);padding:12px 13px;min-width:0;border-radius:3px;}
.mspj-enabled .mspj5-distance-icon{display:grid;place-items:center;width:40px;height:40px;min-width:40px;background:var(--mspj4-green);color:#fff;font-size:17px;border-radius:3px;}
.mspj-enabled .mspj5-distance:nth-child(2) .mspj5-distance-icon,.mspj-enabled .mspj5-distance:nth-child(3) .mspj5-distance-icon{background:var(--mspj4-red);}
.mspj-enabled .mspj5-distance>div{display:flex;flex-direction:column;min-width:0;}
.mspj-enabled .mspj5-distance small{color:#77858d;font-size:10px;font-weight:740;text-transform:uppercase;}
.mspj-enabled .mspj5-distance strong{font-size:19px;line-height:1.35;font-weight:900;color:#1c2a37;white-space:normal;}
.mspj-enabled .mspj5-distance em{font-style:normal;color:#818f9b;font-size:10px;}
.mspj-enabled .mspj5-location-disclaimer{display:flex;align-items:flex-start;gap:7px;font-size:11px!important;color:#677d70;margin:3px 12px 13px;}
.mspj-enabled .mspj5-location-disclaimer i{color:var(--mspj4-green);}
.mspj-enabled .mspj5-map-grid{grid-template-columns:minmax(0,1.9fr) minmax(245px,.8fr);align-items:stretch;gap:10px;min-height:440px;padding-bottom:0;}
.mspj-enabled .mspj5-map-main{height:450px;min-height:350px;overflow:hidden;background:#e4eee8;border:1px solid #d8e8de;border-radius:3px;}
.mspj-enabled .mspj5-map-canvas{position:absolute;inset:0;z-index:1;}
.mspj-enabled .mspj5-map-canvas iframe{border:0;width:100%;height:100%;display:block;}
.mspj-enabled .mspj5-map-tools{position:absolute;top:12px;right:12px;z-index:550;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:90%;}
.mspj-enabled .mspj5-map-tools button,.mspj-enabled .mspj5-open-location{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:8px 11px;background:#fff;color:#234036;border:1px solid #ceddd3;border-radius:3px;box-shadow:0 4px 12px #00000017;font-size:11px!important;font-weight:800!important;cursor:pointer;}
.mspj-enabled .mspj5-map-tools button:hover,.mspj-enabled .mspj5-open-location:hover{color:#fff;background:var(--mspj4-green);border-color:var(--mspj4-green);}
.mspj-enabled .mspj5-map-sidebar{display:flex;flex-direction:column;background:#fbfdfb;border-radius:3px;padding:15px;gap:9px;}
.mspj-enabled .mspj5-sidebar-header h3{font-size:15px!important;font-weight:860!important;margin:0 0 3px;}
.mspj-enabled .mspj5-sidebar-header p{font-size:11px;margin:0;}
.mspj-enabled .mspj5-map-sidebar .mspj4-map-points{flex:1;gap:8px;align-content:start;}
.mspj-enabled .mspj5-place-choice{display:flex!important;gap:10px;align-items:center!important;min-height:78px;padding:10px!important;background:#f4fbf6;border:1px solid #d2e5d7!important;}
.mspj-enabled .mspj5-place-choice:hover,.mspj-enabled .mspj5-place-choice.is-active{background:#e6f6eb;border-color:#77bd88!important;}
.mspj-enabled .mspj5-place-photo{display:grid;place-items:center;flex:0 0 54px!important;width:54px;height:54px;border-radius:50%;background:#fff;color:var(--mspj4-green);overflow:hidden;border:2px solid #b9e0c5;box-shadow:0 2px 8px #1345291f;}
.mspj-enabled .mspj5-place-choice[data-point="airport"] .mspj5-place-photo{background:#fff1f3;color:var(--mspj4-red);border-color:#f6b3bc;}
.mspj-enabled .mspj5-place-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.mspj-enabled .mspj5-place-photo i{font-size:24px;}
.mspj-enabled .mspj5-place-text{flex:1;min-width:0;display:flex;flex-direction:column;text-align:left;}
.mspj-enabled .mspj5-place-text small{color:#87959f;font-size:9px;text-transform:uppercase;font-weight:800;}
.mspj-enabled .mspj5-place-text strong{color:#263b32;font-size:12px;font-weight:850;line-height:1.3;}
.mspj-enabled .mspj5-place-text em{font-size:10px;font-style:normal;color:#5b886d;margin-top:3px;}
.mspj-enabled .mspj5-place-choice>i:last-child{color:#789b82;margin-left:auto;}
.mspj-enabled .mspj5-open-location{justify-content:center;margin-top:auto;width:100%;box-shadow:none;}
.mspj-enabled .mspj5-map-toggle{margin:10px 12px 0 auto;}
/* Leaflet's photo + airport icon are attached to actual geographic coordinates. */
.mspj5-marker-wrap{background:transparent;border:0;overflow:visible;}
.mspj5-map-pin{display:flex;align-items:center;justify-content:center;width:61px;height:61px;border:4px solid white;border-radius:50%;background:#eaf5ef;color:#167a38;box-shadow:0 2px 0 #14853e,0 8px 24px #121a1e69;position:relative;overflow:visible;}
.mspj5-map-pin:after{content:"";position:absolute;top:53px;border-left:9px solid transparent;border-right:9px solid transparent;border-top:12px solid #fff;}
.mspj5-map-pin img{width:53px;height:53px;border-radius:50%;object-fit:cover;}
.mspj5-map-pin i{font-size:27px;}
.mspj5-map-pin.is-airport{background:#ef1728;color:white;box-shadow:0 2px 0 #b81726,0 8px 24px #121a1e69;}
.mspj-enabled .mspj5-map-main .leaflet-container{z-index:2;font-family:inherit;}
.mspj-enabled .mspj5-map-main .leaflet-popup-content{font-size:12px;line-height:1.6;}
.mspj5-toast{position:fixed;bottom:24px;left:50%;z-index:999999;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#17241e;color:#fff;border-radius:3px;padding:12px 18px;box-shadow:0 12px 26px #0003;font:700 13px system-ui;transition:opacity .16s,transform .16s;max-width:min(500px,90vw);text-align:center;}
.mspj5-toast.is-visible{opacity:1;transform:translate(-50%,0);}
.mspj-enabled .mspj4-stage [data-mspj5-fit][hidden]{display:none!important;}
@media (max-width:1180px){.mspj-enabled .mspj4-nav{grid-template-columns:minmax(150px,1fr) auto}.mspj-enabled .mspj4-tabs{grid-column:1/-1;grid-row:2;justify-content:center;}.mspj-enabled .mspj4-actions{grid-column:2;grid-row:1;}}
@media (max-width:850px){
 .mspj-enabled .mspj5-map-grid{grid-template-columns:minmax(0,1fr);}
 .mspj-enabled .mspj5-map-sidebar{gap:8px;}
 .mspj-enabled .mspj5-map-sidebar .mspj4-map-points{grid-template-columns:repeat(auto-fit,minmax(185px,1fr));}
 .mspj-enabled .mspj5-map-main{height:380px;}
 .mspj-enabled .mspj4-nav{top:var(--mspj4-nav-offset,3px);}
}
@media(max-width:540px){
 .mspj-enabled .mspj4-stage{gap:10px;}
 .mspj-enabled .mspj4-nav{padding:7px 8px;}
 .mspj-enabled .mspj4-tabs{overflow-x:auto;justify-content:flex-start;gap:3px;}
 .mspj-enabled .mspj4-tab{font-size:9px!important;padding:10px 9px!important;}
 .mspj-enabled .mspj4-nav .mspj4-quote{min-width:0;padding:7px 9px;}
 .mspj-enabled .mspj4-overview{padding:9px;}
 .mspj-enabled .mspj4-hero-gallery{height:300px;}
 .mspj-enabled .mspj4-section-head{padding:10px 9px;}
 .mspj-enabled .mspj5-distance-grid{grid-template-columns:1fr 1fr;gap:6px;padding:9px;}
 .mspj-enabled .mspj5-distance{gap:7px;padding:9px;}
 .mspj-enabled .mspj5-distance-icon{width:33px;height:33px;min-width:33px;font-size:14px;}
 .mspj-enabled .mspj5-distance strong{font-size:15px;}
 .mspj-enabled .mspj5-distance small,.mspj-enabled .mspj5-distance em{font-size:9px;}
 .mspj-enabled .mspj5-map-grid{padding:0 9px;}
 .mspj-enabled .mspj5-map-main{height:300px;min-height:300px;}
 .mspj-enabled .mspj5-map-sidebar .mspj4-map-points{grid-template-columns:1fr;}
 .mspj-enabled .mspj5-place-choice{min-height:65px;}
 .mspj-enabled .mspj5-map-tools{top:7px;right:7px;max-width:97%;}
 .mspj-enabled .mspj5-map-tools button{padding:7px 8px;min-height:34px;font-size:10px!important;}
}
@media print{.mspj-enabled .mspj5-map-tools,.mspj-enabled .mspj5-map-toggle{display:none!important}.mspj-enabled .mspj4-nav{position:static!important}.mspj-enabled .mspj5-map-main{height:330px;}}
.mspj5-loading-map{width:100%;height:100%;min-height:300px;display:flex;justify-content:center;align-items:center;gap:11px;color:#5a7765;font-size:13px;font-weight:750;background:linear-gradient(135deg,#e9f4ed,#f8fbf9)}
.mspj5-loading-map i{font-size:24px;color:#20803b}
.mspj-enabled .mspj5-place-choice:disabled{opacity:.6;cursor:progress!important;}

/* MAD SPORTS PRO V6 — universal 15-sport polish and full-height map controls.
   Retains the shared DOM and the authoritative per-sport CMS values. */
.mspj-enabled{
 --mspj4-green:var(--mspv-accent,#1b6039);
 --mspj4-deep:var(--mspv-deep,#124b2c);
 --mspj4-soft:var(--mspv-soft,#eff8f1);
 --mspj4-red:#e30613;
}
/* The header is always flush above this fixed navigator, including during scroll.
   JavaScript measures the actual top header + container width and reserves its height. */
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{
 margin-top:18px!important;
}
.mspj-enabled .mspj4-nav{
 position:fixed!important;top:var(--mspj4-nav-offset,0px)!important;
 margin:0!important;border-top:2px solid var(--mspj4-green)!important;
 z-index:1090!important;border-radius:0 0 4px 4px!important;
 min-width:0!important;max-width:100vw!important;
 box-shadow:0 9px 23px rgba(14,29,25,.11)!important;
 background:#fff!important;backdrop-filter:none!important;
}
.mspj-enabled .mspj6-nav-spacer{height:72px;flex:0 0 auto;min-width:0;pointer-events:none;}
.mspj-enabled .mspj4-tab.is-active{box-shadow:inset 0 -3px var(--mspj4-green)!important;}
.mspj-enabled .mspj4-brand-symbol,.mspj-enabled .mspj4-head-icon{background:var(--mspj4-green)!important;}
.mspj-enabled .mspj4-brand small{color:var(--mspj4-green)!important;}
.mspj-enabled .mspj4-quote{background:var(--mspj4-red)!important;border-color:var(--mspj4-red)!important;}
.mspj-enabled .mspj4-quote:hover{background:#ba0816!important;}
.mspj-enabled .mspj4-section-head{background:linear-gradient(95deg,var(--mspj4-soft) 0%,#fff 95%)!important;border-bottom:1px solid #e1e6e3!important;}
.mspj-enabled .mspj4-eyebrow,.mspj-enabled .mspj4-mini-kicker{color:var(--mspj4-green)!important;}
.mspj-enabled .mspj4-feature.is-available{background:var(--mspj4-soft)!important;border:1px solid color-mix(in srgb,var(--mspj4-green) 25%,white)!important;}
.mspj-enabled .mspj4-feature.is-available .mspj4-feature-icon{color:var(--mspj4-green)!important;border-color:color-mix(in srgb,var(--mspj4-green) 25%,white)!important;}
/* Exclusive ≠ included. Red conveys an additional paid/exclusive item; absent stays red, without a fabricated price. */
.mspj-enabled .mspj4-feature.is-exclusive,.mspj-enabled .mspj4-feature.is-paid{
 color:#ae1727!important;background:#fff1f3!important;border:1px solid #f2b9c2!important;
}
.mspj-enabled .mspj4-feature.is-exclusive .mspj4-feature-icon,.mspj-enabled .mspj4-feature.is-paid .mspj4-feature-icon{
 background:#fff!important;border:1px solid #eea4b0!important;color:#d91b2d!important;
}
.mspj-enabled .mspj4-feature.is-exclusive small,.mspj-enabled .mspj4-feature.is-paid small{
 color:#be1529!important;font-weight:850!important;letter-spacing:.02em;
}
.mspj-enabled .mspj4-feature{min-width:0!important;overflow-wrap:anywhere!important;border-radius:3px!important;}
.mspj-enabled .mspj4-features{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))!important;}
/* A single full-width recently viewed row, followed by a separate nearby row. */
.mspj-enabled .mspj4-region-row.mspj6-region-stack{
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 gap:16px!important;width:100%!important;min-width:0!important;max-width:100%!important;
}
.mspj-enabled .mspj6-region-stack>.mspj4-region-card{
 width:100%!important;max-width:100%!important;min-width:0!important;grid-column:1/-1!important;
 border-radius:4px!important;overflow:hidden!important;margin:0!important;
}
.mspj-enabled .mspj6-region-stack .region-hotels-heading{
 padding:15px 18px!important;min-height:74px;
}
.mspj-enabled .mspj6-region-stack .region-hotels-heading h2{font-size:17px!important;line-height:1.28!important;}
.mspj-enabled .mspj6-region-stack .region-hotels-track{
 display:flex!important;width:100%!important;min-width:0!important;max-width:100%!important;
 overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain;
 padding:16px!important;gap:12px!important;scrollbar-width:thin;
}
.mspj-enabled .mspj6-region-stack .region-hotel-slide{
 flex:0 0 clamp(215px,23vw,280px)!important;min-width:0!important;max-width:280px!important;
}
.mspj-enabled .mspj6-region-stack .region-hotel-card,
.mspj-enabled .mspj6-region-stack .interested-hotel-card{
 width:100%!important;min-width:0!important;max-width:100%!important;height:100%!important;overflow:hidden!important;
}
/* Other sports: no border spilling / no bootstrap width overflow. Works for every sport. */
.mspj-enabled .mspj4-more-sports.mspj6-more-sports{
 display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
 padding:18px!important;border:1px solid #d9e6df!important;border-top:3px solid var(--mspj4-green)!important;
 background:#fff!important;border-radius:4px!important;overflow:hidden!important;
}
.mspj-enabled .mspj6-more-sports :is(#addSportsSection,#otherSportsSection,.sports-collapse-wrap,#hotelSportsList,#otherSportsList){
 display:block;min-width:0!important;max-width:100%!important;width:100%!important;
 box-sizing:border-box!important;overflow:visible!important;margin:0!important;padding:0!important;
}
.mspj-enabled .mspj6-more-sports :is(.section-label-heading,h6){
 display:block!important;max-width:100%!important;overflow-wrap:anywhere!important;
 white-space:normal!important;line-height:1.4!important;letter-spacing:.03em!important;
 font-size:clamp(12px,1.15vw,16px)!important;margin-bottom:14px!important;
}
.mspj-enabled .mspj6-more-sports :is(.row,.sport-two-col-layout){
 --bs-gutter-x:12px;--bs-gutter-y:12px;
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 width:100%!important;max-width:100%!important;min-width:0!important;
 margin:0!important;gap:12px!important;
}
.mspj-enabled .mspj6-more-sports .sport-two-col-layout>[class*="col-"]{
 width:auto!important;flex:unset!important;max-width:100%!important;min-width:0!important;
 padding:0!important;margin:0!important;
}
.mspj-enabled .mspj6-more-sports :is(.sport-item,.sport-card-description,.sport-card-title-link){
 min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
 overflow-wrap:anywhere!important;word-break:normal!important;white-space:normal!important;
}
.mspj-enabled .mspj6-more-sports .sport-item{
 border:1px solid #e0e8e3!important;border-left:3px solid var(--mspj4-green)!important;
 border-radius:4px!important;background:#fff!important;box-shadow:none!important;
 height:100%!important;margin:0!important;padding:15px!important;transition:border-color .2s,box-shadow .2s;
}
.mspj-enabled .mspj6-more-sports .sport-item:hover{
 border-color:var(--mspj4-green)!important;box-shadow:0 8px 24px #1b4a3714!important;
}
.mspj-enabled .mspj6-more-sports .sport-card-title-link{font-size:14px!important;font-weight:820!important;line-height:1.35!important;}
.mspj-enabled .mspj6-more-sports .sport-card-description{padding:8px 0!important;font-size:12px!important;line-height:1.58!important;}
.mspj-enabled .mspj6-more-sports .sport-detail-btn{
 margin-top:auto!important;min-height:42px!important;width:100%!important;
 border-radius:3px!important;white-space:normal!important;
}
/* One shared facility card language for all 15 sports, preserving original sport-aware diagrams. */
.mspj-enabled .mspj6-universal-facilities{
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;
 width:100%!important;min-width:0!important;
}
.mspj-enabled .mspj6-universal-facilities>.pitch-summary-row,
.mspj-enabled .mspj6-universal-facilities>.mspv-facility-card,
.mspj-enabled .mspj6-universal-facilities>.msp-hub-card{
 width:100%!important;min-width:0!important;margin:0!important;padding:18px!important;
 border:1px solid #dce6e0!important;border-left:4px solid var(--mspj4-green)!important;
 border-radius:4px!important;box-shadow:0 3px 10px #163a2910!important;
 overflow:hidden!important;background:#fff!important;
}
.mspj-enabled .mspj6-universal-facilities .pitch-summary-highlights{
 display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))!important;
 width:100%!important;max-width:100%!important;gap:8px!important;
}
.mspj-enabled .mspj6-universal-facilities .pitch-highlight-item{
 background:var(--mspj4-soft)!important;border:1px solid color-mix(in srgb,var(--mspj4-green) 17%,white)!important;
 padding:10px!important;margin:0!important;min-width:0!important;border-radius:3px!important;
}
.mspj-enabled .mspj6-universal-facilities :is(.pitch-summary-row,.pitch-chip,.pitch-summary-dimension){
 overflow-wrap:anywhere!important;max-width:100%!important;
}
.mspj-enabled .mspj6-universal-facilities .pitch-icon-badge{background:var(--mspj4-green)!important;border-radius:4px!important;}
.mspj-enabled .mspj6-universal-facilities .pitch-summary-row .pitch-chip{
 font-size:clamp(19px,2vw,29px)!important;font-weight:830!important;color:#22322a!important;
}
.mspj-enabled .mspj6-universal-card{
 display:flex;gap:14px;align-items:center;padding:16px;border:1px solid #dfe8e2;
 border-left:4px solid var(--mspj4-green);border-radius:4px;min-width:0;overflow-wrap:anywhere;
}
.mspj-enabled .mspj6-facility-number{display:grid;place-items:center;flex:0 0 48px;height:48px;
 background:var(--mspj4-deep);color:#fff;border-radius:4px;font-weight:850;}
/* Map works even if Leaflet CDN is unavailable: sidebar drives a Google iframe. */
.mspj-enabled .mspj5-map-main{position:relative!important;}
.mspj-enabled .mspj5-map-canvas{position:absolute!important;inset:0!important;overflow:hidden!important;}
.mspj-enabled .mspj5-leaflet-canvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;}
.mspj-enabled .mspj5-search-iframe{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 z-index:5!important;border:0!important;display:block!important;background:#edf5ef;}
.mspj-enabled .mspj5-search-iframe[hidden]{display:none!important;}
.mspj-enabled .mspj5-map-underlay{visibility:hidden!important;}
.mspj-enabled .mspj5-place-choice{cursor:pointer!important;opacity:1!important;pointer-events:auto!important;}
.mspj-enabled .mspj5-place-choice:focus-visible{outline:3px solid var(--mspj4-green)!important;outline-offset:2px;}
.mspj-enabled .mspj5-place-choice.is-active{box-shadow:inset 4px 0 var(--mspj4-green)!important;}
.mspj5-map-pin-distance{
 position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);
 display:block;white-space:nowrap;font:800 10px system-ui;color:#172d20;
 padding:4px 7px;background:#fff;border:1px solid #d0e5d6;border-radius:3px;
 box-shadow:0 3px 12px #0002;
}
.mspj-enabled .mspj5-place-photo,.mspj5-map-pin{border-color:color-mix(in srgb,var(--mspj4-green) 34%,white)!important;}
.mspj-enabled .mspj5-distance-icon,.mspj-enabled .mspj5-open-location:hover{background:var(--mspj4-green)!important;}
.mspj-enabled .mspj5-place-text em{color:var(--mspj4-green)!important;}
.mspj-enabled .mspj5-map-tools button:focus-visible,.mspj-enabled .mspj5-map-toggle:focus-visible{outline:3px solid var(--mspj4-green)!important;outline-offset:2px;}
@media(max-width:1120px){
 .mspj-enabled .mspj6-more-sports :is(.row,.sport-two-col-layout){grid-template-columns:repeat(2,minmax(0,1fr))!important;}
 .mspj-enabled .mspj6-region-stack .region-hotel-slide{flex-basis:255px!important;}
}
@media(max-width:760px){
 #detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{margin-top:10px!important;}
 .mspj-enabled .mspj6-nav-spacer{height:110px;}
 .mspj-enabled .mspj4-nav{border-radius:0 0 3px 3px!important;}
 .mspj-enabled .mspj6-more-sports{padding:12px!important;}
 .mspj-enabled .mspj6-region-stack .region-hotel-slide{flex-basis:225px!important;}
 .mspj-enabled .mspj6-universal-facilities>.pitch-summary-row{padding:12px!important;}
}
@media(max-width:520px){
 .mspj-enabled .mspj6-more-sports :is(.row,.sport-two-col-layout){grid-template-columns:minmax(0,1fr)!important;}
 .mspj-enabled .mspj6-region-stack .region-hotel-slide{flex-basis:82vw!important;max-width:285px!important;}
 .mspj-enabled .mspj5-distance-grid{grid-template-columns:1fr!important;}
 .mspj-enabled .mspj6-universal-facilities .pitch-summary-highlights{grid-template-columns:minmax(0,1fr)!important;}
}
@media print{
 .mspj-enabled .mspj4-nav{position:static!important;left:auto!important;top:auto!important;width:100%!important;box-shadow:none!important;}
 .mspj-enabled .mspj6-nav-spacer{display:none!important;}
 .mspj-enabled .mspj6-region-stack{display:block!important;}
}

/* ==============================================================
   MAD SPORTS PRO | V7 | 15-sport unified inventory & experience
   Only sport-selected tokens are used for positive/neutral accents.
   Red is reserved for exclusive, unavailable and primary actions.
   ============================================================== */
.mspj-enabled{
 --mspj7-main:var(--mspj4-green,var(--mspv-accent,#207d33));
 --mspj7-soft:var(--mspj4-soft,var(--mspv-soft,#f3f8f3));
 --mspj7-deep:var(--mspj4-deep,var(--mspv-deep,#234c35));
 --mspj7-line:color-mix(in srgb,var(--mspj7-main) 25%,white);
 --mspj7-pale:color-mix(in srgb,var(--mspj7-main) 7%,white);
 --mspj7-fade:color-mix(in srgb,var(--mspj7-main) 13%,white);
}
/* Restore the discipline's own color to leftover V6 fixed-green elements. */
.mspj-enabled .mspj4-quickstat,
.mspj-enabled .mspj4-fast-grid>div,
.mspj-enabled .mspj4-highlight-grid>div,
.mspj-enabled .mspj4-location-metrics>div,
.mspj-enabled .mspj5-distance,
.mspj-enabled .mspj4-profile-right,
.mspj-enabled .mspj4-profile-right>div>div{
 background:var(--mspj7-pale)!important;
 border-color:var(--mspj7-line)!important;
}
.mspj-enabled .mspj4-quickstat>i,
.mspj-enabled .mspj4-fast-grid>div i,
.mspj-enabled .mspj4-profile-right b,
.mspj-enabled .mspj4-profile-right i,
.mspj-enabled .mspj5-location-disclaimer i,
.mspj-enabled .mspj5-loading-map i{
 color:var(--mspj7-main)!important;
}
.mspj-enabled .mspj4-profile-right h3{
 background:var(--mspj7-deep)!important;color:#fff!important;
}
.mspj-enabled .mspj4-fast-grid strong{color:var(--mspj7-deep)!important}
.mspj-enabled .mspj5-loading-map{background:var(--mspj7-pale)!important;color:var(--mspj7-deep)!important}
.mspj-enabled .mspj4-profile-left{background:linear-gradient(115deg,#111825,var(--mspj7-deep))!important}
.mspj-enabled .mspj4-profile-left .mspj4-mini-kicker{color:color-mix(in srgb,var(--mspj7-main) 48%,white)!important}
.mspj-enabled .mspj4-pills .bi,
.mspj-enabled .mspj4-quickstat>i,
.mspj-enabled .mspj5-map-tools button:hover{color:var(--mspj7-main)!important}
.mspj-enabled .mspj5-map-tools button:hover{background:var(--mspj7-pale)!important;border-color:var(--mspj7-line)!important}
.mspj-enabled .mspj5-map-tools button:focus-visible{outline:3px solid var(--mspj7-main)!important}
.mspj-enabled .mspj4-feature.is-available{background:var(--mspj7-pale)!important;border-color:var(--mspj7-line)!important}
.mspj-enabled .mspj4-feature.is-available .mspj4-feature-icon{color:var(--mspj7-main)!important;border-color:var(--mspj7-line)!important}
/* Source diagrams are retired across football, athletics and EVERY other sport.
   The data records remain accessible to JS; the main output is now the table. */
.mspj-enabled .mspv-diagram,
.mspj-enabled .mspu-diagram,
.mspj-enabled .mspv-diagram-canvas,
.mspj-enabled .mspu-plan,
.mspj-enabled .mspj7-original-technical{display:none!important}
/* Universal sport inventory: same premium information architecture for 15 sports. */
.mspj-enabled .mspj7-inventory-body{padding:0!important;margin:0!important;min-width:0!important}
.mspj-enabled .mspj7-inventory-intro{display:flex;align-items:center;justify-content:space-between;gap:12px;
 padding:15px 19px;background:var(--mspj7-pale);border-bottom:1px solid var(--mspj7-line)}
.mspj-enabled .mspj7-inventory-intro>span{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:850;color:var(--mspj7-deep)}
.mspj-enabled .mspj7-inventory-intro>span i{font-size:19px;color:var(--mspj7-main)}
.mspj-enabled .mspj7-inventory-intro>strong{font-size:11px;color:var(--mspj7-main);background:#fff;border:1px solid var(--mspj7-line);padding:7px 11px;border-radius:3px}
.mspj-enabled .mspj7-inventory-scroll{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin}
.mspj-enabled .mspj7-inventory-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:730px;margin:0!important;background:#fff;color:#25313b}
.mspj-enabled .mspj7-inventory-table th{font-size:10px!important;font-weight:850!important;letter-spacing:.065em!important;
 text-transform:uppercase;color:var(--mspj7-deep);background:var(--mspj7-pale);padding:16px 13px!important;
 border:0;border-bottom:2px solid var(--mspj7-line);text-align:left;line-height:1.4}
.mspj-enabled .mspj7-inventory-table th:nth-child(1){width:65px}
.mspj-enabled .mspj7-inventory-table th:nth-child(2){width:22%}
.mspj-enabled .mspj7-inventory-table th:nth-child(3){width:24%}
.mspj-enabled .mspj7-inventory-table th:nth-child(4){width:13%}
.mspj-enabled .mspj7-inventory-table td{padding:15px 13px!important;line-height:1.48!important;font-size:13px!important;
 border:0;border-bottom:1px solid #e7ecea;vertical-align:top;overflow-wrap:anywhere}
.mspj-enabled .mspj7-inventory-table tbody tr:nth-child(even){background:#fcfdfc}
.mspj-enabled .mspj7-inventory-table tbody tr:hover{background:var(--mspj7-pale)}
.mspj-enabled .mspj7-inventory-index{display:inline-flex;justify-content:center;align-items:center;min-width:34px;min-height:34px;
 background:var(--mspj7-deep);color:#fff;font-weight:900;font-size:12px;border-radius:3px}
.mspj-enabled .mspj7-facility-name{font-size:14px!important;color:#202a34;font-weight:860!important;line-height:1.35}
.mspj-enabled .mspj7-spec-list,.mspj-enabled .mspj7-technical-list{display:flex;align-items:flex-start;flex-wrap:wrap;gap:5px;min-width:0}
.mspj-enabled .mspj7-spec-pill,.mspj-enabled .mspj7-property{display:inline-flex;align-items:flex-start;gap:5px;
 border:1px solid var(--mspj7-line);border-radius:3px;background:var(--mspj7-pale);padding:5px 7px;
 color:var(--mspj7-deep);font-size:11px!important;line-height:1.5!important;overflow-wrap:anywhere}
.mspj-enabled .mspj7-property{background:#fff;border-color:#dce5e1;color:#46515c}
.mspj-enabled .mspj7-property i{flex:none;color:var(--mspj7-main);margin-top:1px}
.mspj-enabled .mspj7-no-data{color:#95a0a9}
.mspj-enabled .mspj4-fields-body .mspj4-generic-facility{display:none!important}
/* Profile picture map markers: exactly circular, 5px sport-colored stroke. */
.mspj-enabled .mspj5-marker-wrap{background:transparent!important;border:0!important}
.mspj-enabled .mspj5-map-pin{
 position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;
 box-sizing:border-box!important;width:72px!important;height:72px!important;min-width:72px!important;min-height:72px!important;
 aspect-ratio:1/1!important;border-radius:50%!important;border:5px solid var(--mspj7-main)!important;
 background:var(--mspj7-pale)!important;color:var(--mspj7-main)!important;
 overflow:visible!important;box-shadow:0 0 0 3px white,0 7px 24px #091a2470!important;
 padding:0!important;transform:none!important}
.mspj-enabled .mspj5-map-pin:before,.mspj-enabled .mspj5-map-pin:after{display:none!important;content:none!important}
.mspj-enabled .mspj5-map-pin img{display:block;width:100%!important;height:100%!important;aspect-ratio:1/1!important;
 border-radius:50%!important;object-fit:cover!important;overflow:hidden;flex:1 1 auto}
.mspj-enabled .mspj5-map-pin i{font-size:29px!important;color:var(--mspj7-main)!important}
.mspj-enabled .mspj5-map-pin.is-airport{border-color:var(--mspj7-main)!important;background:#fff!important}
.mspj-enabled .mspj5-place-photo{width:58px!important;height:58px!important;flex:0 0 58px!important;
 box-sizing:border-box!important;aspect-ratio:1/1!important;border:5px solid var(--mspj7-main)!important;
 border-radius:50%!important;background:#fff!important;color:var(--mspj7-main)!important;overflow:hidden!important;padding:0!important}
.mspj-enabled .mspj5-place-photo img{width:100%!important;height:100%!important;aspect-ratio:1/1!important;object-fit:cover!important;border-radius:50%!important}
.mspj-enabled .mspj5-place-choice[data-point="airport"] .mspj5-place-photo{border-color:var(--mspj7-main)!important;background:var(--mspj7-pale)!important;color:var(--mspj7-main)!important}
.mspj-enabled .mspj5-map-pin-distance{top:calc(100% + 11px)!important;z-index:10;background:#fff!important;
 color:var(--mspj7-deep)!important;border-color:var(--mspj7-line)!important}
.mspj-enabled .mspj5-place-choice{transition:background .22s ease,box-shadow .22s ease,transform .22s ease!important}
.mspj-enabled .mspj5-place-choice:hover{transform:translateY(-2px)!important;background:var(--mspj7-pale)!important}
/* No Google external map card/button; place choices remain functional. */
.mspj-enabled .mspj5-open-location,.mspj-enabled [data-mspj5-external]{display:none!important}
/* Sport offers: crisp 10px vertical brand rail; consistent even with nested Bootstrap rows. */
.mspj-enabled .mspj4-more-sports.mspj6-more-sports{box-sizing:border-box!important;width:100%!important;
 border:1px solid #dbe4df!important;border-left:10px solid var(--mspj7-main)!important;
 border-top:1px solid #dbe4df!important;border-radius:4px!important;background:#fff!important;
 padding:22px 19px 20px!important;overflow:hidden!important;box-shadow:0 5px 18px #1529200a!important}
.mspj-enabled .mspj6-more-sports .sport-item{border:1px solid #dfe6e1!important;border-left:3px solid var(--mspj7-main)!important;
 border-radius:3px!important;background:var(--mspj7-pale)!important;padding:16px!important;
 transition:background .22s,border-color .22s,transform .22s,box-shadow .22s!important}
.mspj-enabled .mspj6-more-sports .sport-item:hover{transform:translateY(-2px)!important;background:#fff!important;
 border-color:var(--mspj7-line)!important;box-shadow:0 8px 18px #162d2b16!important}
.mspj-enabled .mspj6-more-sports .sport-card-title-link{color:var(--mspj7-deep)!important}
.mspj-enabled .mspj6-more-sports :is(.row,.sport-two-col-layout){min-width:0!important;max-width:100%!important;
 box-sizing:border-box!important;overflow:visible!important}
.mspj-enabled .mspj6-more-sports .sport-detail-btn{border-radius:3px!important;min-height:42px!important}
/* Functional localized 3-entry quick-access, same pattern on all sports. */
.mspj-enabled .mspj7-quick-access{margin:14px 0 18px;padding:0!important;border:1px solid #e0e6e3;
 border-left:6px solid var(--mspj7-main);background:#fff;border-radius:4px;overflow:hidden;box-shadow:0 2px 12px #162e2b0a}
.mspj-enabled .mspj7-quick-head{display:flex;align-items:center;gap:13px;padding:17px 18px 10px}
.mspj-enabled .mspj7-quick-head>span{width:38px;height:38px;display:grid;place-items:center;color:#fff;background:var(--mspj7-main);border-radius:3px}
.mspj-enabled .mspj7-quick-head h2{margin:0!important;font-size:clamp(14px,1.4vw,19px)!important;
 color:#26313a!important;font-weight:850!important;line-height:1.35!important}
.mspj-enabled .mspj7-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 18px 18px}
.mspj-enabled .mspj7-quick-button{min-height:76px;display:flex;align-items:center;gap:12px;padding:14px;
 border:1px solid var(--mspj7-line);border-radius:3px;background:var(--mspj7-pale);color:var(--mspj7-deep);
 font-weight:800;font-size:12px;text-align:start;cursor:pointer;min-width:0;
 transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease}
.mspj-enabled .mspj7-quick-button>i:first-child{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;
 border-radius:3px;background:var(--mspj7-main);color:#fff;font-size:18px}
.mspj-enabled .mspj7-quick-button>span{flex:1;min-width:0;overflow-wrap:anywhere}
.mspj-enabled .mspj7-quick-button>i:last-child{font-size:16px;flex:none}
.mspj-enabled .mspj7-quick-button:hover{transform:translateY(-2px);background:#fff;
 box-shadow:0 9px 22px #162b2521;border-color:var(--mspj7-main)}
.mspj-enabled .mspj7-quick-button:focus-visible{outline:3px solid var(--mspj7-main)!important;outline-offset:2px}
/* Elegant reveal, no global transforms on modals or sticky controls. */
.mspj-enabled .mspj4-section-head,.mspj-enabled .mspj4-map-choice,.mspj-enabled .mspj4-hotel-summary,
.mspj-enabled .mspj4-gallery-sides img{transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease!important}
.mspj-enabled .mspj4-accordion-body:not([hidden]){animation:mspj7Reveal .24s ease-out both}
@keyframes mspj7Reveal{from{opacity:.15;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:900px){
 .mspj-enabled .mspj7-quick-grid{gap:8px}
 .mspj-enabled .mspj7-inventory-table{min-width:650px}
}
@media (max-width:650px){
 .mspj-enabled .mspj7-quick-grid{grid-template-columns:1fr}
 .mspj-enabled .mspj7-quick-button{min-height:58px}
 .mspj-enabled .mspj7-inventory-scroll{overflow:visible}
 .mspj-enabled .mspj7-inventory-table,.mspj-enabled .mspj7-inventory-table tbody{display:block!important;width:100%!important;min-width:0!important}
 .mspj-enabled .mspj7-inventory-table thead{display:none!important}
 .mspj-enabled .mspj7-inventory-table tbody tr{display:grid!important;grid-template-columns:50px minmax(0,1fr)!important;
  gap:5px;padding:12px;border-bottom:1px solid #e3e9e5;background:#fff!important}
 .mspj-enabled .mspj7-inventory-table td{display:block!important;width:auto!important;padding:4px!important;border:0!important;min-width:0!important}
 .mspj-enabled .mspj7-inventory-table td:nth-child(1){grid-row:1;grid-column:1/2}
 .mspj-enabled .mspj7-inventory-table td:nth-child(2){grid-row:1;grid-column:2/3}
 .mspj-enabled .mspj7-inventory-table td:nth-child(n+3){grid-column:1/-1}
 .mspj-enabled .mspj7-inventory-table td:nth-child(n+3):before{content:attr(data-label);display:block!important;
  font-size:10px!important;font-weight:850!important;text-transform:uppercase;color:var(--mspj7-main);margin-bottom:5px}
 .mspj-enabled .mspj4-more-sports.mspj6-more-sports{padding:14px 11px!important;border-left-width:8px!important}
}
@media(prefers-reduced-motion:reduce){.mspj-enabled .mspj7-quick-button,.mspj-enabled .mspj5-place-choice,.mspj-enabled .mspj6-more-sports .sport-item{transition:none!important;transform:none!important}.mspj-enabled .mspj4-accordion-body:not([hidden]){animation:none!important}}
/* Golfer-Panel uses the localized human-readable title case, never forced uppercase. */
.mspj-enabled[data-mspj6-sport="golf"] .mspj4-profile-right h3{text-transform:none!important}

/* V8 shared layout corrections */
.mspj-enabled .mspj8-legacy-media{display:none!important}
.mspj-enabled .mspj8-sport-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:14px}
.mspj-enabled .mspj8-gallery-tile{position:relative;min-width:0;aspect-ratio:4/3;padding:0;border:1px solid var(--mspj4-line,#dce5e1);overflow:hidden;background:var(--mspj7-soft,#f5f7f7);border-radius:4px}
.mspj-enabled .mspj8-gallery-tile:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.mspj-enabled .mspj8-gallery-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .32s ease}
.mspj-enabled .mspj8-gallery-tile:hover img{transform:scale(1.035)}
.mspj-enabled .mspj8-gallery-tile span{position:absolute;bottom:9px;right:9px;background:#0a1b24ab;color:white;border-radius:3px;width:29px;height:29px;display:grid;place-items:center}
.mspj-enabled .mspj4-stage #mspj7QuickAccess{display:none!important}
.mspj-enabled .mspj6-region-stack{margin-bottom:0!important}
.mspj-enabled .mspj4-stage{margin-bottom:0!important;padding-bottom:0!important}
.mspj-enabled #detailSportPageRoot,.mspj-enabled #detailPageRoot{padding-bottom:0!important;margin-bottom:0!important}
.mspj-enabled .mspj4-more-sports,.mspj-enabled .mspj6-more-sports{width:100%!important;min-width:0!important}
.mspj-enabled .mspj6-more-sports .sports-collapse-wrap,.mspj-enabled .mspj6-more-sports .sports-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))!important;gap:12px!important;width:100%!important}
.mspj-enabled .mspj6-more-sports .sport-item{min-width:0!important;max-width:none!important;width:100%!important;overflow-wrap:anywhere;word-break:normal!important}
.mspj-enabled .mspj4-nav .mspj4-tab{scroll-margin-top:110px}
.mspj-enabled .mspj4-quote[data-mspj8-selected='1']{background:var(--mspj7-main,#284f42)!important;border-color:var(--mspj7-main,#284f42)!important}
@media(max-width:860px){.mspj-enabled .mspj8-sport-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mspj-enabled .mspj8-gallery-tile:first-child{grid-column:span 2;grid-row:span 1;aspect-ratio:16/9}}
@media(max-width:480px){.mspj-enabled .mspj8-sport-photo-grid{gap:5px;padding:9px}.mspj-enabled .mspj8-gallery-tile{aspect-ratio:1/1}}
@media(prefers-reduced-motion:reduce){.mspj-enabled .mspj8-gallery-tile img{transition:none}}

/* V8 final: unified media, stable alternative-sport cards, compact footer */
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{margin-bottom:15px!important;padding-bottom:0!important}
#detailPageRoot.mspj-enabled>.container.py-4,#detailSportPageRoot.mspj-enabled>.container.py-4{padding-bottom:0!important;margin-bottom:0!important}
.mspj-enabled .mspj8-video-wrap{aspect-ratio:16/9;width:100%;max-height:650px;overflow:hidden;background:#10161c;margin:0;padding:0}
.mspj-enabled .mspj8-video-wrap iframe{display:block;width:100%!important;height:100%!important;aspect-ratio:16/9;max-width:none!important;max-height:none!important;border:0!important;border-radius:0!important}
.mspj-enabled .mspj6-more-sports .sport-two-col-layout{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;grid-auto-flow:row!important;width:100%!important;gap:14px!important;margin:0!important}
.mspj-enabled .mspj6-more-sports .sport-two-col-layout>.col-12{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;flex:none!important;padding:0!important}
.mspj-enabled .mspj6-more-sports .sport-item{display:flex!important;flex-direction:column!important;min-width:0!important;width:100%!important;max-width:none!important;min-height:215px;overflow-wrap:break-word!important;word-break:normal!important}
.mspj-enabled .mspj6-more-sports .sport-card-title-link{display:flex!important;align-items:center;min-width:0!important;gap:9px;overflow-wrap:break-word!important;word-break:normal!important;hyphens:auto}
.mspj-enabled .mspj6-more-sports .sport-card-title-link img{margin-right:4px!important;flex:0 0 40px}
.mspj-enabled .mspj6-more-sports .sport-card-description{line-height:1.5!important;word-break:normal!important;overflow-wrap:break-word!important}
.mspj-enabled .mspj6-more-sports .sport-detail-btn{margin-top:auto!important}
@media(max-width:420px){.mspj-enabled .mspj6-more-sports .sport-two-col-layout{grid-template-columns:minmax(0,1fr)!important}}

/* V8: sticky tab clickability and viewport-safe outer layout */
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{box-sizing:border-box!important;max-width:100%!important}
.mspj-enabled .mspj4-nav .mspj4-tab{pointer-events:auto!important;touch-action:manipulation;cursor:pointer!important}
.mspj-enabled .mspj4-stage>section,.mspj-enabled .mspj6-region-stack,.mspj-enabled .mspj4-more-sports{min-width:0;max-width:100%;box-sizing:border-box}

/* MAD SPORTS PRO | V9 unified sport + hotel detail refinement
   Brand red is reserved for quote actions; every other accent comes from the
   currently selected sport's own palette. No shared green secondary theme. */
#detailPageRoot.mspj-enabled,
#detailSportPageRoot.mspj-enabled {
  --mspj9-accent:var(--mspj4-green);
  --mspj9-dark:var(--mspj4-deep);
  --mspj9-pale:color-mix(in srgb,var(--mspj9-accent) 7%,#fff);
  --mspj9-mid:color-mix(in srgb,var(--mspj9-accent) 18%,#fff);
  --mspj9-line:color-mix(in srgb,var(--mspj9-accent) 24%,#e5e9ee);
  --mspj4-soft:var(--mspj9-pale);
  --mspj4-line:#dee4e8;
  --mspj7-main:var(--mspj9-accent);
  --mspj7-deep:var(--mspj9-dark);
  --mspj7-line:var(--mspj9-line);
  --mspj7-pale:var(--mspj9-pale);
  color:#1d2835;
}
.mspj-enabled .mspj4-stage{gap:13px!important;min-width:0!important}
.mspj-enabled .mspj4-stage > *{min-width:0;max-width:100%}
.mspj-enabled .mspj4-section-head,
.mspj-enabled .mspj4-region-row .region-hotels-heading,
.mspj-enabled .mspj4-equipment .mspj4-section-head,
.mspj-enabled .mspj4-matrix .mspj4-section-head{
  background:var(--mspj9-pale)!important;
  border-bottom-color:var(--mspj9-line)!important;
}
.mspj-enabled .mspj4-head-icon,.mspj-enabled .mspj4-brand-symbol,
.mspj-enabled .mspj4-icon-box,.mspj-enabled .mspj4-head-count,
.mspj-enabled .mspj4-inventory-index{
  background:var(--mspj9-accent)!important;
  border-color:var(--mspj9-accent)!important;
}
.mspj-enabled .mspj4-nav{border-top:2px solid var(--mspj9-accent)!important}
.mspj-enabled .mspj4-tab.is-active{box-shadow:inset 0 -3px 0 var(--mspj9-accent)!important}
.mspj-enabled .mspj4-tab:focus-visible,.mspj-enabled .mspj4-stage button:focus-visible,
.mspj-enabled .mspj4-stage a:focus-visible{outline:3px solid var(--mspj9-accent)!important;outline-offset:2px!important}
.mspj-enabled .mspj4-icon-button:hover,.mspj-enabled .mspj4-hotel-link:hover{
  color:var(--mspj9-accent)!important;border-color:var(--mspj9-accent)!important;background:var(--mspj9-pale)!important;
}
.mspj-enabled .mspj4-quote,
.mspj-enabled .mspj9-detail-cta{
  background:#ed1729!important;color:#fff!important;border:1px solid #ed1729!important;
  box-shadow:none!important;text-decoration:none!important;
}
.mspj-enabled .mspj4-quote:hover,.mspj-enabled .mspj9-detail-cta:hover{
  background:#ca1020!important;color:#fff!important;border-color:#ca1020!important;
}
.mspj-enabled .mspj4-quote[data-mspj8-selected="1"]{
  background:var(--mspj9-accent)!important;border-color:var(--mspj9-accent)!important;
}
.mspj-enabled .mspj4-quickstat,
.mspj-enabled .mspj4-feature.is-available,
.mspj-enabled .mspj4-highlight-grid > div,
.mspj-enabled .mspj4-fast-grid > div,
.mspj-enabled .mspj4-capacity > div,
.mspj-enabled .mspj5-distance{
  background:var(--mspj9-pale)!important;border-color:var(--mspj9-line)!important;
}
.mspj-enabled .mspj4-quickstat > i,
.mspj-enabled .mspj4-feature.is-available i,
.mspj-enabled .mspj4-capacity > div strong,
.mspj-enabled .mspj4-fast-grid > div i,
.mspj-enabled .mspj4-pills i,
.mspj-enabled .mspj4-verified i,
.mspj-enabled .mspj4-mini-kicker{
  color:var(--mspj9-accent)!important;
}
.mspj-enabled .mspj4-hotel,.mspj-enabled .mspj4-training,.mspj-enabled .mspj4-overview,
.mspj-enabled .mspj4-card{border-color:#dfe5e8!important;border-radius:4px!important}
.mspj-enabled .mspj4-overview-header h1{overflow-wrap:break-word;hyphens:auto}
.mspj-enabled .mspj4-hero-gallery{overflow:hidden;border-radius:4px}
/* Every registered accommodation/sport concept is displayed, without ID labels. */
.mspj-enabled .mspj9-concept-list{
  display:flex;align-items:center;flex-wrap:wrap;gap:7px;
  padding:11px 9px 2px;background:#fff;min-width:0;
}
.mspj-enabled .mspj9-concept-list > span:first-child{
  display:inline-flex;align-items:center;gap:7px;color:var(--mspj9-dark);font-size:11px;font-weight:850;
}
.mspj-enabled .mspj9-concept-chip{
  display:inline-flex;align-items:center;max-width:100%;background:var(--mspj9-pale);border:1px solid var(--mspj9-line);
  color:var(--mspj9-dark);padding:6px 9px;border-radius:3px;font-size:11px;font-weight:700;overflow-wrap:anywhere;
}
/* Only ONE sport photo gallery, always the same shared hero component. */
.mspj-enabled .mspj8-sport-gallery,.mspj-enabled .mspj8-sport-photo-grid,
.mspj-enabled .mspj4-gallery-footer,.mspj-enabled .mspj4-photostrip,
.mspj-enabled .mspj8-legacy-media{display:none!important}
/* Video stays compact, closed by default, until explicitly opened. */
.mspj-enabled .mspj9-video-accordion{overflow:hidden!important}
.mspj-enabled .mspj9-video-accordion .mspj4-accordion-button{width:100%;background:var(--mspj9-pale)!important}
.mspj-enabled .mspj9-video-accordion .mspj4-accordion-body[hidden]{display:none!important}
.mspj-enabled .mspj9-video-content{padding:12px!important;overflow:hidden}
.mspj-enabled .mspj9-original-video{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;flex:1 1 auto!important;}
.mspj-enabled .mspj9-original-video .ratio,
.mspj-enabled .mspj9-original-video #detailHotelVideoWrap{
  width:min(100%,820px)!important;max-width:820px!important;aspect-ratio:16/9!important;height:auto!important;
  margin:0 auto!important;position:relative!important;overflow:hidden!important;
}
.mspj-enabled .mspj9-video-content iframe{
  width:100%!important;max-width:100%!important;aspect-ratio:16/9!important;
  height:auto!important;min-height:0!important;border:0!important;display:block;
}
/* Hotel detail is never a sport-inventory or pitch-information page. */
#detailPageRoot.mspj-v4-ready .mspj4-training,
#detailPageRoot.mspj-v4-ready .mspj7-inventory-body{display:none!important}
#detailPageRoot.mspj-v4-ready .mspj4-more-sports{
  display:block!important;
}
/* Other sports: fix columns that became 100px-wide cards due to Bootstrap width rule. */
.mspj-enabled .mspj9-sport-offers{border-left:10px solid var(--mspj9-accent)!important;min-width:0;overflow:hidden}
.mspj-enabled .mspj9-sport-offers :is(#otherSportsList,#hotelSportsList,.sports-collapse-wrap,.sports-grid){
  min-width:0!important;width:100%!important;max-width:100%!important;display:block!important;
}
.mspj-enabled .mspj9-sport-offers .sport-two-col-layout,
.mspj-enabled .mspj9-sport-offers .row.sport-two-col-layout{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  margin:0!important;padding:0!important;gap:12px!important;
}
.mspj-enabled .mspj9-sport-offers .sport-two-col-layout > *,
.mspj-enabled .mspj9-sport-offers .sport-two-col-layout > .col-12,
.mspj-enabled .mspj9-sport-offers .sport-two-col-layout > .col-lg-4{
  display:block!important;grid-column:auto!important;min-width:0!important;
  max-width:100%!important;width:100%!important;flex:initial!important;flex-basis:auto!important;
  margin:0!important;padding:0!important;
}
.mspj-enabled .mspj9-sport-offers .sport-item{
  display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;min-height:200px!important;
  padding:15px!important;margin:0!important;border:1px solid var(--mspj9-line)!important;
  border-left:4px solid var(--mspj9-accent)!important;border-radius:3px!important;
  background:var(--mspj9-pale)!important;overflow:visible!important;
}
.mspj-enabled .mspj9-sport-offers .sport-card-title-link{
  display:flex!important;gap:10px!important;align-items:center!important;font-size:14px!important;
  font-weight:850!important;line-height:1.35!important;color:var(--mspj9-dark)!important;
  word-break:normal!important;overflow-wrap:break-word!important;hyphens:auto!important;min-width:0!important;
}
.mspj-enabled .mspj9-sport-offers .sport-card-title-link img{flex:0 0 40px!important;max-width:40px!important}
.mspj-enabled .mspj9-sport-offers .sport-card-description{
  font-size:12px!important;line-height:1.55!important;overflow-wrap:break-word!important;
  word-break:normal!important;margin:7px 0 12px!important;padding:0!important;flex:1 1 auto!important;
}
.mspj-enabled .mspj9-detail-cta{
  display:flex!important;justify-content:center!important;align-items:center!important;
  width:100%!important;min-height:42px!important;margin-top:auto!important;padding:8px 12px!important;
  border-radius:3px!important;text-transform:uppercase!important;font-size:12px!important;
  font-weight:850!important;letter-spacing:.025em!important;
}
/* The two hotel carousels are stacked and use sport-toned cards. */
.mspj-enabled .mspj6-region-stack{display:flex!important;flex-direction:column!important;gap:12px!important}
.mspj-enabled .mspj6-region-stack > .region-hotels-section{width:100%!important;max-width:100%!important;margin:0!important}
.mspj-enabled .mspj6-region-stack .region-hotels-heading{background:var(--mspj9-pale)!important;border-color:var(--mspj9-line)!important}
.mspj-enabled .mspj6-region-stack .region-hotel-card:hover{border-color:var(--mspj9-accent)!important}
/* Profile-photo maps: subtler edge but retain exact circle and clickable cards. */
.mspj-enabled .mspj5-map-pin{
  border:3px solid var(--mspj9-accent)!important;border-radius:50%!important;
  box-shadow:0 0 0 2px #fff,0 7px 22px rgba(9,26,36,.27)!important;
}
.mspj-enabled .mspj5-place-photo{
  border:3px solid var(--mspj9-accent)!important;border-radius:50%!important;
}
.mspj-enabled .mspj5-place-choice{
  border-color:var(--mspj9-line)!important;background:#fff!important;cursor:pointer!important;
}
.mspj-enabled .mspj5-place-choice.is-active,.mspj-enabled .mspj5-place-choice:hover{
  background:var(--mspj9-pale)!important;border-color:var(--mspj9-accent)!important;
}
.mspj-enabled .mspj4-map-grid,.mspj-enabled .mspj5-map-grid{min-width:0!important}
.mspj-enabled .mspj7-inventory-table :is(th,td){overflow-wrap:anywhere}
.mspj-enabled .mspj7-inventory-table th{background:var(--mspj9-pale)!important;border-color:var(--mspj9-line)!important}
.mspj-enabled .mspj7-inventory-table .mspj7-spec-pill{background:var(--mspj9-pale)!important;border-color:var(--mspj9-line)!important}
/* Avoid large whitespace before the site's shared footer. */
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{margin-bottom:15px!important;padding-bottom:0!important}
#detailPageRoot.mspj-enabled > .container,#detailSportPageRoot.mspj-enabled > .container{
  padding-bottom:0!important;margin-bottom:0!important;
}
.mspj-enabled .mspj4-stage > :last-child{margin-bottom:0!important}
@media(max-width:1024px){
 .mspj-enabled .mspj9-sport-offers .sport-two-col-layout{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .mspj-enabled .mspj4-stage{gap:11px!important}
 .mspj-enabled .mspj4-overview{padding:12px!important}
}
@media(max-width:640px){
 .mspj-enabled .mspj9-sport-offers .sport-two-col-layout{grid-template-columns:minmax(0,1fr)!important}
 .mspj-enabled .mspj4-stage{gap:9px!important}
 .mspj-enabled .mspj4-nav .mspj4-tab{font-size:10px!important;min-height:40px!important}
 .mspj-enabled .mspj9-concept-list{gap:5px}
 .mspj-enabled .mspj9-concept-chip{font-size:10px;padding:5px 7px}
 .mspj-enabled .mspj9-sport-offers{padding:12px!important}
 .mspj-enabled .mspj4-section-head{padding:11px!important;gap:10px!important}
 .mspj-enabled .mspj9-video-content{padding:5px!important}
}
@media(prefers-reduced-motion:reduce){
 .mspj-enabled .mspj4-stage *{transition-duration:.01ms!important;animation-duration:.01ms!important}
}

/* Resilient photo marker for Google embed fallback when Leaflet is blocked. */
.mspj-enabled .mspj5-map-canvas{position:relative!important;isolation:isolate}
.mspj-enabled .mspj9-fallback-pin{
 position:absolute;z-index:12;top:50%;left:50%;transform:translate(-50%,-75%);
 display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
 pointer-events:none;filter:drop-shadow(0 5px 12px rgba(12,25,37,.22));
}
.mspj-enabled .mspj9-fallback-pin[hidden]{display:none!important}
.mspj-enabled .mspj9-fallback-avatar{
 width:70px;height:70px;display:grid;place-items:center;aspect-ratio:1/1;overflow:hidden;
 border:3px solid var(--mspj9-accent);border-radius:50%;background:#fff;
 box-shadow:0 0 0 3px #fff;color:var(--mspj9-accent);
}
.mspj-enabled .mspj9-fallback-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.mspj-enabled .mspj9-fallback-avatar i{font-size:26px}
.mspj-enabled .mspj9-fallback-pin small{max-width:180px;padding:4px 8px;line-height:1.25;
 color:#18232d;background:#fff;border:1px solid #e4e8eb;border-radius:3px;
 font-size:11px;font-weight:850;white-space:normal;text-align:center}

/* ============================================================
   MAD SPORTS PRO · V10 | review placement + branded loader
   Works across all 15 disciplines and localized hotel pages.
   ============================================================ */
/* V15: the sitewide loader is the only loader. */
/* The original Write Review link is moved, not duplicated. The original
   PHP href and any event callbacks continue to work unchanged. */
.mspj-enabled .mspj10-overview-actions{display:flex;flex-direction:column;align-items:flex-end;gap:11px;min-width:180px;max-width:260px}
.mspj-enabled .mspj10-write-review{
 display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
 padding:12px 14px!important;min-height:43px;max-width:100%;width:auto;
 border:1px solid var(--mspj9-accent,#c51227)!important;border-radius:3px!important;
 background:var(--mspj9-pale,#fff4f5)!important;color:var(--mspj9-dark,#87142a)!important;
 font-size:12px!important;font-weight:850!important;letter-spacing:.01em!important;
 text-align:center!important;line-height:1.25!important;text-decoration:none!important;
 white-space:normal!important;overflow-wrap:break-word;
 box-shadow:0 3px 8px rgba(17,24,39,.05);
 transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease;
}
.mspj-enabled .mspj10-write-review:hover,.mspj-enabled .mspj10-write-review:focus-visible{
 transform:translateY(-1px);background:var(--mspj9-accent,#c51227)!important;
 color:#fff!important;outline-offset:3px;
}
.mspj-enabled .mspj10-write-review i{font-size:16px!important;flex-shrink:0}
.mspj-enabled .mspj10-old-review-hidden{display:none!important}
@media(max-width:760px){
 .mspj-enabled .mspj4-overview-header{flex-wrap:wrap;align-items:stretch}
 .mspj-enabled .mspj4-overview-header>div:first-child{flex:1 1 100%}
 .mspj-enabled .mspj10-overview-actions{min-width:0;width:100%;max-width:100%;flex-direction:row;align-items:center;justify-content:flex-start}
 .mspj-enabled .mspj10-write-review{min-height:40px;width:auto;font-size:11px!important}
}
@media(prefers-reduced-motion:reduce){
 .mspj10-write-review{animation:none!important;transition:none!important}
}

/* Reserve breathing room below the fixed navigation before the first heading. */
.mspj-enabled .mspj6-nav-spacer{min-height:88px!important}

/* V11: Route-mode isolation. Generic hotel = accommodation only + sports offer links. */
#detailPageRoot.mspj-v4-ready #sportInfoSection,
#detailPageRoot.mspj-v4-ready #sportPitches,
#detailPageRoot.mspj-v4-ready #sportBlockGroup,
#detailPageRoot.mspj-v4-ready #sportMediaSection,
#detailPageRoot.mspj-v4-ready #sportCommonFeatures {display:none!important;}
#detailPageRoot.mspj-v4-ready .mspj4-sports-offers,
#detailPageRoot.mspj-v4-ready .mspj9-sport-offers {display:block;}


/* MAD SPORTS PRO · V12 — header clearance, tidy offers, hotel-card galleries */
#detailPageRoot.mspj-enabled .mspj6-nav-spacer,
#detailSportPageRoot.mspj-enabled .mspj6-nav-spacer{min-height:100px!important;}
#detailPageRoot.mspj-v4-ready .mspj4-overview,
#detailSportPageRoot.mspj-v4-ready .mspj4-overview{margin-top:24px!important;}
.mspj-enabled .mspj4-overview-header{padding-top:7px!important;min-height:70px;}
.mspj-enabled .mspj10-overview-actions{padding-top:3px;flex-shrink:0;}
/* The original sports lists already have ONE 10px accent border outside.
   Remove their nested wrappers' second border without deleting the cards. */
.mspj-enabled .mspj9-sport-offers :is(#addSportsSection,#otherSportsSection,
  #hotelSportsList,#otherSportsList,.sports-collapse-wrap,.sports-grid){
  border:0!important;outline:0!important;box-shadow:none!important;
  padding:0!important;margin:0!important;background:transparent!important;
  min-width:0!important;max-width:100%!important;
}
.mspj-enabled .mspj9-sport-offers > :is(div,section){
  border:0!important;box-shadow:none!important;outline:0!important;
}
.mspj-enabled .mspj9-sport-offers .sport-item{
  border:1px solid var(--mspj9-line)!important;
  border-left:4px solid var(--mspj9-accent)!important;
  padding:16px!important;min-width:0!important;
}
/* Each recently viewed / nearby hotel card now navigates ITS OWN photography.
   These are separate from the horizontal list-scroll arrows in the heading. */
.mspj-enabled .mspj12-photo-card .card-visual{position:relative!important;isolation:isolate;}
.mspj-enabled .mspj12-photo-card .card-visual .card-img{transition:opacity .18s ease;}
.mspj-enabled .mspj12-photo-controls{
  position:absolute;z-index:9;inset:0;display:flex;align-items:center;
  justify-content:space-between;padding:0 7px;pointer-events:none;
}
.mspj-enabled .mspj12-photo-controls button{
  width:35px;height:42px;display:grid;place-items:center;flex:none;
  pointer-events:auto;cursor:pointer;position:relative;z-index:10;
  border:1px solid rgba(255,255,255,.84)!important;border-radius:3px!important;
  background:var(--mspj9-accent)!important;color:#fff!important;
  box-shadow:0 4px 11px #0003!important;font-size:16px!important;
  transition:filter .18s ease,transform .18s ease;
}
.mspj-enabled .mspj12-photo-controls button:hover,
.mspj-enabled .mspj12-photo-controls button:focus-visible{
  filter:brightness(.88);transform:scale(1.04);outline:2px solid white;outline-offset:2px;
}
.mspj-enabled .mspj12-photo-counter{
  align-self:flex-end;margin-bottom:8px;padding:5px 7px;
  background:#112320ce;color:#fff;border-radius:3px;
  font-size:10px;font-weight:850;letter-spacing:.035em;pointer-events:none;
}
.mspj-enabled .mspj12-photo-controls.is-loading button{opacity:.65;cursor:progress;}
.mspj-enabled .mspj12-photo-controls.is-single button{opacity:.5;}
.mspj-enabled .mspj12-photo-card .stretched-link::after{z-index:1!important;}
.mspj-enabled .mspj12-photo-card .region-hotel-image-link{position:relative;z-index:2;}
/* Strict removal of obsolete fast-access section across hotel / sport roots. */
.mspj-enabled .mspj7-quick-access,
.mspj-enabled .mspj8-quick-access,
.mspj-enabled [data-mspj-quick-access]{display:none!important;}
.mspj-enabled .mspj4-stage{padding-bottom:0!important;margin-bottom:0!important;}
.mspj-enabled .mspj6-region-stack{margin-bottom:0!important;}
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{margin-bottom:15px!important;}
@media(max-width:760px){
 #detailPageRoot.mspj-v4-ready .mspj4-overview,
 #detailSportPageRoot.mspj-v4-ready .mspj4-overview{margin-top:14px!important;}
 .mspj-enabled .mspj12-photo-controls button{width:31px;height:37px;}
 .mspj-enabled .mspj12-photo-counter{font-size:9px;}
}
@media(prefers-reduced-motion:reduce){
 .mspj-enabled .mspj12-photo-controls button{transition:none!important;}
}


/* MAD SPORTS PRO — V13 targeted corrections · inherited 15 sport palettes */
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{
 --mspj13-main:var(--mspj9-accent,var(--mspj4-green));
 --mspj13-soft:color-mix(in srgb,var(--mspj13-main) 7%,white);
 --mspj13-line:color-mix(in srgb,var(--mspj13-main) 24%,white);
}
/* Selected sport icon replaces the generic cup in the fixed brand / sport heading. */
.mspj-enabled .mspj13-sport-icon{display:block!important;object-fit:contain!important;width:30px!important;height:30px!important;max-width:100%;max-height:100%;flex:none!important}
.mspj-enabled .mspj4-brand-symbol .mspj13-sport-icon{width:29px!important;height:29px!important}
.mspj-enabled .mspj4-head-icon .mspj13-sport-icon{width:25px!important;height:25px!important}
.mspj-enabled .mspj13-icon-fallback[hidden],.mspj-enabled .mspj13-sport-icon[hidden]{display:none!important}
/* Hotel highlights use the selected discipline, not the legacy shared green. */
#detailSportPageRoot.mspj-enabled .mspj4-hotel-highlights .mspj4-highlight-grid>div,
#detailPageRoot.mspj-enabled .mspj4-hotel-highlights .mspj4-highlight-grid>div{
 background:var(--mspj13-soft)!important;border:1px solid var(--mspj13-line)!important;
}
#detailSportPageRoot.mspj-enabled .mspj4-hotel-highlights .mspj4-highlight-grid>div>i,
#detailPageRoot.mspj-enabled .mspj4-hotel-highlights .mspj4-highlight-grid>div>i{
 background:var(--mspj13-main)!important;color:#fff!important;
 box-shadow:none!important;border:0!important;
}
#detailSportPageRoot.mspj-enabled .mspj4-hotel-highlights .mspj4-highlight-grid strong,
#detailPageRoot.mspj-enabled .mspj4-hotel-highlights .mspj4-highlight-grid strong{
 color:var(--mspj9-dark,var(--mspj13-main))!important;
}
/* 1–5 sport choices fit on exactly one desktop row. 6+ show three per row. */
@media(min-width:1025px){
 .mspj-enabled .mspj9-sport-offers .sport-two-col-layout,
 .mspj-enabled .mspj9-sport-offers .row.sport-two-col-layout{
   display:grid!important;grid-template-columns:repeat(var(--mspj13-cols,3),minmax(0,1fr))!important;
   max-width:100%!important;gap:12px!important;grid-auto-flow:row;
 }
 .mspj-enabled .mspj13-offers-single-row .sport-two-col-layout{
   max-width:min(100%,calc(var(--mspj13-count,1)*420px))!important;
 }
}
@media(min-width:641px) and (max-width:1024px){
 .mspj-enabled .mspj9-sport-offers .sport-two-col-layout,
 .mspj-enabled .mspj9-sport-offers .row.sport-two-col-layout{
   grid-template-columns:repeat(min(3,var(--mspj13-cols,3)),minmax(0,1fr))!important;
 }
}
@media(max-width:640px){
 .mspj-enabled .mspj9-sport-offers .sport-two-col-layout,
 .mspj-enabled .mspj9-sport-offers .row.sport-two-col-layout{
  grid-template-columns:minmax(0,1fr)!important;
 }
}
/* Map profile images: true circles with subtle discipline-toned outlines. */
.mspj-enabled .mspj5-map-pin,.mspj-enabled .mspj5-place-photo{
 width:60px!important;height:60px!important;aspect-ratio:1/1!important;
 flex:0 0 60px!important;border-radius:50%!important;
 border:3px solid var(--mspj13-main)!important;background:#fff!important;overflow:hidden!important;
 box-sizing:border-box!important;
}
.mspj-enabled .mspj5-map-pin img,.mspj-enabled .mspj5-place-photo img{
 width:100%!important;height:100%!important;border-radius:50%!important;object-fit:cover!important;
}
/* Fallback map keeps location/photo visible even if external map scripts or tiles fail. */
.mspj-enabled .mspj5-map-main{isolation:isolate;}
.mspj-enabled .mspj9-fallback-pin{z-index:8!important;pointer-events:none!important;}
.mspj-enabled .mspj9-fallback-avatar{display:grid!important;place-items:center;border-radius:50%!important;
 aspect-ratio:1/1!important;border:3px solid var(--mspj13-main)!important;box-shadow:0 0 0 3px white,0 9px 20px #11223344!important;
 overflow:hidden!important;background:white!important;}
.mspj-enabled .mspj9-fallback-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:50%!important;}
.mspj-enabled .mspj9-fallback-pin.mspj13-search-preview{bottom:14px!important;top:auto!important;transform:translateX(-50%)!important;}
.mspj-enabled .mspj13-map-geosearch::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 38px,#556b6130 39px,#556b6130 40px);pointer-events:none;z-index:0;opacity:.22;}
@media(prefers-reduced-motion:reduce){.mspj-enabled .mspj5-map-pin,.mspj-enabled .mspj13-sport-icon{transition:none!important}}

/* V13 final: one or two cards should not become oversized; tablet cards stay legible. */
@media (min-width:1025px){
 #detailPageRoot.mspj-enabled .mspj9-sport-offers.mspj13-offers-single-row .sport-two-col-layout,
 #detailSportPageRoot.mspj-enabled .mspj9-sport-offers.mspj13-offers-single-row .sport-two-col-layout{
   width:min(100%,calc(var(--mspj13-count,1)*420px + (var(--mspj13-count,1) - 1)*12px))!important;
 }
}
@media (min-width:641px) and (max-width:1024px){
 #detailPageRoot.mspj-enabled .mspj9-sport-offers .sport-two-col-layout,
 #detailSportPageRoot.mspj-enabled .mspj9-sport-offers .sport-two-col-layout{
   grid-template-columns:repeat(min(2,var(--mspj13-cols,2)),minmax(0,1fr))!important;
 }
}
/* Distance ribbons must be visible outside the round pin itself. */
.mspj-enabled .mspj5-map-pin{overflow:visible!important;}
.mspj-enabled .mspj5-map-pin img{clip-path:circle(50% at 50% 50%);}


/* V14 map canvas fix retained. V15 removed obsolete duplicate loader styles. */
/* Specificity and source order intentionally override old V9 'position:relative'. */
#detailPageRoot.mspj-enabled .mspj14-map-host,
#detailSportPageRoot.mspj-enabled .mspj14-map-host{
  position:absolute!important;left:0!important;right:0!important;top:0!important;bottom:0!important;
  inset:0!important;width:100%!important;height:100%!important;min-height:100%!important;
  display:block!important;overflow:hidden!important;isolation:isolate;
  background:var(--mspj9-pale,#edf3ef)!important;
}
#detailPageRoot.mspj-enabled .mspj5-map-main,
#detailSportPageRoot.mspj-enabled .mspj5-map-main{
  position:relative!important;overflow:hidden!important;min-height:340px!important;
}
#detailPageRoot.mspj-enabled .mspj14-map-host .mspj5-leaflet-canvas,
#detailSportPageRoot.mspj-enabled .mspj14-map-host .mspj5-leaflet-canvas,
#detailPageRoot.mspj-enabled .mspj14-map-host .mspj5-search-iframe,
#detailSportPageRoot.mspj-enabled .mspj14-map-host .mspj5-search-iframe{
  display:block!important;position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;min-height:100%!important;
}
#detailPageRoot.mspj-enabled .mspj14-map-host .mspj5-search-iframe[hidden],
#detailSportPageRoot.mspj-enabled .mspj14-map-host .mspj5-search-iframe[hidden]{display:none!important;}
.mspj-enabled .mspj14-map-host .mspj9-fallback-pin{z-index:12!important;}
.mspj-enabled .mspj14-map-host .mspj9-fallback-pin .mspj9-fallback-avatar{
  width:68px!important;height:68px!important;border-width:5px!important;
  border-radius:50%!important;overflow:hidden!important;
}
.mspj-enabled .mspj14-map-host .mspj9-fallback-pin img{height:100%!important;width:100%!important;object-fit:cover!important;border-radius:50%!important;}
/* If browser explicitly blocks iframe navigation, show an unobtrusive status.
 * Never cover a healthy map with a fake geographic drawing. */
.mspj-enabled .mspj14-map-service-error[hidden]{display:none!important;}
@media(max-width:640px){
  #detailPageRoot.mspj-enabled .mspj5-map-main,
  #detailSportPageRoot.mspj-enabled .mspj5-map-main{min-height:300px!important;}
}

/* MAD SPORTS PRO V15 | verified product quality mark — fixed blue, NOT sport themed. */
.mspj-enabled .mspj4-verified.mspj15-verified-host{
  display:inline-flex!important;position:relative;color:#172238!important;
  text-transform:none!important;letter-spacing:0!important;max-width:100%;
}
.mspj-enabled .mspj15-verification{
  display:inline-flex;position:relative;align-items:center;flex-wrap:wrap;gap:5px;
  border:1px solid #cbdcfb;border-radius:4px;padding:7px 9px;
  background:#f5f9ff;line-height:1.35;max-width:100%;
}
.mspj-enabled .mspj15-verification-name{
  font-weight:900;font-size:11px;color:#202b3e;white-space:nowrap;letter-spacing:.015em;
}
.mspj-enabled .mspj15-verification-title{
  font-weight:800;font-size:11px;color:#254c88;overflow-wrap:anywhere;
}
.mspj-enabled .mspj15-verification-trigger{
  flex:0 0 auto;display:inline-grid;place-items:center;width:28px;height:28px;
  background:transparent;border:0;border-radius:50%;padding:2px;cursor:help;
  color:#1877f2!important;transition:transform .18s ease;
}
.mspj-enabled .mspj15-verification-trigger:hover{transform:scale(1.1)}
.mspj-enabled .mspj15-verification-trigger i,
.mspj-enabled .mspv-verified .mspj15-blue-check{
  font-size:22px!important;color:#1877f2!important;line-height:1;
}
.mspj-enabled .mspj15-verification-trigger:focus-visible{
  outline:2px solid #1877f2!important;outline-offset:2px!important;
}
.mspj-enabled .mspj15-verification-tooltip{
  display:block;position:absolute;z-index:1200;top:calc(100% + 10px);right:0;
  width:max-content;max-width:min(340px,85vw);padding:12px 15px;
  border:1px solid #bed5f8;border-radius:4px;
  background:#16283f;color:#fff!important;
  text-align:start;white-space:normal;font-size:12px;font-weight:500;
  letter-spacing:0;text-transform:none;line-height:1.6;
  box-shadow:0 14px 28px rgba(7,30,65,.21);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateY(-5px);transition:opacity .18s ease,transform .18s ease,visibility .18s;
}
.mspj-enabled .mspj15-verification-tooltip::before{
  content:'';position:absolute;right:12px;bottom:100%;border:7px solid transparent;
  border-bottom-color:#16283f;
}
.mspj-enabled .mspj15-verification:hover .mspj15-verification-tooltip,
.mspj-enabled .mspj15-verification:focus-within .mspj15-verification-tooltip,
.mspj-enabled .mspj15-verification.is-open .mspj15-verification-tooltip{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);
}
.mspj-enabled .mspj4-overview,.mspj-enabled .mspj4-overview-header,
.mspj-enabled .mspj10-overview-actions{overflow:visible!important;}
@media(max-width:490px){
  .mspj-enabled .mspj4-verified.mspj15-verified-host{display:inline-flex!important;}
  .mspj-enabled .mspj15-verification{padding:5px 7px;gap:3px;}
  .mspj-enabled .mspj15-verification-tooltip{max-width:min(280px,86vw);}
}
@media(prefers-reduced-motion:reduce){
  .mspj-enabled .mspj15-verification-tooltip,
  .mspj-enabled .mspj15-verification-trigger{transition:none!important;}
}

/* Related and recently viewed verified inventory: consistent platform-blue check. */
.mspj-enabled .region-hotel-verified.mspj15-blue-check{color:#1877f2!important;}
.mspj-enabled .region-hotel-verified.mspj15-blue-check:focus-visible{outline:2px solid #1877f2;outline-offset:3px;}

/* MSP V16: remove duplicate clearance inherited from V11/V12 without
   sacrificing the actual measured height of the fixed tab navigation. */
#detailPageRoot.mspj-enabled .mspj6-nav-spacer,
#detailSportPageRoot.mspj-enabled .mspj6-nav-spacer {min-height:0!important;}
#detailPageRoot.mspj-v4-ready .mspj4-overview,
#detailSportPageRoot.mspj-v4-ready .mspj4-overview {margin-top:8px!important;}
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled {margin-top:8px!important;}
.mspj-enabled [id^="mspj4"] {scroll-margin-top:calc(var(--mspj4-nav-offset,0px) + 90px);}
/* Locale-preserving uppercase visual captions. Do not uppercase actual hotel names. */
.mspj-enabled .mspj5-place-text small,
.mspj-enabled .mspj5-distance-label,
.mspj-enabled .mspj4-map-choice small {text-transform:uppercase!important;}

/* 2026-11-01 r3 | platform-blue verified tick adjacent to hotel name. */
.mspj-enabled .mspj4-overview-header h1 .mspj15-verified-host{
  display:inline-flex!important;vertical-align:baseline!important;position:relative!important;
  margin-inline-start:9px!important;white-space:nowrap!important;
  line-height:1!important;max-width:none!important;transform:translateY(1px);
}
.mspj-enabled .mspj4-overview-header h1 .mspj15-verification{
  display:inline-flex!important;padding:0!important;margin:0!important;border:0!important;
  background:transparent!important;gap:0!important;vertical-align:middle!important;
}
.mspj-enabled .mspj4-overview-header h1 .mspj15-verification-trigger{
  width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;
  padding:0!important;display:grid!important;place-items:center!important;
}
.mspj-enabled .mspj4-overview-header h1 .mspj15-verification-trigger i{
  color:#1877f2!important;font-size:22px!important;line-height:1!important;
  filter:drop-shadow(0 1px 1px rgba(20,75,170,.10));
}
.mspj-enabled .mspj4-overview-header h1 .mspj15-verification-tooltip{
  font-size:12px!important;font-weight:550!important;text-transform:none!important;
  letter-spacing:normal!important;z-index:10000!important;
}
@media(max-width:600px){.mspj-enabled .mspj4-overview-header h1 .mspj15-verified-host{margin-inline-start:5px!important;}}

/* 2026-11-01 r4 | Verification: branded modal. Never use the old overflow tooltip. */
.mspj-enabled .mspj15-verification-tooltip{display:none!important;}
.msp-verify-modal[hidden]{display:none!important;}
.msp-verify-modal{position:fixed!important;inset:0!important;z-index:2147483600!important;box-sizing:border-box!important;display:grid!important;place-items:center!important;overflow-y:auto!important;padding:20px!important;padding-top:max(20px,env(safe-area-inset-top))!important;padding-bottom:max(20px,env(safe-area-inset-bottom))!important;background:rgba(8,13,23,.68)!important;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);}
.msp-verify-modal__surface{position:relative;box-sizing:border-box;width:min(100%,420px);max-height:calc(100dvh - 40px);overflow-y:auto;background:#fff;color:#1c2634;text-align:center;padding:36px 26px 28px;border-radius:10px;border:1px solid #e1e6eb;box-shadow:0 30px 95px #08111d55;font-family:Inter,system-ui,-apple-system,Arial,sans-serif;}
.msp-verify-modal__logo{display:block;width:clamp(170px,52vw,240px);height:auto;max-height:82px;object-fit:contain;margin:0 auto 23px;}
.msp-verify-modal__seal{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 14px;border:1px solid #b4d7ff;border-radius:50%;background:#eef6ff;color:#1877f2;}
.msp-verify-modal__seal i{font-size:35px;line-height:1;}
.msp-verify-modal__surface h2{font:800 clamp(20px,5vw,25px)/1.2 Inter,system-ui,Arial,sans-serif;color:#182435;margin:0 0 12px!important;}
.msp-verify-modal__surface p{font:500 15px/1.6 Inter,system-ui,Arial,sans-serif;color:#516073;margin:0 0 26px!important;white-space:normal;}
.msp-verify-modal__close{position:absolute;top:10px;right:10px;border:1px solid #dce2eb;border-radius:5px;width:37px;height:37px;background:#f7f8fa;color:#142638;cursor:pointer;}
.msp-verify-modal__confirm{display:block;width:100%;min-height:46px;border:0;border-radius:5px;background:#111b28;color:#fff;font:780 14px/1.2 Inter,system-ui,Arial,sans-serif;cursor:pointer;}
.msp-verify-modal button:focus-visible{outline:3px solid #1877f2;outline-offset:3px;}
body.msp-verify-modal-open{overflow:hidden!important;}
@media(max-width:600px){
 .msp-verify-modal{padding:14px!important;}
 .msp-verify-modal__surface{padding:30px 21px 20px;border-radius:8px;}
 .mspj-enabled .mspj4-overview-header h1 .mspj15-verification-tooltip{display:none!important;}
}
/* Account for mobile fixed menu + actual navigation spacer without adding a
   second arbitrary margin. This is a safe 9px clearance, not a large gap. */
@media(max-width:760px){
 #detailPageRoot.mspj-enabled .mspj4-stage .mspj6-nav-spacer,
 #detailSportPageRoot.mspj-enabled .mspj4-stage .mspj6-nav-spacer{min-height:0!important;}
 #detailPageRoot.mspj-v4-ready .mspj4-overview,
 #detailSportPageRoot.mspj-v4-ready .mspj4-overview{margin-top:9px!important;}
}


/* MAD SPORTS PRO | 2026-11-01 | Detail card photo / location typography / legibility polish.
   Scoped strictly to the hotel-detail and sport-detail journey roots. */
#detailPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual,
#detailSportPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual{
  display:block!important;position:relative!important;isolation:isolate!important;
  width:100%!important;height:174px!important;min-height:174px!important;max-height:174px!important;
  padding:0!important;margin:0!important;overflow:hidden!important;
  background:#e8edef!important;border:0!important;
  box-sizing:border-box!important;flex:0 0 174px!important;
}
#detailPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual::before,
#detailPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual::after,
#detailSportPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual::before,
#detailSportPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual::after{
  content:none!important;display:none!important;
}
#detailPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual > a.region-hotel-image-link,
#detailSportPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual > a.region-hotel-image-link{
  position:absolute!important;inset:0!important;display:block!important;
  width:100%!important;height:100%!important;min-height:0!important;
  padding:0!important;margin:0!important;overflow:hidden!important;z-index:1!important;
}
#detailPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual img.card-img,
#detailSportPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual img.card-img{
  display:block!important;position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
  aspect-ratio:auto!important;object-fit:cover!important;object-position:center center!important;
  border:0!important;border-radius:0!important;margin:0!important;padding:0!important;
  background:transparent!important;box-shadow:none!important;
}
/* Retain all gallery actions on top of the real image. */
.mspj-enabled .mspj6-region-stack .region-hotel-card .mspj12-photo-controls{
  z-index:5!important;inset:0!important;max-height:100%!important;
}
.mspj-enabled .mspj6-region-stack .region-hotel-card .mspj12-photo-counter{
  background:rgba(13,25,30,.84)!important;color:#fff!important;line-height:1.3!important;
}
.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual > :is(.board-badge,.score-badge,.sport-badge){
  position:relative;z-index:4;
}
/* Location sidebar: both category and registered display name are uppercase.
   Keep the underlying translated names unchanged for accessibility/data use. */
#detailPageRoot.mspj-enabled .mspj5-map-sidebar .mspj5-place-text :is(small,strong,em),
#detailSportPageRoot.mspj-enabled .mspj5-map-sidebar .mspj5-place-text :is(small,strong,em){
  text-transform:uppercase!important;overflow-wrap:anywhere!important;
}
/* Legibility: light backgrounds require dark readable text. Brand-color accents stay intact. */
.mspj-enabled .mspj4-head-copy p,
.mspj-enabled .mspj4-region-row .region-hotels-heading p,
.mspj-enabled .mspj6-region-stack .region-hotel-card .h-loc,
.mspj-enabled .mspj5-place-text small{
  color:#4c5e6c!important;
}
.mspj-enabled .mspj4-head-count{
  background:#fff!important;color:#263b4b!important;
  border:1px solid var(--mspj9-line,#cedbd4)!important;
  box-shadow:none!important;
}
.mspj-enabled .mspj5-place-text strong{
  color:#1c2c32!important;
}
.mspj-enabled .mspj5-place-text em{
  color:var(--mspj9-dark,#264c42)!important;
  font-weight:700!important;
}
.mspj-enabled .mspj4-tab:not(.is-active){color:#4a5a70!important;}
.mspj-enabled .mspj4-tab.is-active{color:#162938!important;}
/* Do not show the obsolete quick-access CTA again. The review link in the
   overview is separate and must remain intact. */
#detailPageRoot.mspj-enabled .mspj7-quick-access,
#detailSportPageRoot.mspj-enabled .mspj7-quick-access,
#detailPageRoot.mspj-enabled .mspj8-quick-access,
#detailSportPageRoot.mspj-enabled .mspj8-quick-access,
#detailPageRoot.mspj-enabled [data-mspj-quick-access],
#detailSportPageRoot.mspj-enabled [data-mspj-quick-access]{display:none!important;}
/* Recently viewed can be the final section directly above the existing footer. */
.mspj-enabled .mspj6-region-stack{margin-bottom:0!important;}
#detailPageRoot.mspj-enabled,#detailSportPageRoot.mspj-enabled{margin-bottom:12px!important;}
@media(max-width:760px){
  #detailPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual,
  #detailSportPageRoot.mspj-enabled .mspj6-region-stack .region-hotel-card .card-visual{
    height:168px!important;min-height:168px!important;max-height:168px!important;flex-basis:168px!important;
  }
}


/* V16 · Neutral general-hotel palette; red is reserved for brand calls to action
   and paid/exclusive service states. Sport detail palettes are unaffected. */
#detailPageRoot.mspj-enabled{--mspj16-neutral:#f5f7f7;--mspj16-neutral-line:#dce3e3;}
#detailPageRoot.mspj-enabled :is(.mspj4-feature.is-available,.mspj4-quickstat,.mspj4-highlight-grid>div,.mspj4-fast-grid>div,.mspj4-capacity>div,.mspj5-distance){
  background:var(--mspj16-neutral)!important;border-color:var(--mspj16-neutral-line)!important;
  color:#27343e!important;
}
#detailPageRoot.mspj-enabled .mspj4-feature.is-available :is(.mspj4-feature-icon,.bi){
  color:#27824b!important;border-color:#c6dfd0!important;
}
#detailPageRoot.mspj-enabled .mspj4-feature.is-available small{color:#3d6652!important;}
#detailPageRoot.mspj-enabled .mspj4-feature.is-exclusive,
#detailPageRoot.mspj-enabled .mspj4-feature.is-paid,
#detailPageRoot.mspj-enabled .mspj4-feature.is-missing{background:#fff0f2!important;border:1px solid #f1aab5!important;color:#a4162b!important;}
#detailPageRoot.mspj-enabled .mspj4-feature.is-exclusive :is(.mspj4-feature-icon,small),
#detailPageRoot.mspj-enabled .mspj4-feature.is-paid :is(.mspj4-feature-icon,small),
#detailPageRoot.mspj-enabled .mspj4-feature.is-missing :is(.mspj4-feature-icon,small){color:#bb1530!important;}
#detailPageRoot.mspj-enabled :is(.mspj4-section-head,.region-hotels-heading,.mspj4-hotel,.mspj4-card){
  --mspj9-pale:#f5f6f7;--mspj9-line:#e1e5e8;
}
#detailPageRoot.mspj-enabled .mspj4-section-head{background:linear-gradient(95deg,#f5f6f7,#fff)!important;}
#detailPageRoot.mspj-enabled .mspj4-head-count{color:#24333f!important;background:#fff!important;}

/* Other sports choices: a true accessible disclosure on sport pages, expanded
   by default on general hotel pages. Actual links and cards are unchanged. */
.mspj-enabled .mspj16-offers-trigger{box-sizing:border-box!important;display:flex!important;
  align-items:center!important;justify-content:space-between!important;gap:15px!important;
  width:100%!important;min-height:58px!important;border:0!important;background:transparent!important;
  padding:4px 0!important;color:var(--mspj9-dark,#24333b)!important;text-align:start!important;
  font-size:clamp(13px,1.2vw,17px)!important;font-weight:850!important;letter-spacing:.015em!important;
  white-space:normal!important;
}
.mspj-enabled .mspj16-trigger-title{display:flex;align-items:center;gap:10px;min-width:0;}
.mspj-enabled .mspj16-trigger-title :is(i,svg){flex:0 0 auto;color:var(--mspj9-accent,#c61b2b);}
.mspj-enabled .mspj16-offers-trigger>.bi-chevron-down{flex:0 0 auto;transition:transform .22s ease;}
.mspj-enabled .mspj16-offers-trigger[aria-expanded=true]>.bi-chevron-down{transform:rotate(180deg);}
.mspj-enabled .mspj16-offers-trigger:focus-visible{outline:2px solid var(--mspj9-accent,#c61b2b)!important;outline-offset:2px!important;}
.mspj-enabled .mspj16-offers-body[hidden]{display:none!important;}
.mspj-enabled .mspj16-hidden-title{display:none!important;}
.mspj-enabled .mspj16-collapsed{padding-top:6px!important;padding-bottom:6px!important;}
.mspj-enabled .mspj16-collapsed .mspj16-offers-trigger{min-height:57px!important;}

/* Recently viewed: compact square photo tiles with an accessible title overlay
   and the actual visited discipline, never an inferred/all-sports claim. */
.mspj-enabled .mspj6-region-stack #interestedHotelsSection .region-hotel-slide{
  flex:0 0 clamp(190px,21vw,265px)!important;max-width:265px!important;
}
.mspj-enabled .mspj6-region-stack #interestedHotelsSection .mspj16-recent-card{
  display:block!important;background:#fff!important;height:auto!important;min-width:0!important;overflow:hidden!important;
}
.mspj-enabled .mspj6-region-stack #interestedHotelsSection .mspj16-recent-card .card-visual{
  width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
  aspect-ratio:1/1!important;flex:0 0 auto!important;position:relative!important;
  background:#e8edef!important;overflow:hidden!important;
}
.mspj-enabled .mspj6-region-stack #interestedHotelsSection .mspj16-recent-card .card-visual .region-hotel-image-link,
.mspj-enabled .mspj6-region-stack #interestedHotelsSection .mspj16-recent-card .card-visual .card-img{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  max-height:none!important;object-fit:cover!important;object-position:center!important;
}
.mspj-enabled #interestedHotelsSection .mspj16-recent-card .card-body{display:none!important;}
.mspj-enabled #interestedHotelsSection .mspj16-recent-card .card-visual::after{
  content:'';position:absolute;inset:35% 0 0;z-index:2!important;
  background:linear-gradient(0deg,rgba(8,15,23,.88),rgba(8,15,23,0));pointer-events:none;
}
.mspj-enabled #interestedHotelsSection .mspj16-recent-name{
  position:absolute!important;z-index:7!important;bottom:12px;left:11px;right:11px;
  color:#fff!important;font-weight:850!important;font-size:clamp(13px,1.25vw,16px)!important;
  line-height:1.25!important;text-shadow:0 2px 5px #000a;pointer-events:none!important;
  overflow-wrap:anywhere;
}
.mspj-enabled #interestedHotelsSection .mspj16-visited-sport{
  position:absolute!important;top:9px;left:9px;z-index:8!important;
  display:inline-flex!important;align-items:center;gap:6px;min-width:0;max-width:calc(100% - 18px);
  padding:4px 10px 4px 4px;border:1px solid #ffffffbb!important;border-radius:22px!important;
  color:#fff!important;background:var(--mspj16-badge-color,#153d50)!important;
  font-size:10px!important;line-height:1.25!important;font-weight:850!important;
  text-transform:uppercase;box-shadow:0 2px 9px #0005;
}
.mspj-enabled #interestedHotelsSection .mspj16-visited-sport img{
  width:25px;height:25px;flex:0 0 25px;border:1px solid #ffffffaa;border-radius:50%!important;
  padding:3px;background:#ffffff16;object-fit:contain;
}
.mspj-enabled #interestedHotelsSection .mspj16-visited-sport span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mspj-enabled #interestedHotelsSection .mspj16-recent-verified{
  position:absolute!important;z-index:8!important;right:9px;top:9px;
  display:grid;place-items:center;width:26px;height:26px;color:#1877f2!important;
  border-radius:50%!important;background:#fff;pointer-events:none;
}
.mspj-enabled #interestedHotelsSection .mspj16-recent-verified i{color:#1877f2!important;}
.mspj-enabled #interestedHotelsSection .mspj16-recent-card .mspj12-photo-controls{
  z-index:6!important;align-items:center!important;
}
.mspj-enabled #interestedHotelsSection .mspj16-recent-card .mspj12-photo-counter{
  display:none!important;
}
.mspj-enabled #interestedHotelsSection .mspj16-recent-card .mspj12-photo-controls button{
  width:29px!important;height:37px!important;background:var(--mspj16-badge-color,var(--mspj9-accent,#253b4d))!important;
  opacity:.94;}
.mspj-enabled #interestedHotelsSection .mspj16-recent-card .region-hotel-image-link{
  z-index:1!important;}
.mspj-enabled #interestedHotelsSection .mspj16-recent-card .region-hotel-image-link:focus-visible{outline:3px solid #fff!important;outline-offset:-4px!important;}
@media(max-width:760px){
 .mspj-enabled .mspj6-region-stack #interestedHotelsSection .region-hotel-slide{
   flex-basis:clamp(190px,64vw,250px)!important;max-width:250px!important;}
 .mspj-enabled #interestedHotelsSection .mspj16-recent-name{font-size:14px!important;}
}
/* Blue verification stays next to the hotel name; the write-review link below
   uses the real destination and is never hidden by the stacked sticky headers. */
.mspj-enabled #mspj4Overview,.mspj-enabled .mspj4-overview-header{
  scroll-margin-top:var(--mspj16-nav-clearance,175px)!important;}
.mspj-enabled .mspj10-overview-actions{position:relative!important;z-index:2!important;}
.mspj-enabled .mspj10-write-review{position:relative!important;z-index:3!important;scroll-margin-top:var(--mspj16-nav-clearance,175px)!important;}
.mspj-enabled .mspj4-overview-header h1 .mspj15-verified-host{display:inline-flex!important;}
@media(prefers-reduced-motion:reduce){.mspj-enabled .mspj16-offers-trigger>.bi-chevron-down{transition:none!important;}}


/* V17 | Inline verification + truly square recently viewed hotel tiles.
   Applied after legacy V4-V16 declarations, scoped to detail roots only. */
#detailPageRoot.mspj-enabled .mspj4-overview-header > div:first-child,
#detailSportPageRoot.mspj-enabled .mspj4-overview-header > div:first-child{
  min-width:0!important;max-width:100%!important;
}
#detailPageRoot.mspj-enabled .mspj4-overview-header h1 .mspj15-verified-host,
#detailSportPageRoot.mspj-enabled .mspj4-overview-header h1 .mspj15-verified-host{
  position:static!important;display:inline-flex!important;float:none!important;
  margin-inline-start:7px!important;vertical-align:middle!important;
  width:26px!important;min-width:26px!important;max-width:26px!important;
  height:26px!important;padding:0!important;border:0!important;
  transform:none!important;white-space:nowrap!important;
}
#detailPageRoot.mspj-enabled .mspj4-overview-header h1 .mspj15-verification,
#detailSportPageRoot.mspj-enabled .mspj4-overview-header h1 .mspj15-verification{
  padding:0!important;border:0!important;background:transparent!important;
  box-shadow:none!important;margin:0!important;
}
#detailPageRoot.mspj-enabled .mspj10-overview-actions,
#detailSportPageRoot.mspj-enabled .mspj10-overview-actions{
  position:relative!important;display:flex!important;z-index:1!important;
}
#detailPageRoot.mspj-enabled #interestedHotelsSection .region-hotels-track,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .region-hotels-track{
  align-items:flex-start!important;align-content:flex-start!important;
  padding-bottom:12px!important;
}
#detailPageRoot.mspj-enabled #interestedHotelsSection .region-hotel-slide,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .region-hotel-slide{
  display:block!important;align-self:flex-start!important;flex-grow:0!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;
  background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
#detailPageRoot.mspj-enabled #interestedHotelsSection .region-hotel-slide .mspj16-recent-card,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .region-hotel-slide .mspj16-recent-card{
  display:block!important;position:relative!important;align-self:flex-start!important;
  aspect-ratio:1/1!important;width:100%!important;height:auto!important;
  min-height:0!important;max-height:none!important;margin:0!important;
  padding:0!important;border:0!important;border-radius:3px!important;
  box-shadow:none!important;background:transparent!important;overflow:hidden!important;
}
#detailPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-card .card-visual,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-card .card-visual{
  display:block!important;position:relative!important;aspect-ratio:1/1!important;
  width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
  border:0!important;margin:0!important;padding:0!important;
}
#detailPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-card .card-body,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-card .card-body{
  display:none!important;height:0!important;min-height:0!important;
  padding:0!important;margin:0!important;border:0!important;
}
#detailPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-card .mspj16-recent-name,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-card .mspj16-recent-name{
  display:block!important;max-width:calc(100% - 20px)!important;
  margin:0!important;padding:0!important;background:none!important;
}
@media(max-width:760px){
 #detailPageRoot.mspj-enabled .mspj4-overview-header h1 .mspj15-verified-host,
 #detailSportPageRoot.mspj-enabled .mspj4-overview-header h1 .mspj15-verified-host{
   width:24px!important;min-width:24px!important;height:24px!important;
 }
}

/* Hidden duplicate source heading wins over earlier broad plugin heading styles. */
.mspj-enabled .mspj6-more-sports :is(.section-label-heading,h2,h3,h4,h5,h6).mspj16-hidden-title{display:none!important;}

/* V18 — official already-circular sports artwork: no redundant concentric ring. */
.mspj-enabled #interestedHotelsSection .mspj16-visited-sport img{
  border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;
  padding:0!important;background:transparent!important;width:29px!important;height:29px!important;flex:0 0 29px!important;
  object-fit:contain!important;
}
/* Photo title and verified check share a baseline, like a verified social account. */
.mspj-enabled #interestedHotelsSection .mspj18-recent-titlebar{
 position:absolute!important;z-index:8!important;bottom:11px;left:11px;right:11px;
 display:flex!important;align-items:center!important;justify-content:flex-start;gap:5px;
 pointer-events:none!important;max-width:calc(100% - 22px)!important;
}
.mspj-enabled #interestedHotelsSection .mspj18-recent-titlebar .mspj16-recent-name{
 position:static!important;flex:0 1 auto;min-width:0!important;max-width:calc(100% - 29px)!important;
 margin:0!important;bottom:auto!important;left:auto!important;right:auto!important;
 display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;
}
.mspj-enabled #interestedHotelsSection .mspj18-recent-titlebar .mspj16-recent-verified{
 position:static!important;flex:0 0 21px!important;display:inline-grid!important;place-items:center!important;
 width:21px!important;height:21px!important;min-width:21px!important;background:#fff!important;
 border-radius:50%!important;pointer-events:none!important;
}
.mspj-enabled #interestedHotelsSection .mspj18-recent-titlebar .mspj16-recent-verified i{font-size:17px!important;color:#1877f2!important;}




/* MAD SPORTS PRO · V24 — REGION HOTEL CARDS / equal height, exact alignment.
   Deliberately scoped to the OTHER HOTELS panel. Never alter the separate
   square "Recently viewed hotels" tiles or the search result cards. */
#detailPageRoot.mspj-enabled #otherHotelsRegionSection,
#detailSportPageRoot.mspj-enabled #otherHotelsRegionSection{
  --mspj24-accent:var(--mspj9-accent,var(--mspj4-green,#17643d));
  --mspj24-ink:#172632;--mspj24-muted:#536878;--mspj24-hair:#e1e9e6;
  box-sizing:border-box!important;min-width:0!important;max-width:100%!important;
  border:1px solid var(--mspj24-hair)!important;border-radius:5px!important;
  overflow:hidden!important;background:#fff!important;
}
.mspj-enabled #otherHotelsRegionSection *,
.mspj-enabled #otherHotelsRegionSection *::before,
.mspj-enabled #otherHotelsRegionSection *::after{box-sizing:border-box!important;}
.mspj-enabled #otherHotelsRegionSection .region-hotels-heading{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:12px!important;padding:15px 17px!important;margin:0!important;
  background:color-mix(in srgb,var(--mspj24-accent) 5%,#fff)!important;
  border-bottom:1px solid var(--mspj24-hair)!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotels-heading h2{
  margin:0 0 4px!important;color:var(--mspj24-ink)!important;
  font-size:clamp(14px,1.12vw,17px)!important;font-weight:900!important;
  line-height:1.25!important;letter-spacing:.015em!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotels-heading p{
  margin:0!important;font-size:11px!important;color:#647685!important;line-height:1.45!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotels-controls{
  display:flex!important;align-items:center!important;gap:6px!important;flex:0 0 auto!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotels-controls button{
  display:grid!important;place-items:center!important;flex:0 0 auto!important;
  width:36px!important;height:36px!important;margin:0!important;padding:0!important;
  border:1px solid #cedad6!important;border-radius:4px!important;background:#fff!important;
  color:var(--mspj24-ink)!important;transition:background .18s ease,border-color .18s ease,transform .18s ease!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotels-controls button:hover:not(:disabled){
  background:var(--mspj24-accent)!important;color:#fff!important;border-color:var(--mspj24-accent)!important;
  transform:translateY(-1px);
}
.mspj-enabled #otherHotelsRegionSection .region-hotels-controls button:disabled{opacity:.4!important;cursor:default!important;}
.mspj-enabled #otherHotelsRegionSection .region-hotels-controls button:focus-visible,
.mspj-enabled #otherHotelsRegionSection .mspj12-photo-controls button:focus-visible{
  outline:3px solid var(--mspj24-accent)!important;outline-offset:3px!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotels-track{
  display:flex!important;align-items:stretch!important;align-content:stretch!important;
  min-width:0!important;max-width:100%!important;gap:12px!important;
  padding:16px!important;margin:0!important;
  overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;
  scroll-padding-inline:16px!important;overscroll-behavior-inline:contain!important;
  -webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotels-track::-webkit-scrollbar{display:none!important;}
.mspj-enabled #otherHotelsRegionSection .region-hotel-slide{
  display:flex!important;align-items:stretch!important;min-width:0!important;width:auto!important;
  flex:0 0 calc((100% - 48px)/5)!important;max-width:none!important;
  height:434px!important;min-height:434px!important;max-height:434px!important;
  padding:0!important;margin:0!important;scroll-snap-align:start!important;overflow:visible!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:166px minmax(0,1fr) 76px!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  height:434px!important;min-height:434px!important;max-height:434px!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
  border:1px solid #dbe4e2!important;border-radius:4px!important;
  background:#fff!important;box-shadow:0 5px 17px rgba(23,39,43,.055)!important;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card:hover{
  border-color:color-mix(in srgb,var(--mspj24-accent) 40%,#dbe4e2)!important;
  box-shadow:0 12px 30px rgba(23,39,43,.12)!important;transform:translateY(-2px)!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-visual{
  display:block!important;grid-row:1!important;grid-column:1!important;
  position:relative!important;isolation:isolate!important;width:100%!important;
  height:166px!important;min-height:166px!important;max-height:166px!important;
  padding:0!important;margin:0!important;overflow:hidden!important;border:0!important;
  background:#e6ece9!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-visual>a.region-hotel-image-link{
  position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;
  z-index:1!important;overflow:hidden!important;border:0!important;margin:0!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-visual img.card-img{
  position:absolute!important;inset:0!important;display:block!important;
  width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
  aspect-ratio:auto!important;object-fit:cover!important;object-position:center!important;
  border:0!important;border-radius:0!important;padding:0!important;margin:0!important;
  transform:scale(1);transition:transform .42s cubic-bezier(.2,.7,.3,1),opacity .2s ease!important;
}
@media(hover:hover){
 .mspj-enabled #otherHotelsRegionSection .region-hotel-card:hover .card-visual img.card-img{transform:scale(1.035)!important;}
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-visual .board-visual-badge{
  position:absolute!important;top:9px!important;left:9px!important;right:auto!important;bottom:auto!important;
  z-index:5!important;display:block!important;max-width:calc(100% - 18px)!important;
  width:max-content!important;margin:0!important;padding:0!important;
  font-size:9px!important;line-height:1.2!important;
  overflow:hidden!important;box-shadow:0 4px 12px #0004!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-visual .board-visual-badge span{
  display:block!important;max-width:100%!important;overflow:hidden!important;
  white-space:nowrap!important;text-overflow:ellipsis!important;
  padding:6px 10px!important;font-size:9px!important;font-weight:800!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .mspj12-photo-controls{
  position:absolute!important;inset:0!important;z-index:6!important;display:flex!important;
  align-items:center!important;justify-content:space-between!important;gap:6px!important;
  padding:0 8px!important;pointer-events:none!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .mspj12-photo-controls button{
  display:grid!important;place-items:center!important;flex:0 0 33px!important;
  width:33px!important;height:37px!important;padding:0!important;
  background:rgba(15,31,40,.78)!important;border:1px solid rgba(255,255,255,.68)!important;
  border-radius:4px!important;color:white!important;backdrop-filter:blur(7px);
  pointer-events:auto!important;cursor:pointer!important;transition:background .18s ease!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .mspj12-photo-controls button:hover{
  background:var(--mspj24-accent)!important;color:#fff!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .mspj12-photo-counter,
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-visual [class*="photo-counter"]{
  display:none!important;visibility:hidden!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .elite-score-overlay{
  position:absolute!important;z-index:7!important;right:9px!important;bottom:9px!important;
  top:auto!important;left:auto!important;float:none!important;
  width:auto!important;min-width:0!important;max-width:calc(100% - 18px)!important;
  height:auto!important;min-height:0!important;margin:0!important;
  display:flex!important;align-items:baseline!important;gap:3px!important;
  padding:7px 9px!important;border-radius:3px!important;
  background:rgba(255,255,255,.94)!important;backdrop-filter:blur(10px)!important;
  box-shadow:0 2px 9px #0003!important;border:0!important;
  color:var(--mspj24-accent)!important;font-size:19px!important;font-weight:950!important;
  line-height:1!important;letter-spacing:-.03em!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .elite-score-overlay.d-none{display:none!important;}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .elite-score-overlay .mspj24-score-number{
  color:inherit!important;font-size:19px!important;font-weight:950!important;line-height:1!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .elite-score-overlay small{
  color:#667782!important;font-size:10px!important;font-weight:800!important;letter-spacing:0!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .elite-score-overlay i{display:none!important;}
/* Independent content column: no length or long-word may alter card height. */
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-body{
  position:relative!important;grid-row:2!important;grid-column:1!important;
  display:grid!important;grid-template-rows:60px 31px 40px 26px!important;
  align-content:start!important;justify-content:stretch!important;
  gap:4px!important;min-width:0!important;min-height:0!important;max-height:100%!important;
  width:100%!important;padding:11px 12px!important;margin:0!important;
  overflow:hidden!important;background:#fff!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-body>.stretched-link{
  z-index:0!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-body .h-head{
  grid-row:1!important;display:flex!important;flex-direction:column!important;
  align-items:stretch!important;justify-content:flex-start!important;gap:4px!important;
  min-width:0!important;height:60px!important;min-height:60px!important;max-height:60px!important;
  padding:0!important;margin:0!important;overflow:hidden!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .region-hotel-title-wrap{
  display:flex!important;align-items:baseline!important;justify-content:flex-start!important;
  min-width:0!important;max-width:100%!important;gap:4px!important;
  height:36px!important;min-height:36px!important;max-height:36px!important;
  overflow:hidden!important;padding:0!important;margin:0!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .h-title{
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
  min-width:0!important;max-width:100%!important;flex:0 1 auto!important;
  height:auto!important;max-height:36px!important;overflow:hidden!important;
  margin:0!important;padding:0!important;color:var(--mspj24-ink)!important;
  font-size:14px!important;line-height:18px!important;font-weight:900!important;
  letter-spacing:-.015em!important;overflow-wrap:anywhere!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .region-hotel-verified{
  position:static!important;flex:0 0 auto!important;margin:0!important;
  color:#1877f2!important;font-size:14px!important;line-height:18px!important;
  align-self:baseline!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .region-hotel-rating{
  display:flex!important;align-items:center!important;gap:4px!important;
  height:18px!important;min-height:18px!important;max-height:18px!important;
  width:100%!important;min-width:0!important;margin:0!important;padding:0!important;
  overflow:hidden!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .region-hotel-stars{
  display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;gap:1px!important;
  font-size:11px!important;color:#f2b318!important;line-height:1!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .region-hotel-rating-title{
  display:block!important;flex:1 1 auto!important;min-width:0!important;
  overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  font-size:10px!important;font-weight:700!important;color:#5d7184!important;line-height:1.25!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .hotel-highlight-banner{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;max-width:72px!important;height:18px!important;
  margin-left:auto!important;padding:2px 5px!important;border-radius:3px!important;
  color:#fff!important;font-size:9px!important;font-weight:850!important;
  line-height:1!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .h-loc{
  grid-row:2!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;overflow:hidden!important;min-height:0!important;max-height:31px!important;
  margin:0!important;padding:0!important;font-size:11px!important;line-height:15px!important;
  font-weight:650!important;color:var(--mspj24-muted)!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .h-loc .region-hotel-flag{
  display:inline-block!important;width:14px!important;height:11px!important;
  object-fit:contain!important;margin:0 4px 0 0!important;vertical-align:-1px!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .info-bar{
  grid-row:3!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  min-width:0!important;max-width:100%!important;width:100%!important;
  height:40px!important;min-height:40px!important;max-height:40px!important;
  gap:7px!important;padding:6px 8px!important;margin:0!important;
  background:#f7f9fa!important;border:1px solid #e7ecef!important;border-radius:3px!important;overflow:hidden!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .info-bar .info-item{
  display:flex!important;align-items:center!important;gap:4px!important;
  flex:1 1 0!important;min-width:0!important;max-width:100%!important;
  font-size:10px!important;font-weight:750!important;line-height:1.24!important;color:#3c505e!important;
  overflow:hidden!important;overflow-wrap:anywhere!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .info-bar .info-item:first-child{
  flex:0 0 auto!important;white-space:nowrap!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .info-bar .info-item :is(.bi,i){
  flex:0 0 auto!important;font-size:12px!important;color:var(--mspj24-accent)!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .info-bar .info-item span{
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
  overflow:hidden!important;max-width:100%!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .tech-scroll{
  grid-row:4!important;display:flex!important;align-items:center!important;gap:5px!important;
  min-width:0!important;height:26px!important;min-height:26px!important;max-height:26px!important;
  overflow:hidden!important;white-space:nowrap!important;margin:0!important;padding:0!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .tech-pill{
  display:block!important;flex:0 1 auto!important;min-width:0!important;
  max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;
  white-space:nowrap!important;margin:0!important;padding:5px 7px!important;
  border:1px solid color-mix(in srgb,var(--mspj24-accent) 22%,#e4e9e6)!important;
  background:color-mix(in srgb,var(--mspj24-accent) 7%,#fff)!important;
  color:var(--mspj24-accent)!important;border-radius:3px!important;
  font-size:9px!important;font-weight:850!important;line-height:14px!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-footer{
  grid-row:3!important;grid-column:1!important;display:block!important;
  width:100%!important;height:76px!important;min-height:76px!important;max-height:76px!important;
  min-width:0!important;padding:0!important;margin:0!important;
  overflow:hidden!important;border:0!important;border-top:1px solid #e3ece6!important;
  background:linear-gradient(180deg,#f9fbfa,#fff)!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-footer .price-area{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:18px minmax(0,1fr)!important;
  gap:2px!important;align-content:center!important;justify-content:stretch!important;
  height:76px!important;min-height:0!important;max-height:76px!important;
  padding:8px 12px 8px!important;margin:0!important;border:0!important;
  background:transparent!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-footer .price-area>div:first-child{
  display:block!important;height:18px!important;min-height:18px!important;
  padding:0!important;margin:0!important;border:0!important;background:transparent!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-footer .price-lbl{
  display:flex!important;align-items:center!important;gap:5px!important;
  width:max-content!important;max-width:100%!important;min-height:0!important;height:18px!important;
  margin:0!important;padding:0!important;background:none!important;border:0!important;
  font-size:9px!important;font-weight:850!important;letter-spacing:.075em!important;
  text-transform:uppercase!important;color:#5c6d77!important;line-height:1!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-footer .price-lbl:before{
  content:''!important;display:block!important;flex:0 0 3px!important;height:11px!important;
  background:var(--mspj24-accent)!important;border-radius:2px!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .region-hotel-price-value{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:29px 14px!important;align-items:center!important;
  column-gap:4px!important;row-gap:0!important;min-width:0!important;
  height:43px!important;min-height:43px!important;max-height:43px!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .price-val{
  grid-column:1 / -1!important;grid-row:1!important;
  display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  margin:0!important;padding:0!important;font-size:22px!important;line-height:29px!important;
  font-weight:950!important;color:var(--mspj24-ink)!important;letter-spacing:-.045em!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .price-unit,
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .flight-status{
  grid-row:2!important;display:block!important;min-width:0!important;
  overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  margin:0!important;padding:0!important;border:0!important;background:none!important;
  font-size:9px!important;line-height:14px!important;font-weight:750!important;
  color:#657583!important;letter-spacing:0!important;text-transform:none!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .price-unit{grid-column:1!important;}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .flight-status{grid-column:2!important;max-width:112px!important;text-align:right!important;}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .mspj24-price-empty{
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:11px!important;
}
.mspj-enabled #otherHotelsRegionSection .region-hotel-card .mspj24-price-request{
  display:block!important;min-width:0!important;max-width:100%!important;
  font-size:11px!important;font-weight:850!important;color:#536b60!important;
  white-space:normal!important;overflow-wrap:anywhere!important;text-align:center!important;
}
/* Five visible cards on wide screens, then 4 / 3 / 2 / 1.xx with continuous swipe. */
@media(max-width:1380px){
 .mspj-enabled #otherHotelsRegionSection .region-hotel-slide{flex-basis:calc((100% - 36px)/4)!important;}
}
@media(max-width:1110px){
 .mspj-enabled #otherHotelsRegionSection .region-hotel-slide{flex-basis:calc((100% - 24px)/3)!important;}
}
@media(max-width:825px){
 .mspj-enabled #otherHotelsRegionSection .region-hotel-slide{flex-basis:calc((100% - 12px)/2)!important;}
 .mspj-enabled #otherHotelsRegionSection .region-hotels-track{padding:12px!important;}
}
@media(max-width:550px){
 .mspj-enabled #otherHotelsRegionSection .region-hotel-slide{flex:0 0 min(78vw,280px)!important;}
 .mspj-enabled #otherHotelsRegionSection .region-hotels-heading{padding:12px!important;}
 .mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-body{padding:11px!important;}
}
@media(prefers-reduced-motion:reduce){
 .mspj-enabled #otherHotelsRegionSection .region-hotel-card,
 .mspj-enabled #otherHotelsRegionSection .region-hotel-card img.card-img,
 .mspj-enabled #otherHotelsRegionSection .region-hotels-controls button{transition:none!important;transform:none!important;}
}
/* V24 specificity guard: older V13 .card-visual rules used a stronger
   selector and otherwise left the photo 8px taller than its grid row. */
#detailPageRoot.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-visual,
#detailSportPageRoot.mspj-enabled #otherHotelsRegionSection .region-hotel-card .card-visual{
  height:166px!important;min-height:166px!important;max-height:166px!important;
  flex:0 0 166px!important;
}
/* General hotel (no selected discipline): neutral travel editorial palette. */
#detailPageRoot.mspj-enabled #otherHotelsRegionSection{
  --mspj24-accent:#335b5b;
}

/* V25 — native section anchors + dynamic offset beneath global/fixed header. */
#detailPageRoot.mspj-enabled .mspj4-nav a.mspj4-tab,
#detailSportPageRoot.mspj-enabled .mspj4-nav a.mspj4-tab{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  color:#44566a;text-decoration:none!important;cursor:pointer!important;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;outline-offset:2px;
}
#detailPageRoot.mspj-enabled .mspj4-nav a.mspj4-tab.is-active,
#detailSportPageRoot.mspj-enabled .mspj4-nav a.mspj4-tab.is-active{
  color:#1f2e3a!important;
}
#detailPageRoot.mspj-enabled .mspj4-stage>section[id^="mspj4"],
#detailSportPageRoot.mspj-enabled .mspj4-stage>section[id^="mspj4"]{
  scroll-margin-top:var(--mspj25-anchor-clearance,var(--mspj16-nav-clearance,175px))!important;
}
#detailPageRoot.mspj-enabled .mspj4-nav a.mspj4-tab.is-unavailable,
#detailSportPageRoot.mspj-enabled .mspj4-nav a.mspj4-tab.is-unavailable{
  opacity:.4!important;pointer-events:none!important;
}
@media (prefers-reduced-motion:reduce){
  #detailPageRoot.mspj-enabled .mspj4-stage>section[id^="mspj4"],
  #detailSportPageRoot.mspj-enabled .mspj4-stage>section[id^="mspj4"]{scroll-behavior:auto!important;}
}

/* V26 — Accessible back-to-results route (hotel + all 15 sport details). */
#detailPageRoot.mspj-enabled .mspj26-return-row,
#detailSportPageRoot.mspj-enabled .mspj26-return-row{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  margin:0 0 12px!important;min-height:34px!important;
}
#detailPageRoot.mspj-enabled .mspj26-return-link,
#detailSportPageRoot.mspj-enabled .mspj26-return-link{
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  min-height:36px!important;padding:7px 12px!important;
  border:1px solid color-mix(in srgb,var(--mspj9-accent,#c51227) 27%,#dee4ea)!important;
  background:color-mix(in srgb,var(--mspj9-accent,#c51227) 6%,#fff)!important;
  color:var(--mspj9-dark,var(--mspj9-accent,#c51227))!important;
  border-radius:3px!important;text-decoration:none!important;
  font-size:12px!important;line-height:1.3!important;font-weight:850!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease!important;
  max-width:100%!important;white-space:normal!important;
}
#detailPageRoot.mspj-enabled .mspj26-return-link:hover,
#detailSportPageRoot.mspj-enabled .mspj26-return-link:hover{
  background:var(--mspj9-accent,#c51227)!important;color:white!important;
  border-color:var(--mspj9-accent,#c51227)!important;transform:translateX(-2px)!important;
}
#detailPageRoot.mspj-enabled .mspj26-return-compact,
#detailSportPageRoot.mspj-enabled .mspj26-return-compact{
  flex:0 0 34px!important;display:inline-flex!important;align-items:center!important;
  justify-content:center!important;width:34px!important;height:36px!important;
  border:1px solid #dce4e7!important;border-radius:3px!important;
  color:var(--mspj9-accent,#c51227)!important;background:#fff!important;
  font-size:17px!important;text-decoration:none!important;
  transition:background .18s ease,color .18s ease,border-color .18s ease!important;
}
#detailPageRoot.mspj-enabled .mspj26-return-compact:hover,
#detailSportPageRoot.mspj-enabled .mspj26-return-compact:hover{
  background:var(--mspj9-accent,#c51227)!important;color:white!important;
  border-color:var(--mspj9-accent,#c51227)!important;
}
#detailPageRoot.mspj-enabled .mspj26-return-link:focus-visible,
#detailSportPageRoot.mspj-enabled .mspj26-return-link:focus-visible,
#detailPageRoot.mspj-enabled .mspj26-return-compact:focus-visible,
#detailSportPageRoot.mspj-enabled .mspj26-return-compact:focus-visible{
  outline:3px solid var(--mspj9-accent,#c51227)!important;outline-offset:3px!important;
}
@media(max-width:600px){
  #detailPageRoot.mspj-enabled .mspj26-return-compact,
  #detailSportPageRoot.mspj-enabled .mspj26-return-compact{
    flex-basis:30px!important;width:30px!important;height:34px!important;font-size:15px!important;
  }
  #detailPageRoot.mspj-enabled .mspj26-return-row,
  #detailSportPageRoot.mspj-enabled .mspj26-return-row{margin-bottom:8px!important;}
}
@media(prefers-reduced-motion:reduce){
  #detailPageRoot.mspj-enabled .mspj26-return-link,
  #detailSportPageRoot.mspj-enabled .mspj26-return-link{transition:none!important;transform:none!important;}
}


/* V27 | general hotel detail polish: keep review CTA visible and surface
   the sports recommendation in a premium right-hand insight card. */
#detailPageRoot.mspj-enabled .mspj10-write-review{
  position:relative!important;z-index:4!important;
}
#detailPageRoot.mspj-enabled .mspj26-sport-aside{
  margin-top:12px!important;display:block!important;position:relative!important;overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--mspj9-accent,#17643d) 34%,#d8e2e8)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--mspj9-accent,#17643d) 88%,#0f1621) 0%,color-mix(in srgb,var(--mspj9-accent,#17643d) 73%,#1b2430) 100%)!important;
  box-shadow:0 14px 34px rgba(11,23,34,.18)!important;
  padding:18px 18px 17px!important;
  color:#fff!important;
}
#detailPageRoot.mspj-enabled .mspj26-sport-aside:before{
  content:'';position:absolute;inset:auto -36px -44px auto;width:132px;height:132px;border-radius:50%;
  background:radial-gradient(circle at center,color-mix(in srgb,#fff 22%,transparent) 0%,transparent 70%);
  pointer-events:none;opacity:.65;
}
#detailPageRoot.mspj-enabled .mspj26-sport-aside__eyebrow{
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  font-size:11px!important;font-weight:850!important;letter-spacing:.14em!important;text-transform:uppercase!important;
  opacity:.86!important;margin-bottom:8px!important;
}
#detailPageRoot.mspj-enabled .mspj26-sport-aside__title{
  font-size:20px!important;line-height:1.15!important;font-weight:900!important;
  text-transform:uppercase!important;letter-spacing:-.02em!important;margin-bottom:10px!important;color:#fff!important;
}
#detailPageRoot.mspj-enabled .mspj26-sport-aside__body,
#detailPageRoot.mspj-enabled .mspj26-sport-aside__body .detail-seo-text,
#detailPageRoot.mspj-enabled .mspj26-sport-aside__body .seo-body{
  color:rgba(255,255,255,.96)!important;font-size:14px!important;line-height:1.72!important;
}
#detailPageRoot.mspj-enabled .mspj26-sport-aside__body p:last-child{margin-bottom:0!important;}
#detailPageRoot.mspj-enabled .mspj26-sport-aside .mspj26-sport-copy{margin:0!important;}
#detailPageRoot.mspj-enabled #detailGeneralDescription{margin-bottom:0!important;}
@media (max-width: 991.98px){
  #detailPageRoot.mspj-enabled .mspj26-sport-aside{margin-top:14px!important;}
}


/* MAD SPORTS PRO V28 — align generic hotel and sport views without regressions. */
/* Back button is offered once, beside the category icon in the sticky toolbar. */
#detailPageRoot.mspj-enabled .mspj26-return-row,
#detailSportPageRoot.mspj-enabled .mspj26-return-row{
  display:none!important;
}
/* Verified checks in square recent-viewed cards: the official blue icon only.
   No white circular chip, white plate, border or halo behind it. */
#detailPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-verified,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-verified,
#detailPageRoot.mspj-enabled #interestedHotelsSection .mspj18-recent-titlebar .mspj16-recent-verified,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .mspj18-recent-titlebar .mspj16-recent-verified{
  background:transparent!important;background-color:transparent!important;
  box-shadow:none!important;border:0!important;outline:0!important;border-radius:0!important;
  padding:0!important;width:21px!important;min-width:21px!important;height:21px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
#detailPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-verified i,
#detailSportPageRoot.mspj-enabled #interestedHotelsSection .mspj16-recent-verified i{
  color:#1877f2!important;font-size:19px!important;
  text-shadow:0 1px 3px rgba(4,15,29,.55)!important;
}
/* Section headings need the same clearance on both generic hotel / sport pages.
   The JS sets --mspj25-anchor-clearance to the actual fixed navbar bottom. */
#detailPageRoot.mspj-enabled :is(#mspj4Overview,#mspj4Training,#mspj4SportsOffers,#mspj4Hotel,#mspj4Location),
#detailSportPageRoot.mspj-enabled :is(#mspj4Overview,#mspj4Training,#mspj4SportsOffers,#mspj4Hotel,#mspj4Location){
  scroll-margin-top:var(--mspj25-anchor-clearance,var(--mspj16-nav-clearance,175px))!important;
}

/* V29: ensure destination sections clear the fixed global header and tabs. */
#detailPageRoot.mspj-enabled .mspj4-stage > :is(#mspj4Overview,#mspj4Training,#mspj4SportsOffers,#mspj4Hotel,#mspj4Location),
#detailSportPageRoot.mspj-enabled .mspj4-stage > :is(#mspj4Overview,#mspj4Training,#mspj4SportsOffers,#mspj4Hotel,#mspj4Location){
  scroll-margin-top:var(--mspj25-anchor-clearance,180px)!important;
}

/* V30 — browser-native section targets; no inferred scroll owner. */
#detailPageRoot.mspj-enabled .mspj4-stage > :is(#mspj4Overview,#mspj4Training,#mspj4SportsOffers,#mspj4Hotel,#mspj4Location),
#detailSportPageRoot.mspj-enabled .mspj4-stage > :is(#mspj4Overview,#mspj4Training,#mspj4SportsOffers,#mspj4Hotel,#mspj4Location){
  scroll-margin-top:var(--mspj25-anchor-clearance,var(--mspj16-nav-clearance,175px))!important;
}
