/* Global start */
body {
    color: #102D3A;
}

.cabb-btn-primary {
    background: #1F4054 !important;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1 !important;
    letter-spacing: normal !important;
    padding: 10px 18px !important;
    border-radius: 8px !important;
    border: 2px solid transparent !important;
}

body .cabb-btn-primary:hover {
    background: #102633 !important;
    color: #fff !important;
}

body.woocommerce-page {
    background: var(--cabb-color-bg);
}

.woocommerce_wrap .woocommerce {
    font-size: 16px !important;
}

body main .woocommerce_wrap {
    max-width: 760px !important;
    padding-top: 48px !important;
    padding-bottom: 48px !important;
}

main .woocommerce_wrap > .wp-block-group {
    background: #fff !important;
    border: 1px solid #C4C4C4;
    border-radius: 8px;
    padding: 32px !important;
}

.notice-success {
    max-width: none !important;
}
/* Global end */

/* Header start */
.header.hero {
    background: linear-gradient(to bottom, rgba(23, 64, 83, 1) 0%, transparent 100%) !important;
    position: fixed !important;
    width: 100% !important;
}

.header.scroll {
    background: #174053 !important;
}

.header {
    background: #174053 !important;
    box-shadow: none !important;
    color: #fff !important;
    transition: background 0.3s ease-in-out !important;
}

.header .header_inner {
    height: auto !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}

.header .header_left {
    padding-right: 48px !important;
}

.header .header_left .header_logo img,
.header .header_left .header_logo svg {
    max-height: 77px !important;
}

