/*Editione_common_fs on MAIN for full webpages*/
	
body::-webkit-scrollbar {
 display: none !important;} /* Hide scrollbar on all browsers */
	
h1 {
 font-family: Arial, sans-serif; color: #a38a00; 
 font-size: 24pt;
 font-weight:600; 
 line-height: 1.5; 
 text-align:center; margin-left: 5vw; margin-right: 5vw;
 }

h2, .spaced-paragraph {
 font-family: Arial, sans-serif; 
 color: #000; 
 font-size: clamp(1.0rem, -1rem + 5vw, 1.2rem); 
 font-weight:100; 
 line-height: 28pt; 
 text-align:center; 
 margin-left: calc(0.4 *(100vw - 600px)); 
 margin-right: calc(0.4 *(100vw - 600px))
 }
 
 .spaced-paragraph {
  text-align: justify;
  margin-bottom: 15px;
 }
	
h3 {
 font-family: 'Arial', sans-serif;
 font-weight: 200;
 color: #000000;
 font-size: clamp(0.8rem, -1rem + 5vw, 1.1rem);
 line-height: 1.5;
 font-style: normal;
 text-align:justify;
 margin-left: 40px;
 margin-right: 40px;
 }
 
h4 {
 font-family: 'Arial', sans-serif;
 font-weight: 200;
 color: #ffffff;
 font-size: clamp(0.6rem, -1rem + 5vw, 0.8rem);
 line-height: 1.5;
 font-style: normal;
 text-align:center;
 }

.header{
 position:fixed;
 top: 0px;
 left:0px;
 border: none;
 display: block;
 width: 100vw;
 height: 80px;
 background-color: #ffffff;
 z-index:1000;
 box-sizing: border-box;
 }
 
.main-content {
 margin-top: 50px;
 margin-bottom: 50px;    
}
 
#dynamic-footer {
 position: fixed;
 bottom: 0;
 left: 0;
 width: 100%;
 background-color: #000;
 display: flex;
 justify-content: center;
 align-items: center;
 padding: 10px 0;
 text-align: center;
 z-index: 1000;
 font-family: 'Arial', sans-serif;
 font-weight: 200;
 color: #fff;
 font-size: clamp(0.7rem, -1rem + 5vw, 1rem);
 line-height: 1.2;
 font-style: normal;
 min-height: 15px;
 }
 
.spaced-paragraph {
 text-align: justify;
 margin-bottom: 25px; /* or 48px, or any fixed height */
 }
	
.brand-name {
 font-family: 'Baloo 2', cursive;
 font-size: 1.25em;
 font-weight: 800;
 color: #005b8d; 
 line-height: 1;           /* keep consistent with surrounding text */
 white-space: nowrap;    /* prevent any line-breaks inside */
 }

.brand-initial {
 display: inline-block;
 transform: scale(1.2);
 transform-origin: bottom left;
 vertical-align: baseline;
 margin-right: 0.1em;
 line-height: 1;
 position: relative;  /* enable offset */
 top: 1px;            /* move down 1px */
 }
 
 .blue-disc {
  display: inline-block;
  width: clamp(0.5rem, 0.2rem + 1vw, 0.7rem);
  height: clamp(0.5rem, 0.2rem + 1vw, 0.7rem);
  border-radius: 50%;
  background-color: #005b8d;
  margin-right: 0.6rem;
  vertical-align: middle;
}

.quoteloc {
 display: block;
 position : fixed;
 top: 29px;
 left: 55vw;
 height : 32px;
 width : 200px;
 background : #ffffff;
 border : none;
 z-index : 1000;
 } 
	
.inline-text-svg {
 display: inline-flex;
 align-items: center;
 gap: 8px;
 color: #0000FF;
 text-decoration:underline;
 }
 
.inline-text-svg:hover {
 text-decoration: underline;
 text-decoration-style: double;
 }
		
.inline-text-svg span {
 font-family:'Oswald';
 font-size: 17pt;
 font-weight: 400;
 line-height: 1;
 cursor:pointer;   
 }

#langlocPT, #langlocEN {
 position: fixed;
 top: 25px;
 right: 4.3vw;
 height: 30px;
 width: 50px;
 transition: transform 1s;
 opacity: 1.0;
 z-index: 1000;
 }
 
#langlocEN, #langlocPT {
    display: none;
}

html[lang="en"] #langlocPT {
    display: block;
}
html[lang="en"] #langlocEN {
    display: none;
}

html[lang="pt-br"] #langlocPT {
    display: none;
}
html[lang="pt-br"] #langlocEN {
    display: block;
}
 
#langlocPT:hover, #langlocEN:hover {
 opacity: 0.6;
 }
 
.logoplace {
 position:fixed;
 top: 5px;
 left: 5vw;
 display: block;
 height: 70px;
 z-index:1001;
 }
 
