/* 
 Theme Name:   Zeald Website Theme
 Theme URI:    
 Description:  Divi child theme containing any special customisations for this website
 Author:       Zeald
 Author URI:   http://www.zeald.com
 Template:     Divi
 Version:      4.0

 /* == Add your own styles below this line ==
--------------------------------------------*/

@font-face {
  font-family: 'Satoshi-Regular';
  src: url('/wp-content/uploads/fonts/Satoshi-Regular.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/Satoshi-Regular.woff') format('woff'),
       url('/wp-content/uploads/fonts/Satoshi-Regular.ttf') format('truetype');
  font-weight: 400;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: 'Satoshi-Italic';
  src: url('../../fonts/Satoshi-Italic.woff2') format('woff2'),
       url('../../fonts/Satoshi-Italic.woff') format('woff'),
       url('../../fonts/Satoshi-Italic.ttf') format('truetype');
  font-weight: 400;
  font-display: swap;
  font-style: italic;
}
@font-face {
  font-family: 'Satoshi-Medium';
  src: url('/wp-content/uploads/fonts/Satoshi-Medium.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/Satoshi-Medium.woff') format('woff'),
       url('/wp-content/uploads/fonts/Satoshi-Medium.ttf') format('truetype');
  font-weight: 500;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: 'Satoshi-MediumItalic';
  src: url('../../fonts/Satoshi-MediumItalic.woff2') format('woff2'),
       url('../../fonts/Satoshi-MediumItalic.woff') format('woff'),
       url('../../fonts/Satoshi-MediumItalic.ttf') format('truetype');
  font-weight: 500;
  font-display: swap;
  font-style: italic;
}
@font-face {
  font-family: 'Satoshi-Bold';
  src: url('../../fonts/Satoshi-Bold.woff2') format('woff2'),
       url('../../fonts/Satoshi-Bold.woff') format('woff'),
       url('../../fonts/Satoshi-Bold.ttf') format('truetype');
  font-weight: 700;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: 'Satoshi-BoldItalic';
  src: url('../../fonts/Satoshi-BoldItalic.woff2') format('woff2'),
       url('../../fonts/Satoshi-BoldItalic.woff') format('woff'),
       url('../../fonts/Satoshi-BoldItalic.ttf') format('truetype');
  font-weight: 700;
  font-display: swap;
  font-style: italic;
}

body {
	font-family: 'Satoshi-Regular', sans-serif;
}

h1, h2, h3, h4, h5, h6, #et-top-navigation, .font_size-medium .et_pb_text_inner {
	font-family: 'Satoshi-Medium', sans-serif;
	font-weight: 500 !important;
}

h1 em, h2 em, h3 em, h4 em, h5 em, h6 em {
	font-family: 'Satoshi-MediumItalic', sans-serif;
}

h1 { letter-spacing: -1.5px; }
h2, h3, h4 { letter-spacing: -1px; }

#main-header {
  /* Semi-transparent background matching your Figma fill */
  background: rgba(255, 255, 255, 0.01); 
  
  /* Blurs the background behind the card (Figma's frost/blur parameter) */
  backdrop-filter: blur(38px); 
  -webkit-backdrop-filter: blur(38px); 
  
  /* Subtle white border to mimic glass edge highlights */
  border: 1px solid rgba(255, 255, 255, 0.20); 
  
  box-shadow: none;
}

#breadcrumbs {
    margin-top: 20px;
    margin-bottom: 40px;
	font-size: 13px;
}

.search-results #breadcrumbs { display: none; }

