/* =========================================================
   BULI ROY SALON
   STYLE.CSS
   PART 1
   Global Styles + Navbar + Hero
========================================================= */

/*-----------------------
Google Fonts
-----------------------*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Cormorant+Garamond:wght@500;600;700&display=swap');

/*-----------------------
CSS Variables
-----------------------*/
:root{

    --primary:#c89b3c;
    --primary-dark:#9d7728;

    --secondary:#1d1d1d;

    --bg:#fdf2f4; /* Updated: Soft Light Baby Pink Background */

    --white:#ffffff;

    --text:#444;

    --heading:#222;

    --border:#f3dcdb; /* Updated: Soft Matching Pink Border */

    --shadow:0 10px 35px rgba(0,0,0,.08);

    --radius:18px;

    --transition:.35s ease;

}

/*-----------------------
Reset
-----------------------*/

*{

    margin:0;

    padding:0;

    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Poppins',sans-serif;

    background:var(--bg);

    color:var(--text);

    line-height:1.7;

    overflow-x:hidden;

}

img{

    max-width:100%;

    display:block;

}

a{

    text-decoration:none;

}

ul{

    list-style:none;

}

section{

    padding:90px 8%;

}

.section-title{

    text-align:center;

    margin-bottom:55px;

}

.section-title h2{

    font-family:'Cormorant Garamond',serif;

    font-size:48px;

    color:var(--heading);

    margin-bottom:10px;

}

.section-title p{

    color:#777;

    max-width:650px;

    margin:auto;

}

/*-----------------------
Navbar
-----------------------*/

header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:999;

    background:rgba(255,255,255,.94);

    backdrop-filter:blur(12px);

    box-shadow:0 4px 15px rgba(0,0,0,.05);

}

.navbar{

    max-width:1300px;

    margin:auto;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 30px;

}

.logo h2{

    font-family:'Cormorant Garamond',serif;

    color:var(--primary);

    font-size:38px;

    letter-spacing:3px;

}

.nav-links{

    display:flex;

    gap:34px;

}

.nav-links a{

    color:#444;

    font-weight:500;

    transition:var(--transition);

    position:relative;

}

.nav-links a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-6px;

    width:0;

    height:2px;

    background:var(--primary);

    transition:var(--transition);

}

.nav-links a:hover{

    color:var(--primary);

}

.nav-links a:hover::after{

    width:100%;

}

.nav-btn{

    background:var(--primary);

    color:#fff;

    padding:13px 24px;

    border-radius:40px;

    transition:var(--transition);

    font-weight:600;

}

.nav-btn:hover{

    background:var(--primary-dark);

    transform:translateY(-3px);

}

.menu-btn{

    display:none;

    font-size:28px;

    color:var(--primary);

    cursor:pointer;

}

/*-----------------------
Hero
-----------------------*/

.hero{

    min-height:100vh;

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:60px;

    position:relative;

    overflow:hidden;

    padding-top:120px;

}

.hero::before{

    content:"";

    position:absolute;

    width:600px;

    height:600px;

    border-radius:50%;

    background:rgba(200,155,60,.08);

    top:-180px;

    right:-180px;

}

.hero::after{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    border-radius:50%;

    background:rgba(200,155,60,.05);

    left:-180px;

    bottom:-180px;

}

.hero-content{

    position:relative;

    z-index:2;

}

.hero-tag{

    display:inline-block;

    background:#fff;

    color:var(--primary);

    padding:10px 18px;

    border-radius:40px;

    box-shadow:var(--shadow);

    margin-bottom:24px;

    font-weight:600;

}

.hero h1{

    font-family:'Cormorant Garamond',serif;

    font-size:84px;

    color:var(--heading);

    line-height:1;

    margin-bottom:15px;

}

.hero h2{

    font-size:34px;

    color:var(--primary);

    margin-bottom:22px;

}

.hero p{

    max-width:520px;

    margin-bottom:35px;

    font-size:17px;

}

