/* =====================
   WRAPPER RESET
====================== */
.ff-wrap *, .ff-wrap *::before, .ff-wrap *::after,
.brf-wrap *, .brf-wrap *::before, .brf-wrap *::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

/* =====================
   COMMON WRAPPER STYLES
====================== */
.ff-wrap, .brf-wrap {
	font-family: "TabletGothicNarrowW02-SmBd", sans-serif;
}

/* =====================
   CONTAINER
====================== */
.ff-container, .brf-container {
	display: flex;
	align-items: flex-start;
}
.ff-container { 
    gap: 50px;
}
.brf-pricing-bar {
    background: #F8E077;
    padding: 20px 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0px 62px;
    border-radius: 8px;
    flex-wrap: wrap;
}
.brf-pricing-bar ~ #brf-price-err {
    color: red;
    display: none;
    margin-top: 4px;
}
.brf-pricing-bar ~ .on#brf-price-err {
    display: block;
}
.brf-pricing-bar .brf-price-label {
    font-weight: 400;
    font-size: 19px;
    line-height: 100%;
    letter-spacing: 6%;
    color: #002855;
    display: flex;
    align-items: center;
    gap: 10px;
}
.brf-pricing-bar .brf-price-label > span {
    font-weight: 600;
    font-size: 22px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
    display: block;
}
.brf-pricing-bar .brf-price-opt input {
    width: 20px;
    height: 20px;
    margin: 0;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    -ebkit-appearance: none;
    background: #FFF;
    border: 1px solid #002855;
    border-radius: 6px;
    display: grid;
    place-content: center;
}
.brf-pricing-bar .brf-price-opt {
    display: flex;
    align-items: center;
    gap: 12px;
}
.brf-pricing-bar .brf-price-opt input:checked:before {
    content: "";
    width: 10px;
    height: 9px;
    background-image: url('data:image/svg+xml,<svg width="10" height="9" viewBox="0 0 10 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1.00024 5.75006C1.00024 5.75006 2.60024 6.66258 3.40024 8C3.40024 8 5.80024 2.75 9.00024 1" stroke="%23FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
}
.brf-pricing-bar .brf-price-opt input:checked {
    background: #002855;
}
/* =====================
   FORM COLUMN
====================== */
.ff-form-col, .brf-form-col {
	flex: 1;
	background: transparent;
	position: relative;
}

/* =====================
   SECTIONS
====================== */
.ff-section, .brf-section {
	margin-bottom: 34px;
}
.ff-section-title, .brf-section-title {
    color: #FFBE49;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2%;
}
.ff-section-title {
    font-size: 26px;
    line-height: 100%;
    margin-bottom: 30px;
}
.ff-section-title small, .brf-section-title small {
    color: #FFBE49;
    font-weight: 600;
    text-transform: uppercase;
}
.ff-section-title small {
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 2%;
}

/* Divider */
.brf-divider {
	border: none;
	border-top: 1px solid rgba(255,255,255,0.1);
	margin: 0 0 24px;
}

/* =========================
   GRIDS
========================= */
.ff-g2, .brf-g2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 20px;
}
.ff-g3 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 0 20px;
}
.brf-g3 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 0 20px;
}

/* =====================
   FORM FIELDS
====================== */
.ff-field, .brf-field {
	margin-bottom: 20px;
}
.ff-field label, .brf-field label {
    display: block;
    color: #fff;
    font-weight: 500;
    vertical-align: middle;
}
.brf-field label,
.ff-field label {
	margin-bottom: 4px;
	font-size: 16px;
	line-height: 100%;
	letter-spacing: 0%;
}
.ff-field input[type=text], .ff-field input[type=email], .ff-field input[type=tel], .ff-field input[type=date], .ff-field textarea, .brf-field input[type="text"], .brf-field input[type="email"], .brf-field input[type="tel"], .brf-field input[type="date"], .brf-field textarea {
    width: 100%;
    border-radius: 8px;
    color: #fff;
    border: 1px solid #FFFFFF1A;
    transition: all 0.4s;
    outline: none;
    background: #FFFFFF0F;
}
.brf-field input[type=text], .brf-field input[type=email], .brf-field input[type=tel], .brf-field input[type=date], .brf-field textarea,
.ff-field input[type=text], .ff-field input[type=email], .ff-field input[type=tel], .ff-field input[type=date], .ff-field textarea {
    background: #FFFFFF0F;
    padding: 10px 20px;
    font-size: 16px;
    height: 50px;
    line-height: normal;
}
.ff-field input:focus, .ff-field textarea:focus,
.brf-field input:focus, .brf-field textarea:focus {
	border-color: #FFBE49;
}

