/*
 * GCSI editorial photography and responsive layout system.
 * Images are requested through Unsplash Imgix at restrained dimensions and quality.
 * Academy photograph: Zulfi A — https://unsplash.com/photos/pENs_aPLgro
 */

:root{
  --gcsi-layout-max:1440px;
  --gcsi-layout-gutter:clamp(22px,4.8vw,72px);
  --gcsi-hero-height:min(650px,calc(100svh - 84px));
  --gcsi-hero-overlay:#0d2b35;
}

/* Shared content grid */
.container,
.topbar-inner{
  width:100%;
  max-width:var(--gcsi-layout-max);
  margin-inline:auto;
  padding-inline:var(--gcsi-layout-gutter);
}
body.knowledge-hub-page .topbar-inner{
  width:100%!important;
  max-width:var(--gcsi-layout-max)!important;
  padding-inline:var(--gcsi-layout-gutter)!important;
}

/* Optimised, page-specific editorial photography */
.home-hero{
  --gcsi-hero-photo:url("https://images.unsplash.com/photo-1528605248644-14dd04022da1?auto=format&fit=crop&crop=entropy&w=1600&q=62");
  --gcsi-hero-position:center 51%;
}
.knowledge-hero-v2{
  --gcsi-hero-photo:url("https://images.unsplash.com/photo-1773113634704-c3310b7b0ae0?auto=format&fit=crop&crop=entropy&w=1600&q=62");
  --gcsi-hero-position:center 58%;
}
.recipes-hero{
  --gcsi-hero-photo:url("https://images.unsplash.com/photo-1556910103-1c02745aae4d?auto=format&fit=crop&crop=entropy&w=1600&q=62");
  --gcsi-hero-position:center 48%;
}
.academy-hero{
  --gcsi-hero-photo:url("https://images.unsplash.com/photo-1763705305577-5dbf14a2570c?auto=format&fit=crop&crop=entropy&w=1600&q=60");
  --gcsi-hero-position:center 47%;
}
.restaurant-index-hero{
  --gcsi-hero-photo:url("https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?auto=format&fit=crop&crop=entropy&w=1600&q=62");
  --gcsi-hero-position:center 50%;
}

.home-hero,
.knowledge-hero-v2,
.recipes-hero,
.academy-hero,
.restaurant-index-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:var(--gcsi-hero-height);
  background-color:var(--gcsi-hero-overlay);
  background-image:
    linear-gradient(90deg,rgba(8,35,44,.95) 0%,rgba(8,35,44,.86) 42%,rgba(8,35,44,.58) 68%,rgba(8,35,44,.35) 100%),
    linear-gradient(180deg,rgba(8,124,117,.13),rgba(8,35,44,.10)),
    var(--gcsi-hero-photo);
  background-repeat:no-repeat;
  background-size:cover;
  background-position:var(--gcsi-hero-position);
  color:#fff;
  border-bottom:1px solid rgba(21,56,69,.16);
}

/* First-view hero frame */
.home-hero__grid,
.knowledge-hero-v2__inner,
.recipes-hero__inner,
.academy-hero__inner,
.restaurant-index-hero .page-hero__inner{
  min-height:var(--gcsi-hero-height);
  padding-block:clamp(30px,5vh,52px)!important;
}
.home-hero__grid{
  grid-template-columns:minmax(0,1.2fr) minmax(285px,.48fr)!important;
  gap:clamp(34px,5vw,72px)!important;
}
.knowledge-hero-v2__inner{
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.48fr)!important;
  gap:clamp(34px,5vw,70px)!important;
}
.recipes-hero__inner{
  grid-template-columns:minmax(0,1.2fr) minmax(285px,.5fr)!important;
  gap:clamp(34px,5vw,70px)!important;
}
.academy-hero__grid{
  grid-template-columns:minmax(0,1.28fr) minmax(280px,.46fr)!important;
  gap:clamp(34px,5vw,68px)!important;
  align-items:center!important;
}
.restaurant-index-hero .page-hero__inner{
  display:flex;
  flex-direction:column;
  justify-content:center;
  max-width:var(--gcsi-layout-max);
}

