/* General Styles */

/* debug lines 
* {
    outline: 1px solid red;} /* This will outline every element to help visually identify overflow */
html {
  scroll-behavior: smooth;
}

@font-face {
    font-family: 'basiccommercial_lt_romanbold';
    src: url('basiccommerciallt-black-webfont.woff2') format('woff2'),
         url('basiccommerciallt-black-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'basiccommercial_lt_lightRg';
    src: url('basiccommerciallt-light-webfont.woff2') format('woff2'),
         url('basiccommerciallt-light-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;

}




body {
   
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: sans-serif;
   
}
img {max-width:100%}
.tel {width: 20px; height: 19px;}

.container {width:100%;}

h1 { color: #fff;
    font-size: 4em;
    font-family: basiccommercial_lt_romanbold;
}
h2 { color: #fff;
    font-size: 2em;
     font-family: basiccommercial_lt_romanbold;
}
h3 { color: #fff;
    font-size: 1.6em; margin:0.4em;
     font-family: basiccommercial_lt_romanbold;
}
h4 { color: #fff;
    font-size: 1.2em; margin: 0.3em;
     font-family: basiccommercial_lt_romanbold;
}
h5 { color: #fff;
    font-size: 1em;
     font-family: basiccommercial_lt_romanbold;
}



/* Header Section */
header {
    position: absolute;
    width: 100%;
    background-color: #111;
    color: white;
    z-index: 2;
}



.header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 98%; /* Limiting max-width for responsiveness */
    margin: 16px auto; /* Center the Aheader container */
    width: 99%;
}




.logo img {
    width: 100%; /* Ensure the logo scales with the container */
    max-width: 489px;
}


.menu-toggle {
    display: none;
}

.navbar-container {
    flex: 1;
    display: flex;
    justify-content: end;
    position: relative;
}

.navbar {
    display: flex;
    gap: 10px;
    align-items: center;
}

.navbar a {
    color: white;
    text-decoration: none;
    font-weight: bold;
    padding: 10px;
}

.navbar a:hover {
    text-decoration: none;
    color: #068b88;
}

/* Styles for the hamburger icon */
.hamburger {
    display: none;
    cursor: pointer;
    font-size: 1.5em;
    color: white;
}


.header-right {
    width: 20%;
    display: flex;
    align-items: center;
    gap: 20px; /* Space between social icons and the quote button */
}

.social-icon img {
    width: 30px;
    height: 30px;
}

.transparent-button {
    display: inline-block;
    background-color: transparent;
    color: white;
    padding: .8em  1em;
    font-size: 1.3em;
    font-weight: bold;
    border: 2px solid white;
    border-radius: 50px;
    text-decoration: none;
    transition: background-color 0.3s ease, color 0.3s ease;
}
.transparent-button a {padding: .8em  1em;
    font-size: 1.3em;}

.transparent-button:hover {
    background-color: white;
    color: #068b88;
}

/* OPTIONAL DROPDOWN
.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #333;
    min-width: 160px;
    z-index: 1;
}

.dropdown-content a {
    color: white;
    padding: 10px;
    text-decoration: none;
    display: block;
    font-weight: normal;
}

.dropdown-content a:hover {
    background-color: #555;
}

.dropbtn:hover + .dropdown-content, 
.dropdown:hover .dropdown-content {
    display: block;
}

*** add this bit to hamburger/smaller media rules 
.dropdown-content a {
        padding: 20px;
        text-align: center;
        width: 100%;
    }
    
    .dropdown-content a {
        padding: 20px;
        text-align: center;
        width: 100%;
    }
    
    .menu-toggle:checked + .hamburger + .navbar {
        display: flex;
    }

    .dropdown-content {
        position: static;
        width: 100%;
    }

    .dropdown:hover .dropdown-content {
        display: none;} /* Prevents the dropdown from auto-opening on mobile */



  .mobile-only {
    display: none;

  }



/* Hero Section */
.hero {
    position: relative;
    background: url('https://www.wedotshirts.co.uk/images/herotees.webp') top/cover no-repeat;
    height: 70vh; 
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 80px 20px 10px 20px;
    background-position-y: 3em;

}

.hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); /* Dark overlay for contrast */
    z-index: 1;
}

