/*
Theme Name: Give First Aid
Theme URI: https://wpastra.com/
Description: Child theme for Astra
Author: Your Name
Template: astra
Version: 1.0
*/

/* Your custom CSS here */
body{
	font-family: "Roboto", sans-serif !important;
}
:root, [data-bs-theme=light] {
	--bs-blue: #0c8544;
}
body .btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #0c8544;
    --bs-btn-border-color: #0c8544;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #e5343a;
    --bs-btn-hover-border-color: #e5343a;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #066331;
    --bs-btn-active-border-color: #066331;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #0c8544;
    --bs-btn-disabled-border-color: #0c8544;
}
a {
    text-decoration: none !important;
}

button.btn-close {
    background-image: none;
    background: #e5343a;
    color: #fff;
	opacity:1
}
.btn.btn-highlight {
    border: 1px solid #fff;
	padding:3px 1rem;
}
.btn-close.modal-close, .btn-close {
  display: flex;
  align-content: center;
  justify-content: center;
}
button.book-btn {
    background: #0c8544;
    color: #fff;
    font-weight: 600;
    min-width: 152px;
    min-height: 48px;
}
.wpforms-submit-container input, .wpforms-submit-container button {
    border-radius: 10px !important;
}
button.book-btn:hover {
    background: #e5343a;
	color:#fff;
}
.main-header-bar-wrap {
    position: relative;
    box-shadow: 2px 1px 7px rgb(12 133 68 / 15%);
}
.location-section {
    margin-bottom: 40px;
    border-bottom: 1px solid #eee;
    padding-bottom: 20px;
}

.location-title {
    font-size: 2em;
    color: #2c3e50;
    margin-bottom: 20px;
}

.course-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
}

.course-card {
    border: 1px solid #ddd;
    padding: 15px;
    border-radius: 8px;
    background: #fff;
    transition: transform 0.2s;
}

.course-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}



/* footer style  */
aside.footer-widget-area h2.wp-block-heading {
    font-size: 1.5rem;
    font-weight: 600;
}
aside.footer-widget-area .widget.widget_block {
    margin-bottom: 1rem;
}
.footer-section a {
    color: #000;
    line-height: 34px;
}
.btn.btn-primary.highlight-link {
    background: #0c8544;
    color: #fff;
}
.btn.btn-primary.highlight-link:hover {
    background: #e5343a;
    color: #fff;
}
ul.sub-menu li a {
    line-height: 32px;
	color:#4a4a4a;
}
div.wpforms-container .wpforms-form .choices .choices__inner {
    border-radius: 10px;
    min-height: 35px;
}
button#wpforms-submit-1293 {
    border-radius: 10px;
}
.wpforms-container .wpforms-field-label{
	margin-bottom:0.5rem
}
.site-content .ast-container {
    display: block;
}
.related-courses h3 {
    margin-bottom: 20px;
    font-weight: 700;
}
.footer-widget-area.widget-area p, .footer-widget-area.widget-area a, .footer-widget-area.widget-area span {
	color: #000;
}
.ast-footer-copyright.site-footer-focus-item {
    color: #000000;
}
.course-card {
    background: #fff;
    padding: 20px;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
}

.view-all-courses .section-title {
    font-weight: 700;
    margin-bottom: 30px;
}

.course-card {
    background: #ffffff;
    padding: 25px;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
    display: flex;
    flex-direction: column;
    height: 100%;
}

.course-card .course-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 14px;
}

