/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

p:last-child {
	margin-bottom: 0 ;
}
ul li::marker, ul ol::marker {
    color: var(--accent);
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="tel"], input[type="number"], textarea, select, .ff-el-form-check-label span  {
	border-radius: 10px;
	border: 1px solid var(--base);
	font-weight: 500;
	font-size: 16px;
	display: inline-flex;
	background-color: #FAFAFA;
	padding: 10px 25px;
	min-height: 58px;
	line-height: 1.2;
	align-items: center;
}
.ff-el-input--content {
	display: flex;
	gap: 8px;
}
.ff-el-input--content .ff-el-input--content {
	flex-direction: column;
}
.ff-el-form-check-label {
	display: block;
	height: 100%;
}
.ff-el-form-check-label span {
	font-weight: 600;
	text-align: center;
	cursor: pointer;
	width: 100%;
	height: 100%;
	padding: 10px 15px;
	justify-content: center;
	
}
.ff-el-input--content .ff-el-form-check {
	margin: 0;
	flex: 1;
}
.frm-fluent-form fieldset {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.frm-fluent-form fieldset > div{
	width: 100%;
	flex: 0 0 auto;
}	
.ff-el-form-check-label input {
	display: none !important;
}
.ff-el-form-check-label input:checked +  span {
	background-color: var(--accent);
	color: var(--base-3);
}
.fluentform.fluentform .ff-el-group {
	margin-bottom: 0;
}
.ff-field_container--half {
	width: calc(50% - 4px) !important;
}

.fluentform.fluentform .ff-el-form-check {
	margin-bottom: 0;
}
.ff-btn-submit.ff-btn-submit {
	    width: 100%;
    padding: 25px;
    border-radius: 10px;
}
.header-desktop-navigation.header-desktop-navigation.header-desktop-navigation .gb-menu-link {
	padding: 0;
}
body.admin-bar .master__header{
	top: 32px;
}
body.archive:not(.woocommerce) .grid-container{
	max-width: 100%;	
}
body.archive:not(.woocommerce) .site-main {
	margin: 0;
}
body.archive:not(.woocommerce)  #primary {
	display: none;
}
@media(max-width: 767px) {
	.ff-el-input--content {
		flex-direction: column;
	}
}

/**
 * Rank Math FAQ Accordion Styles
 * Handles layout, typography, and the interactive plus/cross icon animations.
 */

.rank-math-list .rank-math-list-item:nth-child(n+6) {
	display: none;
}

/* Accordion Item Wrapper */
.rank-math-list-item {
    background-color: var(--base-3); /* Light grey background matching screenshot */
    border-radius: 20px;
    margin-bottom: 10px;
    overflow: hidden;
    transition: background-color 0.3s ease;
	padding: 2rem 2.5rem;
}

/* Question Header Area */
.rank-math-question {
    margin: 0;
    cursor: pointer;
    font-size: 1.375rem;
    font-weight: 600;
    color: var(--contrast);
    display: flex;
    justify-content: space-between;
    align-items: center;
    user-select: none; /* Prevents text highlighting on rapid clicks */
}

/* Dynamic Plus Icon using pseudo-element */
.rank-math-question::after {
    content: '+';
    font-size: 3rem;
    color: var(--accent); 
    font-weight: 400;
    line-height: 1;
    transition: transform 0.3s ease-in-out;
}

/* Answer Body Area */
.rank-math-answer {
    display: none; /* Hidden by default to prevent Flash of Unstyled Content (FOUC) */
}

/* 
 * Active State
 * Rotates the '+' 45 degrees to form an 'x' when the item is open 
 */
.rank-math-list-item.is-open .rank-math-question::after {
    transform: rotate(45deg);
}

.rank-math-load-more-wrapper {
	text-align: center;
}

.rank-math-load-more-wrapper .rank-math-load-more {
	border-radius: 24px;
	font-weight: 600;
	margin-top: 24px;
}