:root{
  --font-body: 'Nunito', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  --font-head: 'Playfair Display', 'Nunito', Georgia, serif;

  --bg:#f7faff;
  --card:#ffffff;
  --text:#0b1220;
  --muted:#45536b;
  --line:#d8e2f0;

  --primary:#0b3d91;  /* winter blue */
  --primary-2:#062a63;
  --accent:#c9a227;   /* gold */
  --accent-2:#8a6c12;

  --radius:16px;
  --shadow:0 8px 28px rgba(5, 18, 41, .10);
  --shadowS:0 6px 18px rgba(5, 18, 41, .10);
  --shadow2:0 10px 35px rgba(5, 18, 41, .14);
  --max:1100px;
  --headerH:78px;
  --focus:0 0 0 4px rgba(11,61,145,.20);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: var(--font-body);
  color:var(--text);
  background:
    radial-gradient(900px 400px at 10% -10%, rgba(11,61,145,.16), transparent 60%),
    radial-gradient(700px 420px at 95% 10%, rgba(201,162,39,.10), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,0)),
    var(--bg);
  line-height:1.5;
}
a{color:var(--primary); text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%; display:block}
.container{width:min(var(--max), calc(100% - 2rem)); margin-inline:auto}
.site-header{
  position:sticky; top:0; z-index:40;
  background:rgba(255,255,255,.88);
  backdrop-filter:saturate(1.2) blur(10px);
  border-bottom:1px solid var(--line);
}
.header__inner{display:flex; align-items:center; justify-content:space-between; min-height:var(--headerH); gap:1rem;}
.brand{display:flex; gap:.75rem; align-items:center}
.brand__logo{
  width:54px; height:54px;
  object-fit:contain;
  border-radius:14px;
  background:#fff;
  border:3px solid var(--line);
  box-shadow: var(--shadow)
}
.brand__name{display:block; font-weight:800; letter-spacing:.2px}
.brand__tag{display:block; font-size:.85rem; color:var(--muted)}
.brand__text{display:flex; flex-direction:column}
.site-nav{display:flex; align-items:center; gap:.15rem; flex-wrap:wrap; justify-content:flex-end}
.nav-toggle{
  display:none;
  width:44px; height:44px;
  border-radius:12px;
  border:3px solid var(--line);
  background:#fff;
  box-shadow: var(--shadow);
}
.nav-toggle:focus{outline:none; box-shadow: var(--focus), var(--shadow)}
.nav-toggle__bar{display:block; height:2px; background:var(--text); margin:6px 10px; border-radius:2px}
@media (max-width: 980px){
  .nav-toggle{display:inline-block}
  .site-nav{
    position:fixed;
    inset: var(--headerH) 0 auto 0;
    background:rgba(255,255,255,.97);
    border-bottom:1px solid var(--line);
    padding:1rem;
    display:none;
    max-height:70vh;
    overflow:auto;
  }
  .site-nav.is-open{display:flex; flex-direction:column; align-items:flex-start}
  .nav__link{width:100%}
}
.hero{padding: 2.3rem 0 1.2rem;}
.hero__grid{display:grid; gap:1.2rem; grid-template-columns: 1.15fr .85fr; align-items:stretch;}
@media (max-width: 900px){.hero__grid{grid-template-columns:1fr}}
.card{background:var(--card); border:3px solid var(--line); border-radius:var(--radius); box-shadow: var(--shadow); overflow:hidden;}
.card.pad{padding:1.2rem}
.kicker{
  display:inline-flex; gap:.5rem; align-items:center;
  padding:.35rem .6rem;
  border:1px solid rgba(11,61,145,.18);
  background:rgba(11,61,145,.06);
  border-radius:14px;
  font-size:.9rem;
  color:var(--primary-2);
}
h1{font-size: clamp(1.6rem, 2.5vw + 1rem, 2.6rem); line-height:1.15; margin:.7rem 0}
h2{font-size: clamp(1.25rem, 1.3vw + 1rem, 1.7rem); margin:0 0 .6rem}
.h6{font-size:1rem; margin:0 0 .6rem}
p{margin:.6rem 0}
.muted{color:var(--muted)}
.small{font-size:.92rem}
.btn-row{display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1rem}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:.55rem;
  padding:.75rem 1rem;
  border-radius:14px;
  border:4px solid rgba(11,61,145,.22);
  background:rgba(11,61,145,.10);
  color:var(--primary-2);
  font-weight:700;
  box-shadow: var(--shadowS);
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease, background-color .15s ease;
}
.btn:hover{background:rgba(11,61,145,.16); text-decoration:none; transform: translateY(-2px); filter:brightness(1.06); box-shadow: var(--shadow2); border-color: rgba(11,61,145,.62)}
.btn.primary:hover{filter:brightness(1.03)}
.btn.gold{
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  color:#1a1303;
  border-color:rgba(201,162,39,.55);
}
.hero__media{position:relative; height:100%; min-height:320px;}
.hero__media img{width:100%; height:100%; object-fit:cover;}
.badge{
  position:absolute; left:1rem; bottom:1rem;
  background:rgba(255,255,255,.92);
  border:3px solid var(--line);
  border-radius:14px;
  padding:.4rem .7rem;
  font-weight:750;
  box-shadow: var(--shadow);
}
.section{padding: 1.4rem 0}
.grid2{display:grid; gap:1rem; grid-template-columns:1fr 1fr}
@media (max-width: 900px){.grid2{grid-template-columns:1fr}}
.callout{
  border-left:4px solid rgba(201,162,39,.95);
  padding:.9rem 1rem;
  background:rgba(201,162,39,.08);
  border-radius: 12px;
}
hr.sep{border:0; border-top:1px solid var(--line); margin:1.2rem 0}
.gallery{display:block;}
/* JS galleries render their own grid inside */
.gallery[data-manifest] {display:block;}

