/* =====================================================================
   ¡QUÉ CEVICHE! TX — style.css
   ===================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --orange:#E8601F;
  --orange-dark:#C94E15;
  --orange-rgb:232,96,31;
  --navy:#0E4194;
  --navy-dark:#0A2F6B;
  --navy-rgb:14,65,148;
  --sky:#3FAEE0;
  --sky-rgb:63,174,224;
  --white:#FFFFFF;
  --ice:#F4F8FC;
  --ink:#12213B;
  --ink-soft:#3C4A63;
  --ink-faint:#7C8AA0;
  --font-heading:'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --radius-sm:10px;
  --radius-md:16px;
  --radius-lg:24px;
  --radius-pill:999px;
  --shadow-soft:0 8px 28px rgba(14,65,148,.10);
  --shadow-lift:0 18px 38px rgba(14,65,148,.20);
  --container:1200px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; background:var(--white); color:var(--ink);
  font-family:var(--font-body); line-height:1.6; -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ text-decoration:none; color:inherit; }
button{ font-family:inherit; border:none; background:none; cursor:pointer; }
ul{ list-style:none; margin:0; padding:0; }
h1,h2,h3,h4{ font-family:var(--font-heading); margin:0; color:var(--ink); font-weight:700; }
.wrap{ width:100%; max-width:var(--container); margin-inline:auto; padding-inline:1.25rem; }

/* Textura decorativa (usar solo en áreas puntuales) */
.texture-bg{
  background-image:linear-gradient(180deg, rgba(10,47,107,.88), rgba(10,47,107,.88)), url('../img/fondotextura.png');
  background-size:cover; background-position:center; background-repeat:no-repeat;
  color:var(--white);
}

/* Botones */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  font-family:var(--font-heading); font-weight:700; font-size:.95rem;
  padding:.85rem 1.7rem; border-radius:var(--radius-pill);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
  white-space:nowrap;
}
.btn:hover{ transform:translateY(-2px) scale(1.03); }
.btn-lg{ padding:1rem 2rem; font-size:1.02rem; }
.btn-orange{ background:var(--orange); color:var(--white); box-shadow:0 10px 24px rgba(var(--orange-rgb),.35); }
.btn-orange:hover{ background:var(--orange-dark); }
.btn-navy{ background:var(--navy); color:var(--white); box-shadow:0 10px 24px rgba(var(--navy-rgb),.3); }
.btn-navy:hover{ background:var(--navy-dark); }
.btn-white{ background:var(--white); color:var(--navy); box-shadow:0 10px 24px rgba(0,0,0,.15); }
.btn-white:hover{ background:var(--ice); }
.btn-outline-white{ background:rgba(255,255,255,.12); border:2px solid var(--white); color:var(--white); backdrop-filter:blur(3px); }
.btn-outline-white:hover{ background:rgba(255,255,255,.24); }

/* Scroll reveal */
.reveal{ opacity:0; transform:translateY(24px); transition:opacity .6s ease, transform .6s ease; }
.reveal.visible{ opacity:1; transform:translateY(0); }

/* ---------- Top bar ---------- */
.top-bar{ padding-block:.55rem; font-size:.8rem; font-weight:600; }
.top-bar-inner{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:1.1rem 1.6rem; text-align:center; }
.top-bar-inner span{ display:inline-flex; align-items:center; gap:.4rem; }

/* ---------- Nav ---------- */
.navbar{
  position:sticky; top:0; z-index:200; background:rgba(255,255,255,.94); backdrop-filter:blur(10px);
  box-shadow:0 2px 16px rgba(14,65,148,.08); border-bottom:1px solid rgba(var(--navy-rgb),.06);
}
.nav-inner{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-block:.6rem; }
.nav-logo{ display:flex; align-items:center; gap:.5rem; }
.nav-logo img{ height:44px; width:auto; }
.nav-links{ display:none; align-items:center; gap:1.7rem; }
.nav-links a{ font-family:var(--font-heading); font-weight:600; font-size:.9rem; color:var(--ink-soft); transition:color .15s ease; }
.nav-links a:hover{ color:var(--orange); }
.nav-actions{ display:flex; align-items:center; gap:.6rem; }
.nav-call-btn{ display:none; padding:.65rem 1.2rem; font-size:.82rem; }
@media (min-width:960px){ .nav-call-btn{ display:inline-flex; } }