.rating-box{

    display:flex;

    align-items:center;

    gap:18px;

    background:#fff;

    width:fit-content;

    padding:14px 24px;

    border-radius:50px;

    box-shadow:var(--shadow);

    margin-bottom:35px;

}

.stars{

    color:#ffb400;

    font-size:20px;

}

.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.primary-btn{

    background:var(--primary);

    color:#fff;

    padding:15px 34px;

    border-radius:40px;

    font-weight:600;

    transition:var(--transition);

}

.primary-btn:hover{

    background:var(--primary-dark);

    transform:translateY(-4px);

}

.secondary-btn{

    border:2px solid var(--primary);

    color:var(--primary);

    padding:15px 34px;

    border-radius:40px;

    font-weight:600;

    transition:var(--transition);

}

.secondary-btn:hover{

    background:var(--primary);

    color:#fff;

}

.hero-image{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

    z-index:2;

}

.circle{

    width:420px;

    height:420px;

    border-radius:50%;

    background:linear-gradient(135deg,#f7e7c2,#d9b25a);

    display:flex;

    justify-content:center;

    align-items:center;

    box-shadow:0 30px 60px rgba(0,0,0,.12);

    animation:float 5s ease-in-out infinite;

}

.circle i{

    font-size:140px;

    color:#fff;

}

@keyframes float{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-18px);

    }

    100%{

        transform:translateY(0);

    }

}

/*-----------------------
Responsive
-----------------------*/

@media(max-width:992px){

.hero{

grid-template-columns:1fr;

text-align:center;

}

.hero-content{

order:2;

}

.hero-image{

order:1;

margin-top:40px;

}

.rating-box{

margin:auto auto 35px;

}

.hero-buttons{

justify-content:center;

}

}

@media(max-width:768px){

.nav-links{
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    background:#fff;
    flex-direction:column;
    align-items:center;
    gap:0;
    display:none;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.nav-links li{
    width:100%;
}

.nav-links li a{
    display:block;
    width:100%;
    padding:18px;
    text-align:center;
    border-bottom:1px solid #eee;
}

.nav-links.active{
    display:flex;
}

.nav-btn{

display:none;

}

.menu-btn{

display:block;

}

.hero h1{

font-size:58px;

}

.hero h2{

font-size:24px;

}

.section-title h2{

font-size:38px;

}

.circle{

width:300px;

height:300px;

}

.circle i{

font-size:95px;

}

section{

padding:75px 6%;

}

}

@media(max-width:480px){

.hero{

padding-top:110px;

}

.hero h1{

font-size:48px;

}

.hero h2{

font-size:21px;

}

.hero p{

font-size:15px;

}

.primary-btn,

.secondary-btn{

width:100%;

text-align:center;

}

.hero-buttons{

flex-direction:column;

}

.circle{

width:250px;

height:250px;

}

}
/* =========================================================
   BULI ROY SALON
   STYLE.CSS
   PART 2
   About Section + Amenities + Payment Section
=========================================================*/

/*-----------------------
About Section
-----------------------*/

.about{
    background:#ffffff;
    position:relative;
}

.about-container{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:30px;
    margin-top:40px;
}

.about-card{
    background: #faf8f5; /* Updated: Soft luxury pastel background */
    border: 1px solid rgba(200, 155, 60, 0.2); /* Updated: Subtle matching border */
    border-radius:var(--radius);
    padding:35px 25px;
    text-align:center;
    box-shadow:var(--shadow);
    transition:var(--transition);
}

.about-card:hover{
    background: #f4eee2; /* Updated: Premium golden shade on hover */
    transform:translateY(-10px);
    box-shadow:0 18px 40px rgba(0,0,0,.12);
}

.about-card i{
    width:75px;
    height:75px;
    margin:auto;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    background:rgba(200,155,60,.12);
    color:var(--primary);
    font-size:30px;
    margin-bottom:20px;
    transition:var(--transition);
}

.about-card:hover i{
    background:var(--primary);
    color:#fff;
    transform:rotate(8deg) scale(1.08);
}

.about-card h3{
    font-family:'Cormorant Garamond',serif;
    color:var(--heading);
    font-size:28px;
    margin-bottom:12px;
}

.about-card p{
    color:#666;
    font-size:15px;
}

/*-----------------------
Payment Section
-----------------------*/

.payment-section{

    margin-top:70px;

    background:linear-gradient(135deg,#1d1d1d,#2e2e2e);

    color:#fff;

    padding:50px;

    border-radius:24px;

    box-shadow:var(--shadow);

}

.payment-section h3{

    text-align:center;

    font-family:'Cormorant Garamond',serif;

    font-size:40px;

    margin-bottom:35px;

    color:#fff;

}

.payment-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

    gap:20px;

}

.payment-grid div{

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.12);

    border-radius:16px;

    padding:22px;

    text-align:center;

    font-weight:500;

    transition:var(--transition);

}

