/*
Theme Name:   Bright Website Design
Theme URI:    https://www.brightwebsitedesign.co.uk
Description:  A carefully crafted child theme built with love by Bright Website Design, ensuring your site is fast, secure & easy to update.
Author:       Bright Website Design
Author URI:   https://www.brightwebsitedesign.co.uk
Template:     kadence
Version:      1.0.0
*/


/* Theme customization starts here
-------------------------------------------------------------- */

/* Kadence Forms – custom radios/checkboxes */
.kb-form-basic-style input[type="radio"]:checked,
.kb-form-basic-style input[type="checkbox"]:checked {
  border-color: #f7a012 !important;
  background: #f7a012 !important;
  background-color: #f7a012 !important;
}

/* ==========================================================
   Pagination on dark backgrounds - Enviro-Strip
   Covers both Kadence block pagination and classic archive nav
   ========================================================== */

/* --- Inactive page numbers and arrows --- */
.wp-block-query-pagination a.page-numbers,
.wp-block-query-pagination .wp-block-query-pagination-previous,
.wp-block-query-pagination .wp-block-query-pagination-next,
.kadence-pagination a.page-numbers,
.kadence-pagination .nav-links a,
.navigation.pagination a.page-numbers,
.nav-links a.page-numbers {
	color: #AFCEE2;
	background: transparent;
	border: 1px solid rgba(175, 206, 226, 0.35);
	border-radius: 0;
	box-shadow: none;
	text-decoration: none;
	transition: color .15s ease, border-color .15s ease, background-color .15s ease;
}

/* --- Hover / focus --- */
.wp-block-query-pagination a.page-numbers:hover,
.wp-block-query-pagination a.page-numbers:focus,
.wp-block-query-pagination .wp-block-query-pagination-previous:hover,
.wp-block-query-pagination .wp-block-query-pagination-next:hover,
.kadence-pagination a.page-numbers:hover,
.kadence-pagination a.page-numbers:focus,
.kadence-pagination .nav-links a:hover,
.navigation.pagination a.page-numbers:hover,
.nav-links a.page-numbers:hover {
	color: #FFFFFF;
	border-color: #FFFFFF;
	background: transparent;
	box-shadow: none;
}

/* --- Current page --- */
.wp-block-query-pagination .page-numbers.current,
.kadence-pagination .page-numbers.current,
.navigation.pagination .page-numbers.current,
.nav-links .page-numbers.current {
	color: #1A2730;
	background: #F7A012;
	border: 1px solid #F7A012;
	border-radius: 0;
	box-shadow: none;
}

/* --- Dots (…) --- */
.wp-block-query-pagination .page-numbers.dots,
.kadence-pagination .page-numbers.dots,
.nav-links .page-numbers.dots {
	color: #AFCEE2;
	background: transparent;
	border: none;
}


/* Engineering grid, from the brand design elements */
.es-grid-light{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M60 0H0V60' fill='none' stroke='%231a2730' stroke-opacity='.07'/%3E%3C/svg%3E");
}
.es-grid-dark{
  background-color:#1a2730;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M60 0H0V60' fill='none' stroke='%23afcee2' stroke-opacity='.08'/%3E%3C/svg%3E");
}

/* Brand image grade: dark, cool, restrained */
.es-graded img{ filter:saturate(.45) brightness(.72) contrast(1.06); }
.es-graded-deep img{ filter:saturate(.3) brightness(.5) contrast(1.12); }

/* Kill radius and shadow anywhere Kadence adds them by default */
.kb-row-layout-wrap,.entry-content-wrap,.wp-block-kadence-column{
  border-radius:0;
}

/* Enviro-Strip process timeline: dots on the row's top border */
.es-process .es-step{
  position:relative;
}
.es-process .es-step::before{
  content:"";
  position:absolute;
  top:-5px;
  left:0;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#1A2730;
}
.es-process .es-step:first-child::before{
  background:#E95D2C;
}

/* stacked layout: line goes vertical down the left */
@media(max-width:1024px){
  .es-process .es-step{
    border-left:1px solid #1A2730;
    padding-left:24px;
    padding-top:0;
    padding-bottom:32px;
  }
  .es-process .es-step::before{
    top:6px;
    left:-5px;
  }
}

/* Enviro-Strip before / after comparison */
.es-ba{
  --pos:50%;
  position:relative;
  aspect-ratio:4/3;
  overflow:hidden;
  border:1px solid rgba(26,39,48,.14);
  isolation:isolate;
}
.es-ba img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  margin:0;
  pointer-events:none;
}
.es-ba .es-ba-top{
  clip-path:inset(0 0 0 var(--pos));
}

/* the real control, invisible but fully interactive */
.es-ba .es-ba-range{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  opacity:0;
  cursor:ew-resize;
  -webkit-appearance:none;
  appearance:none;
  background:transparent;
  z-index:3;
}
.es-ba .es-ba-range::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:1px;
  height:100%;
}
.es-ba .es-ba-range::-moz-range-thumb{
  width:1px;
  height:100%;
  border:0;
  background:transparent;
}

/* the handle you can actually see */
.es-ba .es-ba-handle{
  position:absolute;
  top:0;
  bottom:0;
  left:var(--pos);
  width:2px;
  background:#F7A012;
  pointer-events:none;
  z-index:2;
}
.es-ba .es-ba-handle::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:46px;
  height:46px;
  border:2px solid #F7A012;
  border-radius:50%;
  background:rgba(26,39,48,.55);
}
.es-ba .es-ba-handle::before{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:26px;
  height:12px;
  z-index:2;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='12' viewBox='0 0 26 12' fill='none' stroke='%23f7a012' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 1L1 6l5 5M20 1l5 5-5 5'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* keyboard focus, since the input itself is invisible */
.es-ba:focus-within .es-ba-handle::after{
  border-color:#fff;
}

.es-ba .es-ba-label{
  position:absolute;
  bottom:1rem;
  z-index:2;
  font-family:'IBM Plex Mono',monospace;
  font-size:.64rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#fff;
  background:rgba(17,27,34,.78);
  padding:.42rem .7rem;
  pointer-events:none;
}
.es-ba .es-ba-l{ left:1rem; }
.es-ba .es-ba-r{ right:1rem; }



.post-archive-title .entry-title,
.entry-title, .entry-title a {
  color: #1a2730;
}

/* ==========================================================
   Enviro-Strip contact form - checkbox labels (form 475)
   Privacy consent keeps the small sans small print.
   Type of car uses the mono uppercase treatment.
   ========================================================== */

/* --- Privacy consent: locked to its current look --- */
.wp-block-kadence-advanced-form475-cpt-id
.kb-field4751aac03-52 .kb-radio-check-item label {
	font-family: 'IBM Plex Sans', sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: normal;
	text-transform: none;
	color: #AFCEE2;
}

/* --- Type of car: mono, uppercase, matches the field labels --- */
.wp-block-kadence-advanced-form475-cpt-id
.kb-field4752a96b4-36 .kb-radio-check-item label {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #FFFFFF;
}

/* --- More breathing room once the options are uppercase --- */
.wp-block-kadence-advanced-form475-cpt-id
.kb-field4752a96b4-36 .kb-radio-check-item-wrap {
	column-gap: 8px;
	row-gap: 4px;
}

/* --- Space above the Type of work checkboxes --- */
.wp-block-kadence-advanced-form475-cpt-id
.kb-field4752a96b4-36 {
	margin-top: 20px;
}