:root {
  --header-brown:#f1ddbb;
  --whatsapp-brown:#c19f72;
  --primary-brown: #493721;
  --hover-brown: #ab754f;
  --secondary-beige: #fae6d4;
  --brownis-red: #e8bdbd;
  --light-brown: #fae6d4;
  --lighter-gray: #e8e8e8;
  --text-gray: #5C5C5C;
  --lighter-tan: #e4cfb9;
  --accent-tan: #CBA278;
  --white: #FAFAFC;
  --soft-black: #1B1B1B;
  --placeholder-gray: #CCCCCC;
  --transparent-white: #f9f9fb;
  --yellow-header-footer: #F2E5C7;
  --semi-brown: #7F4A3A;
  --transparent-brown: #e1d5d2;
  --golden:#cba34a;
  --hover-golden:#d7ab4b;
  --head-brown:#6b2f1f;
  --cream:#e7dfdc;
  --transparent-grey : #ebecec;
  --transparent-yellow:#fdf6eb;
}

html, body {
  overflow-x: hidden; /* hide accidental scroll */
}

* {
  box-sizing: border-box; /* fix padding+borders issue */
}

/* Fullscreen overlay loader */
#flavora-loader {
  position: fixed;
  inset: 0;
  background: #fdf9f3; /* warna natural krem */
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

/* Candlenut circle */
.candlenut {
  width: 60px;
  height: 60px;
  background: radial-gradient(circle at 30% 30%, #e6d6b8, #c2a878);
  border-radius: 50%;
  box-shadow: 0 0 15px rgba(0,0,0,0.1);
  animation: bounce 1.2s infinite ease-in-out;
}

/* bounce effect */
@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-20px); }
}

/* fade-out animation */
.fade-out {
  opacity: 0;
  transition: opacity 0.8s ease;
  pointer-events: none;
}

.roundrectvideo{
    border-radius:20px;    
}

.text-center{
    text-align: center;
}

.text-left{
    text-align: left;
}

.text-right{
    text-align: right;
}

#floating-top-btn {
  position: fixed;
  width: 60px;
  height: 60px;
  bottom: 20px;
  left: 20px;
  padding-top:5px;
  padding-left:1px;
  background-color: var(--golden);
  color: var(--primary-brown);
  border-radius: 50px;
  text-align: center;
  font-size: 30px;
  z-index: 100;
  pointer:cursor;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}

#floating-top-btn.show {
  opacity: 1;
  pointer-events: auto;
}

#floating-whatsapp-btn {
  position: fixed;
  width: 60px;
  height: 60px;
  bottom: 20px;
  right: 20px;
  padding-top:8px;
  padding-left:1px;
  background-color: var(--golden);
  color: var(--primary-brown);
  border-radius: 50px;
  text-align: center;
  font-size: 30px;
  z-index: 100;
  pointer:cursor;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}

#floating-whatsapp-btn.show {
  opacity: 1;
  pointer-events: auto;
}

header{
  background-color: var(--primary-brown);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  box-shadow: 0 2px 4px var(--golden);
}

header nav {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: nowrap;
}


header .logo {
  color: var(--golden);
}

header nav a {
  color: var(--golden);
  font-weight: 500;
  white-space: nowrap;
  flex-shrink: 0;
  margin-left:15px !important;
  margin-right:15px !important;
  /*padding-top:5px !important;*/
  /*padding-bottom:5px !important;*/
}

header nav a:hover {
  color: var(--white);
  font-weight: 500;
  white-space: nowrap;
  flex-shrink: 0;
}

header nav a.btn:hover {
  background-color: var(--white);
  color: var(--primary-brown);
  /*border-radius: 50px;*/
  /*font-weight: normal;*/
  /*white-space: nowrap;*/
  /*flex-shrink: 0;*/
}

header nav a.btn {
  background-color: var(--golden);
  color: var(--primary-brown);
  border-radius: 50px;
  font-weight: normal;
  white-space: nowrap;
  flex-shrink: 0;
}