.course-card .btn {
    margin-top: auto;
}
.btn-highlight {
    border: 1px solid #b5b5b5;
    color: #ffffff !important;
    margin-bottom: 0.5rem;
    padding: 3px 1rem;
}
ul.sub-menu li a {
    display: flex !important;
    padding: 0.2rem 0.5rem !important;
	transform: translateX(0px);
	transition:0.3s all ease-in-out;
	font-size:1rem
}
ul.sub-menu {
    padding: 0.7rem;
}
.footer-section a{
	transform: translateX(0px);
	transition:0.3s all ease-in-out
}
ul.sub-menu li a:hover, .footer-section a:hover{
	color: #e2252c;
	transform: translateX(5px);
}
.footer-section a:hover{
	color: #e2252c;
	transform: translateX(5px);
	padding-left:5px
}
.ast-builder-menu-1 .menu-item > .menu-link {
    font-weight: 500;
    font-size: 20px;
}
.ast-builder-menu-1 .menu-item .sub-menu li a.menu-link{
	font-size:16px;
	font-weight:500;
}
.ast-builder-menu-1 .menu-item .menu-link{
   color:#000
}
.right-sticky {
    position: sticky;
    top: 40px;
}
.course-card-item .elementor-widget-heading h4.elementor-heading-title {
    min-height: 65px;
}
.static-content ul li {
    margin: 0.5rem 0;
}
.static-content h3, .static-content h2, .static-content :where(h3), .static-content :where(h2) {
        font-size: 32px;
 }
.static-content a {
    color: #0c8544 !important;
}
/* === COURSE COMPARISON TABLE === */

.course-table-wrapper {
    overflow-x: auto;
}

.course-compare-table {
    width: 100%;
    border-collapse: collapse;
    border-radius: 18px;
    overflow: hidden;
    font-weight: 600;
}

/* Header */
.course-compare-table thead th {
    background: #e53935;
    color: #fff;
    padding: 18px;
    text-align: center;
    font-size: 18px;
}

/* Body */
.course-compare-table tbody td {
    background: #0b7d3b;
    color: #fff;
    padding: 16px;
    text-align: center;
    border-top: 1px solid rgba(255,255,255,0.15);
}
.course-compare-table tbody td img{
	filter:brightness(100)
}

/* First column */
.course-compare-table tbody td:first-child {
    text-align: left;
    font-weight: 700;
}

/* Hover effect */
.course-compare-table tbody tr:hover td {
    background: #0a6c33;
    transition: background 0.3s ease;
}

/* Price row */
.course-compare-table .price-row td {
    font-size: 20px;
    font-weight: 800;
}

/* === IRFA PRICE COMPARISON TABLE === */

.irfa-table-wrapper {
    overflow-x: auto;
}

.irfa-price-table {
    width: 100%;
    border-collapse: collapse;
    border-radius: 20px;
    overflow: hidden;
    font-weight: 600;
}

/* Header */
.irfa-price-table thead th {
    background: #e53935;
    color: #ffffff;
    padding: 18px;
    text-align: left;
    font-size: 18px;
}

/* Body */
.irfa-price-table tbody td {
    background: #0b7d3b;
    color: #ffffff;
    padding: 18px;
    border-top: 1px solid rgba(255,255,255,0.2);
}

/* Hover effect */
.irfa-price-table tbody tr:hover td {
    background: #0a6c33;
    transition: background 0.3s ease;
}

/* Savings highlight */
.irfa-price-table tbody td:last-child {
    font-size: 18px;
    font-weight: 800;
}

/* === MOBILE RESPONSIVE === */
@media (max-width: 768px) {

/*     .irfa-price-table,
    .irfa-price-table thead,
    .irfa-price-table tbody,
    .irfa-price-table th,
    .irfa-price-table td,
    .irfa-price-table tr {
        display: block;
        width: 100%;
    }

    .irfa-price-table thead {
        display: none;
    }

    .irfa-price-table tr {
        margin-bottom: 16px;
        border-radius: 16px;
        overflow: hidden;
    }

    .irfa-price-table td {
        position: relative;
        padding-left: 50%;
        text-align: right;
    }

    .irfa-price-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 16px;
        font-weight: 700;
        text-align: left;
    } */
}
/* === IRFA ADVANTAGE TABLE === */

.irfa-advantage-wrapper {
    overflow-x: auto;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

/* Table */
.irfa-advantage-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
    font-weight: 600;
}

/* Header */
.irfa-advantage-table thead th {
    background: #0c8544;
    color: #ffffff;
    padding: 18px;
    text-align: left;
    font-size: 18px;
}

/* Body cells */
.irfa-advantage-table tbody td {
    padding: 16px 18px;
    border-top: 1px solid #eee;
    vertical-align: top;
}

