/* CSS Variables for easy customization */
 :root {
     --primary-green: #00ff88;
     --dark-bg: #0a0a0a;
     --card-bg: #1a1a1a;
     --text-white: #ffffff;
     --text-gray: #b0b0b0;
     --red-warning: #ff4444;
     --border-green: #00ff88;
 }

 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
     background-color: var(--dark-bg);
     color: var(--text-white);
     line-height: 1.6;
 }

 .container {
     max-width: 1200px;
     margin: 0 auto;
     padding: 20px;
 }

 /* Hero Section */
 .hero {
     text-align: center;
     padding: 60px 20px;
     background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
 }

 .hero-badge {
     display: inline-block;
     background: rgba(0, 255, 136, 0.1);
     border: 2px solid var(--primary-green);
     color: var(--primary-green);
     padding: 8px 20px;
     border-radius: 25px;
     font-size: 14px;
     font-weight: 600;
     margin-bottom: 30px;
 }

 .hero h1 {
     font-size: clamp(32px, 5vw, 56px);
     font-weight: 800;
     margin-bottom: 20px;
     line-height: 1.2;
 }

 .hero h1 .highlight {
     color: var(--primary-green);
 }

 .hero-subtitle {
     font-size: clamp(18px, 2.5vw, 24px);
     color: var(--text-gray);
     margin-bottom: 40px;
     max-width: 800px;
     margin-left: auto;
     margin-right: auto;
 }

 .hero-benefits {
     display: flex;
     justify-content: center;
     gap: 30px;
     flex-wrap: wrap;
     margin-bottom: 40px;
 }

 .benefit-item {
     display: flex;
     align-items: center;
     gap: 10px;
     font-size: 16px;
     font-weight: 600;
 }

 .benefit-item::before {
     content: "✓";
     color: var(--primary-green);
     font-size: 24px;
     font-weight: bold;
 }

 .cta-button {
     display: inline-block;
     background: var(--primary-green);
     color: #000;
     padding: 18px 40px;
     font-size: 18px;
     font-weight: 700;
     text-decoration: none;
     border-radius: 8px;
     transition: transform 0.2s, box-shadow 0.2s;
     border: none;
     cursor: pointer;
 }

 .cta-button:hover {
     transform: translateY(-2px);
     box-shadow: 0 10px 30px rgba(0, 255, 136, 0.3);
 }

 /* Problem Section */
 .problem-section {
     padding: 80px 20px;
     background: var(--card-bg);
 }

 .section-title {
     font-size: clamp(28px, 4vw, 42px);
     font-weight: 800;
     text-align: center;
     margin-bottom: 20px;
 }

 .section-subtitle {
     font-size: clamp(16px, 2vw, 20px);
     color: var(--text-gray);
     text-align: center;
     margin-bottom: 60px;
     max-width: 800px;
     margin-left: auto;
     margin-right: auto;
 }

 .problem-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(430px, 1fr));
     gap: 30px;
     margin-bottom: 60px;
 }

 .problem-card {
     background: var(--dark-bg);
     padding: 30px;
     border-radius: 12px;
     border: 2px solid var(--red-warning);
 }

 .problem-icon {
     font-size: 48px;
     margin-bottom: 20px;
 }

 .problem-card h3 {
     font-size: 22px;
     color: var(--red-warning);
     margin-bottom: 15px;
 }

 .problem-card p {
     color: var(--text-gray);
     line-height: 1.8;
 }

 /* Solution Box */
 .solution-box {
     background: linear-gradient(135deg, #1a3a2e 0%, #0f2419 100%);
     border: 3px solid var(--primary-green);
     border-radius: 16px;
     padding: 50px;
     text-align: center;
     margin: 60px 0;
 }

 .solution-box h2 {
     font-size: clamp(24px, 3.5vw, 36px);
     color: var(--primary-green);
     margin-bottom: 30px;
 }

 .solution-box p {
     font-size: clamp(16px, 2vw, 20px);
     line-height: 1.8;
     color: #ffffff;
     max-width: 900px;
     margin: 0 auto;
 }

 /* Journey Section */
 .journey-section {
     padding: 80px 20px;
 }

 .journey-box {
     background: var(--card-bg);
     padding: 40px;
     border-radius: 16px;
     margin-bottom: 30px;
 }

 .journey-statement {
     font-size: clamp(20px, 2.5vw, 28px);
     font-weight: 700;
     color: var(--primary-green);
     margin-bottom: 15px;
     padding: 20px;
     background: rgba(0, 255, 136, 0.05);
     border-left: 4px solid var(--primary-green);
     border-radius: 8px;
 }

 /* Comparison Section */
 .comparison-section {
     padding: 80px 20px;
     background: var(--card-bg);
 }

 .comparison-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
     gap: 40px;
     margin-top: 60px;
 }

 .comparison-card {
     background: var(--dark-bg);
     padding: 40px;
     border-radius: 16px;
     border: 3px solid transparent;
 }

 .comparison-card.traditional {
     border-color: var(--red-warning);
 }

 .comparison-card.savingsclub {
     border-color: var(--primary-green);
     position: relative;
 }

 .comparison-card.savingsclub::before {
     content: "THE SMART CHOICE";
     position: absolute;
     top: -15px;
     left: 50%;
     transform: translateX(-50%);
     background: var(--primary-green);
     color: #000;
     padding: 5px 20px;
     border-radius: 20px;
     font-size: 12px;
     font-weight: 800;
 }

 .comparison-card h3 {
     font-size: 28px;
     margin-bottom: 30px;
     text-align: center;
 }

 .comparison-item {
     display: flex;
     align-items: flex-start;
     gap: 15px;
     margin-bottom: 25px;
     padding: 15px;
     background: rgba(255, 255, 255, 0.02);
     border-radius: 8px;
 }

 .comparison-item .icon {
     font-size: 24px;
     flex-shrink: 0;
 }

 .comparison-item .content h4 {
     font-size: 18px;
     margin-bottom: 8px;
 }

 .comparison-item .content p {
     color: var(--text-gray);
     font-size: 15px;
     line-height: 1.6;
 }

 /* Math Section */
 .math-section {
     padding: 80px 20px;
 }

 .math-breakdown {
     background: var(--card-bg);
     padding: 50px;
     border-radius: 16px;
     margin: 40px 0;
 }

 .math-step {
     background: var(--dark-bg);
     padding: 30px;
     border-radius: 12px;
     margin-bottom: 30px;
     border-left: 5px solid var(--red-warning);
 }

 .math-step h3 {
     font-size: 24px;
     color: var(--red-warning);
     margin-bottom: 20px;
     display: flex;
     align-items: center;
     gap: 15px;
 }

 .step-number {
     background: var(--red-warning);
     color: #fff;
     width: 40px;
     height: 40px;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-weight: 800;
     flex-shrink: 0;
 }

 .math-detail {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
     gap: 20px;
     margin-top: 20px;
 }

 .math-detail-item {
     background: rgba(255, 68, 68, 0.1);
     padding: 15px;
     border-radius: 8px;
 }

 .math-detail-item .label {
     font-size: 14px;
     color: var(--text-gray);
     margin-bottom: 5px;
 }

 .math-detail-item .value {
     font-size: 24px;
     font-weight: 700;
     color: var(--red-warning);
 }

 .math-conclusion {
     background: linear-gradient(135deg, #3a1a1a 0%, #2a0f0f 100%);
     padding: 40px;
     border-radius: 12px;
     border: 3px solid var(--red-warning);
     text-align: center;
 }

 .math-conclusion h3 {
     font-size: 32px;
     color: var(--red-warning);
     margin-bottom: 20px;
 }

 .math-conclusion p {
     font-size: 20px;
     line-height: 1.8;
 }

 /* Model Section */
 .model-section {
     padding: 80px 20px;
     background: var(--card-bg);
 }

 .model-steps {
     display: grid;
     gap: 30px;
     margin-top: 60px;
 }

 .model-step {
     background: linear-gradient(135deg, #1a3a2e 0%, #0f2419 100%);
     padding: 40px;
     border-radius: 16px;
     border: 3px solid var(--primary-green);
     display: grid;
     grid-template-columns: auto 1fr;
     gap: 30px;
     align-items: center;
 }

 .model-step-number {
     background: var(--primary-green);
     color: #000;
     width: 80px;
     height: 80px;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 36px;
     font-weight: 800;
     flex-shrink: 0;
 }

 .model-step-content h3 {
     font-size: 28px;
     color: var(--primary-green);
     margin-bottom: 15px;
 }

 .model-step-content p {
     font-size: 18px;
     line-height: 1.8;
     color: #ffffff;
 }

 .model-step-content .detail {
     margin-top: 15px;
     padding: 15px;
     background: rgba(0, 255, 136, 0.1);
     border-radius: 8px;
     font-weight: 600;
 }

 /* Fleet Examples */
 .fleet-examples {
     padding: 80px 20px;
 }

 .fleet-card {
     background: var(--card-bg);
     padding: 50px;
     border-radius: 16px;
     margin-bottom: 40px;
 }

 .fleet-card h3 {
     font-size: 32px;
     color: var(--primary-green);
     margin-bottom: 30px;
     text-align: center;
 }

 .fleet-comparison-table {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 30px;
     margin-top: 30px;
 }

 .fleet-column {
     background: var(--dark-bg);
     padding: 30px;
     border-radius: 12px;
 }

 .fleet-column h4 {
     font-size: 24px;
     margin-bottom: 25px;
     text-align: center;
     padding-bottom: 15px;
     border-bottom: 2px solid;
 }

 .fleet-column.traditional h4 {
     color: var(--red-warning);
     border-color: var(--red-warning);
 }

 .fleet-column.savingsclub h4 {
     color: var(--primary-green);
     border-color: var(--primary-green);
 }

 .fleet-metric {
     margin-bottom: 20px;
     padding: 15px;
     background: rgba(255, 255, 255, 0.02);
     border-radius: 8px;
 }

 .fleet-metric .label {
     font-size: 14px;
     color: var(--text-gray);
     margin-bottom: 5px;
 }

 .fleet-metric .value {
     font-size: 28px;
     font-weight: 700;
 }

 .fleet-column.traditional .fleet-metric .value {
     color: var(--red-warning);
 }

 .fleet-column.savingsclub .fleet-metric .value {
     color: var(--primary-green);
 }

 .fleet-advantage {
     background: linear-gradient(135deg, #1a3a2e 0%, #0f2419 100%);
     padding: 30px;
     border-radius: 12px;
     border: 3px solid var(--primary-green);
     margin-top: 30px;
     text-align: center;
 }

 .fleet-advantage h4 {
     font-size: 24px;
     color: var(--primary-green);
     margin-bottom: 15px;
 }

 .fleet-advantage p {
     font-size: 18px;
     line-height: 1.8;
 }

 /* Chart Section */
 .chart-section {
     padding: 60px 20px;
     text-align: center;
 }

 .chart-container {
     max-width: 100%;
     margin: 40px auto;
     background: var(--card-bg);
     padding: 30px;
     border-radius: 16px;
 }

 .chart-container img {
     max-width: 100%;
     height: auto;
     border-radius: 8px;
 }

 /* Calculator Section */
 .calculator-section {
     padding: 80px 20px;
     background: var(--card-bg);
 }

 .calculator-box {
     background: var(--dark-bg);
     padding: 50px;
     border-radius: 16px;
     border: 3px solid var(--primary-green);
     max-width: 800px;
     margin: 40px auto;
 }

 .calculator-input-group {
     margin-bottom: 30px;
 }

 .calculator-input-group label {
     display: block;
     font-size: 18px;
     font-weight: 600;
     margin-bottom: 10px;
 }

 .calculator-input-group input,
 .calculator-input-group select {
     width: 100%;
     padding: 15px;
     font-size: 16px;
     border: 2px solid var(--primary-green);
     background: var(--card-bg);
     color: var(--text-white);
     border-radius: 8px;
 }

 .calculator-results {
     margin-top: 40px;
     padding: 30px;
     background: linear-gradient(135deg, #1a3a2e 0%, #0f2419 100%);
     border-radius: 12px;
     display: none;
 }

 .calculator-results.active {
     display: block;
 }

 .result-row {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 20px;
     margin-bottom: 20px;
 }

 .result-item {
     padding: 20px;
     background: rgba(0, 255, 136, 0.1);
     border-radius: 8px;
 }

 .result-item .label {
     font-size: 14px;
     color: var(--text-gray);
     margin-bottom: 5px;
 }

 .result-item .value {
     font-size: 32px;
     font-weight: 700;
     color: var(--primary-green);
 }

 .result-highlight {
     background: var(--primary-green);
     color: #000;
     padding: 25px;
     border-radius: 12px;
     text-align: center;
     margin-top: 20px;
 }

 .result-highlight h4 {
     font-size: 24px;
     font-weight: 800;
     margin-bottom: 10px;
 }

 .result-highlight p {
     font-size: 18px;
     font-weight: 600;
 }

 /* FAQ Section */
 .faq-section {
     padding: 80px 20px;
 }

 .faq-container {
     max-width: 900px;
     margin: 40px auto;
 }

 .faq-item {
     background: var(--card-bg);
     padding: 30px;
     border-radius: 12px;
     margin-bottom: 20px;
     border: 2px solid transparent;
     transition: border-color 0.3s;
 }

 .faq-item:hover {
     border-color: var(--primary-green);
 }

 .faq-question {
     font-size: 20px;
     font-weight: 700;
     margin-bottom: 15px;
     color: var(--primary-green);
 }

 .faq-answer {
     font-size: 16px;
     line-height: 1.8;
     color: var(--text-gray);
 }

 /* Form Section */
 .form-section {
     padding: 80px 20px;
     background: var(--card-bg);
 }

 .form-container {
     max-width: 700px;
     margin: 40px auto;
     background: var(--dark-bg);
     padding: 50px;
     border-radius: 16px;
     border: 3px solid var(--primary-green);
 }

 .form-container h2 {
     font-size: 32px;
     text-align: center;
     margin-bottom: 40px;
     color: var(--primary-green);
 }

 .form-row {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 20px;
     margin-bottom: 20px;
 }

 .form-group {
     margin-bottom: 20px;
 }

 .form-group label {
     display: block;
     font-size: 14px;
     font-weight: 600;
     margin-bottom: 8px;
     color: var(--text-gray);
 }

 .form-group input,
 .form-group select,
 .form-group textarea {
     width: 100%;
     padding: 15px;
     font-size: 16px;
     border: 2px dashed #ff6b6b;
     background: var(--card-bg);
     color: var(--text-white);
     border-radius: 8px;
     font-family: inherit;
 }

 .form-group input:focus,
 .form-group select:focus,
 .form-group textarea:focus {
     outline: none;
     border-color: var(--primary-green);
     border-style: solid;
 }

 .form-group textarea {
     min-height: 120px;
     resize: vertical;
 }

 .form-submit {
     width: 100%;
     padding: 20px;
     font-size: 18px;
     font-weight: 700;
     background: var(--primary-green);
     color: #000;
     border: none;
     border-radius: 8px;
     cursor: pointer;
     transition: transform 0.2s, box-shadow 0.2s;
 }

 .form-submit:hover {
     transform: translateY(-2px);
     box-shadow: 0 10px 30px rgba(0, 255, 136, 0.3);
 }

 .form-disclaimer {
     font-size: 12px;
     color: var(--text-gray);
     text-align: center;
     margin-top: 20px;
     line-height: 1.6;
 }

 /* Mobile Responsive */
 @media (max-width: 768px) {
     .hero-benefits {
         flex-direction: column;
         align-items: center;
     }

     .fleet-comparison-table {
         grid-template-columns: 1fr;
     }

     .result-row {
         grid-template-columns: 1fr;
     }

     .form-row {
         grid-template-columns: 1fr;
     }

     .model-step {
         grid-template-columns: 1fr;
         text-align: center;
     }

     .model-step-number {
         margin: 0 auto;
     }

     .math-detail {
         grid-template-columns: 1fr;
     }

     .solution-box {
         padding: 30px 20px;
     }
	 
	 .problem-grid {
		 display: grid;
		 grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
		 gap: 30px;
		 margin-bottom: 60px;
	 }

     .fleet-card {
         padding: 30px 20px;
     }

     .calculator-box {
         padding: 30px 20px;
     }

     .form-container {
         padding: 30px 20px;
     }
 }

 /* Sticky CTA Bar (Mobile) */
 .sticky-cta {
     display: none;
     position: fixed;
     bottom: 0;
     left: 0;
     right: 0;
     background: var(--dark-bg);
     padding: 15px;
     border-top: 3px solid var(--primary-green);
     z-index: 1000;
     box-shadow: 0 -5px 20px rgba(0, 0, 0, 0.5);
 }

 .sticky-cta.active {
     display: block;
 }

 .sticky-cta .cta-button {
     width: 100%;
     text-align: center;
 }

 @media (max-width: 768px) {
     .sticky-cta {
         display: block;
     }
 }