@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&display=swap');
:root{--navy:#102f5e;--deep:#0b2448;--blue:#285592;--pale:#eff7ff;--line:#d5e4f4;--orange:#ff681f;--green:#29a35b;--text:#2b4364;--shadow:0 7px 24px rgba(18,54,99,.08);font-family:'Be Vietnam Pro',Arial,sans-serif;color:var(--text);scroll-behavior:smooth}
*{box-sizing:border-box}html,body{margin:0;min-width:320px}body{font-size:16px;line-height:1.65;background:#fff}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p,ul,ol{margin-top:0}h1,h2,h3{color:var(--navy);line-height:1.2}h2{font-size:clamp(1.8rem,3vw,2.45rem);letter-spacing:-.035em}h3{font-size:1.12rem}p{margin-bottom:0}ul,ol{padding-left:0;list-style:none}.container{width:min(100% - 48px,1200px);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:12px;z-index:50;background:#fff;padding:8px}.skip-link:focus{top:12px}section{scroll-margin-top:90px}
.site-header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid #d9e5f1;box-shadow:0 3px 16px rgba(13,46,91,.04)}.header-inner{min-height:78px;display:flex;align-items:center;gap:28px}.brand{display:flex;flex-direction:column;line-height:1;flex:none;color:var(--navy)}.brand strong{font-size:1.6rem;letter-spacing:-.06em;font-weight:800}.brand strong span{color:var(--orange)}.brand small{font-size:.58rem;letter-spacing:-.02em;margin-top:4px}.main-nav{display:flex;align-items:center;gap:24px;margin-left:auto}.main-nav a{font-size:.84rem;font-weight:700;color:var(--navy);white-space:nowrap}.main-nav a:hover,.text-link:hover{color:var(--orange)}.header-phone{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--navy);white-space:nowrap;font-size:.88rem}.header-phone span:first-child{font-size:1.35rem}.button{background:var(--orange);border:2px solid var(--orange);border-radius:7px;color:white;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:52px;padding:11px 23px;text-align:center;line-height:1.2;box-shadow:0 6px 15px rgba(255,104,31,.16);transition:background .18s,transform .18s}.button:hover{background:#e9540d;border-color:#e9540d;transform:translateY(-1px)}.button:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #449fe7;outline-offset:3px}.header-cta{font-size:.82rem;min-height:43px;padding:8px 17px;white-space:nowrap}.menu-button{display:none;background:none;border:0;padding:10px}.menu-button span{display:block;width:23px;height:2px;background:var(--navy);margin:5px 0}
.hero{position:relative;overflow:hidden;min-height:570px;display:flex;align-items:center;background:#d9e8f5}.hero-photo,.hero-wash{position:absolute;inset:0}.hero-photo{background:url('hero-chong-tham.webp') center 46%/cover no-repeat}.hero-wash{background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.89) 37%,rgba(255,255,255,.43) 69%,rgba(255,255,255,.15) 100%),linear-gradient(0deg,rgba(255,255,255,.2),rgba(255,255,255,.2))}.hero-inner{position:relative;z-index:1;padding-block:68px 72px}.hero-copy{max-width:720px}.hero-eyebrow{display:inline-block;background:#fff;border:1px solid var(--navy);border-radius:8px;color:var(--navy);padding:9px 14px;font-size:.84rem;font-weight:700;margin-bottom:26px}.hero h1{font-size:clamp(2.35rem,4.2vw,4.45rem);font-weight:800;letter-spacing:-.065em;line-height:1.1;margin-bottom:25px}.hero h1 span{color:var(--orange)}.hero-lead{color:var(--navy);font-size:1.1rem;line-height:1.55;max-width:650px;font-weight:600;margin-bottom:22px}.check-list{display:grid;gap:10px;margin-bottom:28px}.check-list li{position:relative;padding-left:31px;color:var(--navy);font-weight:600}.check-list li:before{content:'✓';position:absolute;left:0;top:2px;color:#fff;background:var(--green);width:21px;height:21px;display:grid;place-items:center;border-radius:50%;font-size:.74rem;font-weight:800}.hero-button{min-width:290px}.microcopy{color:var(--navy);font-size:.78rem;line-height:1.55;max-width:440px;margin-top:11px}
.band{padding:76px 0}.band.pale{background:var(--pale)}.band.white{background:#fff}.section-head{max-width:760px;margin-bottom:30px}.section-head h2{margin-bottom:12px}.section-head>p:last-child:not(.kicker){color:var(--text);font-size:1rem}.kicker{text-transform:uppercase;color:var(--orange);font-size:.76rem;font-weight:800;letter-spacing:.1em;margin-bottom:12px}.trust-band{padding:22px 0;border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.trust-grid>div{display:flex;align-items:center;gap:12px;color:var(--navy);font-weight:700;font-size:.88rem}.trust-grid b{border:1px solid #9ab8db;border-radius:50%;width:37px;height:37px;display:grid;place-items:center;color:var(--blue);font-size:.72rem;flex:none}
.diagnosis-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:22px}.diagnosis-visual{height:285px;border-radius:10px;background:linear-gradient(140deg,#f9fcff,#d9eaf8);border:1px solid var(--line);position:relative;overflow:hidden}.diagram-roof{position:absolute;width:75%;height:20px;background:#b8c2cf;left:0;top:90px;border-top:5px solid #8799a9}.diagram-wall{position:absolute;width:21px;height:72%;background:#b8c2cf;left:68%;top:0;border-left:5px solid #8799a9}.water-line{position:absolute;left:20%;top:42px;width:51%;height:153px;border-left:6px solid #3c91dc;border-bottom:6px solid #3c91dc;border-right:6px solid #3c91dc;border-radius:0 0 14px 14px;transform:skewX(18deg)}.diagram-in,.diagram-out{position:absolute;z-index:2;color:var(--navy);background:#fff;padding:7px 10px;border-radius:6px;font-size:.82rem;font-weight:700;box-shadow:var(--shadow)}.diagram-in{top:33px;left:10%}.diagram-out{right:4%;bottom:28px}.diagnosis-aside{border:1px solid var(--line);border-radius:10px;background:#f9fcff;padding:28px;display:flex;flex-direction:column;align-items:start}.accent-line{width:42px;height:4px;background:var(--orange);margin-bottom:17px}.diagnosis-aside h3{font-size:1.35rem}.diagnosis-aside p{margin-bottom:21px}.diagnosis-aside .button{margin-top:auto}
.inspection-grid,.service-grid,.price-grid,.project-grid,.review-grid{display:grid;gap:20px}.inspection-grid{grid-template-columns:repeat(4,1fr)}.inspection-card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--orange);padding:24px;border-radius:8px;min-height:188px}.number{color:var(--orange);font-size:.81rem;font-weight:800;display:block;margin-bottom:20px}.inspection-card h3{margin-bottom:8px}.inspection-card p,.service-desc,.price-card>p:last-child,.project-body>p:not(.project-type){font-size:.88rem}.fee-note{margin-top:22px;color:var(--navy);font-size:.85rem}
.service-grid,.price-grid,.project-grid,.review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card{text-align:left;border:1px solid var(--line);border-radius:9px;background:#fff;min-height:242px;padding:23px;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:border-color .18s,transform .18s}.service-card:hover{border-color:var(--orange);transform:translateY(-2px)}.service-glyph{font-size:2rem;line-height:1;color:var(--blue);margin-bottom:15px}.service-title{display:block;color:var(--navy);font-weight:800;font-size:1.04rem;margin-bottom:8px}.service-desc{display:block;color:var(--text);line-height:1.5}.service-link{color:var(--orange);font-size:.8rem;font-weight:800;margin-top:auto;padding-top:16px}.price-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:23px;min-height:175px}.price-card h3{margin-bottom:13px}.price{margin-bottom:12px;color:var(--orange)}.price strong{font-size:1.3rem}.price span{font-size:.8rem;color:var(--text)}.price-disclaimer{margin-top:16px;font-size:.8rem}.transparency{margin-top:31px;background:var(--navy);color:#fff;border-radius:10px;padding:30px 34px;display:grid;grid-template-columns:1fr 1.1fr;gap:35px}.transparency h3{color:#fff;font-size:1.45rem;margin-bottom:10px}.transparency p{font-size:.88rem}.transparency ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin:0}.transparency li{padding-left:21px;position:relative;font-size:.86rem;font-weight:600}.transparency li:before{content:'✓';position:absolute;left:0;color:#ff9a62}
.project-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.project-photo{display:block;width:100%;height:220px;padding:0;border:0;background:#e8f2fa}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.project-photo:hover img{transform:scale(1.025)}.project-body{padding:20px 22px 22px}.project-type{color:var(--orange);font-size:.7rem;text-transform:uppercase;font-weight:800;letter-spacing:.08em;margin-bottom:9px}.project-body h3{margin-bottom:10px}.project-body>p:not(.project-type){min-height:67px}.text-link{background:none;border:0;padding:0;color:var(--blue);font-size:.84rem;font-weight:800;margin-top:16px}.review-card{background:#fff;border:1px dashed #a5bdd8;border-radius:9px;padding:23px;min-height:168px}.review-placeholder{background:#e8f0f8;color:var(--blue);border-radius:3px;padding:3px 7px;font-size:.68rem;text-transform:uppercase;font-weight:800}.review-card h3{margin:17px 0 8px}.review-card p{font-size:.85rem}
.warranty{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.warranty .section-head{margin-bottom:24px}.warranty-list{border:1px solid var(--line);border-radius:9px;overflow:hidden}.warranty-list>div{display:flex;gap:16px;padding:22px 26px;background:#f7fbff}.warranty-list>div+div{border-top:1px solid var(--line)}.warranty-list span{color:var(--green);font-weight:800}.warranty-list p{font-size:.9rem}.warranty-list strong{color:var(--navy)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:0}.process-grid li{display:flex;align-items:start;gap:14px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px}.process-grid li>span{width:39px;height:39px;display:grid;place-items:center;background:var(--navy);color:#fff;border-radius:50%;font-weight:800;font-size:.8rem;flex:none}.process-grid h3{font-size:.99rem;margin-bottom:6px}.process-grid p{font-size:.82rem}
.booking-band{background:var(--deep);color:#fff}.booking-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.booking-copy{padding-top:30px}.booking-copy h2{color:#fff;font-size:clamp(2.2rem,3.5vw,3.25rem);margin-bottom:20px}.booking-copy h2 span{color:#ff9b69}.booking-copy>p:not(.kicker){max-width:485px}.booking-copy .check-list{margin-top:29px}.booking-copy .check-list li,.booking-copy .microcopy{color:#fff}.booking-form{background:#fff;border-radius:10px;padding:31px;color:var(--text);box-shadow:0 12px 35px rgba(0,0,0,.18)}.form-step{color:var(--orange);text-transform:uppercase;font-size:.73rem;font-weight:800;letter-spacing:.1em}.form-heading h3{font-size:1.65rem;margin:7px 0 8px}.form-heading p{font-size:.85rem;margin-bottom:22px}.booking-form label{display:block;color:var(--navy);font-size:.79rem;font-weight:700;margin-bottom:15px}.booking-form label em{font-style:normal;color:var(--orange)}.booking-form label span{font-weight:400;color:#6c7c91}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-form input:not([type=file]),.booking-form textarea{display:block;width:100%;border:1px solid #bdcde0;border-radius:6px;padding:11px 12px;margin-top:6px;color:var(--navy);font-weight:400;min-height:46px}.booking-form textarea{resize:vertical}.booking-form input[type=file]{display:block;font-size:.75rem;margin-top:7px;max-width:100%}.booking-form small{display:block;color:#64748b;font-weight:400;margin-top:4px}.form-button{width:100%;margin-top:7px}.form-status{min-height:1.4em;margin-top:8px;font-size:.83rem;font-weight:700}.form-status.error{color:#b42318}.form-status.success{color:#167346}.form-privacy{font-size:.73rem;line-height:1.5;color:#53667e}.form-privacy a{color:var(--blue);font-weight:800}
.faq-list{max-width:850px;margin-inline:auto}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{position:relative;list-style:none;cursor:pointer;padding:19px 45px 19px 3px;color:var(--navy);font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:8px;top:14px;font-size:1.5rem;color:var(--blue);font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding:0 30px 19px 3px;font-size:.91rem}.site-footer{background:#0a2347;color:#cddbef;padding:56px 0 20px}.site-footer .brand{color:#fff;margin-bottom:17px}.site-footer .brand small{color:#cddbef}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-grid h3{color:#fff;font-size:1rem}.footer-grid p{font-size:.84rem}.footer-grid>div:nth-child(3) a{display:block;font-size:.84rem;margin-bottom:7px}.footer-phone{color:#fff;font-size:1.2rem;font-weight:800}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #284468;margin-top:38px;padding-top:19px;font-size:.72rem}.mobile-sticky{display:none}.lightbox{border:0;border-radius:10px;padding:14px;max-width:min(92vw,980px);background:#fff;color:var(--navy)}.lightbox::backdrop{background:rgba(4,19,41,.82)}.lightbox img{max-height:75vh;object-fit:contain;width:auto;margin:auto}.lightbox p{text-align:center;padding:10px;margin:0}.lightbox-close{display:block;margin-left:auto;border:0;background:none;color:var(--navy);font-size:2rem;line-height:1}
@media(max-width:1100px){.header-inner{gap:16px}.main-nav{gap:13px}.main-nav a,.header-phone{font-size:.76rem}.header-cta{padding-inline:11px}.booking-grid{gap:35px}}
@media(max-width:850px){.header-inner{min-height:68px}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:15px 24px 22px;box-shadow:0 12px 19px rgba(0,0,0,.1);flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{font-size:1rem;padding:12px;border-bottom:1px solid var(--line)}.header-phone{margin-left:auto}.header-cta{display:none}.menu-button{display:block}.inspection-grid,.process-grid{grid-template-columns:repeat(2,1fr)}.service-grid,.price-grid,.project-grid,.review-grid{grid-template-columns:repeat(2,1fr)}.booking-grid{grid-template-columns:1fr;gap:27px}.booking-copy{padding-top:0}.warranty{gap:25px}.mobile-sticky{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;background:#fff;border-top:1px solid var(--line);padding:9px max(15px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom));gap:10px}.mobile-sticky .button{flex:1;min-height:47px}.mobile-sticky>a:last-child{border:1px solid var(--line);border-radius:7px;min-width:50px;display:grid;place-items:center;font-size:1.4rem;color:var(--navy)}body{padding-bottom:65px}}
@media(max-width:700px){.container{width:min(100% - 34px,1200px)}.band{padding:57px 0}.hero{min-height:0}.hero-photo{background-position:57% center}.hero-wash{background:rgba(255,255,255,.83)}.hero-inner{padding-block:44px 49px}.hero-eyebrow{font-size:.71rem;margin-bottom:19px}.hero h1{font-size:clamp(2.1rem,8.5vw,3rem);margin-bottom:18px}.hero-lead{font-size:1rem}.hero-button{width:100%}.trust-grid{grid-template-columns:1fr 1fr;gap:17px}.trust-grid>div{font-size:.76rem}.diagnosis-grid,.warranty,.transparency{grid-template-columns:1fr}.diagnosis-visual{height:240px}.inspection-grid,.service-grid,.price-grid,.project-grid,.review-grid,.process-grid{grid-template-columns:1fr}.inspection-card,.service-card,.price-card,.review-card{min-height:0}.service-card{padding:20px}.service-glyph{margin-bottom:9px}.service-link{padding-top:12px}.transparency{padding:24px;gap:24px}.project-photo{height:235px}.project-body>p:not(.project-type){min-height:0}.section-head{margin-bottom:23px}.booking-form{padding:22px}.field-row{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr 1fr;gap:34px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{gap:15px;flex-wrap:wrap}}
@media(max-width:430px){.brand strong{font-size:1.38rem}.brand small{font-size:.5rem}.header-phone span:last-child{display:none}.header-phone span:first-child{font-size:1.55rem}.trust-grid{gap:13px}.trust-grid b{width:32px;height:32px}.transparency ul{grid-template-columns:1fr}.hero h1{font-size:2.05rem}.hero-eyebrow{line-height:1.4}.diagnosis-aside{padding:22px}.footer-grid{gap:20px}.footer-phone{font-size:1rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button,.service-card,.project-photo img{transition:none}}
.hero-copy{max-width:830px}
.hero h1{font-size:clamp(2.25rem,3.6vw,3.6rem);letter-spacing:-.055em}
@media(max-width:850px){.menu-button{margin-left:auto}}
@media(max-width:700px){.hero h1{font-size:clamp(2rem,7.5vw,2.55rem)}}
@media(max-width:430px){.hero h1{font-size:1.95rem}}
@media(max-width:850px){.mobile-sticky .button:last-child{display:flex;min-width:0;border:2px solid var(--orange);border-radius:7px;color:#fff;font-size:inherit}}
.hero{min-height:560px}
.hero-inner{padding-block:42px 47px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:1rem;padding:10px 15px;margin-bottom:17px}
.hero-eyebrow svg{width:20px;height:20px;flex:none}
.hero h1{margin-bottom:17px}
.hero-lead{margin-bottom:16px}
.hero .check-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px;gap:8px 18px;margin-bottom:20px}
@media(max-width:700px){.hero-inner{padding-block:33px 39px}.hero-eyebrow{font-size:.88rem;padding:9px 12px;margin-bottom:17px}.hero-eyebrow svg{width:18px;height:18px}.hero .check-list{grid-template-columns:1fr;gap:8px;margin-bottom:21px}}
.hero h1{font-size:clamp(2.1rem,3.1vw,3.15rem);line-height:1.2}
.hero-inner{padding-block:28px 33px}
.hero .check-list{grid-template-columns:1fr;max-width:570px;gap:5px;margin-bottom:17px}
.trust-band{padding-block:19px}
.trust-grid{gap:0}
.trust-grid>div.trust-metric{display:flex;justify-content:center;gap:8px;white-space:nowrap;padding:5px 15px}
.trust-grid>div.trust-metric+div{border-left:1px solid #c6d8ed}
.trust-metric strong{font-size:1.24rem;line-height:1.25;color:var(--navy);font-weight:800}
.trust-metric span{font-size:.85rem;font-weight:600}
@media(max-width:700px){.hero h1{font-size:clamp(1.85rem,7vw,2.3rem);line-height:1.24}.hero-inner{padding-block:28px 34px}.hero .check-list{gap:6px}.trust-grid>div.trust-metric{padding:8px 7px;gap:5px;justify-content:flex-start}.trust-grid>div.trust-metric:nth-child(3){border-left:0}.trust-metric strong{font-size:1rem}.trust-metric span{font-size:.75rem}}
.hero .check-list{row-gap:12px}
.hero .check-list li{line-height:1.8}
.trust-metric svg{width:22px;height:22px;color:var(--blue);flex:none}
@media(max-width:700px){.hero .check-list{row-gap:11px}.trust-metric svg{width:18px;height:18px}}
@media(max-width:850px){.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-grid>div.trust-metric:nth-child(3){border-left:0}}
.diagnosis-visual{height:365px;margin:0;padding:0}
.diagnosis-visual img{width:100%;height:100%;object-fit:cover;object-position:center 26%}
.service-card{min-height:205px}
.service-card:hover{border-color:var(--line);transform:none}
.services-action{text-align:center;margin-top:30px}
.services-action .button{min-width:290px}
.review-card{display:flex;flex-direction:column;min-height:245px;border:1px solid var(--line);box-shadow:var(--shadow)}
.review-stars{color:var(--orange);font-size:1.03rem;letter-spacing:.08em;margin-bottom:13px}
.review-card blockquote{margin:0 0 20px;color:var(--navy);font-size:.9rem;line-height:1.65;flex:1}
.review-person{display:flex;align-items:center;gap:11px;border-top:1px solid var(--line);padding-top:15px}
.review-person img{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:none}
.review-person strong,.review-person span{display:block}
.review-person strong{color:var(--navy);font-size:.86rem}
.review-person span{color:var(--text);font-size:.75rem}
@media(max-width:700px){.diagnosis-visual{height:300px}.services-action .button{width:100%;min-width:0}}
.inspection-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:32px;align-items:stretch}
.inspection-photo{margin:0;min-height:390px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}
.inspection-photo img{width:100%;height:100%;object-fit:cover;object-position:center 47%}
.inspection-panel{display:flex;flex-direction:column}
.inspection-steps{display:grid;gap:9px;margin:0}
.inspection-steps li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:8px;padding:14px 16px}
.inspection-steps .number{margin:2px 0 0;font-size:.9rem}
.inspection-steps h3{font-size:1rem;margin:0 0 4px}
.inspection-steps p{font-size:.81rem;line-height:1.45;margin:0}
.inspection-panel .fee-note{margin-top:auto;padding-top:15px;line-height:1.55}
@media(max-width:900px){.inspection-layout{grid-template-columns:1fr;gap:20px}.inspection-photo{height:320px;min-height:0}}
@media(max-width:700px){.inspection-photo{height:245px}.inspection-steps li{padding:13px 14px;gap:9px}.inspection-panel .fee-note{padding-top:0;margin-top:17px}}
.service-card-photo{padding:0;overflow:hidden;min-height:280px}
.service-image{width:100%;height:170px;flex:none;background:#dceaf7}
.service-image img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.service-image-1 img{object-position:center 35%}
.service-image-2 img{object-position:center 45%}
.service-image-3 img{object-position:center 45%}
.service-image-4 img{object-position:center 35%}
.service-image-5 img{object-position:center 50%}
.service-card-copy{padding:14px 18px 17px}
.service-card-photo .service-title{font-size:1.2rem;line-height:1.3;color:var(--navy);margin-bottom:5px}
.service-card-photo .service-desc{font-size:.82rem;line-height:1.42}
.service-title-row{display:flex;align-items:center;gap:9px;margin-bottom:5px}
.service-card-photo .service-title-row .service-glyph{font-size:1.5rem;margin:0;flex:none}
.service-card-photo .service-title-row .service-title{margin:0}
@media(max-width:700px){.service-card-photo{padding:0;min-height:0}.service-image{height:170px}}
.price-grid{grid-template-columns:minmax(0,1fr);gap:12px}
.price-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;column-gap:20px;min-height:96px;padding:17px 23px;border-left:4px solid var(--orange)}
.price-card-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#eaf4ff;color:var(--blue)}
.price-card-icon svg{width:25px;height:25px}
.price-card h3{margin:0 0 4px;font-size:1.12rem;line-height:1.3}
.price-card-body p{color:var(--text);font-size:.86rem;line-height:1.4}
.price-card .price{margin:0;text-align:right;white-space:nowrap}
.price-card .price strong{font-size:1.17rem}
.price-card .price span{display:block;margin-top:3px}
@media(max-width:700px){.price-card{grid-template-columns:42px minmax(0,1fr);gap:10px 14px;min-height:0;padding:17px}.price-card-icon{width:40px;height:40px}.price-card .price{grid-column:2;text-align:left}.price-card .price span{display:inline}}
.project-gallery{max-width:1050px;margin-inline:auto}
.project-stage{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#eaf4ff;box-shadow:var(--shadow)}
.project-stage .project-photo{height:clamp(270px,45vw,600px);border-radius:0;background:#eaf4ff}
.project-stage .project-photo img{width:100%;height:100%;object-fit:contain}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:1;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.95);color:var(--navy);font-size:2rem;line-height:1;box-shadow:var(--shadow)}
.gallery-arrow:hover{color:var(--orange)}
.gallery-prev{left:18px}.gallery-next{right:18px}
.project-gallery-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:15px 0;color:var(--navy)}
.project-caption{font-weight:700}.gallery-count{flex:none;color:var(--orange);font-weight:800}
.project-thumbs{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/4);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:7px}
.project-thumb{height:105px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:8px;background:#eaf4ff;opacity:.72;transition:opacity .18s,border-color .18s}
.project-thumb{scroll-snap-align:start}
.project-thumb[aria-pressed="true"]{opacity:1;border-color:var(--orange)}
.project-thumb:hover{opacity:1}
.project-thumb img{width:100%;height:100%;object-fit:cover}
.project-thumb[data-gallery-name="thi-cong-xu-ly-tran"] img{object-fit:contain}
.project-gallery-action{text-align:center;margin-top:27px}
@media(max-width:700px){.project-stage .project-photo{height:260px}.gallery-arrow{width:39px;height:39px;font-size:1.65rem}.gallery-prev{left:8px}.gallery-next{right:8px}.project-gallery-meta{align-items:flex-start;font-size:.82rem}.project-thumbs{display:flex;overflow-x:auto;gap:9px;scroll-snap-type:x mandatory;padding-bottom:6px}.project-thumb{flex:0 0 105px;height:70px;scroll-snap-align:start}.project-gallery-action .button{width:100%}}
.booking-grid{grid-template-columns:minmax(0,1fr) minmax(0,470px);gap:55px}
.booking-form{width:100%;padding:24px}
.form-heading h3{font-size:1.4rem}
.form-heading p{margin-bottom:16px}
.field-row{grid-template-columns:minmax(0,1fr);gap:0}
.booking-form label{margin-bottom:11px}
.booking-form input:not([type=file]),.booking-form textarea{min-height:43px;padding:9px 11px}
.form-button{min-height:48px;margin-top:3px}
@media(max-width:850px){.booking-grid{grid-template-columns:minmax(0,1fr);gap:26px}.booking-form{max-width:470px;justify-self:center}}
.service-areas-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
.area-group{background:#fff;border:1px solid var(--line);border-radius:10px;padding:27px;box-shadow:var(--shadow)}
.area-group h3{font-size:1.15rem;margin-bottom:18px}
.area-tags{display:flex;flex-wrap:wrap;gap:9px;margin:0}
.area-tags li{background:var(--pale);border:1px solid #cfe0f2;border-radius:7px;color:var(--navy);font-size:.84rem;font-weight:600;padding:6px 11px}
@media(max-width:850px){.service-areas-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.area-group{padding:21px}.area-tags{gap:8px}.area-tags li{font-size:.79rem;padding:5px 9px}}
.merged-areas{padding:0;overflow:hidden}
.merged-areas>h3{padding:20px 27px;margin:0;border-bottom:1px solid var(--line)}
.merged-areas summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 27px;color:var(--navy);font-size:1.05rem;font-weight:800;cursor:pointer;list-style:none}
.merged-areas summary::-webkit-details-marker{display:none}
.merged-areas summary span{color:var(--orange);font-size:1.25rem;transition:transform .18s}
.merged-areas[open] summary{border-bottom:1px solid var(--line)}
.merged-areas[open] summary span{transform:rotate(180deg)}
.merged-areas-content{padding:20px 27px 27px}
.merged-area-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:20px;margin:0}
.merged-area-list li{color:var(--navy);font-size:.79rem;padding:5px 0;border-bottom:1px solid #dce7f2}
@media(max-width:900px){.merged-area-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.merged-areas summary{padding:17px 20px;font-size:.95rem}.merged-areas-content{padding:14px 20px 21px}.merged-area-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.merged-area-list li{font-size:.75rem}}
@media(max-width:600px){.merged-areas>h3{padding:17px 20px;font-size:.95rem}}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
