/*
Theme Name: TT5 UIkit Child
Template: twentytwentyfive
Version: 1.0.0
*/

/* various font settings */
.entry-title, .wp-block-post-title {display: none;}

.tt5-accordian-heading__toggle-title {
	color: var(--wp--preset--color--primary-blue);
}

.dark-button a:hover {
	color: #fff;
	text-decoration: none;
	border-color: var(--wp--preset--color--seafoam);
}

.wp-block-button.royal-button .wp-block-button__link {
	background: var(--wp--preset--gradient--brand-royal-gradient);
	box-shadow: 0 20px 40px rgba(20, 120, 255,.22);
	transition: .25s ease;
}

.wp-block-button.royal-button .wp-block-button__link a,
.wp-block-button.royal-button .wp-block-button__link a:hover,
.wp-block-button.royal-button .wp-block-button__link:hover{
	color: #fff !important;
	text-decoration:none !important;
	border-color: #fff;
}

.logo-image-height img {
	height: 75px!important;
	width: auto!important;
}

.logo-image-footer img {
	height: 55px!important;
	width: auto!important;
}

.wp-element-caption {
	font-weight:700;
	font-size: 1.5em;
}

.opaque-column {
	background-color: #ffffffaa !important;  /*00 completely transparent to FF solid */

}

/* step arrows */
.responsive-arrow-wrapper {
    display: flex;
    justify-content: flex-start; /* Aligns left/default on desktop */
    align-items: center;
}

.responsive-arrow-wrapper svg {
    transition: transform 0.3s ease; /* Smooth transition if layout scales */
}

/* Mobile Responsiveness Rules */
@media (max-width: 767px) {
    /* 1. Force the parent column layout container to center the block */
    .wp-block-column:has(.responsive-arrow-wrapper) {
        text-align: center !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
    }

    /* 2. Center the SVG inside our custom wrapper */
    .responsive-arrow-wrapper {
        justify-content: center !important;
        margin: 15px auto; /* Adds clean spacing above/below the flipped arrow */
    }

    /* 3. Rotate the Right Arrow 90 degrees clockwise to point Down */
    .responsive-arrow-wrapper svg {
        transform: rotate(90deg) !important;
    }
}

/*spectra forms*/
.uagb-modal-button-link, .uagb-forms-main-submit-button {
	background: var(--wp--preset--gradient--brand-teal-gradient);
	border: 2px solid var(--wp--preset--color--deep-blue);
	color: #ffffff;
	width: 100%;
	border-radius: 45px;
	font-weight: 600;
	text-align: center;
	padding-top: .85rem;
	padding-right: 1.4rem;
	padding-bottom: .85rem;
	padding-left: 1.4rem;
	font-size: var(--wp--preset--font-size--x-large);
}

.uagb-modal-button-link:hover, .uagb-forms-main-submit-button:hover {
	color:#ffff;
	border: 3px solid var(--wp--preset--color--seafoam);
	text-decoration:none;
}


/* full width section */
.tt5-section-hero {
	background: var(--wp--preset--color--background-gray);
	color: var(--wp--preset--color--black);
}

/* made simple text */
.somira-hero-text{
    max-width: 620px;
}

.somira-hero-text h1.wp-block-heading {
    margin-top:28px;
    color:var(--wp--preset--color--weight-loss-dark);
    font-family:Inter, sans-serif;
    font-size:clamp(60px, 8vw, 110px);
    font-weight:800;
    line-height:0.92;
    letter-spacing:-0.06em;
}

.somira-hero-text h1.wp-block-heading span{
    background: var(--wp--preset--gradient--brand-blue-gradient-2);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.somira-hero-text p{
    margin-top:28px;
    max-width:500px;
    color:var(--wp--preset--color--paragraph-blue);
    font-family:Inter, sans-serif;
    font-size:1.4em;
    line-height:1.5;
    font-weight:500;
    letter-spacing:-0.02em;
}

@media (max-width:768px){

    .somira-hero-text h1{
        font-size:2.5em;
    }

    .somira-hero-text p{
        font-size:1.2em;
    }

}

/* make sure UI kit header settings win */
.tt5-site-header {
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--black);
	border-bottom: 1px solid var(--wp--preset--color--seafoam);
	padding-top: 20px;
	padding-bottom: 20px;
}

.tt5-site-header .wp-block-site-title,
.tt5-site-header .wp-block-site-title a,
.tt5-site-header .wp-block-navigation,
.tt5-site-header .wp-block-navigation a,
.tt5-site-header .wp-block-navigation-item__content {
	color: var(--wp--preset--color--primary-blue);
}

.tt5-site-header a:hover,
.tt5-site-header .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--deep-blue);
}

.wp-block-post-title,
.wp-block-post-title a {
	color: var(--wp--preset--color--primary-blue);
}

.wp-block-heading {
	color: var(--wp--preset--color--primary-blue);
}

/* headling line pattern */
.tt5-heading-section {
	padding-top: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--40);
}

.tt5-heading-line {
	display: flex;
	align-items: center;
	gap: 1rem;
	color: var(--wp--preset--color--primary-blue);
}

.tt5-heading-line::before,
.tt5-heading-line::after {
	content: "";
	height: 2px;
	background: var(--wp--preset--gradient--brand-blue-gradient);
}

.tt5-heading-line-left::after {
	flex: 1;
}

.tt5-heading-line-left::before {
	display: none;
}

.tt5-heading-line-center::before,
.tt5-heading-line-center::after {
	flex: 1;
}

.tt5-heading-line-right::before {
	flex: 1;
}

.tt5-heading-line-right::after {
	display: none;
}
/* end heanding line pattern */