.payment-grid div:hover{

    background:var(--primary);

    transform:translateY(-6px);

}

.payment-grid i{

    display:block;

    font-size:34px;

    margin-bottom:14px;

    color:#ffd86b;

}

/*-----------------------
Feature Highlight Banner
(Optional)
-----------------------*/

.feature-banner{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.feature-box{

    background:#fff;

    border-radius:18px;

    padding:25px;

    text-align:center;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.feature-box:hover{

    transform:translateY(-8px);

}

.feature-box h4{

    color:var(--heading);

    margin-top:12px;

    margin-bottom:8px;

    font-size:20px;

}

.feature-box span{

    color:#777;

    font-size:14px;

}

.feature-box i{

    color:var(--primary);

    font-size:38px;

}

/*-----------------------
Responsive
-----------------------*/

@media (max-width:992px){

    .payment-section{

        padding:40px 25px;

    }

    .payment-section h3{

        font-size:34px;

    }

    .feature-banner{

        grid-template-columns:repeat(2,1fr);

    }

}

@media (max-width:768px){

    .about-container{

        grid-template-columns:1fr;

    }

    .payment-grid{

        grid-template-columns:1fr;

    }

    .payment-section{

        margin-top:50px;

    }

    .feature-banner{

        grid-template-columns:1fr;

    }

    .about-card{

        padding:30px 22px;

    }

}

@media (max-width:480px){

    .payment-section{

        padding:30px 20px;

    }

    .payment-section h3{

        font-size:28px;

    }

    .about-card h3{

        font-size:24px;

    }

    .about-card i{

        width:65px;

        height:65px;

        font-size:26px;

    }

}
/* =========================================================
   BULI ROY SALON
   STYLE.CSS
   PART 3
   Services Section
=========================================================*/

/*-----------------------
Services Section
-----------------------*/

.services{

    background:var(--bg);

    position:relative;

    overflow:hidden;

}

.services::before{

    content:"";

    position:absolute;

    width:320px;

    height:320px;

    border-radius:50%;

    background:rgba(200,155,60,.08);

    top:-120px;

    right:-120px;

}

.services::after{

    content:"";

    position:absolute;

    width:260px;

    height:260px;

    border-radius:50%;

    background:rgba(200,155,60,.05);

    bottom:-100px;

    left:-100px;

}

/*-----------------------
Service Categories
-----------------------*/

.service-category{

    margin-bottom:70px;

    position:relative;

    z-index:2;

}

.service-category:last-child{

    margin-bottom:0;

}

.service-category h3{

    font-family:'Cormorant Garamond',serif;

    font-size:40px;

    color:var(--heading);

    margin-bottom:30px;

    text-align:center;

    position:relative;

}

.service-category h3::after{

    content:"";

    width:80px;

    height:3px;

    background:var(--primary);

    display:block;

    margin:12px auto 0;

    border-radius:20px;

}

/*-----------------------
Service Grid
-----------------------*/

.service-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));

    gap:28px;

}

/*-----------------------
Service Card
-----------------------*/

.service-card{

    background:#fff;

    border:1px solid var(--border);

    border-radius:20px;

    padding:32px 26px;

    text-align:center;

    transition:var(--transition);

    box-shadow:var(--shadow);

    position:relative;

    overflow:hidden;

}