.gallery a{display:block; border-radius:14px; overflow:hidden; border:3px solid var(--line); background:#fff; box-shadow: var(--shadow);}
.gallery img{width:100%; height:220px; object-fit:cover}
.lightbox{
  position:fixed; inset:0;
  background:rgba(0,0,0,.78);
  display:none; align-items:center; justify-content:center;
  padding:1rem;
  z-index:100;
}
.lightbox.is-open{display:flex}
.lightbox__inner{
  width:min(1100px, 100%);
  background:#0b1220;
  border-radius:18px;
  overflow:hidden;
  box-shadow: 0 20px 70px rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.12);
}
.lightbox__img{width:100%; height:min(74vh, 700px); object-fit:contain; background:#0b1220}
.lightbox__bar{display:flex; align-items:center; justify-content:space-between; padding:.6rem .9rem; color:#e9f0ff; font-size:.95rem;}
.lightbox__btn{
  color:#e9f0ff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  padding:.45rem .7rem;
  cursor:pointer;
}
.lightbox__btn:hover{background:rgba(255,255,255,.12)}
.form{display:grid; gap:.7rem;}
.field{display:grid; gap:.35rem;}
label{font-weight:750}
input, textarea, select{
  border-radius:14px;
  border:3px solid var(--line);
  padding:.75rem .8rem;
  font:inherit;
  background:#fff;
}
input:focus, textarea:focus, select:focus{outline:none; box-shadow: var(--focus); border-color: rgba(11,61,145,.35);}
textarea{min-height:140px; resize:vertical}
.form__row{display:grid; gap:.7rem; grid-template-columns:1fr 1fr;}
@media (max-width: 720px){.form__row{grid-template-columns:1fr}}
.notice{padding:.8rem .9rem; border-radius:14px; border:3px solid var(--line); background:rgba(11,61,145,.06);}
.notice.success{background:rgba(13,95,59,.10); border-color:rgba(13,95,59,.22);}
.notice.error{background:rgba(168,0,0,.08); border-color:rgba(168,0,0,.18);}
.kbd{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono","Courier New", monospace;
  font-size:.92rem;
  padding:.15rem .35rem;
  border:3px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.site-footer{border-top:1px solid var(--line); background:rgba(255,255,255,.88); margin-top:2rem;}
.footer__grid{display:grid; grid-template-columns: 1.2fr 1fr 1fr; gap:1rem; padding:1.2rem 0;}
@media (max-width: 900px){.footer__grid{grid-template-columns:1fr}}
.footer__bottom{display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; padding:.9rem 0; flex-wrap:wrap;}
@media (max-width: 700px){.footer__bottom{flex-direction:column}}
.hours, .links{list-style:none; padding:0; margin:0; display:grid; gap:.45rem}
.hours li{display:flex; justify-content:space-between; gap:1rem}


/* Social links */
.social{display:flex; gap:.45rem; align-items:center}
.social__link{
  width:40px; height:40px;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:12px;
  border:3px solid var(--line);
  background:#fff;
  box-shadow: var(--shadow);
}
.social__link:hover{background:rgba(11,61,145,.08); text-decoration:none}
.social__link svg{width:20px; height:20px; fill: var(--text)}
.social-footer{display:flex; flex-wrap:wrap; gap:.6rem; margin-top:.6rem}
.social-footer a{font-weight:650}
@media (max-width:980px){
  .social{display:none} /* keep header clean on mobile */
}


/* Team slider page */
.team-hero{display:grid; gap:1rem; grid-template-columns: 1fr; }
.team-slider{
  display:grid;
  gap:1rem;
  grid-template-columns: 1.2fr .8fr;
  align-items:start;
}
@media (max-width: 980px){
  .team-slider{grid-template-columns:1fr}
}
.team-slider__stage{
  position:relative;
  border-radius: var(--radius);
  overflow:hidden;
  border:3px solid var(--line);
  background:#fff;
  box-shadow: var(--shadow);
}
.team-slider__img{
  width:100%;
  height:min(64vh, 640px);
  object-fit:cover;
  display:block;
  transition: opacity .22s ease;
}
.team-slider__img.is-fading{opacity:.35}
.team-slider__overlay{
  position:absolute;
  inset:auto 0 0 0;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:.75rem;
  padding: .85rem .9rem;
  background: linear-gradient(180deg, rgba(11,18,32,0) 0%, rgba(11,18,32,.70) 55%, rgba(11,18,32,.82) 100%);
  color:#fff;
}
.team-slider__title{font-weight:850; font-size:1.1rem}
.team-slider__counter{font-size:.95rem; opacity:.9}
.team-controls{display:flex; gap:.5rem; flex-wrap:wrap}
.team-controls .btn{background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.22); color:#fff}
.team-controls .btn:hover{background:rgba(255,255,255,.20)}
.team-panel{background:var(--card); border:3px solid var(--line); border-radius:var(--radius); box-shadow: var(--shadow); padding:1rem}
.team-thumbs{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:.55rem;
}
@media (max-width: 520px){ .team-thumbs{grid-template-columns: repeat(2, 1fr)} }
.team-thumb{
  padding:0;
  border:3px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  cursor:pointer;
  box-shadow: var(--shadow);
}
.team-thumb img{width:100%; height:110px; object-fit:cover}
.team-thumb.is-active{outline:none; box-shadow: var(--focus), var(--shadow)}


/* Bold, high-impact polish */
body{font-size:17px}
h1_toggle{}
h1{font-weight:900; letter-spacing:-.3px}
h2{font-weight:850; letter-spacing:-.15px}
.brand__name{font-weight:900}
.kicker{font-weight:900}
.card.pad{position:relative}
.card.pad:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius: var(--radius);
  border:1px solid rgba(201,162,39,.20);
}
.btn{font-weight:850}
.btn.primary{letter-spacing:.2px}
.btn.gold{letter-spacing:.2px}
.hero__media{box-shadow: var(--shadow2)}
.hero__media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, rgba(11,61,145,.06), rgba(201,162,39,.06));
  pointer-events:none;
}
.stat-row{display:flex; flex-wrap:wrap; gap:.55rem; margin-top:.85rem}
.stat{
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.42rem .65rem;
  border-radius:14px;
  border:1px solid rgba(11,61,145,.16);
  background:rgba(255,255,255,.75);
  color:var(--primary-2);
  font-weight:850;
  box-shadow: var(--shadow);
}
.section-title{display:flex; align-items:center; justify-content:space-between; gap:1rem}
.section-title .muted{max-width:68ch}