.hero-content {
    z-index: 2;
    color: #fff;
    max-width: 800px;
    padding: 6em 1em 1em 1em;
}

.hero-content h1 {
    color: #fff;
    font-size: 4em;
    margin-bottom: 20px;
    font-family: basiccommercial_lt_romanbold;
    

}


/*--amended some of these to fix different browser errors --*/
.cta-button {
    display: inline-block;
    background-color: #068b88;
    color: #fff;
    padding: 1em 4em;
    font-size: 1.6em;
    font-weight: bold;
    text-decoration: none;
    margin-top: 2em;
    border: 3px solid white;

    transition: background-color 0.3s ease, transform 0.2s ease;
}

.cta-button:hover {
    background-color: #068b88;
    transform: scale(1.1);
}

/* Main Content */
.main-content {
    max-width: 100%; /* Limiting the width */
    margin: 0 auto; /* Center the main content */
    background-color: #ffffff; /* White background */
    text-align: center;
    FONT-SIZE: 2em;
}

.main-content2 {
   
    max-width: 100%; /* Limiting the width */
    margin: 0 auto; /* Center the main content */
    background-color: #ffffff; /* White background */
    text-align: center;
    FONT-SIZE: 2em;
}

.quoteformcont {padding: 2em;}
.quoteformcont h3 {margin: 1em 0;}

