/* =================================================================== */
/* FINAL AND COMPLETE CSS CODE */
/* =================================================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Inter", sans-serif;
}
body {
    font-family: "Inter", sans-serif;
}
.container_1 {
    display: flex;
    width: 100%;
    min-height: 85vh;
    background: #fff;
    padding: 20px;
}
.icon-tabs {
    display: flex;
    background: #fbfafa;
    padding:10px;
    justify-content:space-around;
    gap: 8px;
    border-radius: 8px 8px 0 0px;
    box-shadow: 4px 4px 4px 0px rgba(66, 66, 66, 0.25);
}
.tab {
    background:#60606030;
    padding: 11px;
    border-radius: 12px;
    cursor: pointer;
    text-align: center;
    transition: all 0.3s ease;
    border: 1px solid transparent;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    width: 40px;
    height: 40px;
}
.tab.active, .tab:hover {
    border-color: #DC2626;
    transform: scale(1.05);
    color: #DC2626;
}
.tab-content { display: none; flex-grow: 1; }
.tab-content.active { display: flex; }
.wrpaer {
    width: 300px;
    flex-shrink: 0;
    padding: 10px;
    background-color: #fbfafa;
    box-shadow: 4px 4px 4px 0px rgba(66, 66, 66, 0.25);
    border-radius: 0 0px 8px 8px;
    position: relative;
    height: 377px;
   
}
.title_wraper h3 {
    font-size: 20px;
    font-weight: 600;
    color: rgba(60, 60, 60, 1);
    margin-bottom: 10px;
}
.process-wrapper, .tab2-process { display: flex; flex-direction: column; gap: 5px; }
.process-card {
    border-radius: 8px;
    border: 1px solid #ddd;
    transition: transform 0.2s, border 0.2s, height 0.3s ease-in-out;
    cursor: pointer;
    background: #fff;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 15px;
    min-height: 60px;
    position: relative;
    overflow: hidden;
}
.process-card img { width: 40px; height: 35px; object-fit: contain; flex-shrink: 0; }
.process-text { flex-grow: 1; }
.process-text h4 { margin: 0; font-size: 14px; font-weight: 500; }
.process-text p { margin: 2px 0 0 0; font-size: 14px;  }
.process-card.selected-card { border: 2px solid #e30613 !important; }
.process-card:hover { border-color: #DC2626; box-shadow: 0 0 12px rgba(220, 38, 38, 0.3); transform: translateY(-2px); }
.accordion-arrow { display: none; }
/*.content-wrapper { flex-grow: 1; padding: 0 20px; display: flex; width: 423px; flex-direction: column; height: 468px; }*/
/*.top_content_wraper { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 20px; }*/
/*.efficiency-box, .density-box { display: flex; gap: 5px; border: 1px solid #ccc; align-items: center; border-radius: 100px; padding: 0 10px; width: 35%; justify-content: space-around; }*/
/*span.efficiency_icon_image, span.density_icon_image { width: 30px; height: 30px; }*/
/*span.efficiency_icon_image img, span.density_icon_image img { width: 100%; height: 100%; }*/
/*.efficiency_title_wraper label, .destity_title_wraper label { font-weight: 500; font-size: 14px; color: #555; }*/
/*.efficiency_inout_wraper input, .destity_inout_wraper input { border: none; outline: none; text-align: center; background-color: transparent; font-size: 16px; font-weight: 500; }*/

.content-wrapper {
  flex-grow: 1;
  padding: 0 20px;
  display: flex;
  width: 423px;
  flex-direction: column;
  height: 468px;
}

.top_content_wraper {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  /*margin-bottom: 20px;*/
}

