/*
 Theme Name: Astra Child
 Description: A child theme for the Astra theme.
 Author: Adrian Beal
 Template: astra
 Version: 1.0.0
*/


/* Your modification to import style sheets goes here
@import url("/wp-content/themes/graphene/STYLE SHEET NAME 1.css");
@import url("/wp-content/themes/graphene/STYLE SHEET NAME 2.css");
*/



/* Your modification to your Theme layout goes here

.header_desc {font-size: 16px;color: #000000;    padding: 0px 10px;}
.header_title {color: #000000;padding: 0px 10px;}
.page .post-title {display: none;}

.navbar {
    min-height: 0px;
}

.searchform{
	display: none;
}

*/



/* Your font families go here */

@font-face {
	src: url(/wp-content/themes/astra-child/MyFonts/Barlow/Barlow-Regular.ttf);
	font-family: Barlow;
}

@font-face {
	src: url(/wp-content/themes/astra-child/MyFonts/Gochi_Hand/GochiHand-Regular.ttf);
	font-family: Gochi_Hand;
}


/* Calling your font faces */

.FontBarlow {
	font-family: Barlow;
}

.Gochi_Hand {
	font-family: Gochi_Hand;
}


/* Main Site Changes */

body {
	color:black;
	font-family: Arial, sans-serif;
	background-image: url('uploads/BgLightGrayLeather.jpg')!important;
	background-repeat: repeat; /* This makes the image repeat both horizontally and vertically */
	background-position: top left; /* Optional: sets the starting point */

}

.BodyContainer {
	font-size:0;
}

a {
	text-decoration:none !important;
	color:inherit;
}


/* §§§§§§§§§§§§§§§§§§§§§§§§ ADRIAN'S AREA §§§§§§§§§§§§§§§§§§§§§§§§ */

.MyMasterContainer {
	max-width: 100%;
	font-size: clamp(0.7rem, 1.8vw, 1.3rem);
	background-image:url("/wp-content/themes/astra-child/uploads/BgWhiteParchment.gif");
	border-width: 1px;
	border-style: solid;
	font-family: Barlow;
	text-align:justify;
	padding: 1em;
	color:black;
	margin:0;
}

#PageNav {
  position: sticky;
  top: 0;
  z-index: 1000;
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  #PageNav {
    flex-direction: column;
    align-items: flex-start;
  }

  #PageNav ul {
    flex-direction: column;
    gap: 10px;
  }
}

