
* { margin:0; padding:0; box-sizing:border-box; font-family:'Bitter', serif; }

    html { scroll-behavior: smooth; }

    body { background-color: #fffef8; color: #333; line-height:1.6; overflow-x:hidden; }

    header {
      background: linear-gradient(rgba(255,204,102,0.85), rgba(255,255,255,0.85)),
                  url('https://images.unsplash.com/photo-1582719478186-d4ee3c1a6f34') center/cover no-repeat;
      color:#4b2e05;
      text-align:center;
      padding:100px 20px;
      animation: fadeInDown 1.2s ease;
    }

    header h1 { font-size:2.8rem; margin-bottom:10px; text-shadow:1px 1px 3px rgba(255,255,255,0.6); }
    header p { font-size:1.2rem; max-width:700px; margin:auto; opacity:0.9; }

    section { padding:60px 20px; max-width:1100px; margin:auto; opacity:0; transform:translateY(50px); transition:all 1s ease-out; }
    section.show { opacity:1; transform:translateY(0); }

    .section-title { text-align:center; margin-bottom:40px; font-size:2rem; color:#b97b16; position:relative; }
    .section-title::after {
      content:""; width:60px; height:3px; background:#b97b16;
      position:absolute; bottom:-10px; left:50%; transform:translateX(-50%); border-radius:3px;
    }

    .contact-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap:40px; align-items:start; }
    .contact-info { font-size:1rem; color:#444; }
    .contact-info p { margin-bottom:10px; }

    .map-container {
      width:100%; height:300px; margin:20px 0; border-radius:12px; overflow:hidden; box-shadow:0 3px 10px rgba(0,0,0,0.1);
    }

    form { display:flex; flex-direction:column; gap:12px; }
    form input, form textarea { width:100%; padding:10px; border:1px solid #ddd; border-radius:8px; font-size:1rem; outline:none; }
    form input:focus, form textarea:focus { border-color:#b97b16; box-shadow:0 0 5px rgba(185,123,22,0.4); }
    form button { background:#b97b16; color:white; border:none; padding:12px; border-radius:30px; font-weight:600; cursor:pointer; transition:0.3s; }
    form button:hover { background:#7a530c; }

    footer { background:#4b2e05; color:white; text-align:center; padding:20px; font-size:0.9rem; margin-top:50px; }

    @keyframes fadeInDown { from{opacity:0;transform:translateY(-30px);} to{opacity:1;transform:translateY(0);} }

    @media (max-width:768px) {
      header h1 { font-size:2.2rem; }
      section { padding:40px 15px; }
    }