#burger-menu{
    display:none; 
    width:6vh;  
    color: var(--golden);
}

button,
a {
  transition: 0.2s;
}


.footer-button {
  color: var(--secondary-beige);

  &:hover {
    color: var(--accent-tan);
  }
}

.medsos{
  width:40px !important;
}

.medsos-youtube{
  margin-top:-5px;
  width:50px !important;  
}

.certification-section{
  background:white;
}

.certification-section a {
  color: var(--text-gray);
  text-decoration : none;

  &:hover {
    color: var(--primary-brown);
    text-decoration: underline;
  }

}

.request-quotation-button {
  background-color: var(--white);
  border-radius: 50px;
  color: var(--primary-brown);
}

.main-page-container {
  /*background: #F4E2D8;*/
  background: var(--transparent-yellow);
  margin: 0;

  /* height: 100vh; */
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  /* width: 10px; */
}

.footer-contact {
  background-color: var(--primary-brown);
  color: var(--golden);

  p {
    margin: 0;
    font-size: 1.5rem;
    color: var(--golden);
  }

  a {
    width: 200px;

  }

}

.footer-contact .container{
    margin-top: 4vh;
    margin-bottom: 6vh;
}



.footer-info {
  background-color: var(--primary-brown);
  display: flex;
  flex-wrap: wrap;

  a {
    color:  var(--golden);
    text-decoration: none;
    /*font-size:10pt !important;*/

    &:hover {
      color:var(--white);

    }
  }
  
  li{
      padding-bottom:6px;
  }
  
  .footer-logo{
      width: 8vh
  }
  
  h2 {
      color: var(--golden);
  }
  
  p {
      color:  var(--golden);
  }

  h6 {
    color: var(--golden);
  }
  
  h5 {
    color: var(--golden);
    font-size:16.5pt;
  }
}

#allright{
    font-weight:400 !important; 
    margin-top:5px; 
    color: var(--golden);
    font-size:10pt;
}

#contact-us{
    /*color:var(--primary-brown); */
    font-size:1rem !important; 
    /*font-weight:bold; */
    /*background-color:var(--golden); */
}

#contact-us:hover{
    /*color:var(--primary-brown); */
    font-size:12pt !important; 
    /*font-weight:bold; */
    /*background-color:var(--white); */
}

.underlined-text{
    border-bottom:1.5px solid  var(--golden);
    color:var(--golden) !important;
    text-align:justify;
}

.hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 10vh;
  margin-top:-100px;
  min-height: 80vh;
  width: 100%;
  overflow: hidden;
  clip-path: ellipse(150% 100% at 50% 0%);
}

.hero-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background-image:
    linear-gradient(to right, var(--hover-golden) 10%, transparent 100%),
    url('home/background-home.webp');
  background-size: cover;
  background-position: bottom; /* center horizontally, bottom vertically */
  background-repeat: no-repeat;
  z-index: 0;
  will-change: transform;
  transition: transform 0.1s ease-out;
}

.hero-content {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  flex: 1;
}

.hero-caption {
  max-width: 550px;
}

.hero-caption h1 {
  font-size: 2rem;
  font-weight: bold;
  color: var(--primary-brown);
  text-shadow: 0.5px 0.5px 5px var(--golden);
}

.hero-content p {
  margin: 1rem 0 2rem;
  color: var(--primary-brown);
  text-shadow: 0.5px 0.5px 10px var(--golden);
}

.hero-content li {
  color: var(--primary-brown);
  text-shadow: 0.5px 0.5px 10px var(--golden);
}

.hero-buttons {
  display: flex;
  gap: 1rem;
}

/* Hide the checkbox */
#menu-toggle {
  display: none;
}

/* Burger icon styling */
.burger-icon {
  display: none;
  font-size: 4vh;
  cursor: pointer;
  width: 6vh;
}