.top-bar {
 display: none; /* Hide by default */
 justify-content: flex-end;
 background-color: #c4a94e;
 position: fixed;
 width: 100vw;
 height: 50px;
 top: 80px; /* Adjust based on header height */
 padding: 10px;
 z-index: 997;
 box-sizing: border-box;
 }
 
.menu {
 display: flex;
 justify-content: space-between; /* Space items equally */
 background-color: #c4a94e;
 position: fixed;
 top: 80px; /* Adjust based on header height */
 width: 100vw;
 height: 50px;
 z-index: 999;
 box-sizing: border-box;
 }

.menu-item {
 text-align: center;
 font-weight:600;
 font-size: 14pt;
 padding-top: 16px;
 padding-bottom: 16px;
 padding-left: 20px;
 padding-right: 20px;
 color: #4A3F00;
 text-decoration: none;
 transition: background-color 0.3s;
 position: relative;
 cursor:pointer;
 flex: 1;
 }
   
.submenu {
 display: none;
 position: absolute;
 top:50px;
 background-color: #c4a94e;
 width: 250px;
 left: 50%;
 transform: translateX(-50%);
 margin-top: 10px;
 opacity: 0.97;
 border: 6px solid #776400;	
 border-radius:20px;
 }
 
.submenu-item {
 padding-top: 10px;
 padding-bottom:0px;
 line-height: 1.2;
 color: #4A3F00;
 text-decoration: none;
 display: block;
 font-weight: 600;
 }

.submenu.active {
 display: block;
 }

.active-menu-item {
 color: #D9C88E; 
 text-decoration:none !important; 
 }
 
.menu-item:hover, .submenu-item:hover {
text-decoration:underline;
 }  

.has-submenu::after {
 content: '';
 display: inline-block;
 width: 0;
 height: 0;
 border-left: 5px solid transparent;
 border-right: 5px solid transparent;
 border-top: 12px solid currentColor;
 position: relative;
 top: 0%;
 left: 0px; /* Position triangle 15px from the end */
 transform: translateY(-1%);
 transition: transform 0.3s;
 }

.has-submenu.active-menu-item::after {
 border-top: none;
 border-bottom: 12px solid #D9C88E;
 transform: translateY(-1%) rotate(360deg);
 }

.hamburger {
 display: none;
 flex-direction: column;
 position: relative;
 right: 25px;
 top: 2px;
 cursor: pointer;
 z-index: 1000;
 }

.hamburger span {
 background-color: #4A3F00;
 height: 2px;
 margin: 3px;
 width: 25px;
 transition: transform 0.6s ease, opacity 0.6s ease;
 }

.hamburger.open span:nth-child(1) {
 transform: rotate(45deg);
 position: relative;
 top: 9.8px;
 background-color: #4A3F00;
 }

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

.hamburger.open span:nth-child(3) {
 transform: rotate(-45deg);
 position: relative;
 top: -6.8px;
 background-color: #4A3F00;
 }
 
 .hamburger::before {
  content: "";
  position: absolute;
  top: -5px;
  left: -3px;
  width: 32px;
  height: 32px;
  border: 2px solid #4A3F00;
  border-radius: 50%;
  background-color: transparent;
  opacity: 0;
  transform: scale(0.8);
  transition: opacity 0.5s ease, transform 0.5s ease;
  z-index: -1;
}
 
.hamburger.open::before {
  content: "";
  position: absolute;
  top: -5px;          /* Adjust for vertical centering */
  left: -3px;         /* Adjust for horizontal centering */
  width: 32px;        /* Circle diameter, adjust based on hamburger width/height */
  height: 32px;
  border: 2px solid #4A3F00;  /* Circle color */
  border-radius: 50%;
  background-color: transparent; /* Optional: or use a filled color */
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s ease, transform 0.5s ease;
  z-index: -1;        /* Behind the hamburger lines */
}

.main-content.blurred {
  filter: contrast(40%) blur(1px) sepia(100%);
  opacity: 0.4;  /* Adjust opacity for fade effect */
}

.info-statement {
	   text-align:center; 
	   color: #ff0000;
     }
		
	.info-section {
       border-bottom: 3px solid #f5f5f5;
       margin-bottom: 1px;
     }
		
    .info-title {
       color: #4A3F00;
       cursor: pointer;
       padding: 10px;
       margin: 0;
     }
        
	.info-content {
       display: none;
       padding: 5px;
       background-color: #f8f6ec;    
     }
     
     .info-title.active {
       color: #D5CA8B;
     }

/* Common styles for both ::before and ::after */
.info-title::before,
.info-title::after {
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 12px solid currentColor;
  position: relative;
  top: 0%;
  transform: translateY(-1%);
  transition: transform 0.3s;
}

/* Specific styles for ::before */
.info-title::before {
 right: 10px; /* Position before the text */
}

/* Specific styles for ::after */
.info-title::after {
  left: 10px; /* Position after the text */
}