.lang-toggle{ display:flex; align-items:center; gap:2px; background:rgba(var(--navy-rgb),.07); border-radius:var(--radius-pill); padding:3px; font-family:var(--font-heading); font-weight:700; font-size:.72rem; }
.lang-btn{ padding:.4rem .75rem; border-radius:var(--radius-pill); color:rgba(var(--navy-rgb),.55); transition:all .15s ease; }
.lang-btn.is-active{ background:var(--navy); color:var(--white); }

.cart-btn{ position:relative; display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:50%; background:var(--ice); color:var(--navy); transition:background .15s ease, transform .15s ease; }
.cart-btn:hover{ background:rgba(var(--orange-rgb),.12); transform:translateY(-1px); }
.cart-btn svg{ width:22px; height:22px; }
.cart-count{ position:absolute; top:-4px; right:-4px; min-width:20px; height:20px; padding:0 4px; border-radius:50%; background:var(--orange); color:#fff; font-size:.68rem; font-weight:800; display:flex; align-items:center; justify-content:center; box-shadow:0 2px 6px rgba(0,0,0,.2); }

.nav-toggle{ display:flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:50%; color:var(--navy); }
.nav-toggle:hover{ background:var(--ice); }
.nav-toggle svg{ width:22px; height:22px; }

.nav-mobile{ display:none; flex-direction:column; background:var(--white); border-top:1px solid rgba(var(--navy-rgb),.08); padding:.4rem 1.25rem 1rem; }
.nav-mobile.is-open{ display:flex; }
.nav-mobile a{ padding:.85rem 0; font-family:var(--font-heading); font-weight:600; color:var(--ink); border-bottom:1px solid rgba(var(--navy-rgb),.08); }
.nav-mobile a:last-child{ border-bottom:none; }

@media (min-width:960px){
  .nav-links{ display:flex; }
  .nav-toggle{ display:none; }
  .nav-mobile{ display:none !important; }
}

/* ---------- Hero ---------- */
.hero{ position:relative; min-height:92vh; display:flex; align-items:center; overflow:hidden; }
.hero-bg{ position:absolute; inset:0; z-index:0; }
.hero-bg img{ width:100%; height:100%; object-fit:cover; }
.hero-overlay{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(10,30,60,.25) 0%, rgba(10,30,60,.35) 45%, rgba(10,30,60,.72) 100%);
}
.hero-bubbles{ position:absolute; inset:0; z-index:1; overflow:hidden; pointer-events:none; }
.bubble{
  position:absolute; bottom:-60px; border-radius:50%;
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.55), rgba(255,255,255,.05));
  animation:bubbleRise linear infinite;
}
@keyframes bubbleRise{
  0%{ transform:translateY(0) translateX(0); opacity:0; }
  10%{ opacity:.8; }
  90%{ opacity:.5; }
  100%{ transform:translateY(-115vh) translateX(30px); opacity:0; }
}
.hero-content{ position:relative; z-index:2; width:100%; text-align:center; padding-block:5rem 3rem; color:var(--white); }
.hero-logo{
  width:min(315px, 60vw); margin:0 auto 1.4rem; display:block;
  filter:
    drop-shadow(0 0 18px rgba(255,255,255,.9))
    drop-shadow(0 0 40px rgba(255,255,255,.7))
    drop-shadow(0 0 70px rgba(255,255,255,.45))
    drop-shadow(0 8px 20px rgba(0,0,0,.3));
  animation:heroPulse 3.4s ease-in-out infinite;
  opacity:0; animation:heroFadeIn .8s ease forwards, heroPulse 3.4s ease-in-out 1s infinite;
}
@keyframes heroFadeIn{ from{ opacity:0; transform:scale(.85);} to{ opacity:1; transform:scale(1);} }
@keyframes heroPulse{ 0%,100%{ transform:scale(1);} 50%{ transform:scale(1.07);} }

