  :root{
    --primary:#FF9800;
    --secondary:#FFCC80;
    --accent:#5C6BC0;
    --neutral:#FFF9E6;
    --text:#33691E;
    --shadow-dark:#e6dfc4;
    --shadow-light:#ffffff;
  }
  html{scroll-behavior:smooth;}
  html,body{overflow-x:hidden;}
  body{
    font-family:'Quicksand',sans-serif;
    background:var(--neutral);
    color:var(--text);
    line-height:1.7;
  }
  h1,h2,h3,h4{font-family:'Comfortaa',cursive;letter-spacing:-0.5px;}
  .neo{
    background:var(--neutral);
    box-shadow:10px 10px 20px var(--shadow-dark), -10px -10px 20px var(--shadow-light);
    border-radius:24px;
  }
  .neo-sm{
    background:var(--neutral);
    box-shadow:6px 6px 12px var(--shadow-dark), -6px -6px 12px var(--shadow-light);
    border-radius:16px;
  }
  .neo-inset{
    background:var(--neutral);
    box-shadow:inset 5px 5px 10px var(--shadow-dark), inset -5px -5px 10px var(--shadow-light);
    border-radius:16px;
  }
  .neo-btn{
    background:linear-gradient(145deg,#ffa617,#e68800);
    color:#fff;
    box-shadow:6px 6px 12px var(--shadow-dark), -6px -6px 12px var(--shadow-light);
    border-radius:14px;
    padding:14px 28px;
    font-weight:700;
    transition:all .25s ease;
    display:inline-block;
    text-align:center;
  }
  .neo-btn:hover{transform:translateY(-2px);box-shadow:8px 8px 16px var(--shadow-dark), -4px -4px 10px var(--shadow-light);}
  .neo-btn:active{box-shadow:inset 4px 4px 8px #c47a00, inset -4px -4px 8px #ffb84d;}
  .neo-btn-accent{
    background:linear-gradient(145deg,#6b7bd4,#4d5cb0);
    color:#fff;
  }
  .num-badge{
    width:70px;height:70px;
    display:flex;align-items:center;justify-content:center;
    font-family:'Comfortaa',cursive;font-weight:700;font-size:1.8rem;
    color:var(--primary);
    background:var(--neutral);
    box-shadow:6px 6px 12px var(--shadow-dark), -6px -6px 12px var(--shadow-light);
    border-radius:50%;
    flex-shrink:0;
  }
  input,select,textarea{
    font-family:'Quicksand',sans-serif;
    background:var(--neutral);
    box-shadow:inset 4px 4px 8px var(--shadow-dark), inset -4px -4px 8px var(--shadow-light);
    border-radius:12px;
    padding:12px 16px;
    color:var(--text);
    outline:none;
    border:none;
    width:100%;
    transition:all .2s;
  }
  input:focus,select:focus,textarea:focus{
    box-shadow:inset 5px 5px 10px var(--shadow-dark), inset -5px -5px 10px var(--shadow-light);
  }
  .flex-row-wrap{display:flex;flex-wrap:wrap;}
  a{transition:color .2s;}
  a:hover{color:var(--primary);}
  .hero-bg{
    position:relative;
    overflow:hidden;
  }
  .hero-bg::before{
    content:"";
    position:absolute;top:0;left:0;right:0;bottom:0;
    background:radial-gradient(circle at 80% 20%, rgba(255,204,128,0.55), transparent 55%),
               radial-gradient(circle at 15% 80%, rgba(92,107,192,0.18), transparent 60%);
    z-index:0;
  }
  .fade-in{opacity:0;transform:translateY(20px);animation:fadeIn .8s ease forwards;}
  @keyframes fadeIn{to{opacity:1;transform:translateY(0);}}
  #cookieBar{position:fixed;bottom:20px;left:20px;right:20px;z-index:9999;display:none;}
  #cookieModal{position:fixed;inset:0;background:rgba(51,105,30,0.35);z-index:10000;display:none;align-items:center;justify-content:center;padding:20px;}
  .toggle{position:relative;display:inline-block;width:52px;height:28px;}
  .toggle input{opacity:0;width:0;height:0;}
  .toggle-slider{position:absolute;cursor:pointer;inset:0;background:#e6dfc4;transition:.3s;border-radius:34px;box-shadow:inset 3px 3px 6px #d1cab0,inset -3px -3px 6px #fff;}
  .toggle-slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background:#fff;transition:.3s;border-radius:50%;box-shadow:2px 2px 4px rgba(0,0,0,0.15);}
  .toggle input:checked+.toggle-slider{background:var(--primary);}
  .toggle input:checked+.toggle-slider:before{transform:translateX(24px);}
  .toggle input:disabled+.toggle-slider{opacity:.6;cursor:not-allowed;}
  iframe.map-embed{width:100%;height:420px;border:0;border-radius:24px;box-shadow:8px 8px 16px var(--shadow-dark), -8px -8px 16px var(--shadow-light);}
