.location-page{background:#f2f7f3;color:#123d30;line-height:1.65}
.location-page .wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.location-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 4%,rgba(35,213,130,.25),transparent 34%),linear-gradient(145deg,#00382d,#00261f 70%);color:#fff}
.location-hero:after{content:"";position:absolute;inset:auto -15% -180px 38%;height:310px;background:radial-gradient(ellipse,rgba(210,178,96,.16),transparent 68%);pointer-events:none}
.location-breadcrumbs{display:flex;gap:9px;align-items:center;flex-wrap:wrap;padding-top:22px;color:#bad2c6;font-size:12px}
.location-breadcrumbs a{color:#e5f0e9;min-height:34px;display:inline-flex;align-items:center}
.location-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(390px,.97fr);gap:42px;align-items:center;padding:34px 0 52px}
.location-kicker{display:inline-flex;align-items:center;gap:9px;color:#efd994;font-size:11px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.location-kicker:before{content:"";width:26px;height:2px;background:#d4b95f}
.location-hero h1{margin:15px 0 18px;font-size:clamp(42px,5.25vw,72px);line-height:1.01;letter-spacing:-.055em;color:#fff}
.location-hero h1 span{color:#23d582}
.location-hero-copy>p{max-width:690px;margin:0 0 25px;color:#d1e5da;font-size:17px;line-height:1.65}
.location-hero-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-width:670px}
.location-hero-facts div{padding:13px 14px;border:1px solid rgba(222,239,229,.19);border-radius:12px;background:rgba(255,255,255,.055)}
.location-hero-facts small{display:block;color:#d4bd74;font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.location-hero-facts strong{display:block;margin-top:4px;color:#fff;font-size:13px;line-height:1.45}
.location-hero-media{position:relative;margin:0}
.location-hero-media img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border:1px solid rgba(255,255,255,.16);border-radius:25px;box-shadow:0 28px 70px rgba(0,16,12,.42)}
.location-hero-media figcaption{position:absolute;inset:auto 13px 13px;padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:rgba(0,35,28,.84);color:#fff;font-size:11px;backdrop-filter:blur(8px)}
.location-jump{position:relative;z-index:3;margin-top:-18px}
.location-jump .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:8px;border:1px solid #d5e4db;border-radius:15px;background:#fff;box-shadow:0 14px 34px rgba(0,45,34,.1)}
.location-jump a{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:10px;color:#31594b;font-size:12px;font-weight:800;text-decoration:none}
.location-jump a:hover{background:#edf7f1;color:#087848}
.location-section{padding:62px 0}
.location-section--white{background:#fff;border-block:1px solid #dce8e1}
.location-heading{display:grid;grid-template-columns:minmax(0,.85fr) minmax(320px,.55fr);gap:30px;align-items:end;margin-bottom:25px}
.location-heading small{display:block;margin-bottom:7px;color:#8b681d;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.location-heading h2{margin:0;color:#073d31;font-size:clamp(31px,4vw,48px);line-height:1.08;letter-spacing:-.045em}
.location-heading p{margin:0;color:#5a7066;font-size:15px;line-height:1.7}
.location-visit-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);gap:18px;align-items:stretch}
.location-card{padding:26px;border:1px solid #cedfd5;border-radius:20px;background:#fff;box-shadow:0 14px 36px rgba(0,55,39,.055)}
.location-card-label{color:#8b681d;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.location-card h2,.location-card h3{margin:7px 0 15px;color:#083f32;letter-spacing:-.03em}
.location-card h2{font-size:31px}.location-card h3{font-size:22px}
.location-contact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0 0}
.location-contact-list div{display:grid;grid-template-columns:1fr;gap:4px;padding:11px 12px;border:1px solid #dce9e1;border-radius:11px;background:#f6faf7}
.location-contact-list div:nth-child(1),.location-contact-list div:nth-child(2),.location-contact-list div:nth-child(10){grid-column:1/-1;grid-template-columns:104px minmax(0,1fr);align-items:center;background:#fff}
.location-contact-list div:nth-child(9){grid-column:1/-1}
.location-contact-list dt{color:#8b681d;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.location-contact-list dd{margin:0;color:#173f34;font-size:12px;font-weight:780;line-height:1.45}
.location-contact-list a{color:#087448}
.location-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}
.location-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 17px;border-radius:11px;background:#087a4b;color:#fff;font-size:12px;font-weight:850;text-decoration:none}
.location-actions a+ a{border:1px solid #b9d3c5;background:#f2f8f4;color:#195540}
.location-map{min-height:100%;overflow:hidden;border:1px solid #cadfd3;border-radius:20px;background:#dfece4;box-shadow:0 14px 36px rgba(0,55,39,.055)}
.location-map iframe{display:block;width:100%;height:100%;min-height:510px;border:0}
.location-decision-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:18px}
.location-state-card{padding:27px;border-radius:20px;background:linear-gradient(150deg,#083d31,#004f3c);color:#fff;box-shadow:0 18px 44px rgba(0,54,40,.16)}
.location-state-card small{color:#efd88e;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.location-state-card h2{margin:8px 0 13px;color:#fff;font-size:33px;line-height:1.08;letter-spacing:-.04em}
.location-state-card p{margin:0;color:#d7e8df;font-size:14px;line-height:1.75}
.location-state-card .checked{display:inline-flex;margin-top:20px;padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#edf5f1;font-size:10px;font-weight:800}
.location-rule-list{display:grid;gap:10px}
.location-rule{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:18px;border:1px solid #d4e3da;border-radius:16px;background:#fff}
.location-rule>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#e8f6ed;color:#087b49;font-size:12px;font-weight:900}
.location-rule h3{margin:0 0 5px;color:#123f32;font-size:17px;line-height:1.25}
.location-rule p{margin:0;color:#5a7066;font-size:13px;line-height:1.65}
.location-rule a{color:#087448;font-weight:780}
.location-compare{overflow:hidden;border:1px solid #d1e2d8;border-radius:20px;background:#fff;box-shadow:0 14px 34px rgba(0,53,40,.05)}
.location-compare-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.location-compare article{padding:23px;border-right:1px solid #e0ebe4}.location-compare article:last-child{border-right:0}
.location-compare span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#edf7f1;color:#087c4a;font-size:12px;font-weight:900}
.location-compare h3{margin:13px 0 7px;color:#123f32;font-size:17px;line-height:1.25}.location-compare p{margin:0;color:#5b7167;font-size:12px;line-height:1.6}
.location-gallery-groups{display:grid;gap:15px}
.location-gallery-group{padding:16px;border:1px solid #d2e1d8;border-radius:20px;background:#f5faf7}
.location-gallery-group h3{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:#2c5545;font-size:11px;letter-spacing:.11em;text-transform:uppercase}
.location-gallery-group h3:before{content:"";width:24px;height:2px;background:#c49f43}
.location-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.location-photo{position:relative;overflow:hidden;margin:0;border-radius:14px;background:#dce9e1}
.location-photo img{display:block;width:100%;height:330px;object-fit:cover;transition:transform .28s ease}
.location-photo:hover img{transform:scale(1.015)}
.location-photo figcaption{position:absolute;inset:auto 0 0;padding:32px 14px 12px;background:linear-gradient(transparent,rgba(0,37,29,.9));color:#fff;font-size:12px;font-weight:800}
.location-source-note{margin:11px 2px 0;color:#6b7e75;font-size:10px}.location-source-note a{color:#087448;font-weight:760}
.location-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.location-faq-grid details{padding:18px;border:1px solid #d2e1d8;border-radius:14px;background:#fff}
.location-faq-grid summary{cursor:pointer;color:#143f32;font-size:14px;font-weight:850}.location-faq-grid p{margin:10px 0 0;color:#596f65;font-size:13px;line-height:1.7}
.location-other-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.location-other-grid a{display:grid;grid-template-columns:76px minmax(0,1fr);gap:13px;align-items:center;padding:12px;border:1px solid #d4e2d9;border-radius:15px;background:#fff;color:inherit;text-decoration:none}
.location-other-grid img{width:76px;height:62px;object-fit:cover;border-radius:10px}.location-other-grid strong{display:block;color:#103e31;font-size:15px}.location-other-grid small{color:#63786e;font-size:11px}
.location-final{padding:45px 0;background:#003a2e;color:#fff}.location-final .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.location-final h2{margin:0 0 8px;color:#fff;font-size:32px;letter-spacing:-.04em}.location-final p{margin:0;color:#c9ded3;font-size:14px}.location-final a{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;border-radius:12px;background:#21d37f;color:#073728;font-weight:900;text-decoration:none;white-space:nowrap}
.v4-location-page-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px}
.v4-location-page-links a{display:flex;align-items:center;justify-content:center;min-height:38px;padding:7px;border:1px solid #d5e4db;border-radius:9px;background:#fff;color:#0a7046;font-size:10px;font-weight:850;text-decoration:none}
.contact-pro__office-page{display:inline-flex;align-items:center;min-height:40px;margin-top:8px;color:#087448;font-size:11px;font-weight:850;text-decoration:none}
@media(max-width:960px){.location-hero-grid,.location-visit-grid,.location-decision-grid{grid-template-columns:1fr}.location-hero-media{max-width:720px}.location-map iframe{min-height:380px}.location-heading{grid-template-columns:1fr}.location-compare-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-compare article:nth-child(2){border-right:0}.location-compare article:nth-child(-n+2){border-bottom:1px solid #e0ebe4}.location-other-grid{grid-template-columns:1fr 1fr}.v4-location-page-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.location-page .wrap{width:calc(100% - 28px)}.location-breadcrumbs{padding-top:14px}.location-hero-grid{padding:24px 0 43px;gap:25px}.location-hero h1{font-size:clamp(40px,12vw,54px)}.location-hero-copy>p{font-size:15px}.location-hero-facts{grid-template-columns:1fr}.location-hero-media img{border-radius:18px}.location-jump{margin-top:-13px}.location-jump .wrap{grid-template-columns:repeat(2,minmax(0,1fr));padding:6px}.location-jump a{min-height:42px;font-size:11px}.location-section{padding:45px 0}.location-heading{gap:12px;margin-bottom:19px}.location-heading h2{font-size:34px}.location-card{padding:20px}.location-contact-list{grid-template-columns:1fr}.location-contact-list div,.location-contact-list div:nth-child(1),.location-contact-list div:nth-child(2),.location-contact-list div:nth-child(9),.location-contact-list div:nth-child(10){grid-column:auto;grid-template-columns:1fr;gap:3px}.location-map iframe{min-height:320px}.location-state-card{padding:22px}.location-rule{padding:15px}.location-compare-grid{grid-template-columns:1fr}.location-compare article,.location-compare article:nth-child(2){border-right:0;border-bottom:1px solid #e0ebe4}.location-compare article:last-child{border-bottom:0}.location-photo-grid,.location-faq-grid,.location-other-grid{grid-template-columns:1fr}.location-photo img{height:auto;aspect-ratio:4/3}.location-final .wrap{display:grid}.location-final a{width:100%}.v4-location-page-links{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.location-photo img{transition:none}}
