
:root {
  --primary-100: #e8f5e9;
  --primary-500: #00c853;
  --primary-700: #009624;
  --surface-100: #f8fafc;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
}
html,
body {
    width: 100%;
    height: 100%;
}

/* latin */
@font-face {
  font-family: 'Mukta Mahee';
  font-style: normal;
  font-weight: 300;
  src: url(XRXN3IOIi0hcP8iVU67hA9NhcyoALHY.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
  font-display: swap;
}
/* latin */
@font-face {
  font-family: 'Mukta Mahee';
  font-style: normal;
  font-weight: 700;
  src: url(XRXN3IOIi0hcP8iVU67hA9NxdCoALHY.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
  font-display: swap;
}


body {
    font-family: 'Mukta Mahee', sans-serif;
    color: #1a1a1a;
    line-height: 1.8;
    letter-spacing: 0.01em;
    font-size: 1.125rem;
    font-weight: 400;
}
.brand-logo{
    width: 180px;
}
.hero {
    height: 100vh;
    min-height: 600px;
}
.hero h1 span {
    font-size: 4rem;
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.05;
    text-wrap: balance;
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.hero h1 small {
    display: block;
    font-size: 3rem;
    letter-spacing: -0.02em;
    margin-top: 1rem;
}
a {
    color: #00c853;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
}
a:hover,
a:focus {
    color: #009624 !important;
    outline: 0;
    text-decoration: none !important;
}
button.btn:focus,
button.btn:hover,
div.btn:focus,
div.btn:hover,
a.btn:hover,
a.btn:focus {
    color: #fff !important;
    background-color: #00C853;
}
section {
    padding: 8rem 0;
}

.price-badge {
  padding: 0.75rem 1.5rem;
  border-radius: 2rem;
  font-size: 1.25rem;
}
.card, .accordion-item { 
  border: 1px solid var(--primary-100); 
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0,200,83,0.08);
  background: rgba(255,255,255,0.96);
  backdrop-filter: blur(8px);
  transition: transform 0.3s cubic-bezier(0.4,0,0.2,1), 
              box-shadow 0.3s ease;
}
.card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 32px rgba(0,200,83,0.12);
}
.card-outline-primary{
    border-color: #00c853;
}
.hero .row {
  align-items: flex-start;
  height: 100%;
}
.height-100 {
  min-height: 100vh;
}
.col-fixed{
    padding-bottom: 100px;
    align-items: center;
    display: flex;
    justify-content: center;
}
.vMiddle,
#main-offer-form {
  max-width: 40rem;
  width: 100%;
  margin: 0 auto;
}
@media (min-width:576px){
    .col-fixed{
        position: fixed;
        top: 0;
        bottom: 0;
    }
}
.form-control {
    height: 3.5rem;
    border-radius: 12px;
    padding: 1rem 1.5rem;
    background: var(--surface-100);
    border: 1px solid #e0e0e0;
    transition: all 0.2s ease-out;
}
.form-control:focus {
    border-color: #00dc82;
    box-shadow: 0 0 0 4px rgba(0,220,130,0.15);
    outline: none;
}
.form-group {
    margin-bottom: 2rem;
}
textarea.form-control {
  height: 6rem;
}

.form-control:hover, .form-control:focus{
    border-color: #00c853;
}
/*===============================================
* Background Colors
================================================*/
.bg-alt {
    background-color: #fff;
}
.bg-faded {
    background: linear-gradient(195deg, #f8fff9 0%, #fff 100%);
}
.bg-blue{
    background-color: #032EFF !important;
}
.bg-primary{
    background-color: #00c853 !important;
}
.bg-purple{
    background-color: #3d5afe;
}
.bg-orange{
    background-color: #ffea00;
}
.bg-yellow{
    background-color:#feac00;
}
.bg-pink{
    background-color:#ff0080;
}
.bg-green {
    background-color: #00dc82;
    background-image: linear-gradient(135deg, #00dc82 0%, #00c853 100%);
}

.btn-primary {
  background: linear-gradient(135deg, #00dc82 0%, #00c853 100%);
}
.bg-red{
    background-color:#FF3B30;
}
.bg-violet{
    background-color: #7B1FA2;
}
.bg-teal{
    background-color: #00796B;
}
.bg-slate{
    background-color: #455A64;
}
.bg-indigo{
    background-color: #303F9F;
}
/*===============================================
* Text Colors
================================================*/
.text-faded {
    color: #D9EDF7;
}
.text-dark {
    color: #37474F;
}
.text-muted{
    color: #999 !important;
}
.text-light {
    color: #fff;
}
.text-light:hover,.text-light:focus {
    color: #eee;
    text-decoration:none;
}
.text-primary {
    color: #00c853 !important;
}
.text-purple{
    color: #3d5afe !important;
}
.text-orange{
    color: #ffea00 !important;
}
.text-yellow{
    color:#feac00 !important;
}
.text-pink{
    color:#ff0080 !important;
}
.text-green{
    color:#00c853 !important;
}
.text-red{
    color:#FF3B30 !important;
}
.text-violet{
    color: #7B1FA2 !important;
}
.text-teal{
    color: #00796B !important;
}
.text-slate{
    color: #455A64 !important;
}
.text-indigo{
    color: #303F9F !important;
}
/*===============================================
* Icon Sizes
================================================*/
label{
  margin: 0;
}
.action-icons {
  position: absolute;
  bottom: 4rem;
  width: 100%;
  left: 0;
}
.icon-lg {
    font-size: 60px;
    line-height: 18px;
}
.icon-md {
    font-size: 2.5rem;
    line-height: 14px;
}
.icon-sm {
    font-size: 30px;
    line-height: 14px;
}

[data-bs-toggle="collapse"] {
  transition: all 0.2s ease;
}
.accordion-button:not(.collapsed) {
  background-color: #f8fafc;
}
.action-icons .lead {
  font-size: 1rem;
  margin-top: -.5rem;
}
.form-control-feedback {
  font-size: .875rem;
}
/*===============================================
* Colored Buttons
================================================*/
.btn {
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4,0,0.2,1);
    border-radius: 12px;
    padding: 1rem 2rem;
    position: relative;
    overflow: hidden;
}
.btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 10px 20px -3px rgba(0,220,130,0.3);
}
.btn:active {
    transform: translateY(0) scale(0.98);
}
.btn-outline-white {
    color: #fff !important;
    background-image: none;
    background-color: transparent;
    border-color: #fff;
}
.btn-outline-white:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}
.btn-white {
    color: #00c853;
    background-color: #fff;
    border-color: #fff;
}
.btn-white:hover {
    background: transparent !important;
    color: #fff !important;
}
.btn-radius{
    border-radius: 50px;
}
.border-none{
    border: none !important;
    border-color: transparent !important;
}
.accordion-body p{
    margin-bottom: 0px;
}
#allPropositions li {
    padding: 1rem;
    transition: all 0.2s ease;
    border-radius: 12px;
    margin: 0.25rem 0;
}
#allPropositions li:hover {
    background: rgba(0,220,130,0.05);
    transform: translateX(4px);
}
#allPropositions li a {
    text-decoration: none;
    font-weight: 600;
    color: #1a1a1a;
}
