@font-face {
    font-family: theChickenShack;
    font-style: normal;
    src: url(../../assets/fonts/Montserrat-VariableFont_wght.ttf) format("truetype")
}

:root {
    --cs-dark-color: #000;
    --cs-light-color: #fff;
    --container-width: 1600px;
    --cs-primary-color: #BB0206;
    --cs-secondary-color: #FFD751;
    --cs-highlight-color: #EEC463;
    --cs-gray: #808080
}

body {
    background: var(--cs-dark-color);
    font-family: theChickenShack, sans-serif, system-ui;
    line-height: normal
}

.cs_container {
    width: 100%;
    max-width: var(--container-width);
    padding-left: calc(var(--container-width)*6.25/100);
    padding-right: calc(var(--container-width)*6.25/100);
    margin-inline: auto
}

.cs_row {
    display: flex;
    flex-wrap: wrap
}

ul {
    list-style-type: none;
    margin: 0;
    padding: 0
}

a {
    text-decoration: none
}

::-webkit-scrollbar {
    width: 5px
}

::-webkit-scrollbar-track {
    background: var(--cs-dark-color);
    border-radius: 100px
}

::-webkit-scrollbar-thumb {
    background: var(--cs-light-color);
    border-radius: 100px
}

.cs_solid_cta {
    background: var(--cs-primary-color);
    border-radius: 50px;
    border: 1px solid var(--cs-primary-color);
    transition: .3s all;
    font-size: 16px;
    font-weight: 600;
    text-transform: capitalize;
    color: var(--cs-light-color)
}

.cs_solid_cta:hover {
    background: var(--cs-secondary-color);
    color: var(--cs-primary-color)
}

header.cs_navbar {
    padding: 10px 0;
    background: var(--cs-light-color);
    position: sticky;
    top: 0;
    z-index: 99999
}

header.cs_navbar .cs_row {
    align-items: flex-end;
    justify-content: center
}

header.cs_navbar .cs_nav_menu {
    width: 378px;
    max-width: 100%
}

header.cs_navbar .cs_nav_menu ul {
    display: flex;
    align-items: center;
    justify-content: space-between
}

header.cs_navbar .cs_nav_menu ul li a {
    font-size: 16px;
    color: var(--cs-dark-color);
    font-weight: 600;
    text-transform: uppercase;
    position: relative;
    transition: .3s all
}

header.cs_navbar .cs_nav_menu ul li a::before {
    content: "";
    position: absolute;
    width: calc(100% - 16px);
    left: 8px;
    height: 2px;
    background: var(--cs-primary-color);
    transition: .3s all;
    bottom: -4px;
    transform-origin: center;
    transform: scale(0)
}

header.cs_navbar .cs_nav_menu ul li:hover a {
    color: var(--cs-primary-color)
}

header.cs_navbar .cs_nav_menu ul li:hover a::before {
    transform: scale(1)
}

header.cs_navbar .cs_logo_block,
header.cs_navbar .social_media_order_block {
    width: calc((100% - 378px)/2)
}

header.cs_navbar .cs_logo_block .cs_logo {
    max-width: 322px;
    width: 100%;
    margin: 0 auto;
}

header.cs_navbar .cs_logo_block .cs_logo img {
    width: 100%
}

header.cs_navbar .social_media_order_block .cs_row {
    justify-content: flex-end;
    align-items: center;
    gap: 35px
}

header.cs_navbar .social_media_order_block ul.social_media {
    display: flex;
    align-items: center;
    gap: 12px
}

header.cs_navbar .social_media_order_block ul.social_media li a img {
    transition: .3s all
}

header.cs_navbar .social_media_order_block ul.social_media li:hover a img {
    transform: scale(1.125)
}

header.cs_navbar .social_media_order_block .cs_solid_cta {
    display: inline-block;
    padding: 14px 38px
}

.cs_hero_block {
    position: relative
}

.cs_hero_block img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.cs_shack_finder_and_map_block {
    position: relative;
    height: 800px
}

.cs_shack_finder_and_map_block .cs_row {
    height: 100%
}

.cs_shack_finder_and_map_block .shack_finder {
    background: var(--cs-primary-color);
    width: 43%;
    padding: 64px;
    padding-left: calc((100% - 1400px)/2);
    height: 100%
}

