::-webkit-scrollbar {width: 3px;}

::-webkit-scrollbar-track{-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);}

::-webkit-scrollbar-thumb{background-color: #a62721;}



.pd_50{

    padding: 50px 0;

}



.wrap_header {

    border-bottom: 1px solid #0000004d;

    padding: 10px 0;

}

.slogan_header marquee {

    display: block;

    font-size: 14px;

    letter-spacing: 1px;

    text-transform: uppercase;

    color: var(--c1);

    font-weight: 600;

    font-family:

    'font1';

}

/* MENU */

.flex_menu {

    display: flex;

    justify-content: space-between;

    align-items: center;

}

.menu_main {

    display: flex;

    flex-direction: column;

    flex: 1;

    gap: 20px;

    margin: 0 0 0 10px;

}

.flex_hotlinemenu {

    display: grid;

    grid-template-columns: repeat(3,1fr);

    gap: 10px;

}

.fix_head .menu {

    padding: 0;

}

.fix_head .menu ul {

  margin: 0;

}

.fix_head .menu ul li a {

    color: black;

}

.fix_head .menu ul li a.active {

    color: var(--c1);

}



.fix_head {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    z-index: 999;

}



.fix_head .menu {

    background-color: rgba(255, 255, 255, 0.75);

        backdrop-filter: blur(12px);

    -webkit-backdrop-filter: blur(12px); 

    

    padding: 8px 0;

    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.04);

    border-bottom: 1px solid rgba(0, 0, 0, 0.05); 

    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);

}

.fix_head .menu ul li a:hover{

    color: var(--c1);

}

/* SLIDER */

.btn_slider {

    text-align: center;

    margin-top: 20px;

}



.btn_slider a {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    background-color: #d24d0c;

    color: #ffffff;

    font-size: 16px;

    font-weight: bold;

    text-transform: uppercase;

    text-decoration: none;

    padding: 14px 35px;

    border-radius: 50px;

    transition: all 0.3s ease;

    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.2), 0 8px 20px rgba(210, 77, 12, 0.4);

    

    animation: pulse-orange 2s infinite;

}



.btn_slider a:hover {

    background-color: #b54009; 

    color: #ffffff;

    transform: translateY(-4px); 

    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.4), 0 12px 25px rgba(210, 77, 12, 0.6);

    animation: none; 

}



@keyframes pulse-orange {
    0% {
        box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.3), 0 0 0 0 rgba(210, 77, 12, 0.8);
        transform: scale(1);
    }
    50% {
        /* Tỏa viền rộng hơn và mờ dần */
        box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.5), 0 0 25px 15px rgba(210, 77, 12, 0);
        /* Phóng to mạnh hơn (1.12 thay vì 1.05) */
        transform: scale(1.12); 
        /* Làm màu nền cam sáng lên một chút */
        background-color: #f55b10; 
        /* Làm chữ trắng phát sáng */
        text-shadow: 0 0 8px rgba(255, 255, 255, 0.8);
    }
    100% {
        box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.3), 0 0 0 0 rgba(210, 77, 12, 0);
        transform: scale(1);
    }
}
.name-yoyosanh {
    color: var(--c1); /* Đã dùng biến màu cam của bạn */
    font-size: 50px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: capitalize;
    position: relative;
    z-index: 1;
    display: inline-block;
    font-family: 'font1';
    
    /* 1. Tạo viền trắng mỏng để chữ tách khỏi các mảng nền tối */
    -webkit-text-stroke: 1.5px #ffffff;
    
    /* 2. Đổ bóng đen đậm phía sau để chữ tách khỏi các mảng nền sáng */
    text-shadow: 3px 4px 8px rgba(0, 0, 0, 0.7);
    
    /* 3. Hiệu ứng lơ lửng nhẹ để thu hút ánh nhìn */
    animation: float-text 3s ease-in-out infinite;
}

/* Định nghĩa hiệu ứng lơ lửng */
@keyframes float-text {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
        /* Tăng nhẹ độ tỏa của bóng khi chữ nảy lên */
        text-shadow: 5px 8px 12px rgba(0, 0, 0, 0.5); 
    }
}


/* WRAP GIOI THIEU */



.flex_gioithieu {

    display: flex;

    justify-content: space-between;

}

.left_gioithieu {

    width: 49%;

}

.right_gioithieu {

    width: 49%;

}

.name_gthieu {

    color: black;

    font-size: 30px;

    line-height: normal;

    font-family: 'font1';

    margin-bottom: 0.25rem;

    text-transform: capitalize;

    font-weight: bold;

}

.desc_gthieu {

    margin: 20px 0;

    font-size: 15px;

    font-family: 'font1';

    color: black;

}





.flex_gioithieu {

    display: flex;

    justify-content: space-between;

}

.right_gioithieu {

    width: 49%;

    border-radius: 10px;

    overflow: hidden;

}

.left_gioithieu {

    width: 49%;

}

.btn_gt {

    margin-top: 25px;

    text-align: left;

}



