/*
 * Tema temporal Fiestas Patrias 2026 para Rossi Pizzería.
 * Activo del 10 al 20 de septiembre de 2026 según la hora de Santiago.
 * ?tema=fiestas-patrias fuerza la vista previa y ?tema=normal muestra la página base.
 */
[data-seasonal]{display:none!important}

html.theme-fiestas-patrias{
  --patria-blue:#073b78;
  --patria-blue-dark:#052852;
  --patria-red:#d52b1e;
  --patria-red-dark:#a91f18;
  --patria-white:#fffdf7;
  --patria-cream:#f8edda;
  --patria-gold:#efb14f;
}

html.theme-fiestas-patrias [data-standard]{display:none!important}
html.theme-fiestas-patrias [data-seasonal]{display:revert!important}

html.theme-fiestas-patrias body{
  background:var(--patria-blue-dark);
  color:var(--patria-white);
}

/* Franja nacional siempre visible */
html.theme-fiestas-patrias .patria-topbar{
  position:fixed;
  inset:0 0 auto;
  z-index:90;
  min-height:34px;
  padding:7px 5vw 6px;
  background:linear-gradient(90deg,var(--patria-blue) 0 33.333%,var(--patria-white) 33.333% 66.666%,var(--patria-red) 66.666%);
  color:var(--patria-blue-dark);
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:14px;
  border-bottom:1px solid rgba(255,255,255,.45);
  font-size:.72rem;
  line-height:1.25;
  letter-spacing:.13em;
  text-transform:uppercase;
  text-align:center;
}
html.theme-fiestas-patrias .patria-topbar strong{font-weight:800}
html.theme-fiestas-patrias .patria-topbar-star{
  color:var(--patria-red);
  display:inline-block;
  font-size:.8rem;
  animation:patria-star-pulse 2.8s ease-in-out infinite;
  will-change:transform,opacity;
}
html.theme-fiestas-patrias .patria-topbar-star:last-child{animation-delay:-1.4s}
html.theme-fiestas-patrias header{top:34px}
html.theme-fiestas-patrias header.scrolled{
  background:rgba(5,40,82,.96);
  border-color:rgba(255,255,255,.18);
}
html.theme-fiestas-patrias .btn-nav,
html.theme-fiestas-patrias .btn-primary{background:var(--patria-red)}
html.theme-fiestas-patrias .btn-nav:hover,
html.theme-fiestas-patrias .btn-primary:hover{background:var(--patria-red-dark)}