.gradient_linear-blue h1 span {
    display: block;
    background: linear-gradient(22deg, #A9D0F0 3.12%, #2D85D4 115.42%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Container using CSS Grid */
.hero_button-group ul {
  list-style: none; 
  padding: 0;       
  margin: 0;        
  display: grid;
  grid-template-columns: auto auto; 
  justify-content: center; 
  gap: 12px;               
}

/* Base button styles applied to anchor tags */
.hero_button-group li a {
  display: block;             /* Makes the link behave like a block element */
  text-decoration: none;      /* Removes the default link underline */
  text-align: center;         /* Centers the text inside the button */
  box-sizing: border-box;     /* Keeps padding from breaking the width */
  padding: 13px 34px;
  border-radius: 50px; 
  border: none;
  cursor: pointer;
  transition: all 0.2s ease;
  width: 100%; 
  line-height:1.3;
}

/* Dark "Make a booking" link */
.hero_button-group li:first-child a {
  background-color: #26231F; 
  color: #FBF9F4;
}

.hero_button-group li:first-child a:hover {
  background-color: #3F3A33;
}

/* Blurred "Learn more" link */
.hero_button-group li:last-child a {
  color: #FBF9F4; 
  border-radius: var(--radius-infinite, 9999px);
  border: 1px solid rgba(255, 255, 255, 0.17);
  background: rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px); 
}

.hero_button-group li:last-child a:hover {
  background: rgba(255, 255, 255, 0.15); 
}

.grid_column-services {
	display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    grid-gap: 8px;
	align-items: stretch;
}

.grid_column-services .et_pb_column {
	width: 100% !important;
	/*height: 100%;
	display: flex;
	flex-direction: column;*/
}

.grid_column-services .et_pb_blurb_container {
	vertical-align: middle;
}

.accordion_custom-styling .et_pb_toggle_title:before {
	padding: 8px;
	background-color: #F5F1E6;
	border-radius: 8px;
	margin-top: -1em;
}

/* Footer Area */
.footerleft_grid-blurb .et_pb_blurb_content {
	display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 40px;
	align-items: center;
}

/* Reset standard list styles */
ul.custom-location-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

ul.custom-location-list li br {
  display: none;
}

/* Style the list items and create space for the icon */
ul.custom-location-list li {
    position: relative;
    padding-left: 40px; /* Adjust spacing between icon and text */
    margin-bottom: 32px; /* Space between each location */
}

ul.custom-location-list li:last-child {
  margin-bottom: 0;
}

/* Inject the Divi map pin icon */
ul.custom-location-list li::before {
    content: url("/wp-content/uploads/2026/06/map-pin.png");
  position: absolute;
  left: 0;
  top: 12px;
}

/* Style the Title (e.g., "Hamilton") */
ul.custom-location-list .location-title {
    display: block;
    color: #F5F1E6;
  	font-family: 'Satoshi-Medium';
    margin-bottom: 4px;
}

/* Style the Address line */
ul.custom-location-list .location-address {
    display: block;
    line-height: 1.4;
	color: #A39A87;
}

.block_innerpage-header .linear-gradient {
	background: linear-gradient(9deg, #96876C 13.98%, #5A5347 77.36%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

/*.block_innerpage-header-aboutus .et_pb_text_inner {
	background: linear-gradient(9deg, #96876C 13.98%, #5A5347 77.36%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}*/

.block_innerpage-header-aboutus h2,
.block_innerpage-header-digitaldentures h1 {
	background: linear-gradient(9deg, #96876C 13.98%, #5A5347 77.36%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	text-fill-color: transparent;
	display: inline-block;
}

.contact_map-button .et_pb_blurb_container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.contact_map-button .et_pb_blurb_container .et_pb_button {
	background-color: #F5F1E6;
	border-color: #F5F1E6;
	font-family: 'Satoshi-Medium';
	font-weight: 500;
}

.contact_map-button .et_pb_blurb_container .et_pb_button:hover {
	background-color: #FBF9F4;
	border-color: #FBF9F4 !important;
}

/* ------ Utility Classes ------ */

/* Hide the extra text modules by default */
.more-content {
    display: none;
}

.header_flex-horizontal {
	display: flex;
}

/* =========================== */
/* ====== Media queries ====== */
/* =========================== */
@media (min-width: 1215px) {
	.grid_column-services {
		grid-template-columns: repeat(4, 1fr);
		align-items: stretch;
	}
}

@media (min-width: 981px) {
	
	#main-header .et_menu_container,
	#main-header.et-fixed-header .et_menu_container {
		display: flex;
		justify-content: end;
	}

	#et-top-navigation,
	.et_fixed_nav #et-top-navigation {
		padding: 20px 0 !important;
	}

	.et_header_style_left #et-top-navigation nav>ul>li>a,
	.et_header_style_split #et-top-navigation nav>ul>li>a {
		padding-top: 10px;
		padding-bottom: 10px !important;
	}

	#top-menu .menu-item-has-children>a:first-child:after,
	#et-secondary-nav .menu-item-has-children>a:first-child:after {
		top: 25%;
	}

	/* ── Shared button base ── */
	#et-top-navigation nav > ul > li.menu-btn-outline {
		padding-right: 6px;
	}

	#et-top-navigation nav > ul > li.menu-btn-outline > a,
	#et-top-navigation nav > ul > li.menu-btn-filled > a {
		display: inline-flex;
		align-items: center;
		padding: 10px 18px !important;
		border-radius: 8px;
		line-height: 1;
		margin-left: 6px;
		transition: all 0.2s ease;
	}

	/* ── Outlined button: "For Dentists" ── */
	#et-top-navigation nav > ul > li.menu-btn-outline > a {
		border: 1.5px solid #D8D0BE;
		color: #201D18 !important;
		background: #FFFFFF;
	}
	#et-top-navigation nav > ul > li.menu-btn-outline > a::after {
		content: " ↗";
		color: #5DA2DB;
		font-size: 13px;
		margin-left: 8px;
	}
	#et-top-navigation nav > ul > li.menu-btn-outline > a:hover {
		opacity: 0.8;
	}

	/* ── Filled button: "Make a booking" ── */
	#et-top-navigation nav > ul > li.menu-btn-filled > a {
		background: #F5F1E6;
		color: #26231F !important;
		border: 1px solid #F5F1E6;
	}
	#et-top-navigation nav > ul > li.menu-btn-filled > a:hover {
		opacity: 0.8;
	}

	/* ── Vertically center items in header ── */
	#et-top-navigation nav > ul {
		display: flex;
		align-items: center;
	}
	
	.column_services-width .et_pb_column_single {
		width: 32.333%;
	}

	.column_services-width .et_pb_column:last-child {
		width: 64.666%;
	}
	
	.grid_team {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important; /* Centers the bottom row of 2 items */
        gap: 40px 2%; /* Adjust horizontal/vertical spacing */
    }

    /* Force the first 3 columns to take up ~30% each (Row 1) */
    .grid_team > .et_pb_column:nth-child(1),
    .grid_team > .et_pb_column:nth-child(2),
    .grid_team > .et_pb_column:nth-child(3) {
        flex: 0 0 31% !important;
        width: 31% !important;
        margin-right: 0 !important;
    }

    /* Force the last 2 columns to take up ~31% each so they match in size (Row 2) */
    .grid_team > .et_pb_column:nth-child(4),
    .grid_team > .et_pb_column:nth-child(5) {
        flex: 0 0 31% !important;
        width: 31% !important;
        margin-right: 0 !important;
    }
	
	.grid_team .et_pb_image {
		margin-bottom: 16px;
	}

	.footerleft_grid-blurb .et_pb_main_blurb_image {
		margin-bottom: 0;
	}
	
}

