  :root {
     --primary-color: #C5984E;
     --secondary-color: #004C27;
     --text-color-secondary: #008262;
     --primary-color-primary: #C5984E;
 }
 
 :root {
     --bg-cream: #F8F6F2;
     --dark-green: #004c27;
     --muted-green: #008262;
     --light-box: #EBF2EE;
     --text-main: #2B332E;
     --timeline-grey: #D5DDD8;
     --lightblack-text: #17222a;
 }
 
 .btn-dark-green {
     background-color: var(--dark-green);
     color: white !important;
     border-radius: 30px;
     padding: 15px 50px 15px 25px;
     font-size: 14px;
     font-weight: 500;
     border: none;
     transition: background 0.3s ease;
     position: relative;
 }
 
 .btn-dark-green-no-icon {
     padding: 15px 25px 15px 25px;
 }
 
 .btn-dark-green span {
     position: absolute;
     right: 3px;
     top: 50%;
     transform: translate(0px, -50%);
     border-radius: 50%;
     background: white;
     overflow: hidden;
 }
 
 .btn-dark-green:hover {
     background-color: #0b2218;
 }
 
 .hero_button {
     opacity: 1;
     gap: 2px;
     border-radius: 40px;
     padding: 8px;
     background: #f8faf4;
     display: flex;
     flex-direction: row;
     flex-wrap: nowrap;
     justify-content: center;
     align-content: center;
     padding: 15px;
 }
 
 .hero_button a {
     margin: 0 !important;
     height: auto;
 }
 
 .hero_footer {
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
     align-content: center;
     justify-content: center;
     align-items: center;
     margin-top: 2rem;
     padding: 5px;
     gap: 35px;
 }
 
 .hero_footer div.sec1-div {
     display: flex;
     flex-direction: row;
     flex-wrap: nowrap;
     align-content: center;
     align-items: center;
     justify-content: center;
     gap: 8px;
     font-family: Inter;
     font-weight: 400;
     font-style: Regular;
     font-size: 12px;
     leading-trim: NONE;
     line-height: 100%;
     letter-spacing: 0%;
     vertical-align: middle;
     color: #000000;
 }
 /* Hero Section */
 
 .hero-section {
     /* background: linear-gradient(180deg, #F3F6F3 0%, #FFFFFF 100%); */
     padding: 100px 0 0px 0;
     background: linear-gradient(180deg, #E7EAF0 0%, #F3F4EF 100%);
 }
 
 .badge-sub {
     font-size: 12px;
     letter-spacing: 2px;
     color: var(--muted-green);
     font-weight: 600;
     border: 1px solid #17222A1A;
     opacity: 1;
     padding-top: 4px;
     padding-right: 8px;
     padding-bottom: 4px;
     padding-left: 8px;
     gap: 10px;
     border-width: 1px;
     border-radius: 20px;
     max-width: fit-content;
 }
 
 .hero-title {
     font-size: 3.5rem;
     color: #000000;
     font-weight: 500;
     line-height: 1.15;
 }
 
 .hero-title span {
     font-style: italic;
     color: #C38B67;
     /* Soft terra-cotta highlight color from standard premium layouts */
 }
 
 .hero-subtitle {
     max-width: 580px;
     color: #17222a;
     font-size: 17px;
     line-height: 1.6;
 }
 
 section.hero-section .container {
     max-width: 722px;
     width: 722;
     height: 472px;
     top: 138px;
     left: 359px;
     opacity: 1;
     border-top-left-radius: 40px;
     border-top-right-radius: 40px;
     border-width: 1px;
     display: flex;
     flex-direction: column;
     flex-wrap: wrap;
     align-content: center;
     justify-content: center;
     align-items: center;
     border: 1px solid #FFFFFF;
     background: radial-gradient(111.37% 111.38% at 52.28% 71.14%, rgba(255, 255, 255, 0) 50%, #FFFFFF 100%);
 }
 /* new section */
 /* Styling Architecture Initialization */
 
 :root {
     --brand-dark-green: #113425;
     --text-charcoal: #2A332E;
     --text-muted-gray: #56645E;
     --accent-gold-tan: #C38B67;
     --border-emerald: #A9B8B0;
     --calc-container-bg: #F4F6F4;
     --card-surface-light: #EDEEF2;
     --badge-pill-txt: #3D5A4E;
     --grid-card-gray: #EFF1F0;
 }
 
 body {
     font-family: 'Plus Jakarta Sans', sans-serif;
     color: var(--text-charcoal);
     background-color: #FFFFFF;
     -webkit-font-smoothing: antialiased;
 }
 
 .custom-container {
     max-width: 1140px;
 }
 /* Typography Styles */
 
 .section-title {
     font-family: 'Playfair Display', serif;
     font-size: 2.8rem;
     font-weight: 400;
     line-height: 1.15;
     color: var(--brand-dark-green);
 }
 
 .section-title .italic-gold {
     font-style: italic;
     color: var(--accent-gold-tan);
 }
 
 .badge-pill {
     font-size: 11px;
     font-weight: 600;
     letter-spacing: 0.05em;
     color: var(--badge-pill-txt);
     border: 1px solid var(--border-emerald);
     padding: 6px 16px;
     border-radius: 50px;
 }
 /* SECTION 1: CALCULATOR MODULE */
 
 .shadow-block {
     background-color: var(--calc-container-bg);
 }
 
 .form-label-custom {
     font-size: 11px;
     font-weight: 700;
     letter-spacing: 0.08em;
     color: #A2AEA8;
     margin-bottom: 8px;
     display: block;
 }
 
 .custom-select {
     border: none !important;
     border-radius: 50px !important;
     padding: 14px 24px !important;
     font-size: 15px;
     font-weight: 500;
     color: var(--text-charcoal);
     background-color: #FFFFFF;
     box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
 }
 /* Card Statement Panel Outputs */
 
 .calc-card {
     background-color: var(--card-surface-light);
     border-radius: 28px;
     min-height: 100%;
     z-index: 2;
     display: flex;
     flex-direction: column;
     justify-content: space-between;
     padding: 2rem 3rem;
     border-top-left-radius: 40px;
     border-top-right-radius: 40px;
     border-width: 1px;
     background: radial-gradient(111.37% 111.38% at 52.28% 71.14%, rgba(255, 255, 255, 0) 50%, #FFFFFF 100%);
     border: 1px solid #FFFFFF;
 }
 
 .badge-pill-light {
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 0.05em;
     color: #5D6B64;
     background-color: rgba(255, 255, 255, 0.5);
     padding: 6px 14px;
     border-radius: 50px;
 }
 
 .display-savings-amount {
     font-size: 3.5rem;
     font-weight: 700;
     color: var(--secondary-color);
     letter-spacing: -0.02em;
     line-height: 1;
 }
 
 .savings-duration-lbl {
     font-size: 14px;
     font-weight: 500;
 }
 /* Background watermark styling tracking image_961e9e.png context */
 
 .bg-currency-symbol {
     position: absolute;
     right: 0;
     left: 0;
     top: 15%;
     font-size: 18rem;
     font-family: 'Playfair Display', serif;
     font-weight: 700;
     color: rgba(255, 255, 255, 0.35);
     line-height: 1;
     pointer-events: none;
     z-index: 0;
 }
 
 .bg-currency-symbol svg {
     width: 100% !important;
 }
 
 .calc_content {
     z-index: 2;
 }
 
 .breakdown-list {
     position: relative;
     z-index: 1;
 }
 
 .breakdown-lbl {
     font-size: 14px;
     color: var(--text-muted-gray);
 }
 
 .breakdown-val {
     font-size: 14px;
 }
 /* SECTION 2: PROMISE MATRIX MODULE */
 
 .promise-description {
     font-size: 14px;
     line-height: 1.6;
     color: var(--text-muted-gray);
 }
 
 .legitscript-wrapper {
     border-top: 1px solid #EAECEB;
     padding-top: 20px;
 }
 
 .legit-text {
     font-size: 11px;
     font-weight: 700;
     letter-spacing: 0.06em;
     color: var(--brand-dark-green);
 }
 /* Structural Layout Feature Cards Grid */
 
 .promise-card {
     background-color: var(--grid-card-gray);
     border-radius: 4px;
     height: 100%;
     transition: transform 0.25s ease;
     position: relative;
     overflow: hidden;
     display: flex;
     align-content: space-between;
     flex-direction: column;
     justify-content: space-around;
 }
 
 .promise-card:hover {
     transform: translateY(-4px);
 }
 
 .promise-avatar-frame {
     width: 100%;
     height: 110px;
     /* border-radius: 50%;
    background-color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 0 12px rgba(0,0,0,0.02); */
 }
 
 .promise-avatar-frame svg {
     margin: 0 auto;
     width: 128px;
     /* height: 140px; */
 }
 
 .mock-avatar-doc {
     width: 100%;
     position: absolute;
     top: 5%;
     width: 80%;
     left: 50%;
     transform: translate(-50%, 0%);
 }
 
 .mock-avatar-doc svg {
     width: 100%;
 }
 
 .promise-card-title {
     font-family: 'Playfair Display', serif;
     font-size: 1.25rem;
     font-weight: 500;
     color: var(--brand-dark-green);
     margin-bottom: 12px;
 }
 
 .promise-card-text {
     font-size: 13px;
     line-height: 1.6;
     color: var(--text-muted-gray);
     margin-bottom: 0;
 }
 
 .calculator-section {
     background: linear-gradient(180deg, #E7EAF0 0%, #F3F4EF 100%);
 }
 /* Color Variable Architecture System Matrix */
 
 :root {
     --brand-dark-green: #113425;
     --text-charcoal-dark: #2A332E;
     --text-muted-gray: #56645E;
     --accent-tan-orange: #C38B67;
     --section-bg-light: #EFF2F0;
     --card-surface-gray: #F4F6F4;
     --tag-cyan-bg: #E4F1EE;
     --tag-cyan-text: #458B7B;
 }
 
 body {
     font-family: 'Plus Jakarta Sans', sans-serif;
     color: var(--text-charcoal-dark);
     background-color: var(--section-bg-light);
     -webkit-font-smoothing: antialiased;
 }
 
 .custom-container {
     max-width: 1140px;
 }
 
 .max-w-header {
     max-width: 680px;
 }
 
 .faq-blocks-wrapper {
     max-width: 760px;
 }
 /* Header Text Component Layout Styles */
 
 .faq-badge {
     font-size: 11px;
     font-weight: 600;
     letter-spacing: 0.06em;
     background-color: var(--tag-cyan-bg);
     color: var(--tag-cyan-text);
     padding: 5px 14px;
     border-radius: 30px;
 }
 
 .serif-heading {
     font-family: 'Playfair Display', serif;
     font-size: 2.8rem;
     font-weight: 400;
     line-height: 1.15;
     color: var(--brand-dark-green);
     letter-spacing: -0.01em;
 }
 
 .serif-heading .italic-tan {
     font-style: italic;
     color: var(--accent-tan-orange);
 }
 
 .section-subtitle {
     font-size: 14.5px;
     line-height: 1.6;
     color: var(--text-muted-gray);
 }
 /* HORIZONTAL PILL BUTTON ELEMENT ACTIONS */
 
 .pill-filter {
     font-family: 'Plus Jakarta Sans', sans-serif;
     font-size: 13.5px;
     font-weight: 500;
     color: var(--brand-dark-green);
     background-color: transparent;
     border: 1px solid var(--brand-dark-green);
     padding: 8px 20px;
     border-radius: 50px;
     transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
 }
 
 .pill-filter:hover {
     background-color: rgba(17, 52, 37, 0.04);
 }
 
 .pill-filter.active {
     background-color: var(--brand-dark-green);
     color: #FFFFFF;
 }
 /* FAQ BOX CONTAINER STYLING */
 
 .faq-category-card {
     border: 1px solid rgb(255 255 255);
     opacity: 1;
     gap: 30px;
     border-radius: 20px;
     border-width: 1px;
     background: radial-gradient(111.37% 111.38% at 52.28% 71.14%, rgba(255, 255, 255, 0) 50%, #FFFFFF 100%);
 }
 
 .category-serif-title {
     font-family: 'Playfair Display', serif;
     font-size: 1.8rem;
     font-weight: 400;
     font-style: italic;
     color: var(--brand-dark-green);
 }
 /* INTERACTIVE ACCORDION SYSTEM STYLES */
 
 .custom-faq-accordion .accordion-item {
     background-color: #FFFFFF;
     border: none;
     border-radius: 12px !important;
     margin-bottom: 12px;
     overflow: hidden;
     box-shadow: 0 2px 6px rgba(0, 0, 0, 0.015);
 }
 
 .custom-faq-accordion .accordion-button {
     font-family: 'Playfair Display', serif;
     font-size: 1.25rem;
     color: var(--brand-dark-green);
     background-color: #FFFFFF;
     padding: 18px 24px;
     border: none;
     box-shadow: none;
 }
 /* Pure custom modern circle layout for the chevron interaction indicators matching image_8792d9.png */
 
 .custom-faq-accordion .accordion-button::after {
     width: 24px;
     height: 24px;
     background-size: 12px;
     background-position: center;
     border: 1px solid #D2DCD6;
     border-radius: 50%;
     transition: transform 0.2s ease, background-color 0.2s ease;
 }
 
 .custom-faq-accordion .accordion-button:not(.collapsed)::after {
     background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
 }
 
 .custom-faq-accordion .accordion-button:not(.collapsed) {
     color: var(--brand-dark-green);
     background-color: #FFFFFF;
     box-shadow: none;
 }
 
 .custom-faq-accordion .accordion-button:not(.collapsed)::after {
     background-color: var(--brand-dark-green);
     border-color: var(--brand-dark-green);
     /* Inverts the dark default background chevron icon image vectors to bright white dynamically */
     filter: invert(1) brightness(2);
 }
 
 .custom-faq-accordion .accordion-collapse {
     display: grid;
     grid-template-rows: 0fr;
     overflow: hidden;
     transition: grid-template-rows 0.25s ease;
 }

 .custom-faq-accordion .accordion-collapse.show {
     grid-template-rows: 1fr;
 }

 .custom-faq-accordion .accordion-collapse > .accordion-body {
     min-height: 0;
     overflow: hidden;
 }

 .custom-faq-accordion .accordion-body {
     font-family: 'Plus Jakarta Sans', sans-serif;
     font-size: 13.5px;
     line-height: 1.6;
     color: var(--text-muted-gray);
     padding: 0 24px 20px 24px;
     background-color: #FFFFFF;
 }
 
 .cta--green>.container {
     display: flex;
     flex-direction: column;
     align-items: center;
 }
 
 .cta--buttons {
     width: 30%;
 }
 /*.cta--green .*/
 
 .cta--green {
     /* text-center: !important; */
 }
 
 .cta--green a.global--qua--button:first-child {
     color: #004C27 !important;
     justify-content: space-between;
 }
 
 .cta--green .transparent {
     background-color: transparent;
     color: #fff !important;
     border: 1px solid #fff !important;
     justify-content: center;
 }
 
 @media(max-width: 768px) {
     .cta--buttons {
         width: 50%;
     }
     .cta--green .transparent {
         padding: 17px 15px !important;
         justify-content: flex-end;
     }
 }
 /* Responsive Structural Breakpoint Parameters */
 
 @media (max-width: 767.98px) {
     .serif-heading {
         font-size: 2.2rem;
     }
     .category-serif-title {
         font-size: 1.5rem;
     }
     .custom-faq-accordion .accordion-button {
         font-size: 1.1rem;
         padding: 15px 20px;
     }
 }
 /* Responsive Viewport Queries */
 
 @media (max-width: 991.98px) {
     .serif-heading {
         font-size: 2.1rem;
     }
     .panel-blueprint-grid {
         width: 100%;
     }
 }
 /* Core Layout Responsive Adjustments */
 
 @media (max-width: 991.98px) {
     .serif-title {
         font-size: 2.2rem;
     }
     .legitscript-display-frame {
         min-height: 220px;
     }
     .blueprint-lines-bg {
         display: none;
         /* Safely hides blueprint layout line patterns on mobile viewports */
     }
 }
 /* Responsive Structural Breaks */
 
 @media (max-width: 991.98px) {
     .serif-heading {
         font-size: 2.2rem;
     }
     .doctor-name {
         font-size: 1.8rem;
     }
     .blueprint-grid-overlay {
         width: 100%;
         height: 40%;
     }
 }
 /* Media Queries for Viewport Scaling Adaptations */
 
 @media (max-width: 991.98px) {
     .section-title {
         font-size: 2.2rem;
     }
     .display-savings-amount {
         font-size: 2.8rem;
     }
 }