*,
::after,
::before {
    box-sizing: border-box;
}

:root{
    --base-color: #767676;
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    font-size: clamp(1.6rem, 1.5vw, 1.8rem);
    font-family: "DM Sans", sans-serif;
    font-style: normal;
}

/* common */
a {
    text-decoration: none;
    color: #000;
}

input,
label {
    font-family: inherit;
}

/* Header */
.header-box{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 40px 0px 0px;
}

.header__logo{
    color: #080415;
    font-size: clamp(1.5rem, 1.5vw + 1rem, 2.2rem);
    font-style: normal;
    font-weight: 500;
    line-height: 1.36; /* 136.364% */
}

.header-nav__item{
    color: #51586A;
    font-size: 1.8rem;
    margin: 0px 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    transition: color .5s;
}

.header-nav__item--bold{
    font-weight: 600;
    color: #000;
}

.header-nav__item:hover{
    color: #080415;
}

.book_now{
    font-size: clamp(1.4rem, 1vw + 1rem, 1.8rem);;
    padding: 12px 30px;
    background-color: var(--base-color);
    color: #fff;
    border: 2px solid #bcbcbc;
    border-radius: 29px;
    font-weight: 450;
    transition: background-color 1s, color 1s;
}

.book_now:hover{
    color: var(--base-color);
    background-color: #fff;
}

.header-mobile {
    position: relative;
}

