:root{--green:#123f35;--green2:#0b3029;--cream:#f5f0e6;--paper:#fbf9f4;--gold:#b7934f;--ink:#173b33;--muted:#66716c;--line:rgba(23,59,51,.18);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--pad:clamp(24px,6vw,96px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.65}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip-link{position:fixed;left:10px;top:-60px;background:#fff;padding:10px;z-index:100}.skip-link:focus{top:10px}.site-header{height:84px;display:flex;align-items:center;padding:0 var(--pad);position:absolute;z-index:10;width:100%;color:var(--green);border-bottom:1px solid rgba(255,255,255,.35)}.brand{display:flex;align-items:center;gap:14px;font-family:var(--serif);font-size:26px;font-weight:500;white-space:nowrap}.brand-mark{width:46px;height:46px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:25px}.site-header nav{display:flex;gap:clamp(16px,2.5vw,38px);margin:auto}.site-header nav a{font-size:14px;font-weight:500}.site-header nav a:hover{color:var(--gold)}.language{display:flex;align-items:center;gap:9px}.language button{border:0;background:none;color:inherit;opacity:.5;cursor:pointer;padding:6px}.language button.active{opacity:1;color:var(--gold)}.language i{width:1px;height:18px;background:currentColor;opacity:.25}.menu-toggle{display:none;background:none;border:0}.hero{min-height:760px;height:100vh;position:relative;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover}.hero-copy{position:relative;z-index:2;margin-left:var(--pad);width:min(650px,48vw);padding-top:60px}.hero-copy h1{font:500 clamp(46px,5.5vw,84px)/1.05 var(--serif);letter-spacing:-.03em;margin:0}.hero-copy p{font-size:clamp(17px,1.35vw,21px);max-width:610px;line-height:1.55}.gold-line{display:block;width:85px;height:1px;background:var(--gold);margin:28px 0}.scroll-note{position:absolute;z-index:2;bottom:28px;left:var(--pad);font-size:12px;letter-spacing:.15em;text-transform:uppercase}.scroll-note span{color:var(--gold);margin-left:10px}.section{padding:clamp(90px,10vw,160px) var(--pad)}.section-no{font-size:11px;letter-spacing:.18em;color:var(--gold);font-weight:600}.section h2{font:500 clamp(42px,5vw,70px)/1.1 var(--serif);letter-spacing:-.025em;margin:16px 0 30px}.about{background:var(--cream);display:grid;grid-template-columns:.85fr 1fr;gap:clamp(50px,8vw,120px);align-items:center}.about-image{position:relative}.about-image img{aspect-ratio:4/5;object-fit:cover}.image-tag{position:absolute;right:-24px;bottom:30px;background:var(--green);color:var(--cream);padding:18px 24px;font:400 18px var(--serif)}.about-copy .lead{font:400 clamp(22px,2vw,30px)/1.45 var(--serif);color:var(--gold)}.about-copy p:not(.section-no):not(.lead){max-width:650px}.benefits{grid-column:1/-1;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(6,1fr);padding-top:42px}.benefits div{padding:8px 22px;border-right:1px solid var(--line);display:flex;gap:15px;align-items:center}.benefits div:last-child{border:0}.benefits b{color:var(--gold);font-size:24px}.benefits span{font-size:13px;font-weight:500;line-height:1.3}.services{background:var(--paper)}.section-head{max-width:680px}.section-head>p:last-child{font-size:18px;max-width:580px}.service-feature{margin:70px 0;display:grid;grid-template-columns:2fr 1fr;background:var(--green);color:var(--cream);min-height:420px}.service-feature.reverse{grid-template-columns:1fr 2fr}.service-feature.reverse img{order:2}.service-feature img{height:100%;object-fit:cover;max-height:480px}.service-feature div{padding:clamp(35px,5vw,70px);align-self:center}.service-feature span{color:var(--gold);font-size:12px;letter-spacing:.15em}.service-feature h3{font:400 clamp(34px,4vw,54px) var(--serif);margin:18px 0}.service-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.service-item{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:34px 24px;border-bottom:1px solid var(--line)}.service-item:nth-child(odd){border-right:1px solid var(--line)}.service-item .num{font:400 16px var(--serif);color:var(--gold)}.service-item h3{font:400 26px var(--serif);margin:0 0 8px}.service-item p{margin:0;color:var(--muted);font-size:14px}.network-band{background:var(--green);color:var(--cream);padding:55px var(--pad);display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:center}.network-band>div{display:flex;align-items:center;gap:20px}.network-band span{font:400 68px var(--serif);color:var(--gold)}.network-band p{margin:0;font-size:18px}.network-band>div p{font-size:13px;max-width:130px}.area{display:grid;grid-template-columns:.75fr 1.5fr;gap:70px;align-items:center;background:var(--cream)}.area-copy{max-width:430px}.map-key{display:flex;gap:12px;align-items:center;margin-top:35px}.map-key i,.town:before{display:block;width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(183,147,79,.18)}.map{position:relative;min-height:560px;background:#f8f3e9;overflow:hidden;border:1px solid rgba(183,147,79,.25)}.map svg{position:absolute;inset:0;width:100%;height:100%}.sea{fill:#c6dce0;opacity:.8}.coast{fill:none;stroke:#9fbfc5;stroke-width:3}.road{fill:none;stroke:#d9c8a8;stroke-width:1.5;opacity:.8}.town{position:absolute;left:var(--x);top:var(--y);font-size:13px;font-weight:500;display:flex;align-items:center;gap:9px;white-space:nowrap}.town:before{content:""}.pricing{background:var(--paper)}.centered{text-align:center;margin-inline:auto}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px}.price-item{text-align:center;padding:10px 34px;border-right:1px solid var(--line)}.price-item:last-child{border:0}.price-item .icon{font-size:34px;color:var(--gold)}.price-item h3{font:400 24px var(--serif)}.price-item p{font-size:14px;color:var(--muted)}.price-item strong{font-weight:500;color:var(--gold)}.pricing-note{text-align:center;max-width:760px;margin:55px auto 0;font-size:13px;color:var(--muted)}.contact{background:var(--green2);color:var(--cream);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(60px,10vw,150px)}.contact-copy{max-width:460px}.contact-copy a{display:inline-block;color:var(--gold);margin-top:25px;border-bottom:1px solid var(--gold)}.quote-form{background:var(--cream);color:var(--ink);padding:clamp(28px,4vw,55px);display:grid;grid-template-columns:1fr 1fr;gap:20px}.quote-form label span{display:block;font-size:12px;font-weight:600;margin-bottom:5px}.quote-form .full,.submit,.form-status{grid-column:1/-1}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:0;border-bottom:1px solid rgba(23,59,51,.4);background:transparent;border-radius:0;padding:10px 2px;outline:none}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--gold)}.submit{background:var(--green);color:white;border:0;padding:16px 20px;display:flex;justify-content:space-between;cursor:pointer}.submit:hover{background:#195246}.form-status{margin:0;font-size:13px;color:var(--green)}footer{background:#082b25;color:var(--cream);border-top:1px solid rgba(183,147,79,.5);display:flex;align-items:center;justify-content:space-between;padding:38px var(--pad);font-size:13px}footer small{display:block;color:var(--gold);font:500 8px var(--sans);letter-spacing:.2em}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.site-header nav{position:fixed;inset:0 0 0 25%;background:var(--cream);flex-direction:column;padding:120px 50px;transform:translateX(100%);transition:.3s;z-index:-1}.site-header nav.open{transform:none}.menu-toggle{display:flex;margin-left:auto;margin-right:22px;flex-direction:column;gap:7px;z-index:2}.menu-toggle span{width:28px;height:1px;background:var(--green)}.hero-copy{width:72vw}.benefits{grid-template-columns:repeat(3,1fr)}.benefits div:nth-child(3){border:0}.area{grid-template-columns:1fr}.pricing-grid{grid-template-columns:repeat(2,1fr);row-gap:45px}.price-item:nth-child(2){border:0}.contact{grid-template-columns:1fr}.service-feature{min-height:350px}.language{z-index:2}}
@media(max-width:680px){.site-header{height:72px}.brand{font-size:21px}.brand-mark{width:38px;height:38px;font-size:21px}.language{display:none}.hero{min-height:700px;height:100svh;align-items:flex-end}.hero>img{object-position:62% center}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(245,240,230,.94) 0%,rgba(245,240,230,.7) 50%,transparent 100%)}.hero-copy{width:auto;margin:0;padding:0 24px 100px}.hero-copy h1{font-size:46px}.hero-copy p{font-size:16px}.scroll-note{left:24px}.about{grid-template-columns:1fr}.about-image img{aspect-ratio:4/3}.image-tag{right:-10px}.benefits{grid-template-columns:1fr 1fr}.benefits div:nth-child(3){border-right:1px solid var(--line)}.benefits div:nth-child(even){border:0}.service-list{grid-template-columns:1fr}.service-item:nth-child(odd){border-right:0}.service-feature,.service-feature.reverse{grid-template-columns:1fr}.service-feature.reverse img{order:0}.area{gap:40px}.map{min-height:430px}.town{font-size:10px}.pricing-grid{grid-template-columns:1fr}.price-item{border-right:0;border-bottom:1px solid var(--line);padding:25px}.quote-form{grid-template-columns:1fr}.quote-form label{grid-column:1}footer{flex-direction:column;gap:18px;text-align:center}.section{padding-left:24px;padding-right:24px}.network-band{grid-template-columns:1fr;padding-left:24px;padding-right:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* Hero contrast and laptop-scale refinements after rendered QA */
.site-header{background:rgba(245,240,230,.66);backdrop-filter:blur(10px);border-bottom-color:rgba(255,255,255,.45)}
.hero:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(245,240,230,.92) 0%,rgba(245,240,230,.72) 31%,rgba(245,240,230,.12) 58%,transparent 72%)}
.hero-copy{width:min(590px,47vw)}
.hero-copy h1{font-size:clamp(43px,4.7vw,74px);line-height:1.04}
.hero-copy p{font-size:clamp(16px,1.25vw,19px);max-width:540px}
@media(max-width:680px){.site-header{background:rgba(245,240,230,.86)}.hero:before{background:linear-gradient(90deg,rgba(245,240,230,.96) 0%,rgba(245,240,230,.76) 58%,rgba(245,240,230,.12) 100%)}.hero:after{display:none}}
.site-header{background:rgba(245,240,230,.86)}
.hero-copy{width:min(670px,54vw)}
.hero-copy h1{font-size:clamp(42px,4vw,64px)}
@media(max-width:680px){.hero-copy{width:auto}.hero-copy h1{font-size:44px}}
.site-header{background:rgba(245,240,230,.96)}
.hero{background:var(--cream)}
.hero>img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 28%,#000 62%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 28%,#000 62%)}
@media(max-width:680px){.hero>img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.38) 58%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.38) 58%,#000 100%)}}

