/* Circular Focus: native block compositions; no front-end JavaScript. */
.geo-circular-focus{max-width:1600px;margin:auto;color:var(--wp--preset--color--forest)}
.geo-circular-focus *{box-sizing:border-box;min-width:0}
.geo-circular-focus .circle-section{padding:clamp(64px,7vw,112px) clamp(24px,6vw,96px);margin:0}
.geo-circular-focus h1{font-size:var(--wp--preset--font-size--circle-title,clamp(42px,4.8vw,68px));line-height:1.04;letter-spacing:-.045em;font-weight:400;overflow-wrap:normal}
.geo-circular-focus h2{font-size:var(--wp--preset--font-size--circle-heading,clamp(36px,4.2vw,60px));line-height:1.06;letter-spacing:-.035em;font-weight:400}
.geo-circular-focus h3{font-size:clamp(23px,2.1vw,30px);line-height:1.16;font-weight:400}
.geo-circular-focus p{font-size:clamp(16px,1.15vw,18px);line-height:1.75}
.geo-circular-focus .eyebrow{font-size:11px;line-height:1.5;letter-spacing:.15em}
.geo-circular-focus .circle-photo{margin:0;overflow:hidden}
.geo-circular-focus .circle-photo img{display:block;width:100%;height:100%;object-fit:cover}
.geo-circular-focus .circle-hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;align-items:center;padding-top:60px;padding-bottom:95px;border-radius:0 0 10% 0}
.circle-hero-copy{position:relative;z-index:2}
.circle-hero-copy h1{margin:22px 0 26px}
.circle-hero-visual{position:relative;width:82%;max-width:500px;justify-self:end;padding-bottom:16%;padding-right:4%}
.geo-circular-focus .circle-hero-main{aspect-ratio:.98;border-radius:50% 50% 47% 53% / 44% 48% 52% 56%}
.geo-circular-focus .circle-hero-small{position:absolute;width:36%;aspect-ratio:1;bottom:0;left:-8%;border-radius:50%;border:7px solid var(--wp--preset--color--cream);z-index:1}
.circle-hero-visual:before{content:'';position:absolute;right:-2%;top:2%;width:38%;aspect-ratio:1;border:1px solid var(--wp--preset--color--terracotta);border-radius:50%;z-index:0}
.circle-hero-visual:after{content:'';position:absolute;right:10%;bottom:1%;width:13%;aspect-ratio:1;border-radius:50%;background:var(--wp--preset--color--terracotta);opacity:.55}
.geo-circular-focus .circle-orbit-label{font-size:10px;letter-spacing:.18em;position:absolute;right:-18px;top:30%;writing-mode:vertical-rl}
.circle-benefits{border-top:1px solid #21443130;padding-top:16px;margin:24px 0}
.geo-circular-focus .circle-benefits p{font-size:13px;margin:6px 0}
.circle-benefits p:before{content:'↗';margin-right:10px;color:var(--wp--preset--color--terracotta)}
.geo-circular-focus .wp-block-button__link{border-radius:40px;padding:17px 27px}
.geo-circular-focus .circle-crumbs{padding:15px 6%;font-size:12px;border-block:1px solid #21443125}
.circle-local-heading{max-width:730px;margin-left:18%}
.circle-local-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;margin-top:54px}
.geo-circular-focus .circle-local-image{aspect-ratio:1;border-radius:50%;transform:translateX(-3%)}
.circle-local-notes .circle-note:last-child{margin-left:15%;margin-top:50px}
.circle-assessment{display:grid;grid-template-columns:1fr 1fr;gap:40px 8%;align-items:center;border-radius:18% 0 15% 0 / 5% 0 5% 0}
.circle-assessment-photos{position:relative;padding-bottom:30%}
.geo-circular-focus .circle-assessment-large{aspect-ratio:1.15;border-radius:50%;width:95%}
.geo-circular-focus .circle-assessment-small{aspect-ratio:1.4;border-radius:50%;width:62%;position:absolute;right:-3%;bottom:0;border:7px solid var(--wp--preset--color--sand)}
.circle-assessment-notes{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:25px;border-top:1px solid #21443130}
.geo-circular-focus .circle-process{color:var(--wp--preset--color--cream);text-align:center;border-radius:0 12% 0 10% / 0 4% 0 4%}
.geo-circular-focus .circle-process :is(h2,h3,p,a){color:inherit}
.circle-process-ring{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:34px;max-width:1050px;margin:64px auto 0;align-items:stretch}
.circle-process-ring:before{content:'';position:absolute;inset:20% 10% 10%;border:1px solid #f6f0e450;border-radius:50%;pointer-events:none}
.circle-stage{position:relative;background:var(--wp--preset--color--forest);padding:30px;border:1px solid #f6f0e450;border-radius:40%;z-index:1;text-align:left}
.circle-stage h3{margin-top:0;color:var(--wp--preset--color--terracotta-light)}
.geo-circular-focus .circle-stage p{font-size:15px;line-height:1.7;margin-bottom:0}
.circle-stage.stage-0{grid-column:2}
.circle-stage.stage-1{grid-column:3;grid-row:2}
.circle-stage.stage-2{grid-column:3;grid-row:3}
.circle-stage.stage-3{grid-column:1;grid-row:3}
.circle-stage.stage-4{grid-column:1;grid-row:2}
.circle-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:54px;align-items:start}
.circle-gallery-card:nth-child(even){padding-top:85px}
.geo-circular-focus .circle-gallery-photo{aspect-ratio:1;border-radius:50%}
.geo-circular-focus .gallery-1,.geo-circular-focus .gallery-3{aspect-ratio:.78;border-radius:50%}
.geo-circular-focus .gallery-3 img{object-position:75% 30%}
.geo-circular-focus .circle-gallery-card p{font-size:15px;line-height:1.7}
.circle-prevention{display:grid;grid-template-columns:1.25fr .75fr;gap:9%;border-block:1px solid #21443130;align-items:end}
.geo-circular-focus .circle-prevention h2{font-size:clamp(48px,6.5vw,100px);color:var(--wp--preset--color--terracotta);margin-bottom:0}
.circle-prevention-copy{padding-top:65px}
.circle-nearby{max-width:980px;margin-left:auto}
.circle-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:12%}
.circle-faq-list details{border-bottom:1px solid #21443130;padding:22px 0}
.circle-faq-list summary{font-size:18px;line-height:1.5;cursor:pointer}
.circle-final{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center;border-radius:15% 0 0 0 / 8% 0 0 0}
.geo-circular-focus .circle-final-photo{aspect-ratio:1.3;border-radius:50%}
.circle-sources{padding:24px 6% 55px}
.geo-circular-focus .circle-sources p{font-size:11px}
@media(max-width:1000px){.geo-circular-focus .circle-section{padding-inline:36px}.circle-gallery{grid-template-columns:repeat(2,1fr);gap:32px 50px}.circle-stage{padding:22px;border-radius:28%}.circle-process-ring{gap:18px}.circle-local-heading{margin-left:8%}}
@media(max-width:700px){.geo-circular-focus .circle-section{padding:58px 24px}.geo-circular-focus .circle-hero{grid-template-columns:1fr;gap:40px;padding-top:30px;padding-bottom:50px}.geo-circular-focus h1{font-size:clamp(36px,10vw,46px)}.geo-circular-focus h2{font-size:clamp(34px,9vw,46px)}.circle-hero-visual{margin-left:8%;width:90%;padding-bottom:20%}.geo-circular-focus .circle-hero-main{aspect-ratio:1.1}.geo-circular-focus .circle-hero-small{left:-8%;width:40%}.geo-circular-focus .circle-orbit-label{right:-8px;font-size:8px}.circle-local-heading{margin-left:0}.circle-local-layout,.circle-assessment,.circle-assessment-notes,.circle-prevention,.circle-faq,.circle-final{grid-template-columns:1fr;gap:30px}.circle-local-layout{margin-top:30px}.geo-circular-focus .circle-local-image{transform:none}.circle-local-notes .circle-note:last-child{margin-left:0;margin-top:28px}.circle-assessment-notes{gap:20px}.circle-assessment-photos{width:94%}.circle-process-ring{display:flex;flex-direction:column;gap:22px;margin-top:35px;padding-left:18px;border-left:1px solid #f6f0e450}.circle-process-ring:before{display:none}.circle-stage{border-radius:25px;padding:25px}.circle-gallery{gap:26px 18px;margin-top:30px}.circle-gallery-card:nth-child(even){padding-top:44px}.geo-circular-focus .circle-gallery-card h3{font-size:22px}.geo-circular-focus .circle-gallery-card p{font-size:14px}.geo-circular-focus .circle-prevention h2{font-size:clamp(43px,12vw,68px)}.circle-prevention-copy{padding-top:0}.circle-faq-list summary{font-size:17px}.geo-circular-focus .circle-crumbs{font-size:11px;padding-inline:24px}.circle-sources{padding-inline:24px}}
@media(max-width:700px){.geo-circular-focus .circle-hero-visual{width:78%;max-width:340px;justify-self:center;margin-left:6%;padding-bottom:17%}}
@media(max-width:380px){.geo-circular-focus .circle-gallery{grid-template-columns:1fr;gap:34px}.geo-circular-focus .circle-gallery-card:nth-child(even){padding-top:0}.geo-circular-focus .circle-gallery .circle-gallery-photo{max-width:240px;margin-inline:auto}.geo-circular-focus .circle-gallery-card h3{font-size:25px}.geo-circular-focus .circle-gallery-card p{font-size:16px}}