.cs_shack_finder_and_map_block .shack_finder .inner_block h3 {
    color: var(--cs-highlight-color);
    font-size: 54px;
    font-weight: 800;
    line-height: 63px;
    text-transform: capitalize
}

.cs_shack_finder_and_map_block .shack_finder .inner_block form {
    margin-top: 18px
}

.cs_shack_finder_and_map_block .shack_finder .inner_block form input {
    width: 100%;
    padding: 7px 24px;
    background: var(--cs-light-color);
    border: 0;
    font-size: 16px;
    font-weight: 400;
    line-height: 40px;
    color: var(--cs-dark-color);
    outline: none
}

.cs_shack_finder_and_map_block .shack_finder .inner_block form::-moz-placeholder {
    color: #aeaeae;
    font-size: 16px;
    font-weight: 400;
    line-height: 40px
}

.cs_shack_finder_and_map_block .shack_finder .inner_block form::placeholder {
    color: #aeaeae;
    font-size: 16px;
    font-weight: 400;
    line-height: 40px
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list {
    margin-top: 28px;
    height: 520px;
    overflow: auto;
    padding-right: 26px
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item {
    background: var(--cs-light-color);
    padding: 12px 96px 12px 22px;
    margin-bottom: 17px;
    position: relative
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item .icon {
    position: absolute;
    right: 32px;
    top: 50%;
    transform: translateY(-50%);
    display: none
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item:last-child {
    margin-bottom: 0
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item .location_info h4 {
    font-size: 27px;
    font-weight: 700;
    color: var(--cs-dark-color);
    line-height: 34px
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item .location_info h6.location_address {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    align-items: center
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item .location_info h6.location_address span {
    color: var(--cs-dark-color);
    font-size: 22px;
    line-height: normal;
    font-weight: 400
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item .location_info a.call_btn {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    align-items: center
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item .location_info a.call_btn span {
    color: var(--cs-dark-color);
    font-size: 22px;
    line-height: normal;
    font-weight: 400
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item.selected .location_info h4 {
    color: var(--cs-primary-color)
}

.cs_shack_finder_and_map_block .shack_finder .inner_block .shack_location_list .list_item.selected .icon {
    display: block
}

.cs_shack_finder_and_map_block .map_block {
    width: 57%;
    height: 100%
}

.cs_shack_finder_and_map_block .map_block .inner {
    width: 100%;
    height: 100%
}

.cs_shack_finder_and_map_block .map_block .inner img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.cs_img_grid {
    padding: 85px 0
}

.cs_img_grid .cs_row {
    gap: 30px
}

.cs_img_grid .cs_row .img_col {
    width: calc((100% - 60px)/3)
}

.cs_img_grid .img_col .col_inner {
    display: flex;
    flex-flow: column;
    gap: 30px
}

.cs_img_grid .img_col .col_inner .img_block {
    width: 100%;
    height: 324px;
    border: 2px solid var(--cs-highlight-color)
}

.cs_img_grid .img_col .col_inner .img_block img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.cs_img_grid .img_col .solo_img_block {
    height: 100%;
    width: 100%;
    border: 2px solid var(--cs-highlight-color)
}

.cs_img_grid .img_col .solo_img_block img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

footer {
    padding: 24px 0;
    background: var(--cs-primary-color)
}

footer .cs_row {
    gap: 100px
}

footer .cs_row .cs_col {
    flex: 0 0 auto;
    width: calc((100% - 100px)/2)
}

footer .cs_row .cs_col .col_inner {
    display: flex;
    flex-wrap: wrap;
    gap: 37px;
    justify-content: space-between
}

footer .cs_row .cs_col .col_inner .logo_and_ofc_info .footer_logo {
    width: 236px;
    max-width: 100%
}

footer .cs_row .cs_col .col_inner .logo_and_ofc_info .footer_logo img {
    width: 100%
}

footer .cs_row .cs_col .col_inner .logo_and_ofc_info .ofc_info {
    margin-top: 13px
}

footer .cs_row .cs_col .col_inner .logo_and_ofc_info .ofc_info .info_item,
footer .cs_row .cs_col .col_inner .logo_and_ofc_info .ofc_info .contact_btn {
    display: block;
    font-size: 14px;
    font-weight: 400;
    line-height: 31px;
    text-transform: uppercase;
    color: var(--cs-light-color)
}

footer .cs_row .cs_col .col_inner .very_right_side .social_media_links {
    display: flex;
    align-items: center;
    gap: 12px
}

footer .cs_row .cs_col .col_inner .very_right_side .social_media_links li a img {
    transition: .3s all
}

footer .cs_row .cs_col .col_inner .very_right_side .social_media_links li:hover a img {
    transform: scale(1.125)
}

footer .cs_row .cs_col .col_inner .very_right_side p.copy_right_txt {
    font-size: 12px;
    font-weight: 400;
    line-height: 31px;
    color: var(--cs-light-color)
}

footer .footer_link_col {
    display: flex;
    flex-wrap: wrap;
    gap: 100px
}

footer .footer_link_col .footer_links {
    width: calc((100% - 100px)/2)
}

footer .footer_link_col .footer_links li a {
    font-size: 18px;
    line-height: 64px;
    text-transform: uppercase;
    border-bottom: 1px solid var(--cs-light-color);
    color: var(--cs-light-color);
    display: block;
    transition: .3s all
}

footer .footer_link_col .footer_links li:hover a {
    padding-left: 8px
}

footer .footer_link_col .footer_links li:last-child a {
    border-bottom: 0
}

.cs_menu_block {
    background: var(--cs-primary-color);
    padding: 54px 0 34px
}

.cs_menu_block .cs_row {
    gap: 34px
}

.cs_menu_block .cs_row .menu_col {
    flex: 0 0 auto;
    width: calc((100% - 102px)/4)
}

.cs_menu_block .cs_row .menu_col .menu_item {
    width: 100%
}

.cs_menu_block .cs_row .menu_col .menu_item .menu_img_block {
    width: 100%;
    aspect-ratio: 1/1;
    overflow: hidden;
    border: 2px solid var(--cs-secondary-color)
}

.cs_menu_block .cs_row .menu_col .menu_item .menu_img_block img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.cs_menu_block .cs_row .menu_col .menu_item .menu_title {
    display: block;
    margin: 24px 0 8px 0;
    text-align: center;
    text-transform: capitalize;
    color: var(--cs-light-color);
    font-size: 42px;
    font-weight: 700;
    line-height: 53px
}

.cs_menu_card {
    padding: 74px 0 16px
}

.cs_menu_card .section_heading {
    margin-bottom: 64px;
    text-align: center
}

.cs_menu_card .cs_package_list .list_row {
    display: flex;
    flex-wrap: wrap;
    padding: 20px 52px;
    border-top: 3px solid var(--cs-gray);
    gap: 16px
}

.cs_menu_card .cs_package_list .list_row:last-child {
    border-bottom: 3px solid var(--cs-gray)
}

.cs_menu_card .cs_package_list .list_row .pkg_name,
.cs_menu_card .cs_package_list .list_row .pkg_details {
    flex: 0 0 auto;
    width: calc((100% - 16px)/2)
}

.cs_menu_card .cs_package_list .list_row .pkg_name span {
    display: block;
    color: var(--cs-light-color);
    font-size: 26px;
    line-height: normal;
    font-weight: 700
}

.cs_menu_card .cs_package_list .list_row .pkg_details .details_item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 16px
}

.cs_menu_card .cs_package_list .list_row .pkg_details .details_item:last-child {
    margin-bottom: 0
}

.cs_menu_card .cs_package_list .list_row .pkg_details .details_item .pkg_desc span {
    display: block;
    color: var(--cs-light-color);
    font-size: 23px;
    line-height: normal;
    font-weight: 400
}

.cs_menu_card .cs_package_list .list_row .pkg_details .details_item .pkg_price span {
    display: block;
    color: var(--cs-light-color);
    font-size: 26px;
    line-height: normal;
    font-weight: 700
}

.cs_menu_card .cs_menu_card_footer {
    position: relative;
    padding: 88px 219px 92px
}

.cs_menu_card .cs_menu_card_footer .cs_row {
    justify-content: center;
    align-items: center;
    gap: 32px
}

.cs_menu_card .cs_menu_card_footer .cs_row .txt {
    text-align: center
}

.cs_menu_card .cs_menu_card_footer .cs_row .txt h4 {
    font-size: 39px;
    font-weight: 600;
    color: var(--cs-secondary-color);
    margin: 0
}

.cs_menu_card .cs_menu_card_footer .cs_row .txt h5 {
    font-size: 33px;
    font-weight: 400;
    text-transform: capitalize;
    color: var(--cs-light-color);
    margin: 13px 0 0 0
}

.cs_menu_card .cs_menu_card_footer .cs_row img {
    width: 219px;
    position: absolute;
    right: 0;
    bottom: 0
}

.section_heading h2 {
    color: var(--cs-secondary-color);
    font-size: 64px;
    line-height: 44px;
    font-weight: 700;
    text-transform: capitalize
}

.cs_sidebar {
    position: fixed;
    z-index: 999;
    background: #f9f9f9;
    bottom: 0;
    right: -100%;
    width: 44%;
    padding-right: calc((100% - 1400px)/2);
    transition: .3s all
}

.cs_sidebar span.close_btn {
    position: absolute;
    right: 16px;
    top: 16px;
    width: 20px;
    height: 20px;
    cursor: pointer
}

.cs_sidebar span.close_btn img {
    width: 100%
}

.cs_sidebar .sidebar_inner {
    padding-top: 48px;
    padding-left: 42px;
    padding-bottom: 24px;
    height: 100%;
    width: 100%
}

.cs_sidebar .sidebar_inner .inner_col {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    height: 100%
}

.cs_sidebar .sidebar_inner .inner_col .top_area h4 {
    font-size: 18px;
    line-height: normal;
    font-weight: 600;
    color: var(--cs-dark-color);
    margin-bottom: 32px;
    text-transform: uppercase
}

.cs_sidebar .sidebar_inner .inner_col .top_area p {
    font-size: 14px;
    font-weight: 500;
    color: var(--cs-dark-color);
    margin: 0
}

.cs_sidebar .sidebar_inner .inner_col .top_area p span {
    color: var(--cs-primary-color)
}

.cs_sidebar .sidebar_inner .inner_col .top_area p.note {
    margin-top: 24px;
    padding-left: 11px;
    border-left: 3px solid var(--cs-primary-color)
}

.cs_sidebar .sidebar_inner .inner_col .top_area p.note span {
    color: inherit
}

.cs_sidebar .sidebar_inner .inner_col .top_area p.note a {
    color: var(--cs-primary-color)
}

.cs_sidebar .sidebar_inner .inner_col .top_area form {
    width: 467px;
    max-width: 100%;
    margin-top: 16px
}

.cs_sidebar .sidebar_inner .inner_col .top_area form .field {
    background: var(--cs-light-color);
    padding: 14px;
    border: 1px solid #cecece
}

.cs_sidebar .sidebar_inner .inner_col .top_area form .field .cs_row {
    align-items: center
}

.cs_sidebar .sidebar_inner .inner_col .top_area form .field .cs_row .prefix {
    display: flex;
    align-items: center;
    width: 80px;
    justify-content: space-between;
    padding-right: 8px;
    border-right: 2px solid var(--cs-dark-color);
    background: var(--cs-light-color)
}

.cs_sidebar .sidebar_inner .inner_col .top_area form .field .cs_row .prefix span {
    font-size: 18px;
    font-weight: 600;
    color: var(--cs-dark-color)
}

.cs_sidebar .sidebar_inner .inner_col .top_area form .field .cs_row input {
    width: calc(100% - 80px);
    border: 0;
    outline: none;
    padding-left: 14px;
    font-weight: 600
}

.cs_sidebar .sidebar_inner .inner_col .top_area form .otp_field .cs_row {
    align-items: center;
    gap: 10px
}

.cs_sidebar .sidebar_inner .inner_col .top_area form .otp_field .cs_row input {
    width: 51px;
    height: 51px;
    border: 1px solid #cecece;
    padding: 10px;
    font-weight: 500;
    outline: none
}

.cs_sidebar .sidebar_inner .inner_col .btn_row {
    display: flex;
    justify-content: flex-end
}

.cs_sidebar .sidebar_inner .inner_col .btn_row .cs_solid_cta {
    padding: 14px 54px;
    font-size: 16px;
    line-height: normal;
    font-weight: 600
}

.cs_sidebar.open {
    right: 0
}