.service-card::before{

    content:"";

    position:absolute;

    top:0;

    left:-100%;

    width:100%;

    height:5px;

    background:linear-gradient(
        90deg,
        var(--primary),
        #f5d37b
    );

    transition:.45s;

}

.service-card:hover::before{

    left:0;

}

.service-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}

.service-icon{

    width:78px;

    height:78px;

    border-radius:50%;

    background:rgba(200,155,60,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    margin:auto auto 22px;

    transition:var(--transition);

}

.service-card:hover .service-icon{

    background:var(--primary);

    transform:scale(1.08);

}

.service-icon i{

    font-size:34px;

    color:var(--primary);

    transition:var(--transition);

}

.service-card:hover .service-icon i{

    color:#fff;

}

.service-card h4{

    font-family:'Cormorant Garamond',serif;

    font-size:28px;

    color:var(--heading);

    margin-bottom:12px;

}

.service-card p{

    color:#666;

    font-size:15px;

    margin-bottom:18px;

}

.service-card ul{

    text-align:left;

    margin-top:12px;

}

.service-card ul li{

    display:flex;

    align-items:center;

    gap:10px;

    padding:8px 0;

    color:#555;

    font-size:15px;

}

.service-card ul li i{

    color:var(--primary);

    font-size:14px;

}

/*-----------------------
Service Badge
-----------------------*/

.service-badge{

    position:absolute;

    top:18px;

    right:18px;

    background:var(--primary);

    color:#fff;

    font-size:12px;

    padding:6px 12px;

    border-radius:20px;

    font-weight:600;

    letter-spacing:.5px;

}

/*-----------------------
CTA Box
-----------------------*/

.service-cta{

    margin-top:70px;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-dark)
    );

    border-radius:24px;

    color:#fff;

    text-align:center;

    padding:55px 30px;

    box-shadow:var(--shadow);

}

.service-cta h3{

    font-family:'Cormorant Garamond',serif;

    font-size:42px;

    margin-bottom:18px;

}

.service-cta p{

    max-width:650px;

    margin:0 auto 30px;

    opacity:.95;

}

.service-cta a{

    display:inline-block;

    padding:15px 36px;

    border-radius:40px;

    background:#fff;

    color:var(--primary);

    font-weight:600;

    transition:var(--transition);

}

.service-cta a:hover{

    transform:translateY(-4px);

    background:#222;

    color:#fff;

}

/*-----------------------
Responsive
-----------------------*/

@media (max-width:992px){

    .service-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .service-category h3{

        font-size:34px;

    }

}

@media (max-width:768px){

    .service-grid{

        grid-template-columns:1fr;

    }

    .service-category{

        margin-bottom:50px;

    }

    .service-category h3{

        font-size:30px;

    }

    .service-card{

        padding:28px 22px;

    }

    .service-cta{

        padding:45px 25px;

    }

    .service-cta h3{

        font-size:34px;

    }

}

@media (max-width:480px){

    .service-card h4{

        font-size:24px;

    }

    .service-icon{

        width:68px;

        height:68px;

    }

    .service-icon i{

        font-size:28px;

    }

    .service-card ul li{

        font-size:14px;

    }

    .service-cta h3{

        font-size:28px;

    }

    .service-cta p{

        font-size:15px;

    }

}
/* =========================================================
   BULI ROY SALON
   STYLE.CSS
   PART 4
   Testimonials Section
=========================================================*/

/*-----------------------
Testimonials Section
-----------------------*/

.testimonials{

    background:#ffffff;

    position:relative;

    overflow:hidden;

}

.testimonials::before{

    content:"";

    position:absolute;

    width:320px;

    height:320px;

    border-radius:50%;

    background:rgba(200,155,60,.06);

    top:-130px;

    left:-130px;

}

.testimonials::after{

    content:"";

    position:absolute;

    width:260px;

    height:260px;

    border-radius:50%;

    background:rgba(200,155,60,.08);

    right:-100px;

    bottom:-100px;

}

