
  body { margin: 0; background: #FFFFFF; }
  *, *::before, *::after { box-sizing: border-box; }
  img { max-width: 100%; }
  a { color: #0E7C8E; text-decoration: none; }
  a:hover { color: #F58220; }
  summary::-webkit-details-marker { display: none; }
  @keyframes r-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
  .r-card { transition: transform .35s ease, box-shadow .35s ease; }
  .r-card:hover { transform: translateY(-6px); box-shadow: 0 30px 60px rgba(9,24,46,.2); }
  .r-zoom { overflow: hidden; }
  .r-zoom img { transition: transform .8s ease; }
  .r-card:hover .r-zoom img { transform: scale(1.08); }
  .r-orange:hover { background: #D96A15 !important; }
.v6-mega{ display:none; z-index:70; }
.v6-nav-item:hover .v6-mega,.v6-nav-item:focus-within .v6-mega{ display:block; }
.v6-mega a:hover{ color:#F58220 !important; }
.r-nav{ gap:16px !important; min-width:0; }
.r-nav .v6-nav-item > a{ font-size:14px !important; }
.v6-drawer{ display:none; margin-left:auto; position:relative; }
.v6-drawer summary::-webkit-details-marker{ display:none; }
.v6-drawer summary:hover{ border-color:#F58220 !important; }
@media (max-width:1340px){ .r-nav{ display:none !important; } .v6-drawer{ display:block !important; } }
@media (min-width:1341px){ .v6-drawer{ display:none !important; } }
.swfl-brand-infobar > div{ flex-wrap:wrap !important; }
.swfl-brand-infobar a[href]{ display:inline-flex !important; }

[class*="hero"] div:has(> input),[class*="hero"] div:has(> div > input),[class*="hero"] div:has(> form > input),
[class*="hero"] div:has(> label + input){ border-radius:16px !important; }

  .r-teal:hover { background: #0B6474 !important; }
  .r-out:hover { background: #FFFFFF !important; color: #14305C !important; border-color: #FFFFFF !important; }
  .r-outd:hover { background: #14305C !important; color: #FFFFFF !important; }
  .r-row:hover { background: #FFFFFF !important; box-shadow: 0 18px 40px rgba(9,24,46,.1); }
  .r-city:hover { border-color: #F58220 !important; }
  @media (max-width: 1240px) {
    .r-6 { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
    .r-5 { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
    .r-4 { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
    .r-3 { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
    .r-split { grid-template-columns: minmax(0,1fr) !important; }
    .r-nav { display: none !important; }
  }
  @media (max-width: 860px) {
    .r-6, .r-5, .r-4, .r-3, .r-2 { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
    .r-pad { padding-left: 20px !important; padding-right: 20px !important; }
    .r-primer-pad { padding: 56px 24px 64px !important; }
    .r-h1 { font-size: 42px !important; }
    .r-h2 { font-size: 30px !important; }
    .r-util { display: none !important; }
    .r-searchrow { grid-template-columns: minmax(0,1fr) !important; }
  }
  .r-svc:hover { border-color: #0E7C8E !important; transform: translateY(-3px); }

/* ===== 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 ===== */
.dc-body .swfl-rd-card__dist,.dc-body .swfl-gd-card__dist{
  width:max-content !important; max-width:100% !important; align-self:flex-start !important;
  justify-content:flex-start !important; }
.dc-body .swfl-rd-card__shot{ width:100% !important; height:auto !important; max-height:none !important; }
@media (max-width:1000px){
  .dc-body .swfl-rd-card__shot{ width:100% !important; aspect-ratio:auto !important; height:250px !important; max-height:none !important; }
}
.dc-body .swfl-cp-filter{ border-radius:999px !important; }
.dc-body .swfl-cp-item{ border-radius:999px !important; }
.dc-body .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; }
.dc-body .swfl-cp-group > div:first-child{ color:#0E7C8E !important; }

/* ===== golf course cards ===== */
.dc-body .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; }
.dc-body .swfl-gd-card__top{ display:contents !important; }
.dc-body .swfl-gd-card__id{ grid-column:1 !important; grid-row:1 !important; display:grid !important; gap:4px !important; }
.dc-body .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; }
.dc-body .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; }
.dc-body .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; }
.dc-body .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; }
.dc-body .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; }
.dc-body .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){
  .dc-body .swfl-gd-card{ grid-template-columns:minmax(0,1fr) !important; }
  .dc-body .swfl-gd-badge{ grid-column:1 !important; grid-row:2 !important; justify-self:start !important; }
  .dc-body .swfl-gd-card__meta{ grid-row:3 !important; }
  .dc-body .swfl-gd-card__note{ grid-row:4 !important; }
  .dc-body .swfl-gd-card__actions{ grid-row:5 !important; }
}

/* hero chips and photo captions never clip */
.dc-body section[class*="hero"] a[style]{
  white-space:nowrap !important; line-height:1.25 !important; height:auto !important; }
.dc-body section[class*="hero"] span[style*="border-radius"]{ height:auto !important;
  align-items:center !important; line-height:1.25 !important; }
.dc-body 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 */
.dc-body .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; }
.dc-body .swfl-td-area > span{ font-size:12.5px !important; color:#0B6474 !important; }
.dc-body .swfl-td-areas{ display:flex !important; flex-wrap:wrap !important; gap:10px !important; }
.dc-body .swfl-td-topic__head{ align-items:center !important; }
.dc-body .swfl-td-topic__title{ text-wrap:pretty !important; }
.dc-body .swfl-td-topic__meta{ display:flex !important; flex-wrap:wrap !important; align-items:baseline !important;
  column-gap:10px !important; row-gap:4px !important; }
.dc-body .swfl-td-topic__kind{ white-space:nowrap !important; }

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

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

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

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

/* contractors: service cards + city band */
.dc-body .swfl-ct-card{ display:grid !important; grid-template-columns:minmax(0,1fr) !important;
  row-gap:10px !important; padding:24px !important; align-content:start !important; }
.dc-body .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; }
.dc-body .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; }
.dc-body .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; }
.dc-body .swfl-ct-card__sponsor{ grid-column:1 !important; grid-row:4 !important; margin:0 !important; }
.dc-body .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; }
.dc-body .swfl-ct-citynav > h2{ flex:1 0 100% !important; margin:0 0 10px !important; }
.dc-body .swfl-ct-citygrid{ display:flex !important; flex-wrap:wrap !important; gap:12px !important; }
.dc-body .swfl-ct-cityband{ padding-top:64px !important; padding-bottom:68px !important; }
@media (max-width:860px){ .dc-body .swfl-ct-citynav{ padding:0 20px !important; } }

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

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

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

/* hurricane: hero link row is plain links, row chips never wrap */
.dc-body .s2-storm-actions{ display:flex !important; flex-wrap:wrap !important; gap:26px !important; }
.dc-body .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; }
.dc-body .s2-storm-badge,.dc-body .s2-storm-row [class*="badge"],.dc-body .s2-storm-row__open,
.dc-body [class*="row__open"]{ white-space:nowrap !important; }

.dc-body .s2-how-shell,.dc-body .s2-shell,.dc-body [class*="__shell"]:not(.swfl-content-shell),
.dc-body [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){
  .dc-body .s2-how-shell,.dc-body .s2-shell,.dc-body [class*="__shell"]:not(.swfl-content-shell),
  .dc-body [class*="-shell"]:not(.swfl-content-shell){
    padding-left:20px !important; padding-right:20px !important; }
}

/* form controls follow the brand */
.dc-body input[type="text"],.dc-body input[type="email"],.dc-body input[type="url"],
.dc-body input[type="search"],.dc-body input[type="tel"],.dc-body textarea,.dc-body 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; }
.dc-body input::placeholder,.dc-body textarea::placeholder{ color:#8A96A5 !important; }
.dc-body input[type="submit"],.dc-body 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; }
.dc-body input[type="submit"]:hover,.dc-body button[type="submit"]:hover{ background:#D96A15 !important; }
.dc-body form label,.dc-body [class*="field"] label{ font-family:'Space Grotesk','Segoe UI',sans-serif !important; }

/* gravity-forms controls follow the brand too */
.dc-body .gform_wrapper input[type="text"],.dc-body .gform_wrapper input[type="email"],
.dc-body .gform_wrapper input[type="url"],.dc-body .gform_wrapper input[type="tel"],
.dc-body .gform_wrapper textarea,.dc-body .gform_wrapper select,
.dc-body .gform-body input,.dc-body .gform-body textarea{
  border-radius:14px !important; border:1px solid #CFE5E9 !important; padding:14px 16px !important; }
.dc-body button.gform_button,.dc-body .gform_button.button,.dc-body input.gform_button,
.dc-body .gform_footer button,.dc-body .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; }
.dc-body button.gform_button:hover,.dc-body .gform_button.button:hover{ background:#D96A15 !important; }

.dc-body main[class*="bundle-guide"] > section{ padding-left:0 !important; padding-right:0 !important; }
.dc-body 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){
  .dc-body 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 */
.dc-body main > section:not([class]){ padding-left:0 !important; padding-right:0 !important; }
.dc-body 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){
  .dc-body main > section:not([class]) > div{ padding-left:20px !important; padding-right:20px !important; }
}

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

.dc-body .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; }
.dc-body .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; }
.dc-body .s2-sponsor-ledger > div:first-child{ background:#F1F7F9 !important; border-color:#D5E5EB !important; }
.dc-body .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; }
.dc-body .s2-sponsor-ledger > div:last-child > span:first-child{ color:#F58220 !important; }
.dc-body .s2-sponsor-ledger p{ margin:0 !important; font-size:16px !important; line-height:27px !important; color:#4A5663 !important; }
.dc-body .s2-sponsor-ledger ul{ display:flex !important; flex-wrap:wrap !important; gap:10px !important;
  list-style:none !important; margin:0 !important; padding:0 !important; }
.dc-body .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; }

.dc-body .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; }
.dc-body .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; }
.dc-body .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; }
.dc-body .s2-check-list > li > div{ display:grid !important; gap:6px !important; }
.dc-body .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; }
.dc-body .s2-check-list > li > div > *:last-child{ font-size:16px !important; line-height:27px !important;
  color:#62707E !important; margin:0 !important; }
.dc-body .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; }

