
/* ===== v6 conformance — final pass (fonts, palette, radii) ===== */
h1,h2,h3,h4,h5,legend,summary,
[class*="__title"],[class*="__name"],[class*="-h1"],[class*="-h2"],[class*="__head"] > b,
[class*="kicker"],[class*="eyebrow"],[class*="crumb"],[class*="badge"],[class*="pill"],
[class*="count"],[class*="stamp"],[class*="label"],[class*="chip"],[class*="btn"],
[class*="cta"] a,[class*="cta"] button{
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; }
p,li,dd,dt,td,th,input,select,textarea,figcaption,small,
[class*="__body"],[class*="__note"],[class*="lead"],[class*="__meta"],[class*="__when"],[class*="__desc"]{
  font-family:'DM Sans','Segoe UI',sans-serif !important; }
[style*="Georgia"],[style*="serif;"]:not([style*="sans-serif"]){ font-family:'Space Grotesk','Segoe UI',sans-serif !important; }
.swfl-ev-sec .swfl-td-rule h2,.swfl-td-rule h2{
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:clamp(18px,1.7vw,21px) !important;
  font-weight:700 !important; letter-spacing:.12em !important; color:#0C2340 !important; }

/* v6 palette guards */
[class*="chip"],[class*="pill"],[class*="citycard"],[class*="fchip"],[class*="__switcher"] a{
  border-radius:999px !important; }
[class*="card"],[class*="tile"],[class*="panel"],[class*="faq__item"],[class*="__box"],
[class*="season__card"],[class*="weekend"],[class*="regcard"],[class*="topic"]:not([class*="__"]),
[class*="module"],[class*="callout"],[class*="__side"]{
  border-radius:18px !important; }
figure:not([class*="hero"]) img,[class*="__img"],[class*="__media"],[class*="__fig"] img{
  border-radius:16px !important; }
[class*="__day"],[class*="__dist"],[class*="__glyphbox"],[class*="__mark"]{ border-radius:12px !important; }
button:not([class*="chip"]):not([class*="pill"]),
a[class*="btn"],[class*="cta"] > a,input[type="submit"]{
  border-radius:999px !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-weight:700 !important; }
[class*="band"],[class*="wrap"],[class*="shell"],[class*="hero"]{ border-radius:0 !important; }

/* ===== polish pass: chips, band rhythm, list rows, info bar ===== */
.s2-city-band button,.s2-storm-city button,[class*="cityfilter"] button,[class*="citynav"] button{
  border-radius:999px !important; height:auto !important; min-height:46px !important;
  padding:12px 18px !important; display:inline-flex !important; align-items:center !important;
  justify-content:center !important; gap:8px !important; line-height:1.15 !important;
  white-space:nowrap !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important;
  font-size:14px !important; }
.s2-city-band button b,.s2-storm-city button b{ margin-left:0 !important; font-size:12.5px !important; }
.s2-golf-city-nav,.s2-city-band,.s2-rest-nav,.swfl-ct-cityband,.swfl-gd-citynav,.swfl-td-cityfilter,.swfl-ct-citynav{
  padding-top:48px !important; padding-bottom:48px !important; }
.s2-city-band .s2-shell{ padding-block:0 !important; align-items:start !important; }
.s2-city-band .s2-shell > span{ padding-top:15px !important; }
.s2-community-row,.swfl-community-tile--compact{
  grid-template-columns:168px minmax(0,1fr) !important; column-gap:20px !important;
  padding:16px !important; align-items:center !important; }
.s2-community-row .swfl-community-tile__media,.swfl-community-tile--compact .swfl-community-tile__media{
  aspect-ratio:4/3 !important; height:auto !important; }
.s2-community-row .swfl-community-tile__media img,
.swfl-community-tile--compact .swfl-community-tile__media img{
  width:100% !important; height:100% !important; object-fit:cover !important; }
.swfl-brand-infobar > div{ flex-wrap:nowrap !important; }
@media (max-width:1200px){
  .swfl-brand-infobar > div > div:last-child{ display:none !important; }
  .swfl-brand-infobar > div{ justify-content:flex-start !important; }
}
@media (max-width:820px){
  .swfl-brand-infobar > div > div:first-child > *:nth-child(n+3){ display:none !important; }
}
@media (max-width:1240px){
  .s2-community-row,.swfl-community-tile--compact{ grid-template-columns:132px minmax(0,1fr) !important; column-gap:16px !important; }
}
@media (max-width:760px){
  .s2-golf-city-nav,.s2-city-band,.s2-rest-nav,.swfl-ct-cityband,.swfl-gd-citynav,
  .swfl-td-cityfilter,.swfl-ct-citynav{ padding-top:32px !important; padding-bottom:32px !important; }
  .s2-community-row,.swfl-community-tile--compact{ grid-template-columns:112px minmax(0,1fr) !important; }
}


/* ===== polish pass 2: directory result cards, info bar, assistant ===== */
.swfl-rd-card,.swfl-gd-card{
  grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) !important;
  column-gap:34px !important; row-gap:12px !important; align-items:start !important;
  padding:24px 26px !important; }
.swfl-rd-card__head,.swfl-gd-card__head{ grid-column:1 !important; grid-row:1 !important; }
.swfl-rd-card__meta,.swfl-gd-card__meta{ grid-column:1 !important; grid-row:2 !important;
  display:flex !important; flex-wrap:wrap !important; gap:6px 14px !important; align-items:baseline !important; }
.swfl-rd-card__badges,.swfl-gd-card__badges{ grid-column:1 !important; grid-row:3 !important;
  display:flex !important; flex-wrap:wrap !important; gap:8px !important; }
