/*
Theme Name: Bron Afon 2025
Theme URI: https://www.bronafon.co.uk/
Author: Bron Afon
Author URI: https://www.bronafon.co.uk/
Template: twentytwentyfive
Description: Bron Afon 2025 child theme.
Requires at least: 6.1
Tested up to: 6.1
Requires PHP: 5.6
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Text Domain: twentytwentyfive
*/

*, ::after, ::before {
	box-sizing: border-box;
}

a:focus,
:where(.wp-site-blocks *:focus) {
	outline:transparent;
}

:root :where(body),
body {
	font-smooth: always;
	outline: transparent;
	line-height: normal;
	padding:0;
	font-family: "Plus Jakarta Sans", sans-serif;	
	font-size:1em;
	color:#1E3249;
}

:root :where(.wp-block-separator.is-style-wide--4:not(.alignfull)) {
	max-width:1320px!important;
}

:root :where(.wp-element-button, .wp-block-button__link) {
	padding-top:10px;
	padding-bottom:10px;
	font-size:1em;
}

:root :where(.is-layout-flex),
:root :where(.wp-block-columns-is-layout-flex) {
	gap:1.5rem;
	gap:0.5em;
}

h1, h2, h3, h4, h5 { 
	line-height: normal; 
}
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong {
	color:#00A666;
}

strong {
	color:#00A666;
	font-weight:700;
}

p {
	line-height:1.6em;
}

.entry-content {
	overflow:hidden;
}

body.pt-0,
body.pt-0 .wp-site-blocks {
	padding-top:0!important;
}

main#main-wrap {
	overflow:hidden;
}

[hidden] {
	display: none!important;
}

.d-none, .sr-only, .sub-menu-toggle {
	display: none;
}

.dropdown_menu_item {
	opacity: 100;
}

div img {
	max-width:100%;
	width: auto;
	height: auto;
}

.h-100 {
	height: 100%;
}
.w-100,
.w-100 img {
	width:100%;
	height: auto;
}

.mt-0 {
	margin-top:0!important;
}
.mb-0 {
	margin-bottom:0!important;
}

.overflow-hidden {
	overflow:hidden;
}

.wp-site-blocks {
	position: relative;
}

.drop-shadow {
	box-shadow: 0px 0px 20px 0px rgba(226, 221, 213, 0.4);
}

.wp-block-accordion-item {
	padding:16px;
}

:root :where(.wp-block-quote),
blockquote.wp-block-quote {
	position: relative;
	padding:50px;
	margin:20px;
	border:0;
	font-size:1em;
}

blockquote.wp-block-quote:before,
blockquote.wp-block-quote:after {
	display:block;
	position: relative;
	position: absolute;
	color:var(--wp--preset--color--primary) !important;
	width:46px;
	height:46px;
}

blockquote.wp-block-quote:before {
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 290 290" fill="%23017CBC"><path d="M22.12 145v97.65h97.65V145H70.95c0-26.92 21.9-48.82 48.82-48.82V47.35c-53.93 0-97.65 43.72-97.65 97.65zm245.76-48.82V47.35c-53.93 0-97.65 43.72-97.65 97.65v97.65h97.65V145h-48.82c-.01-26.92 21.89-48.82 48.82-48.82z"></path></svg>');
	top:0;
	left:0;
}

blockquote.wp-block-quote:after {	
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 290 290" fill="%23017CBC"><path d="M267.88 145V47.35h-97.65V145h48.82c0 26.92-21.9 48.82-48.82 48.82v48.82c53.93.01 97.65-43.71 97.65-97.64zM22.12 193.82v48.82c53.93 0 97.65-43.72 97.65-97.65V47.35H22.12V145h48.82c.01 26.92-21.89 48.82-48.82 48.82z"></path></svg>');
	bottom:0;
	right:0;
}

.wp-block-query-pagination a,
.prev-next {
	font-size:0.85em;
	border:solid 1px #CCC;
	padding:6px 14px;
	border-radius:20px;
	line-height:normal;
	font-weight:600;
	display: flex;
}
.prev-next:empty {
	border:none;
}
.wp-block-query-pagination a,
.prev-next a {
	text-decoration: none;
	line-height:normal;
	display:block;
}
.wp-block-query-pagination a {
	font-size:0.6em;
}
.wp-block-query-pagination a:hover {
	background-color: var(--wp--preset--color--primary);
	color:#FFF;
	border-color: var(--wp--preset--color--primary);
}

