
@import url('https://fonts.googleapis.com/css2?family=League+Spartan:wght@500;600;700;800;900&family=Montserrat:wght@400;500;600;700&display=swap');
:root{--navy:#071F41;--royal:#0957B4;--red:#E2111C;--gold:#FBB515;--white:#FFFFFF;--ink:#071F41}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:white;font-family:Montserrat,Arial,sans-serif}h1,h2,h3,.cta,.nav{font-family:'League Spartan',Arial,sans-serif}a{color:inherit}button{font:inherit}.skip{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:200}.skip:focus{top:10px} .bar{height:6px;background:linear-gradient(90deg,var(--royal) 0 50%,white 50% 54%,var(--red) 54% 82%,var(--gold) 82%)}.header{position:sticky;top:0;z-index:50;background:var(--navy);color:white;transition:transform .28s ease}.header.hide{transform:translateY(-110%)}.head-inner{max-width:1200px;margin:auto;min-height:86px;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;width:220px;align-items:center}.brand img{width:100%;height:auto;display:block}.nav{display:flex;gap:35px;font-weight:700;letter-spacing:.055em;font-size:17px;align-items:center}.nav a{text-decoration:none}.nav a:hover{color:var(--gold)}.menu-toggle{display:none;background:transparent;border:1px solid #94a9c7;color:white;padding:10px 13px;cursor:pointer}.hero{background:var(--navy);color:white;overflow:hidden}.hero-wrap{max-width:1200px;min-height:640px;margin:auto;padding:65px 24px 95px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:25px}.eyebrow{font-size:12px;letter-spacing:.21em;font-weight:700;text-transform:uppercase;color:var(--gold)}h1{font-size:clamp(58px,7.7vw,116px);line-height:.88;letter-spacing:-.045em;margin:24px 0}h1 em{font-style:normal;color:var(--gold)}.sub{color:#dbe6f6;line-height:1.65;font-size:17px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.cta{display:inline-flex;min-height:52px;align-items:center;justify-content:center;text-align:center;padding:15px 23px;font-size:17px;font-weight:800;text-decoration:none;border:2px solid transparent;letter-spacing:.025em;transition:transform .2s ease}.cta:hover{transform:translateY(-2px)}.cta:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.gold{background:var(--gold);color:var(--navy)}.outline{border-color:white;color:white}.visual{height:525px;position:relative;display:grid;place-items:center;isolation:isolate}.big-v{position:absolute;z-index:-1;font:900 570px/.7 'League Spartan',sans-serif;color:var(--royal);right:1%;top:13%;transform:rotate(-8deg);opacity:.92}.visual img{width:100%;height:100%;object-fit:contain;position:relative;z-index:1}.stripe{height:12px;background:linear-gradient(90deg,var(--royal) 0 55%,white 55% 59%,var(--red) 59% 83%,var(--gold) 83%)}.section{padding:95px 24px;max-width:1200px;margin:auto}.tag{font-size:12px;color:var(--royal);font-weight:800;letter-spacing:.15em}.section h2,.order h2{font-size:clamp(43px,6.2vw,82px);line-height:.95;letter-spacing:-.035em;margin:16px 0 28px}.editorial{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;align-items:end}.editorial article{min-width:0}.editorial img{width:100%;height:265px;object-fit:contain;display:block}.editorial h3{font-size:31px;font-weight:800;margin:10px 0 0}.editorial .mid{transform:translateY(-24px)}.statement{max-width:790px;margin-bottom:62px}.statement p{font-size:16px;line-height:1.75}.menu-feature{background:var(--navy);color:white}.feature-heading{display:flex;justify-content:space-between;align-items:end;gap:32px}.feature-heading h2{margin-bottom:0}.feature-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px;margin:40px 0}.food{min-height:340px;position:relative;background:#e7edf2;display:flex;align-items:end;padding:18px;overflow:hidden}.food:before{content:'';position:absolute;inset:15%;border:1px dashed #b6c1cc}.food span{z-index:1;background:#fff;color:var(--navy);padding:7px 10px;font-size:11px;font-weight:700}.food:first-child{min-height:430px}.feature-foot{display:flex;justify-content:flex-end}.order{background:var(--royal);color:white}.order-inner{max-width:1200px;margin:auto;padding:75px 24px;display:flex;align-items:center;justify-content:space-between;gap:35px}.order h2{margin:0 0 14px}.order p{font-size:17px}.location-flex{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.location p{line-height:1.8}.map-shell{border:1px solid #b9cbe0;background:#eaf0f5;height:340px;display:grid;place-content:center;text-align:center;gap:12px;padding:22px}.map-shell iframe{width:100%;height:100%;border:0}.map-shell button{background:var(--navy);border:0;color:white;cursor:pointer;padding:13px 20px}.footer{background:var(--navy);color:white;padding:50px 24px}.footer-inner{max-width:1200px;margin:auto;display:flex;justify-content:space-between;gap:25px;align-items:center}.footer .brand{width:200px}.footer p{color:#ccdbed;font-size:13px}.foot-links{display:flex;gap:23px;font-size:13px}.demo-notice{font-size:11px;color:#acbed4}.mobile-wa{display:none}.page-banner{background:var(--navy);color:white;overflow:hidden}.page-banner-inner{max-width:1200px;margin:auto;padding:56px 24px;position:relative}.page-banner h1{font-size:clamp(56px,10vw,110px);position:relative;z-index:1;margin:10px 0}.page-banner .v-bg{position:absolute;right:7%;top:-70px;font:900 320px 'League Spartan';color:var(--royal);opacity:.35}.category-index{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 35px}.category-index a{border:1px solid #a6b7ca;padding:12px 15px;text-decoration:none;font-weight:700;font-size:13px}.category{padding:35px 0 45px;border-bottom:2px solid #d7e0e9;scroll-margin-top:100px}.category h2{font-size:clamp(34px,5vw,58px)}.item{border-bottom:1px solid #d5dde6;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:start;padding:18px 0}.item h3{font-size:25px;margin:0 0 8px}.item p{font-size:13px;color:#54677f;margin:0}.price{white-space:nowrap;font-size:14px;font-weight:700}.note{font-size:12px;color:#64758a}.compact-footer{padding:26px 24px}.compact-footer .footer-inner{align-items:center} .reveal{animation:appear .7s both}@keyframes appear{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.head-inner{min-height:72px;padding:10px 18px}.brand{width:155px}.menu-toggle{display:block}.nav{position:absolute;top:100%;left:0;right:0;background:var(--navy);padding:15px 20px 24px;display:none;flex-direction:column;align-items:flex-start;gap:18px}.nav.open{display:flex}.hero-wrap{display:flex;flex-direction:column;padding:46px 20px 82px;gap:5px}.hero h1{font-size:clamp(64px,13vw,96px)}.sub{font-size:15px}.visual{width:100%;height:300px;order:1}.hero-wrap>.hero-copy{display:contents}.hero-copy .eyebrow,.hero-copy h1,.hero-copy .sub{align-self:stretch}.hero-copy .actions{order:2;width:100%;margin-top:12px}.big-v{font-size:360px;top:8%;right:10%}.visual img{max-width:310px}.section{padding:70px 20px}.editorial{grid-template-columns:1fr 1fr;gap:18px}.editorial article:last-child{grid-column:1/-1}.editorial img{height:200px}.editorial .mid{transform:none}.editorial h3{font-size:24px}.feature-grid{grid-template-columns:1fr 1fr}.food,.food:first-child{min-height:230px}.food:first-child{grid-column:1/-1;min-height:280px}.feature-heading{display:block}.order-inner{padding:60px 20px 110px;display:block}.order h2{font-size:58px}.location-flex{grid-template-columns:1fr}.map-shell{height:300px}.footer-inner{display:block}.foot-links{margin-top:20px}.mobile-wa{position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--navy);padding:9px 14px calc(9px + env(safe-area-inset-bottom));display:block}.mobile-wa .cta{display:flex;min-height:46px;padding:9px}.page-banner-inner{padding:45px 20px}.page-banner .v-bg{font-size:240px}.category{scroll-margin-top:65px}.item h3{font-size:22px}body{padding-bottom:65px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Datos oficiales del menú: apresentação editorial adaptativa */
.feature-heading h2{font-size:clamp(48px,7vw,94px);margin:0;text-align:left}.feature-heading{padding-left:0;border-left:0}.feature-heading:before{content:'';display:block;width:58px;height:4px;background:var(--gold);margin-bottom:22px}.feature-grid{grid-template-columns:1.45fr 1fr;gap:40px;margin:50px 0 46px}.feature-product{min-width:0;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:20px}.feature-product:first-child{grid-row:span 2;grid-template-columns:1fr;align-content:start}.feature-photo{border:2px solid #fff;aspect-ratio:1/1;background:#e8edf1;display:grid;place-items:center;padding:20px;color:#425469;min-width:0}.feature-product:first-child .feature-photo{aspect-ratio:4/3}.feature-photo span{font-size:11px;font-weight:700;letter-spacing:.06em;text-align:center}.feature-info h3{font-size:clamp(25px,2.6vw,37px);line-height:1.05;margin:0 0 12px}.feature-info p{font-size:13px;line-height:1.55;color:#d3deed;margin:0 0 15px}.feature-price{color:var(--gold);font:800 25px 'League Spartan',Arial,sans-serif}.feature-foot{justify-content:center}.feature-foot .outline:hover{background:#fff;color:var(--navy);transform:none}.category-index a:hover{background:var(--navy);color:#fff}.item .price{font-size:17px}.page-banner p{position:relative;z-index:1}.order-inner .cta{border-radius:0}
@media(max-width:850px){.feature-grid{grid-template-columns:1fr;gap:36px}.feature-product,.feature-product:first-child{grid-column:auto;grid-row:auto;grid-template-columns:1fr}.feature-photo,.feature-product:first-child .feature-photo{aspect-ratio:4/3}.feature-info h3{font-size:30px}}
@media(max-width:760px){.feature-grid{grid-template-columns:1fr}.feature-heading h2{font-size:55px}.item{gap:10px}.item .price{font-size:14px}.feature-product{gap:14px}}

/* Galería: sólo archivos vectoriales oficiales, sin recreación ni fondos añadidos. */
.gallery-section{max-width:1200px;padding-top:110px;padding-bottom:110px}
.gallery-section .editorial{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;align-items:start}
.gallery-section .editorial article{display:flex;flex-direction:column;align-items:center;min-width:0;transform:none}
.gallery-section .mascot-stage{width:100%;height:318px;display:flex;align-items:flex-end;justify-content:center}
.gallery-section .editorial img{display:block;width:auto;max-width:100%;object-fit:contain;object-position:center bottom}
.gallery-section .editorial img.mascot-adult{height:300px}
.gallery-section .editorial img.mascot-kids{height:210px}
.gallery-section .editorial h3{font-family:'League Spartan',Arial,sans-serif;text-align:center;color:#071F41;font-size:clamp(21px,2.25vw,30px);line-height:1.12;margin:24px 0 0;white-space:nowrap}
.location-flex{grid-template-columns:1fr;max-width:750px}
@media(max-width:760px){.gallery-section{padding:70px 20px}.gallery-section .editorial{grid-template-columns:1fr;gap:56px}.gallery-section .editorial article:last-child{grid-column:auto}.gallery-section .mascot-stage{height:auto;min-height:0}.gallery-section .editorial img.mascot-adult{height:auto;width:min(60vw,300px);max-height:300px}.gallery-section .editorial img.mascot-kids{height:auto;width:min(42vw,210px);max-height:210px}.gallery-section .editorial h3{font-size:24px;margin-top:24px;white-space:normal}}

/* Revisão aprovada: título de localização mais compacto apenas no celular. */
@media (max-width: 760px) {
  .location h2 {
    font-size: clamp(38px, 9vw, 54px);
    line-height: 1.03;
    letter-spacing: -0.025em;
    overflow-wrap: normal;
  }
}

/* Fotografías reales suministradas para los tres destacados */
.feature-photo{padding:0;overflow:hidden;display:block}
.feature-photo img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:850px){.feature-product:not(:first-child) .feature-photo{aspect-ratio:1/1}}

/* Crédito profesional autorizado: exclusivamente en Inicio. */
.professional-credit{max-width:1200px;margin:35px auto 0;padding:20px 16px 0;border-top:1px solid #53647D;color:#fff;text-align:center;font-family:Montserrat,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.65;}
.professional-name{font-weight:500;}
.professional-credit a{color:inherit;text-decoration:none;}
.professional-credit a:hover{text-decoration:underline;}
.footer a[href^="mailto:"]{overflow-wrap:anywhere;text-underline-offset:3px;}