/* HomeSphere newsletter — Brevo-connected, visually integrated */
.newsletter{background:var(--cream);display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(55px,9vw,140px);align-items:center}.newsletter-copy{max-width:540px}.newsletter-copy h2{margin-bottom:22px}.newsletter-copy>p:last-child{font-size:18px}.newsletter-form-wrap{background:#fff;padding:clamp(28px,4vw,52px);border:1px solid var(--line)}#sib-container{max-width:none!important;background:transparent!important;border:0!important;padding:0!important}.newsletter-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}.newsletter-input{padding:0!important}.newsletter-input .entry__label{display:block!important;font:600 12px var(--sans)!important;color:var(--green)!important;margin-bottom:8px!important}.newsletter-input .entry__field{border:0!important;background:transparent!important}.newsletter-input input{width:100%!important;height:52px!important;border:1px solid rgba(23,59,51,.32)!important;background:var(--paper)!important;padding:0 16px!important;font:400 15px var(--sans)!important;color:var(--ink)!important;border-radius:0!important}.newsletter-input input:focus{outline:2px solid rgba(183,147,79,.35)!important;border-color:var(--gold)!important}.newsletter-submit{height:52px!important;min-width:150px!important;border:0!important;border-radius:0!important;background:var(--green)!important;color:#fff!important;padding:0 20px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:26px!important;font:500 14px var(--sans)!important;cursor:pointer!important}.newsletter-submit:hover{background:#195246!important}.newsletter-consent{grid-column:1/-1;margin:2px 0 0;font-size:11px;color:var(--muted);line-height:1.55}.newsletter-message{display:none;margin:0 0 18px!important;max-width:none!important;padding:12px 14px!important;border:1px solid!important;border-radius:0!important;font:400 13px var(--sans)!important}.newsletter-error{color:#661d1d!important;background:#ffeded!important;border-color:#e8b5b5!important}.newsletter-success{color:var(--green)!important;background:#edf6ef!important;border-color:#bdd6c3!important}.newsletter-input .entry__error{font:400 12px var(--sans)!important;border-radius:0!important}.sib-form-block__button .icon{width:18px!important;height:18px!important}
@media(max-width:1000px){.newsletter{grid-template-columns:1fr}}
@media(max-width:680px){.newsletter-form{grid-template-columns:1fr}.newsletter-submit{width:100%!important}.newsletter-form-wrap{padding:24px}}
.whatsapp-link span{font-size:0}.whatsapp-link span:after{content:'WhatsApp';font-size:14px}
.reveal{opacity:1;transform:none}
.brand-logo{width:48px;height:48px;object-fit:cover;border-radius:50%;border:1px solid var(--gold)}
.brand-name{line-height:1.05}.brand-name small{display:block;margin-top:5px;color:var(--gold);font:600 7px/1 var(--sans);letter-spacing:.2em}
.imported-services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:80px}.imported-services figure{margin:0;position:relative;overflow:hidden;background:var(--cream)}.imported-services img{aspect-ratio:1/1;object-fit:cover;transition:transform .5s ease}.imported-services figure:hover img{transform:scale(1.025)}.imported-services figcaption{position:absolute;left:0;right:0;bottom:0;padding:24px;background:linear-gradient(transparent,rgba(7,40,34,.86));color:white;font:400 23px var(--serif)}
@media(max-width:900px){.imported-services{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.brand-logo{width:40px;height:40px}.imported-services{grid-template-columns:1fr;margin-top:55px}.imported-services figcaption{font-size:20px}}

/* Services index: a simple editorial list leading to dedicated detail pages */
.services .service-feature,.services .imported-services{display:none}.services .section-head{margin-bottom:55px}.service-list{display:block;border-top:1px solid var(--line)}.service-item,.service-item:nth-child(odd){position:relative;display:grid;grid-template-columns:72px 1fr auto;align-items:center;border-right:0;padding:28px 58px 28px 10px;cursor:pointer;transition:background-color .2s ease,padding-left .2s ease}.service-item::after{content:'+';grid-column:3;color:var(--gold);font:300 32px/1 var(--sans);position:absolute;right:14px;top:50%;transform:translateY(-50%)}.service-item:hover,.service-item:focus{background:var(--cream);padding-left:20px;outline:none}.service-item h3{margin:0}.service-item p{margin-top:5px;max-width:680px}
.services-photo{margin:0 0 70px;overflow:hidden}.services-photo img{width:100%;height:clamp(360px,50vw,650px);object-fit:cover;object-position:center 48%}
.hero-copy .hero-area{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.site-header,.detail-header{position:fixed;top:0;left:0;right:0;background:rgba(245,240,230,.94);color:var(--green);border-bottom:1px solid rgba(183,147,79,.28);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.site-header nav{justify-content:center}.site-header nav a{letter-spacing:.04em}.hero,.section{scroll-margin-top:84px}.about{padding-bottom:clamp(90px,10vw,150px)}
.services .service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}.services .service-item,.services .service-item:nth-child(odd){grid-template-columns:52px minmax(0,1fr) 28px;gap:18px;min-height:148px;padding:30px 26px;align-content:center;border-right:0}.services .service-item:nth-child(odd){border-right:1px solid var(--line)}.services .service-item:last-child:nth-child(odd){grid-column:1/-1;border-right:0}.services .service-item::after{position:static;grid-column:3;grid-row:1;align-self:center;justify-self:end;transform:none;transition:transform .2s ease}.services .service-item:hover,.services .service-item:focus{padding-left:26px}.services .service-item:hover::after,.services .service-item:focus::after{transform:rotate(90deg)}.services .service-item .num{align-self:start;padding-top:5px}.services .service-item>div{align-self:start}.services .service-item h3{line-height:1.2}.services .service-item p{line-height:1.5}
.key-holding-note{margin-top:42px;padding:30px 34px;border-left:2px solid var(--gold);background:var(--cream);max-width:980px}.key-holding-note .section-no{margin:0 0 10px;color:var(--gold)}.key-holding-note>p:last-child{margin:0;max-width:900px;color:var(--muted)}
@media(max-width:760px){.services .service-list{grid-template-columns:1fr}.services .service-item,.services .service-item:nth-child(odd),.services .service-item:last-child:nth-child(odd){grid-column:auto;border-right:0;min-height:112px;padding:24px 8px;grid-template-columns:40px minmax(0,1fr) 24px}.services .service-item:hover,.services .service-item:focus{padding-left:8px}.services .service-item p{display:block}}

/* Dedicated service page */
.detail-body{background:var(--paper)}.detail-header{position:relative;background:var(--cream)}.detail-main{min-height:70vh}.detail-hero{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);align-items:center;padding-top:84px}.detail-hero-media{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;aspect-ratio:3/2;overflow:hidden;background:var(--cream)}.detail-hero-media img{width:100%;height:100%;object-fit:contain}.detail-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,6vw,96px)}.detail-back{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:30px}.detail-hero h1{font:500 clamp(48px,5vw,76px)/1.06 var(--serif);margin:0 0 28px}.detail-lead{font:400 clamp(21px,2vw,29px)/1.45 var(--serif);color:var(--gold)}.detail-copy{max-width:850px;margin:0 auto;padding:90px 24px 120px}.detail-copy h2{font:500 clamp(36px,4vw,52px)/1.15 var(--serif);margin-bottom:25px}.detail-copy p{font-size:17px}.quote-link{display:inline-flex;align-items:center;gap:50px;background:var(--green);color:white;padding:16px 24px;margin-top:32px;font-weight:500}.quote-link:hover{background:#195246}.detail-footer{margin-top:0}
@media(max-width:1000px) and (min-width:761px){.detail-hero{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr)}.detail-hero-copy{padding:44px}.detail-hero h1{font-size:clamp(42px,5vw,58px)}}
@media(max-width:760px){.detail-hero{grid-template-columns:1fr;padding-top:72px}.detail-hero-media{min-height:0;aspect-ratio:3/2;order:2}.detail-hero-copy{padding:50px 24px 42px}.service-item{grid-template-columns:46px 1fr;padding-right:42px}.service-item p{display:none}}
.detail-hero-media img[hidden]{display:none}.detail-hero-media.has-collage{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:3/1;gap:3px;background:var(--paper);overflow:hidden}.detail-hero-media.has-collage img{width:100%;height:100%;min-height:0;object-fit:contain;background:var(--cream)}
@media(max-width:760px){.detail-hero-media.has-collage{grid-template-columns:1fr;grid-template-rows:1fr 1fr;aspect-ratio:3/4}}
.area{grid-template-columns:minmax(280px,.72fr) minmax(520px,1.45fr);gap:clamp(45px,6vw,90px)}.area-copy{max-width:470px}.area-copy>p:not(.section-no){font-size:17px}.map-legend{display:grid;gap:13px;margin-top:34px}.map-key{margin:0;font-size:13px}.map-key i{flex:0 0 auto}.map-key.base i{width:14px;height:14px;background:var(--green);border:3px solid var(--gold);box-shadow:0 0 0 5px rgba(23,59,51,.12)}.map-key.radius i{width:22px;height:22px;background:rgba(183,147,79,.09);border:1px dashed var(--gold);box-shadow:none}.map{min-height:590px;background:#f4eddf;border:1px solid rgba(183,147,79,.35);box-shadow:0 28px 60px rgba(23,59,51,.1);isolation:isolate}.map:after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.7);pointer-events:none;z-index:4}.map .land{fill:url(#landGlow)}.map .sea{fill:url(#seaFade);opacity:1}.map .coast{stroke:#7ba9b0;stroke-width:3;filter:drop-shadow(2px 0 0 rgba(255,255,255,.8))}.map .terrain{fill:none;stroke:#d8cdb7;stroke-width:1;stroke-dasharray:2 8;opacity:.7}.map .river{fill:none;stroke:#a9cbd0;stroke-width:2;opacity:.75}.map .road{stroke:#cdbd9e;stroke-width:1.2;opacity:.72}.map .road.major{stroke:#b99b65;stroke-width:2;opacity:.6}.service-radius{fill:rgba(183,147,79,.085);stroke:var(--gold);stroke-width:2;stroke-dasharray:8 8}.radius-caption{position:absolute;left:69%;top:72%;padding:6px 10px;background:rgba(248,243,233,.9);border:1px solid rgba(183,147,79,.35);color:var(--gold);font-size:11px;font-weight:600;letter-spacing:.08em;z-index:3}.town{z-index:3;transform:translate(-6px,-6px);font-size:12px;color:var(--ink);text-shadow:0 1px 0 rgba(255,255,255,.9)}.town:before{width:9px;height:9px;background:var(--green);box-shadow:0 0 0 4px rgba(23,59,51,.1)}.town span{display:flex;flex-direction:column;line-height:1.25}.town small{margin-top:4px;color:var(--gold);font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.town.hub{font-size:15px;font-weight:600;z-index:5}.town.hub:before{width:18px;height:18px;background:var(--green);border:4px solid var(--gold);box-shadow:0 0 0 8px rgba(23,59,51,.12)}.town.boundary:before{background:var(--paper);border:2px solid var(--gold);box-shadow:0 0 0 4px rgba(183,147,79,.12)}
@media(max-width:1000px){.area{grid-template-columns:1fr}.map{min-height:560px}.area-copy{max-width:680px}.map-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.map{min-height:460px;margin-inline:-8px}.map:after{inset:8px}.map-legend{grid-template-columns:1fr}.town{font-size:9px;gap:5px}.town.hub{font-size:11px}.town.hub:before{width:14px;height:14px;border-width:3px}.town small{font-size:7px}.town.boundary{left:4%;top:72%}.town.boundary span{max-width:92px;white-space:normal}.town.abbeville{left:43%;top:80%}.radius-caption{font-size:9px;left:67%}}
.map#service-map{z-index:1;padding:0;background:#e9e4d9}.map#service-map:after{content:none}.map#service-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.76) sepia(.06) brightness(1.02)}
.map-center-marker{position:absolute;left:63.8%;top:54.9%;width:18px;height:18px;border-radius:50%;background:var(--green);border:4px solid var(--gold);box-shadow:0 0 0 7px rgba(23,59,51,.16);transform:translate(-50%,-50%);z-index:5;pointer-events:none}.contact-email{display:inline-block}.contact-links{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:28px}.contact-copy .contact-links a{margin:0;border:0}.whatsapp-link{display:inline-flex!important;align-items:center;gap:10px;padding:10px 15px;border:1px solid rgba(255,255,255,.28)!important;color:var(--cream)!important;transition:border-color .2s ease,background-color .2s ease}.whatsapp-link:hover{border-color:var(--gold)!important;background:rgba(255,255,255,.06)}.whatsapp-link svg,.social-link svg{width:20px;height:20px;fill:currentColor}.social-links{display:flex;gap:9px}.social-link{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);color:var(--gold)}.social-link.pending{opacity:.65;cursor:default}
.map-key.base i{position:relative;width:16px;height:16px;margin:0 3px 6px 1px;background:var(--green);border:2px solid var(--gold);border-radius:50% 50% 50% 0;box-shadow:0 0 0 4px rgba(23,59,51,.1);transform:rotate(-45deg)}.map-key.base i:after{content:"";position:absolute;width:4px;height:4px;left:4px;top:4px;border-radius:50%;background:var(--cream)}
.leaflet-container{font-family:var(--sans);background:#e9e4d9}.leaflet-control-zoom a{color:var(--green)}.leaflet-control-attribution{font-size:9px!important;line-height:1!important;padding:4px 6px!important;background:rgba(248,243,233,.82)!important}.leaflet-control-attribution a{color:var(--green)!important}.place-marker{background:transparent;border:0}.place-marker-dot{display:block;width:10px;height:10px;border-radius:50%;background:var(--gold);border:2px solid var(--cream);box-shadow:0 0 0 2px rgba(23,59,51,.35)}.central-marker-pin{display:block;width:24px;height:24px;background:var(--green);border:3px solid var(--gold);border-radius:50% 50% 50% 0;box-shadow:0 3px 8px rgba(23,59,51,.35);transform:rotate(-45deg)}.central-marker-pin:after{content:"";position:absolute;width:6px;height:6px;left:6px;top:6px;border-radius:50%;background:var(--cream)}.map-place-label{background:rgba(248,243,233,.94);border:1px solid rgba(23,59,51,.18);border-radius:0;box-shadow:0 2px 8px rgba(23,59,51,.12);color:var(--green);font-size:11px;font-weight:600;padding:3px 6px}.map-place-label:before{display:none}.map-place-label.central{background:var(--green);border-color:var(--gold);color:var(--cream);font-size:12px}
@media(max-width:680px){.map-place-label{font-size:9px;padding:2px 4px}.map-place-label.central{font-size:10px}}
.service-picker{border:0;margin:4px 0 10px;padding:0}.service-picker legend{font-size:12px;font-weight:600;padding:0}.service-help{margin:3px 0 16px;color:var(--muted);font-size:12px}.service-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.quote-form .service-choice{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 12px;border:1px solid rgba(23,59,51,.16);background:rgba(255,255,255,.36);cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.quote-form .service-choice:hover{border-color:var(--gold);background:#fff}.quote-form .service-choice input{appearance:none;width:18px;height:18px;min-width:18px;margin:0;padding:0;border:1px solid rgba(23,59,51,.5);background:transparent;display:grid;place-items:center;cursor:pointer}.quote-form .service-choice input:before{content:"";width:9px;height:9px;transform:scale(0);background:var(--green);transition:transform .15s ease}.quote-form .service-choice input:checked{border-color:var(--green);box-shadow:0 0 0 2px rgba(23,59,51,.1)}.quote-form .service-choice input:checked:before{transform:scale(1)}.quote-form .service-choice span{font-size:13px;font-weight:500;line-height:1.3}.quote-form .service-choice:has(input:checked){border-color:var(--gold);background:rgba(183,147,79,.08)}
@media(max-width:600px){.service-options{grid-template-columns:1fr}.quote-form .service-choice{min-height:42px}}
.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.submit:disabled{opacity:.65;cursor:wait}
@media(max-width:1000px){.site-header nav{display:none;transform:none}.site-header nav.open{display:flex}}
.hero>img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 34%,#000 66%);mask-image:linear-gradient(90deg,transparent 0%,transparent 34%,#000 66%)}
@media(max-width:680px){.hero>img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.38) 58%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.38) 58%,#000 100%)}}
