@import url("https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@700;800;900&family=Zilla+Slab:ital,wght@0,500;0,600;0,700;1,600&display=swap");

:root{
  --bs-navy:#202568;
  --bs-navy-deep:#141947;
  --bs-red:#ff2028;
  --bs-red-dark:#b81820;
  --bs-cream:#fff8ee;
  --bs-ink:#25273a;
  --bs-pale:#dfe4ff;
  --bs-pattern:url("/wp-content/uploads/blue-sky/food-doodle-pattern.png");
}

.bs-page,
.bs-page *{box-sizing:border-box}
.bs-page{
  width:100%;
  max-width:none;
  overflow:hidden;
  background:var(--bs-cream);
  color:var(--bs-ink);
  font-family:"Zilla Slab",Georgia,serif;
}
.bs-page.e-con,
.bs-page .e-con{
  --container-widget-width:100%;
  --widgets-spacing:0px;
  max-width:none;
}
.bs-page.e-con{
  --gap:0px;
  gap:0!important;
  padding:0!important;
}
.bs-page .elementor-widget{margin:0}
.bs-page .elementor-widget-heading,
.bs-page .elementor-widget-text-editor{
  width:100%;
  max-width:none;
  overflow:visible;
}
.bs-page .elementor-heading-title,
.bs-page .elementor-widget-text-editor,
.bs-page .elementor-widget-text-editor p{
  overflow:visible;
  color:inherit;
  font-family:inherit;
  word-break:normal;
  overflow-wrap:normal;
}
.bs-page .elementor-widget-text-editor p{margin:0 0 .9em}
.bs-page .elementor-widget-text-editor p:last-child{margin-bottom:0}
.bs-page .elementor-widget-image img{display:block}

