  :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: #17222A;
     --text-main-charcoal: #2A332E;
     --text-muted-gray: #56645E;
     --accent-tan: #C38B67;
     --hub-section-bg: #EFF2F0;
     --tag-cyan: #4CAFA6;
     --border-light: #E4E8E5;
 }
 
 body {
     font-family: 'Plus Jakarta Sans', sans-serif;
     color: var(--text-main-charcoal);
     background-color: var(--hub-section-bg);
     -webkit-font-smoothing: antialiased;
 }
 
 .custom-container {
     max-width: 1140px;
 }
 
 .max-w-header {
     max-width: 700px;
 }
 /* Typography Heading Elements */
 
 .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.02em;
 }
 
 .serif-heading .italic-tan {
     font-style: italic;
     color: var(--accent-tan);
 }
 
 .section-intro {
     font-size: 15px;
     line-height: 1.6;
     color: var(--text-muted-gray);
 }
 /* FILTER PILLS BUTTONS NAVIGATION */
 
 .pill-btn {
     font-family: 'Plus Jakarta Sans', sans-serif;
     font-size: 13px;
     font-weight: 500;
     color: #004C27;
     background-color: transparent;
     border: 1px solid #004C27;
     padding: 8px 18px;
     border-radius: 50px;
     cursor: pointer;
     transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
 }
 
 .pill-btn:hover {
     background-color: rgba(17, 52, 37, 0.05);
 }
 
 .pill-btn.active {
     background-color: #004C27;
     color: #FFFFFF;
 }
 /* ARTICLE CARD ARCHITECTURE DISPLAY MATRIX */
 
 .article-hub-card {
     border: none;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }
 
 .card-img-frame {
     height: 200px;
     width: 100%;
     overflow: hidden;
     background-color: #E6EAE7;
     /* Placeholder color match matching image_879623.png template image bounds */
 }
 /* Designed to replicate the minimalist horizontal background aesthetic of the images in image_879623.png */
 
 .card-thumbnail {
     width: 100%;
     height: 100%;
     object-fit: cover;
 }
 
 .card-body-content {
     background-color: #FFFFFF;
 }
 
 .card-meta-tag {
     font-size: 11px;
     font-weight: 600;
     text-transform: uppercase;
     color: var(--tag-cyan);
     letter-spacing: 0.05em;
 }
 
 .card-serif-title {
     font-family: 'Playfair Display', serif;
     font-size: 24px;
     font-style: italic;
     text-align: left;
     font-weight: 400;
     line-height: 1.35;
     color: var(--brand-dark-green);
     letter-spacing: -0.01em;
 }
 
 .read-more-link {
     font-family: Inter;
     font-weight: 500;
     font-style: Medium;
     font-size: 14px;
     leading-trim: NONE;
     line-height: 140%;
     letter-spacing: 0%;
     vertical-align: middle;
     color: #004C27 !important;
     border-bottom: 1px solid transparent;
     width: fit-content;
     transition: all .3s;
     position: relative;
     display: inline-block;
 }
 
 .read-more-link::before {
     content: '';
     position: absolute;
     bottom: 0;
     left: 0;
     height: 2px;
     width: 0;
     background-color: #004C27;
     transition: width 0.2s ease;
 }
 
 .read-more-link:hover::before {
     width: 100%;
 }
 /* Footer Contrast Trim Accent Block */
 
 .bottom-accent-bar {
     height: 14px;
     background-color: var(--brand-dark-green);
     width: 100%;
 }
 /* Responsive Structural Breakpoint Parameters */
 
 @media (max-width: 991.98px) {
     .serif-heading {
         font-size: 2.3rem;
     }
     .card-serif-title {
         font-size: 1.35rem;
     }
 }
 /* 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;
     }
 }