.overlay {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: var(--primary-brown);
  opacity:0.95;
  overflow-x: hidden;
  transition: 0.5s;
}

.overlay-content {
  position: relative;
  top: 25%;
  width: 100%;
  text-align: center;
}

.overlay .menu {
 text-decoration: none;
  padding-bottom: 40px;
  font-size: 22px;
  color: var(--golden);
  display: block;
  transition: 0.3s;
}

.overlay .menu-underlined{
  text-decoration: underline;
}

.overlay .menu:hover, .overlay .menu:focus {
  color: #f1f1f1;
}

.overlay .closebtn {
  position: absolute;
  top: 20px;
  right: 45px;
  font-size: 60px;
}

.title-separator {
  height: 1px;
  background-color: var(--primary-brown);
  width: 80px !important;
  margin-bottom: 20px;
}

.btn {
  padding: 0.75rem 1.5rem;
  text-decoration: none;
  font-weight: 500;
}

.addpaddingbtn{
    padding-top:0.45rem !important;
    padding-bottom:0.45rem !important;
}

.btn.primary {
  min-width:250px; 
  /*padding-left:40px;*/
  /*padding-right:40px;*/
  background-color: var(--primary-brown);
  color: var(--golden);
  border: 1px solid var(--golden);

  &:hover {
    color: var(--white);
    background-color: var(--golden);
    /* border: 1px solid var(--primary-brown); */
    /* color: var(--primary-brown); */
  }
}

.companyprofile{
   min-width:280px !important;  
}

.btn.secondary {
  padding-left:40px;
  padding-right:40px;
  border : 1.5px solid;
  border-color: var(--head-brown);
  color: var(--head-brown);
  /*background-color: white;*/

  &:hover {
    color: var(--golden);
    background-color: var(--primary-brown);
  }
}

.fullrounded{
   border-radius:100px !important; 
}

.maximumwidth{
    min-width:180px !important; 
}

.btn-whatsapp{
  background: var(--whatsapp-brown) !important;
  color: var(--primary-brown) !important;
  
  &:hover {
    color: var(--primary-brown);
    background-color: var(--hover-brown) !important;
  }
}

.motto {
  line-height: 1.8;
  padding-top:50px;
  padding-bottom:50px;
  display: flex;
  align-items: center;
  flex-direction: column;
}

.motto h1 {
  font-size: 2rem;
  font-weight: bold;
  color: var(--head-brown);
}

.motto p {
  max-width: 1000px;
}

.nav-tabs-product {
  background-color: var(--head-brown);
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
}

.quality-source-section h2 {
  font-size: 2rem;
  font-weight: bold;
  color: var(--head-brown);
}

.quality-source-section a {
  color: var(--head-brown);
  text-decoration: underline;

  &:hover {
    color: var(--golden);
    text-decoration: none;

  }
}

.quality-source-section button {
  background-color: var(--primary-brown);
  color: white;
  border: transparent;
  border-radius: 7px 7px 0px 0px;
  min-width: 100px;
  height: 40px;

  &:hover {
    background-color: #FFFAF6;
    font-weight: 650;
    color: var(--primary-brown);
    text-decoration: underline;

  }

}

#image-candlenut{
    clip-path: circle(); 
    /*border:2px solid var(--head-brown); */
    padding:20px; 
    height:300px; 
    width:300px; 
    border-radius:50%;
}

.tab-scroll-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; 
  max-width: 10px;
}
.tab-scroll-wrapper::-webkit-scrollbar {
  display: none;
}

#ingredientTab {
  display: flex;
  flex-wrap: nowrap;
  white-space: nowrap;
}

#ingredientTab .nav-item {
  flex: 0 0 auto;
  /*margin-right: 4px;*/
}

#ingredientTab button {
  background-color: var(--primary-brown);
  color: white;
  border: none;
  border-radius: 7px 7px 0 0;
  min-width: 120px;
  height: 50px;
  /*font-weight: 500;*/
}