.efficiency-box,
.density-box {
  display: flex;
  gap: 10px;
  align-items: center;
  border-radius: 50px;
  padding: 12px 18px;
  width: 45%;
  background: linear-gradient(145deg, #ffffff, #f1f1f1);
  box-shadow: 4px 4px 8px #c9c9c9, -4px -4px 8px #ffffff;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

/* Hover Glow */
.efficiency-box:hover,
.density-box:hover {
  transform: translateY(-3px);
  box-shadow: 6px 6px 12px #c9c9c9, -6px -6px 12px #ffffff;
}

/* Animated Highlight Effect */
.efficiency-box.highlight,
.density-box.highlight {
  animation: highlightPulse 1s ease;
}

@keyframes highlightPulse {
  0% { box-shadow: 0 0 0px 0 rgba(0, 150, 250, 0.5); }
  50% { box-shadow: 0 0 20px 8px rgba(0, 150, 250, 0.4); }
  100% { box-shadow: 0 0 0px 0 rgba(0, 150, 250, 0.5); }
}

span.efficiency_icon_image,
span.density_icon_image {
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #0078d7;
  font-size: 20px;
  background: #eaf4ff;
  border-radius: 50%;
  box-shadow: inset 2px 2px 5px #d6e0f0, inset -2px -2px 5px #ffffff;
}

.efficiency_title_wraper label,
.destity_title_wraper label {
  font-weight: 600;
  font-size: 14px;
  color: #333;
  margin-right: 8px;
}

.efficiency_input_wrapper,
.destity_inout_wraper {
  position: relative;
  display: inline-block;
}

.efficiency_input_wrapper input,
.destity_inout_wraper input {
  border: none;
  outline: none;
  text-align: center;
  background-color: transparent;
  font-size: 18px;
  font-weight: 600;
  width: 70px;
  padding: 5px;
  border-radius: 6px;
  transition: all 0.2s ease;
}

/* On focus animation */
.efficiency_input_wrapper input:focus,
.destity_inout_wraper input:focus {
  background: #f0faff;
  box-shadow: inset 0 0 5px rgba(0, 150, 250, 0.3);
}

.efficiency_input_wrapper span,
.destity_inout_wraper span {
  position: absolute;
  right: -40px;
  top: 50%;
  transform: translateY(-50%);
  color: #666;
  font-size: 12px;
  font-weight: 500;
  pointer-events: none;
}

.blank_space_wraper_image { flex-grow: 0.8; display: flex; align-items: center; justify-content: center; flex-direction: column; }
.blank_space_image { 

    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 16px;
    /*height: 210px;*/
    
}
.blank_space_image img { width: 100%; height: auto; object-fit: contain; }
.process_efficency_wraper { display: flex; justify-content: space-between; padding-top: 8px; border-top: 1px solid #eee; }
.process-details ul { list-style: none; padding: 0; margin: 0; }
.process-details li { font-size: 14px; margin-bottom: 5px; color:#555555; font-weight:500; }
.custom-dropdown { position: relative; width: 100%; }
.custom-dropdown select { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 6px; appearance: none; -webkit-appearance: none; background-color: #fff; cursor: pointer; font-size: 14px; }
.custom-dropdown i { position: absolute; top: 50%; right: 12px; transform: translateY(-50%); pointer-events: none; }

.form-group { margin-bottom: 10px; display: flex; gap: 4px; justify-content: space-between; align-items: center; }
.form-group label { display: block; font-weight: 500; font-size: 12px; white-space: nowrap; }
.form-group input.form-control { width: 50%; height: 34px; padding: 10px; border-radius: 6px; border: 1px solid #ccc; font-size: 12px; }
.input-group-split { display: flex; width: 50%; height: 34px; }
.input-group-split input { width: 65%; border-top-right-radius: 0; border-bottom-right-radius: 0; border-right: none; }
.input-group-split select {    width: 50%;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 6px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border: 1px solid #ccc;
    font-size: 12px;
    padding: 0 25px 0 5px; /* right padding arrow sathi */
    background-color: #f8f9fa;
    background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='12' viewBox='0 0 24 24' width='12' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 5px center;
    background-size: 12px;
    cursor: pointer; }
.calculate-btn { width: 100%; padding: 7px; border: none; border-radius: 6px; background-color: #e30613; color: white; cursor: pointer; font-size: 16px; font-weight: bold; margin-top: auto; }
.custom-filed{ height: 100%; display: flex; flex-direction: column; }
.header, .top-bar, .menu-bar { width: 100%; }
.container { padding: 0 10px }
.top-bar { border-bottom: 1px solid #ddd; }
.top-bar_1{ display: flex; align-items: center; justify-content: space-between; background: #fff; padding: 10px 20px; }
.logo img { height: 50px; }
.right-side { display: flex; align-items: center; gap: 15px;}
.search-box { display: flex; align-items: center; border: 1px solid #ccc; border-radius: 100px; overflow: hidden; background-color: #fce1e4; }
.search-box input { border: none; padding: 8px; outline: none; background: transparent;}
.search-box button { background: transparent; border: none; padding: 8px 12px; cursor: pointer; }
.menu-bar { padding: 10px; border-bottom: 1px solid #ddd; }
.menu { display: flex; list-style: none; margin: 0; padding: 0 20px; gap: 10px; }
.menu > li { padding: 4px 20px; cursor: pointer; transition: 0.2s ease; border-radius: 100px;}
.menu > li a { color: #000; font-size: 16px; font-weight: 600; text-decoration: none; }
.menu > li:hover { background: #e30613; }
.menu > li:hover a{ color: #fff; }
.efficiency-box input, .density-box input { border-radius: 6px; padding: 8px; font-size: 14px; outline: none; color: rgba(140, 140, 140, 1); }
.density-box input{ width: 60px; text-align: right; }
.efficiency-box input { text-align: center; width: 50px; border: none; }
#joint-image.is-spinning { will-change: transform; transform-origin: center center; animation: spin 4s linear infinite; }
@keyframes spin { to { transform: rotate(1turn); } }
/* .loader_text{ font-size: 11px; font-weight: 400; } */
.loader_text {
   font-size: 14px;
    color: #555;
    text-align: center;
    transform: translateY(-90px);
    margin-top: 15px;
        /*animation: pulse 1.5s infinite;*/
}
.loader_text.hidden {
    display: none;
}

/* Ensure the spinning animation only applies when 'is-spinning' is present */
.blank_space_image #joint-image:not(.is-spinning) {
    animation: none; /* Stop any spinning animation when joint is selected */
    width: 384px;
    height: 264px;
}
img#joint-image {
    width: 50px;
    height: 210px;
}
span.efficiency_icon_image { width: 30px; height: 20px; }
span.density_icon_image { width: 25px; height: 25px; }
@media screen and (max-width: 500px) {
    .container_1 { flex-direction: column; gap: 30px; width: 100%; padding: 10px; }
    .middle-wrapper, .content-wrapper, .wrpaer { width: 100%; height: auto; }
    .top_content_wraper { flex-direction: column; align-items: center; justify-content: center; gap: 10px; }
    .efficiency-box, .density-box { width: 100%; max-width: 300px; }
    .process_efficency_wraper { flex-direction: column; align-items: stretch; gap: 20px; }
    .process-card { flex-wrap: wrap; padding: 12px; }
    .accordion-arrow { display: block; margin-left: auto; font-size: 16px; color: #888; transition: transform 0.3s ease; }
    .card-description-mobile { max-height: 0; overflow: hidden; transition: max-height 0.3s ease-out, margin-top 0.3s ease-out; width: 100%; font-size: 13px; margin-top: 0; padding-left: 55px; color: #555; }
    #materials-container .process-card .card-description-mobile { padding-left: 0; }
    .process-card.accordion-open-mobile .card-description-mobile { max-height: 100px; margin-top: 8px; }
    .process-card.accordion-open-mobile .accordion-arrow { transform: rotate(180deg); color: #DC2626; }
}
div#materials-container .process-card { height: 76px; }
.wrpaer{ position:relative; overflow: auto; }
.wrpaer:after { position: absolute; content: ''; width: 100%; height: 1px; left: 0px; top: 3px; background: rgba(204, 204, 204, 1); }
.process-card{ position: relative; }
.process-card::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(220, 38, 38, 0.1), transparent); transition: left 0.6s ease; }
.process-card:hover::before { left: 100%; }
.destity_title_wraper { width: 70%; }

#actions-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px;
    padding: -1 10px;
}
.consumable-unit-container { display: flex; align-items: center; gap: 8px; }
.consumable-unit-container label { font-size: 12px; font-weight: 500; }
.consumable-unit-container select { border: 1px solid #ccc; border-radius: 4px; padding: 5px; font-size: 12px; }
.download-btn { width: auto; padding: 8px 36px; border: none; border-radius: 6px; background-color: #e30613; color: white; cursor: pointer; font-size: 14px; font-weight: bold; transition: background-color 0.3s ease; }
.download-container { text-align: right; flex-grow: 1; }
.download-btn:hover { background-color: #e30613; }
.download-btn i { margin-right: 8px; }
.toggle-switch-container {
    display: flex; justify-content: space-between; align-items: center;
    margin-bottom: 15px; padding: 8px; background-color: #f0f0f0; border-radius: 6px;
}
.toggle-switch-container label { font-weight: 500; font-size: 12px; }
.toggle-switch { position: relative; display: inline-block; width: 44px; height: 24px; }
.toggle-switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 24px; }
.slider:before { position: absolute; content: ""; height: 18px; width: 18px; left: 3px; bottom: 3px; background-color: white; transition: .4s; border-radius: 50%; }
input:checked + .slider { background-color: #e30613; }
input:checked + .slider:before { transform: translateX(20px); }




.footer {
  
    color: #333;
    font-size: 14px;
    border-top: 1px solid #dee2e6;
}

.footer .footer-logo {
    font-size: 22px;
    font-weight: bold;
    color: #d6001c;
}

.footer a {
    text-decoration: none;
    color: #000;
    transition: color 0.3s;
}
.footer p{
    color: #000;
}
.footer a:hover {
    color: #000;
    text-decoration: underline;
}
/* .logo_container{
    border-bottom: 2px solid #dee2e6;
} */
/* .footer hr {
    margin: 20px 0;
    color: #dee2e6;
    width: 2px;
} */

.footer .contact-info i {
    color: #d6001c;
    margin-right: 8px;
}

.footer-bottom {
    text-align: center;
    padding: 15px 0;
    /* border-top: 1px solid #ddd; */
    font-size: 13px;
    color: #555;
}
.footer-bottom p{
    color: #000;
    font-size: 16px;
    margin-bottom: 0;
}


.logo_wraper {
    width: 140px;
}

.logo_wraper img {
    width: 100%;
    height: 100%;
}

.text-center.mb-4.d-flex.logo_container {
    justify-content: space-between;
    align-items: center;
}

.footer_row ul li {
    padding-bottom: 10px;
    font-size: 16px;
}

p.contact-info {
    display: flex;
    align-items: flex-start;
    font-size: 16px;
    font-weight: 400;
}

.footer .contact-info i.fa-regular.fa-building {
    transform: translateY(4px);
}



.footer .contact-info i.fa-regular.fa-envelope {
    transform: translateY(6px);
}

.reach_us{
    font-weight: 500;
    color: #000;
}
.text-center.mb-4.d-flex.logo_container p.mt-2 {
    text-align: left;
   
}
@media screen and (max-width:600px) {
    .text-center.mb-4.d-flex.logo_container {
    flex-direction: column;
    align-items: baseline;
    gap: 10px;
}
}

.input-with-unit {
    display: flex;
    justify-content: end;
    width: 50%;
}

span.unit-text {
    width: 50%;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 6px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border: 1px solid #ccc;
    font-size: 12px;
    padding: 0 5px;
    display: flex !important;
    align-items: center;
    background-color: #f8f9fa;
    justify-content: center;
}


.form-control:focus{
    box-shadow: none;
}



h1,
h2,
h3,
h4,
h5,
h6,
p,
input,
span,
select{

    color: #555 !important;
}

.custom-dropdown {
  position: relative;
  display: inline-block;
 
}

.custom-dropdown select {
  width: 100%;
  padding: 8px;
  border-radius: 6px;
  border: 1px solid #ccc;
  appearance: none;  /* hide default arrow */
  -webkit-appearance: none;
  -moz-appearance: none;
  background: #fff;
  cursor: pointer;
  max-height: 150px;   /* limit height */

}

.custom-dropdown i {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}



.content-wrapper {
  flex-grow: 1;
  padding: 0 20px;
  display: flex;
  flex-direction: column;
  width: 450px;
}

.top_content_wraper {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  /*margin-bottom: 20px;*/
}

.metric-box {
  display: flex;
    align-items: center;
    gap: 15px;
    /* background: #fff; */
    border-radius: 3px;
    /*border: 1px solid #ccc;*/
    padding:10px  5px;
    /* width: 50%; */
    /* box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08); */
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/*.metric-box:hover {*/
/*  transform: translateY(-4px);*/
/*  box-shadow: 0 8px 18px rgba(0,0,0,0.12);*/
/*}*/

.metric-icon {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  color: #DC2626;
}

/* Different colors per metric */
.metric-icon.efficiency {
  background: #dedddd;
}

.metric-icon.density {
  background:#dedddd;
}

.metric-content {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.metric-content label {
  display: block;
  font-weight: 500;
  font-size: 14px;
  color: #333;
  margin-bottom: 4px;
}

.metric-input {
  display: flex;
  align-items: center;
  gap: 5px;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 5px 10px;
  background: #fafafa;
  transition: border 0.3s ease;
}

.metric-input input {
  border: none;
  outline: none;
  background: transparent;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  width: 70px;
}

.metric-input span {
  font-size: 13px;
  color: #555;
}

/* Focus effect */
.metric-input:focus-within {
  border-color: #0078d7;
  background: #f0faff;
}

.efficiency-icon svg {
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
}


/* ======================================================= */
/* FINAL STYLES FOR THE CUSTOM JOINT TYPE DROPDOWN         */
/* Add this entire block to the end of your CSS file.      */
/* ======================================================= */

/* The main container for the custom dropdown */
.custom-dropdown {
    position: relative; /* This is the anchor for the dropdown list */
    width: 100%;
    font-size: 14px;
}

/* The visible box that shows the selected option */
.selected-option {
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 6px;
    background-color: #fff;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* The text inside the selected option box */
.selected-option span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 10px; /* Space for the arrow */
}

/* The dropdown list container */
.dropdown-options {
    display: none; /* Hidden by default */
    position: absolute;
    top: 100%; /* Position it right below the selected-option box */
    left: 0;
    width: 100%;
    box-sizing: border-box; /* Ensures padding/border don't add to width */
    background-color: #fff;
    border: 1px solid #ccc;
    border-top: none;
    border-radius: 0 0 6px 6px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* Optional: Adds a nice shadow */
    /*max-height: 200px;*/
    overflow-y: auto;
    z-index: 1000; /* Make sure it appears on top of other content */
}

/* This class is added by JavaScript to show the dropdown */
.dropdown-options.open {
    display: block;
}

/* A single option inside the dropdown list */
.dropdown-options .option {
    padding: 2px 5px;
    cursor: pointer;
    /* --- This is the key part for fixing the text wrapping --- */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dropdown-options .option:hover {
    background-color: #f0f0f0;
}

div#tab4 .wrpaer {
    overflow: auto;
}

 input[type=number]::-webkit-inner-spin-button,
    input[type=number]::-webkit-outer-spin-button {
      -webkit-appearance: none;
      margin: 0;
    }

    input[type=number] {
      -moz-appearance: textfield; 
    }


.tab.active rect, 
.tab:hover rect {
    fill: red;
}


.blank_space_image {
    padding-bottom: 20px;
}


/* Style for the custom dropdown when inside an input group */
.input-group .custom-dropdown {
    width: 180px; /* Match the width you set previously */
    position: relative;
}

/* Ensure the selected option part fills the height and has correct borders */
.input-group .selected-option {
    height: 100%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

/* --- NEW CSS TO ADD A SCROLLBAR TO THE COUNTRY DROPDOWN --- */

#country-options-container {
    /* Set a maximum height for the dropdown list */
    max-height: 142px; 

    /* Add a vertical scrollbar only when the content overflows */
    overflow-y: auto;
}


/* =================================================================== */
/* <<< FINAL, COMPLETE CSS FOR THE CUSTOM COUNTRY DROPDOWN >>> */
/* =================================================================== */

/* --- Layout for the Input Group --- */
#country-custom-dropdown {
    width: 180px;
    position: relative;
    flex-shrink: 0;
     margin-right: -1px;
}
#country-custom-dropdown .selected-option {
    height: 100%;
    border: 1px solid #ced4da;
    border-radius: 0.375rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
#user-phone {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

/* --- Main container for the dropdown list --- */
#country-options-container {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid #eee;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    /* Add this if you still have issues with it appearing behind the modal */
    z-index: 1056; 
}

/* Make the dropdown open upwards */
#country-options-container.open {
    bottom: 100%;
    top: auto;
}

/* --- Style for the Search Bar --- */
#country-options-container .search-box-container {
    position: sticky;
    top: 0;
    background-color: #ffffff;
    padding: 8px 10px;
    z-index: 10;
}
#country-search-input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    font-size: 1rem;
    box-sizing: border-box;
}

/* --- Style for each Country Row --- */
.dropdown-options .option {
    display: flex;
    align-items: center;
    padding: 8px 12px;
    cursor: pointer;
    border-bottom: 1px solid #f0f0f0;
    font-size: 0.9rem;
}
.dropdown-options .option:hover {
    background-color: #f8f8f8;
}

/* Style for the flag image */
.option .country-flag {
    width: 20px;
    height: auto;
    margin-right: 10px;
    border: 1px solid #eee;
    border-radius: 3px;
}

/* Style for the country name */
.option .country-name {
    font-weight: 500;
    color: #222;
}

/* Style for the dial code */
.option .dial-code {
    margin-left: auto; /* Pushes it to the right */
    color: #888;
    font-size: 0.95rem;
}
















/* --- CSS FOR WIDE HORIZONTAL DROPDOWN (FINAL HOVER FIX) --- */

/* The main menu bar container needs to be a positioning reference */
/*.menu {*/
/*    position: relative;*/
/*}*/

/* The parent list item for the dropdown */
/*.menu li.horizontal-dropdown {*/
    /* This element doesn't need special positioning */
/*    position: static;*/
/*}*/

/* 
  THE FIX IS HERE: We create an invisible element that sits in the gap.
  This '::before' pseudo-element acts as a bridge for the mouse.
*/
/*.menu li.horizontal-dropdown:hover::before {*/
/*    content: '';*/
/*    position: absolute;*/
    top: 100%; /* Sits right below the main menu bar */
/*    left: 0;*/
/*    right: 0;*/
    height: 15px; /* The height of the gap */
    background: transparent; /* It's completely invisible */
    z-index: 1001; /* Sits above the dropdown content */
/*}*/

/* Style for the dropdown arrow icon */
/*.menu li.horizontal-dropdown > a .fa-chevron-down {*/
/*    font-size: 0.8em;*/
/*    margin-left: 5px;*/
/*}*/

/* The dropdown container (Hidden by default) */
/*.horizontal-dropdown .dropdown-content {*/
/*    display: none;*/
/*    position: absolute;*/
/*    top: 100%;*/
/*    left: 0;*/
/*    background-color: #fff;*/
/*    width: 1296px;*/
/*    max-width: 100%;*/
/*    box-shadow: 0px 8px 16px rgba(0,0,0,0.15);*/
/*    z-index: 1000;*/
/*    padding: 20px 25px;*/
/*    border-top: 1px solid #000;*/
/*    text-align: left;*/
    margin-top: 10px; /* This creates the visual gap you wanted */
/*}*/

/* Links inside the dropdown */
/*ul.menu li.horizontal-dropdown .dropdown-content a {*/
/*    color: #000;*/
/*    text-decoration: none;*/
/*    display: inline-block;*/
/*    margin-right: 30px;*/
/*    font-weight: 500;*/
/*    font-size: 1em;*/
/*    transition: color 0.2s ease-in-out;*/
/*}*/

/* Hover effect for the links */
/*ul.menu li.horizontal-dropdown .dropdown-content a:hover {*/
/*    color: red;*/
/*}*/

/* Show the dropdown menu when hovering over the parent list item */
/*.menu li.horizontal-dropdown:hover .dropdown-content {*/
/*    display: block;*/
/*}*/


/* calculator buttons */

.container-cal{
    height: 400px;
}

.calc-btn {
    background-color: #DF0A1F;
    border-color: #DF0A1F;
    padding: 10px 22px;
    font-size: 16px;
    font-weight: 600;
    border-radius: 6px;
}

.calc-btn:hover {
    background-color: #fff;
    border-width: 1px solid #000;
    color:#DF0A1F;
}

.calc-btn i {
    margin-right: 6px;
}

.custom-btn-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start; 
    padding-top: 100px;
    padding-bottom: 100px;
    padding-left: 150px;
}

.no-radius {
    border-radius: 0 !important; /* Remove border radius */
}


.custom-btn-group .btn {
    width: 230px; /* same width for both buttons */
    margin-bottom: 12px;
}

.custom-btn-group .btn:last-child {
    margin-bottom: 0;
}












