/* T04 Primary: shared Figma blocks in document flow. */
.fp-location-page{font-family:'FP Gilroy',sans-serif;color:#0b0b0b;background:#fff}
.fp-location-page .fp-section-heading h2{font-size:44px;line-height:65px}
.fp-location-comparison{background:#1b1c23;background-image:linear-gradient(90deg,rgba(27,28,35,.15),#1b1c23 66%),var(--fp-comparison-image);background-position:center;background-size:cover;color:white;padding:100px 0 80px;min-height:1005px;box-sizing:border-box}
.fp-location-comparison-copy{width:805px;max-width:64%;margin-left:auto}
.fp-location-comparison h2{font:900 44px/65px 'FP Gilroy',sans-serif;margin:38px 0 51px;color:white}
.fp-location-comparison h2 span{background:linear-gradient(90deg,#ec4f42,#e22c58);padding:2.5px 14px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.fp-location-comparison p{font:500 18px/24px 'FP Gilroy',sans-serif;color:white}
.fp-location-comparison-intro{margin:0 0 64px;max-width:760px}
.fp-location-comparison-options{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:54px}
.fp-location-comparison h3{font:700 18px/24px 'FP Gilroy',sans-serif;color:white;margin:0 0 18px;display:flex;gap:12px;align-items:center}
.fp-location-comparison-options h3:before{content:'✓';display:inline-grid;place-items:center;background:#c2a170;border-radius:50%;width:24px;height:24px;flex-shrink:0}
.fp-location-comparison-options p{margin:0;padding-left:36px}
.fp-location-comparison aside{padding:24px 28px;border:1px dashed #c2a170;border-radius:10px;margin-bottom:30px;background:rgba(255,255,255,.04)}
.fp-location-comparison aside p{margin:0}
.fp-location-services{padding:60px 0 100px}
.fp-location-services-intro{font-size:18px;line-height:24px;max-width:729px;text-align:center;margin:44px auto 51px}
.fp-location-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.fp-location-service-card{position:relative;min-height:288px;overflow:hidden;border-radius:3px;background:#292c31;color:white}
.fp-location-service-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fp-location-service-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.05))}
.fp-location-service-card>div{position:relative;z-index:1;padding:150px 24px 20px}
.fp-location-service-card h3{font:700 22px/28px 'FP Gilroy',sans-serif;color:white;margin:0 0 10px}
.fp-location-service-card p{font:500 16px/22px 'FP Gilroy',sans-serif;margin:0 0 12px;color:white}
.fp-location-service-card a{font:700 14px/18px 'FP Gilroy',sans-serif;color:#f3d1a0;text-decoration:none}
.fp-location-commercial{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:24px}
.fp-location-commercial>div{padding:24px 16px 24px 0}
.fp-location-commercial>div h3{font:700 22px/28px 'FP Gilroy',sans-serif;margin:0 0 16px}
.fp-location-commercial>div p{font:500 18px/24px 'FP Gilroy',sans-serif;max-width:550px;margin:0 0 24px}
.fp-location-commercial>div a{display:block;color:#d83d48;font-weight:700;margin:12px 0;text-decoration:none}
.fp-location-faq{padding:82px 24px 40px}
.fp-location-faq-list{max-width:859px;margin:85px auto 0}
.fp-location-faq-list article{margin:0 0 38px}
.fp-location-faq-list h3{font:700 20px/28px 'FP Gilroy',sans-serif;text-transform:uppercase;margin:0 0 12px}
.fp-location-faq-list p{font:500 18px/24px 'FP Gilroy',sans-serif;margin:0;color:#4d4d4d}
@media(max-width:1400px){.fp-location-comparison h2{font-size:38px;line-height:50px}.fp-location-service-card>div{padding-left:18px;padding-right:18px}.fp-location-comparison-options{gap:24px}}
@media(max-width:1000px){.fp-location-comparison-copy{max-width:80%}.fp-location-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-location-page .fp-section-heading h2{font-size:40px;line-height:48px}}
@media(max-width:700px){.fp-location-comparison{padding:48px 0;min-height:0;background-image:linear-gradient(rgba(27,28,35,.88),rgba(27,28,35,.96)),var(--fp-comparison-image)}.fp-location-comparison-copy{max-width:100%;width:auto}.fp-location-comparison h2{font-size:30px;line-height:40px;margin:0 0 32px}.fp-location-comparison-options{grid-template-columns:1fr;gap:32px}.fp-location-comparison-intro{margin-bottom:32px}.fp-location-commercial{grid-template-columns:1fr}.fp-location-services{padding:48px 0}.fp-location-page .fp-section-heading h2{font-size:30px;line-height:38px}.fp-location-faq{padding:48px 20px 24px}.fp-location-faq-list{margin-top:40px}}
@media(max-width:450px){.fp-location-services-grid{grid-template-columns:1fr}}

.fp-location-page .t02-project-card__open>img{display:block;width:28px;height:28px}.fp-location-page .t02-project-card__open>span{position:absolute;inset:0;display:grid;place-items:center;color:white;font:500 18px/20px "FP Gilroy",sans-serif}

/* Shared T04/T05 source typography: coverage 44/65, FAQ body 16/24. */
.fp-location-services{padding:24px 0 108px}
.fp-location-services-intro{margin:34px auto 105px}
.fp-location-service-card{border-radius:16px}
.fp-location-service-card>div{padding:158px 24px 22px}
.fp-location-service-card h3{margin-bottom:10px}
.fp-location-service-card p{line-height:24px;min-height:48px;margin-bottom:4px}
.fp-location-service-card a{display:flex;align-items:center;gap:14px;text-transform:uppercase;color:#c2a170}
.fp-card-arrow{width:20px;height:20px;flex:0 0 20px;transform:rotate(90deg)}
.fp-location-commercial>div{padding:19px 0 0}
.fp-location-commercial>div p{font-size:16px;line-height:24px;max-width:none;min-height:72px;margin-bottom:43px}
.fp-location-commercial>div a{font-size:16px;line-height:24px;text-decoration:underline;color:#ec4f42}
.fp-location-commercial .fp-location-service-card p{max-width:266px}
@media(max-width:1000px){.fp-location-services-intro{margin-bottom:48px}.fp-location-service-card>div{padding:150px 20px 22px}}
@media(max-width:700px){.fp-location-services{padding:48px 0}.fp-location-services-intro{margin-top:28px}.fp-location-commercial>div p{min-height:0;margin-bottom:24px}}
.fp-location-page .fp-coverage h2{font-size:44px;line-height:65px}
.fp-location-faq-list{margin-top:82px}
.fp-location-faq-list p{font-size:16px;line-height:24px;color:#333}
.fp-location-faq-list article:last-child{margin-bottom:0}
@media(max-width:700px){.fp-location-page .fp-coverage h2{font-size:30px;line-height:38px}.fp-location-faq-list{margin-top:40px}}

/* T04 comparison: Figma76:766, retain the approved stock photograph. */
.fp-location-comparison{min-height:1005px;padding:100px 0 49px}
.fp-location-comparison-copy:before{content:'';display:block;width:50px;height:24px;background:linear-gradient(#c2a170,#c2a170) left center/50px 1px no-repeat}
.fp-location-comparison h2{margin:26px 0 51px}
.fp-location-comparison h2 span{padding:2.5px 14px;box-shadow:0 4px 60px rgba(255,255,255,.4)}
.fp-location-comparison-intro{margin-bottom:72px}
.fp-location-comparison-options{grid-template-columns:415fr 380fr;gap:10px;margin-bottom:48px}
.fp-location-comparison-options>div{min-height:186px}
.fp-location-comparison h3{line-height:20px;min-height:24px;text-decoration:underline;text-underline-position:from-font}
.fp-location-comparison-options h3:before{content:none}
.fp-comparison-icon{display:block;flex-shrink:0}
.fp-location-comparison aside{border:2px dashed rgba(194,161,112,.4);border-radius:15px;background:none;padding:22px;min-height:161px;box-sizing:border-box}
.fp-location-comparison aside h3{margin-bottom:17px}
.fp-location-comparison aside p{padding-left:40px;max-width:690px}
@media(max-width:1000px){.fp-location-comparison-options{gap:24px}.fp-location-comparison-options>div{min-height:0}}
@media(max-width:700px){.fp-location-comparison{min-height:0;padding:48px 0}.fp-location-comparison-intro{margin-bottom:32px}.fp-location-comparison-options{grid-template-columns:1fr;margin-bottom:32px}.fp-location-comparison aside{padding:20px}.fp-location-comparison aside p{padding-left:0}.fp-location-comparison h2{margin:26px 0 32px}}