#ingredientTab button:hover {
  background-color: #FFFAF6;
  /*font-weight: 500;*/
  color: var(--primary-brown);
  text-decoration: underline;
}

#ingredientTabContent a {
  font-weight: 600;
  text-decoration : none;
}

.source-tab-content {
  text-align: start;
  background-color: #FFFAF6;
  border-radius: 15px 15px 15px 15px;
}

.source-tab-content p {
  padding-top:20px;
  padding-bottom:20px;
  line-height: 1.8 !important;
}

.offering {
  width: 100%;
  background-image: url('home/logo-white-image.webp');
  background-repeat: no-repeat;
  background-position: center left -200px;
  background-size: 40%; /* or try 100% auto */
  background-color: var(--transparent-white);
}

.offering .container{
  margin-top: 6vh;
  margin-bottom: 6vh;
}

.offering h1 {
  font-size: 2rem;
  font-weight: bold;
  color: var(--head-brown);
}

.offering h5 {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--head-brown);
}

.offering .row {
  max-width: 1000px !important;
  margin: 0 auto;
}

.offering p {
    line-height: 1.8;
}

.offering .icon-offer{
    max-width:80px; 
    margin-top:-20px;
}

.box-top{
    background : var(--head-brown);
    opacity:0.2;
    width:165px; 
    margin:auto; 
    height:5px;
}

.plant-tour-section .container{
  margin-top: 6vh;
  margin-bottom: 6vh;
}

.plant-tour-section h1 {
  font-size: 2rem;
  font-weight: bold;
  color: var(--head-brown);
  margin-bottom: 6vh;
}

.plant-tour-section p {
  line-height:1.8;
}

.lang-switcher {
  color: var(--golden);
}

.lang-switcher .active{
  font-weight: 600;
}
.lang-switcher a {
  color: inherit;
  padding: 0 4px;
}
.lang-switcher a:hover {
  color:var(--white);
}

.overlay .lang-switcher-mobile {
  position: absolute;
  bottom: 50px; /* adjust distance from bottom */
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  color:var(--golden);
}

.lang-data-mobile{
  color:var(--golden);
}
#main-header {
  transition: transform 0.3s ease-in-out;
  /* For smooth transitions */
}

.header-hidden {
  transform: translateY(-100%);
  /* Adjust based on header height */
}

.global-footprint-section h2{
    line-height:1.8;
    text-align:left;
}

.global-footprint-section p{
    line-height:1.8;
    text-align:left;
}


/*ABOUT US*/

.breadcrumb {
  font-size: 14px;
  color: #888;
}

.breadcrumb a {
    color: var(--primary-brown);
    text-decoration:none;
}

.breadcrumb .breadcrumb-home {
    color:#888;
}

.about {
  width:100%;
  background:var(--transparent-yellow);
  z-index:3;
}

.about .about-container {
  max-width:1000px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: start;
  margin: 0 auto;
}

.about-title {
  font-size: 5.5vh;
  font-weight: 500;
  line-height: 1.3;
  color:var(--primary-brown);
}

.about-content {
  font-size: 15px;
  line-height: 1.6;
  color: #333;
}

.about-content strong {
  color: var(--primary-brown); /* brownish link */
  text-decoration: none;
  font-weight:500;
}

.aboutus-image{
    width: 100%;
    height:400px;
    z-index:2;
}

.aboutus-image .bg-image {
  margin-top:-200px;
  width: 100%;
  height: 600px;
  background-image: url('about-us/background-aboutus.webp');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom;
  z-index:2;
}

/*.aboutus-image{*/
/*    width: 100%;*/
    /*height:600px;*/
/*    z-index:-1;*/
/*}*/

/*.aboutus-image .bg-image {*/
/*  width: 100%;*/
/*  height:434px;*/
/*  background-image: url('about-us/background-aboutus.webp');*/
/*  background-repeat: no-repeat;*/
/*  background-size: cover;*/
/*  background-position: center center;*/
/*  z-index:-1;*/
/*}*/