@media (orientation: landscape) and (max-width: 768px) {
  #PageNav {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

.IntroVideoWrapper {
  max-width: 800px;        /* or whatever max width you want */
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  overflow: hidden;
}

.IntroVideo {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  display: block;
  border: 2px solid #333;
  border-radius: 8px;
  background-color: #000;
  object-fit: contain;
}

.Signature {
	display: inline-block;
	width:38%; 
	text-align:left; 
	border:none; 
	font-family: Gochi_Hand; 
	font-size: clamp(0.6rem, 3vw, 2rem);
}

.ContactRingingTelephone {
    width: clamp(50px, 10vw, 100px);
    height: auto;
    padding-left: 1em;
}

.ServiceBox {
	width: 100%; 
	height: auto; 
	position: relative; 
	overflow: hidden;
	line-height:1.5em; 
	padding:0.6em 1em 0.5em; 1em;
	marging:0;
	background:#FFF; 
	font-size: clamp(0.5rem, 2vw, 1.4rem);
}

 .BoxHeading {
	width: 100%; 
	display: inline-block;
	font-size: clamp(1rem, 3vw, 2.5rem);
	text-align:center;
	font-weight: bold;
	border-radius: 0.4em;
	border-width: 4px;
	border-color: black;
	border-style: solid;    
	padding:0.2em;	
 }
 
.ServicesImagesLeft {
  float: left;
  margin-right: 1em;
  border-radius: 0.4em;
  border: 2px solid black;
  width: clamp(75px, 30vw, 400px);
  height: auto;
}


.Question {
	text-align:left;
	font-size: 1.2em;
	font-weight:bold;
	color: green;
}

.Answer {
	font-size: clamp(1em, 2vw, 1em);
	color: darkgreen;
	text-align: justify;
	font-weight: normal;
}

 .ReadMore {
 	margin-left:auto;
 	margin-right:auto;
	background-image:url("/wp-content/themes/astra-child/uploads/BgWhiteParchment.gif");
	font-size: clamp(0.6rem, 2vw, 1.5rem);
	text-align:center;
	font-weight: bold;
	color: black;
	border-radius: 0.4em;
	border-width: 4px;
	border-color: orange;
	border-style: solid;    
	padding:0.2em 1em 0.2em 1em;	
 }

 .TopTip {
	width: clamp(2.5rem, 8vw, 100px); 
	height:auto; 
	padding-right:0.5em;
 }

.underline-gap {
  display: inline-block;
  box-shadow: inset 0 -0.2em 0 #FF5733; /* Same hex color */
  padding-bottom: 0.2em;
  font-variant:small-caps;
}

h2.ServicesHeadings {
	width:100%;
	background: lightgray;
	font-size: clamp(0.8rem, 3vw, 2rem);
	color: maroon;
	font-weight:bold;
	text-align:left;
	padding:0.2em 0.2em 0.2em 0.5em;
	margin-top:2em;
}

h3.FAQ_Question {
	font-size: clamp(0.7rem, 1.8vw, 1.4rem);
	font-weight: bold;
	color:darkblue;
}

.FAQ_Answer {
	font-size: clamp(1rem, 2vw, 2.4rem);
	font: italic small-caps 1em/1em Georgia, serif;
}

h1.ServicesMainTitle {
	float: left;
	width:100%;
	font-size: clamp(0.8rem, 3vw, 2rem);
	color: #467606;
	font-weight:bold;
	text-align:center;
	line-height:1em;
	margin-top:0;
}

 .ContactMe {
	display: inline-block;
	width:100%;
	text-align:center;
	font-weight: bold;
	border-radius: 0.4em;
	border-width: 4px;
	border-color: black;
	border-style: solid;    
	padding:0.2em;
 }

.grid-container-video-wrapper {
  max-width: 100%;
  box-sizing: border-box;
  background: white;
  border: 4px solid coral;
  padding: 1em;
  overflow: hidden; /* Prevent collapsing margins */
}

.full-width-row {
	width: 100%;
	padding-top: 0.3em;
	padding-bottom: 0.3em;
	font-size: clamp(1rem, 3vw, 2.5rem);
	text-align: center;
	font-weight: bold;
	margin: 0;
}

/* Style the main menu container */
.MainMenuItems {
    display: flex;
    justify-content: space-between; /* Distributes items evenly */
    font-family: Barlow;
    font-size: clamp(0.4rem, 1.8vw, 1.1rem);
    font-weight: normal;
    color: black;
    background:white;
    width: 100%;
    border-color: black;
    border-width: 1px;
    border-style: solid;
    border-bottom: none;            /* Remove bottom border */
    margin: 0;
    padding:0.5em;
    list-style: none;
}

/* Style the menu links */
.MainMenuItems a, .dropdown > a {
    text-decoration: none;
    font-weitght:bold;
    font-size: 1em;
    text-align: center;
    flex: 1;
    display: flex;
    justify-content: center;
    transition: color 0.2s ease-in-out, font-size 0.2s ease-in-out;
}

/* Hover effect - grow size and change color to red */
.MainMenuItems a:hover, .dropdown:hover > a {
    color: red;
    font-size: 1em;
    font-weight:bold;
}


/* Ensure each menu item has equal spacing */
.MainMenuItems a, .dropdown {
    text-decoration: none;
    color: black;
    text-align: center;
    flex: 1; /* Makes each item take up equal space */
    display: flex;
    justify-content: center;
}


/* Ensure the dropdown behaves like the other items */
.dropdown {
    position: relative;
}


/* Style the dropdown content */
.dropdown-content {
    display: none;
    position: absolute;
    color:black;
    background-color: white;
    min-width: 120px;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
}

/* Show dropdown on hover */
.dropdown:hover .dropdown-content {
    display: block;
}

/* Style dropdown links */
.dropdown-content a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: black;
    white-space: nowrap;
    text-align: left;
}


/* Dropdown hover effect */
.dropdown-content a:hover {
    background-color: #f1f1f1;
}


/* Style the dropdown icon */
.dropdown-icon {
    font-size: 0.8em;
    margin-left: 5px;
    transition: transform 0.2s ease-in-out;
}


/* Style the dropdown content */
.dropdown-content {
    display: none;
    position: absolute;
    color:black;
    background-color: white;
    min-width: 120px;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
}


.current-menu-item {
    background-color: #007cba !important;;  /* Light blue color for highlighting */
    color: white !important;  /* White text for better visibility */
}


.MenuTelIcon {
  float: left;
  margin-right: 0.25em;
  border-radius: 1em;
  border: 2px solid white;
  width: clamp(20px, 5vw, 50px);
  height: auto;
  background:white;
}




.grid-container-services {
    display: grid;
    grid-template-rows: repeat(auto-fit, 1fr);
    grid-template-columns: repeat(6, 1fr); /* Columns */
    gap: 0.5em;
    
    background: coral;
    border-width: 1px;
    border-color: #aabcfe;
    border-style: solid;
    padding: 1em;
    overflow-x: auto; /* Enable horizontal scrolling if necessary */
}


/* Grid items remain unchanged */
.grid-item-services {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: clamp(0.5rem, 1.5vw, 1rem);
    font-weight: bold;
    color: white;
    text-align: center;
    padding: 20px;
    border-radius: 0.4em;
    border-width: 4px;
    border-color: black;
    border-style: solid;
	line-height:1.3em;
}

