:root{--black:#121212;--grey:#f6f6f6;--line:#ccc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--black);font:14px Montserrat,Arial,sans-serif}header{height:92px;padding:0 7vw;display:flex;align-items:center;justify-content:space-between;background:#fff}.logo{font-size:14px;font-weight:700;letter-spacing:.11em;line-height:1.18;color:#111;text-decoration:none}nav{display:flex;gap:38px;margin-left:17vw}nav a{color:#222;text-decoration:none;font-size:13px}.menu{display:none;border:0;background:none;font-size:20px}.hero{height:627px;position:relative;color:white;text-align:center}.hero:after{content:'';position:absolute;inset:0;background:#0003}.hero img{width:100%;height:100%;object-fit:cover}.hero>div{position:absolute;z-index:1;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.hero h1,.product-intro h1{font:500 clamp(47px,5.6vw,82px)/1.1 'Playfair Display',serif;margin:0 0 23px}.hero p{font-size:13px;letter-spacing:.13em;margin:0 0 30px}.white-btn,.dark-btn{padding:14px 28px;text-decoration:none;font-size:12px;letter-spacing:.04em;border:1px solid}.white-btn{color:white}.statement{padding:107px 15vw;text-align:center}.statement h2,.services h2,.why h2,.products-call h2,.contact h2,.quote h2,.product-list h2{font:500 39px/1.27 'Playfair Display',serif;margin:0 0 26px}.statement h2 b{font-weight:500}.statement p{max-width:760px;line-height:1.85;margin:auto}.tiles{display:grid;grid-template-columns:repeat(3,1fr)}.tiles a{height:258px;position:relative;overflow:hidden;color:#fff;text-decoration:none}.tiles img{height:100%;width:100%;object-fit:cover}.tiles a:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 65%)}.tiles span{position:absolute;z-index:1;left:23px;bottom:20px;font:500 20px 'Playfair Display',serif}.services{text-align:center;background:var(--grey);padding:98px 9vw}.services>div{display:grid;grid-template-columns:repeat(3,1fr);gap:68px;max-width:1170px;margin:55px auto 0}.services h3{font-size:15px;margin:0 0 16px}.services p{font-size:13px;line-height:1.85;margin:0}.why{display:grid;grid-template-columns:1fr 1fr;min-height:493px}.why>div{padding:91px 10vw}.why>div p{border-bottom:1px solid #aaa;padding:13px 0;font-size:13px;margin:0}.why>div p:before{content:'+';font-size:18px;margin-right:13px}.why img{width:100%;height:100%;object-fit:cover}.products-call,.quote{text-align:center;padding:100px 20px}.products-call p{font-size:11px;letter-spacing:.1em;line-height:1.8;max-width:600px;margin:0 auto 30px}.dark-btn{background:#111;color:#fff;border-color:#111}.contact{background:var(--grey);color:var(--black);padding:99px 9vw;display:grid;grid-template-columns:1fr 1.2fr;gap:10vw}.contact>div p{line-height:1.9;max-width:400px;margin-bottom:27px}.contact a{color:#111}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px}.contact label{font-size:11px}.contact input,.contact textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #777;padding:9px 0;font:14px Montserrat;outline:0}.contact textarea{height:55px;resize:vertical}.contact .wide{grid-column:span 2}.contact button{justify-self:start;cursor:pointer}footer{background:#111;color:#fff}.footer-bottom{padding:27px 7vw;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em}footer a{color:#fff;text-decoration:none}.product-intro{padding:83px 16vw 88px;text-align:center}.product-intro h1{font-size:57px}.product-intro p{line-height:1.9;max-width:850px;margin:auto}.product-list article{display:grid;grid-template-columns:1fr 1fr;min-height:345px}.product-list article>div{padding:0 16%;display:flex;flex-direction:column;justify-content:center}.product-list h2{font-size:32px;margin-bottom:14px}.product-list p{line-height:1.8;font-size:13px}.product-list img{width:100%;height:345px;object-fit:cover}.quote{background:var(--grey)}.quote p{margin:0 0 27px}.locations{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:0 9vw 100px;max-width:1170px;margin:0 auto}.locations article{border:1px solid var(--line);padding:44px 32px;text-align:center}.locations .flag{display:inline-block;width:44px;height:33px;object-fit:cover;border:1px solid var(--line);margin-bottom:18px}.locations h2{font:500 22px 'Playfair Display',serif;margin:0 0 16px}.locations p{font-size:13px;line-height:1.85;margin:0 0 20px}.locations a{color:#111;font-size:12px} .about-text{max-width:820px;margin:0 auto;padding:0 20px 90px}
.about-text article{margin-bottom:50px}
.about-text article:last-child{margin-bottom:0}
.about-text h2{font:500 26px 'Playfair Display',serif;margin:0 0 14px}
.about-text p{font-size:14px;line-height:1.9;margin:0}
.about-image{text-align:center;padding:0 0 100px}
.about-image img{width:100%;max-height:460px;object-fit:cover;display:block}
.about-image p{font-size:12px;letter-spacing:.08em;margin:22px 0 0;text-transform:uppercase}
@media(max-width:700px){header{height:70px;padding:0 25px}.logo{font-size:11px}nav{display:none;position:absolute;top:70px;left:0;right:0;z-index:5;margin:0;padding:22px 25px;background:#fff;flex-direction:column;gap:18px;border-bottom:1px solid var(--line)}nav.open{display:flex}.menu{display:block}.hero{height:520px}.statement{padding:70px 25px}.statement h2,.services h2,.why h2,.products-call h2,.contact h2,.quote h2{font-size:35px}.tiles{grid-template-columns:1fr 1fr}.tiles a{height:205px}.tiles a:last-child{grid-column:span 2}.tiles span{font-size:17px;left:14px;bottom:14px}.services{padding:70px 25px}.services>div{display:block;margin-top:35px}.services article{margin-bottom:35px}.why{display:block}.why>div{padding:70px 25px}.why img{height:300px}.contact{display:block;padding:70px 25px}.contact form{margin-top:45px}.product-intro{padding:65px 25px}.product-intro h1{font-size:45px}.product-list article{min-height:0;display:flex;flex-direction:column-reverse}.product-list article:nth-child(even){flex-direction:column}.product-list article>div{padding:55px 25px;min-height:220px}.product-list img{height:260px}.product-list h2{font-size:30px}.footer-bottom{padding:22px 25px;gap:17px;flex-wrap:wrap}.locations{grid-template-columns:1fr;padding:0 25px 70px;gap:22px}.about-text{padding:0 25px 60px}
.about-image{padding:0 0 70px}
.about-image img{max-height:260px}
}