*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#111d27;font-family:'Comfortaa',sans-serif;font-size:18px;line-height:1.4;color:#111d27}
img{display:inline-block;max-width:100%;height:auto;border:0}
a{text-decoration:none}

/* fixed background photo (like the original) */
.page{position:relative;min-height:100vh;padding:20px;background:#111d27}
.page::before{content:"";position:fixed;inset:0;z-index:0;background:url(../img/bg.png) center top/cover no-repeat}
.wrap{position:relative;z-index:1;width:100%;max-width:480px;margin:0 auto}

.block{padding:0 30px}
.spacer{width:100%}

/* logo */
.logo{padding:0 40px 15px;text-align:center}
.logo img{width:400px;display:block;margin:0 auto}

/* intro */
.intro{display:flow-root;padding:10px 40px 0;text-align:center;color:#fff}
.intro p{margin:0 0 10.5px;font-size:18px;line-height:25.2px}
.intro-title{font-size:24px;font-weight:700}
.intro-phone{font-size:20px;color:#fff}

/* buttons */
.btn-wrap{padding:30px 30px 0}
.btn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;background:#993537;color:#fff;text-align:center;padding:10px 16px 10px 48px;padding-left:48px;padding-right:48px;transition:filter .2s}
.btn:hover{filter:brightness(1.1)}
.btn-icon{position:absolute;left:16px;top:50%;width:17px;height:17px;margin-top:-8.5px;color:#fff}
.btn-big{min-height:65px;border-radius:24px}
.btn-title{font-size:17px;line-height:23.8px}
.btn-sub{font-size:12.75px;line-height:17.85px}
.btn-small{min-height:39px;border-radius:50px}
.btn-small span{font-size:16px;font-weight:700;line-height:19.2px}

/* divider */
.divider{text-align:center;line-height:0}
.divider img{width:170px;height:9px}
.divider-top{padding:0 30px 30px}
.divider-card{padding:30px;background:#fff}

/* services card */
.card-head{background:#fff;border-radius:6px 6px 0 0;padding:27px 40px 20px;text-align:center}
.eyebrow{margin:0 0 10.5px;color:#ba9644;text-transform:uppercase;font-size:14px;font-weight:700;line-height:19.6px}
.card-head h2{margin:0;font-size:36px;font-weight:700;line-height:43.2px;color:#111d27}
.service{background:#fff;padding:11px 40px 10.5px;text-align:center}
.service-pad{padding-top:30px}
.service p{margin:0}
.round{width:160px;height:160px;border-radius:50%;object-fit:cover;display:block;margin:0 auto 24px}
.service h3{margin:0 0 12px;font-size:22px;font-weight:700;line-height:26.4px;color:#111d27}
.service p{font-size:18px;line-height:25.2px;color:#111d27}
.order{background:#fff;padding:20px 40px 30px}
.order-last{padding-bottom:40px;border-radius:0 0 6px 6px}

/* line */
.line{padding:30px}
.line div{border-top:.8px solid #d6e3e3}

/* before / after */
.works-head{position:relative;overflow:hidden;border-radius:35px;padding:27px 40px 20px;text-align:center;background:url(../img/works-header.webp) center/cover no-repeat}
.works-head h2{margin:0 0 10px;font-size:28px;font-weight:700;line-height:43.2px;color:#fff}

.slider{position:relative;overflow:hidden;padding-bottom:3px;touch-action:pan-y;user-select:none;border-radius: 31px;margin: 26px 0;}
.slider-track{display:flex;transition:transform .3s ease}
.slide{flex:0 0 100%;height:300px}
.slide img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}

/* map */
.map{position:relative;overflow:hidden;border-radius:31px;padding:56px 30px 30px;text-align:center;background:url(../img/map.png) center/cover no-repeat}
.map .round{margin-bottom:26px}
.map p{margin:0 0 10.5px;font-size:18px;line-height:25.2px}
.map a{color:#fff}
.map a span{background:#111d27;color:#fff}

@media (max-width:520px){
  .page{padding:20px 0}
  .logo,.intro{padding-left:30px;padding-right:30px}
  .card-head h2{font-size:32px}
}
