:root {
      --primary:#fdcb6e;
      --accent:#e17055;
      --bg:#ffeaa7;
      --text:#2d3436;
      --radius-lg:16px;
    }

    body {
      font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color:var(--text);
      background:#fff;
      line-height:1.6;
    }

    h1,h2,h3,h4,h5,h6 {
      font-family:"Merriweather","Georgia",serif;
      color:var(--text);
    }

    a {
      color:var(--accent);
    }

    .btn-primary {
      background:var(--accent);
      color:#fff;
      border-radius:999px;
      padding:0.85rem 1.8rem;
      font-weight:600;
      border:none;
    }

    .btn-primary:hover,
    .btn-primary:focus {
      background:#d35434;
      color:#fff;
    }

    .btn-secondary {
      background:transparent;
      color:var(--accent);
      border-radius:999px;
      padding:0.8rem 1.7rem;
      font-weight:500;
      border:2px solid var(--accent);
    }

    .btn-secondary:hover,
    .btn-secondary:focus {
      background:rgba(225,112,85,0.08);
      color:var(--accent);
    }

    .section-padding {
      padding:4rem 0;
    }

    .hero {
      min-height:90vh;
      background:linear-gradient(135deg,#ffeaa7 0%,#fdcb6e 40%,#e17055 100%);
      display:flex;
      align-items:center;
      color:#2d3436;
    }

    .hero-inner {
      padding:4rem 0;
    }

    .hero-badge {
      display:inline-flex;
      align-items:center;
      background:rgba(255,255,255,0.9);
      border-radius:999px;
      padding:0.35rem 0.9rem;
      font-size:0.8rem;
      font-weight:500;
      text-transform:uppercase;
      letter-spacing:0.06em;
      color:#2d3436;
      margin-bottom:1rem;
    }

    .hero-title {
      font-size:2.6rem;
      max-width:34rem;
      margin-bottom:1rem;
    }

    @media(min-width:768px){
      .hero-title {font-size:3rem;}
    }

    .hero-subtitle {
      max-width:36rem;
      font-size:1.1rem;
      margin-bottom:1.2rem;
    }

    .hero-text {
      max-width:38rem;
      margin-bottom:2rem;
      font-size:1rem;
    }

    .hero-actions .button {
      margin-right:0.8rem;
      margin-bottom:0.8rem;
    }

    .hero-note {
      font-size:0.8rem;
      opacity:0.85;
      margin-top:1rem;
    }

    .card-soft {
      background:#fff;
      border-radius:var(--radius-lg);
      box-shadow:0 16px 40px rgba(0,0,0,0.06);
      padding:2.2rem 2rem;
    }

    .section-heading {
      margin-bottom:1.5rem;
    }

    .section-heading p.lead {
      font-size:1.02rem;
      max-width:40rem;
    }

    .bg-soft {
      background:var(--bg);
    }

    .newsletter-box {
      max-width:560px;
      margin:0 auto;
      background:#fffceb;
      border-radius:var(--radius-lg);
      padding:2rem 2.4rem;
      box-shadow:0 10px 30px rgba(0,0,0,0.05);
    }

    .newsletter-form input[type="email"] {
      border-radius:999px;
      border:1px solid rgba(45,52,54,0.25);
      padding:0.9rem 1.1rem;
      font-size:0.98rem;
    }

    .newsletter-form .button {
      width:100%;
    }

    @media(min-width:640px){
      .newsletter-form .button {
        width:auto;
      }
    }

    blockquote {
      border-left:4px solid var(--accent);
      padding-left:1rem;
      margin-left:0;
      color:#2d3436;
      font-style:italic;
      background:rgba(255,255,255,0.8);
      border-radius:0 12px 12px 0;
      padding-top:0.6rem;
      padding-bottom:0.6rem;
    }

    .faq-item {
      margin-bottom:1.4rem;
    }

    .faq-item strong {
      display:block;
      margin-bottom:0.2rem;
    }

    .contact-panel {
      background:#fffceb;
      border-radius:var(--radius-lg);
      padding:2rem;
      box-shadow:0 10px 30px rgba(0,0,0,0.04);
    }

    .contact-details p {
      margin-bottom:0.3rem;
    }

    .cta {
      background:linear-gradient(120deg,#fdcb6e 0%,#ffeaa7 45%,#e17055 100%);
      color:#2d3436;
    }

    .cta h2 {
      color:#2d3436;
    }

    .footer {
      background:#2d3436;
      color:#fdfaf3;
      font-size:0.92rem;
    }

    .footer a {
      color:#fdcb6e;
    }

    .footer small {
      opacity:0.85;
    }

    .cookie-notice {
      position:fixed;
      bottom:0;
      left:0;
      right:0;
      background:#2d3436;
      color:#fff;
      padding:0.8rem 1.2rem;
      font-size:0.85rem;
      display:flex;
      justify-content:space-between;
      align-items:center;
      z-index:999;
    }

    .cookie-notice p {
      margin:0;
      margin-right:1rem;
    }

    .cookie-notice .button {
      margin-bottom:0;
    }

    @media(max-width:640px){
      .cookie-notice {
        flex-direction:column;
        align-items:flex-start;
      }
      .cookie-notice p {
        margin-bottom:0.5rem;
        margin-right:0;
      }
    }