.header .header_right ul.navbar-nav a.active,
.header .header_right ul.navbar-nav a:hover {
    color: inherit !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

.header .header_right .right_top {
    position: relative !important;
    margin-bottom: 5px !important;
}

.header .header_right .right_top ul.navbar-nav li:last-child {
    padding-right: 15px !important;
}

.header .header_right .right_bottom .cabb-btn-primary {
    background: #fff !important;
    color: #212529 !important;
}

.header .header_right .right_bottom .burger .line {
    background: #fff !important;
}

.header .header_right .right_bottom ul.navbar-nav li {
    padding: 8px 16px !important;
    margin-right: 20px !important;
}

.header .header_right .right_bottom ul.navbar-nav li:last-child {
    padding-right: 16px !important;
    margin-right: 0 !important;
}

@media (max-width: 1070px) {
    .header.hero {
        background: #174053 !important;
    }

    .header .header_right .right_top {
        display: none !important;
    }

    .header .header_right .right_bottom ul.navbar-nav {
        display: none !important;
    }

    .header .header_right .right_bottom .burger {
        display: block !important;
    }
}

@media (max-width: 600px) {
    .header .header_inner {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }

    .header .header_left .header_logo img,
    .header .header_left .header_logo svg {
        max-width: 130px !important;
        max-height: 50px !important;
    }
}
/* Header end */

/* Footer start */
.footer {
    background: #174053 !important;
}

.footer .footer_container {
    font-size: 16px !important;
}
/* Footer end */

/* Golf ID form start */
.golf_id_form {
    color: #102D3A !important;
}

.golf_id_form .spinner svg {
    color: #174053 !important;
}

.golf_id_form .form_inner {
    max-width: 696px !important;
}

.golf_id_form .form_title {
    font-size: 32px !important;
    text-align: center !important;
}

.golf_id_form .form_description {
    font-size: 18px !important;
    text-align: center !important;
    color: #767676 !important;
}

.golf_id_form .form_description a {
    color: #767676 !important;
}

.golf_id_form .form_item.submit button {
    width: 100% !important;
}
/* Golf ID form end */

/* Product page start */
body.product-template-default {
    background: #fff !important;
}
/* Product page end */

/* Cart page start */
body.woocommerce-cart .woocommerce_wrap .wp-block-group > h2 {
    display: none !important;
}

body .woocommerce_wrap .wp-block-woocommerce-cart {
    max-width: none !important;
}

body.woocommerce-cart .wc-block-cart-item__image {
    display: none !important;
}

body.woocommerce-cart .wc-block-cart-item__product {
    grid-column-start: 1 !important;
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
    font-family: var(--cabb-font-heading) !important;
    font-size: 20px !important;
    font-weight: 600 !important;
}

table.wc-block-cart-items .wc-block-components-product-metadata {
    font-family: var(--cabb-font-heading) !important;
    color: #404040 !important;
    font-size: 14px !important;
}

table.wc-block-cart-items .wc-block-components-product-metadata li {
    padding-bottom: 8px !important;
}

table.wc-block-cart-items .wc-block-components-product-metadata li .wc-block-components-product-details__name {
    font-weight: 600 !important;
    color: #000 !important;
}

table.wc-block-cart-items .wc-block-cart-item__remove-link {
    display: none !important;
}

main .wp-block-woocommerce-cart-order-summary-shipping-block {
    display: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-subtotal-block {
    display: none !important;
}

main .wc-block-cart__submit-button {
    background: #174053 !important;
    border-radius: 8px !important;
}

main .wc-block-cart__submit-button:hover {
    color: #fff !important;
}
/* Cart page end */

/* Checkout page start */
body.woocommerce-checkout .woocommerce_wrap .woocommerce {
    max-width: none !important;
}

body.woocommerce-checkout .product-quantity {
    display: none !important;
}

body.woocommerce-checkout .wc-svea-checkout-page {
    max-width: 620px !important;
    margin: 0 auto !important;
}

body.woocommerce-checkout h3 {
    font-size: 24px !important;
    font-weight: 600 !important;
    margin-bottom: 16px !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table {
    font-size: 16px !important;
    width: 100% !important;
    padding: 8px 16px !important;
    border: 1px solid #D6D4D4 !important;
    border-radius: 5px !important;
    border-collapse: separate !important;
}

body.woocommerce-checkout main .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout main .woocommerce-checkout-review-order-table td {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}

body.woocommerce-checkout main .woocommerce-checkout-review-order-table thead th {
    font-weight: 600 !important;
    border-bottom: 1px solid #E1DFDF;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation {
    padding: 10px 0 0 10px !important;
    font-size: 14px !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt {
    float: left;
    clear: both;
    margin-right: .25em;
    display: inline-block;
    list-style: none outside;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd,
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd p {
    margin: 0;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
    font-weight: 600 !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total {
    font-size: 14px !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-subtotal td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .fee td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
    text-align: right !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart-subtotal th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart-subtotal td {
    border-bottom: 1px solid #E1DFDF;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart-subtotal th {
    font-weight: normal;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals {
    display: none !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td {
    border-bottom: none !important;
}

body.woocommerce-checkout main .woocommerce-checkout-review-order-table tr.cart_item td {
    border-bottom: 1px solid #E1DFDF;
}

body.woocommerce-checkout main .woocommerce-checkout-review-order-table .note {
    font-size: 13px !important;
    border-top: 1px solid #E1DFDF !important;
}

body.woocommerce-checkout #order_comments_field label {
    display: none !important;
}

body.woocommerce-checkout #order_comments {
    font-size: 16px !important;
}

@media (max-width: 800px) {
    body.woocommerce-checkout .page_top h2 {
        font-size: 26px !important;
    }

    body.woocommerce-checkout .page_top .page_description {
        font-size: 16px !important;
    }
}

/* Checkout page end */

/* Thank you page start */
body.woocommerce-order-received .cabb-block.status {
    display: none !important;
}

body.woocommerce-order-received .thank_you_content {
    background: none !important;
    font-family: var(--cabb-font-heading);
}

body.woocommerce-order-received .thank_you_content .content_inner {
    max-width: none !important;
    padding: 0 !important;
}

body.woocommerce-order-received main .woocommerce table.shop_table {
    font-size: 14px !important;
}

body.woocommerce-order-received main .woocommerce table.shop_table th,
body.woocommerce-order-received main .woocommerce table.shop_table td {
    padding: 16px 0 !important;
}

body.woocommerce-order-received main .woocommerce table.shop_table td:first-child {
    font-weight: 600 !important;
}

body.woocommerce-order-received main .woocommerce table.shop_table td:last-child {
    text-align: right !important;
}

body.woocommerce-order-received main .woocommerce table.shop_table ul.wc-item-meta {
    font-weight: normal !important;
}
/* Thank you page end */

/* Hero block start */
.cabb-block.hero .block_wrap::after {
    position: absolute !important;
    display: block !important;
    content: '';
    background: rgba(0, 0, 0, 0.3) !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
}

.cabb-block.hero .block_inner {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
}

.cabb-block.hero .content_col {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    padding: 0 20px !important;
}

.cabb-block.hero .hero_title {
    text-align: center !important;
    margin-bottom: 8px !important;
}

.cabb-block.hero .hero_title .title_top {
    font-family: var(--cabb-font-body) !important;
    font-weight: 500 !important;
    font-style: italic !important;
    font-size: 24px !important;
    padding-bottom: 8px !important;
}

.cabb-block.hero .hero_title .title_bottom {
    font-size: 48px !important;
    text-transform: uppercase !important;
}

.cabb-block.hero .hero_text {
    font-family: var(--cabb-font-heading) !important;
    text-align: center !important;
    padding-bottom: 0 !important;
}

.cabb-block.hero .cta_buttons {
    padding-top: 27px !important;
}

@media (max-width: 600px) {
    .cabb-block.hero .hero_title .title_top {
        font-size: 20px !important;
    }

    .cabb-block.hero .hero_title .title_bottom {
        font-size: 28px !important;
    }
}
/* Hero block end */

/* Page header block start */
.page_header {
    background-image: url('../../../images/sites/4/gradients/1.webp') !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
    color: #fff !important;
}

.page_header .block_wrapper.w_article {
    max-width: 670px !important;
}
/* Page header block end */

/* Article page start */
body.single-post .page_header {
    background: none !important;
    color: inherit !important;
    margin-bottom: 0 !important;
}

/*body.single-post main > p:has(+ ul) {
    margin-bottom: 0 !important;
}*/

body.single-post main > p,
body.single-post main > figure.wp-block-image,
body.single-post .wp-block-quote,
body.single-post main > h1,
body.single-post main > h2,
body.single-post main > h3,
body.single-post main > h4,
body.single-post main > h5,
body.single-post main > ul.wp-block-list,
body.single-post main > ol.wp-block-list,
body.single-post .cabb-block.text-list {
    max-width: 670px !important;
}

body.single-post main > h1,
body.single-post main > h2,
body.single-post main > h3,
body.single-post main > h4,
body.single-post main > h5 {
    font-weight: 600 !important;
    margin: 0.5em auto !important;
}

body.single-post main > figure.wp-block-image.alignwide,
body.single-post blockquote.wp-block-quote.alignwide {
    max-width: 900px !important;
}

body.single-post blockquote.wp-block-quote.alignwide {
    padding-left: 20px !important;
    padding-right: 20px !important;
    width: calc(100% - 40px) !important;
}

body.single-post main > ul.wp-block-list, body.single-post main > ol.wp-block-list {
    width: calc(100% - 40px) !important;
}

body.single-post main > ul.wp-block-list li, body.single-post main > ol.wp-block-list li {
    padding-bottom: 4px;
}

blockquote.wp-block-quote p {
    font-size: 40px !important;
    line-height: 1.2 !important;
    font-weight: normal !important;
    font-style: normal !important;
    text-align: center !important;
}

@media (max-width: 600px) {
    blockquote.wp-block-quote p {
        font-size: 28px !important;
    }
}
/* Article page end */

/* Image + text block start */
.cabb-block.img-txt .block_image img {
    border-radius: 8px !important;
}

.cabb-block.img-txt.txt_img .block_content {
    color: #102D3A !important;
}

.cabb-block.img-txt .top_title {
    color: #405761 !important;
}

.cabb-block.img-txt .block_title {
    font-size: 32px !important;
    font-weight: 700 !important;
}

.cabb-block.img-txt .block_text {
    font-size: 18px !important;
    font-weight: normal !important;
}

.cabb-block.img-txt .block_buttons {
    margin: -8px !important;
}

.cabb-block.img-txt .block_buttons .button_item {
    padding: 8px !important;
}

.cabb-block.img-txt .block_buttons .button_item:nth-child(odd) .cabb-btn-primary {
    background: #1F4054 !important;
    color: #fff !important;
}

.cabb-block.img-txt .block_buttons .button_item:nth-child(odd) .cabb-btn-primary:hover {
    background: #102633 !important;
}

.cabb-block.img-txt .block_buttons .button_item:nth-child(even) .cabb-btn-primary {
    border: 2px solid #174053 !important;
    background: transparent !important;
    color: #174053 !important;
}

.cabb-block.img-txt .block_buttons .button_item:nth-child(even) .cabb-btn-primary:hover {
    background: #D3E1E6 !important;
}
/* Image + text block end */

/* Cards grid start */
.cabb-block.cards-grid {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}

.cabb-block.cards-grid .cards_list {
    justify-content: center !important;
}

.cabb-block.cards-grid .card_item .card_inner {
    border-radius: 8px !important;
    overflow: hidden !important;
}

.cabb-block.cards-grid .card_item .card_icon svg {
    color: #4D6A5B !important;
    width: 32px !important;
}

.cabb-block.cards-grid .card_item.text_light .card_icon svg {
    color: #fff !important;
}

.cabb-block.cards-grid .card_item .card_title {
    font-size: 18px !important;
}

.cabb-block.cards-grid .card_item .card_description {
    font-size: 18px !important;
}
/* Cards grid end */

/* Q&A block start */
.cabb-block.qa .block_wrap {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}

.cabb-block.qa.col_1 .block_inner {
    max-width: 760px !important;
}

.cabb-block.qa.col_2 .block_inner {
    gap: 48px !important;
}

.cabb-block.qa.col_1 .block_main {
    text-align: center !important;
    max-width: none !important;
    padding: 0 0 48px !important;
}

.cabb-block.qa.col_2 .block_main {
    flex: 1 !important;
    max-width: none !important;
    padding-right: 0 !important;
}

.cabb-block.qa .block_title {
    font-size: 32px !important;
}

.cabb-block.qa .block_description p:last-child {
    margin: 0 !important;
}

.cabb-block.qa .qa_item {
    background: #fff !important;
    border-bottom: none !important;
    border-radius: 8px !important;
    margin-bottom: 16px !important;
}

.cabb-block.qa .qa_item:hover,
.cabb-block.qa .qa_item.active {
    border-left-color: var(--cabb-color-hover) !important;
}

.cabb-block.qa .qa_item .item_question .question_text {
    font-size: 18px !important;
    font-weight: 600 !important;
}

.cabb-block.qa .qa_item .item_answer {
    margin-top: 0 !important;
    font-weight: normal !important;
}

@media (max-width: 860px) {
    .cabb-block.qa.col_2 .block_main {
        padding-bottom: 0 !important;
    }
}
/* Q&A block end */

/* Banner block start */
.cabb-block.banner.text_dark {
    color: #102D3A !important;
}

.cabb-block.banner.custom_gradient {
    background: linear-gradient(90deg, #1F4054 0%, #6D9198 100%) !important;
}

.cabb-block.banner .banner_text {
    font-size: 18px !important;
    line-height: 1.44 !important;
    font-style: normal !important;:
}

.cabb-block.banner .block_buttons .cta_button:nth-child(even) .cabb-btn-primary {
    background: #D2DFDD !important;
    color: #102D3A !important;
}

.cabb-block.banner .block_buttons .cta_button:nth-child(even) .cabb-btn-primary:hover {
    background: var(--cabb-color-hover) !important;
    color: #fff !important;
}
/* Banner block end */

/* Form block start */
.cabb-block.form.col_1 .block_top {
    text-align: center !important;
    max-width: 670px !important;
}

.cabb-block.form .form_text {
    font-weight: normal !important;
}

.cabb-block.form .block_bottom {
    max-width: 760px !important;
}

.cabb-block.form .hubspot_form label {
    font-weight: 700 !important;
}

.cabb-block.form .hubspot_form input.hs-input[type="text"],
.cabb-block.form .hubspot_form input.hs-input[type="email"],
.cabb-block.form .hubspot_form input.hs-input[type="tel"],
.cabb-block.form .hubspot_form select.hs-input,
.cabb-block.form .hubspot_form textarea.hs-fieldtype-textarea {
    border-color: transparent !important;
    border-radius: 4px !important;
}

.cabb-block.form .hubspot_form input.hs-button {
    border-radius: 4px !important;
    background: var(--cabb-color-main) !important;
}

.cabb-block.form .hubspot_form input.hs-button:hover {
    color: #fff !important;
}
/* Form block end */

/* Footer start */
.footer {
    padding: 40px 20px !important;
}

.footer .footer_container p:last-child {
    margin: 0 !important;
}

.footer .logo_module img, .footer .logo_module svg {
    max-width: 300px !important;
    width: 300px !important;
    height: 113px !important;
}

.footer .footer_bottom {
    padding-top: 48px !important;
}
/* Footer end */

/* Testimonials block start */
.cabb-block.testimonials .testimonial_item .item_inner {
    justify-content: flex-start !important;
}

.cabb-block.testimonials .testimonial_item .quote {
    display: none !important;
}

.cabb-block.testimonials .testimonial_item .author {
    order: 0 !important;
    flex-direction: column !important;
    padding-top: 0 !important;
}

.cabb-block.testimonials .testimonial_item .author_avatar img {
    width: 50px !important;
    height: 50px !important;
}

.cabb-block.testimonials .testimonial_item .author_name {
    text-align: center !important;
    font-family: var(--cabb-font-heading) !important;
    font-size: 19px !important;
    font-weight: 600 !important;
    color: #6D9198 !important;
    width: 100% !important;
    padding: 16px 0 !important;
}

.cabb-block.testimonials .testimonial_item .quote_content {
    order: 1 !important;
}

.cabb-block.testimonials .testimonial_item .review {
    font-size: 24px !important;
    font-weight: normal !important;
    line-height: 1.33 !important;
    text-align: center !important;
}
/* Testimonials block end */

/* Related articles block start */
.cabb-block.related-articles .article_item .article_inner {
    background: #fff !important;
    border-radius: 8px !important;
    border: 1px solid #F2F2F2 !important;
    box-shadow: 2px 5px 15px 0 rgba(209, 209, 209, 0.20) !important;
}

.cabb-block.related-articles .article_item .article_image {
    padding-bottom: 0 !important;
}

.cabb-block.related-articles .article_item .article_image img.logo {
    filter: brightness(0.9) !important;
}

.cabb-block.related-articles .article_item .article_content {
    padding: 16px !important;
}

.cabb-block.related-articles .article_item .article_description {
    font-size: 16px !important;
    line-height: 1.5 !important;
}

.cabb-block.related-articles .cta_button a {
    background: #B2C7C3 !important;
    padding: 12px 20px !important;
    color: #1F4054 !important;
}

.cabb-block.related-articles .cta_button a:hover {
    background: #A0B6B1 !important;
}
/* Related articles block end */

/* Archive start */
.archive_block {
    padding-top: 32px !important;
}

.articles_list .article_card .card_inner {
    transition: transform 0.2s ease-in-out !important;
}

.articles_list .article_card .card_inner:hover {
    transform: translateY(-10px) !important;
}

.articles_list .article_card .card_image {
    overflow: hidden !important;
}

.articles_list .article_card .card_image > img {
    transition: transform 0.5s ease-in-out !important;
}

.articles_list .article_card a.card_link:hover .card_image > img {
    transform: scale(1.2) !important;
}

.articles_list .article_card .card_image.empty img {
    filter: brightness(0.8) !important;
}
/* Archive end */

/* Courses & Rangers start */
.cabb-block.courses .articles_list .article_card .card_inner,
.cabb-block.rangers .articles_list .article_card .card_inner {
    border-radius: 8px !important;
    overflow: hidden !important;
    border: 1px solid #F2F2F2 !important;
    box-shadow: 2px 5px 15px 0 rgba(209, 209, 209, 0.20) !important;
}

.cabb-block.courses .articles_list .article_card .card_image,
.cabb-block.rangers .articles_list .article_card .card_image {
    aspect-ratio: 156 / 75 !important;
}

.cabb-block.courses .articles_list .article_card .card_image > img,
.cabb-block.rangers .articles_list .article_card .card_image > img {
    aspect-ratio: 156 / 75 !important;
    width: 100% !important;
}

.cabb-block.courses .articles_list .article_card .card_content,
.cabb-block.rangers .articles_list .article_card .card_content {
    padding: 16px 24px 20px !important;
}
/* Courses & Rangers end */

/* Text + List block start */
.cabb-block.text-list {
    max-width: 840px !important;
}

.cabb-block.text-list .block_content h3 {
    font-size: 32px !important;
    font-weight: 600 !important;
}

.cabb-block.text-list .widget_list .list_title {
    font-size: 24px !important;
}

.cabb-block.text-list .block_sidebar {
    width: 189px !important;
}

.cabb-block.text-list .widget_list ul li .icon {
    background: #EDF2F2 !important;
}

.cabb-block.text-list .widget_list ul li .text {
    font-family: var(--cabb-font-heading) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}
/* Text + List block end */

/* Courses block start */
.page_header + .cabb-block.courses {
    padding-top: 80px !important;
}
/* Courses block end */

/* Rangers block start */
.page_header + .cabb-block.rangers {
    padding-top: 80px !important;
}
/* Rangers block end */