/* Hero: fotografía real Rossi, bandera y ornamentación de fonda */
html.theme-fiestas-patrias .hero{
  min-height:100svh;
  padding-top:180px;
  background:var(--patria-blue-dark);
  isolation:isolate;
  overflow:hidden;
}
html.theme-fiestas-patrias .hero .bg img{
  opacity:.58;
  filter:saturate(1.13) contrast(1.05) brightness(.83);
  transform:scale(1.025);
  animation:patria-photo-breathe 18s ease-in-out infinite alternate;
}
html.theme-fiestas-patrias .hero::before{
  background:
    linear-gradient(90deg,rgba(5,40,82,.97) 0%,rgba(5,40,82,.78) 48%,rgba(169,31,24,.48) 100%),
    linear-gradient(to bottom,rgba(5,40,82,.28),rgba(7,22,43,.9));
}
html.theme-fiestas-patrias .hero::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 16% 34%,rgba(255,253,247,.12),transparent 24%),
    radial-gradient(circle at 82% 28%,rgba(213,43,30,.14),transparent 27%);
}
html.theme-fiestas-patrias .patria-bunting{
  position:absolute;
  z-index:3;
  top:113px;
  left:-1vw;
  width:102vw;
  height:54px;
  background-repeat:repeat-x;
  background-size:216px 54px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='216' height='54' viewBox='0 0 216 54'%3E%3Cpath d='M0 2h216' stroke='%23f5dfb8' stroke-width='3'/%3E%3Cpath d='M4 3h52L30 47z' fill='%23d52b1e'/%3E%3Cpath d='M58 3h52L84 47z' fill='%23fffdf7'/%3E%3Cpath d='M112 3h52l-26 44z' fill='%23073b78'/%3E%3Cpath d='M166 3h46l-23 44z' fill='%23d52b1e'/%3E%3C/svg%3E");
  filter:drop-shadow(0 4px 5px rgba(0,0,0,.32));
  transform:rotate(-.45deg);
  transform-origin:center;
  animation:patria-bunting-sway 5.4s ease-in-out infinite alternate;
  will-change:transform;
}
html.theme-fiestas-patrias .patria-rosette{
  position:absolute;
  right:6vw;
  top:190px;
  z-index:3;
  width:116px;
  aspect-ratio:1;
  border-radius:50%;
  border:9px solid var(--patria-white);
  outline:9px solid var(--patria-red);
  background:var(--patria-blue);
  color:var(--patria-white);
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  transform:rotate(7deg);
  box-shadow:0 12px 30px rgba(0,0,0,.28);
  animation:patria-rosette-float 4.2s ease-in-out infinite;
  will-change:transform;
}
html.theme-fiestas-patrias .patria-rosette::before,
html.theme-fiestas-patrias .patria-rosette::after{
  content:'';
  position:absolute;
  bottom:-49px;
  width:28px;
  height:58px;
  background:var(--patria-red);
  clip-path:polygon(0 0,100% 0,100% 100%,50% 79%,0 100%);
}
html.theme-fiestas-patrias .patria-rosette::before{left:16px;transform:rotate(8deg)}
html.theme-fiestas-patrias .patria-rosette::after{right:16px;transform:rotate(-8deg);background:var(--patria-white)}
html.theme-fiestas-patrias .patria-rosette span{
  font-size:2.4rem;
  line-height:1;
  color:var(--patria-white);
  animation:patria-star-turn 4.2s ease-in-out infinite;
  will-change:transform;
}
html.theme-fiestas-patrias .patria-rosette small{
  margin-top:3px;
  font-family:'Bebas Neue','Arial Narrow',sans-serif;
  font-size:1.15rem;
  letter-spacing:.12em;
}
html.theme-fiestas-patrias .hero .eyebrow{color:var(--patria-gold);font-size:1rem}
html.theme-fiestas-patrias .hero .eyebrow::before{background:var(--patria-gold);width:38px;height:2px}
html.theme-fiestas-patrias .hero .eyebrow,
html.theme-fiestas-patrias .hero h1,
html.theme-fiestas-patrias .hero-sub,
html.theme-fiestas-patrias .hero .cta-row,
html.theme-fiestas-patrias .hero-stats{
  animation:patria-content-in .72s cubic-bezier(.2,.72,.2,1) both;
}
html.theme-fiestas-patrias .hero h1{animation-delay:.08s}
html.theme-fiestas-patrias .hero-sub{animation-delay:.16s}
html.theme-fiestas-patrias .hero .cta-row{animation-delay:.24s}
html.theme-fiestas-patrias .hero-stats{animation-delay:.32s}
html.theme-fiestas-patrias .hero h1{
  max-width:11ch;
  font-size:clamp(4.2rem,9.4vw,8.6rem);
  line-height:.82;
  letter-spacing:.01em;
  text-shadow:0 5px 22px rgba(0,0,0,.3);
}
html.theme-fiestas-patrias .hero h1 em{
  display:inline-block;
  color:var(--patria-red);
  text-shadow:0 2px 0 rgba(255,255,255,.16);
  animation:patria-chile-emphasis 5.2s ease-in-out infinite;
  will-change:transform;
}
html.theme-fiestas-patrias .hero h1 small{
  display:block;
  margin-top:18px;
  color:var(--patria-white);
  font-family:'Bebas Neue','Arial Narrow',sans-serif;
  font-size:.38em;
  line-height:1;
  letter-spacing:.055em;
}
html.theme-fiestas-patrias .hero-sub{
  max-width:52ch;
  color:rgba(255,253,247,.85);
  font-size:1.12rem;
}
html.theme-fiestas-patrias .hero-stats{
  gap:0;
  max-width:760px;
  border:1px solid rgba(255,255,255,.22);
  border-top:5px solid var(--patria-red);
  background:rgba(5,40,82,.62);
  backdrop-filter:blur(8px);
}
html.theme-fiestas-patrias .hero-stats>div{padding:18px 26px;border-right:1px solid rgba(255,255,255,.16)}
html.theme-fiestas-patrias .hero-stats>div:last-child{border-right:0}
html.theme-fiestas-patrias .hero-stats .num{color:var(--patria-white)}
html.theme-fiestas-patrias .hero-stats .label{color:rgba(255,255,255,.68)}

