.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;background:linear-gradient(135deg,#f8f4e9,#f0ebe0 50%,#e8f0e5)}.hero-background{overflow:hidden}.hero-background,.hero-slide{position:absolute;inset:0}.hero-slide img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.8) 0,rgba(248,244,233,.6) 50%,transparent)}.hero-overlay-mobile{position:absolute;inset:0;background:rgba(0,0,0,.2)}.hero-content{position:relative;z-index:10;max-width:1200px;margin-left:auto;margin-right:auto;display:grid;gap:2rem;align-items:center;padding:5rem 1rem 4rem}.hero-text{text-align:center}.hero-title{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:1rem;color:#2d3748}.hero-subtitle{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:#5a7d5a}.hero-description{font-size:1.125rem;color:#4a5568;margin-bottom:1.5rem;line-height:1.6;max-width:32rem;margin-left:auto;margin-right:auto}.hero-buttons{display:flex;flex-direction:column;gap:.75rem;justify-content:center}.hero-button-primary{background-color:#5a7d5a;color:white;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;font-size:1rem;transition:all .3s;box-shadow:0 4px 6px rgba(0,0,0,.1);border:none;cursor:pointer}.hero-button-primary:hover{background-color:#486348;transform:scale(1.05);box-shadow:0 6px 8px rgba(0,0,0,.15)}.hero-button-secondary{border:2px solid #e2e8f0;color:#4a5568;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;font-size:1rem;transition:all .3s;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem}.hero-button-secondary:hover{border-color:#5a7d5a;color:#5a7d5a;transform:scale(1.05)}.hero-image-container{display:none;position:relative}.hero-image{width:100%;height:auto;border-radius:1rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.hero-decoration-1{position:absolute;top:-1.5rem;left:-1.5rem;width:2.5rem;height:2.5rem;background-color:#5a7d5a;border-radius:50%}.hero-decoration-2{position:absolute;bottom:-1rem;right:-1rem;width:2rem;height:2rem;background-color:#e8d2c3;border-radius:50%}.hero-nav-button{display:none;position:absolute;top:50%;transform:translateY(-50%);width:2.5rem;height:2.5rem;background-color:rgba(255,255,255,.8);border-radius:50%;align-items:center;justify-content:center;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:all .3s;border:none;cursor:pointer;z-index:20}.hero-nav-button:hover{background-color:white;transform:translateY(-50%) scale(1.1);box-shadow:0 6px 8px rgba(0,0,0,.15)}.hero-nav-prev{left:1rem}.hero-nav-next{right:1rem}.hero-nav-mobile{position:absolute;bottom:1rem;left:0;right:0;display:flex;justify-content:space-between;padding:0 1rem;z-index:20}.hero-nav-mobile-button{width:2.5rem;height:2.5rem;background-color:rgba(255,255,255,.8);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:all .3s;border:none;cursor:pointer}.hero-nav-mobile-button:hover{background-color:white;transform:scale(1.1);box-shadow:0 6px 8px rgba(0,0,0,.15)}.hero-dots{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);display:flex;gap:.5rem;z-index:20}.hero-dot{width:.5rem;height:.5rem;border-radius:50%;background-color:rgba(255,255,255,.6);transition:all .3s;border:none;cursor:pointer}.hero-dot:hover{background-color:rgba(255,255,255,.8);transform:scale(1.2)}.hero-dot-active{background-color:white;transform:scale(1.5)}@media (min-width:768px){.hero-content{padding:6rem 1.5rem 0;grid-template-columns:1fr;gap:3rem}.hero-title{font-size:3rem}.hero-subtitle{font-size:1.75rem}.hero-buttons{flex-direction:row;gap:1rem}.hero-nav-button{display:flex}.hero-nav-mobile{display:none}.hero-dots{bottom:2rem}.hero-dot{width:.75rem;height:.75rem}}@media (min-width:1024px){.hero-content{grid-template-columns:1fr 1fr;padding-top:7rem;gap:4rem}.hero-text{text-align:left}.hero-description{margin-left:0;margin-right:0}.hero-buttons{justify-content:flex-start}.hero-image-container{display:block}.hero-nav-prev{left:1.5rem}.hero-nav-next{right:1.5rem}}@media (min-width:1280px){.hero-title{font-size:3.75rem}}