@media (max-width: 980px) {
	h1 {
		letter-spacing: -1px;
	}
	
	.grid_team {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
    }

    /* Force a 2-2-1 layout on tablet */
    .grid_team > .et_pb_column {
        flex: 0 0 46% !important;
        width: 46% !important;
        margin: 0 2% 30px 2% !important;
    }

    /* Centers the 5th single column perfectly at the bottom */
    .grid_team > .et_pb_column:last-child {
        margin-left: auto !important;
        margin-right: auto !important;
    }
	
	.grid_team .et_pb_image {
		margin-bottom: 8px;
	}
	
	.grid_footer-3columns {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: auto auto;
		gap: 8px;
	}
	
	.grid_footer-3columns .et_pb_column:last-child {
		grid-column: span 2 / span 2;
	}
	
	.grid_column-2fr {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
	.footerleft_grid-blurb .et_pb_blurb_content {
		grid-template-columns: 1fr;
		grid-gap: 0;
	}
	
	.footerleft_grid-blurb .et_pb_blurb_content .et_pb_main_blurb_image,
	.grid_column-2fr .et_pb_blurb_description {
		display: none;
	}
	
	.grid_column-services {
		grid-template-columns: 1fr;
	}
	
}

@media (max-width: 479px) {
	.hero_button-group li a {
		padding: 11px 26px;
	}
}