.hero-title{
  font-size:clamp(2.1rem, 6vw, 3.6rem); line-height:1.08; margin-bottom:.6rem; color:var(--white);
  text-shadow:0 4px 18px rgba(0,0,0,.45);
  opacity:0; transform:translateY(28px); animation:heroSlideUp .8s ease .25s forwards;
}
.hero-title span{ color:var(--sky); }
.hero-subtitle{
  font-family:var(--font-heading); font-weight:600; font-size:clamp(1rem,2.4vw,1.3rem); color:rgba(255,255,255,.95);
  margin-bottom:2rem; text-shadow:0 2px 10px rgba(0,0,0,.4);
  opacity:0; transform:translateY(22px); animation:heroSlideUp .8s ease .5s forwards;
}
@keyframes heroSlideUp{ to{ opacity:1; transform:translateY(0);} }
.hero-actions{
  display:flex; flex-wrap:wrap; justify-content:center; gap:.85rem;
  opacity:0; transform:translateY(18px); animation:heroSlideUp .8s ease .75s forwards;
}

@media (prefers-reduced-motion: reduce){
  .hero-logo, .hero-title, .hero-subtitle, .hero-actions{ animation:none !important; opacity:1; transform:none; }
  .bubble{ animation:none; display:none; }
  html{ scroll-behavior:auto; }
  .reveal{ opacity:1; transform:none; transition:none; }
}

/* ---------- Teleprompter carousel ---------- */
.ticker-section{ background:var(--ice); padding-block:2.2rem; overflow:hidden; }
.ticker-track{ display:flex; width:max-content; animation:tickerScroll 55s linear infinite; }
.ticker-track:hover, .ticker-track.is-paused{ animation-play-state:paused; }
@keyframes tickerScroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
.ticker-card{
  flex:0 0 auto; width:150px; margin-right:1rem; background:var(--white); border-radius:var(--radius-md);
  box-shadow:var(--shadow-soft); overflow:hidden; border:1px solid rgba(var(--navy-rgb),.06);
}
.ticker-card img{ width:100%; height:110px; object-fit:cover; }
.ticker-card-body{ padding:.6rem .7rem; }
.ticker-card-body h4{ font-size:.74rem; font-weight:700; color:var(--ink); line-height:1.25; margin-bottom:.2rem; min-height:1.9em; }
.ticker-card-body .price{ font-family:var(--font-heading); font-weight:800; color:var(--orange); font-size:.82rem; }
@media (max-width:600px){
  .ticker-track{ animation-duration:38s; }
  .ticker-card{ width:120px; }
  .ticker-card img{ height:90px; }
}

/* ---------- Section heading ---------- */
.section-head{ text-align:center; max-width:640px; margin:0 auto 2.4rem; }
.eyebrow{ font-family:var(--font-heading); font-weight:700; font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; color:var(--orange); margin-bottom:.5rem; }
.section-title{ font-size:clamp(1.7rem,4vw,2.5rem); margin-bottom:.6rem; }
.section-title em{ font-style:normal; color:var(--navy); }
.section-dek{ color:var(--ink-faint); font-size:.98rem; }

/* ---------- Menu ---------- */
.menu-section{ padding-block:clamp(3rem,7vw,5rem); background:var(--white); }
.menu-cats-nav{ display:flex; flex-wrap:wrap; justify-content:center; gap:.55rem; margin-bottom:2.6rem; }
.cat-btn{
  font-family:var(--font-heading); font-weight:700; font-size:.82rem; padding:.6rem 1.2rem;
  border-radius:var(--radius-pill); border:2px solid rgba(var(--navy-rgb),.16); color:var(--navy);
  transition:all .2s ease;
}
.cat-btn:hover{ border-color:var(--orange); color:var(--orange); }
.cat-btn.is-active{ background:var(--navy); border-color:var(--navy); color:var(--white); }