/* background styles */
.tt5-page-br-bg {
	min-height: 100vh;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	/*background-attachment: fixed;   //test for mobile as this can cause issues. It holds the bg image still while scrolling */
}

/* faq page */
/* parent wrapper container */
.faq-custom-style {
    background-color: #f8fafc; /* Very light neutral gray background */
    border: 1px solid #e2e8f0; /* Subtle thin border outline */
    border-radius: 8px;        /* Smoothly rounded panel corners */
    margin-bottom: 12px;       /* Adds uniform clean spacing between each accordion */
    padding: 16px 20px;        /* Internal cushioning inside the wrapper box */
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

/* when a user hovers over the accordion */
.faq-custom-style:hover {
    border-color: #1478ff;     /* Changes border outline to blue */
    box-shadow: 0 4px 12px rgba(20, 120, 255, 0.05); /* Soft glowing drop shadow */
}

/* Question Heading text inside the block */
.faq-custom-style .wp-block-heading,
.faq-custom-style h3 { /* Adjust h3 to match your header tag level (h2, h3, h4) */
    font-size: 1.15rem !important;
    font-weight: 600 !important;
    color: #0f172a !important; /* Deep slate color for high readability */
    margin: 0 !important;      /* Clears out weird native block spacing bugs */
}

/* Answer Paragraph text inside the block */
.faq-custom-style p {
    font-size: 1rem !important;
    line-height: 1.6 !important;
    color: #475569 !important; /* Muted softer gray text for description answers */
    margin-top: 12px !important; /* Adds a clean gap below the question line */
}


/* FAQ bubbles if not using editor home */
.wp-block-accordion.tt5-faq-bubbles {
	display: grid;
	gap: 1rem;
}

.wp-block-accordion.tt5-faq-bubbles .wp-block-accordion-item {
	border: 0;
	background: transparent;
}

/*removed border radius*/
.wp-block-accordion.tt5-faq-bubbles .wp-block-accordion-item h3 {
	margin: 0;
	background: rgba(255, 255, 255, 0.92);
	color: var(--wp--preset--color--deep-blue);
	border: 2px solid var(--wp--preset--color--dark-blue);
	padding: 0.9rem 1.25rem;
	font-weight: 700;
	cursor: pointer;
}
/*border-radius: 1.25rem 1.25rem 0 0;*/
.wp-block-accordion.tt5-faq-bubbles .wp-block-accordion-item.is-open h3,
.wp-block-accordion.tt5-faq-bubbles .wp-block-accordion-item[open] h3,
.wp-block-accordion.tt5-faq-bubbles .wp-block-accordion-item[aria-expanded="true"] h3 {
	background: var(--wp--preset--gradient--brand-blue-gradient);
	color: var(--wp--preset--color--white);
}
	/*border-radius: 0 0 1.25rem 1.25rem; */
.wp-block-accordion.tt5-faq-bubbles .wp-block-accordion-panel {
	background: rgba(255, 255, 255, 0.94);
	color: var(--wp--preset--color--black);
	border: 2px solid var(--wp--preset--color--dark-blue);
	border-top: 0;
	padding: 1rem 1.25rem;
	margin-top: 0;
}

/* various list bullet styles */
.tt5-chevron-icon-list {
	list-style: none;
	padding-left: 0;
}

.tt5-chevron-icon-list li {
	position: relative;
	padding-left: 1.75rem;
	margin-top: 0.6rem;
}

.tt5-chevron-icon-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.45em;
	width: 1em;
	height: 1em;
	background-color: var(--wp--preset--color--primary-blue);
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpolyline points='7 4 13 10 7 16' fill='none' stroke='black' stroke-width='2'/%3E%3Cpolyline points='3 4 9 10 3 16' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpolyline points='7 4 13 10 7 16' fill='none' stroke='black' stroke-width='2'/%3E%3Cpolyline points='3 4 9 10 3 16' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* outlined cards */
.tt5-card-shadow {
	background-color: #ffffff;
	padding: 1.5rem;
	box-shadow: 0 6px 50px rgba(0, 0, 0, 0.05);
}

.tt5-card-shadow h2,
.tt5-card-shadow h3,
.tt5-card-shadow h4 {
	margin-top: 0;
	color: var(--wp--preset--color--primary-blue);
}

.tt5-card-shadow p {
	color: var(--wp--preset--color--black);
}

.tt5-dotted-row {
	background-size: 60% !important;
}
/* footer */
.tt5-site-footer {
	padding-top: 24px;
	padding-bottom: 24px;
	/*background: var(--wp--preset--color--deep-blue);
	color: var(--wp--preset--color--white); */
}

.tt5-site-footer a,
.tt5-site-footer .wp-block-navigation-item__content {
	/* color: var(--wp--preset--color--white); */
}

.tt5-site-footer a:hover,
.tt5-site-footer .wp-block-navigation-item__content:hover {
	/* color: var(--wp--preset--color--seafoam); */
}

.tt5-footer-disclaimer {
	margin-top: 1.5rem;
}

/* scroll to top button */

.tt5-scroll-top {
	position: fixed;
	right: 1.25rem;
	bottom: 1.25rem;
	z-index: 9999;
	width: 46px;
	height: 46px;
	border: 0;
	border-radius: 999px;
	background: var(--wp--preset--gradient--brand-blue-gradient);
	color: var(--wp--preset--color--white);
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
}

.tt5-scroll-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.tt5-scroll-top:hover {
	background: var(--wp--preset--color--deep-blue);
}
/* sticky header remove until fix scroll positions 
header:has(>.is-position-sticky) {
	position: sticky;
	top: calc(0px + var(--wp-admin--admin-bar--height, 0px));
	z-index:100;
}
*/