/* First column */
.irfa-advantage-table tbody td:first-child {
    font-weight: 700;
    width: 30%;
}

/* Tick icon */
.irfa-advantage-table .tick {
    color: #0c8544; /* Theme green */
    font-weight: 900;
    margin-right: 6px;
}

/* Hover effect */
.irfa-advantage-table tbody tr:hover {
    background: #f9f9f9;
    transition: background 0.3s ease;
}

/* === MOBILE RESPONSIVE === */
@media (max-width: 768px) {

/*     .irfa-advantage-table,
    .irfa-advantage-table thead,
    .irfa-advantage-table tbody,
    .irfa-advantage-table th,
    .irfa-advantage-table td,
    .irfa-advantage-table tr {
        display: block;
        width: 100%;
    }

    .irfa-advantage-table thead {
        display: none;
    }

    .irfa-advantage-table tr {
        margin-bottom: 16px;
        border-radius: 14px;
        overflow: hidden;
        border: 1px solid #eee;
    }

    .irfa-advantage-table td {
        position: relative;
        padding-left: 50%;
    }

    .irfa-advantage-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 16px;
        font-weight: 700;
        color: #333;
    } */
	.static-content ul {
		margin-left: 0;
		padding-left: 1rem;
	}
	.static-content h4, .static-content :where(h4) {
        font-size: 20px;
    }
	.static-content h3, .static-content :where(h3) {
        font-size: 22px;
    }
}
/* =================================================
   COMMON TABLE STYLE (USED BY ALL SHORTCODES)
================================================= */

.common-table-wrapper {
    overflow-x: auto;
    margin: 30px 0;
}

.common-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
    border: 1px solid #e0e0e0;
    font-weight: 600;
}

/* Header */
.common-table thead th {
    background: #f7f7f7;
    color: #000;
    font-weight: 700;
    padding: 14px 16px;
    border: 1px solid #dcdcdc;
    text-align: center;
}

/* Body */
.common-table tbody td {
    padding: 14px 16px;
    border: 1px solid #e0e0e0;
    text-align: center;
    vertical-align: middle;
}

/* First column emphasis */
.common-table tbody td:first-child {
    font-weight: 700;
}

/* Hover effect */
.common-table tbody tr:hover {
    background: #fafafa;
    transition: background 0.3s ease;
}

/* ======================================
   MARKET COMPARISON TABLE (MODIFIER)
====================================== */

/* Dark header */
.market-table.common-table thead th {
    background: linear-gradient(135deg, #0a6a36, #005025);
    color: #ffffff;
    border-color: rgba(255,255,255,0.1);
}

/* Price colors */
.market-table .price-green {
    color: #00a86b;
    font-weight: 800;
}

.market-table .price-red {
    color: #ff4d4d;
    font-weight: 700;
}

/* Impact pill */
.market-table .impact-pill {
    display: inline-block;
    background: linear-gradient(135deg, #00a86b, #12c48b);
    color: #ffffff;
    padding: 10px 16px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 14px;
    white-space: nowrap;
}

/* Highlight row (White Card) */
.market-table .highlight-row td {
    background: #deffed;
    border-top: 2px solid #0c8544;
    border-bottom: 2px solid #0c8544;
}

/* Keep hover subtle */
.market-table tbody tr:hover td {
    background: #f8fafc;
}

.cf7-error {
    color: #dc2626;
    margin-top: 10px;
}
/* ===============================
   MOBILE RESPONSIVE
================================ */
@media (max-width: 768px) {
	body, p{
		font-size:16px
	}
	a.carousel-arrow.carousel-next {
    left: auto;
    right: -10px;
}
	a.carousel-arrow.carousel-prev {
    left: -10px;
    right: auto;
}
	h1, .static-content :where(h1) {
        font-size: 32px !important;
    }
	h2, .static-content :where(h2) {
        font-size: 26px !important;
    }
	h3, .static-content :where(h3) {
        font-size: 24px !important;
    }
	h4, .static-content :where(h4) {
        font-size: 22px !important;
    }
	h5, .static-content :where(h5) {
        font-size: 20px !important;
    }
	h6, .static-content :where(h6) {
        font-size: 18px !important;
    }
}