.btn_gt a {

    display: inline-block;

    padding: 12px 30px;

    color: var(--c1); 

    font-size: 15px;

    font-weight: bold;

    text-transform: uppercase;

    text-decoration: none;

    border: 2px solid var(--c1); 

    border-radius: 4px;

    background-color: transparent; 

    position: relative;

    transition: all 0.4s ease;

    overflow: hidden;

    z-index: 1;

}



.btn_gt a:hover {

    color: #ffffff; 

    background-color: var(--c1); 

    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); 

    transform: translateY(-3px); 

}







/* WRAP DICH VU */

.wrap_dichvu .title_dichvu {

    color: white;

}

p.pic-dichvu {

    border-radius: 10px;

    box-shadow: rgb(0, 0, 0) 0px 15px 20px -15px;

}

.gr_namedichvu {

    text-align: center;

}

.title_dichvu {

    color: var(--c1);

    font-size: 35px;

    font-weight: bold;

    font-family:

    'font1';

}

.slogan_dvu {

    font-size: 14px;

    color: black;

}

.slide_dichvu {

    margin-top: 30px;

}

.wrap_dichvu {

    background: var(--c1);

}

.name_dichvu {

    font-size: 16px;

    text-align: center;

    text-transform: uppercase;

    font-weight: bold;

    color: white;

}

.desc_dichvu {

    font-size: 14px;

    margin-top: 15px;

    color: white;

}

.btn_xthem {

    text-align: center;

    color: #004aad;

    font-size: 14px;

}

.item-dichvu:hover .name_dichvu{

    color: var(--c2);

}

/* WRAP DICH VU  */

.flex_loiichdoanhnghiep {

    display: flex;

    justify-content: space-between;

    margin-top: 20px;

}

.left_loiich {

    width: 49%;

    background: linear-gradient(148deg, rgba(12, 23, 104, 1.0), rgba(9, 114, 215, 1.0));

    padding: 20px;

    color: white;

    border-radius: 10px;

}

.right_loiich {

    width: 49%;

}



/* WRAP ALBUM ANH */

.grid_albumanh {

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 15px;

    margin-top: 50px;

    }   

   



    .wrap_banner {

        background-repeat: no-repeat;

        background-size: cover;

        background-attachment: fixed;

        background-position: center;

        height: 400px;

        position: relative;

    }

    .gr_titlebanner {

        position: absolute;

        width: 100%;

        height: 100%;

        left: 0;

        top: 0;

    }

    .wrap_banner .wrap-content {

        height: 100%;

    }

    .gr__titlebanner {

        display: flex;

        flex-direction: column;

        align-items: center;

        justify-content: center;

        height: 100%;

        font-size: 40px;

        color: white;

        font-family: 'font1';

        font-weight: bold;

    }



/* KHONG GIAN QUan */

/* Container của mỗi album */

.gr_albumanh {

    position: relative;

    display: block;

    overflow: hidden;

    border-radius: 6px; /* Bo góc nhẹ cho hiện đại */

    text-decoration: none !important;

}



/* Hiệu ứng zoom nhẹ ảnh khi rê chuột (giữ lại từ class cũ của bạn nhưng làm mượt hơn) */

.gr_albumanh .img-wrap img {

    transition: transform 0.5s ease-in-out;

    display: block;

}



.gr_albumanh:hover .img-wrap img {

    transform: scale(1.08); /* Phóng to ảnh 8% */

}



/* --- LỚP PHỦ MÀU VÀ CHỮ OVERLAY --- */

.gr_albumanh .album-overlay {

    position: absolute;

    bottom: -20px; /* Giấu chữ sâu xuống dưới một chút */

    left: 0;

    width: 100%;

    padding: 40px 15px 15px 15px; /* Padding trên lớn để tạo dải gradient đẹp */

    background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 100%); /* Đổ bóng đen mờ từ đáy lên */

    opacity: 0; /* Ẩn mặc định */

    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); /* Chuyển động siêu mượt */

    z-index: 2;

    text-align: center;

}



.gr_albumanh .album-overlay .album-title {

    color: #ffffff;

    font-size: 16px;

    font-weight: 600;

    text-transform: uppercase; /* Viết hoa cho sang */

    letter-spacing: 1px;

    margin: 0;

    transform: translateY(15px); /* Chữ hơi tụt xuống */

    transition: transform 0.4s ease;

}



/* KÍCH HOẠT HIỆU ỨNG KHI HOVER */

.gr_albumanh:hover .album-overlay {

    bottom: 0;

    opacity: 1;

}



.gr_albumanh:hover .album-overlay .album-title {

    transform: translateY(0); /* Chữ trượt mượt mà lên đúng vị trí */

}



/* WRAP TIN TUC */

.slide_tintuc {margin: 50px 100px 0;}

.gr_date_tintuc {

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    padding: 5px;

    border-right: 2px solid var(--c1);

    width: 60px;

    color: var(--c1);

}

.day_tintuc {

    font-size: 18px;

    font-weight: bold;

}

.monthyear_tintuc {

    font-weight: 500;

}

.wrap_tintuc {

    position: relative;

}

