/* Customer-facing layout: the approved charcoal, ivory and red DAPON identity. */
:root{--ink:#202022;--muted:#62625f;--soft:#f5f3ef;--line:#dedbd5;--accent:#ff4d2e;--accent-dark:#a92b16;--blue:#a92b16}
body{font-family:Arial,Helvetica,sans-serif}h1,h2,h3,h4,.brand,.service-strip,.about .large{font-family:Arial,Helvetica,sans-serif}h1,h2{font-weight:500;letter-spacing:-.055em}h3{font-weight:600}h1 em,h2 em,.simple-contact h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--accent-dark)}
header{min-height:94px;padding:9px 5%;gap:24px;border-top:3px solid var(--accent)}header .brand.brand-selected{width:208px}header nav{gap:28px;font-size:.9rem;max-width:none;flex-wrap:nowrap}.button,.button.small{background:var(--accent);color:var(--ink);border:1px solid var(--accent);box-shadow:none;border-radius:3px;font-weight:600;gap:22px;transform:none}.button:hover{background:#202022;border-color:#202022;color:#fff;transform:none}.button span{font-size:1.2em}.textlink{font-weight:600;line-height:1.6}.textlink:hover{color:var(--accent-dark)}.eyebrow,.section-heading>.eyebrow{color:var(--accent-dark);font-weight:600;letter-spacing:.12em}.mega-menu{background:#fff;box-shadow:0 18px 25px #00000012}.mega-menu strong{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.04em}.mega-menu li>a{font-size:.95rem;padding:13px 0}.mega-menu li>a:hover{background:#fff2ed;color:var(--accent-dark)}nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}
.hero{grid-template-columns:49% 51%;min-height:630px;background:var(--soft)}.hero-copy{padding:65px 9% 40px 10%}.hero h1{font-size:clamp(3.3rem,5.15vw,6rem);line-height:1.04;letter-spacing:-.065em}.hero h1 em{font-size:1em;color:var(--accent-dark)}.hero .intro{max-width:520px;font-size:1.04rem;line-height:1.75;margin-top:25px}.hero .eyebrow{font-size:.65rem;color:#55544f;line-height:1.7}.hero .eyebrow:before{display:none}.hero .actions{flex-direction:row;align-items:center;gap:22px}.hero-note{display:flex;flex-wrap:wrap;align-items:center;margin-top:38px;font-size:.59rem;letter-spacing:.04em;gap:12px}.hero-note a{font-size:1rem;color:var(--ink);font-weight:600;margin:0;white-space:nowrap}.hero-image,.hero-image.slideshow{min-height:630px}.hero-image:after{display:none}.slide-dots button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--ink)}.slideshow-controls{gap:8px;left:20px;right:20px}.slideshow-controls button{min-width:42px;min-height:44px;font-size:.72rem}.slideshow-controls button:hover{background:var(--accent-dark)}.hero-image figcaption{padding-bottom:84px;flex-wrap:wrap;gap:6px}.service-strip{background:#fff;color:var(--ink);border-color:var(--line);font-size:1rem;padding:20px 5%;letter-spacing:-.02em}.service-strip>a,.service-strip>a:nth-child(odd),.service-strip>a:nth-child(-n+2){border-color:var(--line)}.service-strip>a:before{color:var(--accent-dark)}.service-strip>a:hover{color:var(--accent-dark)}
.section{padding:80px 6%}.section-heading{margin-bottom:38px;gap:12px 60px}.section-heading h2,.price-teaser h2,.about h2{font-size:clamp(2.3rem,3.7vw,4rem);line-height:1.09}.section-heading>.eyebrow{margin-bottom:12px}.section-heading>p:last-child{line-height:1.7}.expanded-services{grid-template-columns:repeat(3,minmax(0,1fr))}.expanded-services article,.expanded-services article:last-child,.expanded-services article:nth-child(even),.expanded-services article:nth-child(n+3){padding:28px}.expanded-services article:hover{background:#faf6f0}.expanded-services .number{margin-bottom:22px;color:var(--accent-dark)}.expanded-services h3{font-size:1.3rem;font-weight:600;margin-bottom:12px;min-height:0;letter-spacing:-.025em}.expanded-services h3 a{font-size:inherit;border:0;line-height:inherit;color:inherit;font-weight:inherit}.expanded-services p{font-size:.94rem;line-height:1.6;min-height:0;margin-bottom:22px}.expanded-services .textlink{font-size:.85rem;margin:0}.price-teaser{background:var(--soft);gap:60px;max-width:none}.price-teaser p{max-width:520px}.price-preview{background:#fff;padding:32px;border:1px solid var(--line)}.price-preview>div{flex-direction:row;padding:24px 0;gap:20px}.price-preview strong{color:var(--ink);font-weight:600;white-space:nowrap}.price-preview .fine{font-size:.82rem;line-height:1.65}.charcoal{background:var(--ink)}.charcoal h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(2.3rem,3.7vw,4rem);letter-spacing:-.045em}.charcoal p,.gallery figcaption span{color:#c7c6c2}.charcoal .eyebrow{color:#ff9b86}.compact-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.compact-gallery img{aspect-ratio:4/3}.compact-gallery figcaption{padding-top:20px}.compact-gallery figcaption strong{font-family:Arial,Helvetica,sans-serif;font-size:1.2rem;font-weight:500;letter-spacing:-.025em}.compact-gallery figcaption span{font-size:.67rem}.compact-gallery a:hover{color:#ff9b86}
.process{background:#fff}.process h2,.faq h2{font-size:clamp(2.2rem,3.5vw,3.6rem)}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:38px}.steps b{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-size:2rem;color:var(--accent-dark);margin-bottom:22px}.steps h3{font-weight:600;font-size:1.2rem}.steps p{font-size:.97rem}.about{background:var(--soft);gap:70px}.about h2 em{color:var(--accent-dark)}.about .large{font-weight:500;font-size:1.5rem;letter-spacing:-.025em}.locations span{border:1px solid #d2cec6;background:#fff;color:var(--ink);font-size:.82rem}.area-link{margin-top:26px}.faq{padding-top:75px;background:#fff}.faq summary{font-weight:500;font-size:1.02rem;line-height:1.5}.faq summary:hover{color:var(--accent-dark)}.faq details{padding:22px 0}.faq p{line-height:1.7}.simple-contact{background:#202022;gap:80px;align-items:start;color:#fff}.simple-contact h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(2.6rem,4.3vw,4.7rem);letter-spacing:-.06em;line-height:1.05}.simple-contact .eyebrow{color:#ff9b86}.simple-contact>div>p{color:#d3d0ca;opacity:1;max-width:450px;line-height:1.7}.simple-contact .contact-note{font-size:.86rem;color:#c7c6c2}.contact-actions{gap:12px;margin-top:28px}.contact-actions a{color:#fff;border-color:#73716d;border-radius:3px;font-size:.93rem}.simple-contact form{background:#fff;padding:32px;gap:0;box-shadow:none;border-radius:4px;align-self:start}.simple-contact label{display:block;font-size:.9rem;font-weight:600;margin-top:20px}.simple-contact label:first-child{margin-top:0}.simple-contact input,.simple-contact textarea{background:#fff;border:1px solid #bdb9b1;color:var(--ink);padding:13px;min-height:50px;border-radius:3px;font-size:1rem;line-height:1.5;margin-top:8px}.simple-contact input::placeholder,.simple-contact textarea::placeholder{color:#74716b}.simple-contact .optional{color:#66615b}.simple-contact textarea{min-height:122px}.simple-contact .button{background:var(--accent);color:var(--ink);border-color:var(--accent);margin:24px 0 14px;min-height:54px}.simple-contact .button:hover{background:#202022;color:#fff;border-color:#202022}.simple-contact .form-help{color:#67615a;font-size:.81rem;line-height:1.6;max-width:none}.form-help a{text-decoration:underline}.simple-contact #form-status{color:#772715;margin-top:12px;font-size:.9rem}.simple-contact noscript a{color:#7e2819;text-decoration:underline}.privacy{background:#f5f3ef;padding:30px 6%;color:var(--ink)}.privacy h2{font:600 1rem Arial,Helvetica,sans-serif;letter-spacing:0;margin-bottom:10px}.privacy p{color:#62605a;max-width:1100px;font-size:.82rem;line-height:1.7}footer{padding:48px 6% 28px;background:#202022;grid-template-columns:1fr 1fr 1.15fr;gap:32px}footer .brand.brand-selected{width:240px}footer>p{font-size:.85rem;line-height:1.8;color:#d2cfc9}.footer-phone{display:inline-block;font-size:1.13rem;font-weight:600;margin-top:12px;color:#fff}footer>div{align-content:start;gap:12px 22px}footer>div a{min-height:30px}footer>small{font-size:.75rem;color:#bdbab5;line-height:1.6}.mobile-contact{display:none}
.service-hero{background:var(--soft);grid-template-columns:1.12fr 1fr;min-height:560px}.service-hero>div{padding:28px 8% 50px 10%}.service-hero figure{min-height:560px}.service-hero h1{font-size:clamp(2.5rem,4.25vw,4.7rem);line-height:1.08;letter-spacing:-.06em;overflow-wrap:break-word}.service-hero h1 em{font-size:.78em;color:var(--accent-dark)}.service-hero .intro{font-size:1rem;line-height:1.7}.service-hero .eyebrow{color:var(--accent-dark);letter-spacing:.09em;line-height:1.6}.breadcrumbs a{color:#625d55}.breadcrumbs{margin-bottom:32px}.scope-grid h3{font-weight:600}.scope-grid article>span{color:var(--accent-dark)}.service-price-section,.painting-price-section,.pricing-hero,.related,.decorating-crosslink{background:var(--soft)}.service-rates article{border-top:2px solid #d8c1b4}.service-rates strong,.rate-value strong,.painting-rate-list .rate-value strong{color:var(--accent-dark)}.rate-heading,.decorator-day{background:#202022}.rate-heading>span,.decorator-day>p,.decorator-day>strong>small{color:#d0cdc7}.decorator-day .eyebrow{color:#ff9b86}.pricing-hero h1{font-size:clamp(2.7rem,4.8vw,5.2rem);line-height:1.08}.pricing-hero .intro{max-width:740px}.pricing-hero .guide-note{margin:28px 0;font-size:.91rem}.pricing-toolbar input{font-size:1rem;border-radius:3px}.price-layout{padding-top:45px;gap:45px}.price-layout aside{top:120px}.price-layout aside a{padding:12px 0;font-size:.87rem}.rate-heading h2{font-size:1.35rem}.rate-row p{font-size:.88rem}.rate-group{scroll-margin-top:115px}.service-hero~.related .button{margin-top:20px}.scope-grid article p{font-size:.96rem}.related .textlink{line-height:1.9}.service-area-note{line-height:1.7}
@media(max-width:1100px){header nav{gap:18px}.hero,.hero-image,.hero-image.slideshow{min-height:590px}.hero-copy{padding:48px 8%}.hero h1{font-size:5.5vw}.hero .actions{align-items:flex-start;flex-direction:column;gap:15px}.section{padding:65px 5%}.expanded-services article,.expanded-services article:last-child,.expanded-services article:nth-child(even),.expanded-services article:nth-child(n+3){padding:24px}.price-teaser,.about,.simple-contact{gap:36px}.price-preview{padding:24px}.price-preview>div{flex-direction:column;gap:9px}.simple-contact form{padding:26px}.compact-gallery{gap:22px}.service-hero h1{font-size:4.2vw}.service-hero figure{min-height:550px}.service-hero>div{padding-left:9%}.slideshow-controls .slide-prev,.slideshow-controls .slide-next{font-size:.67rem;padding:8px}.slideshow-controls .slide-dots{gap:5px}.slideshow-controls{gap:5px;left:12px;right:12px}}
@media(max-width:900px){header{flex-wrap:wrap;min-height:87px;padding:8px 5%}header .brand.brand-selected{width:190px}.menu{display:block;min-height:44px}header nav{display:none;width:100%;max-width:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 14px;max-height:calc(100dvh - 100px);overflow:auto}header nav.open{display:flex}header nav>a{padding:14px 0;border-top:1px solid #414144}header nav .button{margin-top:12px;padding:14px}.nav-services>summary{font-size:1rem;padding:14px 0;border-top:1px solid #414144}.mega-menu{position:static;display:block;background:var(--ink);padding:0 0 15px;box-shadow:none;border:0}.mega-menu>div{display:none}.mega-menu ul{grid-template-columns:1fr 1fr;gap:0 20px}.mega-menu li>a{color:var(--brand-ivory);border-color:#414144;font-size:.9rem;padding:13px 0}header .mega-menu{background:var(--ink);color:var(--brand-ivory)}header .mega-menu li>a:hover{background:#303032;color:#ff9b86}.nav-services{border:0!important}.expanded-services{grid-template-columns:1fr 1fr}.compact-gallery{grid-template-columns:1fr 1fr}.compact-gallery figure:last-child{grid-column:1/-1;max-width:calc(50% - 11px)}footer{grid-template-columns:1fr 1fr}footer>div{grid-column:1/-1}.steps{gap:25px}.service-hero .actions{gap:16px}.button{padding:15px 20px}}
@media(max-width:760px){html{scroll-padding-top:102px}body{padding-bottom:calc(62px + env(safe-area-inset-bottom,0px))}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:40px 6% 30px}.hero h1{font-size:clamp(2.65rem,10.6vw,4.5rem);line-height:1.05}.hero .eyebrow{font-size:.6rem;margin-bottom:16px}.hero .intro{font-size:1rem;line-height:1.7;margin-top:22px;max-width:560px}.hero .actions{flex-direction:row;align-items:center;margin-top:24px;gap:22px}.hero-note{margin-top:26px;font-size:.55rem;display:flex;gap:12px}.hero-image,.hero-image.slideshow{height:340px;min-height:340px}.hero-image figcaption{font-size:.8rem}.hero-image figcaption span{font-size:.65rem}.slideshow-controls{left:15px;right:15px;bottom:16px;gap:8px}.slideshow-controls button{padding:8px;min-width:38px;font-size:.68rem}.slideshow-controls .slide-dots{gap:5px}.service-strip{font-size:.88rem;padding:10px 6%}.service-strip>a{padding:13px 0}.service-strip>a:nth-child(even){padding-left:15px}.service-strip>a:before{margin-right:8px}.section{padding:54px 6%}.section-heading h2,.price-teaser h2,.about h2{font-size:2.35rem}.section-heading>p:last-child{font-size:.97rem;margin-top:18px}.section-heading{margin-bottom:28px}.expanded-services{grid-template-columns:1fr}.expanded-services article,.expanded-services article:last-child,.expanded-services article:nth-child(even),.expanded-services article:nth-child(n+3){padding:25px}.expanded-services .number{margin-bottom:13px;font-size:.7rem}.expanded-services h3{font-size:1.3rem;min-height:0}.expanded-services p{font-size:.95rem;margin-bottom:18px}.expanded-services .textlink{font-size:.85rem}.price-teaser,.about,.simple-contact{grid-template-columns:1fr;gap:30px}.price-preview>div{flex-direction:row;gap:15px;padding:23px 0}.price-preview strong{font-size:1rem}.price-preview>div>span{font-size:.89rem}.compact-gallery{grid-template-columns:1fr;gap:30px}.compact-gallery figure:last-child{grid-column:auto;max-width:none}.compact-gallery img{aspect-ratio:4/3}.compact-gallery figcaption strong{font-size:1.25rem}.compact-gallery figcaption span{margin-bottom:7px}.charcoal h2{font-size:2.35rem}.steps{grid-template-columns:1fr;gap:28px;margin-top:30px}.steps b{font-size:1.6rem;margin-bottom:15px}.steps h3{font-size:1.22rem;margin-bottom:12px}.steps p{max-width:520px}.process h2,.faq h2{font-size:2.2rem}.faq details{padding:20px 0}.faq summary{font-size:1rem}.about .large{font-size:1.35rem}.simple-contact h2{font-size:2.7rem}.simple-contact form{padding:25px}.simple-contact .button{padding:14px 16px;font-size:.93rem;gap:12px}.simple-contact .form-help{font-size:.8rem}.contact-actions{gap:10px}.contact-actions a{font-size:.88rem;padding:11px 15px}.privacy{padding:28px 6%}footer{grid-template-columns:1fr;padding:35px 6% 25px;gap:25px}footer>div{grid-column:auto;gap:10px 22px}footer .brand.brand-selected{width:235px}.mobile-contact{position:fixed;z-index:25;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;background:#fff;padding:9px 12px calc(9px + env(safe-area-inset-bottom,0px));gap:9px;border-top:1px solid #dedbd5;box-shadow:0 -5px 20px #0000000c}.mobile-contact a{min-height:44px;display:flex;align-items:center;justify-content:center;gap:10px;background:#f2f0eb;border-radius:3px;font-size:.86rem;font-weight:600;white-space:nowrap;color:#202022}.mobile-contact a:last-child{background:var(--accent)}.mobile-contact a:focus-visible{outline-offset:1px}.service-hero{display:flex;flex-direction:column;min-height:0}.service-hero>div{padding:23px 6% 37px}.service-hero h1{font-size:clamp(2.4rem,9vw,3.5rem)}.service-hero h1 em{font-size:.8em}.service-hero figure{height:310px;min-height:310px}.service-hero .breadcrumbs{margin-bottom:25px}.service-hero .eyebrow{font-size:.63rem}.scope-grid{gap:28px}.pricing-hero h1{font-size:clamp(2.4rem,9vw,3.5rem)}.pricing-toolbar{gap:20px}.price-layout aside{position:static;margin-bottom:28px}.price-layout aside a{font-size:.85rem;min-height:40px}.price-layout{padding-top:25px}.rate-row{padding:20px}.rate-heading h2{font-size:1.22rem}.rate-row p{font-size:.87rem}.rate-value{flex-wrap:wrap}.rate-group{scroll-margin-top:100px}.service-rates article{padding:24px}.related .button{margin-top:22px}}
@media(max-width:380px){header .brand.brand-selected{width:172px}.hero h1{font-size:2.65rem}.hero .actions{gap:15px}.hero .button{padding:14px 18px}.hero .textlink{font-size:.82rem}.price-preview{padding:19px}.price-preview>div{flex-direction:column;gap:7px}.simple-contact form{padding:22px}.slideshow-controls{gap:5px;left:10px;right:10px}.slideshow-controls button{min-width:34px;padding:7px 6px}.slideshow-controls .slide-dots{gap:4px}.mobile-contact a{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.slide{transition:none}}
@media print{body{padding-bottom:0;background:#fff}.mobile-contact,header,footer{display:none!important}.section{padding:15px 0}.price-layout{display:block}.pricing-hero h1{font-size:28px}.rate-heading{background:#eee;color:#000}.rate-heading>span{color:#333}.rate-row{break-inside:avoid}.rate-value strong{color:#000}.simple-contact,.privacy{display:none!important}}