/* Box Colors */
.box1 { background: red; grid-area: 1/1/4/3; } /* Boiler Service */
.box2 { background: cyan; color: black; grid-area: 1/3/4/4; } /* Call Me */
.box3 { background: green; grid-area: 1/4/8/5; } /* Boiler Repair */
.box4 { background: blue; grid-area: 1/5/4/7; } /* Boiler Replacement */
.box5 { background: yellow; color: black; grid-area: 4/1/8/4; } /* Landlord Certificate */
.box6 { background: #66ff33; color: black; grid-area: 4/5/8/6; } /* General Plumbing */
.box7 { background: purple; grid-area: 4/6/8/7; } /* Central Heating */
.box8 { background: #ff00ff; grid-area: 8/1/11/3; } /* Gas Work */
.box9 { background: orange; color: black; width:136%; grid-area: 8/3/11/6; } /* Plumbing Tips */


.box1:hover a, .box2:hover a, .box3:hover a, .box4:hover a, .box7:hover a, .box8:hover a {
  color: yellow;
  text-decoration: none;
  font-size:1.3em;
}

.box5:hover a{
  color: coral;
  text-decoration: none;
  font-size:1.3em;
}

.box2:hover a, .box6:hover a, .box9:hover a {
  color: red;
  text-decoration: none;
  font-size:1.3em;
}


/* Portrait Mode Grid */
@media screen and (orientation: portrait) {
    .grid-container-services {
        grid-template-columns: repeat(2, auto); /* Change to 2 columns */
		grid-template-rows: repeat(6, auto);
        gap: 10px;
    }
.box1 { width:90%; max-height:3em; background: red; grid-area: 1/1/2/2; }
.box2 { width:90%; max-height:3em; background: cyan; color: black; grid-area: 1/2/2/3; }
.box3 { width:90%; max-height:3em; background: green; grid-area: 2/1/2/2; }
.box4 { width:90%; max-height:3em; background: blue; grid-area: 2/2/3/3; }
.box5 { width:90%; max-height:3em; background: yellow; color: black; grid-area: 3/1/4/2; }
.box6 { width:90%; max-height:3em; background: #66ff33; color: black; grid-area: 3/2/4/3; }
.box7 { width:90%; max-height:3em; background: purple; grid-area: 4/1/5/2; }
.box8 { width:90%; max-height:3em; background: #ff00ff; grid-area: 4/2/5/3; }
.box9 { width:95%; max-height:3em; background: orange; color: black; grid-area: 5/1/6/3; }
}



/* MySiteFooter */

.MySiteFooterContainer {
	background-image:url("/wp-content/themes/astra-child/uploads/BgLightGrayLeather.jpg")
	width: 100%;
	aspect-ratio: 7 / 1.5; 
	display: grid;
	grid-template-columns: 20% 60% auto;
	grid-template-rows: 1fr 1fr;
	gap: 5px;
	align-items: center;
	padding: 10px;
	border: 1px solid black;	
}


.Slogan {
	font-family: 'Rock Salt', cursive;
	font-size: clamp(0.4rem, 1vw, 1.5rem);
	color: #000;
	margin: 0.5em 0em 0.5em 0em;
	text-align:center;      
}


.MySiteFooterGrid {
	grid-row: span 3;
	display: flex;
	align-items: center;
	padding-left:0.5em;
}

/* END MySiteFooter */



.MappingBy {
	display:inline-block;
	font-size: clamp(0.4rem, 1vw, 1.5rem);
	vertical-align: middle;
}

img.MappingBy {
	width: clamp(30px, 10vw, 100px);
	height:auto;
}


.HPIntroVideoWrapper {
	width: 100%;
	font-align:left;
	box-sizing: border-box;
	overflow: hidden;
}

.HPIntroVideo {
	float: left;
	margin-right: 1em;
	width: 40%;
	height: auto;
	max-width: 100%;
	border: 2px solid #333;
	border-radius: 8px;
	background-color: #000;
	object-fit: contain;
}


/* Main Wrapper */
div.Intro2divWrapper {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-top: 0.5em;
}

/* Left Column */
div.Intro2divWrapper .LeftDiv {
  flex: 1;
  max-width:40%;
  margin-right: 1em; /* Optional: add spacing between columns */
}

/* Right Column */
div .Intro2divWrapper .RightDiv {
  flex: 1;
  width:60%;
  padding-right:1em;
  color:green; 
  font-weight:bold;
  text-align: center;
  margin:0;
  line-height: 1.25em;
  font-size: clamp(0.4rem, 3vw, 2.5rem);
}



div.HPImg img {
	float: left;
	margin-right: 1em;
	height: auto;
	max-width: 40%;
	border: 2px solid #333;
	border-radius: 8px;
	background-color: #000;
	object-fit: contain;
}


div.ServicesImg img {
	margin-left:0;
	margin-right: 0;
	height: auto;
	max-width: 100%;
	border: 2px solid #333;
	border-radius: 8px;
	background-color: #000;
	object-fit: contain;
	text-align:center;
}