.vision-mission {
    width:100%;
    background:var(--transparent-white);
    z-index:2;
}

.vision-mission .vision-mission-container {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: start;
  z-index:2;
  background-image: url('about-us/logo-brown-aboutus.webp');
  background-repeat: no-repeat;
  background-position:  bottom 20px left 100px;
  background-size: 25%; /* or try 100% auto */
}

/* 🔹 Content always above watermark */
.vision, .mission {
  position: relative;
  z-index: 2;
}

.vision h2, .mission h2 {
  color: var(--primary-brown); /* sesuai warna di contoh */
  margin-bottom: 1rem;
  /*border-bottom: 5px solid var(--transparent-brown);*/
  display: inline-block;
  padding-bottom: 0.3rem;
  font-weight: bold;
}

.vision p {
  font-size: 15px;
  line-height: 1.6;
  color: #333;
}

.mission ol {
  margin: 0;
  padding-left: 1.2rem;
}

.mission ol li::marker {
  color: var(--primary-brown);
  font-weight: bold;
}

.mission li {
  margin-bottom: 1rem;
  font-size: 15px;
  line-height: 1.6;
  color: #333;
}

.vision strong {
  color:  var(--primary-brown);
}

.mission strong {
  color:  var(--primary-brown);
}

.team-section {
  width:100%;
  z-index:3;
  background-color: var(--transparent-grey);
}

.team-section .team-section-container {
  max-width: 1000px;
  margin: 0 auto; 
  background-color: var(--transparent-grey); 
}

.team-section h2 {
  color: var(--primary-brown); 
  margin-bottom: 2rem;
  font-weight: bold;
}

.team-row {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: 160px; /* left-right spacing */
  row-gap: 40px;  
  margin-bottom: 4rem;
  text-align:center;
}

.member-row {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 60px;
  text-align:center;
}

.team-leader {
  max-width: 150px;
}

.team-leader img {
  width: 150px;
  height: 150px;
  object-fit: cover;
  border-radius: 50%; /* bulat */
  margin-bottom: 1rem;
}

.team-leader h3 {
  font-size: 24px;
  font-weight: 500;
  margin: 0;
  color: #333;
}

.team-leader .role {
  font-size: 16px;
  color: var(--golden);
  font-weight:500;
  margin-top: 0.3rem;
}

.team-member {
  min-width: 200px;
}

.team-member img {
  width: 150px;
  height: 150px;
  object-fit: cover;
  border-radius: 50%; /* bulat */
  margin-bottom: 1rem;
}

.team-member h3 {
  font-size: 24px;
  font-weight: 500;
  margin: 0;
  color: #333;
}

.team-member .role {
  font-size: 16px;
  color: var(--golden);
  font-weight:500;
  margin-top: 0.3rem;
}

.advantage {
  width: 1000px;
  background:var(--transparent-yellow);
}

.advantage h1 {
  font-size: 2rem;
  font-weight: bold;
  color: var(--primary-brown);
}

.advantage .icon-advantage{
    width:20vh;
}



@media screen and (max-height: 450px) {
  .overlay a {font-size: 20px}
  .overlay .closebtn {
  font-size: 40px;
  top: 15px;
  right: 35px;
  }
}

/* Mobile view: stack buttons */
@media (max-width: 450px) {
  
  .hero{ 
    min-height:99vh !important;
  }
  
  .btn-hidden-sm{
     display:none; 
  }
  
  .btn-show-sm{
      display:block !important;
  }
  
  .hero-buttons {
    flex-direction: column;
    align-items: stretch;
    /* Make them full width */
  }

  .hero-buttons .btn {
    width: 100%;
    text-align: center;
    padding: 1rem;
    /* bigger tap area */
    font-size: 1.1rem;
    /* slightly bigger text */
  }
  .footer-logo{
    width : 10vh !important;
  }
}