/* Volantines y trompos: folclor liviano, dibujado sólo con CSS */
html.theme-fiestas-patrias .patria-kite,
html.theme-fiestas-patrias .patria-trompo{
  position:absolute;
  z-index:1;
  display:block!important;
  pointer-events:none;
  user-select:none;
  contain:layout paint;
  animation-play-state:paused;
  will-change:transform;
}
html.theme-fiestas-patrias .patria-kite.is-active,
html.theme-fiestas-patrias .patria-trompo.is-active{animation-play-state:running}
html.theme-fiestas-patrias .patria-kite{
  --kite-a:var(--patria-red);
  --kite-b:var(--patria-blue);
  width:72px;
  height:148px;
  color:rgba(255,253,247,.72);
  opacity:.76;
  filter:drop-shadow(0 7px 8px rgba(0,0,0,.2));
  animation:patria-kite-flight 7.8s ease-in-out infinite;
}
html.theme-fiestas-patrias .patria-kite::before{
  content:'';
  position:absolute;
  inset:0 auto auto 8px;
  width:56px;
  height:66px;
  background:conic-gradient(from 45deg,var(--kite-a) 0 25%,var(--patria-white) 0 50%,var(--kite-b) 0 75%,var(--patria-white) 0);
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.35);
}
html.theme-fiestas-patrias .patria-kite::after{
  content:'★';
  position:absolute;
  top:18px;
  left:27px;
  color:var(--patria-white);
  font-size:17px;
  line-height:1;
  text-shadow:0 1px 2px rgba(5,40,82,.35);
}
html.theme-fiestas-patrias .patria-kite i{
  position:absolute;
  top:58px;
  left:36px;
  width:36px;
  height:78px;
  border-left:2px solid currentColor;
  border-radius:50%;
  transform:rotate(-16deg);
}
html.theme-fiestas-patrias .patria-kite i::before,
html.theme-fiestas-patrias .patria-kite i::after{
  content:'';
  position:absolute;
  left:-7px;
  width:13px;
  height:9px;
  background:var(--kite-a);
  clip-path:polygon(0 0,50% 45%,100% 0,78% 100%,50% 60%,22% 100%);
}
html.theme-fiestas-patrias .patria-kite i::before{top:21px}
html.theme-fiestas-patrias .patria-kite i::after{top:49px;background:var(--kite-b)}
html.theme-fiestas-patrias .patria-kite--hero{right:19vw;top:35%}
html.theme-fiestas-patrias .patria-kite--section{
  --kite-a:var(--patria-blue);
  --kite-b:var(--patria-red);
  right:2vw;
  top:86px;
  width:58px;
  opacity:.32;
  animation-duration:8.8s;
  animation-delay:-3.2s;
}
html.theme-fiestas-patrias .patria-trompo{
  width:68px;
  height:78px;
  opacity:.38;
  filter:drop-shadow(0 7px 7px rgba(0,0,0,.18));
  transform-origin:50% 78%;
  animation:patria-trompo-spin 5.2s ease-in-out infinite;
}
html.theme-fiestas-patrias .patria-trompo::before{
  content:'';
  position:absolute;
  inset:5px 4px 13px;
  background:linear-gradient(to bottom,var(--patria-blue) 0 27%,var(--patria-white) 27% 43%,var(--patria-red) 43% 70%,var(--patria-gold) 70% 77%,var(--patria-blue-dark) 77%);
  clip-path:polygon(50% 0,82% 13%,100% 37%,80% 63%,58% 76%,50% 94%,42% 76%,20% 63%,0 37%,18% 13%);
}
html.theme-fiestas-patrias .patria-trompo::after{
  content:'';
  position:absolute;
  left:31px;
  bottom:2px;
  width:6px;
  height:20px;
  border-radius:4px;
  background:var(--patria-gold);
}
html.theme-fiestas-patrias .patria-trompo--promos{left:1.8vw;bottom:34px;animation-delay:-1.3s}
html.theme-fiestas-patrias .patria-trompo--carta{right:2vw;bottom:40px;animation-delay:-3.4s}

/* Gran remate tricolor entre portada y contenido */
html.theme-fiestas-patrias .crust-divider{
  height:36px;
  background:linear-gradient(to bottom,var(--patria-red) 0 12px,var(--patria-white) 12px 24px,var(--patria-blue) 24px 36px);
}
html.theme-fiestas-patrias .crust-divider svg{display:none}

