/* Course map (golf-courses.html) */
.course-list>.cmap{grid-column:1/-1!important}
.cmap{margin:0 0 56px;padding-bottom:48px;border-bottom:1px solid rgba(19,36,30,.14);color:#13241e}
.cmap__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 22px}
.cmap__head .eyebrow{margin:0 0 8px}
.cmap__title{font-family:var(--display,'Cormorant Garamond',Georgia,serif);font-weight:500;font-size:clamp(1.9rem,2.8vw,2.5rem);line-height:1.05;margin:0;color:#13241e}
.cmap__tabs{display:flex;gap:0;border:1px solid rgba(19,36,30,.2)}
.cmap__tab{appearance:none;background:transparent;border:0;border-left:1px solid rgba(19,36,30,.2);padding:11px 16px;font:600 12px/1 Inter,Arial,sans-serif;letter-spacing:.06em;color:#13241e;cursor:pointer;white-space:nowrap;transition:background-color .2s,color .2s}
.cmap__tab:first-child{border-left:0}
.cmap__tab span{color:#a57d2d;margin-left:4px;font-weight:700}
.cmap__tab:hover{background:#f7f3eb}
.cmap__tab.is-on{background:#0d3b2e;color:#fff}
.cmap__tab.is-on span{color:#c9a55a}
.cmap__tab:focus-visible,.cm-region:focus-visible,.cmap__back:focus-visible{outline:2px solid #b8913f;outline-offset:2px}

.cmap__body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:40px;align-items:stretch}
.cmap__map{position:relative;background:#e3eae5;border:1px solid rgba(19,36,30,.12);overflow:hidden;height:min(640px,78vh);min-height:460px}
.cm-svg{display:block;width:100%;height:100%;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.cm-land path{fill:#f8f4ea;stroke:#b5a47c;stroke-width:calc(.8px * var(--k,1));stroke-linejoin:round}
.cm-tint{fill:#0d3b2e;fill-opacity:.045;stroke:#0d3b2e;stroke-opacity:.35;stroke-width:calc(1px * var(--k,1));stroke-dasharray:calc(3px * var(--k,1)) calc(3px * var(--k,1));transition:fill-opacity .35s,opacity .35s}
.cm-tint[data-region="central"]{fill-opacity:.075}
.cmap:not([data-region="all"]) .cm-tint{fill-opacity:0;stroke-opacity:0}
.cmap[data-peek="north"] .cm-tint[data-region="north"],
.cmap[data-peek="central"] .cm-tint[data-region="central"],
.cmap[data-peek="south"] .cm-tint[data-region="south"]{fill-opacity:.16}
.cm-hit{fill:transparent;cursor:pointer}
.cmap:not([data-region="all"]) .cm-hits{pointer-events:none}
.cm-rlabel{font-family:var(--display,'Cormorant Garamond',Georgia,serif);font-weight:500;fill:#13241e;pointer-events:none;transition:opacity .3s}
.cm-rlabel tspan{fill:#a57d2d;font-family:Inter,Arial,sans-serif;font-weight:700;font-size:.55em}
.cmap:not([data-region="all"]) .cm-rlabel{opacity:0}

.cm-pin{cursor:pointer;outline:none;transition:opacity .35s}
.cm-dot{fill:#b8913f;stroke:#fff;stroke-width:calc(1.2px * var(--k,1));transition:fill .2s}
.cm-halo{fill:#b8913f;opacity:0;pointer-events:none;transition:opacity .2s}
.cm-tap{fill:transparent;pointer-events:all}
.cm-dot{pointer-events:none}
.cm-label{font-family:Inter,Arial,sans-serif;font-weight:600;fill:#13241e;paint-order:stroke;stroke:#f7f3eb;stroke-width:3px;stroke-linejoin:round;opacity:0;pointer-events:none;transition:opacity .3s}
.cm-label tspan{fill:#a57d2d;font-weight:700}
.cmap:not([data-region="all"]) .cm-label{opacity:1}
.cmap[data-region="north"] .cm-pin:not([data-r-region="north"]),
.cmap[data-region="central"] .cm-pin:not([data-r-region="central"]),
.cmap[data-region="south"] .cm-pin:not([data-r-region="south"]){opacity:.18;pointer-events:none}
.cmap[data-region="north"] .cm-pin:not([data-r-region="north"]) .cm-label,
.cmap[data-region="central"] .cm-pin:not([data-r-region="central"]) .cm-label,
.cmap[data-region="south"] .cm-pin:not([data-r-region="south"]) .cm-label{opacity:0}
.cm-pin:hover .cm-dot,.cm-pin:focus-visible .cm-dot,.cm-pin.is-hot .cm-dot,.cm-pin.is-sel .cm-dot{fill:#0d3b2e}
.cm-pin:hover .cm-halo,.cm-pin:focus-visible .cm-halo,.cm-pin.is-hot .cm-halo,.cm-pin.is-sel .cm-halo{opacity:.22}

.cmap__back{position:absolute;left:14px;top:14px;appearance:none;border:1px solid rgba(19,36,30,.25);background:#fff;padding:9px 13px;font:600 12px/1 Inter,Arial,sans-serif;letter-spacing:.04em;color:#13241e;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .25s}
.cmap:not([data-region="all"]) .cmap__back{opacity:1;pointer-events:auto}
.cmap__hint{position:absolute;right:14px;bottom:10px;margin:0;font:500 11px/1.3 Inter,Arial,sans-serif;color:#5d6b64;opacity:0;transition:opacity .3s;pointer-events:none}
.cmap:not([data-region="all"]) .cmap__hint{opacity:1}

.cmap__panel{height:min(640px,78vh);min-height:460px;overflow-y:auto;overscroll-behavior:contain;padding-right:6px}
.cm-kicker{margin:0 0 10px;font:700 10px/1 Inter,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#a57d2d}
.cm-note{margin:18px 0 0;font-size:13px;color:#5d6b64}
.cm-region{appearance:none;display:grid;grid-template-columns:1fr auto;gap:4px 16px;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid rgba(19,36,30,.14);padding:20px 4px;color:#13241e;cursor:pointer;transition:background-color .2s}
.cm-region:last-of-type{border-bottom:1px solid rgba(19,36,30,.14)}
.cm-region:hover{background:#f7f3eb}
.cm-region__name{font-family:var(--display,'Cormorant Garamond',Georgia,serif);font-size:clamp(1.6rem,2.2vw,2rem);line-height:1}
.cm-region__count{align-self:center;font:700 11px/1 Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#a57d2d}
.cm-region__places{grid-column:1;font-size:13px;color:#33483f}
.cm-region__blurb{grid-column:1;font-size:14px;line-height:1.55;color:#5d6b64}
.cm-region__go{grid-column:2;grid-row:2/4;align-self:center;color:#b8913f;font-size:18px}
.cm-rhead h3{font-family:var(--display,'Cormorant Garamond',Georgia,serif);font-weight:500;font-size:clamp(1.7rem,2.3vw,2.1rem);line-height:1;margin:0 0 8px}
.cm-blurb{margin:0 0 16px;font-size:14px;line-height:1.55;color:#5d6b64}
.cm-showall{appearance:none;background:none;border:0;border-bottom:1px solid #c4a35b;padding:0 0 3px;margin:0 0 14px;font:700 11px/1 Inter,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#13241e;cursor:pointer}
.cm-group{border-top:1px solid rgba(19,36,30,.14);padding:12px 8px 10px;transition:background-color .2s,opacity .2s}
.cm-group.is-hot,.cm-group.is-on{background:#f7f3eb}
.cm-group.is-on{box-shadow:inset 2px 0 0 #b8913f}
.cm-group.is-dim{opacity:.55}
.cm-group__head{display:flex;justify-content:space-between;margin:0 0 6px;font:700 11px/1.2 Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#13241e}
.cm-group__head b{color:#a57d2d}
.cm-group ul{list-style:none;margin:0;padding:0}
.cm-group li a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;color:#13241e;text-decoration:none;font-size:15px;border-bottom:1px dotted transparent}
.cm-group li a:hover span{color:#0d3b2e;text-decoration:underline;text-decoration-color:#b8913f;text-underline-offset:3px}
.cm-group li small{flex:none;font:600 10px/1 Inter,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#8a8f86}
.cmap__panel p a{color:#13241e}

/* Also bookable lists */
.cm-also ul{list-style:none;margin:6px 0 0;padding:0;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.cm-also li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding:10px 0;border-top:1px solid rgba(19,36,30,.1);scroll-margin-top:120px}
.cm-also__name{font-weight:600;color:#13241e;font-size:15px}
.cm-also__area{font-size:13px;color:#5d6b64;margin-right:auto}
.cm-also li a{font-size:10px!important}
.cm-also__note{font-size:13px!important;color:#5d6b64!important}
.course-row{scroll-margin-top:120px}
.is-flash{animation:cmFlash 1.6s ease}
@keyframes cmFlash{0%,40%{box-shadow:0 0 0 3px #c9a55a;background-color:#f7f3eb}100%{box-shadow:0 0 0 0 transparent}}

@media (max-width:900px){
  .cmap__head{flex-direction:column;align-items:stretch;gap:16px}
  .cmap__tabs{width:100%}
  .cmap__tab{flex:1;padding:12px 4px;font-size:12px;letter-spacing:0}
  .cmap__tab span{display:block;margin:4px 0 0}
  .cmap__body{grid-template-columns:1fr;gap:18px}
  .cmap__map{height:auto;min-height:0;aspect-ratio:3/4;max-height:68vh}
  .cmap__panel{height:auto;min-height:0;overflow:visible;padding:0;scroll-margin-top:90px}
  .cm-also ul{grid-template-columns:1fr}
  .cmap__hint{left:14px;right:auto}
}
@media (prefers-reduced-motion:reduce){.cm-tint,.cm-pin,.cm-label,.cm-dot,.cm-halo{transition:none}.is-flash{animation:none}}
.course-list>.region-more.cm-also{display:block!important;padding:18px 0 14px}
.cm-also .region-more__label{margin:0 0 6px}
.cm-also__note{margin:12px 0 0!important}
@media (min-width:901px){.cm-also ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cmap__intro{max-width:56ch;margin:10px 0 0;font-size:15px;line-height:1.6;color:#33483f}
.cmap__intro a,.cm-note a{color:#13241e;text-decoration:underline;text-decoration-color:#b8913f;text-underline-offset:3px}
.cmap__head{align-items:flex-end}

/* Map dressing */
.cm-grat polyline{fill:none;stroke:#13241e;stroke-opacity:.09;stroke-width:calc(.6px * var(--k,1))}
.cm-glab text{font:500 9px Inter,Arial,sans-serif;fill:#13241e;fill-opacity:.4;letter-spacing:.04em}
.cm-country{font-family:Inter,Arial,sans-serif;font-weight:600;letter-spacing:.32em;fill:#13241e;fill-opacity:.28}
.cm-sea{font-family:var(--display,'Cormorant Garamond',Georgia,serif);font-style:italic;fill:#3e6b5d;fill-opacity:.6;letter-spacing:.06em}
.cm-sea--big{font-style:normal;font-family:Inter,Arial,sans-serif;font-weight:600;letter-spacing:.5em;fill-opacity:.35}
.cm-isl circle{fill:#b5a47c}
.cm-isl text{font-family:Inter,Arial,sans-serif;font-weight:600;fill:#13241e;fill-opacity:.55;letter-spacing:.04em}
.cm-base text{font-family:var(--display,'Cormorant Garamond',Georgia,serif);font-style:italic;font-weight:600;fill:#0d3b2e;paint-order:stroke;stroke:#f8f4ea;stroke-width:calc(3px * var(--k,1));pointer-events:none;transition:opacity .3s}
.cm-glab,.cm-deco,.cm-base{transition:opacity .35s}
.cmap:not([data-region="all"]) .cm-glab,.cmap:not([data-region="all"]) .cm-deco .cm-country,.cmap:not([data-region="all"]) .cm-deco .cm-sea,.cmap:not([data-region="all"]) .cm-base{opacity:0}
.cm-num{font-family:Inter,Arial,sans-serif;font-weight:700;fill:#fff;pointer-events:none;opacity:0;transition:opacity .3s}
.cmap:not([data-region="all"]) .cm-num{opacity:1}
.cmap:not([data-region="all"]) .cm-dot{fill:#0d3b2e;stroke:#c9a55a;stroke-width:calc(1.6px * var(--k,1))}
.cmap:not([data-region="all"]) .cm-pin:hover .cm-dot,.cmap:not([data-region="all"]) .cm-pin.is-hot .cm-dot,.cmap:not([data-region="all"]) .cm-pin.is-sel .cm-dot,.cmap:not([data-region="all"]) .cm-pin:focus-visible .cm-dot{fill:#b8913f;stroke:#fff}
.cmap:not([data-region="all"]) .cm-label tspan{display:none}
.cm-rlabel{paint-order:stroke;stroke:#f8f4ea;stroke-width:calc(4px * var(--k,1))}
.cmap__north{position:absolute;right:14px;top:12px;display:flex;flex-direction:column;align-items:center;font:700 10px/1 Inter,Arial,sans-serif;letter-spacing:.1em;color:#13241e;opacity:.55;pointer-events:none}
.cmap__north path{fill:#13241e}
@media (max-width:600px){.cm-glab{display:none}}

/* Photo postcards + illustrations */
.cmap__body{position:relative}
.cm-leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:visible}
.cm-lead{fill:none;stroke:#b8913f;stroke-width:1;stroke-opacity:.75;transition:stroke-opacity .2s}
.cm-lead.is-hot{stroke:#0d3b2e;stroke-width:1.4;stroke-opacity:1}
.cm-lead-end{fill:#fff;stroke:#b8913f;stroke-width:1.4}
.cm-lead-end.is-hot{stroke:#0d3b2e}
.cm-lead-start{fill:#b8913f}
.cmap__photos{display:flex;flex-direction:column;gap:14px;min-width:0}
.cm-card{display:none;margin:0;background:#fff;padding:6px 6px 0;box-shadow:0 1px 2px rgba(19,36,30,.08),0 10px 24px -14px rgba(19,36,30,.45);transition:box-shadow .25s,transform .25s}
.cm-card.is-show{display:block;animation:cmCardIn .5s ease both}
.cm-card.is-link{cursor:pointer}
.cm-card:hover{box-shadow:0 1px 2px rgba(19,36,30,.1),0 16px 30px -14px rgba(19,36,30,.55)}
.cm-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.cm-card figcaption{display:flex;flex-direction:column;gap:2px;padding:8px 2px 9px}
.cm-card figcaption b{font-family:var(--display,'Cormorant Garamond',Georgia,serif);font-weight:600;font-size:17px;line-height:1.1;color:#13241e}
.cm-card figcaption span{font:500 11px/1.35 Inter,Arial,sans-serif;color:#5d6b64}
.cm-card.is-show:nth-child(2){animation-delay:.06s}.cm-card.is-show:nth-child(3){animation-delay:.12s}
@keyframes cmCardIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.cm-ico{color:#0d3b2e;pointer-events:none;transition:opacity .35s}
.cm-ico,.cm-ico *{fill:none;stroke:#0d3b2e;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
symbol .f{fill:#e9dfc6}symbol .s{fill:#c9a55a;stroke:#8a6a2a}symbol .l{fill:#d9a441}symbol .g{stroke:#7f9b8a}symbol .w{fill:#fff}
.cm-ico{opacity:.85}
.cmap:not([data-region="all"]) .cm-ico{opacity:0}

@media (min-width:1100px){
  .cmap__body{grid-template-columns:200px minmax(0,1fr) minmax(0,340px);gap:34px}
  .cmap__photos{height:min(640px,78vh);min-height:460px;justify-content:space-between;overflow:hidden}
  .cmap[data-region="all"] .cm-card img{aspect-ratio:16/10}
}
@media (max-width:1099px){
  .cmap__body{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
  .cmap__photos{grid-column:1/-1;grid-row:2;flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:4px 2px 12px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .cm-card{flex:0 0 220px;scroll-snap-align:start}
  .cm-leaders{display:none}
}
@media (max-width:900px){
  .cmap__body{grid-template-columns:1fr}
  .cmap__photos{grid-row:auto;order:2}
  .cmap__map{order:1}.cmap__panel{order:3}
  .cm-card{flex-basis:62%}
}
@media (min-width:1100px){
  .cmap[data-region="all"] .cm-card img{aspect-ratio:16/9}
  .cmap[data-region="all"] .cm-card figcaption span{display:none}
  .cmap[data-region="all"] .cm-card figcaption{padding:7px 2px 8px}
}
.course-row .xp-foot{border-top:0!important}
.course-row .xp-foot{margin-top:8px!important;padding-top:0!important}.course-row__body{padding-bottom:14px!important}
