
#primary {
    width: 100%;
    max-width: 100%;
}
.post .entry-header {
    margin-bottom: 0;
}
.img-shadow img {
    box-shadow: -4.067px 9.135px 6.5px rgba(24, 23, 24, 0.66) !important;
}
.btn-bg a.elementor-button {
    background: radial-gradient(circle at top left, #f7e27e, #d4af37);
}
.btn-bg a.elementor-button:hover{
    background: #000 !important;
    color: #fff !important; 
}
.banner-heading {
    background-color: #dbbb61;
    opacity: 0.800;
}
.section {
    overflow: hidden !important;
    position: relative !important;
    z-index: 9 !important;
}
.our-fav-btn a:hover{
    background: radial-gradient(circle at top left, #f7e27e, #d4af37) !important;
    color: #000 !important;
}
.contact-form .contact-field, .contact-form .contact-field-textarea {
    color: #a8a8a8 !important;
    font-family: "Montserrat";
    font-size: 19px !important;
    line-height: 24px;
    font-weight: 400;
    border: 0 !important;
    border-bottom: 4px solid #ddc06c !important;
    padding: 10px 0 !important;
    display: inline-block;
    width: 100% !important;
    box-shadow: none !important;
    height: 100%;
    margin: 5px 0 !important;
    outline: none !important;
}
.contact-form .contact-field-textarea{
    height: 180px !important;
}
.contact-form .wpcf7-not-valid-tip {
    font-size: 15px !important;
    font-weight: 400 !important;
    font-family: "Montserrat" !important;
}
.contact-form .submit-btn {
    background: radial-gradient(circle at top left, #f7e27e, #d4af37) !important;
    color: #000 !important;
    box-shadow: none !important;
    height: 100%;
    outline: none !important;
    display: inline-block;
    font-family: "Montserrat";
    font-weight: 500;
    border-radius: 21px !important;
    padding: 14px 43px 13px 43px;
    font-size: 15px;
    line-height: 18px;
}
.contact-form .submit-btn:hover{
    background: #000 !important;
    color: #fff !important;
}
.submit-btn-form span.wpcf7-spinner {
    position: absolute;
}
.imgZoom img{
    transition: all 0.5s ease;
}
.imgZoom{
    overflow: hidden;
}
.imgZoom img:hover{
    transform: scale(1.07, 1.07);
}
.page-id-137 .header-section, .page-id-139 .header-section, .page-id-223 .header-section{
    background-color: #000 !important;
}
ul.security-info {
    margin: 0;
    padding-left: 20px;
}
.security-info li::marker {
    color: #c8a034 !important;
}
.secure-info a {
    box-shadow: none !important;
    color: #1044d9 !important;
}
.secure-info a:hover {
    text-decoration: underline !important;
}
.reserve-form .reserve-input {
    border-radius: 10px;
    filter: drop-shadow(-0.813px 1.827px 1px rgba(24, 23, 24, 0.28));
    background-color: #ffffff;
    border: 2px solid #bb8b17;
    width: 100% !important;
    box-shadow: none !important;
    height: 100%;
    outline: none !important;
    padding: 19px;
    font-size: 20px;
    line-height: 25px;
    color: #000000;
    font-weight: 400 !important;
    font-family: "Montserrat";
}
.reserve-form label {
    font-size: 20px;
    line-height: 25px;
    color: #000000;
    font-weight: 400 !important;
    font-family: "Montserrat";
}
.reserve-form .row.half-row {
    display: flex;
    gap: 60px;
}
.reserve-form  .col-6 {
    width: 50%;
}
.reserve-form  .col-12 {
    width: 100%
}
.reserve-form textarea.wpcf7-form-control.wpcf7-textarea.reserve-input {
    height: 137px !important;
}
.reserve-form .submit-btn{
    background: radial-gradient(circle at top left, #f7e27e, #d4af37) !important;
    color: #000 !important;
    box-shadow: none !important;
    height: 100%;
    outline: none !important;
    display: inline-block;
    font-family: "Montserrat";
    font-weight: 500;
    border-radius: 21px !important;
    padding: 16px 45px 15px 46px;
    font-size: 15px;
    line-height: 18px;
    text-align: center;
}
.submit-btn-form{
     text-align: center;
}
.reserve-form .submit-btn:hover{
    background: #000 !important;
    color: #fff !important;
}
.reserve-form .wpcf7-not-valid-tip {
    font-size: 15px !important;
    font-weight: 400 !important;
    font-family: "Montserrat" !important;
}
.title-shadow h2{
    filter: drop-shadow(-0.813px 1.827px 1px rgba(24,23,24,0.28));
}
.reserve-form select {
    background: #fff url(https://teahousestg1.wpenginepowered.com/wp-content/uploads/2025/09/angle-down.jpg) right no-repeat !important;
    background-size: 18px !important;
    background-position: right 19px top 26px !important;
}
.header-section {
    position: fixed !important;
    z-index: 1000 !important;
    width: 100% !important;
    background-color: transparent !important;
    transition: background-color 0.5s ease-out;
}
.header-section.active {
    background-color: rgba(0,0,0,0.8) !important;
}
.footer-menu-hide {
    display: none !important;
}
.house-catering {
    margin: 0;
    padding-left: 20px !important;
}
.catering-inquiry input[type="checkbox"] {
  width: 34px;
  height: 34px;
  border-radius: 11px !important;
  background-color: #ffffff;
  border: 2px solid #fbb000 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
}
.catering-inquiry input[type="checkbox"]:checked {
  background-color: #fbb000;
  border-color: #fbb000;
}
.catering-inquiry input[type="checkbox"]:checked::after {
  content: "✔";
  position: absolute;
  top: 4px;
  left: 8px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
}
.catering-inquiry .reserve-input {
    border: 2px solid #fbb000 !important;
}
.catering-inquiry .wpcf7-checkbox span.wpcf7-list-item {
    margin-left: 0 !important;
}
.catering-inquiry .wpcf7-list-item-label {
    position: relative;
    bottom: 10px;
    left: 10px;
}
.catering-inquiry .submit-btn-form {
    text-align: right !important;
}
.application-form .container {
    padding: 0;
    width: 100%;
    max-width: 100%;
}
.application-form label {
    font-size: 17px;
    letter-spacing: 0px;
    color: #000000;
    font-weight: 500;
    font-family: "Montserrat";
    line-height: 22px;
    margin-bottom: 8px;
}
.application-form .application-input {
    font-size: 17px;
    line-height: 22px;
    border: 2px solid #000;
    margin: 0;
    padding: 16px ;
    color: #000;
    font-weight: 500;
    box-shadow: none;
    font-family: 'Montserrat' ;
    border-radius: 21px;
    width: 100%;
    outline: none;
}
.application-form .row {
    display: flex;
    gap: 80px;
    margin: 0 -10px;
}
.application-form .col-6 {
    width: 50%;
    padding: 0 10px;
}
.application-form span.required {
    color: #ff2c97;
}
.application-form textarea.application-input {
    height: 130px;
}
.submit-wrap input.submit-btn {
    font-size: 19px;
    line-height: 23px;
    background-color: #000;
    font-weight: 500;
    color: #fff;
    font-family: 'Montserrat' !important;
    padding: 6px 25px;
    border-radius: 0;
    position: relative;
    z-index: 1;
}
.submit-wrap input.submit-btn:hover{
    background-color: #f387b0 !important;
    color: #000 !important;
}
.submit-wrap {
    text-align: right;
}
.submit-wrap span.wpcf7-spinner {
    position: absolute;
}
span.wpcf7-not-valid-tip {
    font-size: 15px;
}
.border-line h2:before {
    content: "";
    position: absolute;
    background: #000;
    height: 3px;
    width: 145px;
    bottom: -25px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    z-index: 1;
}
.row-1 {
    margin-bottom: 40px;
}
.row-2 {
    margin: 40px 0;
}
.row-3 {
    margin: 40px 0 !important;
}
.row-4 {
    margin: 40px 0 20px 0;
}
.application-form hr {
    background-color: #000 !important;
    margin: 0;
    height: 3px !important;
}
.bluezoo-link {
  color: #DBBB61;
  font-weight: 600;
  text-decoration: none;
}

.bluezoo-link:hover {
  color: #FFA700;
}



















/* ==================== RESPONSIVE CSS =================== */


@media only screen and (max-width: 1739px) {

    .header-section .inner-header {
        padding: 10px;
    }
}

@media only screen and (max-width: 1669px) {

    .header-section .inner-header {
        padding: 10px;
    }
    .header-section .elementor-nav-menu .menu-item a.elementor-item {
        padding: 0 5px !important;
    }
}

@media only screen and (max-width: 1469px) {

    .header-section .elementor-nav-menu .menu-item a.elementor-item {
        font-size: 14px !important;
    }
    .header-icon img {
        width: 24px !important;
    }
    .banner-section .banner-img img{
        height: 650px !important;
    }
    .banner-section .banner-heading h1.elementor-heading-title {
        font-size: 70px !important;
        line-height: 80px !important;
    }
    .banner-section .banner-heading {
        padding: 5px 40px !important;
    }
    .banner-top-heading h2.elementor-heading-title {
        font-size: 70px !important;
        line-height: 80px !important;
    }
}


@media only screen and (max-width: 1389px) {

    .header-section .inner-header {
        padding: 10px 5px !important;
    }
    .header-logo img {
        width: 200px !important;
    }
}


@media only screen and (max-width: 1339px) {

    .header-section .elementor-nav-menu .menu-item a.elementor-item {
        font-size: 13px !important;
    }
    .header-icon img {
        width: 22px !important;
    }
    .opening-january h2 {
        font-size: 44px !important;
        line-height: 50px !important;
    }
}


@media only screen and (max-width: 1220px) {

    .footer-menu-col {
        padding-left: 0 !important;
    }
    .menu-col{
        padding-left: 0 !important;
    }
    .contact-info{
        padding-left: 0 !important;
    }

}


@media only screen and (max-width: 1024px) {

    .banner-section .banner-img img {
        height: 500px !important;
    }
    .banner-content{
        bottom: 40px !important;
    }
    .banner-top-heading h2.elementor-heading-title {
        font-size: 56px !important;
        line-height: 56px !important;
    }
    .reserve-form .reserve-input {
        padding: 12px !important;
        font-size: 18px !important;
        line-height: 24px !important;
    }
    .reserve-form label {
        font-size: 15px !important;
        line-height: 22px !important;
    }
    .reserve-form .row.half-row {
        gap: 30px !important;
    }
    .footer-logo img {
        width: 300px !important;
    }
    .footer a.elementor-item {
        font-size: 22px !important;
        line-height: 36px !important;
    }
    .reserve-top-heading {
        padding: 0 10px !important;
    }
    .about-top-heading{
        padding: 0 10px !important;
    }
    .elementor-menu-toggle{
        background-color: transparent !important;
    }
    .elementor-menu-toggle .e-font-icon-svg {
        fill: #fff !important;
        height: 25px !important;
        width: 25px !important;
    }
    .elementor-menu-toggle {
        margin-left: 0 !important;
    }
    .header-section .elementor-nav-menu .menu-item a.elementor-item {
        padding: 5px !important;
        text-align: center !important;
        justify-content: center;
    }
    .header-section .elementor-nav-menu .menu-item a.elementor-item {
        font-size: 17px !important;
        line-height: 20px !important;
    }
    .catering-inquiry input[type="checkbox"] {
        width: 30px;
        height: 30px;
    }
    .application-form .row {
        gap: 0;
    }
    .application-form .application-input{
        padding: 13px !important;
    }
    .opening-january .banner-top-heading h2.elementor-heading-title {
        font-size: 46px !important;
        line-height: 46px !important;
    }
    .opening-january h2 {
        font-size: 34px !important;
        line-height: 40px !important;
    }
}


@media only screen and (max-width: 980px) {

    .footer .e-con-inner {
        flex-direction: column !important;
    }
    .footer .footer-logo{
        width: 100% !important;
        margin-bottom: 30px !important;
    }
    .footer-menu-col {
        width: 100% !important;
    }
    .footer a.elementor-item {
        justify-content: center !important;
    }
    .menu-col{
        width: 100% !important;
    }
    .policy-page h4.elementor-heading-title.elementor-size-default {
        text-align: center !important;
    }
    .policy-page {
        padding-top: 0 !important;
    }
    .footer .footer-menu-show {
        display: none !important;
    }
    .footer  .footer-logo{
        text-align: center !important;
    }
    .footer  .footer-diamond-logo {
        text-align: center !important;
    }
    .footer  .footer-menu-hide {
        display: block !important;
        text-align: center;
    }
    .footer .e-con-inner {
        gap: 0 !important;
    }
    .footer .contact-info {
        margin-top: 20px !important;
    }
    .contact-info {
        width: 100% !important;
    }
    .contact-info h2.elementor-heading-title.elementor-size-default {
        text-align: center;
    }
    .address-info .elementor-icon-box-wrapper {
        text-align: center !important;
    }
    .social-icon ul.elementor-icon-list-items.elementor-inline-items {
        justify-content: center;
    }
    .footer-logo img {
        width: 260px !important;
    }
    .opening-january .banner-top-heading h2.elementor-heading-title {
        font-size: 40px !important;
        line-height: 40px !important;
    }
}


@media only screen and (max-width: 767px) {

    .contact-form .contact-field, .contact-form .contact-field-textarea {
        font-size: 17px !important;
        line-height: 20px;
    } 
    .home-slider-1 {
        left: 30px !important;
        bottom: 60px !important;
    }
    .home-slider-2 {
        left: 0 !important;
        bottom: 100px !important;
        top: auto !important;
    }
    .home-slider-3 {
        right: 40px !important;
    }
    .banner-section .banner-heading h1.elementor-heading-title {
        font-size: 66px !important;
        line-height: 75px !important;
    }
    .banner-section .banner-heading {
        padding: 5px 30px !important;
    }
    .banner-section .banner-img img {
        height: 450px !important;
    }
    /* .banner-top-heading h2.elementor-heading-title {
        font-size: 40px !important;
        line-height: 40px !important;
    } */
    .home-slider-1 .banner-top-heading {
        padding: 0 !important;
    }
    .home-slider-2 .banner-top-heading {
        padding: 0 !important;
    }
    .home-slider-2 .banner-top-heading h2.elementor-heading-title.elementor-size-default {
        text-align: center;
    }
    .banner-top-heading{
        padding: 0 0 0 30px !important;
    }
    .reserve-form .reserve-input {
        padding: 10px !important;
    }
    .reserve-form .row.half-row {
        gap: 20px !important;
    }
    .page-about-content {
        bottom: 170px !important;
    }
    .header-left-block,.header-center-block,.header-right-block{
        width: auto !important;
    }
    .elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item.elementor-item-active {
        background-color: #000 !important;
        color: #fff !important;
    }
    .elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item:hover {
        background-color: #000 !important;
        color: #fff !important;
    }
    .header-section .inner-header {
        justify-content: space-between !important;
    }
    .taste-icon-block img {
        width: auto !important;
    }
    .reserve-cozy-section:before {
        background-position: right center !important;
    }
    .catering-details-section:before{
        background-position: top left !important;
    }
    .catering-inquiry .wpcf7-list-item-label {
        left: 0 !important;
        line-height: 30px !important;
    }
    .catering-details-section:before{
        background-position: top left !important;
    }
    .application-form .row {
        flex-direction: column !important;
    }
    .application-form .col-6 {
        width: 100% !important;
    }
    .row-1 {
    margin-bottom: 20px;
}
    .row-2 {
        margin: 20px 0;
    }
    .row-3 {
        margin: 20px 0 !important;
    }
    .row-4 {
        margin: 20px 0 20px 0;
    }
    .opening-january .banner-top-heading {
        padding: 15px 0 !important;
    }
    .opening-january .banner-top-heading h2.elementor-heading-title {
        font-size: 34px !important;
        line-height: 34px !important;
    }
    .opening-january h2 {
        font-size: 24px !important;
        line-height: 26px !important;
    }


}

@media only screen and (max-width: 567px) {

  .banner-section .banner-heading h1.elementor-heading-title {
        font-size: 66px !important;
        line-height: 70px !important;
    }
    .reserve-form .row.half-row {
        gap: 0 !important;
        flex-direction: column !important;
    }
    .reserve-form .col-6 {
        width: 100% !important;
    }
    .banner-top-heading h2.elementor-heading-title {
        font-size: 46px !important;
        line-height: 46px !important;
    }
    .home-slider-3 {
        top:150px !important;
    }
    .our-menu-section:before {
        background-position: bottom left !important;
        background-image: url(https://teahousestg1.wpenginepowered.com/wp-content/uploads/2025/11/1890-Menu-Bottom-Picture-Mobile-scaled.jpg) !important;
    }
    .header-logo img {
        width: 160px !important;
    }
    .opening-january .banner-top-heading h2.elementor-heading-title {
        font-size: 24px !important;
        line-height: 30px !important;
    }
     .opening-january .banner-top-heading {
        padding: 10px 0 !important;
    }
    .opening-january h2 {
        font-size: 18px !important;
        line-height: 20px !important;
    }
}