/*-----------------------
Review Grid
-----------------------*/

.testimonial-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

    gap:30px;

    position:relative;

    z-index:2;

}

/*-----------------------
Review Card
-----------------------*/

.testimonial-card{

    background:#fff;

    border-radius:22px;

    padding:35px;

    box-shadow:var(--shadow);

    border:1px solid var(--border);

    transition:var(--transition);

    position:relative;

}

.testimonial-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}

/*-----------------------
Quote Icon
-----------------------*/

.quote-icon{

    width:60px;

    height:60px;

    border-radius:50%;

    background:rgba(200,155,60,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    margin-bottom:22px;

}

.quote-icon i{

    color:var(--primary);

    font-size:24px;

}

/*-----------------------
Review Text
-----------------------*/

.testimonial-card p{

    color:#555;

    font-size:15px;

    line-height:1.8;

    margin-bottom:25px;

}

/*-----------------------
Reviewer
-----------------------*/

.reviewer{

    display:flex;

    align-items:center;

    gap:15px;

}

.avatar{

    width:60px;

    height:60px;

    border-radius:50%;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-dark)
    );

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-weight:700;

    font-size:22px;

}

.reviewer-info h4{

    color:var(--heading);

    font-size:18px;

    margin-bottom:4px;

}

.reviewer-info span{

    color:#777;

    font-size:14px;

}

/*-----------------------
Stars
-----------------------*/

.review-stars{

    margin-top:10px;

    color:#ffb400;

    font-size:16px;

    letter-spacing:2px;

}

/*-----------------------
Overall Rating Box
-----------------------*/

.rating-summary{

    margin-top:70px;

    background:linear-gradient(
        135deg,
        #1d1d1d,
        #2d2d2d
    );

    color:#fff;

    border-radius:24px;

    padding:55px;

    text-align:center;

    box-shadow:var(--shadow);

}

.rating-summary h3{

    font-family:'Cormorant Garamond',serif;

    font-size:48px;

    margin-bottom:15px;

}

.rating-summary .big-stars{

    color:#FFD54F;

    font-size:34px;

    margin-bottom:18px;

}

.rating-summary p{

    opacity:.9;

    font-size:16px;

}

.rating-number{

    font-size:64px;

    font-weight:700;

    color:var(--primary);

    margin-bottom:8px;

}

/*-----------------------
Responsive
-----------------------*/

