/* CoreStruct Service Areas */
.csw-svc-areas{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='254' viewBox='0 0 220 254'%3E%3Cg fill='none' stroke='%235A7C6C' stroke-opacity='.10' stroke-width='1.2'%3E%3Cpath d='M110 0 220 63.5v127L110 254 0 190.5v-127z'/%3E%3Cpath d='M110 0v127M110 127 220 190.5M110 127 0 190.5'/%3E%3C/g%3E%3C/svg%3E") center/220px 254px,var(--mint)}
.csw-svc-areas .deco i:nth-child(1),.csw-svc-areas .deco i:nth-child(2){background:var(--white)}
.csw-svc-areas .deco i:nth-child(3){background:var(--gold)}
.csw-svc-areas .sa-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--sa-cols,4),minmax(0,1fr));gap:16px}
.csw-svc-areas .sa-grid > li{display:flex}
.csw-svc-areas .sa-card{flex:1;position:relative;display:flex;align-items:flex-start;gap:14px;background:var(--white);border:1px solid rgba(90,124,108,.18);border-radius:var(--radius);padding:20px 22px;color:var(--text);text-decoration:none;transition:background .3s,transform .3s,box-shadow .3s,border-color .3s}
.csw-svc-areas a.sa-card:hover{transform:translateY(-3px);box-shadow:0 20px 36px -26px rgba(40,58,43,.55);border-color:rgba(90,124,108,.4)}
.csw-svc-areas .sa-card.is-featured{background:var(--forest);border-color:var(--forest);color:var(--white)}
.csw-svc-areas .sa-pin{flex:none;width:42px;height:42px;border-radius:50%;background:var(--mint);color:var(--sage);display:grid;place-items:center;font-style:normal;transition:background .3s,color .3s}
.csw-svc-areas .sa-pin svg{width:22px;height:22px}
.csw-svc-areas .sa-card:hover .sa-pin{background:var(--gold);color:var(--ink)}
.csw-svc-areas .is-featured .sa-pin{background:rgba(255,255,255,.1);color:var(--gold)}
.csw-svc-areas .sa-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.csw-svc-areas .sa-body > *{display:block}
.csw-svc-areas .sa-name{font:400 19px/1.25 var(--f-head);color:inherit;margin:0}
.csw-svc-areas .sa-region{font:400 14px/1.3 var(--f-accent);color:var(--sage)}
.csw-svc-areas .is-featured .sa-region{color:var(--mint)}
.csw-svc-areas .sa-text{font-size:14px;line-height:1.5;opacity:.85;margin-top:4px}
.csw-svc-areas .sa-badge{align-self:flex-start;font:700 11px/1 var(--f-accent);letter-spacing:.1em;text-transform:uppercase;background:var(--gold);color:var(--ink);padding:5px 9px;border-radius:999px;margin-bottom:6px}
.csw-svc-areas .sa-arrow{margin-left:auto;align-self:center;width:18px;height:18px;color:var(--sage);transition:transform .3s,color .3s}
.csw-svc-areas .sa-arrow svg{width:100%;height:100%;display:block}
.csw-svc-areas a.sa-card:hover .sa-arrow{transform:translateX(3px) rotate(-45deg);color:var(--gold)}
.csw-svc-areas .sa-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px 24px;margin-top:clamp(36px,5vw,56px);text-align:center}
.csw-svc-areas .sa-note .sa-note-t{font:400 18px/1.5 var(--f-head);color:var(--text)}
/* scheme: white */
.csw-svc-areas.sa-white{background:var(--white)}
.csw-svc-areas.sa-white .deco i:nth-child(1),.csw-svc-areas.sa-white .deco i:nth-child(2){background:var(--mint)}
.csw-svc-areas.sa-white .sa-card:not(.is-featured){background:var(--mint);border-color:rgba(90,124,108,.12)}
.csw-svc-areas.sa-white .sa-card:not(.is-featured) .sa-pin{background:var(--white)}
/* scheme: dark green */
.csw-svc-areas.sa-dark{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='254' viewBox='0 0 220 254'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.08' stroke-width='1.2'%3E%3Cpath d='M110 0 220 63.5v127L110 254 0 190.5v-127z'/%3E%3Cpath d='M110 0v127M110 127 220 190.5M110 127 0 190.5'/%3E%3C/g%3E%3C/svg%3E") center/220px 254px,var(--forest);color:var(--white)}
.csw-svc-areas.sa-dark .deco i:nth-child(1),.csw-svc-areas.sa-dark .deco i:nth-child(2){background:var(--white)}
.csw-svc-areas.sa-dark .eyebrow{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);color:var(--mint)}
.csw-svc-areas.sa-dark .sec-head .h2,.csw-svc-areas.sa-dark .sa-note .sa-note-t{color:var(--white)}
.csw-svc-areas.sa-dark .sec-intro{color:var(--mint)}
.csw-svc-areas.sa-dark .sa-card:not(.is-featured){background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:var(--white)}
.csw-svc-areas.sa-dark .sa-card:not(.is-featured) .sa-pin{background:rgba(255,255,255,.1);color:var(--gold)}
.csw-svc-areas.sa-dark .sa-card:not(.is-featured) .sa-region{color:var(--mint)}
.csw-svc-areas.sa-dark .sa-card.is-featured{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.csw-svc-areas.sa-dark .sa-card.is-featured .sa-region{color:var(--forest)}
.csw-svc-areas.sa-dark .sa-card.is-featured .sa-pin{background:rgba(13,20,26,.1);color:var(--forest)}
.csw-svc-areas.sa-dark .sa-card.is-featured .sa-badge{background:var(--forest);color:var(--white)}
.csw-svc-areas.sa-dark .sa-note .pill > span,.csw-svc-areas.sa-dark .sa-note .pill > i{background:var(--white);color:var(--ink)}
.csw-svc-areas.sa-dark .sa-note .pill:hover > span{background:var(--gold)}
/* Highlighted card (with badge) is twice as wide; phones keep one column. */
@media (min-width:461px){
  .csw-svc-areas .sa-grid > li.sa-li-featured{grid-column:span 2}
  /* Wide card: short text sits beside the name instead of below the region. */
  .csw-svc-areas .sa-li-featured .sa-body{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"badge badge" "name text" "region region";column-gap:18px;align-items:baseline}
  .csw-svc-areas .sa-li-featured .sa-badge{grid-area:badge;justify-self:start}
  .csw-svc-areas .sa-li-featured .sa-name{grid-area:name}
  .csw-svc-areas .sa-li-featured .sa-text{grid-area:text;margin-top:0}
  .csw-svc-areas .sa-li-featured .sa-region{grid-area:region}
}
.csw-svc-areas .sa-card.is-featured .sa-arrow{color:var(--gold)}
@media (max-width:1024px){.csw-svc-areas .sa-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.csw-svc-areas .sa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:460px){.csw-svc-areas .sa-grid{grid-template-columns:1fr}}
