:root{--navy:#102d43;--green:#498765;--cream:#fbfaf7;--pale:#eaf2ec;--line:#e1e6df;--muted:#647580}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--navy);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 44px));margin:auto}.header{position:sticky;top:0;z-index:30;background:#fcfbf8;border-bottom:1px solid #e6e4dd}.nav{min-height:92px;display:flex;align-items:center;gap:28px;justify-content:space-between}.logo{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:800;font-size:18px;line-height:1.2}.logo img{height:57px;width:57px;object-fit:contain}.logo small{display:block;font-size:10px;letter-spacing:.1em}.links{display:flex;gap:27px;align-items:center}.links>a,.drop>summary{font-size:14px;text-decoration:none;font-weight:700;cursor:pointer}.drop{position:relative}.drop summary{list-style:none}.drop summary::-webkit-details-marker{display:none}.dropdown{position:absolute;top:36px;left:-55px;display:grid;grid-template-columns:1fr 1.2fr;gap:15px;width:min(680px,85vw);background:white;border:1px solid var(--line);box-shadow:0 18px 40px #102d4322;padding:18px;border-radius:15px;z-index:40}.dropdown a{display:block;padding:10px;text-decoration:none;border-radius:8px;font-size:13px}.dropdown a:hover{background:var(--pale)}.dropdown strong{font-size:13px}.actions{display:flex;gap:13px;align-items:center}.lang{border:1px solid var(--line);padding:7px 12px;border-radius:22px;text-decoration:none;font-size:13px}.phone{text-decoration:none;font-weight:700;font-size:14px}.button{display:inline-block;background:var(--green);color:white;padding:13px 23px;border-radius:30px;text-decoration:none;font-weight:800;font-size:14px;border:1px solid var(--green);text-align:center}.button.secondary{background:transparent;color:var(--navy);border-color:var(--navy)}.hero{padding:80px 0 90px;background:linear-gradient(115deg,#fffefa,#eaf3ed)}.herogrid{display:grid;grid-template-columns:1.04fr .96fr;gap:64px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--green);font-size:12px;font-weight:800}.hero h1,.section h2{font:normal clamp(42px,5.5vw,74px)/1.08 Georgia,serif;letter-spacing:-.035em;margin:20px 0}.hero h1 em{font:700 clamp(42px,5.5vw,74px)/1.08 Arial,sans-serif;color:var(--green);font-style:normal}.intro{color:var(--muted);font-size:18px;max-width:620px}.herophoto{border-radius:26px;overflow:hidden;box-shadow:0 20px 35px #132a4030;aspect-ratio:5/5}.herophoto img{width:100%;height:100%;object-fit:cover}.heroactions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.trust{display:flex;gap:15px;flex-wrap:wrap;margin:23px 0;color:#52666a;font-size:13px;font-weight:700}.section{padding:85px 0}.section.pale{background:var(--pale)}.section.white{background:white}.section.navy{background:var(--navy);color:white}.section h2{font-size:clamp(34px,4vw,55px)}.center{text-align:center}.center p{margin:auto;max-width:750px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin-top:45px}.servicecard{height:430px;position:relative;overflow:hidden;border-radius:18px;background:#293b46}.servicecard img{height:100%;width:100%;object-fit:cover}.servicecard:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#102d43 0%,#102d4380 50%,transparent 100%)}.servicecopy{position:absolute;bottom:0;left:0;right:0;z-index:2;color:white;padding:26px}.servicecopy h3{font:700 25px/1.1 Georgia,serif;margin:12px 0}.servicecopy p{font-size:14px;margin:8px 0 16px}.servicecopy a{font-weight:800;text-decoration:none;border-bottom:1px solid white}.tag{display:inline-block;background:var(--green);padding:7px 10px;border-radius:9px}.more{margin-top:35px;text-align:center}.featuregrid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px;margin-top:32px}.feature{background:white;padding:26px;border-radius:18px;min-height:170px}.feature b{display:block;font-size:16px}.feature p{color:var(--muted);font-size:14px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px;text-align:center}.stepnum{display:grid;place-items:center;width:70px;height:70px;border:1px solid #cbd7cf;background:white;border-radius:50%;margin:0 auto 15px;color:var(--green);font-size:23px;font-weight:800}.steps h3{font-size:17px}.steps p{color:var(--muted);font-size:14px}.cities{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:40px 0}.citycard{border-radius:17px;overflow:hidden;background:white;color:var(--navy)}.citycard img{width:100%;height:230px;object-fit:cover}.citybody{padding:22px}.citybody h3{margin:0 0 7px}.citybody p{color:var(--muted);font-size:14px}.citybody a{display:inline-block;text-decoration:none;border:1px solid var(--navy);border-radius:25px;padding:9px 15px;font-weight:700;font-size:13px}.citychips{display:flex;flex-wrap:wrap;gap:10px}.citychips a{background:#f2f6f2;color:#23513a;padding:10px 15px;text-decoration:none;border-radius:24px;font-size:13px;font-weight:700}.faq{max-width:850px;margin:30px auto}.faq details{padding:18px;border-bottom:1px solid #d9ded8}.faq summary{font-weight:700;cursor:pointer}.faq p{color:var(--muted)}.endcta{text-align:center;padding:75px 0;background:var(--pale)}.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.form{background:white;color:var(--navy);padding:27px;border-radius:19px}.form label{font-size:13px;font-weight:700;display:block;margin:11px 0 5px}.form input,.form textarea,.form select{width:100%;padding:12px;border-radius:7px;border:1px solid #bfc9c1;font:inherit}.form button{width:100%;border:0;margin-top:15px;cursor:pointer}.note{font-size:12px;color:#647580}.footer{background:#081f32;color:white;padding:55px 0}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}.footer a{display:block;color:#d9e5ea;text-decoration:none;margin:7px 0;font-size:13px}.footer b{font-size:14px}.mobile{display:none}@media(max-width:1050px){.nav{flex-wrap:wrap;gap:15px;padding:11px 0}.links{order:3;width:100%;justify-content:center}.dropdown{left:-125px}.actions{margin-left:auto}.herogrid{gap:25px}}@media(max-width:740px){.hero{padding:52px 0}.herogrid,.contactgrid{grid-template-columns:1fr}.herophoto{aspect-ratio:5/3}.cards,.cities,.featuregrid{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.footergrid{grid-template-columns:1fr 1fr}.section{padding:60px 0}.nav{justify-content:center}.links{gap:15px;flex-wrap:wrap}.actions .phone{display:none}.actions>.button{display:none}.dropdown{left:-90px;width:90vw;grid-template-columns:1fr}.hero h1{font-size:44px}.hero h1 em{font-size:44px}.servicecard{height:390px}.mobile{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50}.mobile a{flex:1;background:var(--green);color:white;text-decoration:none;text-align:center;padding:14px;font-weight:800}.mobile a+a{background:var(--navy)}body{padding-bottom:49px}}
/* Legibility and stronger brand typography */
:root{--navy:#08263e;--green:#27794a;--muted:#374d5d;--line:#cbd9d0}
body{color:#102b3c}
.hero h1,.section h2{color:#092a44}
.section.navy h2,.section.navy p,.section.navy .eyebrow{color:#fff}
.hero h1 em{color:#238249}
.eyebrow{color:#207845}
.intro,.center>p,.citybody p,.feature p,.steps p,.faq p{color:#334f60}
.servicecopy{background:linear-gradient(0deg,rgba(5,25,44,.65),transparent)}
.servicecopy p{color:#fff;font-weight:500}
.servicecopy h3{color:#fff;text-shadow:0 2px 8px #06172780}
.feature b,.step h3,.citybody h3,.faq summary{color:#0a304a;font-weight:800}
.citybody a,.citychips a{color:#125a38}
.hero .trust,.trust{color:#204e43}
.footer a{color:#edf8f1}
.button{background:#287a49;border-color:#287a49;color:#fff}
.button.secondary{color:#123c31;border-color:#285c42}
.links>a,.drop>summary{color:#0a304a}

.citycard{background:#fff}.citycard:has(img[style*="display: none"]){background:linear-gradient(145deg,#e0eae5,#bbd3c7)}.citycard:has(img[style*="display: none"]) .citybody{min-height:270px;display:flex;flex-direction:column;justify-content:center}.citycard img{height:230px;object-fit:cover}

.local-focus{padding:75px 0;background:#eef5ef}.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.local-grid h2{font:normal clamp(32px,4vw,50px)/1.15 Georgia,serif;color:#0c2d43}.local-grid p{font-size:17px;color:#395568}.local-grid img{width:100%;height:380px;object-fit:cover;border-radius:20px}.herophoto img{width:100%;height:100%;object-fit:cover}@media(max-width:740px){.local-grid{grid-template-columns:1fr;gap:20px}.local-grid img{height:240px}.local-focus{padding:55px 0}}

/* Modal quote form – consistent across all pages */
.quote-dialog{position:fixed;inset:0;max-width:min(570px,calc(100vw - 24px));width:100%;max-height:min(90dvh,850px);margin:auto;padding:0;border:0;border-radius:22px;background:white;color:#0a2c42;box-shadow:0 24px 90px #091c2c65;overflow:auto}.quote-dialog::backdrop{background:rgba(5,20,35,.7);backdrop-filter:blur(4px)}.quote-panel{position:relative;padding:20px}.quote-dialog .form{box-shadow:none;padding:12px 15px 18px;border-radius:14px}.quote-dialog .form h3{font:700 26px/1.2 Georgia,serif;color:#0a2c42;margin:10px 0 18px}.quote-dialog .form label{font-weight:700;color:#173c4b;margin:12px 0 4px;display:block}.quote-dialog .form input,.quote-dialog .form select,.quote-dialog .form textarea{width:100%;min-height:44px;padding:11px 13px;background:#fff;color:#112f42;border:1px solid #b8c9c2;border-radius:9px}.quote-dialog .form textarea{min-height:84px}.quote-dialog .form button[type=submit]{width:100%;background:#247b4d;border-radius:12px;padding:15px;font-size:15px;cursor:pointer}.quote-dialog .note{font-size:12px;color:#4b5c65;line-height:1.5}.quote-close{position:sticky;top:0;float:right;z-index:5;border:0;background:#edf3ef;color:#103247;border-radius:50%;width:38px;height:38px;font:28px/1 Arial;cursor:pointer}.quote-dialog:focus{outline:none}body:has(.quote-dialog[open]){overflow:hidden}@media(max-width:580px){.quote-dialog{max-height:94dvh}.quote-panel{padding:9px}.quote-dialog .form{padding:8px 13px 15px}.quote-dialog .form h3{font-size:24px}}

.business-contact{margin-top:28px;padding:23px;border:1px solid #7798a3;border-radius:16px;background:#ffffff0e;color:#fff;max-width:460px}.business-contact h3{font:700 23px Georgia,serif;color:#fff;margin:0 0 16px}.business-contact p{margin:10px 0;color:#f1f7f4;font-size:15px}.business-contact strong{display:block;color:#b8e4c5;font-size:12px;text-transform:uppercase;letter-spacing:.09em}.business-contact a{color:#fff;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}

.footergrid{display:grid;grid-template-columns:minmax(190px,1.5fr) repeat(3,minmax(160px,1fr));gap:32px;align-items:start}.footergrid>div{min-width:0}.footergrid b{display:block;margin-bottom:15px;font-weight:800}.footergrid a{display:block;overflow-wrap:anywhere;line-height:1.5;padding:3px 0;color:#edf5f3;text-decoration:none}.footergrid a:hover{text-decoration:underline;color:#b6ebca}@media(max-width:950px){.footergrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:530px){.footergrid{grid-template-columns:1fr;gap:24px}}

.footer-simple{display:grid;grid-template-columns:1fr 1.6fr .7fr;gap:42px;align-items:start}.footer-simple b{display:block;margin-bottom:14px}.footer-simple p{color:#d9e9e4}.footer-area-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.footer-simple a{display:block;color:#ecf7ef;text-decoration:none;font-size:13px;margin:5px 0;line-height:1.5}.footer-simple a:hover{text-decoration:underline}.contact-essentials{display:flex;flex-direction:column;gap:14px;margin-top:28px;max-width:440px}.contact-essentials a{padding:15px 19px;border-radius:12px;background:#fff;color:#12394c;text-decoration:none;font-weight:700;overflow-wrap:anywhere}.contact-essentials .contact-phone{font-size:22px}@media(max-width:800px){.footer-simple{grid-template-columns:1fr 1fr}.footer-simple>div:last-child{grid-column:1/-1}}@media(max-width:530px){.footer-simple{grid-template-columns:1fr}.footer-simple>div:last-child{grid-column:auto}}

/* Always show estimate form alongside contact information on desktop */
#contact .contactgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,520px);align-items:start;gap:clamp(24px,5vw,75px)}#contact .contactgrid>.form{display:block!important;position:static!important;visibility:visible!important;opacity:1!important;max-width:100%;box-shadow:0 18px 42px rgba(0,0,0,.12)}#contact .contactgrid>.form h3{color:#103247;font:700 26px Georgia,serif;margin:0 0 15px}#contact .contactgrid>.form label{display:block;color:#14384c;font-weight:700;margin-top:12px}#contact .contactgrid>.form input,#contact .contactgrid>.form select,#contact .contactgrid>.form textarea{display:block;width:100%;background:white;color:#102d43;border:1px solid #baccc5;border-radius:9px;padding:12px}#contact .contactgrid>.form button{width:100%;padding:15px;border:0;border-radius:10px;background:#257b4a;color:#fff;cursor:pointer}@media(max-width:800px){#contact .contactgrid{grid-template-columns:1fr}#contact .contactgrid>.form{max-width:620px}}

.city-detail-section{background:#f5f8f4;padding:78px 0}.city-detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.city-detail-layout h2{color:#102d43;font:normal clamp(34px,4vw,53px)/1.15 Georgia,serif}.city-detail-layout p{font-size:17px;color:#354e5e}.city-detail-layout img{width:100%;height:385px;object-fit:cover;border-radius:20px}.company-credentials{margin-top:26px;border:1px solid #91b69b;padding:20px;border-radius:14px;background:#ffffff13}.company-credentials h3{font:700 23px Georgia,serif;color:#d7f7e2;margin:0 0 10px}.company-credentials p{color:#eef8f2;font-size:14px}.google-map-panel{grid-column:1/-1;margin-top:25px;background:white;border-radius:17px;padding:22px;color:#143149}.google-map-panel h3{margin:0 0 13px}.google-map-panel iframe{width:100%;height:320px;border:0;border-radius:12px}.google-map-panel a{display:inline-block;margin-top:12px;color:#12673c;font-weight:700}@media(max-width:750px){.city-detail-layout{grid-template-columns:1fr;gap:25px}.city-detail-layout img{height:260px}.city-detail-section{padding:54px 0}.google-map-panel iframe{height:255px}}

/* Brand consistency: star gold accents across every language and service area */
:root{--green:#b58a3b;--pale:#f7f2e8}
.eyebrow,.hero h1 em,.stepnum,.citychips a,.citybody a,.hero .trust,.trust,.business-contact strong{color:#94651e!important}
.button:not(.secondary),.tag,.mobile a:first-child,.form button[type=submit],#contact .contactgrid>.form button,.quote-dialog .form button[type=submit]{background:#b58a3b!important;border-color:#b58a3b!important;color:#102d43!important}
.button:not(.secondary):hover,.form button[type=submit]:hover{background:#cca451!important;border-color:#cca451!important}
.button.secondary{background:transparent!important;color:#102d43!important;border-color:#102d43!important}
.lang,.stepnum{border-color:#b58a3b}
.section.pale,.endcta,.local-focus{background:#f7f2e8}
.citychips a{background:#f7f2e8}
.mobile a+a{background:#08263e;color:#fff}
