:root{--yellow:#ffe34f;--ink:#20221f;--cream:#f6f5ed;--muted:#686a61;--line:#d5d5ca;--pad:clamp(24px,4.4vw,86px)}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 Arial,Helvetica,sans-serif}::selection{background:var(--yellow);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:5px}p{margin:0 0 24px}h1,h2,h3{font-weight:500;line-height:1.05;letter-spacing:-.055em;margin:0}h1{font-size:clamp(52px,6.1vw,112px)}h2{font-size:clamp(38px,4.3vw,80px)}h3{font-size:28px;letter-spacing:-.035em}small,.eyebrow,.section-label{font-size:12px;letter-spacing:.07em}.section-label,.eyebrow{text-transform:uppercase;display:flex;gap:12px;align-items:center}.section-label:before,.eyebrow:before{content:'';width:7px;height:7px;background:currentColor}.skip{position:absolute;top:-80px;left:24px;z-index:9;background:var(--yellow);padding:12px}.skip:focus{top:10px}.masthead{background:#fff;display:flex;align-items:center;justify-content:space-between;padding:30px var(--pad);gap:30px;position:relative;z-index:5}.brand{font-size:27px;letter-spacing:-1.6px;font-weight:700;display:inline-flex;align-items:center;gap:13px;white-space:nowrap}.brand em{font-style:normal;font-weight:400}.circuit{display:inline-block;position:relative;width:31px;height:33px;border-top:4px solid;flex-shrink:0}.circuit:before{position:absolute;content:'';height:29px;border-left:4px solid;top:0;left:14px}.circuit:after{position:absolute;content:'';width:9px;height:7px;background:var(--yellow);left:0;bottom:0}.navigation{display:flex;align-items:center;gap:32px;font-size:14px}.navigation a{border-bottom:1px solid transparent;padding:8px 0}.navigation a:hover,.navigation a[aria-current]{border-color:currentColor}.navigation .nav-contact{display:flex;align-items:center;gap:24px;margin-left:28px}.arrow{display:inline-block;width:17px;height:17px;position:relative;transform:rotate(-45deg);transition:transform .3s;flex-shrink:0}.arrow:before{content:'';position:absolute;top:8px;width:16px;border-top:1.5px solid}.arrow:after{content:'';position:absolute;right:0;top:3px;width:10px;height:10px;border-right:1.5px solid;border-top:1.5px solid;transform:rotate(45deg)}a:hover .arrow,button:hover .arrow{transform:rotate(0)}.menu-toggle{display:none;border:0;background:none;color:var(--ink);padding:12px}.hero{display:grid;grid-template-columns:56% 44%;position:relative;background:var(--yellow)}.hero-copy{padding:56px var(--pad) 70px;display:flex;flex-direction:column;min-height:740px}.hero h1{margin:32px 0 48px;max-width:900px}.hero-bottom{margin-top:auto;display:flex;gap:30px;align-items:flex-end}.hero-bottom p{max-width:340px;font-size:14px;line-height:1.55;margin:0}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;padding:16px 23px;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:0;white-space:nowrap;font-size:14px;cursor:pointer;min-height:54px}.button.light{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.button:hover{background:#383c33;color:#fff}.photo{margin:0;position:relative;overflow:hidden;background:#d5d2c4;isolation:isolate}.photo img{width:100%;height:120%;position:absolute;left:0;top:-10%;object-fit:cover;will-change:transform}.hero-photo img{object-position:43% center}.photo figcaption{position:absolute;bottom:14px;right:18px;background:var(--cream);padding:4px 9px;font-size:10px;z-index:1}.hero-photo:after{content:'';position:absolute;width:72px;height:72px;bottom:60px;left:30px;background:var(--yellow);box-shadow:36px 36px 0 -18px var(--cream)}.service-nav{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr 1fr;margin:-25px var(--pad) 0 23%;background:var(--cream);box-shadow:0 15px 45px #20221f0b}.service-nav a{padding:28px 30px;min-height:180px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;gap:18px;transition:background .25s}.service-nav a:hover{background:#ececdf}.service-nav a:first-child{background:var(--yellow)}.service-nav a:last-child{background:var(--ink);color:var(--cream);border:0}.service-nav small{opacity:.65}.service-nav strong{display:flex;justify-content:space-between;gap:10px;font-size:22px;font-weight:500;line-height:1.15;letter-spacing:-.03em}.intro{display:grid;grid-template-columns:24% 76%;padding:110px var(--pad) 105px;gap:0}.intro h2{max-width:1100px}.intro p{max-width:660px;margin:35px 0 0 auto;color:var(--muted)}.services-block{background:var(--ink);color:var(--cream);padding:75px var(--pad);display:grid;grid-template-columns:43% 50%;gap:7%}.services-block h2{margin:32px 0 45px}.services-block .photo{min-height:540px}.service-row{border-top:1px solid #ffffff36;display:grid;grid-template-columns:40px 1fr 25px;gap:16px;padding:27px 0}.service-row h3{font-size:30px}.service-row p{color:#c5c6ba;margin:16px 0 0;font-size:14px;max-width:460px}.service-row small{color:var(--yellow)}.ribbon{height:520px}.ribbon img{object-position:center 62%}.ribbon-label{position:absolute;left:var(--pad);bottom:45px;background:var(--yellow);padding:24px 30px;width:360px;font-size:32px;letter-spacing:-.04em;line-height:1.15;z-index:1}.bath-section{padding:100px var(--pad);display:grid;grid-template-columns:48% 42%;gap:10%;align-items:center}.bath-section .photo{height:620px}.bath-copy h2{margin:28px 0}.bath-copy p{color:var(--muted)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid;padding:8px 0;margin-top:8px;font-size:14px}.prepare{padding:75px var(--pad) 90px;background:var(--yellow)}.prepare-top{display:grid;grid-template-columns:1fr 1fr;gap:12%;margin-top:30px;align-items:end}.prepare-top p{max-width:480px;margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.step{border-top:1px solid #20221f55;padding-top:22px}.step small{display:block;margin-bottom:30px}.step h3{font-size:26px;margin-bottom:16px}.step p{max-width:360px;font-size:14px;margin:0}.faq{padding:95px var(--pad);display:grid;grid-template-columns:34% 58%;gap:8%}.faq h2{margin-top:25px}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;background:none;border:0;color:inherit;text-align:left;padding:25px 0;display:flex;justify-content:space-between;gap:30px;font-size:18px;line-height:1.35;cursor:pointer}.plus{font-size:25px;font-weight:300;transition:transform .3s}.faq-question[aria-expanded=true] .plus{transform:rotate(45deg)}.faq-answer{height:0;overflow:hidden}.faq-answer p{padding:0 35px 26px 0;margin:0;color:var(--muted);font-size:15px}.business-footer{padding:70px var(--pad) 0;background:var(--ink);color:var(--cream);overflow:hidden}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-bottom:60px}.footer-top h2{font-size:clamp(38px,4.6vw,88px);max-width:780px}.footer-contacts{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-content:start;font-size:14px}.footer-contacts small{color:#b4b8a7;display:block;margin-bottom:12px}.footer-contacts a{display:block;margin-bottom:12px}.footer-contacts .text-link{display:inline-flex;grid-column:1/-1}.giant-word{font-size:clamp(72px,16vw,320px);font-weight:700;letter-spacing:-.075em;line-height:.95;white-space:nowrap;color:#34372f;margin:0 -6px -12px}.legal-line{padding:24px 0;border-top:1px solid #ffffff2a;font-size:11px;display:flex;gap:30px;justify-content:space-between}.subhero{padding:65px var(--pad);background:var(--yellow);display:grid;grid-template-columns:1.3fr 1fr;gap:12%;align-items:end}.subhero h1{font-size:clamp(52px,6vw,112px);margin-top:30px}.subhero p{max-width:500px;margin:0}.detail-list{padding:30px var(--pad) 80px}.service-detail{padding:65px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:40% 50%;gap:10%}.service-detail h2{font-size:clamp(40px,4vw,68px);margin-top:25px}.service-detail li{padding:12px 0;border-bottom:1px solid var(--line)}.service-detail ul{list-style:none;margin:25px 0;padding:0}.service-detail p{color:var(--muted)}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:85px var(--pad)}.company-grid .photo{min-height:600px}.company-grid h2{margin:30px 0}.company-grid p{color:var(--muted)}.contact-grid{display:grid;grid-template-columns:36% 56%;gap:8%;padding:80px var(--pad) 100px}.contact-aside a{display:block;font-size:clamp(20px,2vw,34px);letter-spacing:-.04em;margin:12px 0;overflow-wrap:anywhere}.contact-aside .section-label{margin-top:30px}.contact-aside p{color:var(--muted);font-size:14px;margin-top:25px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:flex;flex-direction:column;gap:9px;font-size:13px}.full{grid-column:1/-1}input,select,textarea{width:100%;min-width:0;background:transparent;border:1px solid #aeb0a3;border-radius:0;padding:15px;color:var(--ink);font-size:16px;transition:border-color .2s,box-shadow .2s}textarea{min-height:140px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--ink);outline-offset:2px;border-color:var(--ink);box-shadow:5px 5px 0 var(--yellow)}[aria-invalid=true]{border-color:#a13125;background:#fff8f4}#form-notice{font-size:13px;color:var(--muted);margin:22px 0}#form-status{font-size:14px;margin-top:20px}body:has(.menu-toggle[aria-expanded=true]){overflow:hidden}@media(min-width:1600px){.hero-copy{min-height:880px}.hero h1{max-width:900px}.hero-bottom p{max-width:400px}.service-nav a{min-height:210px}.hero-bottom{gap:55px}.ribbon{height:640px}}@media(max-width:1100px){.navigation{gap:20px}.navigation .nav-contact{margin-left:0}.hero-bottom{display:block}.hero-bottom p{margin-bottom:24px}.hero-copy{min-height:710px}.service-nav{margin-left:var(--pad)}.service-nav a{padding:24px}.services-block{grid-template-columns:40% 53%}.hero h1{font-size:65px}.contact-grid{grid-template-columns:36% 57%;gap:7%}}@media(max-width:760px){.masthead{padding:22px 24px}.brand{font-size:24px}.menu-toggle{display:block}.navigation{display:none;position:absolute;left:0;right:0;top:100%;background:var(--cream);padding:28px 24px 40px;border-top:1px solid var(--line);flex-direction:column;align-items:stretch;gap:12px;box-shadow:0 30px 30px #0002}.navigation.open{display:flex}.navigation a{font-size:25px;padding:12px 0}.navigation .nav-contact{justify-content:space-between}.hero{grid-template-columns:1fr}.hero-copy{padding:35px 24px 40px;min-height:0}.hero h1{font-size:clamp(49px,10.9vw,75px);margin:28px 0 30px;max-width:600px}.hero-bottom p{font-size:13px;max-width:440px;margin-bottom:24px}.hero-photo{height:370px}.hero-photo img{object-position:center 45%}.hero-photo:after{width:44px;height:44px;bottom:40px;left:24px;box-shadow:22px 22px 0 -11px var(--cream)}.service-nav{margin:-24px 24px 0;grid-template-columns:1fr;box-shadow:none}.service-nav a{min-height:100px;padding:20px;border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;gap:15px}.service-nav strong{font-size:20px;flex:1}.service-nav small{font-size:10px}.intro{display:block;padding:65px 24px}.intro h2{margin-top:26px}.intro p{margin-top:25px}.services-block{padding:50px 24px;grid-template-columns:1fr;gap:36px}.services-block .photo{min-height:300px}.services-block h2{margin:0 0 32px}.service-row{padding:23px 0;grid-template-columns:30px 1fr 20px;gap:12px}.service-row h3{font-size:27px}.service-row p{font-size:14px}.ribbon{height:380px}.ribbon-label{left:24px;bottom:30px;max-width:260px;font-size:26px;padding:18px}.bath-section{display:flex;flex-direction:column-reverse;gap:32px;padding:60px 24px}.bath-section .photo{height:380px;width:100%}.bath-copy h2{margin:24px 0}.prepare{padding:50px 24px}.prepare-top{display:block}.prepare-top p{margin-top:25px}.steps{grid-template-columns:1fr;gap:25px;margin-top:35px}.step{display:grid;grid-template-columns:30px 1fr;gap:15px}.step small{grid-row:1/3;margin:0}.step h3{margin:0;font-size:25px}.step p{grid-column:2}.faq{display:block;padding:60px 24px}.faq h2{margin:20px 0 28px}.faq-question{font-size:17px;padding:22px 0}.business-footer{padding:50px 24px 0}.footer-top{grid-template-columns:1fr;gap:40px;padding-bottom:45px}.footer-contacts{font-size:13px;gap:20px}.giant-word{font-size:16vw}.legal-line{display:block;font-size:10px}.legal-line span{display:block;margin-bottom:8px}.subhero{display:block;padding:40px 24px}.subhero h1{font-size:52px;margin:24px 0}.subhero p{font-size:15px}.detail-list{padding:0 24px 50px}.service-detail{grid-template-columns:1fr;gap:30px;padding:45px 0}.service-detail h2{font-size:40px;margin:20px 0 0}.company-grid{padding:50px 24px;grid-template-columns:1fr;gap:35px}.company-grid .photo{min-height:360px}.contact-grid{grid-template-columns:1fr;padding:40px 24px 60px;gap:35px}.contact-aside a{font-size:27px}.form-fields{grid-template-columns:1fr;gap:20px}.full{grid-column:1}.button{min-height:54px}body:has(.menu-toggle[aria-expanded=true]){overflow:visible}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.photo img{transform:none!important;will-change:auto}}
