.maincontent{
    max-width:100%;
}

.html ,body{
    font-size:18px;
}
*{
    margin:0;
    padding:0;
    box-sizing: border-box;
}
.row{
    margin:0 !important;
    padding:0 !important;
}
h1, h2, h3, h4{
    font-family: 'Noto Sans JP', sans-serif;
}
p, h5{
    font-family: 'Roboto', sans-serif;
}
h1{
font-size: calc(4vw + 1rem);
}

h2{
    font-size:3.2rem;
}
h3{
    font-size:2.5rem;
    margin:0;
    padding:0;
}
h4{
    font-size:2rem;
}
h5{
    font-size:1.5rem;
}
p{
    font-size:1rem;
}
ul li{
    list-style-type: none;
}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-6 {width: 49%;}

[class*="col-"] {
    float: left;
    padding:0 !important;
    margin:0 !important;
    
  }
.myButton {
    margin-top:20px;
	background-color:#fff;
	border-radius:28px;
	border:1px solid #402c1a;
	display:inline-block;
	cursor:pointer;
	color:#402c1a;
    font-family: 'Acme', sans-serif;
	font-size:1.2rem;
    letter-spacing:1.2px;
	padding:14px 31px;
	text-decoration:none;
    transition:.1s;
	text-shadow:0px 1px 0px #fff;
    -webkit-box-shadow: 3px 5px 4px -3px #000000; 
box-shadow: 3px 5px 4px -3px #000000;
}
.myButton:hover {
    background-color:#c7b299;
    text-shadow:0px 0px 0px #fff;
    color:#fff;
    -webkit-box-shadow: 3px 2px 1px -3px #000000; 
box-shadow: 3px 2px 1px -3px #000000;
transform:scale(0.98);
}
.myButton:active {
	position:relative;
	top:1px;
}


/* ======================= Divider ===================== */


.divider{
    margin: 0;
    padding:3% 0 2%;
    color:#ececec;
    background:#424E63;
    position:relative;
    overflow:hidden; 
    /* border-top:1px solid #ddd;
    border-bottom:1px solid #ddd; */
    }
    
.divider:before {
    content: ""; 
    position:absolute; 
    z-index: 1; 
    width:96%;  
    top: -10px; 
    height: 10px; 
    left: 2%; 
    border-radius: 100px / 5px; 
    box-shadow:0 0 18px rgba(0,0,0,0.6); 
    }
.divider:after {
    content: "";
    position:absolute;
    z-index: 1;
    width:96%; 
    bottom: -10px;
    height: 10px;
    left: 2%;
    border-radius: 100px / 5px;
    box-shadow:0 0 18px rgba(0,0,0,0.6);
    }

/* #top-divider{
    margin-top:30px;
} */
#top-divider img{
    -webkit-box-shadow: 2px 2px 17px 5px rgba(199,178,153,0.15); 
    box-shadow: 2px 2px 17px 5px rgba(199,178,153,0.15);
    margin-bottom:10px;
}


/* =========================== Gallery =================== */