.menu-category{ margin-bottom:3.4rem; }
.menu-category-title{ display:flex; align-items:center; gap:.7rem; font-size:1.35rem; margin-bottom:.4rem; color:var(--navy); }
.menu-category-title .wave{ color:var(--sky); }
.menu-category-note{ color:var(--ink-faint); font-size:.86rem; margin-bottom:1.4rem; }

/* Flexbox en vez de grid puro: con justify-content:center, la última
   fila incompleta queda centrada en vez de pegada a la izquierda con
   huecos vacíos (ver brief sección 8a). */
.menu-grid{ display:flex; flex-wrap:wrap; justify-content:center; gap:1.1rem; }
@media (min-width:900px){ .menu-grid{ gap:1.4rem; } }

.menu-card{
  background:var(--white); border:1px solid rgba(var(--navy-rgb),.08); border-radius:var(--radius-lg);
  overflow:hidden; box-shadow:var(--shadow-soft); transition:transform .28s ease, box-shadow .28s ease;
  display:flex; flex-direction:column; position:relative;
  flex:0 0 calc(50% - .55rem);
}
@media (min-width:900px){ .menu-card{ flex-basis:calc(25% - 1.05rem); } }
.menu-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-lift); }
.menu-thumb{ width:100%; aspect-ratio:1/1; overflow:hidden; background:var(--ice); }
.menu-thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.menu-card:hover .menu-thumb img{ transform:scale(1.08); }
.menu-badge{
  position:absolute; top:10px; left:10px; z-index:2; background:var(--orange); color:#fff;
  font-family:var(--font-heading); font-weight:700; font-size:.65rem; padding:.28rem .6rem; border-radius:var(--radius-pill);
  box-shadow:0 3px 10px rgba(0,0,0,.2);
}
.img-ref{
  text-align:center; font-size:.62rem; color:#aab2c0; font-style:italic;
  margin:0; padding:.3rem 0; background:var(--ice);
}
.menu-body{ padding:.9rem 1rem 1.1rem; display:flex; flex-direction:column; gap:.4rem; flex:1; }
.menu-name{ font-size:.95rem; font-weight:700; color:var(--ink); line-height:1.25; }
.menu-sub{ font-size:.72rem; font-weight:700; color:var(--sky); text-transform:uppercase; letter-spacing:.04em; }
.menu-desc{ font-size:.78rem; color:var(--ink-faint); line-height:1.45; flex:1; }
.menu-price{ font-family:var(--font-heading); font-weight:800; color:var(--orange); font-size:1.02rem; }
.menu-price .from{ font-size:.68rem; font-weight:700; color:var(--ink-faint); text-transform:uppercase; margin-right:.25rem; }
.menu-select{
  width:100%; border:1px solid rgba(var(--navy-rgb),.18); border-radius:var(--radius-sm);
  padding:.5rem .6rem; font-family:var(--font-body); font-size:.78rem; color:var(--ink); background:var(--ice);
}
.menu-select:focus{ outline:2px solid var(--sky); outline-offset:1px; }
.menu-actions{ display:flex; align-items:center; justify-content:space-between; gap:.5rem; margin-top:.2rem; }
.btn-add{
  width:100%; background:var(--navy); color:#fff; font-family:var(--font-heading); font-weight:700;
  font-size:.8rem; padding:.65rem; border-radius:var(--radius-sm); transition:background .2s ease, transform .15s ease;
}
.btn-add:hover{ background:var(--orange); transform:translateY(-1px); }
.btn-inquire{
  width:100%; display:block; text-align:center; background:rgba(var(--orange-rgb),.12); color:var(--orange-dark);
  font-family:var(--font-heading); font-weight:700; font-size:.8rem; padding:.65rem; border-radius:var(--radius-sm);
  transition:background .2s ease;
}
.btn-inquire:hover{ background:rgba(var(--orange-rgb),.22); }