.ff-field textarea, .brf-field textarea {
	resize: vertical;
}
.ff-field textarea { 
    min-height: 110px; 
}
.brf-field textarea {
    min-height: 110px;
    padding: 10px 20px;
}

/* Error Styles */
.ff-field input.ff-err, .ff-field textarea.ff-err,
.brf-field input.brf-err, .brf-field textarea.brf-err {
	border-color: #D50E1F !important;
}
.ff-err-msg, .brf-err-msg, .ff-sz-err, .brf-sz-err, .ff-agree-err, .brf-agree-err {
	color: red;
	font-size: 11px;
	display: none;
}
.ff-err-msg.on, .brf-err-msg.on, .ff-sz-err.on, .brf-sz-err.on, .ff-agree-err.on, .brf-agree-err.on {
	display: block;
}

.ff-field input::placeholder, .ff-field textarea::placeholder {
	color:#FFFFFF99;
    font-weight: 300;
}
.brf-field input::placeholder, .brf-field textarea::placeholder {
	color:#FFFFFF99;
    font-weight: 300;
}

/* Calendar Picker */
.ff-field input[type=date]::-webkit-calendar-picker-indicator, 
.brf-field input[type="date"]::-webkit-calendar-picker-indicator {
	filter: invert(1);
	opacity: 0.5;
	cursor: pointer;
}