/* El tema continúa al recorrer toda la página */
html.theme-fiestas-patrias body>section:not(.hero)::before{
  content:'';
  position:absolute;
  inset:0 0 auto;
  z-index:4;
  height:7px;
  pointer-events:none;
  background:linear-gradient(90deg,var(--patria-blue) 0 33.333%,var(--patria-white) 33.333% 66.666%,var(--patria-red) 66.666%);
}
html.theme-fiestas-patrias body>section:not(.hero) .section-head::after{
  content:'';
  display:block;
  width:184px;
  height:20px;
  margin-top:25px;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23d52b1e' d='m12 1.8 3.04 6.16 6.8.99-4.92 4.8 1.16 6.77L12 17.32l-6.08 3.2 1.16-6.77-4.92-4.8 6.8-.99z'/%3E%3C/svg%3E"),
    linear-gradient(90deg,var(--patria-blue) 0 38%,transparent 38% 62%,var(--patria-red) 62%);
  background-position:center,center;
  background-repeat:no-repeat,no-repeat;
  background-size:17px 17px,100% 3px;
}
html.theme-fiestas-patrias body>section:not(.section-flour):not(.hero) .section-head::after{
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fffdf7' d='m12 1.8 3.04 6.16 6.8.99-4.92 4.8 1.16 6.77L12 17.32l-6.08 3.2 1.16-6.77-4.92-4.8 6.8-.99z'/%3E%3C/svg%3E"),
    linear-gradient(90deg,var(--patria-blue) 0 38%,transparent 38% 62%,var(--patria-red) 62%);
}

/* Superficies claras */
html.theme-fiestas-patrias .section-flour{
  background-color:var(--patria-cream);
  color:#17283c;
}
html.theme-fiestas-patrias .section-flour .eyebrow,
html.theme-fiestas-patrias .pillar .idx{color:var(--patria-red-dark)}
html.theme-fiestas-patrias .section-flour .eyebrow::before{background:var(--patria-red)}
html.theme-fiestas-patrias .promo-card,
html.theme-fiestas-patrias .teaser-card,
html.theme-fiestas-patrias .pillar{
  border-top:4px solid var(--patria-blue);
  position:relative;
}
html.theme-fiestas-patrias .promo-card:nth-child(even),
html.theme-fiestas-patrias .teaser-card:nth-child(even),
html.theme-fiestas-patrias .pillar:nth-child(even){border-top-color:var(--patria-red)}
html.theme-fiestas-patrias .promo-card::after,
html.theme-fiestas-patrias .teaser-card::after,
html.theme-fiestas-patrias .pillar::after,
html.theme-fiestas-patrias .hub-card::after{
  content:'';
  position:absolute;
  top:0;
  right:0;
  z-index:3;
  display:grid;
  width:36px;
  height:36px;
  place-items:center;
  background-color:var(--patria-blue);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fffdf7' d='m12 1.8 3.04 6.16 6.8.99-4.92 4.8 1.16 6.77L12 17.32l-6.08 3.2 1.16-6.77-4.92-4.8 6.8-.99z'/%3E%3C/svg%3E");
  background-position:center;
  background-repeat:no-repeat;
  background-size:15px 15px;
  box-shadow:-3px 3px 0 var(--patria-red);
}
html.theme-fiestas-patrias .hub-card{position:relative}
html.theme-fiestas-patrias .promo-tag{background:var(--patria-red)}
html.theme-fiestas-patrias .promo-price{color:var(--patria-red-dark)}
html.theme-fiestas-patrias .hub-card.primary{background:var(--patria-red)}
html.theme-fiestas-patrias .hub-card:not(.primary){background:var(--patria-blue-dark)}
html.theme-fiestas-patrias .proof-badge{
  background:var(--patria-blue-dark);
  border-bottom:5px solid var(--patria-red);
}
html.theme-fiestas-patrias .local02{border-top-color:var(--patria-white)}
html.theme-fiestas-patrias footer{
  background:var(--patria-blue-dark);
  border-top:12px solid transparent;
  border-image:linear-gradient(90deg,var(--patria-blue) 0 33.333%,var(--patria-white) 33.333% 66.666%,var(--patria-red) 66.666%) 1;
}