.home-hero h1,
.knowledge-hero-v2 h1,
.recipes-hero h1,
.academy-hero h1,
.restaurant-index-hero h1{
  max-width:820px;
  margin:.08em 0 .22em!important;
  color:#fff!important;
  font-size:clamp(2.8rem,4.65vw,4.45rem)!important;
  line-height:1.01!important;
  letter-spacing:-.046em!important;
  text-shadow:0 2px 28px rgba(0,0,0,.24);
}
.home-hero .lede,
.knowledge-hero-v2 .lede,
.recipes-hero .lede,
.academy-hero .academy-hero__lede,
.restaurant-index-hero .lede{
  max-width:730px;
  margin-top:17px!important;
  color:#e4efed!important;
  font-size:clamp(1rem,1.45vw,1.16rem)!important;
  line-height:1.62!important;
  text-shadow:0 1px 16px rgba(0,0,0,.24);
}
.home-hero .eyebrow,
.knowledge-hero-v2 .eyebrow,
.recipes-hero .eyebrow,
.academy-hero .academy-kicker,
.restaurant-index-hero .eyebrow{
  margin-bottom:14px!important;
  color:#9de0d8!important;
}
.home-hero .breadcrumbs,
.knowledge-hero-v2 .breadcrumbs,
.recipes-hero .breadcrumbs,
.academy-hero .breadcrumbs,
.restaurant-index-hero .breadcrumbs{
  margin-bottom:22px!important;
  color:#d7e8e6!important;
}
.home-hero .breadcrumbs a,
.knowledge-hero-v2 .breadcrumbs a,
.recipes-hero .breadcrumbs a,
.academy-hero .breadcrumbs a,
.restaurant-index-hero .breadcrumbs a{
  color:#d7e8e6!important;
}
.hero-actions,
.knowledge-hero-actions,
.recipes-hero__actions,
.academy-hero__actions{
  margin-top:21px!important;
}