/* =========================
   UNIFORM SIZE
========================= */
.ff-size-row, .brf-size-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.ff-size-row, .brf-size-row {
	gap: 30px;
	margin-bottom: 30px;
}
.ff-size-row:last-child{ margin-bottom: 0; }
.ff-size-lbl, .brf-size-lbl {
	color: #fff;
	font-weight: 600;
	vertical-align: middle;
}
.brf-size-lbl,
.ff-size-lbl { 
    font-size: 20px; line-height: 100%; letter-spacing: 0%; 
}
.ff-size-opts, .brf-size-opts {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.ff-size-opts { gap: 10px; }
.brf-size-opts { gap: 16px; }

.ff-size-option, .brf-size-option {
	display: flex;
	align-items: center;
}
.brf-size-option,
.ff-size-option {
	gap: 10px;
	min-width: 80px;
}
.brf-size-option  input[type=radio],
.ff-size-option input[type=radio] {
    width: 24px;
    height: 24px;
    cursor: pointer;
    margin: 0;
    flex-shrink: 0;
    appearance: none;
    -webkit-appearance: none;
    background: #FFFFFF0F;
    border: 1px solid #FFFFFF1A;
    border-radius: 50%;
    display: grid;
    place-content: center;
}
.brf-size-option  input[type=radio]:checked,
.ff-size-option input[type=radio]:checked {
    background: #FFFFFF0F;
    border-color: #FFF;
}
.brf-size-option  input[type=radio]:checked::before,
.ff-size-option input[type=radio]:checked::before {
    content: "";
    width: 12px;
    height: 12px;
    background: #FFF;
    border-radius: 50%;
}
.ff-size-option label, .brf-size-option label {
	color: #fff;
	cursor: pointer;
	font-weight: 500;
	vertical-align: middle;
}
.ff-size-option label, .brf-size-option label {
	margin: 0;
	font-size: 16px;
	line-height: 100%;
	letter-spacing: 0%;
}

/* =========================
   AGREEMENT
========================= */
.ff-agree-row, .brf-agree-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.brf-agree-row,
.ff-agree-row { 
    margin-bottom: 22px; 
}
.ff-agree-row:last-child{ 
    margin-bottom: 0; 
}
.brf-agree-row input[type="checkbox"],
.ff-agree-row input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 0;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    -ebkit-appearance: none;
    background: #FFFFFF0F;
    border: 1px solid #FFFFFF1A;
    border-radius: 6px;
    display: grid;
    place-content: center;
}
.brf-agree-row input[type="checkbox"]:checked,
.ff-agree-row input[type="checkbox"]:checked {
    background: #FFFFFF;
    border-color: #FFFFFF;
}
.brf-agree-row input[type="checkbox"]:checked::before,
.ff-agree-row input[type="checkbox"]:checked::before {
    content: "";
    width: 10px;
    height: 9px;
    background-image: url('data:image/svg+xml,<svg width="10" height="9" viewBox="0 0 10 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1.00024 5.75006C1.00024 5.75006 2.60024 6.66258 3.40024 8C3.40024 8 5.80024 2.75 9.00024 1" stroke="%23002855" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
}
.ff-agree-row label, .brf-agree-row label {
	color: #fff;
	cursor: pointer;
	vertical-align: middle;
}
.brf-agree-row label,
.ff-agree-row label {
	font-weight: 400;
	font-size: 18px;
	line-height: 100%;
	letter-spacing: 0%;
}
.brf-section.agrmnt {
    margin-bottom: 54px;
}
/* =========================
   FOOTER / BUTTONS
========================= */
.ff-form-footer, .brf-form-footer {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}
.ff-form-footer, .brf-form-footer {
	gap: 24px;
	padding: 54px 0 0px;
	border-top: 1px solid #FFFFFF33;
	margin-top: 54px;
}
.ff-submit-btn, .brf-submit-btn {
    background: #D50E1F;
    color: #fff;
    border: none;
    display: inline-flex;
    align-items: center;
    transition: all 0.4s;
	text-transform: uppercase;
}
.ff-submit-btn, .brf-submit-btn {
	border-radius: 70px;
	padding: 0px 40px;
	font-size: 18px;
	font-weight: 600;
	gap: 12px;
	line-height: 60px;
}
.ff-submit-btn:hover { background: #000; }
.brf-submit-btn:hover { background: #000; }
.ff-submit-btn:disabled {
	background: #555;
	cursor: not-allowed;
}
.brf-pricing-bar {
    background: #F8E077;
    padding: 20px 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 62px;
    border-radius: 8px;
}
/* Total Amount, total label */
.ff-total-wrap { 
    text-align: left; 
}
.brf-total-lbl,
.ff-total-lbl {
    color: #FFF;
    font-weight: 400;
    font-size: 14px;
    line-height: 130%;
    letter-spacing: 0%;
    vertical-align: middle;
    text-transform: uppercase;
    margin-bottom: 3px;
    display: block;
}
div#brf-total,
.ff-total-amt {
    color: #fff;
    font-weight: 600;
    font-size: 26px;
    line-height: 100%;
    letter-spacing: 6%;
    text-transform: uppercase;
}

/* =========================
   MESSAGES
========================= */
.ff-msg, .brf-msg {
	padding: 12px 16px;
	border-radius: 8px;
	margin-bottom: 16px;
	font-size: 13px;
	display: none;
}
.ff-msg.err, .brf-msg.err {
	background: rgba(213,14,31,0.2);
	color: red;
	border: 1px solid rgba(213,14,31,0.5);
	display: block;
}
.ff-msg.ok, .brf-msg.ok {
	background: rgba(46,125,50,0.2);
	color: #81c784;
	border: 1px solid rgba(46,125,50,0.5);
	display: block;
}

/* =========================
   SIDEBAR
========================= */
.ff-sidebar, .brf-sidebar {
	display: flex;
	flex-direction: column;
}
.ff-sidebar {
    position: sticky;
    width: 320px;
    flex-shrink: 0;
    gap: 20px;
    top: 20px;
    margin-top: -166px;
}

/* Sidebar Boxes */
.ff-reg-box, .ff-fee-box, .ff-coach-box, .ff-checks-box, 
.brf-pay-box, .brf-fee-box, .brf-coach-box {
    background: #9E0D13;
    border: 2px solid #FFBE49;
    color: #FFF;
}
.brf-pay-box, .brf-fee-box, .brf-coach-box,
.ff-reg-box, .ff-fee-box, .ff-coach-box, .ff-checks-box {
    border-radius: 0;
    padding:24px 30px;
}

/* Sidebar Title */
.sidebar-title, .sidebar-title.rf {
    font-family: Beni;
    font-weight: 700;
    text-transform: uppercase;
}
.sidebar-title {
    font-size: 34px;
    line-height: 100%;
    letter-spacing: 6%;
    margin-bottom: 14px;
}
.sidebar-title.rf {
    font-size: 50px;
    line-height: 100%;
    letter-spacing: 6%;
    text-align: center;
    margin-bottom: 24px;
}
.ff-fee-list li {
    font-weight: 400;
    font-size: 20px;
    line-height: 130%;
    letter-spacing: 0%;
    vertical-align: middle;
    padding-left: 34px;
    margin-bottom: 10px;
    position: relative;
}
.ff-fee-list li:last-child{ margin-bottom: 0; }
.ff-fee-list li:before {
    content: "";
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.4479 19.4637C17.2393 19.4637 18.3678 19.6175 18.9905 19C19.6182 18.3776 19.4637 17.2444 19.4637 16.4479C19.4637 15.4414 19.6838 14.9786 20.4006 14.2618C21.4669 13.1956 22 12.6624 22 12C22 11.3375 21.4669 10.8044 20.4006 9.73817C19.6839 9.02137 19.4637 8.55858 19.4637 7.55206C19.4637 6.75559 19.6182 5.62243 18.9906 5C18.3679 4.38247 17.2393 4.53626 16.4479 4.53626C15.5355 4.53626 14.9015 4.23907 14.2618 3.59937C13.1956 2.53312 12.6625 2 12 2C11.3375 2 10.8044 2.53309 9.73825 3.59927L9.73815 3.59937C9.09832 4.2392 8.46427 4.53626 7.55208 4.53626C6.7556 4.53626 5.62243 4.38178 5 5.00944C4.38249 5.63214 4.53628 6.76065 4.53628 7.55206C4.53628 8.46428 4.2392 9.09832 3.59935 9.73817L3.5993 9.73822C2.5331 10.8044 2.00001 11.3375 2 12C2.00002 12.6624 2.53314 13.1956 3.59938 14.2618C4.31616 14.9786 4.53628 15.4414 4.53628 16.4479C4.53628 17.2444 4.38181 18.3776 5.00949 19C5.63218 19.6175 6.76068 19.4637 7.55206 19.4637C8.52349 19.4637 8.99128 19.6537 9.68457 20.347C10.2749 20.9374 11.0663 22 12 22C12.9337 22 13.7251 20.9374 14.3154 20.347C15.0087 19.6537 15.4765 19.4637 16.4479 19.4637Z" fill="white"/><path d="M9 12.8929C9 12.8929 10.2 13.5447 10.8 14.5C10.8 14.5 12.6 10.75 15 9.5" stroke="%239E0D13" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    background-repeat: no-repeat;
    background-size: contain;
    height: 24px;
    width: 24px;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 2px;
}

/* Coach Links (ff only) */
.ff-coach-links a, .ff-coach-links a:last-child, .ff-coach-links a, .ff-coach-links a:hover, .ff-coach-links a:nth-child(2) {
	display: flex;
	align-items: center;
}
.ff-coach-links a { 
	gap: 14px;
	margin-bottom: 24px;
	font-weight: 500;
	font-size: 22px;
	line-height: 70%;
	letter-spacing: 0%;
	position: relative;
	background-image: url(/wp-content/uploads/2026/06/bottom-border-bg.png);
	background-repeat: no-repeat;
	background-position: 46px bottom;
	width: fit-content;
	background-size: contain;
	padding-bottom: 3px;
}
.ff-coach-links a:last-child { margin-bottom: 0; }
.ff-coach-links a:hover { color: var(--yellow); }
.ff-coach-links a:nth-child(2) { font-size: 18px; }

/* Additional Wrappers */
.pt_wrp { display: flex; gap: 8px; }
.pt_wrp .price {
	font-weight: 600;
	font-size: 24px;
	line-height: 100%;
	letter-spacing: 6%;
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 2px;
	display: block;
}
.pt_wrp .ff-reg-btn {
	width: auto;
	text-align: center;
	background: #002855;
	padding: 10px 30px;
	margin: 0 auto;
}
.pt_wrp .ff-reg-btn .sub {
	display: block;
	font-weight: 300;
	font-size: 14px;
	line-height: 130%;
	letter-spacing: 0%;
	text-align: center;
	vertical-align: middle;
}
.ff-section.agreement .ff-section-title {
	margin-bottom: 22px;
}

/* Checks Box */
.ff-checks-box .sidebar-title {
    font-size: 44px;
    line-height: 100%;
    letter-spacing: 6%;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 6px;
}
.ff-checks-box .ff-checks-name {
    font-weight: 400;
    font-size: 18px;
    line-height: 128%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
}
.ff-checks-box .ff-checks-img img {
    display: block;
    width: 100%;
    margin-top: 24px;
}

/* ================
   BRF HEADER EXTRAS
================== */
.brf-header {
	text-align: center;
	margin-bottom: 20px;
}
.brf-watermark {
	font-size: 68px;
	font-weight: 900;
	color: rgba(255,255,255,0.05);
	text-transform: uppercase;
	letter-spacing: 3px;
	line-height: 1;
	white-space: nowrap;
	user-select: none;
	pointer-events: none;
}
.brf-dates {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	margin-top: 4px;
}
.brf-dates span {
	color: #FFBE49;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
}
.brf-date-dot {
	width: 5px;
	height: 5px;
	background: #FFBE49;
	border-radius: 50%;
	display: inline-block;
	flex-shrink: 0;
}
.brf-pay-box .brf-pay-title.sidebar-title {
    font-size: 50px;
    letter-spacing: 6%;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 24px;
}
.brf-pay-btns {
    display: flex;
    gap: 8px;
}
.brf-pay-btns .brf-pay-btn {
    background: #002855;
    padding: 10px;
    text-align: center;
    width: 100%;
}
.brf-pay-btns .brf-pay-btn .brf-pay-sub {
    font-weight: 300;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
}
.brf-pay-btns .brf-pay-btn .brf-pay-price {
    font-weight: 600;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 6%;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 2px;
    display: block;
}
form#brf-form:has(.brf-price-err.on) .brf-pricing-bar input {
    border-color: red;
}
.aply-coach .wpcf7-form-control {
    display: flex;
    align-items: center;
    gap: 40px;
}
.aply-coach .wpcf7-form-control .wpcf7-list-item {
    margin: 0;
}
.aply-coach .wpcf7-form-control .wpcf7-list-item label {
    display: flex;
    align-items: center;
    gap: 10px;
    width: max-content;
}
.aply-coach .wpcf7-form-control .wpcf7-list-item label input {
    width: 24px;
    height: 24px;
    cursor: pointer;
    margin: 0;
    flex-shrink: 0;
    appearance: none;
    -webkit-appearance: none;
    background: #FFFFFF0F;
    border: 1px solid #FFFFFF1A;
    border-radius: 50%;
    display: grid;
    place-content: center;
}
.aply-coach .wpcf7-form-control .wpcf7-list-item label input {
    width: 24px;
    height: 24px;
    cursor: pointer;
    margin: 0;
    flex-shrink: 0;
    appearance: none;
    -webkit-appearance: none;
    background: #FFFFFF0F;
    border: 1px solid #FFFFFF1A;
    border-radius: 50%;
    display: grid;
    place-content: center;
}
.aply-coach .wpcf7-form-control .wpcf7-list-item label input:checked {
    background: #FFFFFF0F;
    border-color: #FFF;
}
.aply-coach .wpcf7-form-control .wpcf7-list-item label input:checked::before {
    content: "";
    width: 12px;
    height: 12px;
    background: #FFF;
    border-radius: 50%;
}
.aply-coach .wpcf7-form-control .wpcf7-list-item label .wpcf7-list-item-label {
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
}

@media (max-width:600px) {
	.brf-g2, .brf-g3, .ff-g2, .ff-g3 {
		grid-template-columns: 1fr;
	}
	.brf-pricing-bar {
		flex-direction: column;
		align-items: flex-start;
		border-radius: 16px;
		gap: 14px;
	}
	.brf-form-footer {
		flex-direction: column;
	}
	.brf-watermark {
		font-size: 26px;
	}
}

/* FF Responsive Styles */
@media (max-width:1024px){
    .ff-sidebar {
        margin-top: 0;
        width: 280px;
    }
    .ff-container {
        gap: 30px;
    }
    .ff-g3 {
        grid-template-columns: 1fr 1fr;
    }
    .ff-section-title {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .ff-section {
        margin-bottom: 25px;
    }
    .ff-reg-box, .ff-fee-box, .ff-coach-box, .ff-checks-box {
        padding: 15px;
    }
    .sidebar-title.rf {
        font-size: 38px;
        margin-bottom: 15px;
    }
    .sidebar-title {
        font-size: 28px;
        margin-bottom: 8px;
    }
    .ff-coach-links a {
        gap: 8px;
        margin-bottom: 12px;
        font-size: 18px;
        background-position: 40px bottom;
        padding-bottom: 2px;
    }
    .ff-coach-links a .ff-coach-icon {
        height: 25px;
        width: 25px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .ff-checks-box .sidebar-title {
        font-size: 38px;
    }
    .ff-checks-box .ff-checks-img img {
        margin-top: 18px;
    }
    .ff-size-row {
        gap: 18px;
        margin-bottom: 16px;
    }
    .ff-agree-row label {
        font-size: 16px;
    }
    .ff-agree-row {
        gap: 10px;
        margin-bottom: 15px;
    }
    .ff-form-footer {
        gap: 15px;
        padding: 34px 0 0px;
        margin-top: 34px;
    }
    .ff-submit-btn {
        padding: 0px 25px;
        font-size: 16px;
        line-height: 50px;
    }
    .ff-total-amt {
        font-size: 22px;
    }
    .brf-g3 {
        grid-template-columns: 1fr;
    }
    .brf-pricing-bar {
        padding: 15px;
        gap: 15px;
    }
    .brf-pricing-bar .brf-price-label {
        font-size: 17px;
    }
    .brf-pricing-bar .brf-price-label > span {
        font-size: 16px;
    }
    .ff-form-footer, .brf-form-footer {
        gap: 24px;
        padding: 34px 0 0px;
        margin-top: 34px;
    }
    .ff-submit-btn, .brf-submit-btn {
        padding: 0px 25px;
        font-size: 16px;
        line-height: 50px;
    }
    .brf-pay-box, .brf-fee-box, .brf-coach-box, .ff-reg-box, .ff-fee-box, .ff-coach-box, .ff-checks-box {
        padding: 15px;
    }
    .brf-pay-box .brf-pay-title.sidebar-title {
        font-size: 40px;
        margin-bottom: 14px;
    }
    .brf-field textarea {
        min-height: 90px;
    }
}

@media (max-width:767px){
    .ff-g2, .ff-g3 {
        grid-template-columns: 1fr;
    }
    .ff-container {
        gap: 35px;
        flex-direction: column;
    }
    .ff-sidebar {
        width: 100%;
    }
    .ff-section-title {
        font-size: 18px;
    }
    .ff-field label {
        font-size: 15px;
    }
    .brf-field input[type=text], .brf-field input[type=email], .brf-field input[type=tel], .brf-field input[type=date], .brf-field textarea,
    .ff-field input[type=text], .ff-field input[type=email], .ff-field input[type=tel], .ff-field input[type=date], .ff-field textarea {
        border-radius: 6px;
        padding: 8px 15px;
        font-size: 15px;
        height: 44px;
    }
    .ff-size-option {
        min-width: auto;
    }
    .ff-submit-btn {
        padding: 0px 20px;
        font-size: 14px;
        line-height: 44px;
    }
    .ff-total-amt {
        font-size: 20px;
    }
    .ff-form-footer {
        padding: 25px 0 0px;
        margin-top: 25px;
    }
    .ff-size-lbl {
        font-size: 16px;
    }
    .ff-section.parent-info {
        margin-bottom: 5px;
    }
    .ff-section.emergency-contact {
        margin-bottom: 10px;
    }
    .sidebar-title.rf {
        font-size: 35px;
    }
    .ff-checks-box .sidebar-title {
        font-size: 35px;
    }
    .ff-field {
        margin-bottom: 16px;
    }
    #date_txt strong {
        font-size: 16px;
    }
    .ff-fee-list li {
        font-size: 18px;
        padding-left: 26px;
        margin-bottom: 10px;
    }
    .ff-fee-list li:before {
        height: 20px;
        width: 20px;
    }
    .brf-size-option, .ff-size-option {
        min-width: auto;
    }
    .brf-section.agrmnt {
        margin-bottom: 34px;
    }
    .brf-pricing-bar {
        padding: 13px;
        gap: 12px;
        border-radius: 10px;
    }
    .ff-form-footer, .brf-form-footer {
        gap: 20px;
        padding: 25px 0 0px;
        margin-top: 25px;
    }
    .brf-section.emnrcy_ctn {
        margin-bottom: 12px;
    }
    .brf-section.prnt_info {
        margin-bottom: 12px;
    }
    .ff-section, .brf-section {
        margin-bottom: 25px;
    }
    .brf-pay-box .brf-pay-title.sidebar-title {
        font-size: 35px;
    }
    .brf-pay-btns .brf-pay-btn .brf-pay-price {
        font-size: 21px;
    }
    body:not(.home) {
        background-image:
            url('/wp-content/uploads/2026/06/top-frame.png'),
            url('/wp-content/uploads/2026/06/bottom-frame.png'),
            url('/wp-content/uploads/2026/06/middle-dot-frame.png');
    
        background-position:
            top center,
            bottom center,
            top center;
    
        background-repeat:
            no-repeat,
            no-repeat,
            repeat-y;
    
        background-size:
            100% auto,
            100% auto,
            100% auto;
    }
    .ff-field, .brf-field {
        margin-bottom: 16px;
    }
	.aply-coach .wpcf7-form-control {
		gap: 20px;
	}
}