.dc-body .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; }
.dc-body .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; }
.dc-body .s2-open-example b{ font-family:'Space Grotesk','Segoe UI',sans-serif !important; font-size:18px !important;
  color:#0C2340 !important; }
.dc-body .s2-open-example p{ margin:6px 0 0 !important; font-size:16px !important; line-height:27px !important; }

.dc-body .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; }
.dc-body .s2-how-section > .s2-text-link:hover{ background:#D96A15 !important; }

.dc-body .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; }
.dc-body .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; }
.dc-body .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; }
.dc-body .s2-how-toc a:hover{ background:#FFFFFF !important; color:#F58220 !important; }

/* nested blocks must not repeat the section rhythm */
.dc-body section > div.s2-pro-browser,.dc-body section > div.s2-pro-stage,
.dc-body section > div.s2-community-index,.dc-body section > div.s2-guide-chapter,
.dc-body section > div.s2-topic-related,.dc-body section > div.s2-rest-results,
.dc-body section > div.s2-storm-ledger,.dc-body 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 */
.dc-body main[class*="bundle-guide"]{ padding-left:0 !important; padding-right:0 !important; }
.dc-body 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; }
.dc-body 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; }
.dc-body main[class*="bundle-guide"] section > * > *{ padding-left:0 !important; padding-right:0 !important;
  max-width:none !important; }
