.banner-section{width:100%;margin:0;padding:0;overflow:hidden;background:#111}.banner-carousel{position:relative;width:100%;height:520px;min-height:320px;overflow:hidden}@media (max-width:768px){.banner-carousel{height:380px;min-height:280px}}@media (max-width:480px){.banner-carousel{height:300px;min-height:240px}}.banner-slide{position:absolute;inset:0;opacity:0;z-index:0;pointer-events:none;overflow:hidden}.banner-slide--active{opacity:1;z-index:2;pointer-events:auto}.banner-slide-img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.banner-slide--enter-next{z-index:3;animation:slideEnterNext .8s cubic-bezier(.4,0,.2,1) forwards}.banner-slide--exit-next{z-index:2;animation:slideExitNext .8s cubic-bezier(.4,0,.2,1) forwards}.banner-slide--enter-prev{z-index:3;animation:slideEnterPrev .8s cubic-bezier(.4,0,.2,1) forwards}.banner-slide--exit-prev{z-index:2;animation:slideExitPrev .8s cubic-bezier(.4,0,.2,1) forwards}@keyframes slideEnterNext{0%{opacity:1;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideExitNext{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-30%)}}@keyframes slideEnterPrev{0%{opacity:1;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideExitPrev{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(30%)}}.banner-arrow{background:rgba(0,0,0,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);width:52px;height:52px;margin-top:-26px;top:50%;border-radius:50%;border:1px solid hsla(0,0%,100%,.15);box-shadow:0 2px 12px rgba(0,0,0,.3);transition:background .25s,transform .2s,box-shadow .25s;cursor:pointer;display:flex;align-items:center;justify-content:center;position:absolute;-webkit-tap-highlight-color:transparent;z-index:5}.banner-arrow--prev{left:1rem}.banner-arrow--next{right:1rem}.banner-arrow:hover{background:rgba(0,0,0,.55);transform:scale(1.08);box-shadow:0 4px 20px rgba(0,0,0,.4)}.banner-arrow:active{transform:scale(.96);box-shadow:0 1px 8px rgba(0,0,0,.3)}.banner-arrow:focus-visible{outline:2px solid hsla(0,0%,100%,.9);outline-offset:3px}.banner-arrow-icon{width:22px;height:22px;color:#fff;pointer-events:none;display:block}@media (max-width:768px){.banner-arrow{width:44px;height:44px;margin-top:-22px}.banner-arrow--prev{left:.75rem}.banner-arrow--next{right:.75rem}.banner-arrow-icon{width:18px;height:18px}}.banner-dots{position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:flex;gap:0;z-index:5}.banner-dot{width:44px;height:44px;border-radius:50%;border:none;padding:0;background:transparent;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center}.banner-dot:after{content:"";width:10px;height:10px;border-radius:50%;background:hsla(0,0%,100%,.45);transition:transform .3s,background .3s,box-shadow .3s}.banner-dot:hover:after{background:hsla(0,0%,100%,.7)}.banner-dot--active:after{background:#fff;transform:scale(1.3);box-shadow:0 0 10px hsla(0,0%,100%,.4)}.about-section{padding:clamp(2rem,6vw,4rem) clamp(1rem,4vw,2rem);max-width:1400px;margin:0 auto;overflow:hidden}.about-header{width:100%;text-align:center;margin-bottom:clamp(2rem,5vw,3rem)}.about-header-line{width:2px;height:48px;margin:0 auto .5rem;background:#5d8f02;border-radius:2px}.about-section-title{margin:0 0 .25rem;font-size:clamp(.75rem,2vw,.95rem);letter-spacing:.15em;color:#5d8f02;text-transform:uppercase}.about-heading{margin:0;font-size:clamp(1.25rem,3vw,1.6rem);padding-bottom:0;font-family:Beach Lombok,sans-serif;color:#1a1a1a}.about-content{align-items:stretch!important;flex-wrap:nowrap}.about-content>*{flex:1 1 0;min-width:0;max-width:100%}.about-block{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding:0 .5rem}.about-block-history,.about-block-vision{align-items:center;text-align:center}.about-block-video{justify-content:center;display:flex;position:relative;min-height:200px;overflow:hidden;min-width:0}.about-block-title{margin:0 0 .75rem;font-size:clamp(1rem,2vw,1.15rem);font-weight:700;color:#1a1a1a}.about-block-text{margin:0 0 1rem;font-size:clamp(.875rem,1.5vw,.95rem);line-height:1.65;color:#333;max-width:36ch;text-align:center}@media (min-width:1025px){.about-content .about-block-history,.about-content .about-block-vision{flex:1 1 0}.about-content .about-block-video{flex:1.6 1 0;max-width:55%}.about-block-vision{align-items:flex-start;text-align:left}.about-block-history{align-items:flex-end;text-align:right}.about-block-text{text-align:inherit;max-width:32ch}.about-block-video{min-height:320px}}@media (max-width:1024px){.about-content>*{flex:none}.about-block{padding:.5rem 0}.about-block-text{max-width:52ch}.about-block-video{min-height:280px;width:100%}}@media (max-width:480px){.about-section{padding:1.5rem 1rem}.about-header{margin-bottom:1.5rem}.about-header-line{height:36px}.about-block-text{max-width:100%;font-size:.9rem;line-height:1.6}.about-block-video{min-height:220px}.about-block-title{font-size:1rem}}.tracking-in-expand-forward-top{animation:tracking-in-expand-forward-top .6s linear both}@keyframes tracking-in-expand-forward-top{0%{letter-spacing:-.2em;transform:translateZ(-700px) translateY(-100px);opacity:0}40%{opacity:.6}to{transform:translateZ(0) translateY(0);opacity:1}}.video-player-wrap{width:100%;position:relative;overflow:hidden;border-radius:1rem;background:#000;aspect-ratio:16/9;padding:0;border:none}.video-player-iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-radius:1rem}.video-player-button{cursor:pointer;display:block}.video-player-thumb-img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;filter:brightness(.9);transition:transform .35s ease,filter .35s ease}.video-player-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;background:rgba(0,0,0,.55);border:2px solid hsla(0,0%,100%,.8);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px rgba(0,0,0,.6);z-index:2}.video-player-play-icon{display:block;width:0;height:0;border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:20px solid #fff;margin-left:4px}.video-player-wrap:hover .video-player-thumb-img{transform:scale(1.04);filter:brightness(1)}.video-player-wrap:hover .video-player-play{background:rgba(0,0,0,.7)}@media (max-width:768px){.video-player-play{width:56px;height:56px}.video-player-play-icon{border-top-width:10px;border-bottom-width:10px;border-left-width:16px}}.services-section{width:100%;overflow:hidden}.services-row{display:flex;flex-direction:row;align-items:stretch;min-height:420px;width:100%}@media (min-width:1025px){.services-row{height:clamp(400px,45vw,540px);min-height:400px}}.services-row-reverse{flex-direction:row-reverse}@media (max-width:1024px){.services-row,.services-row-reverse{flex-direction:column;min-height:0}}.services-image-wrap{flex:0 0 50%;min-height:320px;position:relative;overflow:hidden;background:#222}.services-image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,rgba(0,0,0,.15));pointer-events:none;z-index:1}.services-row-reverse .services-image-wrap:after{background:linear-gradient(270deg,transparent 60%,rgba(0,0,0,.15))}@media (max-width:1024px){.services-image-wrap{flex:none;width:100%;min-height:280px;max-height:360px}.services-image-wrap:after{background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.2))}}@media (max-width:480px){.services-image-wrap{min-height:220px;max-height:280px}}.services-img{-o-object-fit:cover;object-fit:cover;transition:transform .6s ease}.services-row:hover .services-img{transform:scale(1.03)}.services-content{flex:1;display:flex;flex-direction:column;justify-content:center;padding:clamp(2.5rem,5vw,4rem);min-width:0}.services-content--productos{background:linear-gradient(145deg,#4a1e16,#6b1a1a 50%,#7d2020)}.services-content--restaurante{background:linear-gradient(145deg,#8c2020,#b02828 50%,#c43030)}@media (max-width:1024px){.services-content{padding:clamp(2rem,4vw,2.5rem)}}.services-content h2{margin:0 0 1rem;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:700;color:#fff;font-family:Beach Lombok,sans-serif;letter-spacing:.03em}.services-content__line{width:50px;height:3px;border:0;margin:0 0 1.5rem;background:hsla(0,0%,100%,.4);border-radius:2px}.services-content--restaurante .services-content__line{margin-left:auto}.services-content p{margin:0 0 2rem;font-size:clamp(.9rem,1.4vw,1.02rem);line-height:1.75;color:hsla(0,0%,100%,.88);max-width:46ch;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.services-content--restaurante p{margin-left:auto;text-align:right}@media (max-width:1024px){.services-content p{max-width:100%;-webkit-line-clamp:4}.services-content--restaurante p{margin-left:0;text-align:left}.services-content--restaurante h2{text-align:left}.services-content--restaurante .services-content__line{margin-left:0}}.services-content .services-cta{margin-top:auto;padding-top:.5rem}.services-content--restaurante .services-cta{display:flex;justify-content:flex-end}@media (max-width:1024px){.services-content--restaurante .services-cta{justify-content:flex-start}}.services-cta-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 28px;border:2px solid hsla(0,0%,100%,.7);border-radius:50px;background:transparent;color:#fff;font-size:.95rem;font-weight:600;letter-spacing:.03em;text-decoration:none;cursor:pointer;transition:background .3s ease,border-color .3s ease,transform .2s ease}.services-cta-btn:hover{background:hsla(0,0%,100%,.15);border-color:#fff;transform:translateY(-1px)}.services-cta-btn:active{transform:translateY(0)}.services-cta-btn svg{width:18px;height:18px;transition:transform .3s ease}.services-cta-btn:hover svg{transform:translateX(3px)}