.hero{position:relative;height:70vh;max-height:900px;min-height:420px;background:#18491e;overflow:hidden}.hero-slide{position:absolute;inset:0}.hero-slide>a{display:block;height:100%;color:white}.hero picture{display:block;width:100%;height:100%}.hero-image{width:100%;height:100%;object-fit:cover;animation:hero-zoom 7s linear both}.hero-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}.hero-copy .hero-title{font-size:64px;line-height:1.45;letter-spacing:3px}.hero-copy p{font-size:24px;margin-top:20px}.hero-controls{position:absolute;left:0;right:0;bottom:28px;display:flex;justify-content:space-between;align-items:center;color:white}.carousel-dots{display:flex;gap:5px}.carousel-dots button{border:0;width:28px;height:5px;padding:0;background:#ffffff60;border-radius:3px}.carousel-dots button[aria-pressed=true]{background:white}.carousel-dots button:focus-visible{outline-color:#fff}.carousel-count{display:flex;align-items:center;gap:7px;font-size:14px}.carousel-count i{height:1px;background:#fff;width:50px}.scroll-hint{position:absolute;left:50%;font-size:25px;line-height:1}.carousel-pause{position:absolute;bottom:22px;right:16px;background:#0002;color:white;border:0;opacity:0;padding:5px 10px}.carousel-pause:focus-visible,.hero:hover .carousel-pause{opacity:1}.home-about{background-color:#dbe3e8;background-size:auto;background-position:left calc(100% + 289px);background-repeat:no-repeat}.about-grid{display:grid;grid-template-columns:510px 480px;justify-content:space-between;align-items:start;padding:56px 0}.about-copy .section-heading{margin-bottom:12px}.about-copy p{font-size:14px;line-height:1.7;margin:0 0 16px;text-indent:2em}.about-copy .button{margin-top:25px}.about-image{width:480px;height:330px;object-fit:cover}.home-services{padding:75px 0}.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.service-card{text-align:center}.service-card>a:first-child{display:block;overflow:hidden}.service-card img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s}.service-card h3{font-size:18px;font-weight:400;margin:18px 0 25px}.home-advantages{background:#f5f5f5;padding:75px 0}.advantages-carousel{position:relative;background:var(--green)}.advantage-slide{display:grid;grid-template-columns:1fr 1fr;min-height:330px}.advantage-image{width:100%;height:330px;object-fit:cover}.advantage-copy{color:white;padding:80px 58px 70px}.advantage-copy h3{font-size:24px;line-height:1.4}.small-rule{width:36px;height:2px;background:#fff;margin:20px 0 25px}.advantage-copy p{font-size:16px;margin-bottom:30px;line-height:1.7}.button.light{border-color:white;padding:3px 20px;font-size:12px;line-height:20px}.button.light:after{content:'▶';margin-left:6px;font-size:9px}.advantage-dots{position:absolute;bottom:16px;left:55%}.home-news{padding:30px 0 60px}.home-generic{padding:60px 0}.home-generic img{max-height:500px;object-fit:contain}@keyframes hero-zoom{from{transform:scale(1)}to{transform:scale(1.05)}}@media(min-width:768px) and (max-width:1200px){.about-grid{grid-template-columns:45% 43%}.about-image{width:100%;height:auto;aspect-ratio:1.45}.hero-copy .hero-title{font-size:clamp(36px,3.34vw,64px)}.advantage-copy{padding:40px 30px 55px}}@media(max-width:1024px){.hero{height:70vh;min-height:0;max-height:none}.hero-image{object-fit:cover}.hero-copy{padding:12px}.hero-copy .hero-title{font-size:32px;letter-spacing:1px;line-height:1.5}.hero-copy p{font-size:18px}.hero-controls{width:calc(100% - 24px);bottom:30px}.carousel-count{font-size:14px}.carousel-dots button{width:28px}.scroll-hint{display:none}.about-grid{display:block;padding:12px 10px}.about-copy .section-heading{margin-bottom:14px;white-space:nowrap}.about-copy p{font-size:14px;line-height:1.7;margin-bottom:16px}.about-copy .button{margin-top:24px}.about-image{width:100%;height:330px;object-fit:cover;margin-top:0}.home-services{padding:18px 0}.services-grid{gap:5px}.service-card img{aspect-ratio:1;object-fit:cover}.service-card h3{font-size:16px;line-height:1.45;margin:0 0 10px;min-height:46px}.service-card .button.outline{min-width:0;width:100%;padding:4px 2px;font-size:12px;white-space:nowrap}.home-advantages{padding:15px 0}.advantage-slide{grid-template-columns:1fr 1fr;align-items:center;min-height:285px}.advantage-image{height:105px;object-fit:cover}.advantage-copy{padding:43px 18px 30px}.advantage-copy h3{font-size:24px;white-space:nowrap}.small-rule{margin:20px 0 25px}.advantage-copy p{font-size:16px;margin-bottom:25px}.advantage-copy .button{padding:3px 12px}.advantage-dots{left:55%;bottom:14px}.home-news{padding:28px 0 70px}.home-news .section-heading{margin-bottom:28px}}

.service-image{position:relative;overflow:hidden}.service-label{position:absolute;right:0;top:0;background:var(--green);color:white;writing-mode:vertical-rl;letter-spacing:4px;padding:20px 14px;font-size:14px;font-weight:600;line-height:1}.about-copy .section-heading small{color:#aaa}@media(max-width:1024px){.home-about{background-image:none!important}.service-label{padding:18px 10px;letter-spacing:3px;right:0;min-height:100px}.service-card img{height:100px;aspect-ratio:auto;object-fit:cover}.service-image{overflow:visible}.service-card>a:first-child{overflow:visible}.hero-copy .hero-title{font-size:32px;letter-spacing:0}.about-copy p{margin-bottom:16px}}
/* The reference desktop header overlays the banner; mobile keeps its own row. */
@media(min-width:1025px){.home .site-header{position:absolute;inset:0 0 auto}.home-about{background-position:left calc(100% + 289px)}}
.scroll-hint{width:20px;height:29px;border:2px solid white;border-radius:10px;font-size:0;bottom:-8px}.scroll-hint:before{content:'';position:absolute;top:4px;left:7px;width:2px;height:6px;background:#fff}
@media(min-width:1025px){.about-grid{padding:3vw 0}.home-services{padding:4vw 0}.home-services .section-heading{margin-bottom:23px}.home-advantages{padding:4vw 0}.home-advantages .section-heading{margin-bottom:26px}.home-news{padding:30px 0 56px}.home-news .news-image img{height:14vw;aspect-ratio:auto}}
@media(min-width:768px) and (max-width:1024px){.home-news .news-image img{height:14vw}.service-card h3{min-height:0}.home-services .section-heading{margin-bottom:40px}}
