@charset "UTF-8";


.line-consultation-box {
  background-color: #f7f7f7; 
  border: 1px solid #dcdcdc;
  outline: 1px solid #dcdcdc;
  outline-offset: -5px;
  padding: 50px 30px;
  text-align: center;
  max-width: 700px;
  margin: 0 auto;
  border-radius: 4px;
  margin-bottom: 40px;
}

.line-title {
  font-size: 26px;
  color: #333333;
  margin-top: 0;
  margin-bottom: 30px;
 
}

.line-description {
  font-size: 14px;
  color: #666666;
  margin-top: 0;
  margin-bottom: 30px;
  line-height: 1.6;
}

/* ─── IMPROVED BUTTON DESIGN ─── */
.line-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  border: 2px solid #06c755; 
  border-radius: 100px;       
  padding: 12px 40px 12px 20px; 
  color: #06c755;
  font-size: 16px;
  text-decoration: none;
  letter-spacing: 0.05em;
  box-shadow: 0 4px 12px rgba(6, 199, 85, 0.08); /* Soft modern shadow */
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  margin-top: 2rem;
  min-width: 230px;
  text-decoration: none;
}

.line-icon {
  width: 40px;
  height: 40px;
  margin: 8px 20px 8px 0; 
  object-fit: contain;
  transition: filter 0.3s ease;
}



.line-button {
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
}

.line-button:hover {
  background-color: rgba(255, 255, 255, 0.65);
  border-color: rgba(6, 199, 85, 0.65);
  color: rgba(6, 199, 85, 0.65);
  box-shadow: 0 4px 12px rgba(6, 199, 85, 0.04);
}

.line-icon {
  transition: none;
  opacity: 1;
}

.line-button:hover .line-icon {
  opacity: 1;
  filter: none;
}
.inner_item_txt a {
    text-decoration: none;
    color: #06c755;
}





@media (max-width: 768px) {
  
  .line-consultation-box {
    /* Reduce outer and inner spacing so it fits neatly on small viewports */
    //margin-left: 15px;
    //margin-right: 15px;
    padding: 35px 20px;
    /* Adjust outline offset slightly for a tighter frame */
    outline-offset: -4px; 
    margin-bottom: 30px;
  }

  .line-title {
    /* Scale down the title size so it doesn't wrap awkwardly */
    font-size: 20px; 
    margin-bottom: 15px;
    font-weight: bold;
    line-height: 1.4;
  }

  .line-description {
    /* Optimize description text for easier mobile readability */
    font-size: 13px;
    margin-bottom: 0; /* Let the button's margin-top handle the spacing */
    text-align: left; /* Optional: 'left' or 'justify' often looks cleaner on mobile sentences */
  }

  .line-button {
    /* Scale button layout for thumb-friendly interaction */
    //margin-top: 1.5rem;
    padding: 8px 15px 8px 15px; /* Symmetrical reduction of inner padding */
    font-size: 15px;
    //min-width: calc(100% - 40px); /* Makes the button adapt dynamically to the screen width */
    //max-width: 320px;
  }

  .line-icon {
    /* Slightly scale down the icon if needed, or keep it 40px but tighten margins */
    width: 40px;
    height: 40px;
    margin: 12px 20px 12px 0; /* Reduced the right gap slightly to save horizontal space */
  }
}