/* Section treatments follow the content: options, preparation, process and imagery. */
.service-introduction{padding:65px 0 80px;border-top:1px solid #ddd}
.service-intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}
.service-intro-copy h2{font-size:clamp(36px,3.7vw,58px);margin:20px 0 0;line-height:1.06;letter-spacing:-.045em}
.service-intro-copy h2 em{font-style:normal;color:#919191}
.service-intro-copy>p{font-size:15px;line-height:1.9;color:#737373;margin:0;max-width:52ch}
.service-feature-band{list-style:none;margin:52px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.service-feature-band li{font-size:20px;line-height:1.4;letter-spacing:-.025em;padding:23px 18px 0 0;border-top:2px solid #222}
.project-preparation{background:#171717;color:#fff;padding:55px 5%;margin-top:18px;margin-bottom:35px}
.project-preparation header{display:flex;align-items:flex-end;justify-content:space-between;gap:8%}
.project-preparation header>div{flex:1}.project-preparation header>p{max-width:32ch;font-size:13px;line-height:1.85;color:#bdbdbd;margin:0 0 5px}
.project-preparation .eyebrow{color:#bebebe;font-size:9px}
.project-preparation h2{font-size:clamp(32px,3.7vw,52px);letter-spacing:-.045em;line-height:1.08;margin:22px 0 0}
.project-preparation h2 em{font-style:normal;color:#aaa}
.preparation-checklist{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding:0;margin:45px 0 32px}
.preparation-checklist li{border-top:1px solid #505050;padding:26px 0 0;position:relative}
.prep-mark{display:block;width:17px;height:17px;border:1px solid #969696;margin-bottom:22px;position:relative}
.prep-mark:after{content:'';position:absolute;width:5px;height:5px;inset:5px;border:1px solid #969696}
.preparation-checklist h3{font-size:21px;font-weight:400;letter-spacing:-.025em;margin:0 0 11px}
.preparation-checklist p{font-size:13px;line-height:1.8;color:#bdbdbd;max-width:27ch;margin:0}
.preparation-link{display:flex;align-items:center;justify-content:space-between;gap:25px;width:fit-content;min-height:44px;border-bottom:1px solid #777;font-size:12px;padding:10px 0;color:#fff}
.preparation-link:hover{border-color:white}.preparation-link:focus-visible{outline:2px solid white;outline-offset:5px}
.service-film-section{grid-template-columns:1fr 1.05fr;gap:11%;background:#f4f3f1}
.service-film{grid-column:1;grid-row:1}.service-film-copy{grid-column:2;grid-row:1}
.service-film-copy>p:not(.eyebrow){max-width:42ch}
.service-project{grid-template-columns:1.25fr .75fr;gap:10%}
.service-project>a{grid-column:1;grid-row:1}.service-project>div{grid-column:2;grid-row:1}
.service-row{grid-template-columns:150px minmax(0,1fr) 35px;gap:40px;align-items:center}
.service-row>img{grid-column:1;grid-row:1;width:150px;height:160px;object-fit:cover}
.service-row>div{grid-column:2;grid-row:1}.service-row>.service-arrow{grid-column:3;grid-row:1}
.service-row h2{font-size:clamp(30px,3.3vw,48px)}
.design-journey{padding:75px 0}
.journey-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:34px 0 0;padding:0}
.journey-list li{position:relative;padding:0 45px 0 0;min-width:0}
.journey-list li:before{content:'';height:1px;background:#d6d6d6;position:absolute;top:23px;left:46px;right:0}
.journey-list li:last-child:before{display:none}
.journey-number{position:relative;display:flex;align-items:center;justify-content:center;border:1px solid #ccc;border-radius:50%;width:47px;height:47px;font-size:11px;background:#fff}
.journey-list h2{font-size:29px;line-height:1.12;letter-spacing:-.03em;margin:27px 0 16px}
.journey-list p{font-size:13px;line-height:1.9;color:#777;margin:0}
.studio-callout .studio-help{margin:28px auto 0;padding-top:23px;border-top:1px solid #ddd;max-width:610px;font-size:12px}
.studio-help a{text-decoration:underline;text-underline-offset:4px}
.about-values{background:#f5f4f2;padding:45px 4%;gap:5%;margin-top:10px;margin-bottom:65px}
.about-values>div{border-left:1px solid #ccc;padding-left:25px}
.about-values h2{margin-top:0;font-size:28px}.about-values .eyebrow{display:none}
.craft-copy .craft-row{display:block;padding:18px 0;border-top:0;border-bottom:1px solid #ddd;margin:0}
.craft-row>div{display:grid;grid-template-columns:145px 1fr;gap:22px;align-items:baseline}
.craft-copy .craft-row h3{font-size:16px;line-height:1.3;margin:0;font-weight:400}
.craft-copy .craft-row p{font-size:12px;line-height:1.8;margin:0}
.home-questions{display:block;border-top:1px solid #ddd;padding-top:65px}
.home-questions>div:first-child{display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px}
.home-questions>div:first-child>.eyebrow{grid-column:1/-1;margin:0}
.home-questions h2{margin:0;font-size:clamp(36px,3.7vw,54px)}
.home-questions>div:first-child>.text-link{margin:0 0 6px}
.home-questions .faq{display:grid;grid-template-columns:1fr 1fr;gap:0 55px;align-items:start;margin-top:35px}
.home-questions .faq details{border-bottom:1px solid #ddd}
.home-questions .faq details:nth-child(2){border-top:1px solid #ddd}
.home-questions .faq summary{min-height:78px;align-items:center}
.home-questions .faq details:last-child{border-bottom:1px solid #ddd}
.location-number{display:block;font-size:10px;letter-spacing:.1em}
.mega-services .mega-service{grid-template-columns:1fr auto;gap:14px}
.project-zoom:focus-visible{outline:2px solid #111;outline-offset:5px}
.shower-projects{padding:25px 0 70px}.shower-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 28px;margin-top:40px}
.shower-project-grid figure,.shower-film-grid figure,.shower-detail-grid figure,.shelf-project figure{margin:0;min-width:0}
.shower-project-grid .project-zoom{height:auto;aspect-ratio:3/4;background:#f4f3f1}.shower-project-grid .project-zoom img{object-fit:contain}
.shower-project-grid .shower-project-lead{grid-column:1/-1;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:8%;background:#f4f3f1}
.shower-project-lead .project-zoom{max-height:720px}.shower-project-lead figcaption{padding:30px 18% 30px 0}
.shower-projects h3,.shower-film-grid h3,.shower-detail-grid h3{font-size:25px;line-height:1.15;letter-spacing:-.03em;margin:19px 0 10px;font-weight:400}
.shower-project-lead h3{font-size:40px;max-width:10ch}.shower-projects figcaption p,.shower-film-grid figcaption p,.shower-detail-grid figcaption p{font-size:12px;color:#777;line-height:1.8}
.shower-film-section{padding:65px 0;background:#171717;color:#fff;margin:15px 0 75px}.shower-film-section .eyebrow{color:#aaa}.shower-film-section .section-heading>p{color:#bbb}.shower-film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:38px}.shower-film-grid video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#111}.shower-film-grid h3{font-size:23px}.shower-film-grid figcaption p{color:#bdbdbd}
.shower-details{display:grid;grid-template-columns:.7fr 1.3fr;gap:7%;padding:15px 0 80px;align-items:start}.shower-details header{padding-top:35px}.shower-details h2,.shelf-project h2{font-size:clamp(34px,3.6vw,54px);line-height:1.08;letter-spacing:-.04em;margin:20px 0 25px}.shower-details header>p:not(.eyebrow){font-size:14px;color:#777;line-height:1.9;max-width:32ch}.shower-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.shower-detail-grid .project-zoom{height:auto;aspect-ratio:2/3}.shower-detail-grid .project-zoom img{object-fit:contain}.shower-detail-grid figure:nth-child(2){padding-top:75px}.shower-detail-grid h3{font-size:22px}
.shelf-project{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:center;padding:10px 0 75px}.shelf-project .project-zoom{height:auto;aspect-ratio:3/4;max-height:740px;background:#f4f3f1}.shelf-project .project-zoom img{object-fit:contain}.shelf-project figcaption{font-size:9px;letter-spacing:.12em;color:#777;padding-top:17px}.shelf-project>div>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#777;margin:18px 0}.shelf-project .text-link{margin-top:15px}
@media(max-width:960px){.shower-project-lead h3{font-size:32px}.shower-film-grid{gap:18px}.shower-film-grid h3{font-size:21px}.shower-details{grid-template-columns:1fr;gap:30px}.shower-details header{max-width:550px;padding:0}.shower-details header>p:not(.eyebrow){max-width:50ch}.shower-detail-grid{max-width:750px;margin-left:auto}.shelf-project{gap:6%}}
@media(max-width:640px){.shower-projects{padding:15px 0 45px}.shower-projects .section-heading,.shower-film-section .section-heading{display:block}.shower-projects .section-heading>p,.shower-film-section .section-heading>p{margin-top:20px}.shower-project-grid{display:block;margin-top:30px}.shower-project-grid figure{margin-bottom:32px}.shower-project-grid .shower-project-lead{display:block;background:transparent}.shower-project-lead figcaption{padding:0}.shower-project-lead h3{font-size:26px;max-width:none}.shower-film-section{padding:40px 0;margin-bottom:45px}.shower-film-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding-bottom:22px}.shower-film-grid figure{flex:0 0 85%;scroll-snap-align:start}.shower-film-grid video{max-height:580px}.shower-details{padding-bottom:45px}.shower-details h2,.shelf-project h2{font-size:37px}.shower-detail-grid{gap:16px}.shower-detail-grid figure:nth-child(2){padding-top:48px}.shower-detail-grid h3{font-size:18px}.shower-detail-grid figcaption p{font-size:11px}.shelf-project{display:flex;flex-direction:column-reverse;align-items:stretch;gap:30px;padding-bottom:45px}.shelf-project figure{width:100%}}
@media(max-width:960px){.service-feature-band{gap:24px}.service-feature-band li{font-size:17px}.project-preparation{padding:40px 4%}.preparation-checklist{gap:25px}.project-preparation header>p{max-width:26ch}.service-project{gap:7%}.craft-row>div{grid-template-columns:1fr;gap:5px}.journey-list li{padding-right:26px}.journey-list h2{font-size:25px}.home-questions .faq{gap:0 30px}.about-values h2{font-size:24px}}
@media(max-width:640px){
  .service-introduction{padding:40px 0 45px}.service-intro-copy{display:block}.service-intro-copy h2{font-size:37px;margin:18px 0 25px}.service-intro-copy>p{font-size:14px}
  .service-feature-band{grid-template-columns:1fr;margin-top:30px;gap:0}.service-feature-band li{font-size:17px;line-height:1.5;padding:17px 0;border-top:1px solid #bbb}
  .project-preparation{padding:32px 24px;margin-top:10px;margin-bottom:25px}.project-preparation header{display:block}.project-preparation h2{font-size:33px}.project-preparation header>p{max-width:none;margin:22px 0 0;font-size:12px}
  .preparation-checklist{grid-template-columns:1fr;gap:0;margin:30px 0 20px}.preparation-checklist li{padding:22px 0 22px 35px}.prep-mark{position:absolute;left:0;top:25px;width:14px;height:14px;margin:0}.prep-mark:after{inset:4px;width:4px;height:4px}.preparation-checklist h3{font-size:19px;margin:0 0 8px}.preparation-checklist p{font-size:12px;max-width:none}
  .service-film-section{grid-template-columns:1fr;gap:30px}.service-film-copy{grid-column:auto;grid-row:1}.service-film{grid-column:auto;grid-row:2}.service-project>a,.service-project>div{grid-column:auto;grid-row:auto}
  .service-row{grid-template-columns:70px minmax(0,1fr) 20px;gap:16px;padding:22px 0}.service-row>img{display:block;width:70px;height:100px}.service-row h2{font-size:25px}.service-row p{font-size:11px}.service-arrow{font-size:22px}
  .design-journey{padding:40px 0}.journey-list{display:block;margin-top:25px}.journey-list li{padding:0 0 30px 65px;min-height:130px}.journey-number{position:absolute;left:0;top:0;width:42px;height:42px}.journey-list li:before{top:42px;left:21px;bottom:0;right:auto;width:1px;height:auto}.journey-list h2{font-size:28px;margin:0 0 14px;padding-top:8px}.journey-list p{font-size:13px}.journey-list li:last-child{padding-bottom:0}
  .about-values{padding:25px 24px;margin-bottom:40px}.about-values>div{border-left:0;padding:23px 0}.about-values>div:first-child{border-top:0}.about-values h2{font-size:27px;margin:0 0 15px}
  .craft-copy .craft-row{padding:16px 0}.craft-row>div{grid-template-columns:1fr;gap:6px}.craft-copy .craft-row h3{font-size:17px}
  .home-questions{padding-top:40px}.home-questions>div:first-child{display:block}.home-questions h2{font-size:37px;margin:20px 0 25px}.home-questions .faq{grid-template-columns:1fr;margin-top:24px;gap:0}.home-questions .faq summary{min-height:72px}
  .home-questions .faq details:nth-child(2){border-top:0}
}