.wrap_tintuc::before {

    content: '';

    background: url(../imgs/bf_news.png) no-repeat;

    background-size: 100% 100%;

    position: absolute;

    width: 140px;

    height: 530px;

    right: 0;

    top: 50%;

    transform: translateY(-50%);

    pointer-events: none;

}

/* WRAP DANG KY NHAN TIN */

.newsletter-input textarea {

    width: 100%;

    height: 90px;

    margin-top: 20px;

    border: 2px solid var(--c1);

    border-radius: 10px;

    padding: 10px;

    resize: none;

    font-size: 16px;

    color: black;

}

.newsletter-button input[type="submit"]:hover{

    background: var(--c2);

    transition: all  .2s linear;

}

.gr_nlter {

    display: grid;

    gap: 20px;

    grid-template-columns: repeat(2,1fr);

}



.newsletter-button {

    margin-top: 15px;

    text-align: center; 

}



.btn_submitform {

    background-color: var(--c1);

    color: #ffffff;

    font-size: 16px;

    font-weight: bold;

    text-transform: uppercase;

    letter-spacing: 1px;

    padding: 14px 45px;

    border: none;

    border-radius: 50px; 

    cursor: pointer;

    transition: all 0.3s ease;

    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); 

    width: 100%;

    max-width: 300px; 

}



.btn_submitform:not(:disabled):hover {

    background-color: #333333;

    transform: translateY(-2px); 

    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);

}



.btn_submitform:disabled {

    background-color: #cccccc;

    color: #888888;

    cursor: not-allowed;

    box-shadow: none;

    transform: none;

}



.custom-toast {

    position: fixed;

    top: 30px;

    right: -400px; 

    width: 320px;

    background-color: #ffffff;

    color: #333333;

    padding: 15px 20px;

    border-radius: 8px;

    border-left: 5px solid #ff4d4f; 

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);

    z-index: 99999;

    display: flex;

    align-items: center;

    gap: 12px;

    font-size: 14px;

    font-weight: 500;

    line-height: 1.4;

    transition: right 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); 

}



.custom-toast.show {

    right: 30px; 

}



.custom-toast-icon {

    font-size: 20px;

}





  /* FOOTER */

  .title-footer {

    margin-bottom: .75rem;

    font-size: 17px;

    font-weight: 700;

    text-transform: uppercase;

    --tw-text-opacity: 1;

    color: black;

    position: relative;

    padding-left: 8px;

}

.title-footer:after {

    content: '';

    position: absolute;

    width: 3px;

    height: 100%;

    background: var(--c1);

    left: 0;

    top: 0;

    display: none;

}

.footer-copyright {

    text-align: center;

}

.social-header {

    display: inline-flex;

    align-items: center;

    gap: 10px;

}



.social-header li {

    margin: 0 !important;

}



/* Bộ khung vuông bo góc nhẹ */

.social-header a {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 38px;

    height: 38px;

    background-color: transparent;

    border: 1px solid #e0e0e0; /* Viền xám mờ */

    border-radius: 6px; /* Bo góc nhẹ nhàng */

    transition: all 0.4s ease;

    text-decoration: none;

}



.social-header a img {

    width: 20px;

    height: 20px;

    object-fit: contain;

    filter: grayscale(100%);

    opacity: 0.6;

    transition: all 0.4s ease;

}



.social-header a:hover {

    background-color: #ffffff;

    border-color: var(--c1); 

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);

    transform: translateY(-3px);

}



.social-header a:hover img {

    filter: grayscale(0%);

    opacity: 1;

    transform: scale(1.1);

}





.footer-copyright {

    text-align: center;

    padding: 10px 0;

    font-weight: bold;

}



/* album */

.img_fter {

    width: 150px;

}

.frame-album {

    display: grid;

    grid-template-columns: 182px 182px 407px 113px 266px;

    grid-template-rows: 262px 210px 262px;

    gap: 8px;

}

.item-album.item-0 {

    grid-column: span 2;

}

.item-album.item-0 img {

    aspect-ratio: 370/262;

}

.item-album img {

    object-fit: cover;

    height: 100%;

    width: 100%;

}

.item-album.item-1 {

    grid-column: span 2;

}

.item-album.item-1 img {

    aspect-ratio: 530/262;

}

.item-album.item-2 img {

    aspect-ratio: 267/262;

}

.item-album.item-5 {

    grid-column: span 2;

    grid-row: span 2;

}

.item-album.item-6 {

    grid-column: span 2;

}

.item-number-album {

    text-align: center;

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    grid-row: 2/span 1;

    grid-column: 3/span 1;

}

.item-number-album p {

    font-size: 80px;

    font-weight: 700;

    margin-bottom: 0;

    color: var(--c2);

    line-height: normal;

}

.item-number-album span {

    font-size: 17px;

    color: white;

}

.fix_head .flex_hotlinemenu {

    display: none;

}

.fix_head a.logo-head img {

    width: 50px;

    transition: all .2s linear

}

.fix_head .flex_menu {

    gap: 70px;

}

.wrap_logo_mmenu {

    display: none;

}

.int .menu {

    position: relative;

    background: white;

}

.int .menu li a{

    color: black;

}

.int .menu li a.active{

    color: var(--c1);

}