*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#090909;color:#fff;font-family:Arial,Helvetica,sans-serif}.site{max-width:1024px;margin:auto;box-shadow:0 0 35px #000}.image-panel{position:relative;line-height:0}.image-panel img{width:100%;height:auto;display:block}.hot{position:absolute;display:block;cursor:pointer;background:transparent;border:0;padding:0;z-index:2}.hot:focus-visible{outline:3px solid #fff;outline-offset:-3px}.nav-home{left:22.5%;top:19%;width:5.8%;height:68%}.nav-estate{left:29%;top:19%;width:16%;height:68%}.nav-clean{left:46%;top:19%;width:8%;height:68%}.nav-consign{left:55%;top:19%;width:10%;height:68%}.nav-about{left:66%;top:19%;width:12%;height:68%}.nav-phone{left:79%;top:16%;width:19%;height:72%}.hero{background:#0a0a0a}.hero-button{left:4.8%;top:80.7%;width:41.4%;height:14%}.hero-copy{border-top:0;border-bottom:4px solid #f9bd25;padding:15px 5% 26px;background:linear-gradient(120deg,#0b0b0b,#17130c);font-size:clamp(14px,2vw,20px);line-height:1.5}.hero-copy .form-hint{font-size:12px;font-weight:400;line-height:1.45;color:#ddd;margin:0 0 22px;padding:0;border:0;max-width:424px}.hero-copy h2{font-size:clamp(21px,3.5vw,37px);line-height:1.14;color:#ffbf25;margin:0 0 15px;font-weight:900}.hero-copy h2 span{color:#fff}.hero-copy p{max-width:850px;margin:12px 0}.hero-copy strong{color:#ffbf25}.card-one{left:7%;top:80%;width:24.5%;height:11%}.card-two{left:39%;top:80%;width:24.5%;height:11%}.card-three{left:70%;top:80%;width:24.5%;height:11%}.business-button{left:5%;top:78%;width:28%;height:17%}.footer-estimate{left:29.5%;top:53%;width:30.5%;height:32%}.footer-phone{left:61%;top:53%;width:20%;height:32%}.footer-email{left:82%;top:53%;width:15%;height:32%}.sr-content{padding:24px 5% 40px;background:#111}.sr-content h2{color:#ffc32b;font-size:22px;margin:18px 0 6px}.sr-content p{line-height:1.5;margin:0 0 18px}dialog{background:#121212;color:white;border:2px solid #ffc32b;border-radius:10px;width:min(94vw,650px);max-height:90vh;overflow:auto;padding:24px;box-shadow:0 15px 80px #000}dialog::backdrop{background:#000c}.modal-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.modal-head h2{color:#ffc32b;margin:0 0 10px;font-size:26px}.modal-head button{background:none;color:white;border:0;font-size:34px;cursor:pointer}form{display:grid;gap:13px}form label{display:grid;gap:6px;font-weight:700}form input:not([type=checkbox]),form select,form textarea{width:100%;background:white;color:#111;padding:12px;border-radius:4px;border:1px solid #ccc;font:inherit}.consent{display:flex;align-items:start;gap:9px;font-weight:400}.consent input{margin-top:3px}.submit{background:#ffc32b;color:black;border:0;border-radius:5px;padding:14px;font-size:17px;font-weight:900;cursor:pointer}.note{font-size:13px;color:#ddd;line-height:1.4}.note a{color:#ffca4b}#details-text{line-height:1.6}@media(max-width:650px){.hero-copy{padding:12px 5% 20px}.hero-copy .form-hint{margin-bottom:15px}.sr-content h2{font-size:19px}dialog{padding:16px}.modal-head h2{font-size:21px}}
.sr-content[hidden],[hidden]{display:none!important}.detail-page{background:linear-gradient(140deg,#17130d,#090909 55%);min-height:78vh;padding:clamp(24px,6vw,68px) 5%;border-top:3px solid #ffc32b}.detail-kicker{font-weight:bold;letter-spacing:2px;color:#ffca42;font-size:13px}.detail-page h1{font-size:clamp(33px,6vw,64px);line-height:1.02;margin:22px 0;color:#ffc32b;font-weight:900}.detail-page h2{font-size:clamp(19px,3vw,29px);margin:0 0 24px}.detail-intro{font-size:clamp(17px,2.3vw,23px);line-height:1.55;max-width:800px}.detail-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:38px 0}.detail-cards article{background:#fff;color:#111;border-top:5px solid #ffc32b;border-radius:7px;padding:22px}.detail-cards h3{font-size:20px;text-transform:uppercase;margin:0 0 12px}.detail-cards p{line-height:1.5}.detail-note{color:#ddd}.detail-back{margin-top:45px}.detail-back a{color:#ffc32b}.hot[data-page]{touch-action:manipulation}@media(max-width:650px){.detail-cards{grid-template-columns:1fr}.detail-page{min-height:65vh}}

/* Phone layout, using the existing brand and artwork. */
.phone-header,.phone-cards,.phone-business,.phone-benefits,.phone-footer{display:none}
.project-types{border:1px solid #666;border-radius:5px;padding:12px}.project-types legend{font-weight:bold}.project-types label{display:flex;align-items:center;gap:10px;font-weight:400;padding:7px 0}.project-types input[type=radio]{width:18px;min-width:18px;height:18px;margin:0;accent-color:#ffc32b}form input,form select,form textarea{font-size:16px!important}
@media(max-width:650px){
.header,.desktop-section{display:none}
.phone-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 5%;background:#050505;flex-wrap:wrap}
.phone-header img{width:84px;height:52px;object-fit:contain;display:block}.phone-header a{color:#ffc32b;text-decoration:none;font-size:14px;font-weight:bold}.phone-header button{min-height:44px;padding:10px 12px;background:#ffc32b;border:0;border-radius:5px;font-size:15px;font-weight:bold;color:#111}
#phone-menu{flex-basis:100%;display:grid;gap:2px;border-top:1px solid #544213;padding-top:8px}#phone-menu a{padding:13px 4px;font-size:16px;color:white;min-height:44px}
.hero-copy{font-size:16px;line-height:1.6;padding:12px 5% 24px}.hero-copy h2{font-size:24px;line-height:1.2;margin:22px 0 0}.hero-copy p{margin:12px 0}
.phone-cards{display:grid;gap:18px;background:#f2f2f2;padding:24px 5%}.phone-cards article{border-top:4px solid #ffc32b;border-radius:9px;padding:24px;background:white;color:#111;box-shadow:0 3px 12px #0001}.phone-cards h2{font-size:24px;line-height:1.15;font-weight:900;margin:0 0 14px}.phone-cards p{font-size:16px;line-height:1.55;margin:0 0 20px}.phone-cards button{width:100%;min-height:48px}
.phone-business{display:block;padding:28px 5%;background:linear-gradient(120deg,#14120d,#080808)}.phone-business h2{font-size:27px;line-height:1.1;margin:0 0 16px}.phone-business h2 span{color:#ffc32b}.phone-business p,.phone-business li{font-size:16px;line-height:1.55}.phone-business ul{list-style:none;padding:0;margin:22px 0}.phone-business li{padding:6px 0 6px 26px;position:relative}.phone-business li:before{content:'✓';color:#ffc32b;position:absolute;left:0;font-weight:bold}.phone-business button{width:100%}
.phone-benefits{display:grid;grid-template-columns:1fr 1fr;gap:24px 18px;background:#f5f5f5;color:#111;padding:26px 5%}.phone-benefits h3{font-size:17px;line-height:1.2;margin:0 0 8px}.phone-benefits p{font-size:15px;line-height:1.5;margin:0}
.phone-footer{display:grid;gap:12px;padding:28px 5%;background:linear-gradient(120deg,#1a1408,#070707)}.phone-footer h2{color:#ffc32b;font-size:25px;line-height:1.15;margin:0}.phone-footer p{font-size:16px;line-height:1.5;margin:0 0 6px}.phone-footer a{display:block;text-align:center;padding:14px;background:#ffc32b;border-radius:5px;color:#111;text-decoration:none;font-weight:bold}.detail-page .submit{width:100%}.detail-page h1{overflow-wrap:anywhere}.detail-cards p{font-size:16px}
}

/* Version 4.2: aligned banner and native navigation fallback. */
.hero-button{top:80.34%;height:14.26%}
a.submit{display:inline-block;text-decoration:none;text-align:center}
#inquiry:target{display:block;position:fixed;inset:5vh 0 auto;z-index:20;max-height:90vh;margin:0 auto;box-shadow:0 0 0 100vmax #000c}
#close{color:white;font-size:34px;text-decoration:none;line-height:1}
.phone-menu-wrap{display:none}
@media(max-width:650px){
.phone-header{padding:10px 5%;gap:8px;flex-wrap:nowrap;position:relative}
.phone-header img{width:112px;height:auto}.phone-header .phone-call{font-size:14px;white-space:nowrap}
.phone-menu-wrap{display:block}.phone-menu-wrap summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:center;padding:10px 12px;background:#ffc32b;color:#111;border-radius:5px;font-size:15px;font-weight:bold}.phone-menu-wrap summary::-webkit-details-marker{display:none}
#phone-menu{position:absolute;left:0;right:0;top:100%;z-index:10;background:#090909;padding:8px 5% 12px;box-shadow:0 10px 16px #0008}
.phone-menu-wrap:not([open]) #phone-menu{display:none}
}

/* Version 4.4: always-visible phone page links. */
@media(max-width:650px){
.phone-header{flex-wrap:wrap;justify-content:space-between;padding-bottom:0}
.phone-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:0 16px;flex-basis:100%;padding:8px 0 10px;border-top:1px solid #3f3216;margin-top:4px}
.phone-header .phone-nav a{display:flex;align-items:center;min-height:44px;font-size:14px;line-height:1.25;color:#fff;padding:8px 0;text-align:center;text-decoration:none}
.phone-header .phone-nav a:focus-visible{outline:2px solid #ffc32b;outline-offset:3px}
.phone-header .phone-call{font-size:16px}
}

/* Version 4.6: separate call and text actions. */
.contact-actions{display:block;font-weight:700;font-size:13px;line-height:1.4}
.contact-actions a{text-decoration:underline;text-underline-offset:3px}
.contact-number{display:block;text-decoration:none;font-weight:900;white-space:nowrap}
.contact-desktop{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#ffc32b;border-radius:8px;color:#111;line-height:1.2;cursor:default}
.contact-desktop a{color:#111}.contact-desktop .contact-number{font-size:clamp(12px,1.8vw,18px)}
.phone-contact{text-align:right}.phone-header .contact-actions{color:#ffc32b;font-size:14px}.phone-header .contact-actions a{font-size:14px;display:inline-flex;align-items:center;min-height:44px;padding:0 4px}.phone-header .contact-number{font-size:16px;line-height:1.35}
.phone-footer .footer-contact{padding:8px 12px 12px;background:#ffc32b;border-radius:5px;color:#111;text-align:center}.phone-footer .footer-contact a{padding:0;border-radius:0}.phone-footer .footer-contact .contact-actions a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;font-size:16px}.phone-footer .footer-contact .contact-number{font-size:18px}