.header-mobile__btn {
    z-index: 3;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.header-mobile__item {
    width: 40px;
    height: 4px;
    margin-top: 8px;
    border-radius: 2px;
    background-color: #51586A;
}

.header-mobile__item:first-of-type{
    margin-top: 0;
}

.header-mobile__checkbox {
    display: none;
}

/* Ẩn nút khi checkbox được chọn */
.header-mobile__checkbox:checked ~ .header-mobile__btn {
    display: none;
}

/* Đặt mặc định blur ẩn và không thể tương tác */
.header-mobile__blur {
    position: fixed;
    z-index: 1;
    background-color: rgba(91, 91, 91, 0.6);
    top: 0;
    left: 0;
    bottom: 0;
    width: 100vw;
    height: 100vh;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* Khi checkbox được chọn, blur sẽ hiện và có thể tương tác */
.header-mobile__checkbox:checked ~ label .header-mobile__blur {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.header-mobile__checkbox:checked ~ .header-mobile-nav{
    transform: translate(0, 0);
}

.header-mobile-nav {
    position: fixed;
    z-index: 2;
    background-color: #fff;
    top: 0;
    right: 0;
    bottom: 0;
    width: 60vw;
    height: 100vh;
    box-shadow: -2px 0 5px rgba(0, 0, 0, 0.1);
    transform: translate(60vw ,0);
    transition: transform .3s;
}

.header-mobile-nav__item {
    display: block;
    padding: 15px;
    color: #333;
    text-decoration: none;
    border-bottom: 1px solid #eaeaea;
}


/* hero */
.hero-box{
    margin: 75px 0px;
}

.hero-media {
    display: flex;
    align-items: center;
    justify-content: center; /* Căn giữa ảnh trong hero-media */
    filter: drop-shadow(2px 2px 15px rgba(91, 91, 91, 0.5));
    position: relative; /* Để cho các ảnh có thể sử dụng position: relative; */
}

.hero-media__img {
    border-radius: 6px;
    object-fit: cover;
    position: relative; /* Giữ vị trí tương đối */
}

/* Ảnh đầu tiên */
.hero-media__img:nth-child(1) {
    width: 330px; /* Kích thước cố định */
    height: 540px; /* Kích thước cố định */
}

/* Ảnh thứ hai */
.hero-media__img:nth-child(2) {
    width: 210px; /* Kích thước cố định */
    height: 410px; /* Kích thước cố định */
    margin-left: -5px; /* Vị trí fix cho ảnh thứ hai */
    z-index: -1;
}


.hero-ctn{
    margin-top: 20px;
}

.hero-ctn__title{
    color: #080415;
    font-size: clamp(5rem, 5vw + 3rem, 8rem);
    font-weight: 500;
}

.hero-ctn__desc{
    color: #51586A;
    font-size: clamp(1.5rem, 1vw + 1rem, 1.8rem);
    font-weight: 400;
    margin: 20px 0px 50px;
}

.hero-ctn-func__more{
    color: #080415;
    font-size:  clamp(1.4rem, 1vw + 1rem, 1.8rem);
    font-weight: 700;
    margin-left: 30px;
    transition: color .5s;
}

.hero-ctn-func__more:hover{
    color:#51586A;
}

.hero-ctn-social{
    display: flex;
    align-items: center;
    margin-top: 100px;
    color: #51586A;
}

.hero-ctn-social__title{
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.87; /* 187.5% */
}

.hero-ctn-social__logo{
    width: 25px;
    margin-left: 20px;
}

/* services */
.service{
    padding: 75px 0px;
}

.service-box__title{
    color: #080415;
    font-size: clamp(4rem, 4vw + 2.25rem, 5.6rem);
    font-style: normal;
    font-weight: 500;
    line-height: 1.17; /* 117.857% */
    letter-spacing: -2.24px;
    text-align: center;
}

.service-box__desc{
    margin: 10px auto 70px;
    max-width: 534px;
    color: #51586A;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.32; 
}

.service-item__icon{
    width: 68px;
    margin-left: 42px;
}

.service-item__title{
    color: #080415;
    font-size: 32px;
    white-space: nowrap;
    font-style: normal;
    font-weight: 500;
    line-height: 1.25; /* 125% */
    letter-spacing: -1.28px;
    padding: 15px 42px;
    text-align: center;
}

.service-item__desc{
    color: #51586A;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.3;
    padding: 0 42px;
    text-align: center;
}

.service-box__line{
    width: 30vw;
    height: 1.5px;
    background-color: #51586A;
    border-radius: 99%;
    margin: 70px auto 0px;
}

/* work */
.work{
    margin: 75px 0;
    background-color: var(--base-color);
}

.work-box{
    padding: 80px 0px;
}

.work-box-cnt{
    position: relative;
}

.work-box__title{
    color: #FFF;
    font-size: 56px;
    font-style: normal;
    font-weight: 500;
    line-height: 1.17; /* 117.857% */
}

.work-box__desc{
    position: absolute;
    bottom: 0px;
    width: 370px;
    color: #FFF;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.66; /* 166.667% */
    opacity: 0.8;
}

.work-box-media{
    margin-top: 30px;
}

.work-box-media__item{
    width: 100%;
    padding-top: 56.25%;
    position: relative;
    margin: 15px 0px;
}

.work-box-media__img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    border-radius: 6px;
    transition: transform .5s;
}

.work-box-media__img:hover{
    transform: translate(0px,-7px);
    -webkit-transform: translate(0px,-7px);
    -moz-transform: translate(0px,-7px);
}

/* cta (call to action) */
.cta{
    margin: 75px 0;
}

.cta-box {
    display: flex;
    flex-direction: column; /* Đặt các phần tử theo cột */
    align-items: center; /*Căn giữa theo chiều ngang*/
    text-align: center; /* Căn giữa văn bản */
}

.cta-box__icon{
    width: 120px;
    margin-bottom: 15px;
}

.cta-box__title{
    color: #080415;
    text-align: center;
    font-size: 56px;
    font-style: normal;
    font-weight: 500;
    line-height: 66px; /* 117.857% */
}

.cta-box__desc{
    color: #51586A;
    font-family: "DM Sans";
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px; /* 166.667% */
    max-width: 570px;
    margin: 20px 0px 50px;
}

.cta-box__btn{
    padding: 20px 60px;
}

/* footer */
.footer{
    background-color: #767676;
    padding-top: 96px;
}

.footer-box{
    display: flex;
    justify-content: space-between;
}

.footer-column{
    padding: 0px 15px;
}

.footer-column:nth-child(1){
    width: 267px;
    padding-left: 0;
}

.footer-column__title{
    color: #FFF;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    position: relative;
    margin-bottom: 43px;
    border-bottom: 1px solid #fff;
}

.footer-column__desc{
    color: #FFF;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
    width: 267px;
    margin-top: 18px;
    margin-bottom: 18px;
}

.footer-column__part a{
    color: #FFF;
    margin: 12px 0px;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
}

.footer-column__part span{
    color: #FFF;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 26px;
}

.footer-column:nth-child(1) .footer-column__title{
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 34px;
    border-bottom: none;
    margin-bottom: 0;
}


.footer .line{
    margin-top: 38px;
    background: #f3f3f3;
    width: 100%;
    height: 2px;
}

.footer .copyright{
    color: #f3f3f3;
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
    padding: 28px 0px;
}

/* services.html */
.nanails-box{
    color: #767676;
    padding: 75px 0px;
}

.nanails__title{
    color: #000;
    font-size: 3.2rem;
    padding: 0px 0px 20px;
}

.nailser-item{
    padding: 10px 0px;
}

.nailser-item__head{
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #444444;
}

.nailser-item__title{
    padding: 0px 15px 0px 0px;
    
}

.nailser-item__cost{
    padding: 0px 0px 0px 15px;
}

.nailser-item__dash{
    flex-grow: 1;
    padding: 0px 10px;
    height: 1px;
    background-color: #767676;
}

.nailser-item__desc{
    padding: 8px 0px 0px;
    color: #767676;
}

.nailser-item__add{
    color: #767676;
    padding: 5px 0px;
    font-style: italic;
}

.naen__title{
    color: #000;
    font-size: 3.2rem;
    padding: 0px 0px 20px;
}

.naen__subtitle{
    color: #000;
    font-size: 2.4rem;
    padding: 10px 0px;
}

.nean__subdesc--last{
    padding-bottom: 20px;
}

.waxing{
    padding: 75px 0px;
}

.waxing__head{
    color: #000;
    font-size: 3.2rem;
    padding: 0px 0px 20px;
}

/* about.html */
.abs-box{
    max-width: 700px;
    margin: 75px auto;
    text-align: center;
}

.abs__title{
    font-size: 3.8rem;
    padding-bottom: 10px;
    margin: 10px;
}

.aitem__title{
    font-size: 2.8rem;
    padding-bottom: 10px;
}

.about-bold{
    font-weight: 700;
}

.quote-box{
    background-color: #a1a1a1;
    padding: 50px ;
}

.quote-container {
    max-width: 600px;
    margin: 50px auto;
    padding: 20px;
    background-color: #f9f9f9;
    border-left: 5px solid #171717;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border-radius: 7px;
}

.quote-text {
    font-size: 1.8rem;
    font-style: italic;
    color: #333;
    margin: 0;
}

.quote-author {
    text-align: right;
    padding-top: 20px;
    font-size: 1.2rem;
    font-weight: bold;
    color: #555;
}

.arow{
    margin-top: 50px;
}

.aitem-item{
    margin-left: 20px;
    list-style-type: disc;
    padding: 2px;
}

.arow:nth-of-type(2){
    max-width: 600px;
    margin: 70px auto;
    text-align: center;
}

/* Contact Us */

.contactus-box{
    margin-top: 75px;
}

.contactus__tittle{
    font-size: 3.8rem;
    padding-bottom: 10px;
}

.contactus__desc{
    margin-top: 20px;
    font-size: 1.8rem;
    line-height: 1.3;
}

.contactus-action{
    margin: 40px 0px;
}

.contactus-form{

}

.contactus-form__lbtittle{
    display: inline-block;
    font-weight: 500;
    padding-bottom: 10px;
}

.contactus-form__iptittle{
    width: 100%;
    height: 30px;
    border-radius: 7px;
    padding: 0px 7px;
    font-family: inherit;
    font-size: 1.6rem;
}

.contactus-form__lbmain{
    display: inline-block;
    font-weight: 500;
    padding-bottom: 10px;
    
}

.contactus-form__ipmain{
    width: 100%;
    height: 90px;
    border-radius: 5px;
    border-radius: 7px;
    padding: 5px 7px;
    font-family: inherit;
    resize: vertical;
    font-size: 1.6rem;
}

.contactus-form__submit{
    padding: 8px 15px;
    border: 1px solid #000;
    border-radius: 7px;
    font-size: 14px;
    color: #000;
    cursor: pointer;
    background: #f1f1f1;
    font-weight: 500;
}

.contactus-form__call{
    padding: 6.5px 35px;
    border: 1px solid #000;
    border-radius: 7px;
    font-size: 14px;
    color: #000;
    cursor: pointer;
    margin-left: 10px;
    font-weight: 500;
    background: #f1f1f1;
}

.contactus-cta{
    display: flex;
    flex-direction: column;
    border: 1px solid #000;
    height: 100%;
    border-radius: 10px;
    text-align: center;
    justify-content: center;
    color: #fff;
    background: #767676;
}

.contactus-cta__title{
    font-weight: 800;
    font-size: 20px;
    padding-bottom: 30px;
}

.contactus-cta__btn{
    display: inline-block;
    color: #fff;
    padding: 10px 25px;
    border: 2px solid #fff;
    border-radius: 8px;
    font-weight: 500;
    transition: color 2s, background-color 2s;
}

.contactus-cta__btn:hover{
    background: #fff;
    color: #767676;
}

.contactus__mapdesc{
    font-size: 3.4rem;
    max-width: 400px;
    margin: 150px 0px 50px;
    border-left: 4px solid #000;
    padding-left: 20px;
}

.img-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0.9);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.img-overlay img {
    max-width: 90%;
    max-height: 90%;
    border-radius: 8px;
    box-shadow: 0 0 20px #fff;
}

.close-btn {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 40px;
    color: #fff;
    cursor: pointer;
}
