.ctg-location-page{--service-font-heading:var(--ctg-public-font-heading);--service-font-body:var(--ctg-public-font-body);--service-heading-dark:var(--ctg-public-heading-dark);--service-eyebrow-primary:var(--ctg-public-eyebrow-primary);--service-shell:var(--ctg-public-content-max);--service-gutter:var(--ctg-public-gutter);--service-type-h2:var(--ctg-public-type-h2);--service-type-h3:var(--ctg-public-type-h3);--service-type-eyebrow:var(--ctg-public-type-eyebrow);--ctg-city-artwork-bottom-space:1.5rem;margin:0;background:var(--ctg-public-surface-light);color:var(--ctg-public-heading-light);font-family:var(--ctg-public-font-body);}
.ctg-location-page *{box-sizing:border-box;}
.ctg-location-shell{width:min(calc(100% - 2 * var(--ctg-public-gutter)),var(--ctg-public-content-max));margin-inline:auto;}
.ctg-location-page main{overflow:clip;}
.ctg-location-page h1,.ctg-location-page h2,.ctg-location-page h3{font-family:var(--ctg-public-font-heading);letter-spacing:-.055em;text-wrap:balance;}
.ctg-location-page h2{font-size:var(--ctg-public-type-h2);font-weight:560;line-height:1.08;}
.ctg-location-page h3{font-size:var(--ctg-public-type-h3);font-weight:600;line-height:1.2;}
.ctg-location-page p,.ctg-location-page li{line-height:1.7;}
.ctg-location-page a:not(.ctg-cta):focus-visible{outline:2px solid var(--ctg-public-focus-ring);outline-offset:var(--ctg-public-focus-offset);}
.ctg-location-eyebrow{margin:0 0 1.1rem;color:#515b76;font-size:var(--ctg-public-type-eyebrow);font-weight:800;letter-spacing:.18em;line-height:1.4;text-transform:uppercase;}
.ctg-location-breadcrumb{--ctg-breadcrumb-font-size:.8125rem;padding:1.5rem 0 0;color:#525760;font-family:var(--ctg-public-font-body);font-size:var(--ctg-breadcrumb-font-size);font-weight:400;line-height:1.7;}
.ctg-location-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin:0;padding:0;list-style:none;}
.ctg-location-breadcrumb li+li::before{content:'›';margin-right:.55rem;color:#81868f;}
.ctg-location-breadcrumb a{color:inherit;text-underline-offset:.2em;}
.ctg-location-hero{background:linear-gradient(135deg,#faf8f4,#ecece6);}
.ctg-location-hero--hub{position:relative;isolation:isolate;overflow:hidden;background:#f8f6f1;}
.ctg-location-hero--hub>.ctg-location-shell{position:relative;z-index:2;}
.ctg-location-hero__background,.ctg-location-hero__background img{display:block;width:100%;height:100%;}
.ctg-location-hero__background{position:absolute;z-index:0;inset:0;mix-blend-mode:darken;}
/* Keep the bridge full-width through the approved 1920px desktop composition, then center it. */
.ctg-location-hero--hub .ctg-location-hero__background{width:min(100%,120rem);margin-inline:auto;}
.ctg-location-hero__background img{object-fit:contain;object-position:center bottom;}
@media(min-width:981px){.ctg-location-hero--hub .ctg-location-hero__background img{object-position:center calc(100% + 4rem);}}
.ctg-location-hero>.ctg-location-shell{padding-bottom:clamp(5rem,9vw,9rem);}
.ctg-location-hero .ctg-location-eyebrow{margin-top:clamp(3.5rem,7vw,7rem);}
@media(min-width:981px){.ctg-location-hero .ctg-location-eyebrow{margin-top:calc(clamp(3.5rem,7vw,7rem) - 60px);}}
.ctg-location-hero h1{max-width:14ch;margin:0;font-size:clamp(3.75rem,8vw,8rem);font-weight:560;line-height:.97;}
.ctg-location-hero__copy{max-width:min(var(--ctg-public-measure-lede),45rem);margin:clamp(1.5rem,3vw,2.5rem) 0 40px;color:var(--ctg-public-body-light);font-size:clamp(1.1rem,1.65vw,1.4rem);}
.ctg-location-hero__copy p{margin:0 0 .75rem;}
.ctg-location-hero--city h1{max-width:24ch;font-size:var(--ctg-public-type-h1);}
@media(min-width:1280px){.ctg-location-hero--city h1{max-width:none;}.ctg-location-hero--city .ctg-location-hero__title-lead,.ctg-location-hero--city .ctg-location-hero__title-result{display:block;}}
.ctg-location-hero--city .ctg-location-hero__copy,.ctg-location-hero--hub .ctg-location-hero__copy{--ctg-location-hero-copy-size:1.125rem;font-size:var(--ctg-location-hero-copy-size);}
.ctg-location-hero--city .ctg-location-hero__copy{width:100%;max-width:40rem;}
.ctg-location-hero--city .ctg-location-hero__copy p,.ctg-location-hero--hub .ctg-location-hero__copy p{line-height:1.5;}
.ctg-location-city-art{display:block;width:min(100%,120rem);margin-inline:auto;transform:translateY(calc(-1 * var(--ctg-city-artwork-bottom-space)));mix-blend-mode:darken;}
.ctg-location-city-art img{display:block;width:100%;height:auto;}
.ctg-location-city-art--hero{width:min(78%,93.6rem);}
.ctg-location-city-art--strategy{width:min(95%,114rem);mix-blend-mode:normal;}
.ctg-location-city-art--redesign{width:min(85%,102rem);}
.ctg-location-page .ctg-location-section--with-art{padding-bottom:0;}
.ctg-location-section[aria-labelledby="ctg-location-journey"]{background:var(--ctg-public-surface-light);}
.ctg-location-section--with-art .ctg-location-section__inner{padding-bottom:40px;}
.ctg-location-section[aria-labelledby="ctg-location-redesign"] .ctg-location-section__inner{padding-bottom:60px;}
.ctg-location-section[aria-labelledby="ctg-location-journey"] .ctg-location-section__inner{padding-bottom:80px;}
@media(min-width:1081px){
  .ctg-location-hero>.ctg-location-shell{min-height:min(calc(100svh - 5.5rem),62rem);}
}
@media(min-width:1024px) and (max-width:1080px){
  .ctg-location-hero>.ctg-location-shell{min-height:calc(100svh - 3.875rem);}
}
/* The bounded first-screen minimum yields to content and the width-sized art. */
.ctg-location-hero.ctg-location-hero--city{--city-hero-header:88px;--city-hero-max-height:62rem;--city-hero-clearance:clamp(1.5rem,3vw,3rem);display:grid;grid-template-rows:auto minmax(var(--city-hero-clearance),1fr) auto;min-height:min(calc(100svh - var(--city-hero-header)),var(--city-hero-max-height));background:var(--ctg-public-surface-light);}
.ctg-location-hero.ctg-location-hero--city>.ctg-location-shell:not(.ctg-location-hero__artwork){grid-row:1;min-height:0;padding-bottom:0;}
.ctg-location-hero.ctg-location-hero--city>.ctg-location-hero__artwork{grid-row:3;align-self:end;min-height:0;padding-bottom:var(--ctg-city-artwork-bottom-space);}
.ctg-location-hero--city .ctg-location-city-art--hero{width:100%;max-width:100%;margin:0;transform:none;}
.ctg-location-hero--city .ctg-location-city-art--hero img{display:block;width:100%;max-width:100%;height:auto;}
@media(max-width:767px){.ctg-location-hero.ctg-location-hero--city{--city-hero-header:62px;}}
.ctg-location-section,.ctg-location-decisions,.ctg-location-actions{padding:clamp(5rem,8vw,8rem) 0;}
.ctg-location-section__inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,8vw,8rem);align-items:start;}
.ctg-location-section h2{max-width:18ch;margin:0;}
.ctg-location-section__lead p{max-width:var(--ctg-public-measure-body);margin:1.5rem 0 0;color:var(--ctg-public-body-light);font-size:var(--ctg-public-type-body);}
.ctg-location-section__lead p+p{margin-top:1rem;}
.ctg-location-section__copy{max-width:var(--ctg-public-measure-body);color:var(--ctg-public-body-light);font-size:var(--ctg-public-type-body);}
.ctg-location-section__copy p{margin:0 0 1rem;}
.ctg-location-section--dark{
  background-color:var(--ctg-public-surface-dark);
  background-image:
    linear-gradient(rgba(155,185,216,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(155,185,216,.035) 1px,transparent 1px),
    linear-gradient(rgba(155,185,216,.075) 1px,transparent 1px),
    linear-gradient(90deg,rgba(155,185,216,.075) 1px,transparent 1px);
  background-size:24px 24px,24px 24px,96px 96px,96px 96px;
  color:var(--ctg-public-body-dark);
}
.ctg-location-section--dark h2{color:var(--ctg-public-heading-dark);}
.ctg-location-section--dark .ctg-location-section__lead p{color:var(--ctg-public-body-dark);}
.ctg-location-section--dark .ctg-location-section__copy{color:var(--ctg-public-body-dark);}
.ctg-location-section--dark .ctg-location-section__links{color:var(--ctg-public-heading-dark);}
.ctg-location-market .ctg-location-section__inner{grid-template-columns:minmax(0,.9fr) clamp(8rem,11vw,10rem) minmax(0,1.1fr);gap:clamp(1rem,2vw,2rem);}
.ctg-location-market__divider{position:relative;display:block;align-self:stretch;justify-self:center;width:clamp(15rem,22vw,18rem);max-width:none;min-height:0;}
.ctg-location-market__divider img{position:absolute;top:-26px;left:0;display:block;width:100%;height:calc(100% + 40px);object-fit:contain;mix-blend-mode:screen;}
.ctg-location-market .ctg-location-section__copy{align-self:center;transform:translateY(3rem);}
.ctg-location-market__callout{position:relative;width:fit-content;max-width:100%;margin:0 0 1.75rem;padding:1.25rem 1.5rem;border:1px solid rgba(184,201,255,.28);border-right:0;background:rgba(32,34,38,.5);color:var(--ctg-public-heading-dark);font-size:var(--ctg-public-type-h3);font-weight:600;letter-spacing:-.035em;line-height:1.45;}
.ctg-location-market__callout::before{position:absolute;top:-.55rem;right:0;bottom:-.55rem;border-right:1px solid rgba(184,201,255,.28);content:"";pointer-events:none;}
.ctg-location-market__callout::after{position:absolute;top:-1px;right:-.55rem;bottom:-1px;width:.55rem;border-top:1px solid rgba(184,201,255,.28);border-bottom:1px solid rgba(184,201,255,.28);content:"";pointer-events:none;}
.ctg-location-market__circled{position:relative;display:inline-block;margin-inline:.62em;white-space:nowrap;}
.ctg-location-market__word{position:relative;z-index:1;}
.ctg-location-market__circled svg{position:absolute;top:-.6em;left:-.75em;width:calc(100% + 1.5em);max-width:none;height:calc(100% + 1.2em);overflow:visible;fill:none;stroke:var(--ctg-public-eyebrow-primary);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}
.ctg-location-market__circled svg path{vector-effect:non-scaling-stroke;}
.ctg-location-section__links{margin-top:40px;}
.ctg-location-text-link{color:inherit;text-decoration:underline;text-decoration-color:#a7b8ee;text-decoration-thickness:2px;text-underline-offset:.3em;}
.ctg-location-text-link:hover{text-decoration-thickness:3px;}
.ctg-location-redesign{padding:clamp(5rem,8vw,8rem) 0;background:var(--ctg-public-surface-light);}
.ctg-location-redesign__inner{display:grid;width:min(calc(100% - 2 * var(--ctg-public-gutter)),72rem);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:clamp(2rem,4vw,4rem);align-items:start;margin-inline:auto;padding-bottom:40px;}
.ctg-location-redesign h2{grid-column:1;grid-row:1/4;max-width:13ch;margin:0 0 1.4rem;font-size:clamp(2.625rem,3.5vw,3.25rem);line-height:1.03;}
.ctg-location-redesign__diagnostics{grid-column:2;grid-row:1;margin:0;padding:0;list-style:none;}
.ctg-location-redesign__diagnostics li{padding:.72rem 0;border-top:1px solid rgba(65,105,139,.22);color:var(--ctg-public-body-light);font-size:clamp(1rem,1.15vw,1.125rem);line-height:1.38;}
.ctg-location-redesign__diagnostics li:first-child{font-weight:600;}
.ctg-location-redesign__conclusion{grid-column:2;grid-row:2;margin:1.45rem 0 0;padding-top:1.3rem;border-top:1px solid rgba(65,105,139,.36);font-size:clamp(1.0625rem,1.35vw,1.25rem);font-weight:650;line-height:1.42;}
.ctg-location-redesign__cta{grid-column:2;grid-row:3;justify-self:start;margin-top:40px;}
.ctg-location-visibility{padding:clamp(5rem,8vw,8rem) 0;background:#f7f6f0;}
.ctg-location-visibility__frame{position:relative;width:min(calc(100% - 3rem),100rem);margin-inline:auto;padding-inline:clamp(1rem,2.5vw,2.5rem);border-inline:1px dashed rgba(49,93,132,.23);background-image:linear-gradient(90deg,transparent calc(50% - .5px),rgba(49,93,132,.09) 50%,transparent calc(50% + .5px));}
.ctg-location-visibility__mark{position:absolute;width:2rem;height:2rem;color:rgba(49,93,132,.62);pointer-events:none;}
.ctg-location-visibility__mark::before,.ctg-location-visibility__mark::after{position:absolute;background:currentColor;content:"";}
.ctg-location-visibility__mark::before{top:50%;width:100%;height:1px;}.ctg-location-visibility__mark::after{left:50%;width:1px;height:100%;}
.ctg-location-visibility__mark--tl{top:-1rem;left:-1rem;}.ctg-location-visibility__mark--tr{top:-1rem;right:-1rem;}.ctg-location-visibility__mark--bl{bottom:-1rem;left:-1rem;}.ctg-location-visibility__mark--br{right:-1rem;bottom:-1rem;}
.ctg-location-visibility__inner{width:min(100%,var(--ctg-public-content-max));}
.ctg-location-visibility__intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,5rem);align-items:start;}
.ctg-location-visibility h2{max-width:none;margin:0;color:var(--ctg-public-heading-light);font-size:clamp(2.65rem,4.15vw,3.75rem);font-weight:560;line-height:.99;}
.ctg-location-visibility__copy{color:#43556a;font-size:clamp(.9375rem,1.18vw,1.0625rem);line-height:1.48;}
.ctg-location-visibility__copy p{margin:0 0 .7rem;line-height:inherit;}
.ctg-location-visibility__copy p:last-child{margin-bottom:0;}
.ctg-location-visibility__copy strong{color:#17202b;font-weight:700;}
.ctg-location-visibility__actions{margin-top:40px;}
.ctg-location-visibility__footer{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:7rem;color:#6f8fa8;font:600 .59rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.2em;white-space:nowrap;}
.ctg-location-visibility__footer::before,.ctg-location-visibility__footer::after{height:1px;flex:1;background:rgba(49,93,132,.38);content:"";}
@media(max-width:1050px){
  .ctg-location-visibility__desktop-break{display:none;}
  .ctg-location-visibility__intro{gap:clamp(1.5rem,4vw,3rem);}
  .ctg-location-visibility h2{font-size:clamp(2.5rem,4.4vw,3.25rem);}
}
@media(max-width:900px){
  .ctg-location-visibility__frame{width:calc(100% - 2rem);padding-inline:1rem;}
  .ctg-location-visibility__intro{grid-template-columns:1fr;gap:1.75rem;}
  .ctg-location-visibility h2{font-size:clamp(2.5rem,8.5vw,3.5rem);}
  .ctg-location-visibility__copy{font-size:1rem;}
}
@media(max-width:600px){
  .ctg-location-visibility__footer{font-size:.5rem;letter-spacing:.12em;}
}
@media(min-width:981px){
  .ctg-location-visibility__intro>h2,.ctg-location-redesign__inner>h2,.ctg-location-section__inner>h2{position:sticky;top:calc(88px + 2rem);align-self:start;}
}
.ctg-location-explore,.ctg-location-principles,.ctg-location-proof,.ctg-location-process{padding:clamp(5rem,8vw,8rem) 0;background:#eae9e3;}
.ctg-location-explore{--ctg-map-canvas:#f8f6f1;--ctg-map-land-side:#d9d7cf;--ctg-map-county-wash:.045;--ctg-map-ink:#17191e;--ctg-map-body:#59616b;--ctg-map-blue:#315d84;--ctg-map-rule:rgba(49,93,132,.42);--ctg-map-ease:cubic-bezier(.2,.7,.2,1);background:var(--ctg-map-canvas);font-family:var(--ctg-public-font-heading);}
.ctg-location-explore.ctg-public-section,.ctg-location-principles.ctg-public-section,.ctg-location-visibility.ctg-public-section,.ctg-location-redesign.ctg-public-section{padding-bottom:0;}
/* The decorative bridges stay full-width through 1920px, matching the hub hero's visual cap. */
.ctg-location-bridge-art{position:relative;display:block;width:min(100%,120rem);height:clamp(5rem,8vw,8rem);overflow:hidden;margin-inline:auto;mix-blend-mode:darken;}
.ctg-location-bridge-art img{position:absolute;bottom:calc(12px - min(15vw,18rem));left:0;display:block;width:100%;max-width:none;height:auto;}
.ctg-location-bridge-art--brickell{height:clamp(7rem,16vw,19.2rem);margin-top:40px;}
.ctg-location-bridge-art--brickell img{bottom:calc(-28px - min(13vw,15.6rem));}
.ctg-location-bridge-art--rickenbacker{height:clamp(5rem,calc(10vw + 10px),10rem);}
.ctg-location-bridge-art--rickenbacker img{bottom:calc(8px - min(16.3vw,19.56rem));}
.ctg-location-explore .ctg-location-shell{width:min(calc(100% - 6rem),90rem);max-width:none;}
.ctg-location-explore__intro{margin-bottom:3.75rem;text-align:center;}
.ctg-location-explore__intro .ctg-location-eyebrow{margin-bottom:1.25rem;color:var(--ctg-map-blue);font-size:.75rem;font-weight:600;letter-spacing:.18em;line-height:1.2;}
.ctg-location-explore h2{max-width:75rem;margin:0 auto;color:var(--ctg-map-ink);font-size:clamp(2.75rem,4vw,3.5rem);font-weight:600;letter-spacing:-.045em;line-height:.98;}
.ctg-location-explore__layout{position:relative;display:grid;grid-template-columns:minmax(0,42fr) minmax(0,25fr) minmax(0,33fr);min-height:39.5rem;border:.75px solid var(--ctg-map-rule);background:var(--ctg-map-canvas);}
.ctg-location-explore__registration{position:absolute;z-index:4;width:1rem;height:1rem;color:var(--ctg-map-blue);pointer-events:none;}
.ctg-location-explore__registration::before,.ctg-location-explore__registration::after{position:absolute;background:currentColor;content:"";opacity:.55;}
.ctg-location-explore__registration::before{top:50%;left:0;width:100%;height:.5px;}.ctg-location-explore__registration::after{top:0;left:50%;width:.5px;height:100%;}
.ctg-location-explore__registration--tl{top:-.5rem;left:-.5rem;}.ctg-location-explore__registration--tr{top:-.5rem;right:-.5rem;}.ctg-location-explore__registration--bl{bottom:-.5rem;left:-.5rem;}.ctg-location-explore__registration--br{right:-.5rem;bottom:-.5rem;}
.ctg-location-map-pane,.ctg-location-directory,.ctg-location-detail{min-width:0;}
.ctg-location-map-pane{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;border-right:.75px solid var(--ctg-map-rule);}
.ctg-location-map-pane__heading,.ctg-location-map-pane__footer,.ctg-location-directory__heading{display:flex;justify-content:space-between;gap:1rem;align-items:center;min-height:3.25rem;padding:0 1.4rem;color:rgba(49,93,132,.7);font-size:.625rem;font-weight:600;letter-spacing:.14em;line-height:1.3;white-space:nowrap;}
.ctg-location-map-pane__heading,.ctg-location-directory__heading{border-bottom:.75px solid var(--ctg-map-rule);}
.ctg-location-map-pane__footer{border-top:.75px solid var(--ctg-map-rule);font-size:.5625rem;}
.ctg-location-map{position:relative;min-height:0;overflow:hidden;background-image:linear-gradient(rgba(49,93,132,.06) .5px,transparent .5px),linear-gradient(90deg,rgba(49,93,132,.06) .5px,transparent .5px),linear-gradient(rgba(49,93,132,.11) .5px,transparent .5px),linear-gradient(90deg,rgba(49,93,132,.11) .5px,transparent .5px);background-size:48px 48px,48px 48px,192px 192px,192px 192px;}
.ctg-location-map__graphic{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none;}
.ctg-location-map__spatial{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;}
.ctg-location-map__labels{position:absolute;inset:0;pointer-events:none;--ctg-label-inset:20px;}
.has-map-labels .ctg-location-map__graphic [data-map-layer="county-signatures"],.has-map-labels .ctg-location-map__graphic [data-map-layer="connectors"],.has-map-labels .ctg-location-map__graphic [data-map-layer="ocean-label"]{visibility:hidden;}
.ctg-map-label{position:absolute;margin:0;white-space:pre-line;font-family:var(--ctg-public-font-heading);line-height:1.2;}
.ctg-map-label--county{transform:translateY(-50%);color:#123f59;text-align:left;font-size:13px;font-weight:600;letter-spacing:.045em;}
.ctg-map-label--ocean,.ctg-map-label--west{transform:translateY(-50%);text-align:center;font-size:12px;font-weight:500;letter-spacing:.11em;opacity:.68;}
.ctg-map-label--ocean{right:var(--ctg-label-inset);width:96px;color:#315d84;}
.is-spatial .ctg-map-label--ocean{padding:4px 6px;box-sizing:border-box;border-radius:2px;background:rgba(7,58,90,.32);color:#e1eeef;}
.ctg-map-label--west{left:var(--ctg-label-inset);width:92px;color:#50634e;letter-spacing:.08em;}
.ctg-map-label--city{color:#173e55;font-size:13px;font-weight:600;line-height:1.25;white-space:normal;box-sizing:border-box;}
.is-spatial .ctg-map-label--city{clip-path:inset(0 calc(100%*(1 - var(--ctg-spatial-city-label,0))) 0 0);}
.ctg-location-map__label-leader{position:absolute;inset:0;width:100%;height:100%;overflow:visible;}
.ctg-location-map__label-leader path{fill:none;stroke:#315d84;stroke-width:1;}
.is-spatial .ctg-location-map__label-leader path{stroke:#e5ffff;stroke-width:.8;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--ctg-spatial-leader,0));}
.ctg-map-label--coordinates{display:none;}
.ctg-location-map.is-spatial .ctg-location-map__spatial{opacity:calc(1 - var(--ctg-blueprint,0));}
.ctg-location-map.is-spatial [data-map-layer="regional-coastline"],.ctg-location-map.is-spatial [data-map-layer="county-boundaries"]{opacity:max(calc(1 - var(--ctg-spatial-build,0)),var(--ctg-blueprint,0));}
.ctg-location-map.is-spatial [data-map-layer="county-fills"] path{stroke:rgba(49,93,132,calc(.42*var(--ctg-blueprint,0)));stroke-width:.75;}
.ctg-location-map.is-spatial [data-map-layer="county-fills"] path.is-county-active{fill:rgba(49,93,132,calc(var(--ctg-map-county-wash)*var(--ctg-blueprint,0)));stroke:rgba(49,93,132,calc(.8*var(--ctg-blueprint,0)));stroke-width:1.1;}
.ctg-location-map.is-spatial [data-map-layer="city-nodes"] circle.is-city-active{fill:color-mix(in srgb,#dfffff,#315d84 calc(100%*var(--ctg-blueprint,0)));stroke:color-mix(in srgb,#dfffff,#315d84 calc(100%*var(--ctg-blueprint,0)));}
.ctg-location-map.is-spatial [data-map-layer="active-rings"] circle{stroke:color-mix(in srgb,#e3ffff,#315d84 calc(100%*var(--ctg-blueprint,0)));}
.is-spatial .ctg-location-map__label-leader path{stroke:color-mix(in srgb,#e5ffff,#315d84 calc(100%*var(--ctg-blueprint,0)));}
.is-spatial .ctg-map-label--ocean{color:color-mix(in srgb,#e1eeef,#315d84 calc(100%*var(--ctg-blueprint,0)));background:rgba(7,58,90,calc(.32*(1 - var(--ctg-blueprint,0))));}
.ctg-location-map[data-map-presentation="CITY_2D"] .ctg-map-label--city{clip-path:none;}
.ctg-location-map[data-map-presentation="CITY_2D"] .ctg-location-map__label-leader path{stroke-dashoffset:0;}
.ctg-location-map.is-spatial .ctg-map-label--city[data-preview="true"]{clip-path:none;}
.ctg-location-map.is-spatial .ctg-location-map__label-leader[data-preview="true"] path{stroke-dashoffset:0;}
.ctg-location-map.is-spatial[data-preview-city]:not([data-preview-city=""]) [data-map-layer="active-rings"],.ctg-location-map.is-spatial[data-preview-city]:not([data-preview-city=""]) [data-map-layer="city-nodes"] circle.is-city-active{opacity:1;}
.ctg-location-map.is-spatial[data-map-presentation="CITY_2D"] [data-map-layer="city-nodes"] circle:not(.is-city-active){opacity:.65;fill:rgba(49,93,132,.22);stroke:rgba(49,93,132,.55);}
.ctg-location-map.is-spatial [data-map-layer="county-relief"]{opacity:calc(1 - var(--ctg-spatial-build,0));}
.ctg-location-map.is-spatial [data-map-layer="county-fills"] path{fill:transparent;}
.ctg-location-map.is-spatial [data-map-layer="ocean-contours"]{opacity:max(calc(1 - var(--ctg-spatial-color,0)),var(--ctg-blueprint,0));}
.ctg-location-map.is-spatial [data-map-layer="ocean-label"] text{fill:color-mix(in srgb,var(--ctg-map-blue),#d7f4f5 calc(var(--ctg-spatial-color,0)*100%));}
.ctg-location-map.is-spatial [data-map-layer="connectors"] path{stroke:color-mix(in srgb,var(--ctg-map-blue),#e3ffff calc(var(--ctg-spatial-city,0)*100%));}
.ctg-location-map.is-spatial [data-map-layer="connectors"] text{fill:color-mix(in srgb,var(--ctg-map-blue),#efffff calc(var(--ctg-spatial-city,0)*100%));paint-order:stroke;stroke:rgba(20,76,88,.25);stroke-width:1.2px;}
.ctg-location-map.is-spatial [data-map-layer="city-nodes"] circle:not(.is-city-active){opacity:calc(.42*(1 - .40*var(--ctg-spatial-focus,0)));}
.ctg-location-map.is-spatial [data-map-layer="city-nodes"] circle.is-city-active,.ctg-location-map.is-spatial [data-map-layer="active-rings"]{opacity:var(--ctg-spatial-city,0);}
.ctg-location-map__graphic [data-map-layer="county-relief"]{pointer-events:none;}
.ctg-location-map__graphic [data-map-layer="county-relief"] use{stroke:none;}
.ctg-location-map__graphic .ctg-location-map__relief-contact{fill:rgba(65,68,69,.16);transform:translate(4px,5px);}
.ctg-location-map__graphic .ctg-location-map__relief-edge{fill:var(--ctg-map-land-side);transform:translate(1.4px,1.8px);}
.ctg-location-map__graphic .ctg-location-map__relief-face{fill:var(--ctg-map-canvas);}
.ctg-location-map__graphic [data-map-layer="county-fills"] path{fill:transparent;fill-rule:evenodd;pointer-events:all;cursor:pointer;transition:fill .18s var(--ctg-map-ease);}
.ctg-location-map__graphic [data-map-layer="county-fills"] path.is-county-active{fill:rgba(184,201,255,.07);}
.ctg-location-map__graphic [data-map-layer="county-fills"] path.is-county-preview:not(.is-county-active){fill:rgba(49,93,132,.045);}
.ctg-location-map__graphic [data-map-layer="regional-coastline"] path{fill:none;stroke:var(--ctg-map-blue);stroke-width:1;stroke-linejoin:miter;}
.ctg-location-map__graphic [data-map-layer="county-boundaries"] path{fill:none;stroke:var(--ctg-map-blue);stroke-width:.75;stroke-linejoin:miter;opacity:.72;transition:opacity .18s var(--ctg-map-ease);}
.ctg-location-map__graphic [data-map-layer="county-boundaries"] path.is-county-active{opacity:1;}
.ctg-location-map__graphic [data-map-layer="county-signatures"] text{fill:var(--ctg-map-blue);font-family:var(--ctg-public-font-heading);font-size:12px;font-weight:600;letter-spacing:.11em;opacity:.78;pointer-events:none;}
.ctg-location-map__graphic [data-map-layer="city-nodes"] circle{fill:transparent;stroke:rgba(49,63,76,.42);stroke-width:.75;transition:fill .24s var(--ctg-map-ease),stroke .24s var(--ctg-map-ease);}
.ctg-location-map__graphic [data-map-layer="city-nodes"] circle.is-city-active{fill:#6f82e8;stroke:#6f82e8;}
.ctg-location-map__graphic [data-map-layer="active-rings"] g{opacity:0;transition:opacity .24s var(--ctg-map-ease);}
.ctg-location-map__graphic [data-map-layer="active-rings"] g.is-city-active{opacity:1;}
.ctg-location-map__graphic [data-map-layer="active-rings"] circle{fill:none;stroke:var(--ctg-map-blue);stroke-width:1;transform-box:fill-box;transform-origin:center;transition:transform .24s var(--ctg-map-ease),opacity .24s var(--ctg-map-ease);}
.ctg-location-map__graphic [data-map-layer="active-rings"] circle:first-child{stroke-width:1.25;}.ctg-location-map__graphic [data-map-layer="active-rings"] circle:last-child{stroke-width:.75;opacity:.25;}
.ctg-location-map__graphic [data-map-layer="active-rings"] g:not(.is-city-active) circle{transform:scale(.7);}
.ctg-location-map__graphic [data-map-layer="connectors"] g{opacity:0;transition:opacity .18s var(--ctg-map-ease);}
.ctg-location-map__graphic [data-map-layer="connectors"] g.is-city-active{opacity:1;}
.ctg-location-map__graphic [data-map-layer="connectors"] path{fill:none;stroke:var(--ctg-map-blue);stroke-width:.75;stroke-linecap:round;}
.ctg-location-map__graphic [data-map-layer="connectors"] text{fill:var(--ctg-map-blue);font-family:var(--ctg-public-font-heading);font-size:9px;font-weight:600;letter-spacing:.1em;}
.ctg-location-map__graphic [data-map-layer="ocean-contours"] :is(path,use){fill:none;stroke:var(--ctg-map-blue);stroke-width:.5;stroke-linecap:round;}
.ctg-location-map__graphic [data-map-layer="ocean-contours"] use{opacity:1;}
/* Contrast support belongs only to the colorful 3D state. The existing
   technical-blue SVG treatment remains intact when the blueprint takes over. */
.ctg-location-map__label-leader .ctg-map-leader-support,.ctg-map-locator{display:none;}
.is-spatial .ctg-map-label--city{color:color-mix(in srgb,#fff,#173e55 calc(100%*var(--ctg-blueprint,0)));font-size:calc(13px + 2px*(1 - var(--ctg-blueprint,0)));text-shadow:0 1px 2px rgba(12,47,65,calc(.35*(1 - var(--ctg-blueprint,0))));}
.is-spatial .ctg-location-map__label-leader path{stroke-width:calc(.8px + .3px*(1 - var(--ctg-blueprint,0)));stroke-linejoin:round;stroke-linecap:round;}
.is-spatial .ctg-location-map__label-leader .ctg-map-leader-support{display:block;stroke:#073a5a;stroke-width:2.75px;opacity:calc(.55*(1 - var(--ctg-blueprint,0)));}
.is-spatial .ctg-map-locator{display:block;fill:none;opacity:calc(var(--ctg-spatial-city,0)*(1 - var(--ctg-blueprint,0)));}
.is-spatial .ctg-location-map__label-leader[data-preview="true"] .ctg-map-locator{opacity:calc(1 - var(--ctg-blueprint,0));}
.ctg-map-locator-support{stroke:#073a5a;stroke-width:2.5px;opacity:.45;}
.ctg-map-locator-ring{stroke:#f1ffff;stroke-width:1.1px;opacity:.95;}
.ctg-map-locator-ring:last-child{stroke-width:.85px;opacity:.65;}
.ctg-location-map.is-spatial.has-map-labels [data-map-layer="active-rings"]{opacity:calc(var(--ctg-spatial-city,0)*var(--ctg-blueprint,0));}
.ctg-location-map.is-spatial.has-map-labels[data-preview-city]:not([data-preview-city=""]) [data-map-layer="active-rings"]{opacity:var(--ctg-blueprint,0);}
.ctg-location-map.is-spatial.has-map-labels[data-map-presentation="CITY_2D"] [data-map-layer="active-rings"],.ctg-location-map.is-spatial[data-map-presentation="CITY_2D"] [data-map-layer="city-nodes"] circle.is-city-active{opacity:1;}
.ctg-location-map.is-spatial.has-map-labels [data-map-layer="city-nodes"] circle.is-city-active{stroke:color-mix(in srgb,#073a5a,#315d84 calc(100%*var(--ctg-blueprint,0)));stroke-width:calc(.75px + 1.75px*(1 - var(--ctg-blueprint,0)));paint-order:stroke fill;vector-effect:non-scaling-stroke;}
.ctg-location-map__graphic [data-map-layer="ocean-label"] text{fill:var(--ctg-map-blue);font-family:var(--ctg-public-font-heading);font-size:11px;font-weight:500;letter-spacing:.22em;}
.ctg-location-map__compass{position:absolute;top:calc(4% + 10px);left:calc(4% + 10px);width:6.6rem;height:6.6rem;color:var(--ctg-map-blue);opacity:.65;pointer-events:none;}
.is-spatial .ctg-location-map__compass{opacity:calc(.65*(1 - .23*var(--ctg-spatial-focus,0)));transform:scale(calc(.96 + .04*var(--ctg-spatial-compass,1)));}
.is-spatial .ctg-location-map__compass-datum{clip-path:circle(calc(70%*var(--ctg-spatial-compass-point,0)) at center);}
.is-spatial .ctg-location-map__compass-axis,.is-spatial .ctg-location-map__compass-cardinals{clip-path:circle(calc(70%*var(--ctg-spatial-compass-axes,0)) at center);}
.is-spatial .ctg-location-map__compass-rings,.is-spatial .ctg-location-map__compass-intercardinals{clip-path:circle(calc(70%*var(--ctg-spatial-compass-radials,0)) at center);}
.is-spatial .ctg-location-map__compass text{opacity:var(--ctg-spatial-compass-letters,0);}
.is-spatial .ctg-map-label--west{opacity:calc(.68*var(--ctg-spatial-west-label,1)*(1 - .15*var(--ctg-spatial-focus,0)));transform:translate(calc(-1*var(--ctg-west-arrival,10px)*(1 - var(--ctg-spatial-west-label,1))),-50%);}
.is-spatial .ctg-map-label--ocean{opacity:calc(.68*var(--ctg-spatial-ocean-label,1)*(1 - .10*var(--ctg-spatial-focus,0)));transform:translate(calc(var(--ctg-ocean-arrival,12px)*(1 - var(--ctg-spatial-ocean-label,1))),-50%);}
.ctg-location-map__compass circle,.ctg-location-map__compass path{stroke:currentColor;stroke-width:.65;stroke-linecap:round;stroke-linejoin:round;opacity:.63;}
.ctg-location-map__compass-rings circle:first-child{opacity:.36;}.ctg-location-map__compass-rings circle:nth-child(2){opacity:.26;}
.ctg-location-map__compass path.ctg-location-map__compass-axis{opacity:.42;}.ctg-location-map__compass-intercardinals path{opacity:.45;}
.ctg-location-map__compass .ctg-location-map__compass-datum:last-of-type{fill:currentColor;opacity:.72;}
.ctg-location-map__compass text{fill:currentColor;font:600 11px var(--ctg-public-font-heading);letter-spacing:.08em;}
.ctg-location-directory{border-right:.75px solid var(--ctg-map-rule);}
.ctg-location-directory__heading{font-size:.5625rem;}
.ctg-location-directory__county{border-bottom:.75px solid var(--ctg-map-rule);}
.ctg-location-directory__county h3{margin:0;}
.ctg-location-directory__toggle{display:flex;width:100%;min-height:3.5rem;gap:.5rem;align-items:center;padding:.75rem 1.35rem;border:0;background:transparent;color:var(--ctg-map-ink);font:600 .75rem/1.2 var(--ctg-public-font-heading);letter-spacing:.14em;text-align:left;text-transform:uppercase;cursor:pointer;}
.ctg-location-directory__toggle:hover{background:rgba(49,93,132,.035);}
.ctg-location-directory__toggle:focus-visible{outline:2px solid var(--ctg-map-blue);outline-offset:-3px;}
.ctg-location-directory__county-name{min-width:0;}.ctg-location-directory__count{margin-left:auto;color:var(--ctg-map-body);font-size:.6875rem;font-weight:500;letter-spacing:.12em;}
.ctg-location-directory__toggle-mark{position:relative;flex:none;width:.7rem;height:.7rem;margin-left:.45rem;color:var(--ctg-map-blue);}
.ctg-location-directory__toggle-mark::before,.ctg-location-directory__toggle-mark::after{position:absolute;top:50%;left:0;width:100%;height:1px;background:currentColor;content:"";}
.ctg-location-directory__toggle-mark::after{transform:rotate(90deg);transition:transform .22s var(--ctg-map-ease);}
.ctg-location-directory__toggle[aria-expanded="true"] .ctg-location-directory__toggle-mark::after{transform:rotate(0);}
.ctg-location-directory__panel{display:grid;grid-template-rows:1fr;transition:grid-template-rows .22s var(--ctg-map-ease),visibility 0s;}
.ctg-location-directory__panel-inner{min-height:0;overflow:hidden;}
.ctg-location-directory.is-enhanced .ctg-location-directory__panel:not(.is-open){grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .22s var(--ctg-map-ease),visibility 0s .22s;}
.ctg-location-directory__zone{margin:0;padding:1rem 1.35rem .35rem;color:rgba(49,93,132,.58);font-size:.5625rem;font-weight:600;letter-spacing:.14em;line-height:1.25;}
.ctg-location-city-list{display:grid;gap:0;margin:0;padding:.25rem .9rem 1.15rem;list-style:none;}
.ctg-location-directory__county[data-county="broward"] .ctg-location-city-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));grid-auto-flow:column;column-gap:.25rem;}
.ctg-location-city-list li{min-width:0;}
.ctg-location-city-list__link,.ctg-location-city-list__informational{position:relative;display:flex;width:100%;min-height:2.75rem;gap:.5rem;align-items:center;padding:.4rem .45rem;color:var(--ctg-map-body);font:400 .9375rem/1.35 var(--ctg-public-font-heading);text-align:left;text-decoration:none;}
.ctg-location-city-list__link{border:0;background:transparent;}
.ctg-location-city-list__link--mobile{display:none;}
.ctg-location-city-list__informational{color:#68717a;border:0;background:transparent;cursor:pointer;}
.ctg-location-city-list__informational:focus-visible{outline:2px solid var(--ctg-map-blue);outline-offset:0;}
.ctg-location-city-list__informational[aria-pressed="true"]{color:var(--ctg-map-blue);}
.ctg-location-city-list__informational[aria-pressed="true"] .ctg-location-city-list__dot{background:currentColor;}
.ctg-location-city-list__dot{display:block;flex:none;width:.42rem;height:.42rem;border:1px solid currentColor;border-radius:50%;}
.ctg-location-city-list__link .ctg-location-city-list__dot{background:var(--ctg-map-blue);color:var(--ctg-map-blue);}
.ctg-location-city-list__link{color:var(--ctg-map-blue);font-weight:600;cursor:pointer;}
.ctg-location-city-list__link .ctg-location-city-list__name{position:relative;}
.ctg-location-city-list__link .ctg-location-city-list__name::after{position:absolute;right:-.3rem;bottom:-.3rem;left:0;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:left;transition:transform .18s var(--ctg-map-ease);}
.ctg-location-city-list__link:is(:hover,:focus-visible,.is-city-active) .ctg-location-city-list__name::after{transform:scaleX(1);}
.ctg-location-city-list__link:focus-visible{outline:2px solid var(--ctg-map-blue);outline-offset:0;}
.ctg-location-detail{position:relative;overflow:hidden;}
.ctg-location-detail::after{position:absolute;z-index:2;top:0;left:0;width:1px;height:100%;background:linear-gradient(transparent,rgba(49,93,132,.64),transparent);content:"";pointer-events:none;transform:translateY(-100%);opacity:0;}
.is-detail-open .ctg-location-detail::after{animation:ctg-detail-divider .35s .32s ease-out both;}
@keyframes ctg-detail-divider{0%{transform:translateY(-100%);opacity:0;}25%{opacity:1;}100%{transform:translateY(100%);opacity:0;}}
.ctg-location-detail{scroll-margin-top:6rem;}
.ctg-location-detail h3:focus-visible{outline:2px solid var(--ctg-map-blue);outline-offset:.25rem;}
.ctg-location-map-js .ctg-location-explore__layout:not(.is-detail-open) .ctg-location-detail__city:not(.is-exiting){opacity:0;pointer-events:none;}
.ctg-location-detail__city{position:relative;isolation:isolate;display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:100%;background:radial-gradient(ellipse 42% 28% at 100% 4%,rgba(49,93,132,.025),rgba(49,93,132,0) 74%),radial-gradient(ellipse 48% 42% at 100% 84%,rgba(49,93,132,.028),rgba(49,93,132,0) 76%),var(--ctg-map-canvas);opacity:1;transform:translateY(0);}
.ctg-location-detail__city::before{position:absolute;z-index:0;top:0;right:0;bottom:3.25rem;left:0;background:url("/assets/maps/city-detail-topography.svg") right center/100% 100% no-repeat;content:"";pointer-events:none;}
.ctg-location-detail__body,.ctg-location-detail__footer{position:relative;z-index:1;}
.ctg-location-detail__city.is-exiting{position:absolute;inset:0;opacity:0;pointer-events:none;}
.ctg-location-detail__city[hidden]{display:none;}
.ctg-location-detail__body{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:3rem;}
.ctg-location-detail__eyebrow{margin:0 0 1.5rem;color:var(--ctg-map-blue);font-size:.75rem;font-weight:600;letter-spacing:.16em;line-height:1.2;}
.ctg-location-detail h3{margin:0 0 2rem;color:var(--ctg-map-ink);font-size:clamp(2.5rem,3.7vw,3.25rem);font-weight:600;letter-spacing:-.04em;line-height:.96;}
.ctg-location-detail__body>p:not(.ctg-location-detail__eyebrow){max-width:22.5rem;margin:0;color:var(--ctg-map-body);font-size:1.0625rem;line-height:1.55;}
.ctg-location-detail__cta{position:relative;display:inline-flex;gap:.55rem;align-items:center;margin-top:40px;padding-bottom:.5rem;color:var(--ctg-map-blue);font-size:.9375rem;font-weight:600;line-height:1.25;text-decoration:none;}
.ctg-location-detail__cta::after{position:absolute;right:0;bottom:0;left:0;height:1px;background:currentColor;content:"";}
.ctg-location-detail__cta:hover::after{height:2px;}.ctg-location-detail__cta:focus-visible{outline:2px solid var(--ctg-map-blue);outline-offset:.25rem;}
.ctg-location-detail__footer{display:flex;justify-content:space-between;gap:1rem;align-items:center;min-height:3.25rem;padding:0 3rem;border-top:.75px solid var(--ctg-map-rule);color:rgba(49,93,132,.58);font-size:.5625rem;font-weight:600;letter-spacing:.12em;}
@media(min-width:1320px){
  .ctg-location-explore{--ctg-focus-duration:.48s;--ctg-focus-delay:.08s;}
  .ctg-location-explore.has-city-selection{--ctg-focus-duration:.48s;--ctg-focus-delay:.12s;}
  .ctg-location-explore .ctg-location-shell{container-type:inline-size;}
  .ctg-location-explore__intro :is(.ctg-location-eyebrow,h2){width:max-content;max-width:100%;margin-inline:auto;}
  /* Auto margins keep the combined tracks on the same axis at every frame. */
  .ctg-location-map-js .ctg-location-explore__layout{width:calc((100cqw - 1.5px)*.67 + 1.5px);margin-inline:auto;grid-template-columns:0px calc((100cqw - 1.5px)*.25) calc((100cqw - 1.5px)*.42);}
  .ctg-location-map-js .ctg-location-explore__layout.is-ready{transition:width var(--ctg-focus-duration) var(--ctg-focus-delay) cubic-bezier(.22,1,.36,1),grid-template-columns var(--ctg-focus-duration) var(--ctg-focus-delay) cubic-bezier(.22,1,.36,1);}
  .ctg-location-map-js .ctg-location-explore__layout:not(.is-detail-open){width:calc((100cqw - 1.5px)*.67 + 1.5px);grid-template-columns:calc((100cqw - 1.5px)*.42) calc((100cqw - 1.5px)*.25) 0px;}
  .ctg-location-map-js .ctg-location-detail__city{width:calc((100cqw - 1.5px)*.42);}
}
@media(max-width:1319px){
  .ctg-location-explore .ctg-location-shell{width:min(calc(100% - 4rem),90rem);}
  .ctg-location-explore__layout{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);min-height:0;}
  .ctg-location-map__compass{width:5.5rem;height:5.5rem;}
  .ctg-location-map__graphic [data-map-layer="county-signatures"] text{font-size:18px;}
  .ctg-location-map__graphic [data-map-layer="ocean-label"] text{font-size:16px;}
  .ctg-location-map-pane,.ctg-location-directory{min-height:35rem;}
  .ctg-location-directory{border-right:0;}
  .ctg-location-detail{grid-column:1/-1;border-top:.75px solid var(--ctg-map-rule);}
  .ctg-location-detail__city{min-height:19rem;}
  .ctg-location-detail__body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-rows:auto auto auto;column-gap:2.5rem;align-content:center;padding:2.5rem;}
  .ctg-location-detail__eyebrow{grid-column:1;grid-row:1;margin-bottom:1rem;}
  .ctg-location-detail h3{grid-column:1;grid-row:2;margin-bottom:0;font-size:clamp(2.5rem,4vw,2.75rem);}
  .ctg-location-detail__body>p:not(.ctg-location-detail__eyebrow){grid-column:2;grid-row:1/3;align-self:center;max-width:30rem;}
  .ctg-location-detail__cta{grid-column:2;grid-row:3;justify-self:start;margin-top:40px;}
  .ctg-location-detail__footer{padding-inline:2.5rem;}
  .ctg-location-detail__city::before{background-size:78% 100%;opacity:.8;}
  .ctg-location-map-js .ctg-location-detail{display:grid;grid-template-rows:0fr;min-height:0;overflow:hidden;border-top:0;transition:grid-template-rows .35s .08s cubic-bezier(.22,1,.36,1);}
  .ctg-location-map-js .ctg-location-detail__city{min-height:0;overflow:hidden;}
  .ctg-location-map-js .ctg-location-explore__layout.is-detail-open .ctg-location-detail{grid-template-rows:1fr;border-top:.75px solid var(--ctg-map-rule);}
}
@media(max-width:899px){
  .ctg-location-explore__layout{grid-template-columns:minmax(0,1fr);}
  .ctg-location-map-pane{min-height:30rem;border-right:0;border-bottom:.75px solid var(--ctg-map-rule);}
  .ctg-location-directory{min-height:0;}
  .ctg-location-detail{grid-column:1;}
  .ctg-location-detail__body{display:flex;flex-direction:column;align-items:flex-start;}
  .ctg-location-detail h3{margin-bottom:1.5rem;}
  .ctg-location-detail__cta{margin-top:40px;}
  .ctg-location-map{background-size:40px 40px,40px 40px,160px 160px,160px 160px;}
  .ctg-location-map-pane__footer{display:none;}
  .ctg-location-map__compass{width:4.3rem;height:4.3rem;}
  .ctg-location-map__graphic [data-map-layer="county-signatures"] text{font-size:18px;}
  .ctg-location-map__graphic [data-map-layer="ocean-label"] text{font-size:16px;}
}
@media(max-width:599px){
  .ctg-location-explore .ctg-location-shell{width:calc(100% - 2 * var(--ctg-public-gutter));}
  .ctg-location-explore__intro{margin-bottom:2rem;}
  .ctg-location-explore h2{font-size:clamp(2.25rem,10vw,2.5rem);line-height:1.04;}
  .ctg-location-map-pane{display:grid;min-height:clamp(24rem,105vw,29rem);}
  .ctg-location-map__labels{--ctg-label-inset:18px;}
  .ctg-location-map__graphic [data-map-layer="county-fills"] path{pointer-events:none;cursor:default;}
  .ctg-map-label--county{font-size:13.5px;letter-spacing:.02em;}
  .ctg-map-label--city{font-size:13px;}
  .ctg-map-label--ocean{font-size:12px;width:88px;letter-spacing:.08em;}
  .ctg-map-label--west{width:78px;letter-spacing:.025em;}
  .ctg-map-label--coordinates{display:none;}
  .ctg-location-map__compass{top:30px;left:30px;width:4.5rem;height:4.5rem;}
  .ctg-location-map__compass text{font-size:17px;}
  .ctg-location-map__graphic [data-map-layer="county-signatures"] text{font-size:20px;}
  .ctg-location-map__graphic [data-map-layer="connectors"] text{font-size:14px;letter-spacing:.04em;}
  .ctg-location-directory__heading{min-height:2.75rem;padding-inline:1rem;}
  .ctg-location-directory__toggle{padding-inline:1rem;}
  .ctg-location-directory__zone{padding-left:1rem;}
  .ctg-location-city-list{padding-inline:.7rem;}
  .ctg-location-city-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:.5rem;}
  .ctg-location-directory__county[data-county="broward"] .ctg-location-city-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,minmax(2.75rem,auto));grid-auto-flow:column;}
  .ctg-location-city-list__link--select{display:none;}
  .ctg-location-city-list__link--mobile{display:flex;}
  .ctg-location-map-js .ctg-location-detail,.ctg-location-detail{display:none;}
  .ctg-location-detail__city{min-height:0;}
  .ctg-location-detail__body{padding:2.5rem 1.5rem;}
  .ctg-location-detail h3{font-size:2.25rem;}
  .ctg-location-detail__body>p:not(.ctg-location-detail__eyebrow){font-size:1rem;}
  .ctg-location-detail__cta{margin-top:40px;}
  .ctg-location-detail__footer{min-height:2.75rem;padding-inline:1.5rem;}
  .ctg-location-explore__registration{display:none;}
}
@media(max-width:359px){
  .ctg-location-city-list,.ctg-location-directory__county[data-county="broward"] .ctg-location-city-list{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row;}
}
/* Retain the map's drawing surface while its outer track clips closed. */
.ctg-location-map-slot{min-width:0;min-height:0;}
.ctg-location-map-slot>.ctg-location-map-pane{height:100%;}
.ctg-location-map-js .ctg-location-map-slot{overflow:hidden;}
.ctg-location-map-js .ctg-location-explore__layout{overflow-anchor:none;}
.ctg-location-map-js .ctg-location-explore__layout[data-map-mode="city"] .ctg-location-map-slot{pointer-events:none;}
@media(min-width:1320px){
  .ctg-location-map-js .ctg-location-map-pane{width:calc((100cqw - 1.5px)*.42);min-height:39.5rem;}
}
@media(min-width:900px) and (max-width:1319px){
  .ctg-location-explore .ctg-location-shell{container-type:inline-size;}
  .ctg-location-map-js .ctg-location-explore__layout{--ctg-location-tablet-width:min(100cqw,60rem);width:var(--ctg-location-tablet-width);margin-inline:auto;grid-template-columns:calc((var(--ctg-location-tablet-width) - 1.5px)*.6) calc((var(--ctg-location-tablet-width) - 1.5px)*.4) 0px;min-height:35rem;}
  .ctg-location-map-js .ctg-location-explore__layout.is-ready{transition:grid-template-columns .48s .12s cubic-bezier(.22,1,.36,1);}
  .ctg-location-map-js .ctg-location-explore__layout[data-map-mode="city"]{grid-template-columns:0px calc((var(--ctg-location-tablet-width) - 1.5px)*.4) calc((var(--ctg-location-tablet-width) - 1.5px)*.6);}
  .ctg-location-map-js .ctg-location-map-pane{width:calc((var(--ctg-location-tablet-width) - 1.5px)*.6);}
  .ctg-location-map-js .ctg-location-detail{grid-column:3;grid-row:1;display:block;border-top:0!important;}
  .ctg-location-map-js .ctg-location-detail__city{width:calc((var(--ctg-location-tablet-width) - 1.5px)*.6);min-height:100%;}
  .ctg-location-map-js .ctg-location-detail__body{display:flex;}
  .ctg-location-map-js .ctg-location-detail h3{margin-bottom:2rem;}
  .ctg-location-map-js .ctg-location-directory{border-right:.75px solid var(--ctg-map-rule);}
}
@media(max-width:899px){
  .ctg-location-map-js .ctg-location-map-slot{height:30rem;transition:height .44s .12s cubic-bezier(.22,1,.36,1);}
  .ctg-location-map-js .ctg-location-map-slot>.ctg-location-map-pane{height:30rem;min-height:0;}
  .ctg-location-map-js .ctg-location-explore__layout[data-map-mode="city"] .ctg-location-map-slot{height:0;}
  .ctg-location-map-js .ctg-location-detail{transition:grid-template-rows .44s .12s cubic-bezier(.22,1,.36,1);}
  .ctg-location-map-js .ctg-location-detail__city.is-exiting{position:relative;grid-row:1;grid-column:1;}
}
@media(max-width:599px){
  .ctg-location-map-js .ctg-location-map-slot,.ctg-location-map-js .ctg-location-map-slot>.ctg-location-map-pane{height:clamp(24rem,105vw,29rem);}
  .ctg-location-map-js .ctg-location-detail{display:grid;}
  .ctg-location-map-js .ctg-location-city-list__link--select{display:flex;}
  .ctg-location-map-js .ctg-location-city-list__link--mobile{display:none;}
}
@media(prefers-reduced-motion:reduce){
  .ctg-location-map-js .ctg-location-map-slot{transition:none;}
}
@media(prefers-reduced-motion:reduce){.ctg-location-map-js .ctg-location-explore__layout.is-ready.is-detail-open,.ctg-location-map-js .ctg-location-detail,.ctg-location-explore__intro :is(.ctg-location-eyebrow,h2){transition:none;}.ctg-location-detail::after{animation:none;}}
@media(prefers-reduced-motion:reduce){.ctg-location-map-js .ctg-location-explore__layout.is-ready,.ctg-location-explore .ctg-location-directory__panel,.ctg-location-explore .ctg-location-directory__toggle-mark::after,.ctg-location-explore .ctg-location-city-list__name::after,.ctg-location-map-js .ctg-location-explore__layout.is-ready .ctg-location-detail,.ctg-location-explore .ctg-location-detail__city,.ctg-location-explore .ctg-location-map__graphic [data-map-layer] *{transition:none;animation:none;}}
.ctg-location-flow{--ctg-flow-line:rgba(174,202,230,.75);--ctg-flow-violet:var(--ctg-public-eyebrow-primary);padding:clamp(5rem,8vw,8rem) 0;background:radial-gradient(ellipse at 50% 45%,rgba(43,68,88,.17),transparent 65%),var(--ctg-public-surface-dark);color:var(--ctg-public-heading-dark);}
.ctg-location-flow .ctg-location-shell{max-width:var(--ctg-public-content-max);}
.ctg-location-flow__heading{position:relative;text-align:center;}
.ctg-location-flow__heading-copy{max-width:62rem;margin-inline:auto;}
.ctg-location-flow h2{max-width:none;margin:0 0 1.55rem;font-size:clamp(2.5rem,3.7vw,3.75rem);line-height:1.08;}
.ctg-location-flow__heading-copy p{margin:.25rem 0;color:var(--ctg-public-body-dark);font-size:clamp(1rem,1.45vw,1.25rem);}
.ctg-location-flow__annotation{display:flex;gap:1rem;align-items:center;color:#a6b4c2;font-size:.5625rem;font-weight:700;letter-spacing:.17em;line-height:1.55;text-align:left;opacity:.55;}
.ctg-location-flow__heading>.ctg-location-flow__annotation{position:absolute;top:1rem;left:0;}
.ctg-location-flow__heading>.ctg-location-flow__annotation--end{right:0;left:auto;text-align:right;}
.ctg-location-flow__annotation-mark{position:relative;display:block;flex:none;width:1rem;height:1rem;opacity:.55;}
.ctg-location-flow__annotation-mark::before,.ctg-location-flow__annotation-mark::after{position:absolute;background:currentColor;content:"";}
.ctg-location-flow__annotation-mark::before{top:50%;left:0;width:100%;height:1px;}.ctg-location-flow__annotation-mark::after{top:0;left:50%;width:1px;height:100%;}
.ctg-location-flow__steps{display:grid;gap:1.25rem;max-width:33rem;margin:calc(2rem - 1px) auto calc(2rem + 2px);padding:0;list-style:none;}
.ctg-location-flow__step{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem;}
.ctg-location-flow__step:not(:last-child)::after{position:absolute;top:100%;left:50%;height:1.25rem;border-left:1px solid var(--ctg-flow-line);content:"";transform:translateX(-50%);}
.ctg-location-flow__index{grid-column:1;color:#a6b4c2;font-size:.7rem;letter-spacing:.12em;opacity:.55;}
.ctg-location-flow__box{--ctg-flow-box-line:var(--ctg-flow-line);position:relative;grid-column:1;display:flex;gap:1.25rem;align-items:center;min-height:5.5rem;padding:.75rem 1.5rem;border:1px solid var(--ctg-flow-box-line);background:rgba(19,29,37,.4);}
.ctg-location-flow__box::before,.ctg-location-flow__box::after{position:absolute;z-index:2;left:50%;width:.42rem;height:.42rem;border-radius:50%;background:var(--ctg-flow-box-line);box-shadow:0 0 .6rem var(--ctg-flow-box-line);content:"";transform:translate(-50%,-50%);}
.ctg-location-flow__box::before{top:0;}.ctg-location-flow__box::after{top:100%;}
.ctg-location-flow__overlay{position:absolute;inset:5px -5px -5px 5px;border:1px solid var(--ctg-flow-box-line);opacity:.25;pointer-events:none;}
.ctg-location-flow__corner{position:absolute;z-index:2;width:1.25rem;height:1.25rem;pointer-events:none;}
.ctg-location-flow__corner::before,.ctg-location-flow__corner::after{position:absolute;background:var(--ctg-flow-box-line);content:"";}
.ctg-location-flow__corner::before{top:50%;left:0;width:100%;height:1px;}.ctg-location-flow__corner::after{top:0;left:50%;width:1px;height:100%;}
.ctg-location-flow__corner--tl{top:-.625rem;left:-.625rem;}.ctg-location-flow__corner--tr{top:-.625rem;right:-.625rem;}.ctg-location-flow__corner--bl{bottom:-.625rem;left:-.625rem;}.ctg-location-flow__corner--br{right:-.625rem;bottom:-.625rem;}
.ctg-location-flow__box strong{position:relative;z-index:1;flex:none;font-size:1.1rem;font-weight:700;letter-spacing:.14em;}
.ctg-location-flow__box--discovery>span:last-child{color:#b4c6d8;font-size:1.1rem;}
.ctg-location-flow__discovery-sources{display:flex;flex:1;justify-content:space-between;align-items:center;gap:.2rem;min-width:0;}
.ctg-location-flow__box-separator{width:1px;height:3rem;margin-inline:.25rem;background:var(--ctg-flow-line);}
.ctg-location-flow__box--website{gap:1.5rem;min-height:7.5rem;}
.ctg-location-flow__website-drawing{display:block;flex:none;width:min(55%,28rem);height:auto;max-height:6.5rem;margin-inline:auto;color:#b4d2ee;}
.ctg-location-flow__box--clarity{--ctg-flow-box-line:var(--ctg-flow-violet);justify-content:center;background:repeating-linear-gradient(135deg,rgba(184,201,255,.055) 0 1px,transparent 1px 9px),rgba(89,80,143,.12);}
.ctg-location-flow__clarity-mark{position:absolute;top:50%;width:.875rem;height:.875rem;color:#a6b4c2;transform:translateY(-50%);opacity:.25;pointer-events:none;}
.ctg-location-flow__clarity-mark::before,.ctg-location-flow__clarity-mark::after{position:absolute;background:currentColor;content:"";}
.ctg-location-flow__clarity-mark::before{top:50%;left:0;width:100%;height:1px;}.ctg-location-flow__clarity-mark::after{top:0;left:50%;width:1px;height:100%;}
.ctg-location-flow__clarity-mark--left{left:2rem;}.ctg-location-flow__clarity-mark--right{right:2rem;}
.ctg-location-flow__clarity-text{position:relative;display:inline-block;padding:1rem 2rem;white-space:nowrap;}
.ctg-location-flow__clarity-text strong{font-size:1rem;letter-spacing:.18em;}
.ctg-location-flow__clarity-text svg{position:absolute;top:0;left:0;width:100%;height:100%;overflow:visible;fill:none;stroke:var(--ctg-flow-violet);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}
.ctg-location-flow__clarity-text svg path{vector-effect:non-scaling-stroke;}
.ctg-location-flow__box--actions{display:grid;grid-template-columns:repeat(3,max-content);justify-content:center;gap:0;min-height:5.5rem;}
.ctg-location-flow__action{display:flex;gap:1rem;align-items:center;justify-content:center;min-width:0;padding-inline:1.25rem;font-size:.95rem;font-weight:700;letter-spacing:.16em;}
.ctg-location-flow__action:nth-last-child(3){padding-left:0;}.ctg-location-flow__action:last-child{padding-right:0;}
.ctg-location-flow__action+.ctg-location-flow__action{border-left:1px solid var(--ctg-flow-line);}
.ctg-location-flow__action svg{display:block;flex:none;width:2rem;height:2rem;color:#b4d2ee;}
.ctg-location-flow__conclusion{margin-inline:auto;text-align:center;}
.ctg-location-flow__closing-row{display:grid;grid-template-columns:12rem minmax(0,1fr) 12rem;gap:1rem;align-items:center;}
.ctg-location-flow__closing-row p{max-width:60ch;margin:0 auto;color:var(--ctg-public-body-dark);font-size:clamp(1rem,1.45vw,1.25rem);line-height:1.65;}
.ctg-location-flow__decision{padding-bottom:8px;background-size:93% 5px;}
.ctg-location-flow__closing-row .ctg-location-flow__annotation:last-child{justify-self:end;}
@media(max-width:1100px){
  .ctg-location-flow__heading>.ctg-location-flow__annotation,.ctg-location-flow__closing-row .ctg-location-flow__annotation{display:none;}
  .ctg-location-flow__closing-row{display:block;}
}
.ctg-location-principles{--ctg-principles-ink:#17191e;--ctg-principles-blue:#315d84;--ctg-principles-muted:#52677c;--ctg-principles-guide:#a8bbc9;--ctg-principles-focus-gap:clamp(3.5rem,5vw,4rem);background:#f8f6f1;color:var(--ctg-principles-ink);}
.ctg-location-principles__intro{display:grid;grid-template-columns:minmax(0,44fr) minmax(0,56fr);gap:clamp(2rem,4vw,5rem);align-items:start;}
.ctg-location-principles__statement{min-width:0;}
.ctg-location-principles__notation{margin:0 0 1.6rem;color:var(--ctg-principles-blue);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(.72rem,.9vw,.94rem);font-weight:500;letter-spacing:.065em;line-height:1.4;}
.ctg-location-principles__art--reject .ctg-location-principles__notation{margin-bottom:0;text-align:center;}
.ctg-location-principles__statement h2{max-width:none;margin:0;font-size:clamp(3.15rem,4.35vw,5.4rem);font-weight:570;letter-spacing:-.064em;line-height:.96;}
.ctg-location-principles__statement h2 span{display:block;white-space:nowrap;}
.ctg-location-principles__concept{min-width:0;}
@media(min-width:901px){.ctg-location-principles__concept{padding-top:70px;}}
.ctg-location-principles__reject-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(12rem,.85fr);gap:0;align-items:center;}
.ctg-location-principles__reject-body>p{max-width:19ch;margin:0;color:#36495c;font-size:clamp(1rem,1.55vw,1.5rem);line-height:1.45;}
.ctg-location-principles__art{min-width:0;color:var(--ctg-principles-blue);}
.ctg-location-principles__art svg{display:block;width:100%;height:auto;overflow:visible;}
.ctg-principles-art{fill:none;color:var(--ctg-principles-blue);stroke-linejoin:round;stroke-linecap:round;}
.ctg-principles-art .primary,.ctg-principles-art .secondary,.ctg-principles-art .guide,.ctg-principles-art .reject-mark{fill:none;stroke:currentColor;vector-effect:non-scaling-stroke;}
.ctg-principles-art .primary{stroke-width:1.15;opacity:.88;}
.ctg-principles-art .secondary{stroke-width:.8;opacity:.48;}
.ctg-principles-art .guide{stroke-width:.65;opacity:.36;}
.ctg-principles-art .reject-mark{stroke-width:1.5;opacity:.92;}
.ctg-principles-art .technical-labels{fill:currentColor;stroke:none;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:20px;font-weight:500;letter-spacing:.06em;opacity:.75;}
.ctg-location-principles__focus{width:max-content;max-width:100%;margin:var(--ctg-principles-focus-gap) auto 0;text-align:left;}
.ctg-location-principles__focus .ctg-location-principles__notation{margin-bottom:0;}
.ctg-location-principles__focus-line{margin:0;font-family:var(--ctg-public-font-heading);font-size:clamp(2rem,3.1vw,3.75rem);font-weight:540;letter-spacing:-.058em;line-height:1.2;white-space:nowrap;}
.ctg-location-principles__customer{position:relative;display:inline-block;white-space:nowrap;}
.ctg-location-principles__customer svg{position:absolute;top:-.03em;left:-.375em;width:calc(100% + .75em);max-width:none;height:1.85em;overflow:visible;fill:none;stroke:var(--ctg-principles-blue);stroke-width:1.25;vector-effect:non-scaling-stroke;pointer-events:none;}
.ctg-location-principles__customer svg path{stroke-width:1;opacity:.66;}
.ctg-location-questions{display:grid;grid-template-columns:minmax(0,18fr) minmax(0,19fr) minmax(0,43fr) minmax(0,20fr);margin:var(--ctg-principles-focus-gap) 0 0;padding:0;list-style:none;}
.ctg-location-questions li{position:relative;display:flex;flex-direction:column;gap:.75rem;min-width:0;padding:1.15rem clamp(1rem,2vw,2rem);color:var(--ctg-principles-blue);font-family:var(--ctg-public-font-heading);font-size:clamp(1.04rem,1.45vw,1.4rem);font-weight:450;letter-spacing:-.025em;line-height:1.32;}
.ctg-location-questions li+li{border-left:1px solid rgba(49,93,132,.3);}
.ctg-location-questions li:first-child{padding-left:0;}
.ctg-location-questions li:last-child{padding-right:0;}
.ctg-location-questions__index{color:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;font-weight:500;letter-spacing:.09em;line-height:1.3;}
.ctg-location-questions li:not(:first-child)::before{position:absolute;top:-.36rem;left:-.36rem;width:.7rem;height:.7rem;background:linear-gradient(var(--ctg-principles-blue),var(--ctg-principles-blue)) center/1px 100% no-repeat,linear-gradient(var(--ctg-principles-blue),var(--ctg-principles-blue)) center/100% 1px no-repeat;content:"";opacity:.55;}
.ctg-location-principles__bridge{max-width:62ch;margin:calc(var(--ctg-principles-focus-gap) + .25rem) auto calc(var(--ctg-principles-focus-gap) + 1.4rem);color:var(--ctg-principles-ink);font-family:var(--ctg-public-font-heading);font-size:clamp(1.25rem,1.9vw,1.85rem);font-weight:700;letter-spacing:-.04em;text-align:center;}
p.ctg-location-principles__bridge{line-height:1.35;}
@media(min-width:601px){.ctg-location-principles__bridge span{display:block;}}
.ctg-location-three-up{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(2rem,3vw,4.25rem);margin:0 0 3rem;}
.ctg-location-three-up article{min-width:0;}
.ctg-location-three-up h3{margin:0 0 .45rem;color:var(--ctg-principles-ink);font-size:clamp(1.7rem,2.2vw,2.45rem);font-weight:550;letter-spacing:-.055em;line-height:1.13;}
.ctg-location-three-up article>p{max-width:36ch;margin:0;color:var(--ctg-principles-muted);font-size:clamp(.98rem,1.1vw,1.14rem);line-height:1.48;}
.ctg-location-principles__cta.ctg-cta{display:flex;margin:40px auto 0;}
.ctg-location-principles>.ctg-location-shell{padding-bottom:40px;}
@media(min-width:1181px){
  .ctg-location-three-up h3{font-size:clamp(1.5rem,1.8vw,2rem);}
}
.ctg-location-proof{--ctg-proof-rule:rgba(184,201,255,.38);--ctg-proof-divider:rgba(184,201,255,.24);--ctg-proof-blue:#b8c9ff;padding:clamp(5rem,8vw,8rem) 0;background:#202226;color:#f8f6f1;}
.ctg-location-proof .ctg-location-eyebrow{margin-bottom:.65rem;color:var(--ctg-proof-blue);}
.ctg-location-proof__card h3{max-width:19ch;margin:0 0 .85rem;color:#f8f6f1;font-size:clamp(1.65rem,2vw,2.15rem);font-weight:600;line-height:1.1;}
.ctg-location-proof__card p{color:rgba(248,246,241,.82);}
@media(max-width:1180px){
  .ctg-location-principles__intro{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:2rem;}
  .ctg-location-principles__statement h2{font-size:clamp(2.8rem,4.4vw,3.5rem);}
  .ctg-location-principles__reject-body{grid-template-columns:minmax(0,1fr) minmax(9rem,.75fr);}
  .ctg-location-principles__focus-line{font-size:clamp(2rem,2.8vw,2.7rem);}
  .ctg-location-three-up{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ctg-location-three-up article:last-child{grid-column:1 / -1;max-width:32rem;}
}
@media(max-width:900px){
  .ctg-location-principles__intro{grid-template-columns:1fr;gap:3.5rem;}
  .ctg-location-principles__statement h2{font-size:clamp(3.25rem,6.8vw,5rem);}
  .ctg-location-principles__reject-body{grid-template-columns:minmax(0,1fr) minmax(12rem,.7fr);}
  .ctg-location-principles__focus-line{font-size:clamp(2.5rem,5vw,3.5rem);}
  .ctg-location-questions{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 0;}
  .ctg-location-questions li:nth-child(3){border-left:0;padding-left:0;}
  .ctg-location-questions li:nth-child(3)::before{display:none;}
}
@media(max-width:600px){
  .ctg-location-principles__statement h2{font-size:clamp(2.55rem,9.2vw,3.6rem);}
  .ctg-location-principles__statement h2 span{display:inline;white-space:normal;}
  .ctg-location-principles__reject-body{display:block;}
  .ctg-location-principles__art--reject{max-width:27rem;margin-bottom:1.5rem;}
  .ctg-location-principles__reject-body>p{max-width:28ch;}
  .ctg-location-principles__focus-line{font-size:clamp(2.05rem,7vw,2.8rem);white-space:normal;}
  .ctg-location-questions{grid-template-columns:1fr;gap:0;}
  .ctg-location-questions li,.ctg-location-questions li:first-child,.ctg-location-questions li:last-child{padding:1.15rem 0;}
  .ctg-location-questions li+li{border-top:1px solid rgba(49,93,132,.2);border-left:0;}
  .ctg-location-questions li::before{display:none;}
  .ctg-location-three-up{grid-template-columns:1fr;gap:3.5rem;}
  .ctg-location-three-up article:last-child{grid-column:auto;}
}
.ctg-location-industries{--ctg-industry-blue:#6c91ae;--ctg-industry-rule:rgba(74,113,144,.36);padding:clamp(5rem,8vw,8rem) 0;background-color:#faf9f5;background-image:linear-gradient(rgba(74,113,144,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(74,113,144,.025) 1px,transparent 1px),linear-gradient(rgba(74,113,144,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(74,113,144,.04) 1px,transparent 1px);background-size:20px 20px,20px 20px,100px 100px,100px 100px;}
.ctg-location-industries .ctg-location-shell{width:min(calc(100% - 2 * var(--ctg-public-gutter)),82rem);max-width:none;}
.ctg-location-industries__frame{position:relative;padding:0 clamp(1.25rem,2.2vw,2rem) 1.2rem;border-inline:1px solid var(--ctg-industry-rule);}
.ctg-location-industries__marker{position:absolute;width:1.2rem;height:1.2rem;color:var(--ctg-industry-blue);pointer-events:none;}
.ctg-location-industries__marker::before,.ctg-location-industries__marker::after{position:absolute;background:currentColor;content:"";opacity:.75;}
.ctg-location-industries__marker::before{top:50%;left:0;width:100%;height:1px;}
.ctg-location-industries__marker::after{top:0;left:50%;width:1px;height:100%;}
.ctg-location-industries__marker--tl{top:-.6rem;left:-.6rem;}.ctg-location-industries__marker--tr{top:-.6rem;right:-.6rem;}.ctg-location-industries__marker--bl{bottom:-.6rem;left:-.6rem;}.ctg-location-industries__marker--br{right:-.6rem;bottom:-.6rem;}
.ctg-location-industries__topline{position:relative;display:flex;justify-content:flex-end;align-items:flex-start;gap:1rem;min-height:2.5rem;padding:.35rem .25rem 0;border-top:1px solid var(--ctg-industry-rule);color:var(--ctg-industry-blue);font:600 .6rem/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.22em;}
.ctg-location-industries__topline>span:first-child{position:absolute;top:-1.45rem;left:0;}
.ctg-location-industries__coordinates{display:block;text-align:right;}
.ctg-location-industries__coordinates span:first-child{position:absolute;top:-1.45rem;right:0;}
.ctg-location-industries__coordinates span:last-child{font-size:.55rem;line-height:1.5;}
.ctg-location-industries__intro{padding:.75rem .25rem 2.35rem;}
.ctg-location-industries h2{max-width:22ch;margin:0 0 .35rem;color:#171922;font-size:clamp(2.4rem,3.9vw,3.4rem);font-weight:560;line-height:.98;}
.ctg-location-industries__intro p{max-width:72ch;margin:0;color:var(--ctg-public-body-light);font-size:clamp(.94rem,1.1vw,1.08rem);line-height:1.32;}
@media(max-width:900px){.ctg-location-industries__desktop-break{display:none;}}
.ctg-location-industries__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;border-top:1px solid var(--ctg-industry-rule);border-bottom:1px solid var(--ctg-industry-rule);list-style:none;}
.ctg-location-industries__grid li{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:calc(8rem + 64px);padding:calc(.45rem + 32px) clamp(.8rem,1.4vw,1.3rem) calc(.5rem + 20px);}
.ctg-location-industries__grid li:not(:nth-child(3n+1)){border-left:1px solid var(--ctg-industry-rule);}
.ctg-location-industries__grid li:nth-child(n+4){border-top:1px solid var(--ctg-industry-rule);}
.ctg-location-industries__index{color:var(--ctg-industry-blue);font:500 .55rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.13em;}
.ctg-location-industries__grid img{display:block;align-self:center;justify-self:center;width:min(100%,24rem);height:100%;max-height:5.6rem;object-fit:contain;}
.ctg-location-industries__grid li:nth-child(4) img,.ctg-location-industries__grid li:nth-child(5) img{mix-blend-mode:darken;}
.ctg-location-industries__name{margin-top:12px;color:#172439;font-size:clamp(.64rem,.85vw,.79rem);font-weight:750;letter-spacing:.11em;line-height:1.2;text-align:center;}
.ctg-location-industries__closing{padding:.5rem .25rem 0;}
.ctg-location-industries__closing p{margin:0;}
.ctg-location-industries__premise{color:var(--ctg-public-body-light);font-size:clamp(.9rem,1.05vw,1.02rem);line-height:1.2;}
.ctg-location-industries .ctg-location-emphasis{margin:.2rem 0 .25rem;color:#1b2030;font-family:var(--ctg-public-font-heading);font-size:clamp(1.55rem,2.15vw,2.2rem);font-weight:560;letter-spacing:-.052em;line-height:1.12;}
.ctg-location-industries__final{width:fit-content;padding-bottom:.15rem;border-bottom:1px solid #5996c1;color:var(--ctg-public-body-light);font-size:clamp(.91rem,1.05vw,1.04rem);line-height:1.35;}
@media(min-width:1101px){
  .ctg-location-industries__closing .ctg-location-industries__premise{margin:12px 0 18px;}
}
@media(min-width:1101px) and (max-height:880px){
  .ctg-location-industries__frame{padding-bottom:.875rem;}
  .ctg-location-industries h2{font-size:clamp(2.4rem,3.7vw,3.2rem);}
  .ctg-location-industries__grid li{height:calc(7rem + 64px);}
}
@media(max-width:1100px){
  .ctg-location-industries{padding:clamp(5rem,8vw,8rem) 0;}
  .ctg-location-industries__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ctg-location-industries__grid li{height:calc(12rem + 64px);}
  .ctg-location-industries__grid li:not(:nth-child(3n+1)){border-left:0;}
  .ctg-location-industries__grid li:nth-child(even){border-left:1px solid var(--ctg-industry-rule);}
  .ctg-location-industries__grid li:nth-child(n+3){border-top:1px solid var(--ctg-industry-rule);}
  .ctg-location-industries__grid img{max-height:7.3rem;}
  .ctg-location-industries__closing{padding-top:1.35rem;}
}
@media(max-width:600px){
  .ctg-location-industries__frame{padding-inline:1rem;}
  .ctg-location-industries__topline{min-height:3.9rem;font-size:.52rem;letter-spacing:.14em;}
  .ctg-location-industries__coordinates{display:block;}
  .ctg-location-industries__coordinates span{display:block;}
  .ctg-location-industries__coordinates span:last-child{margin-top:.2rem;}
  .ctg-location-industries h2{font-size:clamp(2.15rem,9vw,3rem);}
  .ctg-location-industries h2 br{display:none;}
  .ctg-location-industries__grid{grid-template-columns:1fr;}
  .ctg-location-industries__grid li{height:calc(12rem + 64px);}
  .ctg-location-industries__grid li:nth-child(even){border-left:0;}
  .ctg-location-industries__grid li:nth-child(n+2){border-top:1px solid var(--ctg-industry-rule);}
  .ctg-location-industries__name{font-size:.73rem;}
  .ctg-location-industries .ctg-location-emphasis{margin-block:.6rem;font-size:clamp(1.6rem,7vw,2.2rem);}
}
.ctg-location-proof h2{margin:0 0 1.3rem;color:#fff;}
.ctg-location-proof__grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--ctg-proof-rule);}
.ctg-location-proof__mark{position:absolute;z-index:2;width:1.1rem;height:1.1rem;color:rgba(184,201,255,.4);pointer-events:none;}
.ctg-location-proof__mark::before,.ctg-location-proof__mark::after{position:absolute;background:currentColor;content:"";}
.ctg-location-proof__mark::before{top:50%;left:0;width:100%;height:1px;}.ctg-location-proof__mark::after{top:0;left:50%;width:1px;height:100%;}
.ctg-location-proof__mark--tl{top:-.55rem;left:-.55rem;}.ctg-location-proof__mark--tr{top:-.55rem;right:-.55rem;}.ctg-location-proof__mark--bl{bottom:-.55rem;left:-.55rem;}.ctg-location-proof__mark--br{right:-.55rem;bottom:-.55rem;}
.ctg-location-proof__card{display:flex;flex-direction:column;min-width:0;padding:1rem clamp(1rem,1.7vw,1.9rem) 1.35rem;}
.ctg-location-proof__copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;}
.ctg-location-proof__card+.ctg-location-proof__card{border-left:1px solid var(--ctg-proof-divider);}
.ctg-location-proof__index,.ctg-location-proof__ratio{color:var(--ctg-proof-blue);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem;font-weight:600;letter-spacing:.1em;}
.ctg-location-proof__index{margin-bottom:.6rem;opacity:.86;}
.ctg-location-proof__media{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(184,201,255,.25);}
.ctg-location-proof__media picture,.ctg-location-proof__media img{display:block;width:100%;height:100%;}
.ctg-location-proof__media img{object-fit:cover;}
/* Hub-only legacy image reveal; city cards render one static picture. */
.ctg-location-proof__reveal{position:absolute;inset:0;opacity:0;transition:opacity .28s ease;}
.ctg-location-proof__card:hover .ctg-location-proof__reveal:not(.is-unavailable),.ctg-location-proof__card:focus-within .ctg-location-proof__reveal:not(.is-unavailable){opacity:1;}
.ctg-location-proof__ratio{display:flex;align-items:center;gap:.8rem;margin:.35rem 0 1.25rem;color:rgba(184,201,255,.75);font-size:.6rem;}
.ctg-location-proof__ratio::before,.ctg-location-proof__ratio::after{flex:1;height:1px;background:var(--ctg-proof-divider);content:"";}
.ctg-location-proof__label{margin:0 0 .6rem;color:var(--ctg-proof-blue)!important;font-size:.73rem;font-weight:800;letter-spacing:.12em;line-height:1.3!important;text-transform:uppercase;}
.ctg-location-proof__copy>p:not(.ctg-location-proof__label):not(.ctg-location-proof__result){margin:0;font-size:clamp(.96rem,1.1vw,1.1rem);line-height:1.5;}
.ctg-location-proof__card .ctg-location-proof__result{margin:auto 0 0;padding-top:1.55rem;color:#f8f6f1;font-size:clamp(.91rem,1vw,1.05rem);font-weight:750;line-height:1.4;}
.ctg-location-proof__result-frame{position:relative;display:flex;width:100%;min-height:7.5rem;align-self:stretch;align-items:center;margin-top:auto;padding:1.05rem 1.1rem;background:rgba(189,190,192,.025);}
.ctg-location-proof--technical .ctg-location-proof__result-frame{min-height:9.75rem;margin-top:auto;}
.ctg-location-proof__result-frame-drawing{position:absolute;inset:-.25rem;display:block;width:calc(100% + .5rem);height:calc(100% + .5rem);overflow:visible;fill:none;stroke:#999b9e;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}
.ctg-location-proof__result-frame-drawing path{vector-effect:non-scaling-stroke;}
.ctg-location-proof__result-frame-drawing path+path{stroke-opacity:.73;}
.ctg-location-proof__result-frame .ctg-location-proof__result{position:relative;z-index:1;margin:0;padding:0;line-height:1.8;}
.ctg-location-proof__metric{position:relative;display:inline-block;margin-inline:.72em;color:#a4ceff;font-size:1.42em;font-weight:800;line-height:1.15;vertical-align:-.08em;white-space:nowrap;}
.ctg-location-proof__metric>span{position:relative;z-index:1;}
.ctg-location-proof__metric svg{position:absolute;top:-.45em;left:-.75em;width:calc(100% + 1.5em);max-width:none;height:calc(100% + .9em);overflow:visible;fill:none;stroke:#a4ceff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}
.ctg-location-proof__metric svg path{vector-effect:non-scaling-stroke;}
.ctg-location-proof__metric-base{stroke-width:1.2;stroke-opacity:.8;}
.ctg-location-proof__metric-pressure{stroke-width:2.7;stroke-opacity:.94;}
.ctg-location-proof__metric-pressure--light{stroke-width:1.85;stroke-opacity:.9;}
.ctg-location-proof__metric-echo{stroke-width:1;stroke-opacity:.65;}
.ctg-location-proof__card a{align-self:flex-start;margin-top:2rem;color:#b8c9ff;font-size:1.0625rem;font-weight:500;text-decoration:underline;text-decoration-color:rgba(184,201,255,.7);text-decoration-thickness:2px;text-underline-offset:.3em;}
.ctg-location-proof--technical .ctg-location-proof__card a{margin-bottom:12px;}
.ctg-location-proof__card a:hover{text-decoration-thickness:3px;}
.ctg-location-proof--technical .ctg-location-proof__card a:hover{color:#fff;}
.ctg-location-proof--technical .ctg-location-proof__card a:focus-visible{outline-color:#b8c9ff;}
.ctg-location-proof__disclaimer{display:block;max-width:var(--ctg-public-measure-note);margin:1.4rem 0 0;color:rgba(248,246,241,.72);font-size:.875rem;line-height:1.7;}
.ctg-location-proof--technical .ctg-location-proof__disclaimer{max-width:none;}
@media(prefers-reduced-motion:reduce){.ctg-location-proof__reveal{transition:none;}}
.ctg-location-proof:not(.ctg-location-proof--technical){padding:clamp(5rem,8vw,8rem) 0;background:#eae9e3;color:var(--ctg-public-heading-light);}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-eyebrow{margin-bottom:1.1rem;color:#515b76;}
.ctg-location-proof:not(.ctg-location-proof--technical) h2{margin-bottom:2rem;color:var(--ctg-public-heading-light);}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__grid{gap:1rem;border:0;}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__card{padding:clamp(1.5rem,2.5vw,2.25rem);border:1px solid #d4d5d2;border-radius:.875rem;background:#faf9f5;}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__card h3{max-width:none;margin-bottom:.75rem;color:var(--ctg-public-heading-light);font-size:var(--ctg-public-type-h3);font-weight:600;line-height:1.2;}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__card p{color:var(--ctg-public-body-light);}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__label{margin-bottom:1.5rem;color:#515b76!important;font-size:.78rem;font-weight:800;letter-spacing:.13em;line-height:1.7!important;}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__card .ctg-location-proof__result{margin-top:auto;padding-top:1.5rem;color:var(--ctg-public-heading-light);font-size:inherit;font-weight:800;line-height:1.7;}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__card a{margin-top:2rem;color:var(--ctg-public-heading-light);font-size:inherit;font-weight:800;text-decoration-color:currentColor;text-decoration-thickness:auto;}
.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__disclaimer{margin-top:1.75rem;color:#5b6066;}
@media(max-width:1100px){
  .ctg-location-proof--technical .ctg-location-proof__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ctg-location-proof--technical .ctg-location-proof__card:nth-of-type(3){display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;border-top:1px solid var(--ctg-proof-rule);border-left:0;}
  .ctg-location-proof--technical .ctg-location-proof__card:nth-of-type(3) .ctg-location-proof__index{grid-column:1/-1;}
  .ctg-location-proof--technical .ctg-location-proof__card:nth-of-type(3) .ctg-location-proof__media{grid-column:1;grid-row:2;}
  .ctg-location-proof--technical .ctg-location-proof__card:nth-of-type(3) .ctg-location-proof__ratio{grid-column:1;grid-row:3;}
  .ctg-location-proof--technical .ctg-location-proof__card:nth-of-type(3) .ctg-location-proof__copy{grid-column:2;grid-row:2/4;}
}
.ctg-location-process h2{margin:0 0 2.5rem;}
.ctg-location-process__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 4rem;margin:0;padding:0;list-style:none;}
.ctg-location-process__grid li{border-top:1px solid #cbd0d5;padding-top:1.25rem;}
.ctg-location-process__grid h3{margin:0 0 .5rem;}
.ctg-location-process__grid p{max-width:55ch;margin:.5rem 0;color:var(--ctg-public-body-light);}
.ctg-location-decisions,.ctg-location-actions{--ctg-location-map-surface:var(--ctg-public-surface-dark);background:var(--ctg-location-map-surface);color:#f8f8f5;}
.ctg-location-decisions,.ctg-location-actions{position:relative;isolation:isolate;overflow:hidden;}
.ctg-location-decisions>.ctg-location-shell,.ctg-location-actions>.ctg-location-shell{position:relative;z-index:1;}
.ctg-city-map-wrap{position:absolute;z-index:0;inset:0 0 0 auto;width:72vw;overflow:hidden;pointer-events:none;mask-image:var(--ctg-city-map-perimeter-mask,radial-gradient(ellipse 85% 88% at 84% 51%,#000 36%,transparent 100%));}
.ctg-city-map-wrap--full-stage{width:100%;}
.ctg-city-map-wrap::before{position:absolute;inset:0;background:radial-gradient(ellipse 70% 78% at 96% 52%,rgba(34,93,132,.2),transparent 76%);content:"";}
.ctg-location-decisions__map-annotation,.ctg-location-decisions__map-county{position:absolute;z-index:1;right:clamp(1.5rem,4.5vw,6rem);color:rgba(169,198,217,.54);font:600 10px/1.5 var(--ctg-public-font-heading);letter-spacing:.16em;text-align:right;text-transform:uppercase;text-shadow:0 1px 12px #202226;}
.ctg-location-decisions__map-annotation{top:clamp(5rem,8vw,8rem);display:grid;gap:.35rem;}
.ctg-location-decisions__map-annotation span:last-child{margin-top:.35rem;letter-spacing:.14em;}
.ctg-location-decisions__map-county{bottom:clamp(5rem,8vw,8rem);}
.ctg-city-map-wrap>svg{position:absolute;inset:0;display:block;width:100%;height:100%;}
.ctg-city-map-wrap>svg [data-map-layer]{stroke:#a9c6d9;stroke-linecap:round;stroke-linejoin:round;}
.ctg-city-map-wrap>svg [data-map-layer="ocean"]{display:none;}
.ctg-city-map-wrap--full-stage>svg [data-map-layer="ocean"]{display:block;fill:#a9c6d9;fill-rule:evenodd;stroke:none;opacity:.11;}
.ctg-city-map-wrap>svg [data-map-layer="water-areas"]{fill:#a9c6d9;fill-rule:evenodd;stroke:none;opacity:.11;}
.ctg-city-map-wrap>svg [data-map-layer="coastline"]{stroke-width:1.5;opacity:.32;}
.ctg-city-map-wrap>svg [data-map-layer="municipal-boundary"]{stroke-width:1.35;opacity:.29;}
.ctg-city-map-wrap>svg [data-map-layer="primary-waterways"]{stroke-width:1.1;opacity:.29;}
.ctg-city-map-wrap>svg [data-map-layer="waterways"]{stroke-width:.8;opacity:.16;}
.ctg-city-map-wrap>svg [data-map-layer="major-roads"]{stroke-width:1.25;opacity:.24;}
.ctg-city-map-wrap>svg [data-map-layer="secondary-roads"]{stroke-width:.9;opacity:.14;}
.ctg-city-access-path-map [data-map-layer="connectors"]{stroke-width:1.1;opacity:.24;}
.ctg-city-map-wrap>svg [data-map-layer="local-roads"]{stroke-width:.7;opacity:.08;}
@media(min-width:768px){.ctg-city-map-wrap>svg{transform:translateX(10%);}}
@media(min-width:1181px){
  .ctg-city-map-wrap{--ctg-city-map-content-mask:linear-gradient(to right,transparent 0%,rgba(0,0,0,.04) 15%,rgba(0,0,0,.22) 35%,rgba(0,0,0,.5) 50%,rgba(0,0,0,.88) 65%,#000 85%,#000 100%);}
  .ctg-city-map-wrap>svg{-webkit-mask-image:var(--ctg-city-map-content-mask);mask-image:var(--ctg-city-map-content-mask);}
  .ctg-city-map-wrap--discovery{--ctg-city-map-discovery-x-offset:-120px;}
  .ctg-city-map-wrap--discovery>svg{transform:translateX(calc(10% + var(--ctg-city-map-discovery-x-offset)));}
  .ctg-city-map-wrap--full-stage>svg{transform:none;}
  .ctg-city-map-wrap--wide-visibility{--ctg-city-map-perimeter-mask:none;--ctg-city-map-content-mask:linear-gradient(to right,rgba(0,0,0,.12) 0%,rgba(0,0,0,.38) 15%,rgba(0,0,0,.65) 35%,rgba(0,0,0,.85) 50%,#000 70%,#000 100%);}
}
@media(max-width:1180px){.ctg-city-map-wrap>svg{left:auto;right:calc(var(--ctg-city-map-tablet-vw) - var(--ctg-city-map-tablet-px));}.ctg-city-map-wrap>svg [data-map-layer="local-roads"]{display:none;}}
@media(max-width:980px){.ctg-location-decisions__map-annotation,.ctg-location-decisions__map-county{display:none;}}
@media(max-width:767px){.ctg-city-map-wrap{width:100%;mask-image:radial-gradient(ellipse 75% 70% at 90% 50%,#000 30%,transparent 100%);}.ctg-city-map-wrap>svg{inset:0 auto 0 calc(50% + var(--ctg-city-map-mobile-vw));width:auto;max-width:none;height:100%;aspect-ratio:40/27;transform:translateX(-50%);mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 80%,transparent 100%);mask-size:100% 100%;mask-position:center;mask-repeat:no-repeat;}.ctg-city-map-wrap>svg [data-map-layer="secondary-roads"]{opacity:.075;}}
.ctg-location-decisions .ctg-location-shell,.ctg-location-actions .ctg-location-shell{max-width:68rem;text-align:center;}
.ctg-location-decisions h2,.ctg-location-actions h2{max-width:none;margin:0 0 1.5rem;}
.ctg-location-actions h2>span{display:block;}
.ctg-location-decisions p,.ctg-location-actions p{max-width:var(--ctg-public-measure-body);margin-inline:auto;color:#c4c9d1;}
.ctg-location-decisions .ctg-cta-group,.ctg-location-actions .ctg-cta-group{justify-content:center;}
.ctg-location-decisions ul,.ctg-location-actions ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:2rem 0;padding:0;list-style:none;}
.ctg-location-decisions li,.ctg-location-actions li{padding:1.25rem;border:1px solid rgba(197,209,231,.28);border-radius:.5rem;background:var(--ctg-location-map-surface);font-weight:750;text-align:left;}
.ctg-location-decisions li:last-child:nth-child(odd){grid-column:1/-1;text-align:center;}
.ctg-location-actions li{display:flex;align-items:center;gap:.75rem;}
.ctg-location-actions li>svg{width:1.25rem;height:1.25rem;flex:none;}
@media(min-width:768px){.ctg-location-decisions ul,.ctg-location-actions ul{grid-template-columns:repeat(2,fit-content(calc((100% - 1.25rem)/2)));justify-content:center;gap:.625rem 1.25rem;align-items:stretch;}.ctg-location-decisions li,.ctg-location-actions li{padding:1rem 1.25rem;}}
.ctg-location-decisions a:not(.ctg-cta),.ctg-location-actions a:not(.ctg-cta){color:#f8f8f5;}
.ctg-location-nearby{padding:clamp(2.5rem,4vw,4rem) 0;background:var(--ctg-public-surface-light);color:var(--ctg-public-heading-light);}
.ctg-location-nearby .ctg-location-shell{display:grid;gap:2rem;align-items:center;}
.ctg-location-nearby .ctg-location-eyebrow{display:flex;align-items:center;gap:.5rem;margin-bottom:.625rem;color:var(--ctg-public-eyebrow-tertiary);}
.ctg-location-nearby .ctg-location-eyebrow svg{width:1em;height:1em;flex:none;}
.ctg-location-nearby h2{max-width:var(--ctg-public-measure-section);margin:0;font-size:var(--ctg-public-type-h3);}
.ctg-location-nearby nav{min-width:0;}
.ctg-location-nearby ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem 0;margin:0;padding:0;list-style:none;}
.ctg-location-nearby li{position:relative;display:grid;min-width:0;align-items:center;justify-items:start;}
.ctg-location-nearby a{position:relative;display:inline-flex;max-width:100%;min-height:2.75rem;align-items:center;box-sizing:border-box;padding:0 0 .35em;color:var(--ctg-public-heading-light);font-family:var(--ctg-public-font-heading);font-size:1.125rem;font-weight:600;line-height:1.3;text-decoration:none;}
.ctg-location-nearby a::after{position:absolute;right:0;bottom:.15em;left:0;height:1px;background:currentColor;content:"";pointer-events:none;transform:scaleX(0);transform-origin:left center;transition:transform 320ms cubic-bezier(.22,1,.36,1);}
.ctg-location-nearby a:is(:hover,:focus-visible)::after{transform:scaleX(1);}
@media(min-width:1101px){
  .ctg-location-nearby ul:has(>li:nth-child(4):last-child){grid-template-columns:minmax(0,max-content) minmax(2rem,1fr) minmax(0,max-content) minmax(2rem,1fr) minmax(0,max-content) minmax(2rem,1fr) minmax(0,max-content);}
  .ctg-location-nearby ul:has(>li:nth-child(4):last-child)>li{grid-column:span 2;grid-template-columns:subgrid;}
  .ctg-location-nearby ul:has(>li:nth-child(4):last-child)>li:first-child{grid-column:span 1;}
  .ctg-location-nearby ul:has(>li:nth-child(4):last-child)>li+li::before{justify-self:center;height:1.25rem;width:1px;background:#cbd0d5;content:"";pointer-events:none;}
}
@media(min-width:1181px){.ctg-location-nearby .ctg-location-shell{grid-template-columns:minmax(0,.3fr) minmax(0,.7fr);align-items:last baseline;}}
@media(max-width:1100px){.ctg-location-nearby ul{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:639px){.ctg-location-nearby ul{grid-template-columns:minmax(0,1fr);row-gap:.8rem;}}
@media(prefers-reduced-motion:reduce){.ctg-location-nearby a::after{transition-duration:0ms;}}
/* Content-only city FAQ: editorial grid, natural height, no map-era sticky/scrim. */
.ctg-location-page .service-faq{--service-font-body:var(--ctg-public-font-body);--service-font-heading:var(--ctg-public-font-heading);padding:clamp(5rem,8vw,8rem) 0;}
.ctg-location-page .service-faq__shell{padding-block:0;}
.ctg-location-page .service-faq__intro{position:static;}
@media(max-width:980px){
  .ctg-location-redesign__inner{max-width:44rem;grid-template-columns:minmax(0,1fr);}
  .ctg-location-redesign h2{grid-row:1;}
  .ctg-location-redesign__diagnostics{grid-column:1;grid-row:2;}
  .ctg-location-redesign__conclusion{grid-column:1;grid-row:3;}
  .ctg-location-redesign__cta{grid-column:1;grid-row:4;}
  .ctg-location-section__inner{grid-template-columns:minmax(0,1fr);gap:1.5rem;}
  .ctg-location-market .ctg-location-section__inner{grid-template-columns:1fr;}
  .ctg-location-market__divider{display:none;}
  .ctg-location-market .ctg-location-section__copy{align-self:start;transform:none;}
  .ctg-location-market__desktop-break{display:none;}
  .ctg-location-flow__box--website{gap:1.25rem;padding-inline:1.25rem;}
}
@media(max-width:767px){
  .ctg-location-page .service-faq{padding:var(--ctg-public-section-block) 30px;}
  .ctg-location-decisions li{text-align:center;}
  .ctg-location-hero>.ctg-location-shell{padding-bottom:4rem;}
  .ctg-location-hero .ctg-location-eyebrow{margin-top:3rem;}
  .ctg-location-breadcrumb--parent-mobile li:not(.ctg-location-breadcrumb__parent){display:none;}
  .ctg-location-breadcrumb--parent-mobile li+li::before{content:none;}
  .ctg-location-breadcrumb--parent-mobile a{position:relative;top:calc((1.7em - 44px)/2);display:inline-flex;min-height:44px;align-items:center;padding-left:1rem;text-decoration:none;}
  .ctg-location-breadcrumb--parent-mobile a::before{position:absolute;left:0;content:"";width:.4rem;height:.4rem;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);}
  .ctg-location-breadcrumb--parent-mobile a:is(:hover,:active){text-decoration:underline;}
  .ctg-location-hero--city .ctg-location-breadcrumb--parent-mobile+.ctg-location-eyebrow{margin-top:1.5rem;}
  .ctg-location-hero h1{font-size:clamp(2.75rem,11vw,4.5rem);}
  .ctg-location-hero--city h1{font-size:var(--ctg-public-type-h1);}
  .ctg-location-section,.ctg-location-decisions,.ctg-location-actions,.ctg-location-explore,.ctg-location-principles,.ctg-location-proof,.ctg-location-process,.ctg-location-flow,.ctg-location-visibility,.ctg-location-industries,.ctg-location-redesign{padding:var(--ctg-public-section-block) 0;}
  .ctg-location-flow__heading-copy p{font-size:1rem;}
  .ctg-location-flow__steps{gap:1.75rem;margin:calc(2.5rem - 1px) auto calc(2.5rem + 2px);}
  .ctg-location-flow__step{grid-template-columns:minmax(0,1fr);gap:.5rem;}
  .ctg-location-flow__step:not(:last-child)::after{height:1.75rem;}
  .ctg-location-flow__index,.ctg-location-flow__box{grid-column:1;}
  .ctg-location-flow__box{gap:1rem;min-height:6rem;padding:1.25rem;}
  .ctg-location-flow__box--discovery,.ctg-location-flow__box--website{flex-direction:column;align-items:flex-start;}
  .ctg-location-flow__box--website{gap:1rem;}
  .ctg-location-flow__discovery-sources{display:block;flex:none;width:100%;}
  .ctg-location-flow__box-separator{width:100%;height:1px;margin:0;}
  .ctg-location-flow__website-drawing{width:min(100%,22rem);max-height:none;margin-inline:0;}
  .ctg-location-flow__clarity-text{padding:.75rem .25rem;text-align:center;white-space:normal;}
  .ctg-location-flow__clarity-text strong{font-size:.78rem;letter-spacing:.1em;}
  .ctg-location-flow__clarity-text svg{left:-1rem;width:calc(100% + 2rem);max-width:none;}
  .ctg-location-flow__clarity-mark--left{left:.5rem;}.ctg-location-flow__clarity-mark--right{right:.5rem;}
  .ctg-location-flow__box--actions{grid-template-columns:1fr;}
  .ctg-location-flow__action{justify-content:flex-start;padding:.75rem 0;}
  .ctg-location-flow__action+.ctg-location-flow__action{border-top:1px solid var(--ctg-flow-line);border-left:0;}
  .ctg-location-proof__grid,.ctg-location-proof--technical .ctg-location-proof__grid,.ctg-location-process__grid,.ctg-location-decisions ul,.ctg-location-actions ul{grid-template-columns:1fr;}
  .ctg-location-proof--technical .ctg-location-proof__card+.ctg-location-proof__card,.ctg-location-proof--technical .ctg-location-proof__card:nth-of-type(3){display:flex;grid-column:auto;border-top:1px solid var(--ctg-proof-rule);border-left:0;}
  .ctg-location-proof--technical .ctg-location-proof__result-frame{min-height:7.5rem;}
  .ctg-location-process__grid{gap:2rem;}
}
@media(max-width:980px){.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:767px){.ctg-location-proof:not(.ctg-location-proof--technical){padding:var(--ctg-public-section-block) 0;}.ctg-location-proof:not(.ctg-location-proof--technical) .ctg-location-proof__grid{grid-template-columns:1fr;}}
.ctg-location-teaser{overflow:hidden;padding:clamp(4.5rem,7vw,7rem) var(--ctg-public-gutter) 0;border-top:1px solid #d7d8d5;background:var(--service-bg-light);color:var(--service-heading-light);}
.ctg-location-teaser__shell{width:min(100%,var(--ctg-public-content-max));margin-inline:auto;}
.ctg-location-teaser__copy{min-width:0;}
.ctg-location-teaser__copy .ctg-location-eyebrow{display:flex;align-items:center;gap:1.25rem;max-width:38rem;margin:0 0 2rem;color:var(--service-eyebrow-tertiary);}
.ctg-location-teaser__copy .ctg-location-eyebrow::after{content:"";flex:1;height:1px;background:#a9b8c9;}
.ctg-location-teaser h2{margin:0;color:var(--service-heading-light);font-family:var(--service-font-heading);font-size:clamp(3.25rem,5vw,4.75rem);font-weight:560;letter-spacing:-.055em;line-height:1.03;}
.ctg-location-teaser__copy>p:not(.ctg-location-eyebrow){max-width:48ch;margin:1.75rem 0 2rem;color:var(--service-body-light);font-family:var(--service-font-body);font-size:clamp(1.0625rem,1.45vw,1.3125rem);line-height:1.6;}
.ctg-location-teaser__skyline{position:relative;width:100%;margin:60px auto -20px;}
.ctg-location-teaser__skyline picture{display:block;width:100%;overflow:hidden;}
.ctg-location-teaser__skyline img{display:block;width:100%;height:auto;mix-blend-mode:darken;}
.ctg-location-teaser__artwork-labels{position:absolute;top:clamp(-93px,-7.3vw,-53px);left:0;aspect-ratio:2172/220;pointer-events:none;}
.ctg-location-teaser__artwork-scene{aspect-ratio:2172/420;}
.ctg-location-teaser__artwork-scene img{transform:translateY(-34.53%);}
@media(min-width:768px){
  .ctg-location-teaser h2{font-size:clamp(2.375rem,4vw,4.75rem);}
  .ctg-location-teaser h2 span{display:block;white-space:nowrap;}
}
@media(max-width:1023px){
  .ctg-location-teaser{padding-bottom:clamp(3rem,5vw,4rem);}
}
@media(max-width:767px){
  .ctg-location-teaser{padding-top:var(--ctg-public-section-block);padding-bottom:var(--ctg-public-section-block);}
  .ctg-location-teaser__copy .ctg-location-eyebrow{margin-bottom:1.5rem;}
  .ctg-location-teaser h2{font-size:var(--ctg-public-type-h2);line-height:1.08;}
  .ctg-location-teaser__copy>p:not(.ctg-location-eyebrow){margin:1.5rem 0 1.75rem;font-size:var(--ctg-public-type-body);}
  .ctg-location-teaser__artwork-labels{top:-35px;}
}