.textrow {padding: 1.5em 4em;}
.textrow a {color: #068b88; text-decoration:none;}
.textrow a:hover {color: #068b88;}
.quoteformcont h3,h4 {color: #111;}
.textrow h3,h4 {color: #111; font-size:1em;}
.servicesrow {display: flex;
    justify-content: space-around;
    max-width: 100%;
  height: auto;
  margin: 0px 20px;}
.servicesrow img {max-width: 48%;}


.contrastrow {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 1s ease-out, transform 1s ease-out;
    text-align: center;
    background-color: #111; /* dark grey row */
    padding: 10px 0px;
    color: white;
}

 .visible {
            opacity: 1;
            transform: translateY(0);
        }
.circlepics {
    display: flex;
    justify-content: space-around;
    max-width: 100%;
  height: auto;
  margin: 0px 20px;
}

.circlepics img {max-width: 25%; margin-bottom: 0.4em;}

.halfcolcont {  display:flex;
    justify-content: space-evenly;
    max-width: 99%;}
    
.halfcol {width: 96%; padding: 0 0.3em; margin-bottom: 0.8em;}

.halfcol a {text-decoration: none;
    font-weight: bold; color:#111; font-size: 32px;}
    
.halfcol a:hover {text-decoration: none;
    font-weight: bold; color:#888;} 

.halfcol img {padding: 0.3em; max-width:95%; margin-bottom: 0.3em;}




/* Footer */

    #footer {background-color: #111; color: white; font-size: 1.3em;}
    #footer a {color: white; text-decoration: none;}
    #footer a:hover {color: #068b88; text-decoration: none;}
.footer-item img {max-width: 90%;}
.footer-iten {text-align: center;}



.footer-nav {display: grid; grid-template-columns: 50% 50%; text-align: center; row-gap: 1.2em; padding: 1em; }


.indeximagerow { display: flex;
  flex-wrap: wrap;
  padding-top: .5em;
  text-align: center;
  justify-content: space-evenly;
  }

.indeximagerow img {
    padding: 0em;
    max-width:49%;
    vertical-align: middle;
 }

.portfoliorow { display: flex;
  flex-wrap: wrap;
  padding: 0 4px;
  text-align: center;
  justify-content: center;
  
    
    }

.portfoliorow img {
    padding: 0;
    max-width: 28%;
    vertical-align: middle;
 }
 
 .quotebottom {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 1.5em;
}





/* Mobile Styles */



@media (max-width: 480px) {
    
   

    .quoteformcont h3 {margin: 2em 0 1em 0; 
    font-size: 1em;}
    .hero-content h1 {display:none;}
    .hero-content h2 {font-size:1.5em; margin: 2.5em 0;}
    .quoteformcont {padding: 1.5em 0.3em;}
    .halfcol a {font-size:24px;}
    .textrow {padding: 1.5em 0.4em;}
    
    
    .cta-button {
    padding: 1em 4em;
    font-size: 1.4em;
    font-weight: bold;
    margin: 2em 0;
    text-decoration: none;
    border: 3px solid white;
    transition: background-color 0.3s ease, transform 0.2s ease;}
    
    .footer-item img {pading-top:1em}
    .main-content {FONT-SIZE: 1.4em;}
    
    
    .hero {
    position: relative;
    background: url('https://www.wedotshirts.co.uk/images/heroteesmob.webp') top/cover no-repeat;
    height: 80vh; 
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 0;
    background-position-y: 4em;

    }
    
      .mobile-only {
      display: block;
  }


    




    header {z-index: 9}
    
       .header-container {
        flex-direction: row; /* Stack items horizontally */
        align-items: center; /* Center items */
        width:100%;
       
    }

    .logo {
        width: 90%; /* Logo takes less of the screen */
      
    }

    .navbar-container {
        display: flex; /* Keep items in a row */
        justify-content: flex-end;
        align-items: center; /* Align items vertically */
        width: 100%; /* Full width for navbar container */
        position:inherit;}
    

    .hamburger {
        display: block; /* Ensure hamburger is visible */
        cursor: pointer;
        font-size: 2em;
        font-weight: bold;
        color: white;
        margin: 0 5px 10px 0; 
    }

    .header-right {
        display: flex; /* Keep social icons and quote button in a row */
        align-items: center; /* Center align */
    }

    .header-right a {
        margin-left: 10px; /* Space between social icons and quote button */
    }
    
   
    
    .navbar {
        display: none; /* Hide by default */
        flex-direction: column;
        align-items: center;
        width: 100vw; /* Full width of the viewport */
        background-color: rgba(0, 0, 0, 0.9);
        position: absolute;
        top: 60px; /* Adjust this based on your header height */
        left: 0;
        z-index: 3; /* Make sure it sits above the hero */
        padding: 10px 0; /* Optional padding for aesthetics */
    }

    /* Show navbar when checkbox is checked */
    .menu-toggle:checked + .hamburger + .navbar {
        display: flex; /* Show the navbar */
    }

    .hamburger {
        display: block; /* Show hamburger icon */
    }

    .navbar a {
        display: block;
        padding: 20px;
        text-align: center;
        width: 100%; /* Full width for each link */
        color: white; /* Make sure the text is visible */
    }

.portfoliorow img {
    padding: 0.5em;
    max-width: 90%;
 }
 
 .portfoliorow { display: block;
 text-align:center;
  padding: 0;
    justify-content: center;
}

.halfcolcont {  display:block;
    max-width: 99%;}
    
.circlepics {margin: 0 4px;}


    


   #footer {display:block; margin: 0 auto;}

.footer-item {margin:0 auto; padding:1em 0; text-align: center; border-top: 1px solid black;}


}


@media (min-width: 481px) and (max-width: 1200px) {
    
    header {z-index: 9}
    
       .header-container {
        flex-direction: row; /* Stack items horizontally */
        align-items: center; /* Center items */
        width:100%;
       
    }
    
     .hero {
    background: url('https://www.wedotshirts.co.uk/images/heroteesmob.webp') top/cover no-repeat;
    height: 80vh; }
    
    .halfcolcont {  display:block;
    max-width: 99%; padding: 0 1em;}

    .logo {
        width: 80%; /* Logo takes most of the screen */
      
    }

    .navbar-container {
        display: flex; /* Keep items in a row */
        justify-content: flex-end;
        align-items: center; /* Align items vertically */
        width: 100%; /* Full width for navbar container */
        position:inherit;}
    

    .hamburger {
        display: block; /* Ensure hamburger is visible */
        cursor: pointer;
        font-size: 2em;
        color: white;
        margin-right: 10px; /* Space to the right of hamburger */
    }

    .header-right {
        display: flex; /* Keep social icons and quote button in a row */
        align-items: center; /* Center align */
    }

    .header-right a {
        margin-left: 10px; /* Space between social icons and quote button */
    }
    
   
    
    .navbar {
        display: none; /* Hide by default */
        flex-direction: column;
        align-items: center;
        width: 100vw; /* Full width of the viewport */
        background-color: rgba(0, 0, 0, 0.9);
        position: absolute;
        top: 80px; /* Adjust this based on your header height */
        left: 0;
        z-index: 3; /* Make sure it sits above the hero */
        padding: 10px 0; /* Optional padding for aesthetics */
    }

    /* Show navbar when checkbox is checked */
    .menu-toggle:checked + .hamburger + .navbar {
        display: flex; /* Show the navbar */
    }

    .hamburger {
        display: block; /* Show hamburger icon */
    }

    .navbar a {
        display: block;
        padding: 20px;
        text-align: center;
        width: 100%; /* Full width for each link */
        color: white; /* Make sure the text is visible */
    }

.portfoliorow img {
    padding: 0.5em;
    max-width: 100%;
 }
 
 .portfoliorow { display: block;
 text-align:center;
  padding: 0;
    justify-content: center;
}

.halfcolcont {  display:block;
    max-width: 99%;}
    
    .textrow {padding: 1.5em 1.5em;}
    
    

   #footer {display:block; margin: 0 auto;}

.footer-item {margin:0 auto; padding:1em 0; text-align: center; border-top: 1px solid black;}
}


@media (min-width: 481px) and (max-height: 500px) and (orientation: landscape) {
    /* Styles for iPhone in landscape */
  .hero {
    padding: 1rem;
    background-size: cover;
    height: 100vh;
    
  }
  .cta-button {margin: 0;}
}



/* Media Query for Screen Widths 1024px upx */
@media (min-width: 1200px) {
    .logo, .header-right {
        width: auto; /* Remove width restriction */
    }
    
    .header-container {
        padding: 0px; /* Adjust padding if needed */
    }
    
    #footer {
  display: grid;
  grid-template-columns: 33% 33% 33%;
  padding: 10px;
  border-top: solid black 1px;}

.footer-item {
  padding: 20px;
  font-size: 1em;
  text-align: center;
    border-top: 0px;}



.footer-item a {padding-bottom: 1em;}
}

/*-- faq accordion bits*/ 
 .faq-container {
            max-width: 80%;
            margin: 0 auto;
            padding: 20px;
            text-align: left;
        }
        .faq-item {
            padding: 0.5em; background-color: #DDD; font-size: 0.8em; border: solid 1px white;
        }
        .faq-title {
            margin: 0.4em;
            cursor: pointer;
            position: relative;
        }
        .faq-title::before {
            content: '+';
            font-weight: bold;
            position: relative;
           
        }
        input[type="checkbox"] {
            display: none;
        }
        input[type="checkbox"]:checked + .faq-title::before {
            content: '-';
        }
        .faq-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.5s ease;
            padding: 0 0.8em;
            background-color: #eee; 
            border: solid 1px #ddd;
        }
        input[type="checkbox"]:checked ~ .faq-content {
            max-height: 500px;
            padding: 15px;
        }
        
        
        

.faq-container2 {
            max-width: 80%;
            margin: 0 auto;
            padding: 20px;
            text-align: left;
        }
        .faq-item2 {
            padding: 0.5em; background-color: #ddd; font-size: 0.8em; border: solid 1px white;
        }
        .faq-title2 {
            margin: 0.4em;
            cursor: pointer;
            position: relative;
        }
        .faq-title2::before {
            content: '+';
            font-weight: bold;
            position: relative;}
           
        .faq-content2 {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.5s ease;
            padding: 0 0.8em;
            background-color: #eee; 
            border: solid 1px #ddd;
        }
        input[type="checkbox"]:checked ~ .faq-content2 {
            max-height: 500px;
            padding: 15px;
        }












