/* Homepage-only design. Other service pages and all application screens are unchanged. */
.clean-home{background:#faf9f6}
.clean-home .topline{background:#08214b}
.clean-home .site-header{height:110px;padding-inline:max(4vw,24px);gap:28px;background:#faf9f6;box-shadow:none}
.clean-home .brand{flex-shrink:0}
.clean-home #navigation{width:auto;flex:1;justify-content:flex-end;gap:32px}
.clean-home #navigation a{font-size:14px;white-space:nowrap}
.clean-home #navigation .nav-cta{background:#e66c10;color:white;border-color:#e66c10;padding:16px 25px;min-height:48px}
.clean-home .call-strip{background:#f0eee8;color:#08214b;border-block:1px solid #deded6;padding-block:8px;font-size:13px}
.clean-home .hero{margin:30px max(4vw,24px) 0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);min-height:560px;background:#faf9f6;color:#08214b;gap:36px}
.clean-home .hero-copy{padding:34px 0;justify-content:center;min-width:0}
.clean-home .hero-copy .kicker{font-size:11px;letter-spacing:.13em;color:#ad4800;line-height:1.6}
.clean-home .hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(44px,5.2vw,78px);letter-spacing:-.045em;line-height:1.08;margin:24px 0}
.clean-home .hero-copy .clean-hero-offer{color:#59646b;font-size:clamp(17px,1.6vw,23px);line-height:1.65;max-width:490px}
.clean-home .hero-actions{align-items:flex-start;flex-direction:column;gap:22px;margin-top:26px}
.clean-home .hero-actions .button{background:#e66c10;color:white;border-radius:3px;min-height:52px;padding:17px 26px;font-size:15px;justify-content:center}
.clean-home .hero-actions .text-link{color:#08214b;border:0;font-size:15px}
.clean-home .hero-image{min-height:560px;max-height:680px}
.clean-home .hero-image img{height:100%;width:100%;object-fit:cover;object-position:56% center}
.clean-home .hero-image:after{display:none}
.clean-home .image-tag{left:auto;right:20px;bottom:20px;min-width:0;padding:14px 18px;box-shadow:none}
.clean-home .image-tag span{color:#08214b;font-size:10px;margin:0}
.clean-home .image-tag strong{font-size:13px;display:block;margin-top:5px}
.clean-home .service-pathways{background:#faf9f6;padding:48px max(4vw,24px);border-bottom:1px solid #deded6}
.clean-home .pathways-heading{margin-bottom:26px}
.clean-home .pathways-heading h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:34px;letter-spacing:-.03em}
.clean-home .pathways-heading>p:last-child{font-size:15px}
.clean-home .pathway-card{border:0;background:transparent}
.clean-home .pathway-card img{height:190px}
.clean-home .pathway-card>div{padding:20px 0 0}
.clean-home .pathway-card h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:27px;letter-spacing:-.025em}
.clean-home .pathway-card:hover{background:transparent}
.clean-home .work{background:#faf9f6;padding-block:62px}
.clean-home .section-head h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em;font-size:clamp(34px,4vw,52px)}
.clean-home .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.clean-home .gallery figure{background:transparent;min-height:0;overflow:visible}
.clean-home .gallery img{width:100%;height:330px!important;object-fit:cover;object-position:center;transform:none}
.clean-home .gallery figure:first-child{grid-column:1/-1}
.clean-home .gallery figure:first-child img{height:auto!important;max-height:480px;object-fit:cover;aspect-ratio:2.1}
.clean-home .gallery figcaption{position:static;background:none;color:#08214b;padding:18px 0 0}
.clean-home .gallery figcaption span{color:#59646b;font-size:10px;line-height:1.6}
.clean-home .gallery figcaption strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:24px;font-weight:400;margin-top:5px}
.clean-home .statement,.clean-home .services,.clean-home .construction-directory,.clean-home .process,.clean-home .family{padding-block:62px}
.clean-home #submit-project.project-intake-short{padding-block:64px}
.clean-home #submit-project h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}
@media(max-width:1100px){.clean-home #navigation{gap:20px}.clean-home .site-header{gap:22px}.clean-home .hero{gap:26px;min-height:490px}.clean-home .hero-image{min-height:490px}}
@media(max-width:900px){.clean-home .site-header{height:90px;flex-wrap:nowrap}.clean-home #navigation{display:none;position:absolute;top:100%;left:0;right:0;width:100%;background:#faf9f6;padding:24px;align-items:stretch;flex-direction:column;gap:12px;z-index:20;box-shadow:0 10px 16px #08214b18}.clean-home #navigation.open{display:flex}.clean-home #navigation a{padding:12px}.clean-home .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px}.clean-home .hero{grid-template-columns:1fr;gap:10px}.clean-home .hero-copy{padding:22px 0}.clean-home .hero h1{max-width:620px}.clean-home .hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap}.clean-home .hero-image{min-height:0;height:420px;max-height:none}.clean-home .hero-image img{object-position:center}.clean-home .gallery img{height:260px!important}}
@media(max-width:640px){.clean-home .site-header{padding-inline:20px}.clean-home .hero{margin:16px 20px 0}.clean-home .hero h1{font-size:48px}.clean-home .hero-actions .button{width:auto}.clean-home .hero-image{height:290px}.clean-home .image-tag{bottom:12px;right:12px;padding:10px 12px}.clean-home .image-tag strong{font-size:11px}.clean-home .service-pathways{padding:36px 20px}.clean-home .pathway-grid{grid-template-columns:1fr;gap:26px}.clean-home .pathway-card img{height:230px}.clean-home .work{padding:42px 20px}.clean-home .gallery{grid-template-columns:1fr;gap:30px}.clean-home .gallery figure:first-child{grid-column:auto}.clean-home .gallery figure:first-child img{aspect-ratio:auto}.clean-home .gallery img{height:280px!important}.clean-home .section-head{gap:20px}.clean-home .call-strip{font-size:12px}.clean-home .call-strip>span{display:none}}
@media(prefers-reduced-motion:reduce){.clean-home .button{transition:none}}

/* Explicit link color prevents the legacy white call-strip link losing contrast. */
.clean-home .call-strip a{color:#08214b}
.clean-home .call-strip a:hover{color:#ad4800}

/* Keep the project caption clear of the existing bottom-right assistant. */
.clean-home .hero-image .image-tag{top:20px;left:20px;right:auto;bottom:auto}
@media(max-width:640px){.clean-home .hero-image .image-tag{top:12px;left:12px;right:auto;bottom:auto}}

/* One appearance per project photo on the homepage; service choices stay concise. */
.clean-home .hero-project-link{display:block;width:100%;height:100%}
.clean-home .pathway-card{border-top:1px solid #deded6;padding-top:4px}
.clean-home .pathway-card>div{padding:20px 0 0}
.clean-home .gallery figure:first-child{grid-column:auto}
.clean-home .gallery figure:first-child img{height:330px!important;max-height:none;aspect-ratio:auto}
@media(max-width:900px){.clean-home .gallery figure:first-child img{height:260px!important}}
@media(max-width:640px){.clean-home .gallery figure:first-child img{height:280px!important}}

/* Blend the original two-piece JPEG logo into the cream homepage header. */
.clean-home .site-header .brand-symbol,.clean-home .site-header .brand-wordmark{background:transparent}
.clean-home .site-header .brand-symbol img,.clean-home .site-header .brand-wordmark img{mix-blend-mode:multiply}

/* Center the visible mobile wordmark independently of the emblem and menu.
   Original artwork ink spans x=103..1169 of 1254: 50.72% optical center. */
@media(max-width:900px){
  .clean-home .site-header .brand{position:static;min-height:44px}
  .clean-home .site-header .brand-wordmark{position:absolute;left:50%;top:50%;transform:translate(-50.72%,-50%)}
  .clean-home .site-header .menu-toggle{min-width:44px;min-height:44px}
}

/* The centering transform creates a stacking context: blend the entire
   wordmark layer with the cream header, not the image inside that layer. */
@media(max-width:900px){
  .clean-home .site-header .brand-wordmark{mix-blend-mode:multiply}
  .clean-home .site-header .brand-wordmark img{mix-blend-mode:normal}
}

/* Match the emblem's visible height to the complete wordmark, preserving
   the original aspect ratio and the independently centered business name. */
@media(max-width:900px){
  .clean-home .site-header .brand-symbol{width:72px;height:48px;top:-7.5px}
  .clean-home .site-header .brand-symbol img{width:72px}
}
@media(max-width:740px){
  .clean-home .site-header .brand-symbol{width:57px;height:38px;top:-5.6px}
  .clean-home .site-header .brand-symbol img{width:57px}
}
@media(max-width:360px){
  .clean-home .site-header .brand-symbol{width:50px;height:34px;top:-7.5px}
  .clean-home .site-header .brand-symbol img{width:50px}
}