/* Center logo highlight */
.center-logo{ text-align:center }
.center-logo__img{
  width:min(320px, 74vw);
  margin: .2rem auto 0;
  filter: drop-shadow(0 10px 22px rgba(5,18,41,.18));
}
@media (max-width:520px){
  .center-logo__img{width:min(240px, 82vw)}
}

/* Embedded widgets safety */
iframe{max-width:100%}

/* Libro.fm CTA */
.libro-wrap{display:flex; justify-content:center}
.libro-cta:hover{transform: translateY(-2px)}

/* Gallery grid */
.gallery__grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:.75rem;
  margin-top:1rem;
}
@media (max-width: 980px){ .gallery__grid{grid-template-columns: repeat(2, 1fr);} }
@media (max-width: 520px){ .gallery__grid{grid-template-columns: 1fr;} }
.gallery__item{
  margin:0;
  border-radius: 16px;
  overflow:hidden;
  border:3px solid var(--line);
  background:#fff;
  box-shadow: var(--shadow);
}
.gallery__item img{
  width:100%;
  height: 220px;
  object-fit: cover;
  display:block;
}


h1,h2,h3{font-family: var(--font-head); letter-spacing:.2px}

/* Accessibility + search */
.skip-link{position:absolute;left:-9999px;top:10px;padding:.6rem .8rem;background:#fff;border:3px solid var(--line);border-radius:12px;box-shadow:var(--shadow);z-index:999}
.skip-link:focus{left:10px;outline:none;box-shadow:var(--focus),var(--shadow)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header__navwrap{display:flex;align-items:center;gap:.6rem}
.kbd{display:inline-block;border:3px solid var(--line);border-bottom-color:#b7c6dd;border-radius:8px;padding:.1rem .4rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;background:#fff}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media (max-width:980px){.grid-3{grid-template-columns:1fr}}

.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media (max-width:980px){.grid-2{grid-template-columns:1fr}}

.menu-figure{margin:0}
.menu-figure img{width:100%;height:auto;border-radius:16px;border:3px solid var(--line);box-shadow:var(--shadow)}
.lightbox-link{display:block}



/* Winter tab buttons (navigation) */
.site-nav .nav__link{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.6rem .85rem;
  border-radius:14px;
  font-size:.95rem;
  font-weight:800;
  letter-spacing:.2px;
  white-space:nowrap;
  border:3px solid var(--line);
  box-shadow: var(--shadowS);
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.site-nav .nav__link:hover{
  transform: translateY(-1px);
  text-decoration:none;
  box-shadow: var(--shadow2);
  box-shadow: var(--shadow2);
}
.site-nav .nav__link:active{ transform: translateY(0); }
.site-nav .nav__link:focus{
  outline:none;
  box-shadow: var(--focus), var(--shadowS);
}
.site-nav .nav__link.is-active{
  color:#fff;
  border-color: transparent;
  filter: saturate(1.05) contrast(1.02);
}

/* Cycle winter colors across links */
.site-nav .nav__link:nth-of-type(6n+1){ background: linear-gradient(135deg,#e6f4ff,#ffffff); border-color:#bfe3ff; color:#0b1220; }
.site-nav .nav__link:nth-of-type(6n+1):hover{ filter: brightness(.98) saturate(1.08); }
.site-nav .nav__link:nth-of-type(6n+1).is-active{ background: linear-gradient(135deg,var(--primary),#3aa0ff); }

.site-nav .nav__link:nth-of-type(6n+2){ background: linear-gradient(135deg,#fff7da,#ffffff); border-color:rgba(201,162,39,.45); color:#0b1220; }
.site-nav .nav__link:nth-of-type(6n+2):hover{ filter: brightness(.98) saturate(1.08); }
.site-nav .nav__link:nth-of-type(6n+2).is-active{ background: linear-gradient(135deg,var(--accent),#f2cf62); color:#0b1220; }

.site-nav .nav__link:nth-of-type(6n+3){ background: linear-gradient(135deg,#f1edff,#ffffff); border-color:rgba(105,72,191,.35); color:#0b1220; }
.site-nav .nav__link:nth-of-type(6n+3):hover{ filter: brightness(.98) saturate(1.08); }
.site-nav .nav__link:nth-of-type(6n+3).is-active{ background: linear-gradient(135deg,#5133a5,#8a6bff); }

.site-nav .nav__link:nth-of-type(6n+4){ background: linear-gradient(135deg,#e9fff4,#ffffff); border-color:rgba(15,107,74,.35); color:#0b1220; }
.site-nav .nav__link:nth-of-type(6n+4):hover{ filter: brightness(.98) saturate(1.08); }
.site-nav .nav__link:nth-of-type(6n+4).is-active{ background: linear-gradient(135deg,#0f6b4a,#28b57f); }

.site-nav .nav__link:nth-of-type(6n+5){ background: linear-gradient(135deg,#ffe9ef,#ffffff); border-color:rgba(179,18,55,.35); color:#0b1220; }
.site-nav .nav__link:nth-of-type(6n+5):hover{ filter: brightness(.98) saturate(1.08); }
.site-nav .nav__link:nth-of-type(6n+5).is-active{ background: linear-gradient(135deg,#b31237,#ff4b73); }

.site-nav .nav__link:nth-of-type(6n+6){ background: linear-gradient(135deg,#eef5ff,#ffffff); border-color:rgba(107,127,156,.35); color:#0b1220; }
.site-nav .nav__link:nth-of-type(6n+6):hover{ filter: brightness(.98) saturate(1.08); }
.site-nav .nav__link:nth-of-type(6n+6).is-active{ background: linear-gradient(135deg,#1f3554,#3a5e93); }

@media (prefers-reduced-motion: reduce){
  .site-nav .nav__link{ transition:none; }
  .site-nav .nav__link:hover{ transform:none; }
}

/* Homepage logo directly under tabs */
.section--logo-top{ padding: .9rem 0 .35rem; }
@media (max-width: 520px){
  .section--logo-top{ padding: .75rem 0 .25rem; }
}

.btn:focus{outline:none; box-shadow: var(--focus), var(--shadow2)}

/* Small horizontal logo on homepage */
#home-logo .center-logo img{
  max-width: 240px;
  width: 100%;
  height: auto;
}
@media (max-width:520px){
  #home-logo .center-logo img{ max-width: 200px; }
}

/* Responsive embeds (Jotform, widgets) */
.embed-frame{width:100%;}
.ig-feed .ig-note{background:rgba(11,61,145,.06); border:3px solid rgba(11,61,145,.14); padding:12px 14px; border-radius:14px; margin-bottom:12px;}
.ig-widget-placeholder{border:3px dashed rgba(105,72,191,.25); padding:14px; border-radius:14px;}


/* Social brand icons (header + footer) */
.social, .social-icons{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
}
.social__link, .social-icon{
  width:44px;
  height:44px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:3px solid rgba(17, 24, 39, .10);
  box-shadow: var(--shadow1);
  text-decoration:none;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.social__link svg, .social-icon svg{
  width:20px;
  height:20px;
  fill:#fff;
}

/* Facebook */
.social__link.facebook, .social-icon.facebook{
  background:#1877F2;
  border-color: rgba(24, 119, 242, .35);
}
.social__link.facebook:hover, .social-icon.facebook:hover{
  filter: brightness(1.05);
  transform: translateY(-1px);
  box-shadow: var(--shadow2);
}

/* Instagram */
.social__link.instagram, .social-icon.instagram{
  background: radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  border-color: rgba(214, 36, 159, .28);
}
.social__link.instagram:hover, .social-icon.instagram:hover{
  filter: saturate(1.05) brightness(1.03);
  transform: translateY(-1px);
  box-shadow: var(--shadow2);
}

/* TikTok */
.social__link.tiktok, .social-icon.tiktok{
  background:#0b0b0b;
  border-color: rgba(0,0,0,.30);
  box-shadow: 0 10px 22px rgba(0,0,0,.18);
}
.social__link.tiktok:hover, .social-icon.tiktok:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(0,0,0,.22);
}

/* Footer social row */
.footer-social{
  padding: 14px 0 10px 0;
  border-bottom: 2px solid rgba(17, 24, 39, .08);
  margin-bottom: 10px;
}
.footer-social__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.footer-social__text{
  display:flex;
  flex-direction:column;
  gap:2px;
}
@media (max-width: 520px){
  .footer-social__inner{justify-content:center; text-align:center;}
}

/* Instagram Spotlight */
.spotlight-media{
  border-radius:18px;
  overflow:hidden;
  border:3px solid rgba(11,61,145,.14);
  background:#fff;
}
.spotlight-media img{
  width:100%;
  height:auto;
  display:block;
}


/* Menu page galleries (menu pages should be readable, not cropped) */
.gallery--pages .gallery__grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 980px){ .gallery--pages .gallery__grid{ grid-template-columns: 1fr; } }
.gallery--pages .gallery__item img{
  height: 520px;
  object-fit: contain;
  background:#ffffff;
}
.gallery__link{display:block; text-decoration:none; color:inherit; border:0 !important; box-shadow:none !important; border-radius:0 !important; overflow:visible !important;}
.gallery__link:focus{outline:none; box-shadow: var(--focus);}


/* Footer logo */
.footer-logo{
  width:100%;
  display:flex;
  justify-content:center;
  margin: .25rem 0 .5rem;
}
.footer-logo img{
  max-width: 220px;
  width: 100%;
  height: auto;
  opacity: .95;
  filter: drop-shadow(0 10px 22px rgba(5,18,41,.12));
}


/* Instagram embed box */
.ig-embed-box{
  width:100%;
  border-radius:18px;
  border:3px solid rgba(17, 24, 39, .10);
  background: rgba(255,255,255,.9);
  overflow:hidden;
  padding: 14px;
}
.ig-embed-placeholder{
  display:flex;
  gap:12px;
  align-items:center;
  padding: 14px;
  border-radius: 14px;
  background: rgba(11,61,145,.06);
  border:3px dashed rgba(11,61,145,.18);
}
.ig-embed-icon{
  width:46px;
  height:46px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  background: rgba(214, 36, 159, .10);
  border:3px solid rgba(214, 36, 159, .18);
}

/* Social pills under Instagram */
.social-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: 12px;
}
.social-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 14px;
  border-radius: 999px;
  font-weight: 800;
  text-decoration:none;
  border:3px solid rgba(17, 24, 39, .10);
  box-shadow: var(--shadow1);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.social-pill:hover{
  transform: translateY(-1px);
  box-shadow: var(--shadow2);
}
.social-pill.facebook{ background:#1877F2; color:#fff; border-color: rgba(24, 119, 242, .35); }
.social-pill.instagram{
  background: radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  color:#fff; border-color: rgba(214, 36, 159, .28);
}
.social-pill.tiktok{ background:#0b0b0b; color:#fff; border-color: rgba(0,0,0,.30); }


/* Readable content blocks */
.prose p{ line-height:1.75; margin: 0 0 1rem 0; }
.prose p:last-child{ margin-bottom:0; }



/* Team gallery: make images fit cleanly */
.team-gallery, .gallery, .gallery-wrap{
  width: 100%;
}

.team-gallery .viewer, .gallery-viewer, .gallery .viewer{
  width: 100%;
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
  border: 3px solid rgba(17, 24, 39, .10);
}

.team-gallery .viewer img,
.gallery-viewer img,
.gallery .viewer img,
.gallery-main img{
  width: 100%;
  height: auto;
  display: block;
  max-height: 560px;
  object-fit: contain;
  background: #fff;
}

/* Thumbnails */
.team-gallery .thumbs,
.gallery-thumbs,
.gallery .thumbs{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.team-gallery .thumbs a,
.gallery-thumbs a,
.gallery .thumbs a{
  border-radius: 14px;
  overflow: hidden;
  border: 3px solid rgba(17, 24, 39, .10);
  background: #fff;
  box-shadow: var(--shadow1);
  transition: transform .18s ease, box-shadow .18s ease;
}

.team-gallery .thumbs a:hover,
.gallery-thumbs a:hover,
.gallery .thumbs a:hover{
  transform: translateY(-1px);
  box-shadow: var(--shadow2);
}

.team-gallery .thumbs img,
.gallery-thumbs img,
.gallery .thumbs img{
  width: 100%;
  height: 92px;
  object-fit: cover;
  display: block;
}

@media (max-width: 520px){
  .team-gallery .viewer img,
  .gallery-viewer img,
  .gallery .viewer img,
  .gallery-main img{
    max-height: 420px;
  }
  .team-gallery .thumbs img,
  .gallery-thumbs img,
  .gallery .thumbs img{
    height: 80px;
  }
}



/* Team gallery image fit (show full photo cleanly) */
.team-slider__stage{background: #fff;}
.team-slider__img{
  object-fit: contain !important;
  background: rgba(11,61,145,.05);
}



/* Holiday accents (festive, high contrast) */
:root{
  --holiday-red:#b91c1c;
  --holiday-green:#166534;
  --holiday-gold:#b45309;
}

/* Add more color to typography */
h1{ color: var(--holiday-green); }
.section-title h2, h2{ color: var(--primary-2); }
.kicker{
  border: 2px solid rgba(185, 28, 28, .22);
  background: rgba(185, 28, 28, .06);
  color: var(--holiday-red);
}

/* Inline links + colored text */
.inline-link{ font-weight: 900; text-decoration: none; border-bottom: 2px solid rgba(180, 83, 9, .25); }
.inline-link:hover{ border-bottom-color: rgba(22, 101, 52, .45); text-decoration:none; filter: brightness(1.02); }

.text-red{ color: var(--holiday-red); }
.text-green{ color: var(--holiday-green); }
.text-gold{ color: var(--holiday-gold); }

/* Quick links row */
.quicklinks{
  margin-top: .55rem;
  padding: .65rem .85rem;
  border-radius: 14px;
  background: linear-gradient(90deg, rgba(22, 101, 52, .05), rgba(185, 28, 28, .05), rgba(180, 83, 9, .05));
  border: 2px solid rgba(17, 24, 39, .08);
}

/* Find-us handle */
.findus-handle{ font-weight: 800; font-size: .95em; }
.handle-link{ border-bottom-color: rgba(214, 36, 159, .25); }

/* Make nav tabs a bit more festive */
.nav-tabs .btn,
.tabs .btn,
.site-nav .btn{
  box-shadow: var(--shadow1);
}



/* Center grids when a row has fewer cards (e.g., 2-up inside a 3-col grid) */
.grid-center{
  justify-content: center;
}

/* LightWidget embed tweaks */
.lightwidget-widget{
  display:block;
  margin: 0 auto;
  max-width: 100%;
}
@media (max-width: 520px){
  .lightwidget-widget{ min-height: 420px !important; }
}



/* Stat highlight icons (holiday-style) */
.stat{
  border-radius:14px !important;
  padding:.5rem .7rem !important;
  border:2px solid rgba(17,24,39,.10) !important;
  background: linear-gradient(90deg, rgba(22, 101, 52, .05), rgba(185, 28, 28, .05), rgba(180, 83, 9, .05)) !important;
}
.stat__icon{
  width:34px; height:34px;
  border-radius:12px;
  display:inline-flex; align-items:center; justify-content:center;
  border:2px solid rgba(17,24,39,.10);
  box-shadow: var(--shadowS);
}
.stat__icon svg{ width:18px; height:18px; }
.stat__icon--coffee{ background: rgba(22, 101, 52, .10); color: var(--holiday-green); }
.stat__icon--plate{ background: rgba(180, 83, 9, .10); color: var(--holiday-gold); }
.stat__icon--book{ background: rgba(185, 28, 28, .10); color: var(--holiday-red); }
.stat__icon--pickup{ background: rgba(11, 61, 145, .08); color: var(--primary-2); }



/* Stronger hover for nav tabs + buttons */
.site-nav .nav__link:hover{
  transform: translateY(-2px);
  filter: brightness(1.06);
}
.site-nav .nav__link:focus-visible,
.btn:focus-visible{
  outline: none;
  box-shadow: var(--focus), var(--shadow2);
}



/* Kicker icons (replace emoji with clean SVG) */
.kicker{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
}
.kicker__icon{
  width:30px;
  height:30px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:2px solid rgba(17,24,39,.10);
  box-shadow: var(--shadowS);
}
.kicker__icon svg{ width:16px; height:16px; }
.kicker__icon--pin{ background: rgba(185, 28, 28, .08); color: var(--holiday-red); }
.kicker__icon--mug{ background: rgba(22, 101, 52, .08); color: var(--holiday-green); }

/* Hashtag callout */
.callout{
  margin-top:.85rem;
  padding:.75rem .9rem;
  border-radius:14px;
  border:2px dashed rgba(185, 28, 28, .30);
  background: rgba(185, 28, 28, .06);
}
.hashtag{
  display:inline-block;
  font-weight: 1000;
  letter-spacing: .02em;
  padding: .12rem .45rem;
  border-radius: 999px;
  border: 2px solid rgba(22, 101, 52, .25);
  background: rgba(22, 101, 52, .06);
  color: var(--holiday-green);
}