.swfl-rd-card__badges > span,.swfl-gd-card__badges > span{
  height:auto !important; min-height:0 !important; padding:7px 13px !important; border-radius:999px !important;
  line-height:1.2 !important; white-space:nowrap !important; font-size:12.5px !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-weight:700 !important;
  background:#EDF6F8 !important; color:#0B6474 !important; }
.swfl-rd-card__distrow,.swfl-gd-card__distrow{ grid-column:2 !important; grid-row:1 !important;
  background:none !important; border:0 !important; padding:0 !important; min-height:0 !important; }
.swfl-rd-card__dist,.swfl-gd-card__dist{ display:inline-flex !important; align-items:center !important;
  padding:8px 14px !important; border-radius:999px !important; background:#0C2340 !important; color:#FFFFFF !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:12.5px !important; font-weight:700 !important;
  line-height:1.2 !important; white-space:nowrap !important; }
.swfl-rd-card__addr,.swfl-gd-card__addr{ grid-column:2 !important; grid-row:2 !important;
  font-size:14.5px !important; line-height:23px !important; color:#62707E !important; }
.swfl-rd-card__actions,.swfl-gd-card__actions{ grid-column:2 !important; grid-row:3 !important;
  display:flex !important; flex-wrap:wrap !important; gap:10px !important; justify-content:flex-start !important; }
.swfl-rd-card__actions a,.swfl-gd-card__actions a{ white-space:nowrap !important; }
.swfl-rd-card__name,.swfl-gd-card__name{ text-wrap:pretty !important; }
@media (max-width:1000px){
  .swfl-rd-card,.swfl-gd-card{ grid-template-columns:minmax(0,1fr) !important; }
  .swfl-rd-card > *,.swfl-gd-card > *{ grid-column:1 !important; grid-row:auto !important; }
}
/* info bar: one clean line, never clipped */
.swfl-brand-infobar > div,.swfl-brand-infobar > div > div{ flex-wrap:nowrap !important; min-width:0 !important; }
.swfl-brand-infobar span,.swfl-brand-infobar a{ white-space:nowrap !important; }
@media (max-width:1180px){ .swfl-brand-infobar > div > div:last-child{ display:none !important; } }
@media (max-width:1000px){ .swfl-brand-infobar > div > div:first-child > *:nth-child(n+4){ display:none !important; } }
@media (max-width:760px){ .swfl-brand-infobar > div > div:first-child > *:nth-child(n+3){ display:none !important; } }

.swfl-rd-link,.swfl-gd-link,.swfl-rd-card__actions a,.swfl-gd-card__actions a{
  display:inline-flex !important; align-items:center !important; gap:7px !important;
  padding:11px 18px !important; border-radius:999px !important; line-height:1.15 !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:13.5px !important; font-weight:700 !important; }
.swfl-rd-card__distrow,.swfl-gd-card__distrow{ display:flex !important; justify-content:flex-start !important; }
.swfl-rd-card__dist,.swfl-gd-card__dist{ flex:0 0 auto !important; }
.swfl-rd-card__cuisine,.swfl-rd-card__city,.swfl-gd-card__cuisine,.swfl-gd-card__city{ white-space:nowrap !important; }

/* section headings share the 1520 shell so bands align with heroes */
main > section > h1,main > section > h2,main > section > h3,main > section > p,
main > section > header,main > section > span,main > section > a,
.s2-rest-nav > *,.s2-golf-city-nav > *,.s2-city-band > *,.s2-rest-near > *,.s2-rest-results > *{
  max-width:1520px !important; margin-left:auto !important; margin-right:auto !important; }

/* ===== community picker (near-your-community) ===== */
section:has(> .swfl-cp-filter){ background:#F5FAFB !important; border-top:1px solid #E7ECF1 !important;
  display:grid !important; justify-items:center !important; row-gap:0 !important; }
.swfl-cp-filter{ width:100% !important; max-width:660px !important; padding:19px 28px !important;
  border:1px solid #CFE5E9 !important; border-radius:999px !important; background:#FFFFFF !important;
  box-shadow:0 12px 30px rgba(9,24,46,.08) !important; font-family:'DM Sans','Segoe UI',sans-serif !important;
  font-size:16.5px !important; color:#0C2340 !important; text-align:center !important; }
.swfl-cp-filter::placeholder{ color:#8A96A5 !important; }
.swfl-cp-featured{ display:flex !important; flex-wrap:wrap !important; justify-content:center !important;
  align-items:center !important; gap:10px !important; margin:24px 0 0 !important; max-width:1000px !important; }
.swfl-cp-featured > span:first-child{ width:100% !important; text-align:center !important; margin-bottom:4px !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:11.5px !important; font-weight:700 !important;
  letter-spacing:.18em !important; text-transform:uppercase !important; color:#F58220 !important; }
.swfl-cp-item{ display:inline-flex !important; align-items:center !important; padding:11px 19px !important;
  border:1px solid #DCE7EC !important; border-radius:999px !important; background:#FFFFFF !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:14px !important; font-weight:700 !important;
  color:#0C2340 !important; white-space:nowrap !important; transition:border-color .2s ease, color .2s ease, transform .2s ease; }
.swfl-cp-item:hover{ border-color:#F58220 !important; color:#F58220 !important; transform:translateY(-2px); }
.swfl-cp-toggle{ margin-top:26px !important; padding:13px 24px !important; border:1px solid #0C2340 !important;
  border-radius:999px !important; background:transparent !important; color:#0C2340 !important; cursor:pointer !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:14px !important; font-weight:700 !important; }
.swfl-cp-toggle:hover{ background:#0C2340 !important; color:#FFFFFF !important; }
.swfl-cp-noresult{ margin-top:18px !important; text-align:center !important; color:#62707E !important; }
.swfl-cp-all{ margin-top:30px !important; width:100% !important; max-width:1200px !important;
  display:grid !important; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)) !important; gap:26px 30px !important;
  padding:32px !important; background:#FFFFFF !important; border:1px solid #E3EBF0 !important;
  border-radius:20px !important; box-shadow:0 22px 50px rgba(9,24,46,.08) !important; }
.swfl-cp-group{ align-content:start !important; }
.swfl-cp-group > div:first-child{ font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:11.5px !important;
  font-weight:700 !important; letter-spacing:.16em !important; text-transform:uppercase !important; color:#0E7C8E !important;
  padding-bottom:12px !important; margin-bottom:12px !important; border-bottom:1px solid #E7ECF1 !important; }
.swfl-cp-group > div:last-child{ display:flex !important; flex-wrap:wrap !important; gap:8px !important; }
.swfl-cp-group .swfl-cp-item{ font-size:13.5px !important; padding:9px 15px !important; background:#F5FAFB !important; }

/* ===== specificity-safe corrections ===== */
.swfl-v6 .swfl-rd-card__dist,.swfl-v6 .swfl-gd-card__dist{
  width:max-content !important; max-width:100% !important; align-self:flex-start !important;
  justify-content:flex-start !important; }
.swfl-v6 .swfl-rd-card__shot{ width:100% !important; height:auto !important; max-height:none !important; }
@media (max-width:1000px){
  .swfl-v6 .swfl-rd-card__shot{ width:100% !important; aspect-ratio:auto !important; height:250px !important; max-height:none !important; }
}
.swfl-v6 .swfl-cp-filter{ border-radius:999px !important; }
.swfl-v6 .swfl-cp-item{ border-radius:999px !important; }
.swfl-v6 .swfl-cp-featured > span:first-child{ color:#F58220 !important; font-size:11.5px !important;
  font-weight:700 !important; letter-spacing:.18em !important; text-transform:uppercase !important; }
.swfl-v6 .swfl-cp-group > div:first-child{ color:#0E7C8E !important; }

/* ===== golf course cards ===== */
.swfl-v6 .swfl-gd-card{ display:grid !important; grid-template-columns:minmax(0,1fr) auto !important;
  column-gap:24px !important; row-gap:10px !important; align-items:start !important; padding:24px 26px !important; }
.swfl-v6 .swfl-gd-card__top{ display:contents !important; }
.swfl-v6 .swfl-gd-card__id{ grid-column:1 !important; grid-row:1 !important; display:grid !important; gap:4px !important; }
.swfl-v6 .swfl-gd-badge{ grid-column:2 !important; grid-row:1 !important; justify-self:end !important;
  display:inline-flex !important; align-items:center !important; gap:7px !important; white-space:nowrap !important;
  padding:7px 14px !important; border-radius:999px !important; line-height:1.2 !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:12.5px !important; font-weight:700 !important; }
.swfl-v6 .swfl-gd-card__meta{ grid-column:1 / -1 !important; grid-row:2 !important; display:flex !important;
  flex-wrap:wrap !important; align-items:center !important; gap:10px 14px !important; }
.swfl-v6 .swfl-gd-card__city{ font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:12px !important;
  font-weight:700 !important; letter-spacing:.14em !important; text-transform:uppercase !important;
  color:#0B6474 !important; white-space:nowrap !important; }
.swfl-v6 .swfl-gd-card__mi{ display:inline-flex !important; align-items:center !important; width:max-content !important;
  max-width:100% !important; padding:8px 14px !important; border-radius:999px !important; background:#0C2340 !important;
  color:#FFFFFF !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:12.5px !important;
  font-weight:700 !important; line-height:1.2 !important; white-space:nowrap !important; }
.swfl-v6 .swfl-gd-card__note{ grid-column:1 / -1 !important; grid-row:3 !important; margin:0 !important;
  font-size:14.5px !important; line-height:23px !important; color:#62707E !important; }
.swfl-v6 .swfl-gd-card__actions{ grid-column:1 / -1 !important; grid-row:4 !important; display:flex !important;
  flex-wrap:wrap !important; gap:10px !important; justify-content:flex-start !important; }
@media (max-width:700px){
  .swfl-v6 .swfl-gd-card{ grid-template-columns:minmax(0,1fr) !important; }
  .swfl-v6 .swfl-gd-badge{ grid-column:1 !important; grid-row:2 !important; justify-self:start !important; }
  .swfl-v6 .swfl-gd-card__meta{ grid-row:3 !important; }
  .swfl-v6 .swfl-gd-card__note{ grid-row:4 !important; }
  .swfl-v6 .swfl-gd-card__actions{ grid-row:5 !important; }
}

/* hero chips and photo captions never clip */
.swfl-v6 section[class*="hero"] a[style]{
  white-space:nowrap !important; line-height:1.25 !important; height:auto !important; }
.swfl-v6 section[class*="hero"] span[style*="border-radius"]{ height:auto !important;
  align-items:center !important; line-height:1.25 !important; }
.swfl-v6 figcaption{ line-height:1.3 !important; height:auto !important; width:max-content !important;
  max-width:100% !important; white-space:nowrap !important; }

/* things-to-do: area chips + activity cards */
.swfl-v6 .swfl-td-area{ display:inline-flex !important; align-items:center !important; gap:9px !important;
  height:auto !important; min-height:46px !important; padding:12px 18px !important; border-radius:999px !important;
  white-space:nowrap !important; line-height:1.15 !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important;
  font-size:14px !important; font-weight:700 !important; }
.swfl-v6 .swfl-td-area > span{ font-size:12.5px !important; color:#0B6474 !important; }
.swfl-v6 .swfl-td-areas{ display:flex !important; flex-wrap:wrap !important; gap:10px !important; }
.swfl-v6 .swfl-td-topic__head{ align-items:center !important; }
.swfl-v6 .swfl-td-topic__title{ text-wrap:pretty !important; }
.swfl-v6 .swfl-td-topic__meta{ display:flex !important; flex-wrap:wrap !important; align-items:baseline !important;
  column-gap:10px !important; row-gap:4px !important; }
.swfl-v6 .swfl-td-topic__kind{ white-space:nowrap !important; }

/* ===== golf: featured course + card grid ===== */
.swfl-v6 .swfl-gd-grid{ display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(330px,1fr)) !important; gap:22px !important; align-items:stretch !important; }
.swfl-v6 .swfl-gd-card{ display:grid !important; grid-template-columns:minmax(0,1fr) !important;
  row-gap:10px !important; padding:24px !important; align-content:start !important; border-radius:18px !important;
  border:1px solid #E3EBF0 !important; background:#FFFFFF !important; }
.swfl-v6 .swfl-gd-card__top{ display:contents !important; }
.swfl-v6 .swfl-gd-badge{ grid-column:1 !important; grid-row:1 !important; justify-self:start !important; }
.swfl-v6 .swfl-gd-card__id{ grid-column:1 !important; grid-row:2 !important; }
.swfl-v6 .swfl-gd-card__name{ font-size:20px !important; line-height:1.15 !important; text-wrap:pretty !important; }
.swfl-v6 .swfl-gd-card__meta{ grid-column:1 !important; grid-row:3 !important; }
.swfl-v6 .swfl-gd-card__note{ grid-column:1 !important; grid-row:4 !important; }
.swfl-v6 .swfl-gd-card__actions{ grid-column:1 !important; grid-row:5 !important; margin-top:6px !important; }
.swfl-v6 .swfl-gd-lane{ padding-bottom:18px !important; }
@media (max-width:1050px){
  .swfl-v6 .swfl-gd-featured__panel{ grid-template-columns:minmax(0,1fr) !important; }
  .swfl-v6 .swfl-gd-featured__panel figure{ min-height:300px !important; grid-row:1 !important; }
  .swfl-v6 .swfl-gd-featured__panel > div{ padding:36px 28px 32px !important; }
}

.swfl-v6 .swfl-gd-lane__count,.swfl-v6 .swfl-td-lane__count{ display:inline-flex !important; align-items:baseline !important;
  gap:9px !important; white-space:nowrap !important; margin-left:6px !important; }
.swfl-v6 .swfl-gd-lane__count > span{ font-size:15px !important; font-weight:700 !important; color:#62707E !important;
  letter-spacing:.04em !important; }

/* golf card photos + city band rhythm */
.swfl-v6 .swfl-gd-card{ padding:0 0 24px !important; overflow:hidden !important; }
.swfl-v6 .swfl-gd-card__shot{ grid-column:1 !important; grid-row:1 !important; height:196px !important;
  margin:0 0 6px !important; background:#EDF3F6 !important; overflow:hidden !important; }
.swfl-v6 .swfl-gd-card__shot image-slot{ display:block !important; width:100% !important; height:100% !important; }
.swfl-v6 .swfl-gd-badge{ grid-row:2 !important; margin:0 24px !important; }
.swfl-v6 .swfl-gd-card__id{ grid-row:3 !important; margin:0 24px !important; }
.swfl-v6 .swfl-gd-card__meta{ grid-row:4 !important; margin:0 24px !important; }
.swfl-v6 .swfl-gd-card__note{ grid-row:5 !important; margin:0 24px !important; }
.swfl-v6 .swfl-gd-card__actions{ grid-row:6 !important; margin:6px 24px 0 !important; align-self:end !important; }
.swfl-v6 .swfl-gd-card{ grid-template-rows:auto auto auto auto minmax(0,1fr) auto !important; }
.swfl-v6 .swfl-gd-citynav{ padding:0 40px !important; max-width:1520px !important; margin:26px auto 0 !important; }
.swfl-v6 .s2-golf-city-nav{ padding-top:64px !important; padding-bottom:68px !important; }
.swfl-v6 .s2-golf-city-nav > h2{ padding-top:0 !important; }

/* golf lanes sit on light aqua so white cards read as cards */
.swfl-v6 .swfl-gd-wrap,.swfl-v6 .swfl-gd-wrap--alt{ background:#F1F7F9 !important;
  padding-top:64px !important; padding-bottom:72px !important; max-width:none !important; }
.swfl-v6 .swfl-gd-wrap > *{ max-width:1520px !important; margin-left:auto !important; margin-right:auto !important; }
.swfl-v6 .swfl-gd-card{ box-shadow:0 14px 34px rgba(9,24,46,.07) !important; }
.swfl-v6 .swfl-gd-card:hover{ box-shadow:0 24px 52px rgba(9,24,46,.14) !important; }
.swfl-v6 .swfl-gd-featured{ background:#F1F7F9 !important; padding-bottom:56px !important; }

/* uniform 48px content inset for hero/CTA/aqua inners */
.swfl-v6 .swfl-td-hero__in,.swfl-v6 .swfl-ev-hero__in,.swfl-v6 .swfl-ct-hero__in,
.swfl-v6 .swfl-ev-cta__in,.swfl-v6 .swfl-ct-cta__in,.swfl-v6 .swfl-td-cta__in{
  max-width:1520px !important; margin-left:auto !important; margin-right:auto !important;
  padding-left:48px !important; padding-right:48px !important; }
.swfl-v6 .swfl-td-wrap--aqua > div,.swfl-v6 .swfl-ev-sec--aqua > div,
.swfl-v6 .swfl-td-wrap > div[class=""],.swfl-v6 .swfl-ev-sec > div:not([class]){
  padding-left:0 !important; padding-right:0 !important; }
@media (max-width:860px){
  .swfl-v6 .swfl-td-hero__in,.swfl-v6 .swfl-ev-hero__in,.swfl-v6 .swfl-ct-hero__in,
  .swfl-v6 .swfl-ev-cta__in,.swfl-v6 .swfl-ct-cta__in,.swfl-v6 .swfl-td-cta__in{
    padding-left:20px !important; padding-right:20px !important; }
}

/* event row tags + times never wrap inside their pills */
.swfl-v6 .swfl-ev-cat,.swfl-v6 [class*="row__tags"] > span,.swfl-v6 [class*="__tags"] > span{
  white-space:nowrap !important; line-height:1.2 !important; height:auto !important;
  padding:6px 11px !important; border-radius:999px !important; }
.swfl-v6 [class*="row__tags"],.swfl-v6 [class*="__tags"]{ display:flex !important; flex-wrap:wrap !important;
  align-items:center !important; gap:8px !important; }
.swfl-v6 [class*="row__time"],.swfl-v6 [class*="__time"]{ white-space:nowrap !important; }
.swfl-v6 [class*="row__day"]{ white-space:nowrap !important; }

/* contractors: wrap already provides the 48px inset */
.swfl-v6 .swfl-ct-wrap > *,.swfl-v6 .swfl-td-wrap > *,.swfl-v6 .swfl-gd-wrap > *,.swfl-v6 .swfl-rd-wrap > *,
.swfl-v6 .swfl-ev-sec > *{ padding-left:0 !important; padding-right:0 !important; }

/* contractors: service cards + city band */
.swfl-v6 .swfl-ct-card{ display:grid !important; grid-template-columns:minmax(0,1fr) !important;
  row-gap:10px !important; padding:24px !important; align-content:start !important; }
.swfl-v6 .swfl-ct-card__head{ grid-column:1 !important; grid-row:1 !important; display:flex !important;
  align-items:center !important; justify-content:space-between !important; gap:12px !important; }
.swfl-v6 .swfl-ct-card__scope{ grid-column:1 !important; grid-row:2 !important; margin:0 !important;
  font-size:14.5px !important; line-height:23px !important; color:#62707E !important; }
.swfl-v6 .swfl-ct-card__foot{ grid-column:1 !important; grid-row:3 !important; display:flex !important;
  align-items:center !important; justify-content:space-between !important; flex-wrap:wrap !important; gap:10px !important; }
.swfl-v6 .swfl-ct-card__sponsor{ grid-column:1 !important; grid-row:4 !important; margin:0 !important; }
.swfl-v6 .swfl-ct-citynav{ display:flex !important; flex-wrap:wrap !important; align-items:center !important;
  gap:12px !important; padding:0 48px !important; max-width:1520px !important; margin:0 auto !important; }
.swfl-v6 .swfl-ct-citynav > h2{ flex:1 0 100% !important; margin:0 0 10px !important; }
.swfl-v6 .swfl-ct-citygrid{ display:flex !important; flex-wrap:wrap !important; gap:12px !important; }
.swfl-v6 .swfl-ct-cityband{ padding-top:64px !important; padding-bottom:68px !important; }
@media (max-width:860px){ .swfl-v6 .swfl-ct-citynav{ padding:0 20px !important; } }

/* s2-shell owns the horizontal inset; the band must not add its own */
.swfl-v6 section:has(> .s2-shell){ padding-left:0 !important; padding-right:0 !important; }

/* kickers are always uppercase tracked labels; phone numbers never wrap */
.swfl-v6 p.s2-kicker,.swfl-v6 div.s2-kicker,.swfl-v6 span.s2-kicker,.swfl-v6 .s2-kicker{
  text-transform:uppercase !important; letter-spacing:.16em !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-weight:700 !important; }
.swfl-v6 [class*="contact-row"] a,.swfl-v6 a[href^="tel:"]{ white-space:nowrap !important; }

.swfl-v6 .s2-shell{ margin-left:auto !important; margin-right:auto !important; width:100% !important; }

/* hurricane: hero link row is plain links, row chips never wrap */
.swfl-v6 .s2-storm-actions{ display:flex !important; flex-wrap:wrap !important; gap:26px !important; }
.swfl-v6 .s2-storm-actions a{ border:0 !important; border-radius:0 !important; padding:0 !important;
  background:transparent !important; display:inline-flex !important; align-items:center !important;
  gap:8px !important; white-space:nowrap !important; }
.swfl-v6 .s2-storm-badge,.swfl-v6 .s2-storm-row [class*="badge"],.swfl-v6 .s2-storm-row__open,
.swfl-v6 [class*="row__open"]{ white-space:nowrap !important; }

.swfl-v6 .s2-how-shell,.swfl-v6 .s2-shell,.swfl-v6 [class*="__shell"]:not(.swfl-content-shell),
.swfl-v6 [class*="-shell"]:not(.swfl-content-shell){
  width:100% !important; max-width:1520px !important; margin:0 auto !important; margin-inline:auto !important;
  padding-left:48px !important; padding-right:48px !important; box-sizing:border-box !important; }
@media (max-width:860px){
  .swfl-v6 .s2-how-shell,.swfl-v6 .s2-shell,.swfl-v6 [class*="__shell"]:not(.swfl-content-shell),
  .swfl-v6 [class*="-shell"]:not(.swfl-content-shell){
    padding-left:20px !important; padding-right:20px !important; }
}

/* form controls follow the brand */
.swfl-v6 input[type="text"],.swfl-v6 input[type="email"],.swfl-v6 input[type="url"],
.swfl-v6 input[type="search"],.swfl-v6 input[type="tel"],.swfl-v6 textarea,.swfl-v6 select{
  border-radius:14px !important; border:1px solid #CFE5E9 !important; padding:14px 16px !important;
  font-family:'DM Sans','Segoe UI',sans-serif !important; font-size:15.5px !important; color:#0C2340 !important; }
.swfl-v6 input::placeholder,.swfl-v6 textarea::placeholder{ color:#8A96A5 !important; }
.swfl-v6 input[type="submit"],.swfl-v6 button[type="submit"]{
  background:#F58220 !important; border:0 !important; color:#FFFFFF !important; border-radius:999px !important;
  padding:15px 30px !important; white-space:nowrap !important; cursor:pointer !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:14.5px !important; font-weight:700 !important; }
.swfl-v6 input[type="submit"]:hover,.swfl-v6 button[type="submit"]:hover{ background:#D96A15 !important; }
.swfl-v6 form label,.swfl-v6 [class*="field"] label{ font-family:'Space Grotesk','Segoe UI',sans-serif !important; }

/* gravity-forms controls follow the brand too */
.swfl-v6 .gform_wrapper input[type="text"],.swfl-v6 .gform_wrapper input[type="email"],
.swfl-v6 .gform_wrapper input[type="url"],.swfl-v6 .gform_wrapper input[type="tel"],
.swfl-v6 .gform_wrapper textarea,.swfl-v6 .gform_wrapper select,
.swfl-v6 .gform-body input,.swfl-v6 .gform-body textarea{
  border-radius:14px !important; border:1px solid #CFE5E9 !important; padding:14px 16px !important; }
.swfl-v6 button.gform_button,.swfl-v6 .gform_button.button,.swfl-v6 input.gform_button,
.swfl-v6 .gform_footer button,.swfl-v6 .gform_footer input[type="submit"]{
  background:#F58220 !important; border:0 !important; color:#FFFFFF !important; border-radius:999px !important;
  padding:16px 30px !important; height:auto !important; white-space:nowrap !important; cursor:pointer !important;
  font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:14.5px !important; font-weight:700 !important; }
.swfl-v6 button.gform_button:hover,.swfl-v6 .gform_button.button:hover{ background:#D96A15 !important; }

.swfl-v6 main[class*="bundle-guide"] > section{ padding-left:0 !important; padding-right:0 !important; }
.swfl-v6 main[class*="bundle-guide"] > section > div{ padding-left:48px !important; padding-right:48px !important;
  max-width:1520px !important; margin-left:auto !important; margin-right:auto !important;
  box-sizing:border-box !important; width:100% !important; }
@media (max-width:860px){
  .swfl-v6 main[class*="bundle-guide"] > section > div{ padding-left:20px !important; padding-right:20px !important; }
}

/* unclassed inline-styled bands: one 48px inset, applied on the inner column */
.swfl-v6 main > section:not([class]){ padding-left:0 !important; padding-right:0 !important; }
.swfl-v6 main > section:not([class]) > div{ max-width:1520px !important; width:100% !important;
  margin-left:auto !important; margin-right:auto !important; box-sizing:border-box !important;
  padding-left:48px !important; padding-right:48px !important; }
@media (max-width:860px){
  .swfl-v6 main > section:not([class]) > div{ padding-left:20px !important; padding-right:20px !important; }
}

/* ===== how-it-works: give the body sections structure ===== */
.swfl-v6 .s2-how-section{ display:grid !important; gap:0 !important; }
.swfl-v6 .s2-how-section > .s2-kicker{ margin:0 0 14px !important; }
.swfl-v6 .s2-how-section > h2{ margin:0 !important; font-size:clamp(30px,3.2vw,44px) !important;
  line-height:1.08 !important; letter-spacing:-.03em !important; }
.swfl-v6 .s2-how-intro{ margin:18px 0 0 !important; max-width:62ch !important; font-size:17.5px !important;
  line-height:30px !important; color:#62707E !important; }
.swfl-v6 .s2-how-section > .s2-sponsor-ledger,.swfl-v6 .s2-how-section > .s2-check-list,
.swfl-v6 .s2-how-section > .s2-open-example,.swfl-v6 .s2-how-section > .s2-text-link{ margin-top:38px !important; }

.swfl-v6 .s2-sponsor-ledger{ display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr)) !important; gap:22px !important;
  border:0 !important; padding:0 !important; }
.swfl-v6 .s2-sponsor-ledger > div{ padding:32px !important; border-radius:20px !important;
  border:1px solid #E3EBF0 !important; background:#FFFFFF !important; display:grid !important;
  gap:14px !important; align-content:start !important; box-shadow:0 14px 34px rgba(9,24,46,.05) !important; }
.swfl-v6 .s2-sponsor-ledger > div:first-child{ background:#F1F7F9 !important; border-color:#D5E5EB !important; }
.swfl-v6 .s2-sponsor-ledger > div > span:first-child{ font-family:'Space Grotesk','Segoe UI',sans-serif !important;
  font-size:11.5px !important; font-weight:700 !important; letter-spacing:.16em !important;
  text-transform:uppercase !important; color:#0B6474 !important; }
.swfl-v6 .s2-sponsor-ledger > div:last-child > span:first-child{ color:#F58220 !important; }
.swfl-v6 .s2-sponsor-ledger p{ margin:0 !important; font-size:16px !important; line-height:27px !important; color:#4A5663 !important; }
.swfl-v6 .s2-sponsor-ledger ul{ display:flex !important; flex-wrap:wrap !important; gap:10px !important;
  list-style:none !important; margin:0 !important; padding:0 !important; }
.swfl-v6 .s2-sponsor-ledger li{ padding:9px 15px !important; border-radius:999px !important;
  border:1px dashed #E3C39C !important; background:#FFFBF6 !important; color:#8A6236 !important;
  text-decoration:line-through !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important;
  font-size:12.5px !important; font-weight:700 !important; letter-spacing:.08em !important;
  text-transform:uppercase !important; white-space:nowrap !important; }

.swfl-v6 .s2-check-list{ display:grid !important; gap:14px !important; list-style:none !important;
  margin:0 !important; padding:0 !important; border:0 !important; counter-reset:none !important; }
.swfl-v6 .s2-check-list > li{ display:grid !important; grid-template-columns:auto minmax(0,1fr) !important;
  gap:22px !important; align-items:start !important; padding:24px 26px !important; border:0 !important;
  border-radius:18px !important; background:#FFFFFF !important; box-shadow:0 12px 30px rgba(9,24,46,.06) !important; }
.swfl-v6 .s2-check-list > li > span:first-child{ display:inline-flex !important; align-items:center !important;
  justify-content:center !important; width:46px !important; height:46px !important; border-radius:999px !important;
  background:#0C2340 !important; color:#FFFFFF !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important;
  font-size:15px !important; font-weight:700 !important; }
.swfl-v6 .s2-check-list > li > div{ display:grid !important; gap:6px !important; }
.swfl-v6 .s2-check-list > li > div > *:first-child{ font-family:'Space Grotesk','Segoe UI',sans-serif !important;
  font-size:19px !important; font-weight:700 !important; letter-spacing:-.01em !important; color:#0C2340 !important; }
.swfl-v6 .s2-check-list > li > div > *:last-child{ font-size:16px !important; line-height:27px !important;
  color:#62707E !important; margin:0 !important; }
.swfl-v6 .s2-stamp{ display:inline-flex !important; align-items:center !important; margin-top:22px !important;
  padding:10px 16px !important; border-radius:999px !important; background:#F1F7F9 !important;
  border:1px solid #DCE7EC !important; color:#0B6474 !important; font-size:12px !important; }

.swfl-v6 .s2-open-example{ display:grid !important; grid-template-columns:auto minmax(0,1fr) !important;
  gap:22px !important; align-items:center !important; padding:30px !important;
  border:2px dashed #CFE5E9 !important; border-radius:20px !important; background:#F8FCFD !important; }
.swfl-v6 .s2-open-example > span:first-child{ display:inline-flex !important; align-items:center !important;
  justify-content:center !important; padding:10px 18px !important; border-radius:999px !important;
  background:#0E7C8E !important; color:#FFFFFF !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important;
  font-size:12px !important; font-weight:700 !important; letter-spacing:.16em !important;
  text-transform:uppercase !important; white-space:nowrap !important; }
.swfl-v6 .s2-open-example b{ font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:18px !important;
  color:#0C2340 !important; }
.swfl-v6 .s2-open-example p{ margin:6px 0 0 !important; font-size:16px !important; line-height:27px !important; }

.swfl-v6 .s2-how-section > .s2-text-link{ display:inline-flex !important; align-items:center !important;
  gap:9px !important; padding:15px 28px !important; border-radius:999px !important; background:#F58220 !important;
  color:#FFFFFF !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:14.5px !important;
  font-weight:700 !important; white-space:nowrap !important; width:max-content !important; }
.swfl-v6 .s2-how-section > .s2-text-link:hover{ background:#D96A15 !important; }

.swfl-v6 .s2-how-toc{ padding:26px !important; border:1px solid #DCE7EC !important; border-left:1px solid #DCE7EC !important;
  border-radius:20px !important; background:#F1F7F9 !important; display:grid !important; gap:4px !important;
  align-content:start !important; }
.swfl-v6 .s2-how-toc > p:first-child{ margin:0 0 10px !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important;
  font-size:11.5px !important; font-weight:700 !important; letter-spacing:.18em !important;
  text-transform:uppercase !important; color:#F58220 !important; }
.swfl-v6 .s2-how-toc a{ display:block !important; padding:11px 14px !important; border-radius:12px !important;
  color:#0C2340 !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:14.5px !important;
  font-weight:600 !important; }
.swfl-v6 .s2-how-toc a:hover{ background:#FFFFFF !important; color:#F58220 !important; }

/* nested blocks must not repeat the section rhythm */
.swfl-v6 section > div.s2-pro-browser,.swfl-v6 section > div.s2-pro-stage,
.swfl-v6 section > div.s2-community-index,.swfl-v6 section > div.s2-guide-chapter,
.swfl-v6 section > div.s2-topic-related,.swfl-v6 section > div.s2-rest-results,
.swfl-v6 section > div.s2-storm-ledger,.swfl-v6 section > div.s2-resource-paths{
  padding-top:0 !important; padding-bottom:0 !important; }

/* guide page: one centered 1520 column for every band, at any viewport width */
.swfl-v6 main[class*="bundle-guide"]{ padding-left:0 !important; padding-right:0 !important; }
.swfl-v6 main[class*="bundle-guide"] > *{ max-width:none !important; width:auto !important;
  padding-left:0 !important; padding-right:0 !important; margin-left:0 !important; margin-right:0 !important; }
.swfl-v6 main[class*="bundle-guide"] section > *{
  max-width:1520px !important; width:100% !important; margin-left:auto !important; margin-right:auto !important;
  padding-left:48px !important; padding-right:48px !important; box-sizing:border-box !important; }
.swfl-v6 main[class*="bundle-guide"] section > * > *{ padding-left:0 !important; padding-right:0 !important;
  max-width:none !important; }
@media (max-width:860px){
  .swfl-v6 main[class*="bundle-guide"] section > *{
    padding-left:20px !important; padding-right:20px !important; }
}

.sc-interp.sc-missing { display: inline-block; width: 2em; height: 1em; overflow: hidden; vertical-align: text-bottom; background: rgba(255, 255, 255, 0.3); border: 1px solid rgba(0, 0, 0, 0.5); border-radius: 2px; box-sizing: border-box; color: transparent; user-select: none; }
.sc-interp.sc-unresolved { font-family: ui-monospace, monospace; font-size: 0.85em; color: color-mix(in srgb, currentcolor, transparent); background: color-mix(in srgb, currentcolor 10%, transparent); border-radius: 3px; padding: 0px 3px; }
.scp0:hover { color: rgb(14, 124, 142) !important; }
.scp4:hover { background: rgb(216, 180, 117) !important; }
.sc-interp{all:unset}.sc-placeholder{background:transparent!important;border:0!important}

/* ===== golf course card images (Sep 2026): figure sits above the existing grid ===== */
.swfl-gd-card.swfl-gd-card--img{ position:relative !important; padding-top:190px !important; overflow:hidden !important; }
.swfl-gd-card__img{ position:absolute !important; top:0 !important; left:0 !important; right:0 !important; height:172px !important; margin:0 !important; overflow:hidden !important; background:#EEF5F8 !important; }
.swfl-gd-card__img img{ display:block !important; width:100% !important; height:100% !important; object-fit:cover !important; border-radius:0 !important; }
.swfl-gd-card__img figcaption{ position:absolute !important; right:10px !important; bottom:8px !important; margin:0 !important; padding:4px 9px !important; border-radius:999px !important;
  background:rgba(12,35,64,.72) !important; color:#FFFFFF !important; font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:11.5px !important; font-weight:700 !important; letter-spacing:.08em !important; text-transform:uppercase !important; line-height:1 !important; }
@media (max-width:620px){ .swfl-gd-card.swfl-gd-card--img{ padding-top:168px !important; } .swfl-gd-card__img{ height:150px !important; } }
/* city filter: the lane script hides cards with an inline display:none, which the v6 display:grid !important must not override */
.swfl-gd-card[style*="display: none"],.swfl-gd-card[style*="display:none"]{ display:none !important; }
/* active city in the Browse by city grid */
.swfl-gd-citycard[aria-current="true"]{ border-color:#0E7C8E !important; background:#EDF6F8 !important; box-shadow:inset 0 0 0 1px #0E7C8E !important; }
.swfl-gd-chip[aria-pressed="true"]{ background:#0C2340 !important; color:#FFFFFF !important; border-color:#0C2340 !important; }
/* course description + club logo (Sep 2026) */
.swfl-v6 .swfl-gd-card__desc{ font-size:14px !important; line-height:22px !important; color:#4A5663 !important; text-wrap:pretty !important; }
.swfl-gd-card__name{ display:flex !important; align-items:center !important; gap:10px !important; }
.swfl-gd-card__logo{ flex:0 0 auto !important; width:56px !important; height:56px !important; object-fit:contain !important; border-radius:10px !important; background:#FFFFFF !important; border:1px solid #E3EBF0 !important; padding:3px !important; box-sizing:border-box !important; }
/* uniform card rows (Sep 2026): city over distance pill, buttons stacked, at every width */
.swfl-v6 .swfl-gd-card__meta{ flex-direction:column !important; align-items:flex-start !important; justify-self:start !important; align-self:start !important; justify-content:flex-start !important; flex-wrap:nowrap !important; align-content:flex-start !important; text-align:left !important; margin:0 24px !important; width:auto !important; gap:8px !important; }
.swfl-v6 .swfl-gd-card__actions{ flex-direction:column !important; align-items:flex-start !important; gap:10px !important; }
.swfl-v6 .swfl-gd-card__actions a{ white-space:nowrap !important; }

/* shared hub hero (toolbar, lead, feature strip, rhythm, overlays) lives in hub-hero.css since Sep 10 2026 */

/* public lane header removed (Sep 11 2026): cards start straight after the hero */
.swfl-v6 .s2-golf-directory .swfl-gd-wrap--lead{ padding-top:40px !important; }

/* address pill replaces the community-distance pill on golf cards (Sep 11 2026) */
.swfl-v6 .swfl-gd-card__addr{ display:block !important; width:auto !important; max-width:100% !important; min-width:0 !important; box-sizing:border-box !important; white-space:normal !important; overflow-wrap:anywhere !important; text-align:left !important; line-height:1.35 !important; height:auto !important; }
.swfl-v6 .swfl-gd-card__meta{ min-width:0 !important; max-width:100% !important; }