.gallery-grid{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-template-rows: 1;
}
.grid-item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow:hidden;
  }
  .gallery-content p{
      font-size:1.8rem;
  }
  .gallery-content {
    position:absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    background: rgba(255, 252, 237, 0.7);
    z-index: 3;
    opacity: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items:center;
  }
  .gallery-content::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    width:0%;
    transform:translate(-50%, -50%);
    border-top: 0.2em solid #000;
    border-bottom: 0.2em solid #000;
  }
  .gallery-content::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    height: 0%;
    transform:translate(-50%, -50%);
    border-left: 0.2em solid #000;
    border-right: 0.2em solid #000;
  }
  .gallery-content:hover::before{
    transition:.7s linear;
    height:90%;
    width:90%;
  }
  .gallery-content:hover::after {
    transition:.7s linear;
    height:90%;
    width:90%;
  }
  .grid-item:hover {
    z-index: 3;
  }
  .grid-item:hover .gallery-content {
    opacity: 1;
    transition: .7s;
  } 

  /* ======================== Design Section ======================== */
  .slider-section{
    background-image: url('/imageserver/Reusable/custom-builders/booth/sketch-house3d.jpg');
    background-size: 100%;
    background-position:0 -200px ;
    background-repeat: no-repeat;
    position: relative;
    z-index:3;
    color:#ececec;
  }

  .design-slider-container{
    margin:0 auto;
    margin: 0 2%;
    overflow-x:hidden;
}
.design-slider-container::after{
    content:"";
    position: absolute;
    top:0;
    left:0;
    height:100%;
    width:100%;
    z-index:-1;
    background-image: linear-gradient(to bottom, rgba(255,255,255,0.8)0%,#424E63 100%);

}
.slider-img{
    max-width:1000px;
    overflow:hidden;
    -webkit-box-shadow: 5px 5px 15px -3px rgba(0,0,0,0.56); 
box-shadow: 5px 5px 15px -3px rgba(0,0,0,0.56);
}
.srow {
    display: none;
}
.row1{
    display:block;
}
.grid-wrapper{
    max-width:2000px;
    margin:0 auto;
    text-align:center;
}
.design-grid{
    display:grid;
    max-width:2000px;
    width:100%;
    margin:0 auto;
    grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
    grid-gap: 10px;
    justify-content: center;
    align-items:center;
}
.slider-grid-item{
    text-align:center;
}
.show:hover{
    cursor:pointer;
}

.thumb-wrapper p{
    display:inline;
    text-align:left;
}
.thumb-img{
    width:100%;
    max-height:120px;
    padding: 0 0 10px 10px;
    max-width:200px;
    cursor:pointer;
}
.house-label{
    margin:15px 0;
}
.specs-container{
    margin:20px 0 0 30px;
}
.specs-item{
  position:relative;
}
.specs-item::before{
    content:"";
    position: absolute;
    top:10px;
    left:-15px;
    border-left:2px solid #ececec;
    height:70%;
    width:2px;

}
.specs-label{
    font-size:1.8rem;
    position: relative;
    margin:0;
    
}

.specs{
    font-size:1.5rem;
}
.hide-main{
    transform:scale(0);
    animation: hide-main 1s linear forwards;
}

@keyframes hide-main {
    100%{
        transform:scale(1);
    }
}
.hide-thumb{
    transform:scale(0);
    animation: hide-thumb 1s  linear forwards;
}

@keyframes hide-thumb {
    100%{
        transform:scale(1);
    }
}
.showMain{
    transform:translateX(-100%);
    animation: show-main 1s linear forwards;
}

@keyframes show-main {
    100%{
        transform: translateX(0);
    }
}
.showThumb{
    transform:translateX(135%);
    animation: show-thumb 1s  linear forwards;
}

@keyframes show-thumb {
    100%{
        transform:translateX(0);
    }
}
.floor-grid{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-template-rows: 1;
    margin-top:3%;
}
.floor-plans{  
    margin:0 auto;
    text-align:center;
    margin:3% 4% ;
}
.floor-item{
    position: relative;
}
.floor-item p{
    position: absolute;
    top:35%;
    left:30%;
    transform:scale(0);
    font-size:1.9rem;
    font-weight:700; 
    transition: .5s;
    color:#424E63;
}
.floor-item p::before{
    position: absolute;
    content:"";
    bottom:0;
    border-bottom:3px solid #424E63;
    width:100%; 
    transform:scaleX(0);
    transition: .5s;   
}
.floor-item::before{
    position: absolute;
    content:"";
    top:0;
    left:0;
    height:100%;
    width:100%;
    transition:.5s;     
}
.floor-item:hover.floor-item::before{
    background:rgba(255,255,255,0.7); 
}
.floor-item:hover.floor-item p{
    transform:scale(1);    
}
.floor-item:hover.floor-item p::before{
    transform:scaleX(1);    
}

.divider-wrapper{
  height: 40vh;
  overflow-x: hidden;
  overflow-y: hidden;
  perspective: -5px;
}

.product-divider{
  background:url("/imageserver/Reusable/custom-builders/booth/architect-blueprint-min.png");
  background-size:cover;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  height: 40vh;
  display: flex;
  align-items: center;
  justify-content: center;
 
  
}


/* ==========================================  Cutout Details =================================================== */
.hideNum{
    display:none;
}
.showNum{
    display:block;
}
.modal-header{
  display:block;
}
.modal-gallery{
  margin:10px 0;
}
.cutout-details-container{
    margin-top:4%;
    position: relative;
}
.cutout-details-container h2{
    position: absolute;
    top:10px;
    left:15%;
}
.cutout-details{
    display:inline-block;
    position: relative;
    text-align:center;
    width:100%;
    /* max-width:1200px; */
    /* margin:150px 12%; */
  }
  .cutout-tooltip-link a{
    color:black;
  }
   #close-tooltip{
     float:right;
     font-weight:700;
     font-size:1rem;
    cursor:pointer;
   }
   
  .number{
    font-size:1.5rem;
    background:lightblue;
    border-radius:100px;
    display:flex;
    justify-content:center;
    align-items:center;
    height:40px;
    width:40px;
    cursor:pointer;
    z-index:2;
  }
  .tooltip{
    z-index:3;
  }
  .tooltip-text{
    position: absolute;
    top:30px;
    left:0;
    padding:15px;
    max-width:400px;
  }
  .tooltip-text-sm{
    position: absolute;
    top:40px;
    left:0;
    padding:15px;
    max-width:350px;
  }
  .tooltip-text-lg{
    position: absolute;
    top:30px;
    left:0;
    padding:15px;
    max-width:450px;
  }
  svg{
    height:250px;
    width:410px;
  }
  svg.small{
    height:250px;
    width:400px;
  }
  svg.large{
    height:275px;
    width:475px;
  }
  .tooltip-rotate{
    transform:rotateY(180deg);
    transform-origin:center;
  }
  .tooltip-noFill {
    fill: #fff;
    stroke: #1F140F;
    stroke-width: 3;
  }
  .tooltip-fill {
    fill: #1F140F;
    stroke: #1F140F;
    stroke-width: 1;
  }
  
  .st0{
    stroke-width:9;
  }
  
  .st1{
    stroke-width:3;
  }
  
  
  #num1{
    position: absolute;
    transition:.5s;
    top:35%;
    right:25%;
  }
  #num1-content-container{
    position:absolute;
    width:550px;
    top:15%;
    right:4%;
    text-align:left; 
    display:none;
    transition: all .4s ease-out;
  }
  #num1:hover ~ #num1-content-container{
    /* transform:scale(1); */
    display:block;
  }
  
  #num2{
    position: absolute;
    bottom:20%;
    transition:.5s;
    right:25%;
  }
  #num2-content-container{
    position:absolute;
    width:550px;
    bottom:13%;
    right:-7%;
    text-align:left; 
    transform:scale(1);
    transition: all .4s ease-out; 
  }
  /* #num2:hover ~ #num2-content-container{
    transform:scale(1);
    display:block;
  } */
  
  #num3{
    position: absolute;
    transition:.5s;
    top:59%;
    left:25%;
  }
  #num3-content-container{
    position:absolute;
    width:550px;
    top:37%;
    left:16%;
    text-align:left; 
    transition: all .4s ease-out; 
  }
  /* #num3:hover ~ #num3-content-container{
    transform:scale(1);
    display:block;
  } */
  #num4{
    position: absolute;
    transition:.5s;
    bottom:35%;
    right:30%;  
  }
  #num4-content-container{
    position:absolute;
    top:20%;
    left:10%; 
    transform: scaleX(0);
    transform-origin:center;
    transition:.5s;
  }
  #num4:hover ~ #num4-content-container{
    transform: scaleX(1);
    transition: all .5s ease-out;   
  }
  #num5{
    position: absolute;
    transition:.5s;
    top:40%;
    left:40%;
  }
  #num5-content-container{
    position:absolute;
    top:4%;
    left:-23%;
    text-align:center; 
    display:none;
    transition: all .4s ease-out; 
  }
  #num5:hover ~ #num5-content-container{
    transform:scale(1);
    display:block;
  }
  #num6{
    position: absolute;
    transition:.5s;
    top:42%;
    left:60%;
  }
  #num6-content-container{
    position:absolute;
    width:550px;
    top:9%;
    left:-45%;
    text-align:left; 
    display:none;
    transition: all .4s ease-out; 
  }
  #num6:hover ~ #num6-content-container{
    transform:scale(1);
    display:block;
  }
  #num7{
    position: absolute;
    transition:.5s;
    top:33%;
    left:60%;
  }
  #num7-content-container{
    position:absolute;
    width:550px;
    top:0;
    left:-48%;
    text-align:left; 
    display:none;
    transition: all .4s ease-out; 
  }
  #num7:hover ~ #num7-content-container{
    transform:scale(1);
    display:block;
  }
  #num8{
    position: absolute;
    transition:.5s;
    top:55%;
    left:68%;
  }
  #num8-content-container{
    position:absolute;
    width:550px;
    top:22%;
    left:-36%;
    text-align:left; 
    display:none;
    transition: all .4s ease-out; 
  }
  #num8:hover ~ #num8-content-container{
    transform:scale(1);
    display:block;
  }
  #num9{
    position: absolute;
    transition:.5s;
    top:4%;
    left:45%;
  }
  #num9-content-container{
    position:absolute;
    top:-30%;
    left:-17%;
    text-align:center; 
    display:none;
    transition: all .4s ease-out; 
  }
  #num9:hover ~ #num9-content-container{
    transform:scale(1);
    display:block;
  }
  #num10{
    position: absolute;
    transition:.5s;
    top:90%;
    left:75%;
  }
  #num10-content-container{
    position:absolute;
    width:550px;
    top:57%;
    left:-30%;
    text-align:left; 
    display:none;
    transition: all .4s ease-out; 
  }
  #num10:hover ~ #num10-content-container{
    transform:scale(1);
    display:block;
  }
  #num11{
    position: absolute;
    top:10%;
    left:65%;
  }
  #num11-content-container{
    position:absolute;
    width:550px;
    top:-23%;
    left:-39%;
    text-align:left; 
    display:none;
    transition: all .4s ease-out; 
  }
  #num11:hover ~ #num11-content-container{
    transform:scale(1);
    display:block;
  } 
  .sibling-fade { visibility: hidden; }
  
  .sibling-fade > * { visibility: visible; }
  
  .sibling-fade > * { transition: opacity 150ms linear 100ms, transform 150ms ease-in-out 100ms; }
  
  .sibling-fade:hover .number  { opacity:0; transform: scale(0.9); }
  
  .sibling-fade .number:hover  { opacity:1; transform: scale(1); transition-delay: 0ms, 0ms; }
  
  /* ===================== Parallax =============== */