.wp-block-post-excerpt__more-link,
.button,
.btn,
input[type=submit] {
	display: inline-block;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	background-color: transparent;
	border: 1px solid transparent;
	padding: 0.375rem 0.75rem;
	font-size: 1rem;
	border-radius: 0.25rem;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.wp-block-read-more,
.btn-primary.wp-block-read-more {
	font-size:0.85em!important;
	background-color:#1E3249;
	border-color: #1E3249;
}

input[type=submit],
.wp-block-post-excerpt__more-link,
.button-primary,
.btn-primary,
.btn-secondary {
	font-size: 0.85em;
	text-decoration: none;
}

.button-primary,
.button-primary a,
.btn-primary,
.btn-primary a {
	color: #FFF !important;
}

input[type=submit],
.wp-block-post-excerpt__more-link,
.button-primary,
.btn-primary,
.btn-secondary,
.btn-outline-primary,
.btn-outline-secondary {
	font-size:1.1em;
	padding: 0.6rem 40px;
	border-radius: 5px;
	color: #FFF;
}

input[type=submit],
.wp-block-post-excerpt__more-link,
.button-primary,
.btn-primary {
	background-color:#1E3249;
	border-color:#1E3249;
}

.btn-secondary {
	background-color: var(--wp--preset--color--secondary);
	border-color: var(--wp--preset--color--secondary);
}

.btn-outline-primary {
	background-color: transparent;
	border-width: 1px;
	color: var(--wp--preset--color--primary);
}

.btn-outline-secondary {
	background-color: transparent;
	border-width: 4px;
	color: var(--wp--preset--color--primary);
}

input[type=submit]:hover,
.wp-block-post-excerpt__more-link:hover,
.wp-block-post-excerpt__more-link:active,
.button-primary:hover,
.button-primary:active,
.btn-primary:hover,
.btn-primary:active {
	background-color: var(--wp--preset--color--secondary) !important;
	border-color: var(--wp--preset--color--secondary) !important;
	color:#FFF!important;
}

.wp-block-button a.wp-block-button__link img {
	fill:var(--wp--preset--color--primary);
	max-width:16px;
}
header.wp-block-template-part {
	width: 100%;
	z-index: 9999;
	position: relative;
	position: fixed;
	width:100%;
	top:0;
	left:0;
}
header.wp-block-template-part .search-icon a:before {
	content: "";
	background-image:url('data:image/svg+xml,%3Csvg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 100 100" style="enable-background:new 0 0 100 100;" xml:space="preserve"%3E%3Cstyle type="text/css"%3E .st0%7Bfill:%231E3249;%7D%0A%3C/style%3E%3Cpath class="st0" d="M98,93.3L71.6,66.9C78.1,59.8,82,50.4,82,40C82,17.9,64.1,0,42,0S2,17.9,2,40s17.9,40,40,40 c8.3,0,16-2.5,22.4-6.9L91.3,100L98,93.3z M11.1,40C11.1,22.9,24.9,9.1,42,9.1S72.9,22.9,72.9,40c0,17.1-13.8,30.9-30.9,30.9 S11.1,57.1,11.1,40z"/%3E%3C/svg%3E%0A');
	background-repeat: no-repeat;
	background-size: contain;
	width: 20px;
	height: 16px;
	display: block;
}
header.wp-block-template-part .search-icon span {
	display:none;
}
header.wp-block-template-part a {
	font-weight:600;
}
.admin-bar header.wp-block-template-part {
	top:32px;
}

header.wp-block-template-part .button-primary,
header.wp-block-template-part .button-secondary {
	padding:0;
}

header.wp-block-template-part .button-primary a,
header.wp-block-template-part .button-secondary a {
	border-radius:8px;
	padding:9px 20px;
}
header.wp-block-template-part .button-primary a {
	background-color:#1E3249;
	color:#FFF;
}
header.wp-block-template-part .button-secondary a {
	background-color:#EFEEE7;
	color:#1E3249;
}
header.wp-block-template-part a span {
	position: relative;
}
header.wp-block-template-part a span:after {
	content: "";
    position: absolute;
    bottom: 0%;
    margin-top: calc(0.5em - -3px);
    left: 0;
    width: 100%;
    height: 2px;
    opacity: 0.8;
    transform: scale3d(0, 1, 1);
    transform-origin: 100% 50%;
    transition: transform 0.3s ease-in-out;
    transition-timing-function: cubic-bezier(0.2, 1, 0.3, 1);
    background:#017CBC;
}
header.wp-block-template-part a:hover span:after {
	max-width:100%;
	transform: scale3d(1, 1, 1);
	transform-origin: 0% 50%;
	transition-timing-function: ease;
}

header.wp-block-template-part a:hover {
	color:#017CBC;
	text-decoration: none;
}
header.wp-block-template-part .button-primary a:hover,
header.wp-block-template-part .button-secondary a:hover {
	background-color:#00A666;
	color:#FFF;
	text-decoration: none;
}

header.wp-block-template-part .button-primary span:after,
header.wp-block-template-part .button-secondary span:after {
	display:none;
}

header.wp-block-template-part .wp-block-navigation__responsive-container-close svg, 
header.wp-block-template-part .wp-block-navigation__responsive-container-open svg {
	width:34px;
	height:34px;
}

.wp-block-navigation .wp-block-navigation-item:hover,
.wp-block-navigation .wp-block-navigation-item.current-menu-item {
	color:#017CBC;
}

.wp-block-navigation .wp-block-navigation-item {
	padding:20px 0.8em;
}

.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container {
	min-width:280px;
	padding:10px 0;
}

.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item {
	padding:0;
}

footer.wp-block-template-part .current-menu-item a {
	color:#CCC!important;
	padding:9px 0;
}

footer.wp-block-template-part {
	margin-top:0;
}

footer .legal {
	color:#FFF;
}

footer.wp-block-template-part .wp-block-navigation .wp-block-navigation-item {
	padding:0;
}

.wp-block-image img {
	vertical-align:middle;
}

ul.wp-block-list.arrow-list {
	margin:20px 0;
	padding:0;
	list-style-type:none;
}
ul.wp-block-list.arrow-list li { 
	padding-bottom:10px;
	margin-bottom:10px;
	display:flex;
	align-items: center;
}
ul.wp-block-list.arrow-list li:before {
	content: url('data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMjAgMjAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDIwIDIwOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6IzAwRTZGRTt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xMCwwYzUuNSwwLDEwLDQuNSwxMCwxMHMtNC41LDEwLTEwLDEwUzAsMTUuNSwwLDEwUzQuNSwwLDEwLDB6IE0xNC42LDkuM0w5LjEsMy45Yy0wLjQtMC40LTEtMC40LTEuNCwwCglMNy4xLDQuNWMtMC40LDAuNC0wLjQsMSwwLDEuNGw0LjEsNC4xbC00LjEsNC4xYy0wLjQsMC40LTAuNCwxLDAsMS40bDAuNywwLjdjMC40LDAuNCwxLDAuNCwxLjQsMGw1LjUtNS41QzE1LDEwLjMsMTUsOS43LDE0LjYsOS4zCgl6Ii8+Cjwvc3ZnPg==');
	width:20px;
	height:20px;
	min-width:20px;
	display: block;
	margin-right:14px;
}

.wp-block-accordion-heading__toggle-icon {
	font-size: 1.4em;
	transform-origin: center;
	display: block;
	text-align: center;
	line-height: .8em;
}
.wp-block-details summary {
	position: relative;
	padding-right:22px;
}
.wp-block-details summary::marker {
	content: ' ';
}
.wp-block-details summary::after {
	content: ' ';
	background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDEyIDEyIiBmaWxsPSJub25lIiBhcmlhLWhpZGRlbj0idHJ1ZSIgZm9jdXNhYmxlPSJmYWxzZSI+PHBhdGggZD0iTTEuNTAwMDIgNEw2LjAwMDAyIDhMMTAuNSA0IiBzdHJva2U9IiMyMjIiIHN0cm9rZS13aWR0aD0iMS41Ij48L3BhdGg+PC9zdmc+');
	width:12px;
	height:12px;
	display: block;
	position: absolute;
	right: 5px;
	top: 5px;
}
.wp-block-splide-carousel .splide__arrows--ltr .splide__arrow--prev {
	left: -40px;
	background:transparent;
}
.wp-block-splide-carousel .splide__arrows--ltr .splide__arrow--next {
	right:-40px;
	background:transparent;
}

/* FORM */

.flex-row {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
	margin-right: -10px;
}

.flex-row .col-6,
.flex-row .col-12 {
	width: 50%;
	flex-basis: 50%;
	box-sizing: border-box;
	padding: 0 10px;
}

.flex-row .col-6 label,
.flex-row .col-12 label {
	color:var(--wp--preset--color--secondary);
}

.flex-row .col-12 {
	width: 100%;
	flex-basis: 100%;
}

.wpcf7-list-item,
.flex-row .col-12 .wpcf7-list-item {
	margin: 0;
}

.flex-row .col-6 p {
	margin: 10px 0 0;
}

.flex-row .col-12 p {
	margin: 10px 0 0;
	width: 100%;
}

.flex-row .col-12 .btn {
	border-radius: 10px;
	padding: 6px 20px;
	font-size: 1em;
}

.form-label {
	display: inline-block;
	margin-bottom: 10px;
	color:var(--wp--preset--color--primary);
}

.form-control {
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 20px;
	line-height: 20px;
	border:0;
	border-bottom: 1px solid var(--wp--preset--color--primary);
	background:transparent;
	padding: 10px;
	box-sizing: border-box;
	width: 100%;
	color: var(--wp--preset--color--primary);
}

textarea.form-control {
	height:120px;
}

.flex-row .wpcf7-spinner {
	display: block;
	margin: 0 auto;
}

.wpcf7-not-valid-tip {
	background-color: var(--wp--preset--color--primary);
	padding: 8px 20px;
	color: #FFF;
}

.wpcf7 form .wpcf7-response-output {
	margin: 0;
	padding: 20px;
	font-size: 1.3em;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary);
}

    .elementor-invisible {
        visibility: visible !important;
        opacity: 1 !important;
    }
    .animated {
        animation: none !important;
    }