/* ---------- Catering ---------- */
.catering-section{ background:var(--ice); padding-block:clamp(3rem,7vw,5rem); }
.catering-grid{ display:grid; gap:2.4rem; align-items:center; }
@media (min-width:960px){ .catering-grid{ grid-template-columns:1fr 1fr; } }
.catering-photo{ border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-soft); }
.catering-photo img{ width:100%; height:100%; object-fit:cover; }
.catering-form{
  background:var(--white); border-radius:var(--radius-lg); padding:1.8rem 1.6rem; box-shadow:var(--shadow-soft);
  display:flex; flex-direction:column; gap:1.1rem;
}
.form-row{ display:grid; grid-template-columns:1fr; gap:1.1rem; }
@media (min-width:640px){ .form-row{ grid-template-columns:1fr 1fr; } }
.form-field{ display:flex; flex-direction:column; gap:.4rem; }
.form-field label{ font-size:.84rem; font-weight:700; color:var(--ink); font-family:var(--font-heading); }
.form-field input, .form-field select, .form-field textarea{
  width:100%; border:1px solid rgba(var(--navy-rgb),.18); border-radius:var(--radius-sm);
  padding:.75rem .9rem; font-family:inherit; font-size:.92rem; color:var(--ink); background:var(--ice); min-height:46px;
}
.form-field textarea{ min-height:auto; resize:vertical; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus{ outline:2px solid var(--sky); outline-offset:1px; }

/* ---------- Map ---------- */
.map-section{ padding-block:clamp(2.6rem,6vw,4rem); text-align:center; }
.map-frame{ max-width:900px; margin:1.6rem auto 0; border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-soft); aspect-ratio:16/9; }
.map-frame iframe{ width:100%; height:100%; border:0; display:block; }