.wrapper {
  height: 150vh;
  overflow-x: hidden;
  overflow-y: auto;
  perspective: 100px;
 background:#ececec;
}

.parallax__group {
  position: relative;
  height: 100vh;
  width: 100vw;
  transform-style: preserve-3d;
}

.parallax__layer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.bg {
  background: url('/imageserver/Reusable/custom-builders/booth/custom-logo-rbg.png') no-repeat center;
  background-size: center;
  transform: translateZ(-650px) scale(5);
  z-index: 6;
  width:150%;
  left:250%;
  top:-136%;
}
.top {
  background: url('/imageserver/Reusable/custom-builders/booth/top.png') no-repeat center;
  background-size: cover;
  transform: translateZ(-600px) scale(3);
  z-index: 6;
  width:86%;
  left:52%;
  top:-136%;
}

.mid-top {
  background: url('/imageserver/Reusable/custom-builders/booth/middle-top.png') no-repeat center;
  background-size: cover;
  transform: translateZ(-500px) scale(3.4167);
  z-index: 4;
  width:85%;
  left:16%;
top:-153%;
}

.mid-bottom {
  background: url('/imageserver/Reusable/custom-builders/booth/middle-bottom.png') no-repeat right;
  background-size: cover;
  transform: translateZ(-400px) scale(2.933333333);
  z-index: -5;
  width:88%;
  left:8.4%;
  bottom:-64%;
  position: absolute;
}

.bottom {
  background: url('/imageserver/Reusable/custom-builders/booth/bottom.png') no-repeat center;
  background-size: cover;
  transform: translateZ(-300px) scale(2.23333333);
  position: absolute;
  bottom:-190%;
  z-index: 3;
  width:100%;
  left:-11%;
}


@media (min-width: 760px) {
  .hero-text ul li {
    visibility: visible;
  }

  .info-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 3rem;
    align-items: center;
    text-align: left;
  }

  .info-container img {
    justify-self: end;
    width: 75%;
  }

  .text-container h2 {
    font-size: 2.5rem;
    width: 85%;
    margin: 1rem 0;
  }
  .text-container p {
    font-size: 1.5rem;
    width: 75%;
    margin: 1rem 0;
  }
}

@media (min-width: 1126px) {
  .sky,
  .bushes,
  .top,
  .mid-top,
  .mid-bottom,
  .bottom,
  .hero-text {
    background-size: contain;
  }
}