:root{--brand:#db7900;--ink:#17130f;--muted:#736a61;--line:#eadfd4;--soft:#fff8f1;--white:#fff;--shadow:0 18px 55px rgba(70,43,20,.10)}*{box-sizing:border-box}.pageBody{margin:0;background:#fbfaf8;color:var(--ink);font-family:'DM Sans',sans-serif}.pageTop{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,72px);position:sticky;top:0;z-index:50}.pageTop .brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:800}.pageTop nav{display:flex;gap:28px}.pageTop nav a{color:#5e554d;text-decoration:none;font-weight:650}.pageTop nav a:hover{color:var(--brand)}.pageWrap{max-width:1240px;margin:auto;padding:38px 24px 70px}.crumb{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:22px}.crumb a{color:var(--brand);text-decoration:none}.placementHero{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.categoryMark{width:58px;height:58px;border-radius:18px;background:var(--soft);color:var(--brand);display:grid;place-items:center;margin-bottom:18px}.categoryMark svg{width:30px;height:30px}.kicker{font-size:12px;font-weight:800;letter-spacing:.11em;color:var(--brand);text-transform:uppercase}.placementHero h1{font-family:Manrope,sans-serif;font-size:clamp(30px,4vw,52px);line-height:1.05;margin:8px 0 10px;max-width:820px}.placementHero .programme{font-size:18px;color:var(--muted);max-width:850px}.ratingBadge{min-width:160px;text-align:center;background:var(--ink);color:#fff;padding:22px;border-radius:22px}.ratingBadge strong{font-size:38px}.ratingBadge span{display:block;font-size:12px;opacity:.75;margin-top:5px}.quickFacts{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:18px 0 28px}.quickFact{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.quickFact svg{width:22px;height:22px;color:var(--brand);margin-bottom:16px}.quickFact small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.quickFact b{display:block;margin-top:5px;font-size:15px}.pageGrid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;margin-bottom:20px}.panel h2{font-family:Manrope,sans-serif;margin:0 0 18px;font-size:22px}.detailTiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detailTile{padding:15px;border-radius:14px;background:#fbfaf8;border:1px solid #f0e8e0}.detailTile small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase}.detailTile b{display:block;margin-top:4px;overflow-wrap:anywhere}.rotationRow{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.rotationRow:last-child{border:0}.rotationNo{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--brand);font-weight:800}.mapCard{overflow:hidden;padding:0}.mapCardHead{padding:20px 22px;display:flex;justify-content:space-between;align-items:center}.mapCardHead h2{margin:0}.mapCardHead a{color:var(--brand);font-weight:700;text-decoration:none;font-size:13px}.placementMap{height:330px;background:#eee}.mapEmpty{height:330px;display:grid;place-items:center;text-align:center;color:var(--muted);padding:30px}.reviewCard{border-top:1px solid var(--line);padding:20px 0}.reviewCard:first-of-type{border-top:0}.stars2{color:#e88b18;letter-spacing:2px}.reviewCard h3{margin:8px 0}.reviewCard p{line-height:1.65;color:#4e463f}.primaryLink{display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;text-decoration:none;border:0;border-radius:14px;padding:13px 18px;font-weight:800}.mapLayout{display:grid;grid-template-columns:390px 1fr;min-height:calc(100vh - 74px)}.mapSidebar{padding:24px;background:#fff;border-right:1px solid var(--line);overflow:auto;max-height:calc(100vh - 74px)}.mapSidebar h1{font:800 28px Manrope;margin:0 0 6px}.mapControls{display:grid;gap:10px;margin:20px 0}.mapControls input,.mapControls select{width:100%;height:48px;border:1px solid var(--line);border-radius:13px;padding:0 14px;background:#fff;font:inherit}.radiusLine{display:grid;grid-template-columns:1fr 120px;gap:8px}.mapSearchBtn{height:48px;border:0;border-radius:13px;background:var(--brand);color:#fff;font-weight:800;cursor:pointer}.mapFull{height:calc(100vh - 74px)}.mapResultCard{width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;margin:8px 0;cursor:pointer}.mapResultCard:hover{border-color:var(--brand);box-shadow:0 8px 24px rgba(70,43,20,.08)}.mapResultTop{display:flex;gap:12px}.miniIcon{width:40px;height:40px;flex:0 0 40px;border-radius:12px;background:var(--soft);color:var(--brand);display:grid;place-items:center}.miniIcon svg{width:21px}.mapResultCard b{display:block}.mapResultCard span{font-size:12px;color:var(--muted)}.radiusStatus{font-size:13px;color:var(--muted);padding:4px 0 10px}.dashHero{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.dashHero h1{font:800 38px Manrope;margin:3px 0}.dashStatsPage{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.dashStatPage{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.dashStatPage strong{display:block;font:800 30px Manrope}.dashStatPage span{color:var(--muted);font-size:12px}.dashColumns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.emptyState{padding:32px;text-align:center;color:var(--muted);background:#fbfaf8;border-radius:16px}.siteFooter{padding:26px;text-align:center;color:var(--muted);border-top:1px solid var(--line);background:#fff}.siteFooter b{color:var(--ink)}@media(max-width:900px){.pageTop nav{display:none}.placementHero{grid-template-columns:1fr}.ratingBadge{text-align:left}.quickFacts{grid-template-columns:1fr 1fr}.pageGrid{grid-template-columns:1fr}.mapLayout{display:block}.mapSidebar{max-height:none;border-right:0}.mapFull{height:60vh}.dashStatsPage{grid-template-columns:1fr 1fr}.dashColumns{grid-template-columns:1fr}}@media(max-width:560px){.pageWrap{padding:24px 14px 50px}.placementHero{padding:22px;border-radius:20px}.quickFacts{grid-template-columns:1fr 1fr}.quickFact{padding:14px}.detailTiles{grid-template-columns:1fr}.radiusLine{grid-template-columns:1fr}.dashStatsPage{grid-template-columns:1fr 1fr}}
/* v2.7 premium Google Maps placement card */
.gm-style .gm-style-iw-c{padding:0!important;border-radius:22px!important;box-shadow:0 18px 55px rgba(28,20,13,.22)!important;overflow:visible!important;max-width:370px!important}.gm-style .gm-style-iw-d{overflow:auto!important;padding:0!important;max-height:none!important}.gm-style .gm-style-iw-tc{filter:drop-shadow(0 5px 4px rgba(28,20,13,.08))}.gm-style .gm-ui-hover-effect{top:8px!important;right:8px!important;width:32px!important;height:32px!important;border-radius:50%!important;background:#f7f3ef!important;opacity:1!important;z-index:5}.gm-style .gm-ui-hover-effect span{margin:8px!important}.premiumMapPopup{width:330px;padding:22px;font-family:'DM Sans',Arial,sans-serif;color:#17130f}.popupTop{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.popupCategory{display:flex;align-items:center;gap:8px;color:#736a61;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.popupIcon{width:30px;height:30px;border-radius:9px;background:#fff4e8;color:var(--brand);display:grid;place-items:center}.popupIcon svg{width:17px;height:17px}.mapDistance{font-size:11px;font-weight:800;background:#f7f3ef;border-radius:999px;padding:6px 9px;color:#62584f}.premiumMapPopup h3{font:800 20px/1.18 Manrope,'DM Sans',sans-serif;margin:0 34px 5px 0;letter-spacing:-.025em}.popupMeta{font-size:12px;color:#857a70;margin-bottom:14px}.popupRating{display:flex;align-items:center;gap:11px;padding:12px 0;border-top:1px solid #eee6df;border-bottom:1px solid #eee6df}.popupRating>strong{font:800 25px Manrope,sans-serif}.popupRating>div{display:flex;flex-direction:column;gap:2px}.popupRating small{font-size:10px;color:#857a70}.mapStars{color:#db7900;letter-spacing:1px;font-size:12px}.newRating{font-size:11px;font-weight:800;color:#62584f}.popupLatest{margin:14px 0;padding:13px 14px;border-radius:14px;background:#fff8f1;color:#5f554d;font-size:11px;line-height:1.45}.popupLatest .latestLabel{font-size:9px;letter-spacing:.08em;font-weight:900;color:#9b6b3d;margin-bottom:5px;display:flex;justify-content:space-between;gap:8px}.popupLatest b{display:block;color:#28211b;margin-bottom:3px;font-size:12px}.popupLatest p{margin:0}.reviewPulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--brand);margin-right:7px;animation:reviewPulse 1s infinite alternate}@keyframes reviewPulse{to{opacity:.25}}.popupActions{display:grid;grid-template-columns:1fr auto;gap:8px}.popupActions a{text-decoration:none;border-radius:12px;padding:11px 14px;text-align:center;font-weight:800;font-size:12px}.popupPrimary{background:var(--brand);color:#fff!important}.popupRate{background:#fff;color:var(--brand)!important;border:1px solid #eadfd4}.popupRate:hover{background:#fff8f1}.gm-style .gm-style-iw{font-family:'DM Sans',Arial,sans-serif}
