@charset "utf-8";
/* =========================================
   NEST CLEANING

========================================= */


:root {

    --nest-blue: #18B2C5;
    --nest-pink: #D04A9E;
    --white: #ffffff;
    --light-blue: #F7FBFC;
    --text: #666666;

}


* {

    margin:0;
    padding:0;
    box-sizing:border-box;

}


html {

    scroll-behavior:smooth;

}


body {

    font-family:'Raleway', sans-serif;
    font-weight:300;
    color:var(--text);

}


h1,
h2,
h3 {

    font-family:'Poiret One', cursive;
    font-weight:400;

}


img {

    max-width:100%;
    display:block;

}


a {

    text-decoration:none;
    color:inherit;

}


/* =========================================
   HEADER
========================================= */

header {

    position: fixed;
    top: 0;
    left: 0;

    width: 100%;
    height: 92px;

    background: #fff;

    z-index: 1000;

}

.header-inner {

    max-width: 1200px;
    height: 100%;

    margin: 0 auto;

    display: grid;
    grid-template-columns: 1fr 180px 1fr;

    align-items: center;

    padding: 0 40px;

    box-sizing: border-box;

}

.header-left {

    justify-self: end;
	
	padding-right:25px;

}

.header-centre {


    display: flex;

    justify-content: center;

    align-items: center;
	
	margin: 0 50px;


}

.header-right {

    justify-self: start;
	
	padding-left:25px;

}

.header-centre img {

    display: block;

    width: auto;
    height: 60px;

    max-width: none;

    flex-shrink: 0;

}

.header-inner a {

    text-decoration: none;

    color: var(--nest-pink);

    font-size: 17px;

    font-weight: 500;

    letter-spacing: 2.4px;

    padding-bottom: 8px;

}

.header-left a:hover,
.header-right a:hover {

    border-bottom: 2px solid var(--nest-blue);

}

/* =========================================
   HERO
========================================= */


.hero {

    padding-top:92px;

    height:100vh;

    display:grid;

    grid-template-columns:50% 50%;

}


/* LEFT LOGO PANEL */

.hero-left {

    background:#ffffff;

    display:flex;

    justify-content:center;

    align-items:center;
	
	border-top:2px solid var(--nest-blue);

}


.hero-logo {

    width:80%;

    max-width:600px;

}



/* RIGHT BLUE PANEL */

.hero-right {

    background:#18B2C5;

    color:#ffffff;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:60px;

}


.hero-right h1 {

    font-family:'Poiret One', cursive;

    font-size:72px;

    font-weight:400;

    line-height:1;

    margin-bottom:25px;

}


.hero-right h2 {

    font-family:'Poiret One', cursive;

    font-size:35px;

    font-weight:400;

    margin-bottom:25px;

}


.divider {

    width:80px;

    height:1px;

    background:#ffffff;

    margin:0 auto 30px auto;

}


.hero-right p {

    max-width:500px;

    text-align:center;

    font-family:'Raleway', sans-serif;

    font-size:17px;

    line-height:1.8;

    margin-bottom:20px;

}


.hero-right h3 {

    font-family:'Poiret One', cursive;

    font-size:34px;

    margin-top:15px;

}


.hero-right .phone-button {

    margin-top:25px;

    color:#ffffff;

    border:1px solid #ffffff;

    padding:12px 35px;

    border-radius:30px;
	
    font-size:22px;

    font-weight:400;

}


/* =========================================
   SERVICES
========================================= */


.services {

    min-height:720px;

    background:var(--nest-pink);

    display:grid;

    grid-template-columns:50% 50%;

    color:white;

}



.services-left,
.services-right {

    display:flex;
    flex-direction:column;

    justify-content:center;
	
    align-items:center;

    text-align:center;

    padding:80px;

}


.services h2 {

    font-size:55px;
    line-height:1.1;

}



.white {

    background:white;

}



.services ul {

    list-style:none;

    font-size:20px;

    line-height:2;

    margin:20px 0;

}



.services h3 {

    font-size:32px;

    margin-top:20px;

}


.services p {

    line-height:1.8;
    font-size:18px;

}



.services-right {

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    width:100%;

}


.services-right ul {

    width:100%;

    text-align:center;

    padding:0;

    margin:20px 0;

}


.services-right .services-logo {

    margin-left:auto;

    margin-right:auto;

}



.services-logo {

    width:75%;

    margin-bottom:40px;

}



.phone-button {

    margin-top:35px;

    border:1px solid white;

    padding:14px 45px;

    border-radius:30px;
		
    font-size:22px;

    font-weight:400;

    transition:.2s;

}


.phone-button:hover {

    background:white;

    color:var(--nest-pink);

}



/* =========================================
   CONTACT
========================================= */


.contact {

    min-height:700px;

    display:grid;

    grid-template-columns:50% 50%;

}



.contact-image {

    background:var(--light-blue);

    display:flex;

    justify-content:center;

    align-items:center;

}



.contact-image img {

    width:70%;

}



.contact-right {

    background:var(--light-blue);

    padding:80px;

    display:flex;

    flex-direction:column;

    justify-content:center;

}



.contact h2 {

    font-size:55px;

}

.contact h3 {

    font-family:'Raleway', sans-serif;

    font-size:20px;

    font-weight:300;

    line-height:1.7;

    margin-bottom:20px;

}

.dark {

    background:var(--nest-blue);

}


.contact p {

    font-size:17px;

    line-height:1.9;

    margin-bottom:25px;

}

/* Centre contact text */

.contact-right h2,
.contact-right h3,
.contact-right p {

    text-align:center;

}

.contact-right .divider {

    margin:20px auto;

}


/* FORM */


form {

    margin-top:20px;

}


.row {

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:15px;

}


input,
textarea {

    width:100%;

    border:none;

    border-bottom:1px solid #ccc;

    background:white;

    padding:15px;

    font-family:'Raleway';

}



textarea {

    height:130px;

    margin-top:15px;

}



button {

    margin-top:20px;

    padding:14px 45px;

    border:none;

    background:var(--nest-blue);

    color:white;

    cursor:pointer;

}



/* =========================================
   FOOTER
========================================= */


footer {

    height:120px;

    background:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:13px;

}



/* =========================================
   MOBILE
========================================= */


@media(max-width:800px){


header {

    height:70px;

}


nav ul {

    gap:20px;

}


.hero,
.services,
.contact {

    grid-template-columns:1fr;

}



.hero {

    height:auto;

}


.hero-image {

    min-height:450px;

}



.hero-text .content {

    width:85%;

}


.services-left,
.services-right,
.contact-right {

    padding:45px 30px;

}



.row {

    grid-template-columns:1fr;

}


}
@media (max-width:768px){

    .header-inner{

        grid-template-columns:1fr auto 1fr;

        padding:0 15px;

    }

    .header-centre{

        margin:0 15px;

    }

    .header-centre img{

        height:50px;
        width:auto;

    }

    .header-inner a{

        font-size:15px;

        letter-spacing:0.8px;

    }

    nav{

        margin-left:15px;

    }

    nav ul{

        gap:25px;

    }
	    .contact input,
    .contact textarea {

        font-size: 18px;
        padding: 16px;

    }

    .contact button {

        font-size: 18px;
        padding: 16px 40px;

    }


}
