:root{--p2d-red:#ff3048;--p2d-red-dark:#d91f36;--ink:#181818;--muted:#6f7378;--cream:#fbfaf4;--line:#e9e6dc;--night:#050b1c;--sage:#e4ece6;--p2d-teal:#1bb0ce}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Avenir Next,Montserrat,Segoe UI,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}.top-strip{color:#f8f8f8;letter-spacing:.08em;text-align:center;text-transform:uppercase;background:#050505;padding:8px 22px;font-size:11px}.site-header{z-index:20;background:#fffffff5;border-bottom:1px solid #0000000f;justify-content:space-between;align-items:center;gap:28px;padding:18px clamp(18px,5vw,72px);display:flex;position:sticky;top:0}.brand{align-items:center;text-decoration:none;display:flex}.brand-logo{width:340px;max-width:min(340px,48vw);height:auto;display:block}.header-actions{align-items:center;gap:18px;display:flex}.header-actions a{font-size:13px;font-weight:800;text-decoration:none}.pill-button,.submit-button,.dark-button{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;border:0;padding:13px 18px;font-size:13px;font-weight:900;text-decoration:none}.pill-button,.submit-button{background:var(--p2d-red);color:#fff}.pill-button:hover,.submit-button:hover{background:var(--p2d-red-dark)}.dark-button{background:var(--night);color:#fff;display:inline-flex}.hero{isolation:isolate;min-height:88svh;position:relative;overflow:hidden}.hero:before{content:"";z-index:-2;background-image:linear-gradient(90deg,#03050ce0,#03050ca3 48%,#03050c33),url(/assets/bathroom-hero.jpg);background-position:50%;background-size:cover;position:absolute;inset:0}.hero:after{content:"";z-index:-1;background:radial-gradient(circle at 20% 30%,#ff30483d,#0000 28%),linear-gradient(#0000 78%,#fbfaf4f5);position:absolute;inset:0}.hero-inner{grid-template-columns:minmax(0,1.08fr) minmax(320px,440px);align-items:center;gap:clamp(28px,5vw,70px);max-width:1180px;min-height:88svh;margin:0 auto;padding:clamp(34px,6vw,76px) clamp(18px,5vw,42px);display:grid}.eyebrow{color:var(--p2d-red);letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;font-size:12px;font-weight:950}.hero h1{color:#fff;letter-spacing:-.04em;text-transform:uppercase;max-width:760px;margin:0;font-size:clamp(42px,6.6vw,82px);line-height:.92}.hero h1 span{color:var(--p2d-red)}.hero-copy{color:#ffffffdb;max-width:640px;margin:22px 0 28px;font-size:clamp(17px,2vw,22px);line-height:1.55}.hero-badges{flex-wrap:wrap;gap:10px;margin:0;padding:0;display:flex}.hero-badges li{color:#fff;text-transform:uppercase;background:#ffffff1f;border:1px solid #ffffff47;padding:10px 12px;font-size:12px;font-weight:850;list-style:none}.lead-form{background:#fffffff5;border:1px solid #ffffff80;padding:clamp(22px,3vw,30px);box-shadow:0 24px 70px #00000040}.lead-form h2{letter-spacing:-.04em;text-transform:uppercase;margin:0 0 8px;font-size:24px;line-height:1}.lead-form p{color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.5}.form-alert{border-left:4px solid var(--p2d-red);color:#9b1021;background:#fff0f2;margin-bottom:16px;padding:12px;font-size:13px;font-weight:800}.field-grid{gap:12px;display:grid}.field-grid.two{grid-template-columns:1fr 1fr}.field{gap:6px;display:grid}.field label{letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:900}.field input,.field select,.field textarea{color:var(--ink);background:#fff;border:1px solid #ddd9cf;width:100%;min-height:46px;padding:12px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--p2d-teal);outline:0;box-shadow:0 0 0 3px #1bb0ce29}.field input[type=file]{padding:10px}.field textarea{resize:vertical;min-height:94px}.submit-button{width:100%;min-height:50px;margin-top:16px}.form-note{color:var(--muted);margin-top:12px;font-size:11px;line-height:1.45}.proof-ribbon{background:var(--p2d-red);color:#fff;letter-spacing:.14em;text-align:center;text-transform:uppercase;padding:14px 20px;font-size:12px;font-weight:950}.section{padding:clamp(58px,8vw,96px) clamp(18px,5vw,72px)}.section.white{background:#fff}.section-inner{max-width:1120px;margin:0 auto}.section-kicker{color:#9da0a4;letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:900}.section-title{letter-spacing:-.04em;text-transform:uppercase;max-width:760px;margin:0 0 22px;font-size:clamp(29px,4vw,48px);line-height:1}.section-title span{color:var(--p2d-red)}.split{grid-template-columns:.95fr 1.05fr;align-items:center;gap:clamp(28px,5vw,64px);display:grid}.number-list{counter-reset:item;gap:16px;margin:24px 0 0;padding:0;display:grid}.number-list li{counter-increment:item;padding-left:46px;font-weight:750;line-height:1.55;list-style:none;position:relative}.number-list li:before{background:var(--p2d-red);color:#fff;content:counter(item);place-items:center;width:30px;height:30px;font-size:13px;font-weight:950;display:grid;position:absolute;top:2px;left:0}.photo-stack{grid-template-columns:1fr .72fr;gap:12px;display:grid}.photo-tile{background-image:url(/assets/bathroom-hero.jpg);background-position:50%;background-size:cover;min-height:220px}.photo-tile.large{background-position:50%;min-height:430px}.photo-tile.red{background:var(--p2d-red);color:#fff;letter-spacing:.12em;text-transform:uppercase;align-items:center;padding:26px;font-size:19px;font-weight:950;display:flex}.photo-tile.crop-two{background-image:url(/assets/bathroom-gallery-02.jpg);background-position:50%}.services-grid,.gallery-grid,.reviews-grid{gap:18px;display:grid}.services-grid{grid-template-columns:repeat(3,1fr);margin-top:30px}.service-card{border:2px solid var(--p2d-red);background:#fff;padding:18px;box-shadow:0 12px 28px #1818181f}.service-card-image{background:#f3f0e7;height:150px;margin-bottom:18px}.service-card h3,.review-card h3{letter-spacing:-.02em;margin:0 0 9px;font-size:17px}.service-card h3{color:var(--p2d-red)}.service-card p,.review-card p,.body-copy{color:var(--muted);font-size:15px;line-height:1.65}.gallery-grid{grid-template-columns:repeat(4,1fr);margin-top:32px}.gallery-item{aspect-ratio:1/.92;background:#f3f0e7;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;display:block}.gallery-item:after{background:var(--p2d-red);color:#fff;content:attr(data-label);letter-spacing:.08em;text-transform:uppercase;padding:7px 9px;font-size:10px;font-weight:950;position:absolute;top:8px;right:8px}.gallery-item span{color:#fff;letter-spacing:.08em;text-transform:uppercase;background:#050b1cd1;padding:7px 9px;font-size:11px;font-weight:900;position:absolute;bottom:8px;left:8px}.reviews-grid{grid-template-columns:repeat(4,1fr);margin-top:26px}.review-card{border:1px solid var(--line);background:#fff;padding:18px}.stars{color:#f6b500;letter-spacing:.08em;font-size:18px}.hero .pill-button+.hero-badges,.section-button{margin-top:22px}.section-button{display:inline-flex}.trust-strip{flex-wrap:wrap;gap:10px;margin:24px 0;display:flex}.trust-strip span{color:var(--night);letter-spacing:.08em;text-transform:uppercase;border:1px solid #1bb0ce73;padding:10px 12px;font-size:12px;font-weight:900}.featured-review{border-left:6px solid var(--p2d-red);letter-spacing:-.02em;background:#fff;max-width:960px;margin:0;padding:clamp(22px,4vw,38px);font-size:clamp(19px,2.4vw,28px);font-weight:750;line-height:1.45;box-shadow:0 12px 30px #18181814}.featured-review cite{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:18px;font-size:13px;font-style:normal;font-weight:900;display:block}.final-actions{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.contact-line{color:#ffffffc7;max-width:900px;margin-top:18px;font-size:13px;line-height:1.6}.sticky-mobile-cta{display:none}.cta-band{background:var(--night);color:#fff;position:relative;overflow:hidden}.cta-band:before{content:"";opacity:.2;background-image:url(/assets/bathroom-hero.jpg);background-position:50%;background-size:cover;position:absolute;inset:0}.cta-band .section-inner{position:relative}.faq-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:30px;display:grid}details{border:1px solid var(--line);background:#fff;padding:18px}summary{cursor:pointer;font-weight:900;list-style:none}summary::-webkit-details-marker{display:none}details p{color:var(--muted);margin:12px 0 0;line-height:1.6}.site-footer{color:#fff;background:#030816;grid-template-columns:1fr auto;gap:18px;padding:34px clamp(18px,5vw,72px);display:grid}.site-footer p{color:#ffffffad;margin:8px 0 0}.thank-you{color:#fff;background-color:#0000;background-image:linear-gradient(90deg,#03050ce0,#03050c73),url(/assets/bathroom-hero.jpg);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;align-items:center;min-height:100svh;padding:40px clamp(18px,6vw,90px);display:grid}.thank-you-panel{max-width:720px}.thank-you-logo{background:#fff;width:420px;max-width:min(420px,86vw);height:auto;margin-bottom:28px;display:block}.thank-you h1{letter-spacing:-.05em;text-transform:uppercase;margin:0 0 20px;font-size:clamp(44px,7vw,84px);line-height:.9}.thank-you h1 span{color:var(--p2d-red)}.thank-you p{color:#ffffffd1;margin-bottom:28px;font-size:20px;line-height:1.55}@media (max-width:920px){.header-actions nav{display:none}.hero-inner,.split,.faq-grid{grid-template-columns:1fr}.hero-inner{align-items:start}.services-grid,.reviews-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.photo-stack,.site-footer{grid-template-columns:1fr}}@media (max-width:560px){body{padding-bottom:66px}.site-header{flex-direction:column;align-items:flex-start}.brand-logo{width:290px;max-width:min(290px,88vw)}.header-actions{align-items:stretch;width:100%}.header-actions a{text-align:center}.field-grid.two{grid-template-columns:1fr}.hero h1{font-size:clamp(38px,16vw,56px)}.gallery-grid{grid-template-columns:1fr}.photo-tile.large{min-height:260px}.sticky-mobile-cta{border-top:1px solid var(--line);z-index:50;background:#fff;grid-template-columns:.82fr 1.18fr;gap:8px;padding:8px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 30px #0000001f}.sticky-mobile-cta a{background:var(--night);color:#fff;letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:14px 10px;font-size:12px;font-weight:950;text-decoration:none}.sticky-mobile-cta a:last-child{background:var(--p2d-red)}}