.bs-pattern{position:relative;isolation:isolate}
.bs-pattern:before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background-image:var(--bs-pattern);
  background-position:center top;
  background-repeat:repeat;
  background-size:420px auto;
  opacity:.42;
  pointer-events:none;
}
.bs-pattern-red{background:var(--bs-red);color:#fff}
.bs-pattern-navy{background:var(--bs-navy);color:#fff}
.bs-pattern-red:before{filter:brightness(0) invert(1);opacity:.22}
.bs-pattern-navy:before{opacity:.28}

.bs-system-header.e-con{
  position:absolute!important;
  z-index:50;
  top:22px;
  left:50%;
  display:flex!important;
  width:min(92%,1240px)!important;
  max-width:1240px!important;
  min-height:76px;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:0!important;
  transform:translateX(-50%);
}
.bs-system-logo{width:142px!important;max-width:142px!important;flex:0 0 142px!important}
.bs-system-logo img{width:142px!important;height:78px!important;object-fit:contain}
.bs-system-nav.e-con{
  display:flex!important;
  width:auto!important;
  max-width:none!important;
  flex:0 0 auto!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:22px!important;
  padding:0!important;
}
.bs-system-nav .elementor-widget-button{width:auto!important;max-width:none!important;flex:0 0 auto!important}
.bs-system-nav .elementor-button{
  position:relative;
  z-index:1;
  padding:7px 5px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
  font:800 16px/1 "Zilla Slab",Georgia,serif!important;
  letter-spacing:.055em;
  text-shadow:0 2px 6px rgba(0,0,0,.45);
  text-transform:uppercase;
}
.bs-system-nav .is-current .elementor-button:before,
.bs-system-nav .is-order .elementor-button:before,
.bs-marker-button .elementor-button:before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-6px -13px;
  background:url("/wp-content/uploads/blue-sky/order-marker.svg") center/100% 100% no-repeat;
}
.bs-mobile-toggle-widget{display:none}

.bs-hero.e-con{
  position:relative;
  display:grid!important;
  min-height:680px;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  align-items:stretch;
  padding:0!important;
  background:var(--bs-navy);
}
.bs-hero-copy.e-con{
  position:relative;
  z-index:2;
  display:flex!important;
  min-width:0;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:148px clamp(30px,6vw,92px) 92px!important;
}
.bs-hero-photo.e-con{
  position:relative;
  display:flex!important;
  min-height:680px;
  align-items:stretch!important;
  overflow:hidden;
  padding:0!important;
}
.bs-hero-image,
.bs-hero-image .elementor-widget-container,
.bs-hero-image .elementor-widget-image,
.bs-hero-image img{width:100%!important;height:100%!important}
.bs-hero-image{position:absolute!important;inset:0}
.bs-hero-image img{object-fit:cover!important;object-position:center!important}
.bs-eyebrow{
  margin-bottom:18px!important;
  color:#fff!important;
  font:800 clamp(15px,1.5vw,20px)/1 "Zilla Slab",Georgia,serif!important;
  letter-spacing:.16em!important;
  text-transform:uppercase;
}
.bs-display,
.bs-display .elementor-heading-title{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  color:#fff!important;
  font:900 clamp(58px,7.2vw,108px)/.82 "Roboto Slab",Georgia,serif!important;
  letter-spacing:-.035em!important;
  text-transform:uppercase;
  white-space:normal!important;
}
.bs-hero-body{
  width:min(100%,620px)!important;
  max-width:620px!important;
  margin-top:24px!important;
  color:#fff!important;
  font:600 clamp(17px,1.45vw,22px)/1.45 "Zilla Slab",Georgia,serif!important;
}
.bs-actions.e-con{
  display:flex!important;
  width:auto!important;
  max-width:none!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:22px!important;
  margin-top:34px!important;
  padding:0!important;
}
.bs-actions .elementor-widget-button{width:auto!important}
.bs-button .elementor-button{
  position:relative;
  min-height:48px;
  padding:13px 22px!important;
  border:3px solid #fff!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
  font:900 16px/1 "Roboto Slab",Georgia,serif!important;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.bs-button.is-solid .elementor-button{border-color:var(--bs-red)!important;background:var(--bs-red)!important}
.bs-button.is-navy .elementor-button{border-color:var(--bs-navy)!important;background:var(--bs-navy)!important}
.bs-marker-button .elementor-button{border:0!important;background:transparent!important}

.bs-section.e-con{
  display:flex!important;
  width:min(100%,1180px)!important;
  max-width:1180px!important;
  flex-direction:column!important;
  margin:0 auto!important;
  padding:clamp(74px,9vw,126px) clamp(22px,4vw,54px)!important;
}
.bs-section-wide.e-con{width:100%!important;max-width:none!important}
.bs-section-title,
.bs-section-title .elementor-heading-title{
  width:100%!important;
  max-width:none!important;
  color:var(--bs-navy)!important;
  font:900 clamp(42px,5.5vw,76px)/.88 "Roboto Slab",Georgia,serif!important;
  letter-spacing:-.025em!important;
  text-transform:uppercase;
  white-space:normal!important;
}
.bs-section-intro{
  width:min(100%,760px)!important;
  max-width:760px!important;
  margin-top:22px!important;
  color:#45485b!important;
  font:600 clamp(17px,1.5vw,21px)/1.55 "Zilla Slab",Georgia,serif!important;
}
.bs-grid.e-con{
  display:grid!important;
  width:100%!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px!important;
  margin-top:48px!important;
  padding:0!important;
}
.bs-grid-2.e-con{grid-template-columns:repeat(2,minmax(0,1fr))}
.bs-card.e-con{
  display:flex!important;
  min-width:0;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:14px!important;
  padding:30px!important;
  border:3px solid var(--bs-navy);
  background:#fff;
  box-shadow:8px 8px 0 rgba(32,37,104,.13);
}
.bs-card-title,
.bs-card-title .elementor-heading-title{
  color:var(--bs-navy)!important;
  font:900 clamp(25px,2.5vw,36px)/.95 "Roboto Slab",Georgia,serif!important;
  text-transform:uppercase;
}
.bs-card-copy{color:#4a4d60!important;font:600 16px/1.5 "Zilla Slab",Georgia,serif!important}
.bs-card .bs-button{margin-top:auto!important}
.bs-card .bs-button .elementor-button{border-color:var(--bs-red)!important;background:var(--bs-red)!important}

.bs-band.e-con{
  display:flex!important;
  width:100%!important;
  max-width:none!important;
  flex-direction:column!important;
  align-items:center!important;
  padding:clamp(70px,8vw,104px) 24px!important;
  text-align:center;
}
.bs-band-title,
.bs-band-title .elementor-heading-title{
  color:#fff!important;
  font:900 clamp(46px,6vw,86px)/.86 "Roboto Slab",Georgia,serif!important;
  text-transform:uppercase;
}
.bs-band-copy{width:min(100%,720px)!important;margin-top:20px!important;color:#fff!important;font:600 19px/1.5 "Zilla Slab",Georgia,serif!important}

.bs-about-details.e-con{grid-template-columns:repeat(4,minmax(0,1fr))}
.bs-number{
  color:var(--bs-red)!important;
  font:900 18px/1 "Roboto Slab",Georgia,serif!important;
}

.bs-location-card.e-con{min-height:320px}
.bs-location-meta{color:#686b7c!important;font:600 15px/1.5 "Zilla Slab",Georgia,serif!important}
.bs-location-links.e-con{
  display:flex!important;
  width:100%!important;
  flex-direction:row!important;
  gap:12px!important;
  margin-top:auto!important;
  padding:0!important;
}

.bs-order-photo.e-con{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  overflow:hidden;
}
.bs-order-team{position:relative!important;z-index:2;width:min(88%,720px)!important;margin:0 auto!important}
.bs-order-team img{width:100%!important;height:auto!important;object-fit:contain!important;filter:drop-shadow(0 22px 20px rgba(55,0,0,.35))}

.bs-menu-list.e-con{gap:0!important;margin-top:34px!important}
.bs-menu-category.e-con{
  display:grid!important;
  grid-template-columns:minmax(210px,.8fr) minmax(0,1.7fr);
  gap:24px 50px!important;
  padding:34px 0!important;
  border-top:2px solid rgba(32,37,104,.2);
}
.bs-menu-category-title{grid-row:1/3}
.bs-menu-category-title,
.bs-menu-category-title .elementor-heading-title{
  color:var(--bs-navy)!important;
  font:900 clamp(28px,3.5vw,48px)/.9 "Roboto Slab",Georgia,serif!important;
  text-transform:uppercase;
}
.bs-menu-intro{color:var(--bs-red)!important;font:700 16px/1.4 "Zilla Slab",Georgia,serif!important}
.bs-menu-items .elementor-icon-list-items{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px 28px!important;
}
.bs-menu-items .elementor-icon-list-text{color:#343746!important;font:700 16px/1.3 "Zilla Slab",Georgia,serif!important}
.bs-menu-items .elementor-icon-list-icon i{color:var(--bs-red)!important;font-size:9px!important}

.bs-contact-layout.e-con{grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr)}
.bs-form-card{width:100%!important;padding:34px!important;border:3px solid var(--bs-navy);background:#fff;box-shadow:9px 9px 0 rgba(32,37,104,.14)}
.bs-form-card .elementor-field-label{color:var(--bs-navy)!important;font:800 15px/1 "Zilla Slab",Georgia,serif!important;text-transform:uppercase}
.bs-form-card .elementor-field{min-height:48px;border:2px solid #c8c9d2!important;border-radius:0!important;background:#fff!important;color:var(--bs-ink)!important;font:600 16px "Zilla Slab",Georgia,serif!important}
.bs-form-card textarea.elementor-field{min-height:150px}
.bs-form-card .elementor-button{min-height:50px;border-radius:0!important;background:var(--bs-red)!important;color:#fff!important;font:900 16px "Roboto Slab",Georgia,serif!important;text-transform:uppercase}
.bs-info-card.e-con{padding:34px!important}
.bs-info-title,
.bs-info-title .elementor-heading-title{color:#fff!important;font:900 34px/.95 "Roboto Slab",Georgia,serif!important;text-transform:uppercase}
.bs-info-copy{margin-top:18px!important;color:#fff!important;font:600 17px/1.5 "Zilla Slab",Georgia,serif!important}

.bs-detail-grid.e-con{grid-template-columns:repeat(3,minmax(0,1fr))}
.bs-hours .elementor-icon-list-items{display:grid!important;gap:10px!important}
.bs-hours .elementor-icon-list-text{color:#484b5d!important;font:600 16px/1.3 "Zilla Slab",Georgia,serif!important}

.bs-footer.e-con{
  display:flex!important;
  min-height:160px;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  padding:36px 24px!important;
  background:var(--bs-navy-deep);
  color:var(--bs-pale);
  text-align:center;
}
.bs-footer-logo{width:112px!important}
.bs-footer-logo img{width:112px!important;height:auto!important}
.bs-footer-copy{width:min(100%,620px)!important;color:var(--bs-pale)!important;font:600 14px/1.5 "Zilla Slab",Georgia,serif!important}

@media(max-width:900px){
  .bs-system-header.e-con{top:14px;width:94%!important}
  .bs-system-logo{width:104px!important;max-width:104px!important;flex-basis:104px!important}
  .bs-system-logo img{width:104px!important;height:62px!important}
  .bs-system-nav.e-con{gap:9px!important}
  .bs-system-nav .elementor-button{font-size:12px!important}
  .bs-hero.e-con{grid-template-columns:1fr 1fr}
  .bs-grid.e-con,.bs-about-details.e-con{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:767px){
  body.elementor-page .bs-page .bs-system-header.e-con{
    top:10px!important;
    left:12px!important;
    right:auto!important;
    width:calc(100vw - 24px)!important;
    min-width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    flex-basis:auto!important;
    min-height:54px;
    transform:none!important;
  }
  .bs-system-logo{width:80px!important;max-width:80px!important;flex-basis:80px!important}
  .bs-system-logo img{width:80px!important;height:52px!important}
  .bs-mobile-toggle-widget{
    position:absolute!important;
    z-index:52;
    top:5px!important;
    right:0!important;
    bottom:auto!important;
    left:auto!important;
    display:block!important;
    width:44px!important;
    height:42px;
  }
  .bs-mobile-toggle-widget .elementor-button{
    position:relative;
    display:flex;
    width:44px;
    height:42px;
    align-items:center;
    justify-content:center;
    padding:0!important;
    border:2px solid rgba(255,255,255,.86)!important;
    border-radius:3px!important;
    background:rgba(20,25,71,.88)!important;
    box-shadow:0 4px 12px rgba(0,0,0,.32);
  }
  .bs-mobile-toggle-widget .elementor-button:before{
    content:"";
    width:22px;
    height:3px;
    border-radius:2px;
    background:#fff;
    box-shadow:0 -7px 0 #fff,0 7px 0 #fff;
    transition:.2s ease;
  }
  .bs-mobile-toggle-widget .elementor-button:after{
    content:"";
    position:absolute;
    width:22px;
    height:3px;
    border-radius:2px;
    background:#fff;
    opacity:0;
    transition:.2s ease;
  }
  .bs-mobile-toggle-widget .elementor-button-text{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}
  .bs-system-header.is-menu-open .bs-mobile-toggle-widget .elementor-button:before{box-shadow:none;transform:rotate(45deg)}
  .bs-system-header.is-menu-open .bs-mobile-toggle-widget .elementor-button:after{opacity:1;transform:rotate(-45deg)}
  .bs-system-nav.e-con{
    position:absolute!important;
    z-index:51;
    top:55px!important;
    right:0!important;
    bottom:auto!important;
    left:auto!important;
    display:flex!important;
    width:220px!important;
    max-width:calc(100vw - 24px)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:2px!important;
    padding:12px!important;
    border-top:4px solid var(--bs-red);
    background:rgba(20,25,71,.98);
    box-shadow:0 16px 28px rgba(0,0,0,.4);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-8px);
    transition:.2s ease;
  }
  .bs-system-header.is-menu-open .bs-system-nav.e-con{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .bs-system-nav .elementor-widget-button,.bs-system-nav .elementor-button{width:100%!important}
  .bs-system-nav .elementor-button{justify-content:flex-start;padding:12px!important;font-size:14px!important}
  .bs-system-nav .is-current .elementor-button:before,.bs-system-nav .is-order .elementor-button:before{display:none}
  .bs-system-nav .is-order .elementor-button{background:var(--bs-red)!important}

  .bs-hero.e-con{display:flex!important;min-height:auto;flex-direction:column!important}
  .bs-hero-copy.e-con{min-height:520px;padding:104px 22px 70px!important}
  .bs-hero-photo.e-con{min-height:300px}
  .bs-order-photo.e-con{min-height:360px}
  .bs-order-team{width:112%!important;max-width:none!important}
  .bs-display,.bs-display .elementor-heading-title{font-size:clamp(48px,15vw,68px)!important;line-height:.86!important;letter-spacing:-.04em!important}
  .bs-hero-body{font-size:17px!important}
  .bs-actions.e-con{width:100%!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important}
  .bs-actions .elementor-widget-button,.bs-actions .elementor-button{width:100%!important}

  .bs-section.e-con{padding:72px 22px!important}
  .bs-grid.e-con,.bs-grid-2.e-con,.bs-about-details.e-con,.bs-contact-layout.e-con,.bs-detail-grid.e-con{grid-template-columns:1fr}
  .bs-card.e-con{padding:25px!important}
  .bs-menu-category.e-con{display:flex!important;flex-direction:column!important;gap:15px!important;padding:29px 0!important}
  .bs-menu-items .elementor-icon-list-items{grid-template-columns:1fr}
  .bs-form-card{padding:24px!important}
  .bs-band.e-con{padding:68px 22px!important}
}