@media (max-width: 768px) {
    #main-header .container{
        padding:0px !important;    
    }
    
    .logo img{
        width:9vh !important;
    }
    
    .maximumwidth{
          max-width:100px !important;
          padding-left:0px !important;
          padding-right:0px  !important;
          font-size:2rem;
    }
    
    .hero .primary{
        margin-bottom:1rem !important;
    }
    
   .primary{
        width:100% !important;
   }
   
   .offering .mx-auto{
       margin-bottom:2rem;
   } 
  .about-container {
    grid-template-columns: 1fr;
  }
  
  .about .about-container {
    grid-template-columns: 1fr; /* stack vertically */
    padding: 2rem; /* smaller padding for mobile */
    gap: 20px;     /* reduce gap */
  }

  .about-title {
    font-size: 5vh; 
  }

  .about-content {
    font-size: 14px;
  }
  
  .vision-mission .vision-mission-container {
    grid-template-columns: 1fr;
    text-align: left;
    background:none;
  }
  .mission ol {
    text-align: left;
  }
  
  .aboutus-image .bg-image {
      margin-top:-430px;
      width: 100%;
      height: 600px;
      background-image: url('about-us/background-aboutus.webp');
      background-repeat: no-repeat;
      background-size: cover;
      background-position: bottom;
      z-index:2;
    }
    
    .vision-mission .vision-mission-container {
        padding: 2rem; /* smaller padding for mobile */
    }
    
    .team-section .team-section-container {
        padding: 2rem; /* smaller padding for mobile */ 
    }
    
    .advantage .container{
        width: 100vw !important;
        padding: 2rem; 
    }
    
    .hero .hero-content{
        padding: 2rem; 
    }
    
    .motto .container{
        padding: 2rem;
    }
    
    .plant-tour-section .container{
        text-align:left !important;
        padding: 2rem;
    }
    
    .plant-tour-section .container a{
       width:calc(100vw - 4rem) !important;
    }
  
  .footer-info{
      padding: 2rem;
  }
  
  .footer-info h5{
      font-size:1.1rem;
  }
  .footer-info .footer-address{
      font-size:0.9em !important;
  }
  
  .advantage .icon-advantage{
    width:16vh;
   }
   
   #certificateModal .cert-item{
        border-radius:20px; 
        border:1px solid var(--head-brown); 
        padding:20px; 
        width:100% !important;
    }
}

#certificateModal .cert-item{
    border-radius:20px; 
    border:1px solid var(--head-brown); 
    padding:20px; 
    width:48%;
}

.footer-info .footer-certificate{
    padding:0px 0px 10px 0px !important;   
    margin:0px -15px 0px -15px !important;
    width:80px;
}

.footer-info .footer-certificate img{
    width:80px;
}

.footer-info .footer-certificate-sucofindo{
    width:110px; 
}

.footer-info .footer-certificate-sucofindo img{
    width:110px; 
}

.footer-info .footer-address{
    font-size:13pt; 
    font-weight:400 !important;
}


/* The modal background */
.modal {
  display: none; 
  position: fixed; 
  z-index: 1000; 
  left: 0; 
  top: 0; 
  width: 100%; 
  height: 100%; 
  overflow: auto; 
  background-color: rgba(0,0,0,0.6);
}

/* Modal content box */
.modal-content {
  background-color: #fff;
  margin: 2% auto;
  padding: 30px;
  border-radius: 8px;
  width: 90%;
  max-width: 500px;
}

/* Close button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
}

.close:hover {
  color: #000;
}

input, textarea {
  width: 100%;
  padding: 8px;
  margin-top: 5px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

button {
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  background: #007BFF;
  color: white;
  cursor: pointer;
}

button:hover {
  background: #0056b3;
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px white inset !important;
    box-shadow: 0 0 0 1000px  white inset !important;
    -webkit-text-fill-color: var(--primary-brown) !important;
}