@media( max-width:1000px ) {
	.wp-block-navigation .wp-block-navigation-item {
		padding:22px 4px;
	}
	header.wp-block-template-part .button-primary a, 
	header.wp-block-template-part .button-secondary a {
		padding:6px 9px;
	}
}

@media( max-width: 781px ) {
	
	footer.wp-block-template-part .wp-block-group,
	footer.wp-block-template-part .wp-block-group .wp-block-navigation__container,
	footer.wp-block-template-part .wp-block-navigation.items-justified-right {
		justify-content: center!important;
	}
}

@media( max-width:600px ) {
	.wp-block-navigation__responsive-container.is-menu-open { height:100%; }
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { 
		display:flex; 
		align-items: center;
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container { 
		width:100%;
		display: flex;
    flex-direction: row;
	}
	.wp-block-navigation__container:only-child, .wp-block-page-list:only-child { flex-grow:0; }
	header.wp-block-template-part .hover-link:after { background-image:none; content:"\2192"; padding-bottom:2px; height:auto; width:auto; }
	.dropdown_menu_item .wp-block-navigation .wp-block-navigation-item__label { font-size:1.1em; }

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content { 
		font-size:1.4em; 
		width:100%; 
		text-align: center;
		padding:10px 0;
	}
	.has-global-padding { padding-left:0px; padding-right:0px; }

	header.wp-block-template-part .search-icon a {
		display: flex!important;
    align-items: center!important;
    justify-content: center!important;
	}
	header.wp-block-template-part .search-icon span {
		display:inline-block;
	}
	header.wp-block-template-part .wp-block-navigation__responsive-container {
		padding:30px;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container ul.wp-block-navigation__container li.wp-block-navigation-item {
		width: 100%;
		text-align: center;	
		margin:0;
		padding:0;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container ul.wp-block-navigation__container,
	header.wp-block-template-part .wp-block-navigation__responsive-container ul.wp-block-navigation__container li.wp-block-navigation-item,
	header.wp-block-template-part .wp-block-navigation__responsive-container ul.wp-block-navigation__container li.wp-block-navigation-item a.wp-block-navigation-item__content {
		width:100%;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container ul.wp-block-navigation__container li.wp-block-navigation-item a.wp-block-navigation-item__content {
		color: #1E3249;
		font-size: 1.4em;
		display:block;
		text-align: center;
		width:100%;
	}

	header.wp-block-template-part .wp-block-navigation:not(.has-text-color) .wp-block-navigation__submenu-container {
		margin:5px 0;
		width:100%!important;
		padding:0;
		padding-top:5px;
		padding-bottom:5px;
		font-size:0.85em;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container-close svg {
		fill:#1E3249;
	}
}