.home-hero .button.secondary,
.knowledge-hero-v2 .button.secondary,
.recipes-hero .button.secondary,
.restaurant-index-hero .button.secondary{
  border-color:rgba(255,255,255,.55);
  background:rgba(255,255,255,.08);
  color:#fff;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.home-hero .button.secondary:hover,
.knowledge-hero-v2 .button.secondary:hover,
.recipes-hero .button.secondary:hover,
.restaurant-index-hero .button.secondary:hover{
  border-color:#fff;
  background:#fff;
  color:#153845;
}

/* Compact supporting surfaces */
.home-hero-visual,
.knowledge-visual,
.recipes-promise,
.academy-map{
  justify-self:end;
  width:100%;
  max-width:390px;
  border:1px solid rgba(255,255,255,.25)!important;
  background:rgba(9,37,47,.58)!important;
  box-shadow:0 24px 60px rgba(0,0,0,.21)!important;
  backdrop-filter:blur(13px);
  -webkit-backdrop-filter:blur(13px);
}
.home-hero-visual{
  padding:18px;
  border-radius:24px;
}
.home-hero-visual img{
  display:block;
  width:100%;
  max-height:300px;
  object-fit:contain;
  opacity:.78;
  filter:saturate(.8) brightness(1.08);
  box-shadow:none!important;
}
.home-hero-visual__note{
  position:static!important;
  max-width:none!important;
  margin-top:12px;
  padding:12px 14px!important;
  border-color:rgba(255,255,255,.18)!important;
  background:rgba(255,253,248,.94)!important;
  box-shadow:none!important;
}
.home-hero-visual__orbit{
  left:12px!important;
  top:12px!important;
  width:58px!important;
  height:58px!important;
  border:1px solid rgba(255,255,255,.3);
  background:rgba(8,124,117,.9)!important;
}

.knowledge-visual{
  padding:18px;
  border-radius:22px;
}
.knowledge-visual img{
  max-height:292px;
  object-fit:contain;
  border-radius:18px!important;
  box-shadow:none!important;
  animation:none!important;
  opacity:.88;
}
.knowledge-visual-note{
  position:static!important;
  max-width:none!important;
  margin-top:12px;
  padding:13px 14px!important;
  border-color:rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.08)!important;
  color:#d2e1df!important;
  box-shadow:none!important;
}
.knowledge-visual-note strong{color:#fff!important}
.knowledge-visual-note span{color:#d2e1df!important}
.knowledge-hero-metrics{
  gap:8px 18px!important;
  margin-top:20px!important;
  color:#d8e8e6!important;
}
.knowledge-hero-metrics span::before{
  background:#8addd3!important;
  box-shadow:0 0 0 4px rgba(138,221,211,.14)!important;
}

.recipes-promise{
  padding:22px!important;
  border-radius:18px!important;
}
.recipes-promise h2{
  margin-bottom:8px!important;
  font-size:clamp(1.45rem,2vw,1.85rem)!important;
}
.recipes-promise p,
.recipes-promise li{color:#d4e2e0!important}
.recipes-promise p{font-size:.8rem;line-height:1.55}
.recipes-promise ul{
  gap:8px!important;
  margin-top:13px!important;
  padding-top:13px!important;
}
.recipes-promise li{
  grid-template-columns:22px 1fr!important;
  gap:8px!important;
  font-size:.76rem!important;
  line-height:1.42;
}
.recipes-promise li::before{
  width:19px!important;
  height:19px!important;
}

/* Academy-specific cleanup: one complete hero frame, no legacy decorative circles. */
.academy-hero::before,
.academy-hero::after{display:none!important}
.academy-hero__inner{
  display:grid;
  align-content:center;
}
.academy-hero__grid>div:first-child{max-width:760px}
.academy-hero .academy-kicker{margin-bottom:12px!important}
.academy-hero .academy-hero__lede{max-width:675px!important}
.academy-hero__actions{margin-top:18px!important}
.academy-trust-line{
  gap:7px 15px!important;
  margin-top:18px!important;
  padding-top:14px!important;
}
.academy-trust-line span{
  gap:6px!important;
  font-size:.7rem!important;
}
.academy-trust-line span::before{
  width:17px!important;
  height:17px!important;
  font-size:.58rem!important;
}
.academy-map{
  max-width:355px!important;
  padding:18px!important;
  border-radius:18px!important;
}
.academy-map__top{padding-bottom:11px!important}
.academy-map__top span{font-size:.62rem!important}
.academy-map__top strong{font-size:1.08rem!important}
.academy-journey{margin-top:7px!important}
.academy-journey__step{
  grid-template-columns:31px minmax(0,1fr)!important;
  gap:10px!important;
  padding:8px 0!important;
}
.academy-journey__step>span{
  width:28px!important;
  height:28px!important;
  font-size:.7rem!important;
}
.academy-journey__step strong{font-size:.76rem!important}
.academy-journey__step small{
  margin-top:2px!important;
  font-size:.65rem!important;
  line-height:1.35!important;
}
.academy-map__footer{
  margin-top:7px!important;
  padding-top:9px!important;
}
.academy-map__footer strong{font-size:.7rem!important}
.academy-map__footer span{font-size:.62rem!important}

/* Social-style verification badge on the GCSI logo */
.recipe-author--verified{
  position:relative;
  gap:13px!important;
}
.recipe-author__brand-logo{
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  border-radius:50%!important;
}
.recipe-author__verified-check{
  position:absolute!important;
  left:44px!important;
  right:auto!important;
  bottom:4px!important;
  display:grid!important;
  place-items:center;
  width:21px!important;
  height:21px!important;
  min-width:21px!important;
  padding:0!important;
  border:3px solid #fff!important;
  border-radius:50%!important;
  background:#087c75!important;
  color:#fff!important;
  box-shadow:0 2px 8px rgba(13,43,53,.24)!important;
  z-index:2;
}
.recipe-author__verified-check svg{
  width:12px!important;
  height:12px!important;
  fill:none;
  stroke:currentColor;
  stroke-width:2.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.article-body,
.editorial-document,
.recipe-content,
.knowledge-list,
.academy-pathways{min-width:0}

@media(max-height:760px) and (min-width:981px){
  :root{--gcsi-hero-height:min(590px,calc(100svh - 84px))}
  .home-hero h1,
  .knowledge-hero-v2 h1,
  .recipes-hero h1,
  .academy-hero h1,
  .restaurant-index-hero h1{font-size:clamp(2.55rem,4.15vw,3.85rem)!important}
  .home-hero-visual img,.knowledge-visual img{max-height:238px}
  .academy-trust-line{display:none!important}
  .academy-map__footer{display:none!important}
}

@media(max-width:980px){
  :root{--gcsi-hero-height:auto}
  .home-hero,
  .knowledge-hero-v2,
  .recipes-hero,
  .academy-hero,
  .restaurant-index-hero{
    background-image:
      linear-gradient(90deg,rgba(8,35,44,.96),rgba(8,35,44,.80)),
      var(--gcsi-hero-photo);
    background-position:62% center;
  }
  .home-hero__grid,
  .knowledge-hero-v2__inner,
  .recipes-hero__inner,
  .academy-hero__inner,
  .restaurant-index-hero .page-hero__inner{
    min-height:0;
    padding-block:52px!important;
  }
  .home-hero__grid,
  .knowledge-hero-v2__inner,
  .recipes-hero__inner,
  .academy-hero__grid{
    grid-template-columns:1fr!important;
  }
  .home-hero-visual,
  .knowledge-visual,
  .recipes-promise,
  .academy-map{
    display:none!important;
  }
}

@media(max-width:760px){
  :root{--gcsi-layout-gutter:20px}
  .home-hero{
    --gcsi-hero-photo:url("https://images.unsplash.com/photo-1528605248644-14dd04022da1?auto=format&fit=crop&crop=entropy&w=900&q=58");
  }
  .knowledge-hero-v2{
    --gcsi-hero-photo:url("https://images.unsplash.com/photo-1773113634704-c3310b7b0ae0?auto=format&fit=crop&crop=entropy&w=900&q=58");
  }
  .recipes-hero{
    --gcsi-hero-photo:url("https://images.unsplash.com/photo-1556910103-1c02745aae4d?auto=format&fit=crop&crop=entropy&w=900&q=58");
  }
  .academy-hero{
    --gcsi-hero-photo:url("https://images.unsplash.com/photo-1763705305577-5dbf14a2570c?auto=format&fit=crop&crop=entropy&w=900&q=56");
  }
  .restaurant-index-hero{
    --gcsi-hero-photo:url("https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?auto=format&fit=crop&crop=entropy&w=900&q=58");
  }
  .topbar-inner{padding-inline:20px}
  body.knowledge-hub-page .topbar-inner{padding-inline:20px!important}
  .home-hero,
  .knowledge-hero-v2,
  .recipes-hero,
  .academy-hero,
  .restaurant-index-hero{background-position:68% center}
  .home-hero h1,
  .knowledge-hero-v2 h1,
  .recipes-hero h1,
  .academy-hero h1,
  .restaurant-index-hero h1{
    font-size:clamp(2.45rem,11.5vw,3.35rem)!important;
  }
  .home-hero__grid,
  .knowledge-hero-v2__inner,
  .recipes-hero__inner,
  .academy-hero__inner,
  .restaurant-index-hero .page-hero__inner{
    padding-block:40px 44px!important;
  }
}

@media(prefers-reduced-data:reduce){
  .home-hero,
  .knowledge-hero-v2,
  .recipes-hero,
  .academy-hero,
  .restaurant-index-hero{
    background-image:linear-gradient(135deg,#153845,#087c75);
  }
}
