:root {
      --primary:#27AE60;
      --accent:#F1C40F;
      --bg:#FCF3CF;
      --text:#145A32;
      --radius-lg:1rem;
    }
    html,body {
      font-family:"Open Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color:var(--text);
      background:var(--bg);
    }
    h1,h2,h3,h4,h5,h6 {
      font-family:"Playfair Display","Times New Roman",serif;
      color:var(--text);
    }
    .hero.is-primary {
      background-size:cover;
      background-position:center;
      background-repeat:no-repeat;
    }
    .hero-overlay {
      background:linear-gradient(120deg,rgba(252,243,207,0.92),rgba(252,243,207,0.8));
    }
    .btn-radius {
      border-radius:var(--radius-lg);
    }
    .box-radius {
      border-radius:var(--radius-lg);
    }
    .is-bg-soft {
      background:var(--bg);
    }
    .is-text-primary {
      color:var(--text) !important;
    }
    .is-accent {
      color:#111;
      background:var(--accent);
    }
    .newsletter-gradient {
      background:linear-gradient(135deg,#FCF3CF 0%,#F1C40F 40%,#27AE60 100%);
    }
    .pricing-tier-title {
      font-size:1.25rem;
      margin-bottom:0.25rem;
    }
    .pricing-price {
      font-weight:700;
      color:var(--primary);
    }
    .section {
      padding-top:4rem;
      padding-bottom:4rem;
    }
    .footer {
      background:#f7e9b4;
    }
    .cookie-banner {
      position:fixed;
      bottom:0;
      left:0;
      right:0;
      z-index:50;
      background:#fffdf4;
      border-top:1px solid #e0d7a5;
      box-shadow:0 -4px 15px rgba(0,0,0,0.08);
      padding:1rem 1.5rem;
      display:none;
    }
    .cookie-banner.is-active {
      display:block;
    }
    .cookie-banner p {
      margin-bottom:0.25rem;
      font-size:0.9rem;
    }
    .callback-form .input,
    .callback-form .textarea,
    .callback-form .select select {
      border-radius:0.75rem;
      border-color:#d4e6d4;
    }
    .callback-form .button.is-primary {
      background:var(--primary);
      border-color:var(--primary);
    }
    @media (min-width:1024px) {
      .hero-body {
        padding-top:6rem;
        padding-bottom:6rem;
      }
    }