/* ---------- Reseñas ---------- */
.reviews-section{ padding-block:clamp(3rem,7vw,5rem); text-align:center; }
.reviews-section .eyebrow{ color:var(--sky); }
.reviews-section .section-title{ color:var(--white); }
.reviews-section .section-title em{ color:var(--sky); font-style:normal; }
.google-badge{
  display:inline-flex; flex-direction:column; align-items:center; gap:.2rem;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); border-radius:var(--radius-lg);
  padding:1.1rem 1.8rem; margin-bottom:2.2rem; backdrop-filter:blur(4px);
}
.google-logo-text{ font-family:var(--font-heading); font-weight:700; font-size:1.3rem; }
.google-rating{ color:#FBBC05; font-size:1.1rem; letter-spacing:.08em; }
.google-rating strong{ color:var(--white); font-family:var(--font-heading); font-size:1.3rem; margin-left:.3rem; }
.google-badge p{ font-size:.78rem; color:rgba(255,255,255,.75); margin:.2rem 0 0; }

.reviews-grid{ display:flex; flex-wrap:wrap; justify-content:center; gap:1.2rem; }
.review-card{
  flex:0 0 calc(50% - .6rem); max-width:320px; background:var(--white); border-radius:var(--radius-lg);
  padding:1.4rem 1.3rem; text-align:left; box-shadow:var(--shadow-soft);
  transition:transform .25s ease, box-shadow .25s ease;
}
.review-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-lift); }
.review-stars{ color:#FBBC05; font-size:.95rem; letter-spacing:.08em; margin-bottom:.5rem; }
.review-name{ font-family:var(--font-heading); font-weight:700; font-size:.9rem; color:var(--navy); margin-bottom:.35rem; }
.review-text{ font-size:.84rem; color:var(--ink-soft); line-height:1.55; }
@media (min-width:640px){ .review-card{ flex-basis:calc(33.333% - .8rem); } }
@media (min-width:960px){ .review-card{ flex-basis:calc(20% - .96rem); } }

/* ---------- Cart drawer ---------- */
.cart-overlay{ position:fixed; inset:0; background:rgba(10,20,40,.5); backdrop-filter:blur(2px); z-index:400; opacity:0; pointer-events:none; transition:opacity .25s ease; }
.cart-overlay.is-open{ opacity:1; pointer-events:auto; }
.cart-drawer{
  position:fixed; top:0; right:0; height:100%; width:min(420px,92vw); background:var(--white); z-index:401;
  box-shadow:-16px 0 40px rgba(0,0,0,.2); transform:translateX(100%); transition:transform .3s ease;
  display:flex; flex-direction:column;
}
.cart-drawer.is-open{ transform:translateX(0); }
.cart-header{ display:flex; align-items:center; justify-content:space-between; padding:1.2rem 1.4rem; border-bottom:1px solid rgba(var(--navy-rgb),.08); }
.cart-header h3{ font-size:1.15rem; }
.cart-close{ width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--ink-faint); }
.cart-close:hover{ background:var(--ice); }
.cart-items{ flex:1; overflow-y:auto; padding:1rem 1.4rem; }
.cart-empty{ text-align:center; color:var(--ink-faint); padding:3rem 1rem; font-size:.9rem; }
.cart-item{ display:flex; gap:.8rem; padding:.9rem 0; border-bottom:1px solid rgba(var(--navy-rgb),.06); }
.cart-item img{ width:56px; height:56px; border-radius:var(--radius-sm); object-fit:cover; flex-shrink:0; }
.cart-item-info{ flex:1; }
.cart-item-name{ font-weight:700; font-size:.86rem; }
.cart-item-price{ color:var(--orange); font-weight:700; font-size:.82rem; }
.cart-item-controls{ display:flex; align-items:center; gap:.5rem; margin-top:.35rem; }
.qty-btn{ width:24px; height:24px; border-radius:50%; background:var(--ice); display:flex; align-items:center; justify-content:center; font-weight:800; color:var(--navy); }
.qty-btn:hover{ background:rgba(var(--orange-rgb),.15); }
.cart-remove{ margin-left:auto; color:#c0392b; font-size:.75rem; font-weight:700; }
.cart-footer{ padding:1.2rem 1.4rem 1.5rem; border-top:1px solid rgba(var(--navy-rgb),.08); }
.cart-total-row{ display:flex; justify-content:space-between; font-weight:800; font-size:1.05rem; margin-bottom:1rem; }
.cart-checkout{ width:100%; }

/* ---------- WhatsApp float ---------- */
.wa-float{
  position:fixed; right:1rem; bottom:1rem; z-index:150; width:58px; height:58px; border-radius:50%;
  background:#25D366; color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow-lift);
  transition:transform .15s ease;
}
.wa-float:hover{ transform:translateY(-2px) scale(1.06); }
.wa-float svg{ width:30px; height:30px; }

/* ---------- Footer ---------- */
.site-footer{ padding-block:3rem 2rem; text-align:center; }
.footer-inner{ display:flex; flex-direction:column; align-items:center; gap:.7rem; }
.footer-logo img{ height:52px; width:auto; margin-bottom:.4rem; }
.footer-info{ font-size:.88rem; opacity:.9; }
.footer-socials{ display:flex; gap:.7rem; margin-top:.6rem; }
.footer-socials a{ width:40px; height:40px; border-radius:50%; background:rgba(255,255,255,.14); display:flex; align-items:center; justify-content:center; transition:background .15s ease, transform .15s ease; }
.footer-socials a:hover{ background:rgba(var(--orange-rgb),.85); transform:translateY(-2px); }
.footer-socials svg{ width:18px; height:18px; }
.footer-links{ display:flex; flex-wrap:wrap; justify-content:center; gap:.5rem 1.1rem; margin-top:1rem; font-size:.82rem; }
.footer-links a{ text-decoration:underline; text-underline-offset:2px; opacity:.85; }
.footer-links a:hover{ opacity:1; }
.footer-copy{ font-size:.78rem; opacity:.65; margin-top:1.2rem; }
.footer-credit{ font-size:.76rem; opacity:.75; }
.footer-credit a{ text-decoration:underline; text-underline-offset:2px; font-weight:700; }

@media (min-width:1280px){ .hero-title{ font-size:4rem; } }
