*{box-sizing:border-box}html,body{margin:0;width:100%;max-width:100%;overflow-x:hidden;color:#111;font-family:Roboto,Arial,sans-serif}body{min-width:0}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.header{height:100px;display:flex;align-items:center;gap:25px;padding:0 clamp(20px,4vw,70px);background:#fff;position:relative;z-index:100}.logo{flex:0 1 425px;min-width:260px}.logo img{width:425px;max-width:100%;max-height:78px;object-fit:contain;object-position:left center}.nav{margin-left:auto;display:flex;align-items:center;gap:clamp(16px,2vw,34px);font-size:18px;white-space:nowrap}.nav a:hover{color:#ff9000}.phone{font-size:19px;white-space:nowrap;color:#333}.toggle{display:none;border:0;background:#aaa;width:48px;height:48px;padding:11px;cursor:pointer}.toggle span{height:3px;background:#fff;display:block;margin:5px 0}.slider{height:min(600px,calc(100vh - 100px));min-height:430px;position:relative;overflow:hidden;background:#405268}.slide{position:absolute;inset:0;opacity:0;transition:opacity .7s;background-size:cover;background-position:center}.slide.active{opacity:1}.slide-copy{position:absolute;left:6%;top:16%;color:#fff;width:440px}.slide-copy h1{font-size:58px;line-height:1.12;font-weight:300;margin:0}.slide-copy a{display:inline-block;background:#ff9000;padding:17px 26px;margin-top:50px;font-size:20px}.arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;border:0;background:transparent;color:#fff;font-size:55px;font-weight:200;cursor:pointer}.prev{left:14px}.next{right:14px}.section{padding:55px clamp(25px,5vw,70px);max-width:1400px;margin:auto}.section h1{font-size:48px;font-weight:300;margin:0 0 14px}.section h2{font-size:35px;font-weight:300;margin:45px 0 12px}.section p,.section li{font-size:16px;line-height:1.75;color:#333}.section ul{padding-left:22px}.page-banner{height:330px;background-size:cover;background-position:center}.crumb{padding:10px clamp(25px,5vw,70px);background:#f8f8f8;border-bottom:1px solid #ddd}.service-block{padding:26px 0;border-bottom:1px solid #ddd}.service-block h3{font-size:24px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.gallery figure{margin:0}.gallery img{width:100%;height:260px;object-fit:cover}.gallery figcaption{padding:12px 0;font-size:20px}.contact-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:60px}.contact a{display:block;margin:10px 0;color:#555}.enquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.enquiry-form h2,.enquiry-form textarea,.enquiry-form button,.enquiry-form p{grid-column:1/-1}.enquiry-form h2{margin-top:0}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;border:1px solid #ccc;padding:14px;font:inherit}.enquiry-form button{border:0;background:#ff9000;padding:15px;font-size:18px;cursor:pointer}.form-ok{color:#067532}.form-error{color:#b00020}footer{text-align:center;background:#333;color:#fff;padding:18px}.backdrop{display:none}@media(max-width:1250px){.logo{flex-basis:330px}.logo img{width:330px}.nav{gap:14px;font-size:15px}.phone{font-size:16px}}@media(max-width:900px){.header{height:82px;padding:8px 16px;gap:12px;width:100%}.logo{flex:1 1 auto;min-width:0;max-width:calc(100% - 60px)}.logo img{width:280px;max-width:100%;max-height:64px}.toggle{display:block;margin-left:auto;flex:0 0 48px}.phone{display:none}.nav{margin:0;position:fixed;top:82px;right:0;transform:translateX(105%);width:min(86vw,360px);max-width:calc(100vw - 28px);height:calc(100dvh - 82px);display:block;background:#fff;padding:12px 22px;overflow-y:auto;overflow-x:hidden;transition:transform .3s;box-shadow:-10px 15px 30px rgba(0,0,0,.2);z-index:110}.nav.open{transform:translateX(0)}.nav a{display:block;padding:15px 5px;border-bottom:1px solid #ddd;font-size:17px;white-space:normal}.backdrop.show{display:block;position:fixed;inset:82px 0 0;background:rgba(0,0,0,.45);z-index:90}.slider{height:420px;min-height:0}.slide{background-position:center}.slide:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.18)}.slide-copy{z-index:2;left:24px;top:70px;width:min(70%,320px)}.slide-copy h1{font-size:38px}.slide-copy a{padding:12px 17px;margin-top:28px;font-size:15px}.arrow{font-size:42px}.section{padding:42px 22px}.section h1{font-size:36px;line-height:1.18}.section h2{font-size:29px}.page-banner{height:240px}.gallery{grid-template-columns:1fr 1fr;gap:18px}.gallery img{height:210px}.contact-grid{grid-template-columns:1fr;gap:30px}}@media(max-width:520px){.header{height:76px;padding:7px 12px}.logo img{width:245px}.nav{top:76px;height:calc(100dvh - 76px);max-width:calc(100vw - 18px)}.backdrop.show{inset:76px 0 0}.slider{height:340px}.slide-copy{top:48px;left:20px}.slide-copy h1{font-size:30px}.gallery{grid-template-columns:1fr}.gallery img{height:240px}.enquiry-form{grid-template-columns:1fr}.enquiry-form>*{grid-column:1}}
/* v3: exact content restoration and desktop header fit */
@media(min-width:901px){.header{width:100%;display:grid;grid-template-columns:minmax(285px,390px) minmax(0,1fr) auto;column-gap:24px;padding-left:clamp(20px,2.5vw,48px);padding-right:clamp(20px,2.5vw,48px)}.logo{min-width:0}.logo img{width:390px}.nav{margin:0;justify-content:flex-end;gap:clamp(13px,1.25vw,24px);font-size:17px}.phone{font-size:17px}}
@media(min-width:901px) and (max-width:1600px){.header{grid-template-columns:minmax(240px,300px) minmax(0,1fr) auto;column-gap:14px;padding-left:20px;padding-right:20px}.logo img{width:300px}.nav{gap:12px;font-size:14px}.phone{font-size:14px}}
.product-list{columns:2;column-gap:60px}.product-list li{break-inside:avoid;margin-bottom:4px}@media(max-width:520px){.product-list{columns:1}}
/* v4: mobile banner only — full image, compact height, no cross-fade overlap */
@media(max-width:900px){.slider{height:clamp(235px,52vw,310px);min-height:0}.slide{background-size:100% 100%;background-repeat:no-repeat;background-position:center;transition:none}.slide-copy{top:38px;left:24px;width:48%}.slide-copy h1{font-size:clamp(22px,5.5vw,32px);line-height:1.12;text-shadow:0 1px 3px rgba(0,0,0,.45)}.slide-copy a{margin-top:22px;padding:11px 16px}.arrow{font-size:42px}}
@media(max-width:520px){.slider{height:clamp(225px,58vw,280px)}.slide-copy{top:34px;left:20px;width:50%}.slide-copy h1{font-size:clamp(20px,6vw,28px)}.slide-copy a{margin-top:18px;font-size:14px}}
