/* Give the logo and the brand illustration clear priority in the opening. */
.site-header,.site-header.site-header--scrolled{height:104px;background:#fffffff7}
.site-header .brand img{width:242px;height:76px;padding:0;object-fit:contain}
.hero{display:block;min-height:0;padding-top:150px;padding-bottom:38px;background:linear-gradient(135deg,#f8f6f0,#f1eee5)}
.hero-inner{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:52px;align-items:center}
.hero-content{padding-block:4px}
.hero .hero-heading-with-logo{gap:24px!important;align-items:flex-start!important}
.hero .hero-company-logo{width:142px!important;height:142px!important;object-fit:contain;border:1px solid #dfdfd2;background:white;box-shadow:0 12px 36px #19372c0c!important}
.hero .eyebrow{font-size:11px;color:#416749;margin-bottom:22px;letter-spacing:.025em}
.hero h1{font-size:clamp(32px,3vw,43px);font-weight:700;line-height:1.65;letter-spacing:-.035em}
.hero h1 span{color:#226347}
.hero .hero-content>p{font-size:16px;line-height:2;color:#52685c;margin-top:19px;max-width:490px}
.hero .hero-actions{margin-top:24px;gap:12px}
.hero .hero-actions .button{border-radius:9px;min-height:54px;font-size:14px;padding:15px 21px}
.hero .trust-row{font-size:11px;margin-top:23px;padding-top:18px;gap:17px}
.brand-hero-stack{align-self:center;padding:0;min-width:0}
.brand-hero-stack .brand-hero-figure{aspect-ratio:1.42;margin:0 -12px 0 0;border:1px solid #e6dfcf;border-radius:24px;background:#eee7da;box-shadow:0 18px 54px #4c4b3110}
.brand-hero-stack .brand-hero-figure img{object-fit:cover;object-position:center;width:100%;height:100%}
.hero-search-band{margin-top:36px}
.hero-search-band .home-helper{margin:0;padding:22px 28px;border-radius:14px;border:1px solid #dedfd4;box-shadow:none;background:#ffffffeb;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:6px 32px;align-items:center}
.hero-search-band .helper-label{grid-column:1;grid-row:1;font-size:10px}
.hero-search-band .home-helper h2{grid-column:1;grid-row:2;font-size:22px;line-height:1.6;margin:0}
.hero-search-band .home-helper form{grid-column:2;grid-row:1/3}
.hero-search-band .helper-shortcuts{grid-column:2;grid-row:3;margin:8px 0 0}
.hero-search-band .helper-account{grid-column:1;grid-row:3;padding:10px 0 0;border-top:0;justify-content:flex-start;align-items:center;gap:20px;font-size:11px}
.hero-search-band .helper-account strong{display:inline;margin-inline-start:4px}
.hero-search-band .helper-account>span:last-child{font-size:20px}
html[lang=en] .hero h1{font-size:clamp(34px,3.4vw,46px);line-height:1.2;letter-spacing:-.035em}
@media(min-width:1500px){.hero-inner{max-width:1400px;gap:76px}.hero-search-band{max-width:1400px}.brand-hero-stack .brand-hero-figure{aspect-ratio:1.42}}
@media(max-width:1100px){.site-header .brand img{width:222px;height:68px}.hero-inner{gap:30px;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}.hero .hero-company-logo{width:128px!important;height:128px!important}.hero h1{font-size:34px}.hero .hero-actions .button{width:100%;justify-content:center;min-height:48px}.brand-hero-stack .brand-hero-figure{margin:0;aspect-ratio:1.12}.hero-search-band{margin-top:30px}}
@media(max-width:700px){html{scroll-padding-top:154px}.site-header,.site-header.site-header--scrolled{height:auto;min-height:131px}.site-header .brand img{width:205px;max-width:100%;height:62px}.site-header .header-inner{padding-block:10px;gap:8px}.site-header .header-inner>.brand{min-width:0}.site-header .language-toggle{padding:8px 9px}.site-header .menu-button{width:36px;height:36px}.hero{padding-top:161px;padding-bottom:28px}.hero-inner{display:block}.hero .hero-heading-with-logo{flex-direction:column-reverse!important;gap:18px!important;align-items:center!important}.hero .hero-company-logo{width:118px!important;height:118px!important;order:0}.hero-content{text-align:center}.hero .eyebrow{display:none}.hero h1{font-size:28px;line-height:1.7;letter-spacing:-.035em;width:100%;margin:0}.hero h1 span{font-size:.93em}.hero .hero-content>p{font-size:14px;line-height:1.9;margin:17px auto 0;max-width:360px}.brand-hero-mobile{display:block;aspect-ratio:1.42;margin:22px -9px 0;border-radius:17px;border:1px solid #dfd8c8;box-shadow:0 10px 32px #5351320d}.brand-hero-mobile img{object-fit:cover;object-position:center;width:100%;height:100%}.brand-hero-stack{display:none}.hero .hero-actions{margin-top:23px;display:grid;grid-template-columns:1fr;gap:9px}.hero .hero-actions .button{width:100%;min-height:49px;font-size:14px;padding:13px 17px}.hero .trust-row{justify-content:center;gap:10px;margin-top:20px;padding-top:16px;font-size:10px}.hero-search-band{margin-top:25px}.hero-search-band .home-helper{display:block;padding:22px;text-align:start}.hero-search-band .helper-label{font-size:10px}.hero-search-band .home-helper h2{font-size:21px;margin:5px 0 16px}.hero-search-band .helper-shortcuts{margin-top:13px;margin-bottom:17px;gap:6px}.hero-search-band .helper-shortcuts button{font-size:10px}.hero-search-band .helper-account{border-top:1px solid #e5ebe1;padding-top:16px;justify-content:space-between}.hero-search-band .helper-account strong{display:block;margin-inline-start:0}html[lang=en] .hero h1{font-size:29px;line-height:1.25}html[lang=en] .hero .hero-company-logo{width:118px!important;height:118px!important}}
@media(max-width:359px){.site-header .brand img{width:167px;height:55px}.site-header,.site-header.site-header--scrolled{min-height:123px}.hero{padding-top:149px}.hero h1{font-size:25px}.hero .hero-company-logo{width:106px!important;height:106px!important}.brand-hero-mobile{margin-inline:-5px}.hero .trust-row{gap:8px;font-size:9px}}
/* The service guide is visible immediately and links directly to the customer portal. */
.brand-hero-figure,.brand-hero-mobile{position:relative}
.hero-service-guide{position:absolute;inset:6% 5% auto auto;width:39%;max-width:280px;transform:rotate(-6deg);transform-origin:center;display:block;background:#fff;border:4px solid #fff;border-radius:12px;box-shadow:0 15px 38px #052e3245;overflow:hidden;text-decoration:none;transition:transform .2s ease;z-index:2}
.brand-hero-stack .brand-hero-figure .hero-service-guide img,.brand-hero-mobile .hero-service-guide img{display:block;width:100%;height:auto;object-fit:contain}
.hero-service-guide>span{display:block;padding:8px 4px;background:#176747;color:#fff;font-size:12px;font-weight:700;text-align:center}
.hero-service-guide:hover,.hero-service-guide:focus-visible{transform:rotate(-2deg) translateY(-3px)}
.gallery-service-guide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;background:#f3f6ef;border:1px solid #d7e2d5;border-radius:18px;overflow:hidden}
.gallery-guide-image{display:flex;justify-content:center;background:#e7eee5;padding:24px}
.gallery-service-guide .gallery-guide-image img{display:block;width:auto;max-width:100%;height:auto;max-height:620px;object-fit:contain;border-radius:10px}
.gallery-service-guide .gallery-copy{padding:32px;line-height:1.9}.gallery-service-guide .gallery-copy strong{font-size:27px;color:#163e32}.gallery-service-guide .gallery-copy a{display:inline-block;background:#176747;color:#fff;padding:12px 20px;border-radius:8px;text-decoration:none;font-weight:700;margin-top:14px}
@media(max-width:700px){.hero-service-guide{width:40%;inset:5% 5% auto auto;border-width:3px;border-radius:8px}.hero-service-guide>span{font-size:9px;padding:5px 2px}.gallery-service-guide{grid-template-columns:1fr}.gallery-guide-image{padding:18px}.gallery-service-guide .gallery-copy{padding:23px}.gallery-service-guide .gallery-copy strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){.hero-service-guide{transition:none}}

/* Full-length service artwork, integrated into the photo gallery. */
.gallery-service-stories{grid-column:1/-1;min-width:0;padding:clamp(18px,3vw,36px);background:#f3f6ef;border:1px solid #d7e2d5;border-radius:22px}
.gallery-stories-heading{text-align:center;margin:0 auto 26px;max-width:680px;color:#163e32}.gallery-stories-heading h3{font-size:clamp(25px,3vw,36px);line-height:1.4;margin:8px 0}.gallery-stories-heading p{color:#526b60;line-height:1.8;margin:0}
.gallery-stories-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:960px;margin:auto}
.gallery-story-card{min-width:0;background:#fff;border:1px solid #dce5dc;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px #163e3209}
.gallery-story-image{position:relative;display:block;background:#e9eee4;text-decoration:none}.gallery-service-stories .gallery-story-image img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:941/1672;object-fit:contain;border-radius:0}
.gallery-story-image>span{position:absolute;inset:auto 12px 12px auto;padding:7px 12px;border-radius:99px;background:#ffffffeb;color:#163e32;font-size:12px;font-weight:700;box-shadow:0 2px 8px #0001}
.gallery-story-copy{padding:22px;line-height:1.8}.gallery-story-copy h4{margin:0;font-size:22px;color:#163e32}.gallery-story-copy p{margin:8px 0 16px;color:#526b60}.gallery-story-copy>a{display:inline-block;background:#176747;color:#fff;padding:10px 20px;border-radius:9px;font-weight:700;text-decoration:none}.gallery-story-image:focus-visible,.gallery-story-copy>a:focus-visible{outline:3px solid #ba963f;outline-offset:-3px}
@media(max-width:600px){.gallery-stories-grid{grid-template-columns:1fr;gap:20px}.gallery-story-card{width:100%;max-width:430px;margin-inline:auto}.gallery-story-copy{padding:18px}.gallery-story-copy h4{font-size:21px}}