@media (max-width:860px){
  .dc-body main[class*="bundle-guide"] section > *{
    padding-left:20px !important; padding-right:20px !important; }
}

/* Homepage hero community navigator (mirrors the internal hub search bar) */
.swfl-home-search .swfl-home-search__bar{ margin:0; max-width:none; padding:16px 0; background:rgba(12,35,64,.28); border:1px solid rgba(255,255,255,.55); border-radius:16px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); box-sizing:border-box; font-family:'Space Grotesk','Segoe UI',sans-serif; }
.swfl-home-search .swfl-rh-toolbar__row{ display:flex; align-items:center; gap:16px 18px; flex-wrap:wrap; padding:0 22px; }
.swfl-home-search .swfl-rh-toolbar__label{ display:inline-flex; align-items:center; gap:12px; font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#FFFFFF; }
.swfl-home-search .swfl-rh-toolbar__label select{ font-family:'Space Grotesk','Segoe UI',sans-serif; font-size:15px; font-weight:500; letter-spacing:0; text-transform:none; color:#0C2340; background:#FFFFFF; border:1px solid #D4DFE4; border-radius:10px; padding:12px 14px; min-width:210px; cursor:pointer; }
.swfl-home-search .swfl-rh-search{ display:inline-flex; align-items:center; gap:10px; margin-left:auto; font-family:'Space Grotesk','Segoe UI',sans-serif; font-size:16px; font-weight:700; color:#FFFFFF; background:#2E7F92; border:1px solid #2E7F92; border-radius:10px; padding:13px 26px; cursor:pointer; white-space:nowrap; transition:background .15s; }
.swfl-home-search .swfl-rh-search:hover{ background:#256a7a; border-color:#256a7a; }
.swfl-home-search .swfl-rh-search:focus-visible,.swfl-home-search .swfl-rh-toolbar__label select:focus-visible{ outline:3px solid #F58220; outline-offset:2px; }
@media (max-width:1000px){
  .swfl-home-search .swfl-rh-toolbar__row{ flex-direction:column; align-items:stretch; gap:14px; }
  .swfl-home-search .swfl-rh-toolbar__label{ flex-direction:column; align-items:flex-start; gap:6px; }
  .swfl-home-search .swfl-rh-toolbar__label select{ width:100%; min-width:0; }
  .swfl-home-search .swfl-rh-search{ margin-left:0; justify-content:center; }
}

/* Homepage hero scrim: match internal headers (lighter, mobile 180deg) */
@media (max-width:860px){ .swfl-home-hero__scrim{ background:linear-gradient(180deg,rgba(12,35,64,.78) 0%,rgba(12,35,64,.68) 60%,rgba(12,35,64,.56) 100%) !important; } }