@keyframes patria-photo-breathe{
  0%{transform:scale(1.025) translate3d(0,0,0)}
  100%{transform:scale(1.065) translate3d(-.6%,.35%,0)}
}
@keyframes patria-bunting-sway{
  from{transform:translate3d(-8px,0,0) rotate(-.55deg)}
  to{transform:translate3d(8px,3px,0) rotate(.2deg)}
}
@keyframes patria-rosette-float{
  0%,100%{transform:translate3d(0,0,0) rotate(7deg)}
  50%{transform:translate3d(0,-9px,0) rotate(3.5deg)}
}
@keyframes patria-content-in{
  from{opacity:0;transform:translate3d(0,18px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes patria-photo-mobile{
  0%{transform:scale(1.03) translate3d(0,0,0)}
  100%{transform:scale(1.055) translate3d(-.4%,.25%,0)}
}
@keyframes patria-star-pulse{
  0%,100%{opacity:.72;transform:scale(.9) rotate(-4deg)}
  50%{opacity:1;transform:scale(1.1) rotate(4deg)}
}
@keyframes patria-star-turn{
  0%,100%{transform:scale(.97) rotate(-4deg)}
  50%{transform:scale(1.06) rotate(4deg)}
}
@keyframes patria-chile-emphasis{
  0%,72%,100%{transform:translate3d(0,0,0) scale(1)}
  82%{transform:translate3d(0,-2px,0) scale(1.02)}
  91%{transform:translate3d(0,0,0) scale(1)}
}
@keyframes patria-kite-flight{
  0%,100%{transform:translate3d(0,0,0) rotate(-7deg)}
  35%{transform:translate3d(10px,-13px,0) rotate(3deg)}
  68%{transform:translate3d(-5px,-6px,0) rotate(-1deg)}
}
@keyframes patria-trompo-spin{
  0%,100%{transform:translate3d(0,0,0) rotate(-8deg)}
  38%{transform:translate3d(7px,-5px,0) rotate(142deg)}
  72%{transform:translate3d(-4px,-2px,0) rotate(282deg)}
}

@media(max-width:860px){
  html.theme-fiestas-patrias .patria-topbar{font-size:.62rem;gap:7px;letter-spacing:.08em}
  html.theme-fiestas-patrias .patria-topbar>span:not(.patria-topbar-star){display:none}
  html.theme-fiestas-patrias .hero{padding-top:176px}
  html.theme-fiestas-patrias .hero .bg img{
    transform:scale(1.03);
    animation:patria-photo-mobile 20s ease-in-out infinite alternate;
  }
  html.theme-fiestas-patrias .patria-rosette{width:82px;right:7vw;top:190px;border-width:6px;outline-width:6px}
  html.theme-fiestas-patrias .patria-rosette::before,
  html.theme-fiestas-patrias .patria-rosette::after{bottom:-38px;width:21px;height:43px}
  html.theme-fiestas-patrias .patria-rosette span{font-size:1.7rem}
  html.theme-fiestas-patrias .patria-rosette small{font-size:.85rem}
  html.theme-fiestas-patrias .hero h1{font-size:clamp(3.9rem,18vw,6.2rem);max-width:9ch}
  html.theme-fiestas-patrias .hero-stats{display:grid;grid-template-columns:1fr}
  html.theme-fiestas-patrias .hero-stats>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:14px 18px}
  html.theme-fiestas-patrias .hero-stats>div:last-child{border-bottom:0}
  html.theme-fiestas-patrias body>section:not(.hero) .section-head::after{width:148px}
  html.theme-fiestas-patrias .patria-kite--hero{right:3vw;top:31%;width:52px;opacity:.52}
  html.theme-fiestas-patrias .patria-kite--section{right:1vw;top:66px;width:46px;opacity:.2}
  html.theme-fiestas-patrias .patria-trompo{width:52px;height:62px;opacity:.24}
  html.theme-fiestas-patrias .patria-trompo::after{left:24px;height:15px}
}

@media(max-width:520px){
  html.theme-fiestas-patrias .patria-rosette{display:none!important}
  html.theme-fiestas-patrias .hero{padding-top:168px}
  html.theme-fiestas-patrias .hero h1{font-size:clamp(3.65rem,19vw,5rem)}
  html.theme-fiestas-patrias .hero h1 small{font-size:.34em}
  html.theme-fiestas-patrias .hero-sub{font-size:1rem}
  html.theme-fiestas-patrias .patria-kite--hero{right:6vw;top:235px;width:43px;opacity:.42}
  html.theme-fiestas-patrias .patria-kite--section{display:none!important}
  html.theme-fiestas-patrias .patria-trompo--carta{display:none!important}
  html.theme-fiestas-patrias .patria-trompo--promos{left:auto;right:8vw;bottom:18px;opacity:.2}
}

@media(prefers-reduced-motion:reduce){
  html.theme-fiestas-patrias *,
  html.theme-fiestas-patrias *::before,
  html.theme-fiestas-patrias *::after{
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important;
  }
}
