/**
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Template:     astra
Note: The CSS files are loaded from assets/css/ folder.
Version:      1.1.314
*/

/* Hide LearnDash profile image and edit profile link */
.ld-profile-avatar, .ld-profile-edit-link {
  display: none; 
}
/* Hide LearnDash post top author + date info */
.single-sfwd-courses .p-meta,
.single-sfwd-lessons .p-meta,
.single-sfwd-topic .p-meta,
.single-sfwd-quiz .p-meta,
.single-sfwd-assignment .p-meta,
.single-sfwd-essays .p-meta {
	display: none;
}
/* Hide google recapcha badge */
.grecaptcha-badge { 
	visibility: hidden; 
}

/* Hide the comment form Website field */
p.comment-form-url {
    display: none;
}

/* UAP Styling */
.uap-become-affiliate-bttn {
    background: #313d85;
}

/* Remove comment & review avatar images from products */
.single-product .x-comment-img {
  display: none;
}
.single-product #reviews article.comment {
  margin-left: 0;
}
/* Remove comment & review avatar images from posts */
.single-post.x-comment-img {
  display: none;
}
.single-post #comments article.comment {
  margin-left: 0;
}
/* Disable copy/paste on learndash pages */
.single-sfwd-lessons , .single-sfwd-quiz {
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Safari */
  -khtml-user-select: none; /* Konqueror HTML */
  -moz-user-select: none; /* Old versions of Firefox */
  -ms-user-select: none; /* Internet Explorer/Edge */
   user-select: none; /* Non-prefixed version, currently supported by Chrome, Opera and Firefox */
}

/* Left align quiz feedback */
.learndash-wrapper .wpProQuiz_content .wpProQuiz_response p {
    text-align: left;
}

/* Hide BetterDocs last updated date */
.betterdocs-last-update  {display: none;}

/* Hide WooCommerce Breadcrumbs */
.woo-breadcrumbs { display: none; }

/* Conditionally hide login / logout links in topbar based on login/logout status */
.wp-logout-url { display: none;}
.logged-in .wp-logout-url { display: inline; }
.logged-in .wp-login-url { display: none; }

/* Search result page image size fix */
.search-results .product.has-post-thumbnail img {
	width:250px; 
	height:250px; 
	max-width:250px; 
	max-height:250px; 
} 

/* Hide Learndash Avatar */
.ld-profile-avatar {
	display: none;
}

/* Gtranslate styling for Learndash focus mode. Code and div added direct to template file */
.sk-gtranslate {
    padding-left: 10px !important;
}

/* css for gtranslate plugin */
.x-topbar p {margin-bottom: 1px;}
.gt_switcher-popup.glink.nturl.notranslate img {width:20px!important;}
body .x-topbar .p-info a {border:0;}
.gt_white_content {background-color:black !important;}
.gt_white_content a {color:white !important;}
.gt_white_content a:hover { color: blue !important;}
.e-con-inner p {margin-bottom: 1px;}
.glink.nturl.notranslate {color:white !important;}
.ld-focus-header .glink.nturl.notranslate { color: blue !important;}
.ld-focus-main .gtranslate-sk {margin-left:15px;}