@media(max-width:992px){

    .testimonial-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

@media(max-width:768px){

    .testimonial-grid{

        grid-template-columns:1fr;

    }

    .testimonial-card{

        padding:30px;

    }

    .rating-summary{

        padding:40px 25px;

    }

    .rating-summary h3{

        font-size:38px;

    }

    .rating-number{

        font-size:52px;

    }

}

@media(max-width:480px){

    .testimonial-card{

        padding:25px;

    }

    .avatar{

        width:52px;

        height:52px;

        font-size:18px;

    }

    .reviewer-info h4{

        font-size:17px;

    }

    .rating-summary{

        padding:35px 20px;

    }

    .rating-summary h3{

        font-size:30px;

    }

    .rating-number{

        font-size:44px;

    }

    .big-stars{

        font-size:28px;

    }

}
/* =========================================================
   BULI ROY SALON
   STYLE.CSS
   PART 5
   Contact • Footer • Floating Buttons • Utilities
=========================================================*/

/*========================
Contact Section
========================*/

.contact{

    background:var(--bg);

}

.contact-wrapper{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:40px;

    align-items:start;

}

.contact-card{

    background:#fff;

    padding:35px;

    border-radius:20px;

    box-shadow:var(--shadow);

}

.contact-card h3{

    font-family:'Cormorant Garamond',serif;

    font-size:36px;

    margin-bottom:25px;

    color:var(--heading);

}

.contact-item{

    display:flex;

    gap:18px;

    align-items:flex-start;

    margin-bottom:25px;

}

.contact-item:last-child{

    margin-bottom:0;

}

.contact-item i{

    width:55px;

    height:55px;

    background:rgba(200,155,60,.12);

    color:var(--primary);

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:22px;

    flex-shrink:0;

}

.contact-item h4{

    color:var(--heading);

    margin-bottom:6px;

}

.contact-item p{

    color:#666;

    font-size:15px;

}

/*========================
Google Maps Placeholder
========================*/

.map-box{

    background:#fff;

    border-radius:20px;

    overflow:hidden;

    box-shadow:var(--shadow);

    min-height:420px;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    border:2px dashed var(--border);

}

.map-box div{

    padding:35px;

}

.map-box i{

    font-size:70px;

    color:var(--primary);

    margin-bottom:20px;

}

.map-box h3{

    font-family:'Cormorant Garamond',serif;

    font-size:32px;

    color:var(--heading);

    margin-bottom:12px;

}

.map-box p{

    color:#777;

}

/*========================
Footer
========================*/

footer{

    background:#181818;

    color:#ddd;

    padding:70px 8% 25px;

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr;

    gap:45px;

    margin-bottom:50px;

}

.footer-logo h2{

    font-family:'Cormorant Garamond',serif;

    color:var(--primary);

    font-size:42px;

    margin-bottom:15px;

}

.footer-logo p{

    max-width:420px;

    color:#aaa;

}

.footer-links h3,

.footer-social h3{

    color:#fff;

    margin-bottom:18px;

}

.footer-links ul li{

    margin-bottom:12px;

}

.footer-links a{

    color:#bbb;

    transition:.3s;

}

.footer-links a:hover{

    color:var(--primary);

    padding-left:6px;

}

.social-icons{

    display:flex;

    gap:15px;

    margin-top:20px;

}

.social-icons a{

    width:48px;

    height:48px;

    background:#2b2b2b;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    transition:.35s;

}

.social-icons a:hover{

    background:var(--primary);

    transform:translateY(-5px);

}

.footer-bottom{

    border-top:1px solid rgba(255,255,255,.08);

    padding-top:25px;

    text-align:center;

    color:#999;

    font-size:14px;

}

/*========================
Floating Book Button
========================*/

.floating-book{

    position:fixed;

    right:22px;

    bottom:95px;

    background:var(--primary);

    color:#fff;

    padding:15px 22px;

    border-radius:50px;

    font-weight:600;

    box-shadow:0 12px 30px rgba(0,0,0,.18);

    z-index:999;

    transition:.35s;

}

.floating-book:hover{

    background:var(--primary-dark);

    transform:translateY(-5px);

}

/*========================
Back To Top
========================*/

.back-to-top{

    position:fixed;

    right:25px;

    bottom:25px;

    width:52px;

    height:52px;

    border-radius:50%;

    background:#222;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    transition:.35s;

    z-index:999;

}

.back-to-top:hover{

    background:var(--primary);

    transform:translateY(-4px);

}

/*========================
Scrollbar
========================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#f4f4f4;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--primary-dark);

}

/*========================
Simple Fade Animation
========================*/

.fade-up{

    opacity:0;

    transform:translateY(35px);

    transition:all .7s ease;

}

.fade-up.show{

    opacity:1;

    transform:translateY(0);

}

/*========================
Responsive
========================*/

@media(max-width:992px){

    .contact-wrapper{

        grid-template-columns:1fr;

    }

    .footer-grid{

        grid-template-columns:1fr 1fr;

    }

}

@media(max-width:768px){

    .footer-grid{

        grid-template-columns:1fr;

        text-align:center;

    }

    .footer-logo p{

        margin:auto;

    }

    .social-icons{

        justify-content:center;

    }

    .contact-card{

        padding:28px;

    }

    .map-box{

        min-height:300px;

    }

}

@media(max-width:480px){

    .contact-card h3{

        font-size:28px;

    }

    .map-box h3{

        font-size:26px;

    }

    .floating-book{

        right:15px;

        bottom:85px;

        padding:13px 18px;

        font-size:14px;

    }

    .back-to-top{

        width:46px;

        height:46px;

        right:15px;

        bottom:20px;

    }

}