/* Common styles for .active states - common rotation */
.info-title.active::before,  
.info-title.active::after {
transform: translateY(-1%) rotate(180deg);}


    @media (hover: hover) and (pointer: fine) {
    /* Only apply hover underline for devices with real hover capability (i.e., PCs) */
        .menu-item:hover:(.active-menu-item),.submenu-item:hover:(.active-menu-item) {
        text-decoration: underline;
        text-decoration-style: double;}
    }

 	@media only screen and (max-width: 750px) {
	    .menu-item  {padding-left: 0px;padding-right: 8px;}
	}
     
    @media screen and (max-width: 700px) {
 	    .logoplace {top: 10px;left: 2vw;height: 60px;z-index:1001;}
	    #langlocPT, #langlocEN {right: 3.7vw; top: 28px; height: 24px; width: 40px;}
	}
	
    @media (max-width: 592px),
       (hover: none) and (pointer: coarse) {
       html, body {
    overflow-x: hidden;    /* No horizontal scroll or pan on the whole page */
  }
        body {padding-top: 120px; /* Adjust based on header and top bar height */}
	    .footer {height: 80px;}
	    .top-bar {display: flex; /* Show top bar for screens less than 600px */} 
        .quoteloc {
             display: block;
             position : fixed;
             top: 92px;
             left: 25px;
             height : 32px;
             width : 200px;
             background : #c4a94e;
             border : none;
             z-index : 1000;}
	    .inline-text-svg {color: #FFFF00; text-decoration: underline;}
        .inline-text-svg:hover {text-decoration:underline; text-decoration-style: double;}
	    .inline-text-svg span {font-size: 15pt;}
        .menu {
             touch-action: pan-y;    /* Allow only up/down panning **/
             flex-direction: column;
             position: fixed;
             top: 133px; /* Adjust based on header and top bar height */
             align-items: flex-start;
             left: -300px;
			 transform: translateX(-10px);
             transition: left 0.5s;
             z-index: 999;
             background: linear-gradient(to right, #c4a94e 140px, transparent 140px);
	         width: 350px;
	 	     height: calc(100vh - 180px); /* Adjust based on header & footer heights */
		     max-height: 400px;
           	 overflow-y: auto; /* Enable vertical scrolling */
           	 -ms-overflow-style: none;  /* IE and Edge */
           	 scrollbar-width: none;  /* Firefox */
		     border: none;
	         opacity: 0.99;}
		.menu::-webkit-scrollbar {
        	 display: none;  /* Chrome, Safari, and Opera */}
        .menu-item {
             padding-top: 20px;
			 padding-left: 35px; /* Adjusted padding-left */
             padding-right: 0;
             flex: none;
             width: auto;
	         font-family: 'Arial', sans-serif;
 	         font-weight: 600;
             font-size: 13pt;
             color: #4A3F00;
			 line-height:1.5;
             text-align: left; /* Align text to the left */
             text-decoration: none;}
	    .menu-item-quotation {
             padding-top: 10px;
		     padding-left: 20px; /* Adjusted padding-left */
             padding-right: 0;
             flex: none;
             width: auto%;
             font-size: 13pt;
		     font-weight:600;
             text-align: left; /* Align text to the left */
		     color: #FFFF00;
		     text-decoration:none;}
        .submenu {
             left: 160px;
             right: auto;
             transform: translateY(-34%);
             width: 175px;
             top: 0px;
		     background-color: #c4a94e;
		     opacity: 0.97;
		     border: 6px solid #776400;
		     border-radius:20px;}
        .submenu-item {
             text-align: center;
             font-size: 11pt;
             font-weight: 500;
             padding-top: 20px;
             line-height: 0.5;
             padding-bottom: 0px;
             color: #4A3F00;
		     margin-top: 5px;
             text-decoration: none;
             display: block;}               
		.submenu.active {
        	 display: block;}
    	.active-menu-item {
        	 color: #D9C88E; /* Change to desired color */}
        .hamburger {
             display: flex;}
        .hamburger-text-label {
             display:block;}
        .menu.open {
             left: 0;}
		.has-submenu::after {
        	 content: '';
        	 display: inline-block;
        	 width: 0;
        	 height: 0;
        	 border-left: 5px solid transparent;
        	 border-right: 5px solid transparent;
        	 border-top: 12px solid #4A3F00;
        	 position: relative;
        	 top: 0%;
        	 left: 5px; /* Position triangle 15px from the end */
        	 transform: translateY(-1%) rotate(270deg);
        	 transition: transform 0.3s;}
        .has-submenu.active-menu-item::after {
        	 border-top: none;
        	 border-bottom: 12px solid #D9C88E;
        	 transform: translateY(-1%) rotate(630deg);}
    }
    
    @media (max-height: 400px) {
        .menu{
             max-height: 100vh;
             overflow-y: auto } 
    }
 
@-moz-document url-prefix() {
  .hamburger-text {
    right: 28px;  /* Back to original Firefox spacing */
  }
}
