/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Description: Child theme for GeneratePress
Author: Tom Usborne
Template: generatepress
Version: 1.0.0
*/

/* Your custom CSS below */

@font-face {
  font-family: "PP Fragment Serif Light";
  src: url("https://framerusercontent.com/assets/NJV9Zqr4GCwVr3tG8HuVsPkWXQ.woff2");
  font-display: swap; font-style: normal; font-weight: 300
}
@font-face {
  font-family: "PP Fragment Serif Light Placeholder";
  src: local("Arial");
  ascent-override: 97.45%; descent-override: 24.91%; line-gap-override: 19.16%; size-adjust: 104.36%
}

@font-face {
  font-family: "Shippori Mincho";
  src: url("https://fonts.gstatic.com/s/shipporimincho/v17/VdGGAZweH5EbgHY6YExcZfDoj0BA3v-C7LoS7g.woff2");
  font-display: swap; font-style: normal; font-weight: 400
}
@font-face {
  font-family: "Shippori Mincho";
  src: url("https://fonts.gstatic.com/s/shipporimincho/v17/VdGDAZweH5EbgHY6YExcZfDoj0B4L9am4ZEO5--2zg.woff2");
  font-display: swap; font-style: normal; font-weight: 500
}

body{color:#000}
body p,
body div .elementor-widget-text-editor{color:#000; line-height:1.5}

body h1{
  font-family:"PP Fragment Serif Light", "PP Fragment Serif Light Placeholder", serif;
  font-size:70px; line-height:1.05; font-weight:300; margin-bottom:0; color:#000;
}
body .h1-font50 h1{font-size:50px}
body h2{
  font-family:"Shippori Mincho", "Shippori Mincho Placeholder", serif;
  font-size:35px; line-height:1.8; margin:0.6em auto;
}
body h5{font-weight:500}

body h3{
  font-family:"PP Fragment Serif Light", "PP Fragment Serif Light Placeholder", serif;
  font-size:30px; line-height:1; font-weight:300; margin-bottom:0; color:#000;
}

body div .lh-p-1-7 p{line-height:1.7}

body div .p-font20 p,
body div .p-font20{font-size:20px;font-weight:600;line-height:1.8}

.footer-widget-1 .wp-block-image .wp-image-10{filter:invert(1);max-width:195px}
footer.site-info{display:none}

.main-navigation{display:none}
header.site-header{
  height: 100vh; display: flex; width: 100%; justify-content: center; align-items: center; display:none;
}

body div .p-w-500 p{max-width:500px;margin-left:auto;margin-right:auto}

body .img_ht-30vh > .e-con img{
  max-height:70vh; overflow: hidden; justify-content: center;
  object-fit: cover; object-position: center;
}

body div .footer-sec{padding:60px 130px 200px}
body div .footer-logo img{filter:invert(1)}
body div .footer-sec *{color:#fff}
body div .footer-sec h6{
  font-family:"PP Fragment Serif Light", "PP Fragment Serif Light Placeholder", serif;
  font-size:20px; line-height:1.8; margin-bottom:0;
}
body div .footer-sec a, body div .footer-sec b{font-size:16px;font-weight:500;display:block;margin-bottom:8px}
body div .footer-sec p{font-size:10px}

body div .img-full-hght,
body div .img-full-hght img{height:100%}

div .all-img-1{padding:0 60px 60px}
body .all-img-1 .e-con-inner{max-width:100%;}
div .all-img-1 img{ max-height:60vh; object-fit:cover; object-position:center; }

body div .news-sec{padding:100px 100px 60px}

.wpcf7-form{max-width:800px}
.wpcf7-form label{font-size:12px}
.wpcf7-form label span{display:block}
.wpcf7-form label input{ width:100%; height:40px; border-radius:10px; padding:12px;}
.wpcf7-form label textarea{ height:120px; border-radius:10px; padding:12px;}
.wpcf7-form .wpcf7-submit{width:100%; border-radius:10px; padding:0; font-size:12px; line-height:3.15;}

div .custom-post-item + .custom-post-item{margin-top:24px}
.custom-post-item{ display:flex; align-items:center; gap:32px; }
.post-date{ color:#666; font-size:12px; } .post-title{font-size:15px}
body div .post-thumb img{width:300px;height:180px;object-fit:cover;}

.age-gate__heading-title{color:#fff;margin-bottom:80px}
.age-gate__subheadline{color:#fff;font-size:14px;margin-bottom:80px}
.age-gate__additional-information P{color:#FFF;margin-top:20px}
.age-gate__remember-field{ width: 25px; height: 25px; background: transparent; margin: 10px;}

.single.single-post .site-content > .content-area{
  width: 100%; max-width: 700px; margin: 0 auto;
}
.single.single-post .site-content > .sidebar,
.single.single-post .comments-area,
.single.single-post .site-footer,
.single.single-post .inside-article .entry-meta{display:none}

.single.single-post .entry-title{font-size:30px}

.btm-3sec .e-link-in-bio__icons{display:none}

.menu_insta{ display: flex; justify-content: space-between; text-align: center; padding-top:10px; }
.menu_insta i{color:#D300C5;font-size:20px}
.menu_insta p{font-size:14px}

body .atc-testimonial-container .author-img{width:300px;height:300px}
body .atc-testimonial-slider-template-1 .description .author-name{order:1;font-size:30px;
	font-family:"PP Fragment Serif Light", "PP Fragment Serif Light Placeholder", serif;
}
body .atc-testimonial-slider-template-1 .description .company{order:2;font-size:22px;margin-bottom:20px}
body .atc-testimonial-slider-template-1 .description .content{order:3}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes slideIn {
  from { right:18%; }
  to { right:24%; }
}
body .close_menu{ font-size:41px;
  cursor:pointer; white-space:pre; z-index:11;
  flex:none; width:auto; height:auto;
  position: absolute; top: 28px; right:18%;
  opacity:0; animation: fadeIn 1s ease-in forwards, slideIn 0.5s ease-in forwards;
}

@media (min-width:1200px) and (max-width:1499px){
  body div .news-sec{padding:60px}
  body div .img_ht-30vh > .e-con img{max-height:30vh;}	
  body div .all-img-1{padding:0}
  body div .all-img-1 .e-con-inner{max-width:100vw; margin: 0;}
}
@media (min-width:769px){
  body div .all-img-last{
    width: 100%; max-width:1440px !important; margin: 0 auto; padding:40px 60px 60px;
  }
  body div .all-img-last1{flex:1 0 878px !important;}
}
@media (max-width:768px){
  body div h1{font-size:33px}
  body .h1-font50 h1{font-size:30px}
  body div h2{font-size:21px;}
  body div .footer-sec{padding:80px 24px;}
  div .all-img-1{padding:0}	
  body div .news-sec{padding:40px}
  .custom-post-item{flex-wrap: wrap; gap:10px; margin-bottom:35px}
  .custom-post-item > div{flex:0 0 100%}
  body div .post-thumb img{width:100%}
}


/* Hamburger Menu Styles */
.hamburger-menu-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 11;
}

/* Hamburger Icon Button */
.hamburger-btn {
  background:transparent;
  border: none;
  width: 50px;
  height: 50px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap:9px;
  padding: 0;
  transition: all 0.3s ease;
  margin:0px;
  position: fixed;
  top:24px;
  right:35px;
  z-index: 99999;
}

.hamburger-btn:hover,.hamburger-btn:focus {
  background:transparent;
}

.hamburger-btn span {
  width:41px;
  height:5px;
  background: #333;
  border-radius: 2px;
  transition: all 0.3s ease;
  display: block;
}
.hamburger-btn.active{opacity:0.1}

/* Hamburger animation when active */
/*
.hamburger-btn.active span:nth-child(1) {
  transform: rotate(45deg) translate(10px, 10px);
}

.hamburger-btn.active span:nth-child(2) {
  opacity: 0;
}

.hamburger-btn.active span:nth-child(3) {
  transform: rotate(-45deg) translate(7px, -7px);
}
*/

/* Full Screen Menu */
body div.elementor-element .fullscreen-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  background:rgb(255 255 255 / 94%) !important;	
  z-index: 10;
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

body div.elementor-element .fullscreen-menu.active {
  display: flex;
  opacity: 1;
}

.fullscreen-menu nav {
  width: 100%;
  text-align: center;
}

.fullscreen-menu nav a {
  display: table;
  color: #000;
  text-decoration: none;
  font-size: 28px;
  font-weight: 300;
  padding:15px 0; margin:0 auto;
  transition: all 0.3s ease;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.fullscreen-menu nav a:hover {
  font-weight: 600;
  transform: scale(1.05);
  text-shadow: 0 0 20px rgba(255, 255, 255, 0.3);
}

.after_menu{text-align:center;}
.after_menu > p{font-size:11px}
.after_menu h6{margin-bottom:0;margin-top:10px;}
.menu_insta div img{max-width:60px;border-radius: 50%;}


/* Responsive adjustments */
@media (max-width: 768px) {
  .fullscreen-menu nav a {
    font-size: 24px;
    padding: 20px 0;
  }
  
  .hamburger-btn {
    width: 45px;
    height: 45px;
    margin: 10px;
    gap:5px; top:0; right:0;
  }
  
  .hamburger-btn span {
    width:26px;
  }
}

@media (max-width: 480px) {
  .fullscreen-menu nav a {
    font-size: 20px;
    padding: 15px 0;
  }
}