/* Reduce WooCommerce product image size on tablets */
@media (min-width: 768px) and (max-width: 1024px) {
	.single-product div.product {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .single-product div.product .woocommerce-product-gallery {
    width: 42% !important;
    max-width: 42% !important;
  }

  .single-product div.product .summary {
    width: 54% !important;
    max-width: 54% !important;
    margin-left: 4%;
  }

  .single-product div.product .woocommerce-product-gallery img {
    width: 100%;
    height: auto;
  }
}

/* When is VAT styling */
.single-product .vat-price-note {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    margin-left: 8px;
    text-decoration: none;
}

/* Add margin around product meta */
.single-product .cg-course-meta-info {
    margin-top: 8px;
	margin-bottom: 8px;
}

/* Remove image shadow */
img {
    box-shadow: none !important;
}   

/* Reduce spacing between tags line and Description, Reviews, Alternative Dates */
.single-product .product_meta {
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
}
.single-product .woocommerce-tabs {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.single-product .woocommerce div.product .woocommerce-tabs ul.tabs {
    margin-top: 0 !important;
}



/* Hide "Comments are closed." message */
.comments-area .no-comments {
	display: none;
}

/* TSM Shortcode Button */
.tsm-button {
    transition: all 0.3s ease;
}
.tsm-button:hover,
.tsm-button:focus {
    background-color: var(--e-global-color-primary) !important;
    border-color: var(--e-global-color-primary) !important;
    color: #fff !important;
}

/* Spacing for unordered lists */
.entry-content ul li {
    padding-left: 20px;  
    margin-bottom: 2px;  
}
/* Spacing for ordered lists */
.entry-content ol li {
    padding-left: 20px;
    margin-bottom: 2px;
}

/* Keep site logo visible for mobile on Learndash focus mode */
@media (max-width: 768px) {
	.learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo {
		display: block;
	}
}

/* Ubermenu full width menu via Elementor / Astra */
@media (min-width: 768px) {
    .ubermenu.ubermenu-main.ubermenu-horizontal .ubermenu-submenu-drop.ubermenu-submenu-align-full_width,
    .ubermenu.ubermenu-main.ubermenu-horizontal .ubermenu-submenu-drop.ubermenu-submenu-align-left_edge_bar {
        position: fixed !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: min(1140px, calc(100vw - 24px)) !important;
        max-width: calc(100vw - 24px) !important;
        overflow-y: auto !important;
        max-height: calc(100vh - 80px) !important;
    }
}

/* Reduce gap between header and content on Astra + Elementor pages */
@media (min-width: 1200px) {
    .ast-plain-container.ast-no-sidebar #primary {
        margin-top: 0 !important;
		margin-bottom: 30px !important;
    }
}

/* Fix Ubermenu scroll on mobile */
@media (max-width: 921px) {

    html.ubermenu-mobile-lock,
    body.ubermenu-mobile-lock {
        overflow: hidden !important;
        height: 100% !important;
    }

    .ubermenu-main .ubermenu-submenu.ubermenu-submenu-drop {
        max-height: calc(100vh - 190px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
    }
}


/********************************/
/* Theme My Login - Astra style */
/********************************/

/* Main form box */
.tml {
    max-width: 560px !important;
    margin: 35px auto 70px !important;
    padding: 55px 65px !important;
    border: 1px solid #d5d8dc !important;
    background: #fff !important;
}

/* Hide default page title */
body.tml-action .entry-header {
    display: none !important;
}

/* Form headings */
.tml::before {
    display: block;
    margin-bottom: 30px;
    color: #1f2d3d;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

body.tml-action-login .tml::before {
    content: "Log In";
}

body.tml-action-register .tml::before {
    content: "Register";
}

body.tml-action-lostpassword .tml::before {
    content: "Lost Password";
}

body.tml-action-resetpass .tml::before {
    content: "Reset Password";
}

/* Hide only text-field labels */
body.tml-action-login .tml label[for="user_login"],
body.tml-action-login .tml label[for="user_pass"],
body.tml-action-register .tml label[for="user_login"],
body.tml-action-register .tml label[for="user_email"],
body.tml-action-register .tml label[for="pass1"],
body.tml-action-register .tml label[for="pass2"],
body.tml-action-register .tml label[for="user_pass1"],
body.tml-action-register .tml label[for="user_pass2"],
body.tml-action-lostpassword .tml label[for="user_login"] {
    display: none !important;
}

/* Inputs */
.tml input:is([type="text"], [type="password"], [type="email"]) {
    width: 100% !important;
    height: 50px !important;
    padding: 12px 16px !important;
    border: 1px solid #d5d8dc !important;
    border-radius: 3px !important;
    font-size: 16px !important;
}

/* Buttons */
.tml :is(.tml-button, input[type="submit"], button[type="submit"]) {
    display: block !important;
    width: 100% !important;
    height: 48px !important;
    box-sizing: border-box !important;
    margin-top: 10px !important;
    border: none !important;
    border-radius: 0 !important;
    background: #0170d7 !important;
    color: #fff !important;
    font-size: 16px !important;
}

/* Buttons hover */
body.tml-action .tml-button:hover,
body.tml-action .tml-button:focus {
    background: #009fe3 !important;
    color: #fff !important;
}

/* Checkbox labels */
.tml .tml-rememberme-wrap label,
.tml label:has(input[type="checkbox"]) {
    display: inline-block !important;
}

/* Links */
.tml .tml-links {
    margin: 25px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
    text-align: center !important;
}

.tml .tml-links li {
    margin: 12px 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.tml .tml-links a,
.sk-register-link a {
    color: #0170d7 !important;
    text-decoration: none !important;
}

.tml .tml-links a:hover,
.sk-register-link a:hover {
    text-decoration: underline !important;
}

/* Register page spacing */
body.tml-action-register .tml {
    max-width: 640px !important;
    margin: 25px auto 40px !important;
    padding: 45px 70px !important;
}

body.tml-action-register .tml .tml-field-wrap {
    margin-bottom: 14px !important;
}

body.tml-action-register .tml :is(.description, .tml-description) {
    margin: 18px 0 22px !important;
    line-height: 1.5;
}

/* Register link on /my-account/ */
.sk-register-link {
    margin: 0 0 12px !important;
    padding: 0 !important;
    text-align: center !important;
}

/* Reduce space before WooCommerce lost password link */
.woocommerce-LostPassword {
    margin-top: 0 !important;
}

/* Add title inside WooCommerce lost password box */
.woocommerce-lost-password .woocommerce-ResetPassword::before {
    content: "Lost Password";
    display: block;
    font-size: 30px;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 20px;
    text-align: center;
}

/* Hide client scroller on Theme My Login pages */
body.tml-action footer :is(
    .elementor-widget-image-carousel,
    .elementor-image-carousel-wrapper,
    .swiper,
    .slick-slider,
    .sk-client-scroller,
    .sk-client-image-scroller
) {
    display: none !important;
}

/* Reduce space between post navigation and comments */
.post-navigation {
    margin-bottom: 20px !important;
    padding-bottom: 0 !important;
}
.comments-area {
    margin-top: 20px !important;
    padding-top: 0 !important;
}

/* Add space below review stars/count on product pages */
.single-product .cr-reviews-rating {
    margin-bottom: 10px !important;
}

/* Blog posts only - floated featured image */
.single-post .post-thumb-img-content {
    display: none;
}

.single-post .sk-inline-featured-image {
    float: left;
    width: 35%;
    max-width: 400px;
    height: auto;
    margin: 0 30px 20px 0;
}

@media (max-width: 768px) {
    .single-post .sk-inline-featured-image {
        float: none;
        width: 100%;
        max-width: 100%;
        margin: 0 0 20px 0;
    }
}


/* ==========================================================
   LearnDash Quiz Styling
   ========================================================== */

/* Active quiz - align radio buttons and answer text */
.learndash-wrapper .wpProQuiz_questionListItem label {
    display: grid !important;
    grid-template-columns: 20px 1fr !important;
    column-gap: 14px !important;
    align-items: start !important;
}

.learndash-wrapper .wpProQuiz_questionListItem input.wpProQuiz_questionInput {
    margin: 4px 0 0 0 !important;
}

/* ----------------------------------------------------------
   Quiz review - fix Correct/Incorrect labels and tick/cross
   ---------------------------------------------------------- */

.ld-quiz-question-item label.is-selected {
    position: relative !important;
    display: block !important;
    padding-left: 55px !important;
    text-align: left !important;
}

/* Tick / cross icon */
.ld-quiz-question-item label.is-selected::before {
    position: absolute !important;
    left: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
}

/* Replaced 
// Hide the unused status labels
.ld-quiz-question-item__status span {
    display: none !important;
}

// Show only the active status
.ld-quiz-question-item__status--correct,
.ld-quiz-question-item__status--incorrect,
.ld-quiz-question-item__status--missed {
    display: inline-block !important;
}

// Status text below answer 
.ld-quiz-question-item__status {
    display: block !important;
    position: static !important;
    margin-top: 8px !important;
    text-align: left !important;
    line-height: 1.3 !important;
}
*/

/* Hide radio input only on review/result pages */
.ld-quiz-question-item label.is-selected input.wpProQuiz_questionInput {
    display: none !important;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .ld-quiz-question-item label.is-selected {
        padding-left: 50px !important;
    }

    .ld-quiz-question-item label.is-selected::before {
        left: 15px !important;
    }
}


/* WooCommerce Thank You page - purchase note */
.woocommerce-table__product-purchase-note td {
    text-align: left !important;
}

.woocommerce-table__product-purchase-note p {
    margin: 0 !important;
}

/* Purchase note link */
.woocommerce-table__product-purchase-note a {
    color: var(--ast-global-color-0) !important;
    text-decoration: none !important;
    font-weight: 600;
}

/* Purchase note link hover */
.woocommerce-order-received 
.woocommerce-table__product-purchase-note td a:hover,
.woocommerce-order-received 
.woocommerce-table__product-purchase-note td a:focus {
    color: #009fe3 !important;
    text-decoration: none !important;
}

/* Match spacing of moved account password field */
/* Removed once password field moved up below email */
/*
.woocommerce-checkout #account_password_field {
    margin-top: 8px !important;
    margin-bottom: 1.5em !important;
}

.woocommerce-checkout #account_password_field .woocommerce-input-wrapper {
    display: block;
}
*/

/* Reduce spacing on product page between content and footer */
.single-product .woocommerce-tabs.wc-tabs-wrapper {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.single-product .woocommerce-tabs .panel {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}


/* Booster Product Open Pricing - compact inline layout */
.single-product form.cart:has(#wcj_open_price) {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
/* Hide the unused quantity field */
.single-product form.cart:has(#wcj_open_price) .quantity {
    display: none;
}
/* Label */
.single-product form.cart:has(#wcj_open_price) label[for="wcj_open_price"] {
    margin: 0;
    white-space: nowrap;
}
/* Amount field */
.single-product form.cart:has(#wcj_open_price) #wcj_open_price {
    width: 90px !important;
    height: 48px;
    text-align: center;
    margin: 0;
}
/* Buy button */
.single-product form.cart:has(#wcj_open_price) .single_add_to_cart_button {
    margin: 0 !important;
    height: 48px;
    min-width: 100px;
}

/* Learndash View Questions & Restart button colours */
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button_reShowQuestion,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button_restartQuiz {
    background-color: #313d85 !important;
}
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button_reShowQuestion:hover,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button_restartQuiz:hover {
    background-color: #313d85 !important;
    opacity: 0.85 !important;
}

/* Distraction-free LearnDash assessment lesson. */
body.tsm-hide-learndash-ui .learndash-wrapper .ld-content-actions,
body.tsm-hide-learndash-ui .learndash-wrapper .ld-focus-sidebar,
body.tsm-hide-learndash-ui .learndash-wrapper .ld-focus-sidebar-trigger {
	display: none !important;
}
body.tsm-hide-learndash-ui .learndash-wrapper .ld-focus-main {
	margin-left: 0 !important;
	width: 100% !important;
}

/* Hide Cost Calculator Phone and Address fields. */
.btQuoteItem:has(> .btContactPhone),
.btQuoteItem:has(> .btContactAddress) {
  display: none !important;
}

/* Cost Calculator: stable brand colours, independent of dynamic calculator classes */
.tsm-cost-calculator-blue .btQuoteBookingForm .btQuoteTotal,
.tsm-cost-calculator-blue .btContactSubmit {
  background-color: rgb(70, 127, 247) !important;
  color: #fff !important;
}
.tsm-cost-calculator-blue .btContactNext {
  background: transparent !important;
  color: rgb(70, 127, 247) !important;
  border: 2px solid rgb(70, 127, 247) !important;
}
.tsm-cost-calculator-blue .btContactNext:hover,
.tsm-cost-calculator-blue .btContactNext:focus {
  background-color: rgb(70, 127, 247) !important;
  color: #fff !important;
  border-color: rgb(70, 127, 247) !important;
}
.tsm-cost-calculator-blue .ui-slider .ui-slider-handle {
  background: rgb(70, 127, 247) !important;
  border-color: rgb(70, 127, 247) !important;
}



/* Customer Reviews: use the site blue across all review blocks. */
.crstar-rating-svg .cr-rating-icon-base .cr-rating-icon-bg {
    stroke: #046BD2 !important;
}
.crstar-rating-svg .cr-rating-icon-frnt .cr-rating-icon {
    fill: #046BD2 !important;
}
.ivole-meter .ivole-meter-bar {
    background: #046BD2 !important;
}
.cr-reviews-grid .reviewer-verified {
    color: #046BD2 !important;
}
.cr-reviews-grid .cr-reviewer-verified {
    filter: hue-rotate(43deg) saturate(1.2) brightness(1.15);
}
.cr-reviews-grid .cr-all-reviews-add-review,
.cr-review-form-submit {
    background-color: #046BD2 !important;
    color: #fff !important;
}
.cr-reviews-grid .cr-all-reviews-add-review:hover,
.cr-review-form-submit:hover {
    background-color: #0358AE !important;
}
/* Assessment review cards: inset reviewer name and verification badge. */
.single-post .cr-reviews-grid .cr-review-card .top-row .reviewer {
    padding-left: 8px;
}

/* Hide Astra's Previous/Next cohort navigation on LearnDash Group pages only */
.single-groups .post-navigation {
    display: none;
}


/* Compact, scrollable LearnDash quiz question navigator */
.learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion {
	max-height: 300px !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	padding-right: 4px;
}
.learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.learndash-quiz-review__item {
	box-sizing: border-box;
	width: 34px !important;
	min-width: 34px !important;
	height: 34px !important;
	margin: 0 4px 4px 0 !important;
	padding: 0 !important;
	line-height: 30px !important;
}
.learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion .learndash-quiz-review__button {
	width: 100% !important;
	height: 30px !important;
	padding: 0 !important;
	font-size: 14px !important;
	line-height: 30px !important;
}


/* Fix learndash answer spacing */
.learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem.wpProQuiz_answerCorrect > label,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem.wpProQuiz_answerIncorrect > label {
    position: relative !important;
    display: block !important;
    padding-left: 55px !important;
}
.learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem.wpProQuiz_answerCorrect > label::before,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem.wpProQuiz_answerIncorrect > label::before {
    position: absolute !important;
    left: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}
.learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem.wpProQuiz_answerCorrect > label input,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem.wpProQuiz_answerIncorrect > label input {
    margin-left: 0 !important;
}

/* Hide LearnDash Correct / Incorrect / Correct answer labels beneath quiz choices */
.learndash-wrapper .wpProQuiz_questionListItem .ld-quiz-question-item__status {
	display: none !important;
}

