/* Identidad exclusiva de Bendito Esquite. Se aplica tanto al borrador como a la página publicada. */
body.bendito-esquite {
  --bg: #153923;
  --surface: #214d32;
  --paper: #fff9e9;
  --ink: #183c26;
  --muted: #e3e9d5;
  --accent: #f7d45f;
  --line: #fff9e944;
  color: #fff9e9;
  background: #163a24 linear-gradient(180deg,#10271972 0%,#102719b3 46%,#102719ba 100%), url('/assets/bendito-esquite-elotes.webp') center top / cover fixed !important;
  min-height: 100dvh;
}

body.bendito-esquite .page {
  position: relative;
  isolation: isolate;
  min-height: 100dvh;
  background: linear-gradient(135deg,#173b2ab8,#0b271dd9 68%,#1a3b28c4) !important;
  border: 1px solid #fff9e94a;
  border-top: 0;
  border-bottom: 0;
  box-shadow: 0 22px 90px #071c17a8, inset 0 1px 0 #fff7d078;
  -webkit-backdrop-filter: blur(20px) saturate(1.3);
  backdrop-filter: blur(20px) saturate(1.3);
}

body.bendito-esquite .page::before {
  content: 'BE';
  position: absolute;
  z-index: -1;
  top: 260px;
  right: -10px;
  font: 900 clamp(180px,42vw,380px)/1 Georgia,serif;
  letter-spacing: -.16em;
  color: #f6d8690d;
  pointer-events: none;
  animation: bendito-breathe 9s ease-in-out infinite alternate;
}

body.bendito-esquite .brand-header {padding-top: 34px;}
body.bendito-esquite .top-line {color:#ffdf79;font-weight:800;letter-spacing:.22em;}
body.bendito-esquite .brand-lockup {gap:20px;}
body.bendito-esquite .wordmark img {
  background: #fff6de;
  border: 3px solid #f2d76d;
  box-shadow: 0 0 0 6px #fff9e91c,0 12px 30px #05180e66;
  animation: bendito-arrive .8s cubic-bezier(.2,.8,.2,1) both;
}
body.bendito-esquite .brand-name {
  font-family: 'Arial Black',Arial,sans-serif;
  font-weight: 900;
  letter-spacing: -.055em;
  line-height: .94;
  color: #fff9e9;
  text-shadow: 0 2px 16px #081e16b5;
}
body.bendito-esquite .brand-name span {font-size:.78em;color:#f7d45f;}
body.bendito-esquite .brand-tagline {color:#fff8e5;font-size:clamp(.88rem,2vw,1rem);font-weight:600;}
body.bendito-esquite .social-link,
body.bendito-esquite .mp-social {
  background: #fff8e51a !important;
  border: 1px solid #fff8e58c !important;
  color: #fff9e9 !important;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
body.bendito-esquite .social-link:hover,
body.bendito-esquite .mp-social:hover {background:#f7d45f35!important;transform:translateY(-3px);}

body.bendito-esquite .hero {
  border: 1px solid #fff9e970;
  border-radius: 24px;
  background: #153923 !important;
  box-shadow: 0 15px 35px #06180f75,inset 0 1px 0 #fff9e959;
}
body.bendito-esquite .hero-photo {background-size:cover;background-position:center;filter:saturate(1.08);}
body.bendito-esquite .hero-shade {background:linear-gradient(0deg,#092217e8 0%,#092217a0 38%,#09221720 100%);}
body.bendito-esquite .hero-copy {left:26px;bottom:25px;right:95px;}
body.bendito-esquite .hero-copy .eyebrow {color:#ffe58f;}
body.bendito-esquite .hero h1 {font-family:'Arial Black',Arial,sans-serif;font-weight:900;letter-spacing:-.055em;line-height:1.02;text-wrap:balance;text-shadow:0 2px 16px #091b10c9;}
body.bendito-esquite .bendito-monogram {
  position:absolute;
  z-index:2;
  right:18px;
  top:18px;
  width:72px;
  height:72px;
  display:grid;
  place-items:center;
  border-radius:24px;
  border:1px solid #fff9e9aa;
  background:linear-gradient(145deg,#fff9e94d,#fff9e91a 47%,#18472bc2);
  color:#fff7d7;
  font:italic 900 27px/1 Georgia,serif;
  letter-spacing:-.12em;
  box-shadow:inset 0 1px 1px #fff9e9b8,0 9px 25px #0824147d;
  -webkit-backdrop-filter:blur(16px) saturate(1.4);
  backdrop-filter:blur(16px) saturate(1.4);
  animation:bendito-float 7s ease-in-out infinite;
}
body.bendito-esquite .bendito-monogram::after {
  content:'';
  position:absolute;
  inset:5px;
  border:1px solid #fffbe855;
  border-radius:19px;
  pointer-events:none;
}

body.bendito-esquite .actions {gap:12px;}
body.bendito-esquite .actions>* {
  border-radius:17px!important;
  min-height:76px;
  box-shadow:0 8px 22px #071c1391,inset 0 1px 0 #fff9e977;
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease;
}
body.bendito-esquite .actions>*:hover {transform:translateY(-3px);box-shadow:0 13px 28px #071c13a8,inset 0 1px 0 #fff9e999;}
body.bendito-esquite .actions>.action-primary {background:#f7d45f!important;border:1px solid #ffe897!important;color:#1d3923!important;}
body.bendito-esquite .actions>.action-secondary,
body.bendito-esquite .actions>a.action-secondary {background:#fff9e9e0!important;border:1px solid #fff!important;color:#1d3923!important;}
body.bendito-esquite .section-heading .eyebrow,
body.bendito-esquite .contact .eyebrow,
body.bendito-esquite .branch-no {color:#ffe184!important;}
body.bendito-esquite h2,
body.bendito-esquite .branch-card h3 {font-family:'Arial Black',Arial,sans-serif;letter-spacing:-.04em;}

body.bendito-esquite .branch-grid:has(>.branch-card:only-child) {grid-template-columns:1fr;}
body.bendito-esquite .branch-card {
  position:relative;
  overflow:hidden;
  padding:20px!important;
  border:1px solid #fff9e96b!important;
  border-radius:24px!important;
  background:linear-gradient(155deg,#fff9e936 0%,#dce9be14 42%,#113a28a6 100%)!important;
  box-shadow:inset 0 1px 0 #fff9e988,0 18px 35px #061b13a3;
  -webkit-backdrop-filter:blur(20px) saturate(1.35);
  backdrop-filter:blur(20px) saturate(1.35);
}
body.bendito-esquite .branch-card::before {
  content:'';position:absolute;top:-60%;left:-75%;width:80%;height:180%;
  background:linear-gradient(90deg,transparent,#ffffff16,transparent);
  transform:rotate(24deg);pointer-events:none;
  animation:bendito-sheen 12s ease-in-out infinite;
}
body.bendito-esquite .branch-photo {border-radius:16px;border:1px solid #fff9e94d;height:180px;}
body.bendito-esquite .branch-address {color:#fff9e9;}
body.bendito-esquite .branch-hours strong {color:#ffe184;}
body.bendito-esquite .map-link {background:#f7d45f!important;color:#1d3923!important;border-color:#ffe897!important;font-weight:800;}
body.bendito-esquite .contact,
body.bendito-esquite footer {border-color:#fff9e947;}

@keyframes bendito-float {0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
@keyframes bendito-breathe {from{transform:translateY(0);opacity:.55}to{transform:translateY(24px);opacity:1}}
@keyframes bendito-sheen {0%,68%,100%{left:-85%;opacity:0}76%{opacity:.75}93%{left:135%;opacity:0}}
@keyframes bendito-arrive {from{opacity:0;transform:translateY(12px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}

@media(max-width:600px) {
  body.bendito-esquite {background-attachment:scroll!important;background-position:center top!important;}
  body.bendito-esquite .page {width:min(100%,480px)!important;padding:0 18px!important;border-left:0;border-right:0;}
  body.bendito-esquite .brand-header {padding-top:31px;}
  body.bendito-esquite .brand-name {font-size:clamp(25px,8vw,35px);}
  body.bendito-esquite .wordmark img {width:80px;height:80px;}
  body.bendito-esquite .hero {min-height:260px;}
  body.bendito-esquite .hero-copy {right:18px;bottom:22px;left:19px;}
  body.bendito-esquite .hero h1 {font-size:clamp(29px,8vw,43px);max-width:75%;}
  body.bendito-esquite .bendito-monogram {width:54px;height:54px;border-radius:18px;font-size:21px;right:13px;top:13px;}
  body.bendito-esquite .bendito-monogram::after {border-radius:13px;}
  body.bendito-esquite .branch-card {padding:16px!important;}
  body.bendito-esquite .branch-photo {height:160px;}
}
@media(prefers-reduced-motion:reduce) {
  body.bendito-esquite .page::before,
  body.bendito-esquite .wordmark img,
  body.bendito-esquite .bendito-monogram,
  body.bendito-esquite .branch-card::before {animation:none!important;}
}
