@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700;9..144,800&family=Inter:wght@400;500;600;700;800&display=swap");

body[data-codee-suite="nyc-restaurant"] {
  --ic-ink: #21140d;
  --ic-muted: #6a4b36;
  --ic-cream: #fff8ea;
  --ic-gold: #f4b63f;
  --ic-orange: #e96f2e;
  --ic-green: #2f8f65;
  --ic-red: #a9321f;
  --ic-charcoal: #140906;
  --ic-plantain: #ffd25a;
  --ic-blue: #187a95;
  --ic-leaf: #165f43;
  --ic-card-shadow: 0 24px 60px rgba(55, 22, 8, .22);
  background:
    linear-gradient(135deg, rgba(22, 95, 67, .16) 0 12%, transparent 12% 20%, rgba(169, 50, 31, .14) 20% 28%, transparent 28%),
    radial-gradient(circle at 15% 8%, rgba(255, 210, 90, .30), transparent 26%),
    radial-gradient(circle at 88% 14%, rgba(24, 122, 149, .20), transparent 30%),
    linear-gradient(180deg, #130906 0%, #30150e 27%, #fff0d8 27%, #fff8ea 100%) !important;
  color: var(--ic-ink);
  font-family: Inter, Manrope, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
}

body[data-codee-suite="nyc-restaurant"]::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .22;
  background-image:
    linear-gradient(30deg, rgba(33, 20, 13, .12) 12%, transparent 12%, transparent 88%, rgba(33, 20, 13, .12) 88%),
    linear-gradient(150deg, rgba(33, 20, 13, .10) 12%, transparent 12%, transparent 88%, rgba(33, 20, 13, .10) 88%);
  background-size: 42px 72px;
}

body[data-codee-suite="nyc-restaurant"] h1,
body[data-codee-suite="nyc-restaurant"] h2,
body[data-codee-suite="nyc-restaurant"] h3,
body[data-codee-suite="nyc-restaurant"] .brand-name,
body[data-codee-suite="nyc-restaurant"] .footer-brand {
  font-family: Fraunces, Georgia, serif !important;
  letter-spacing: 0 !important;
}

body[data-codee-suite="nyc-restaurant"] h1 {
  font-size: clamp(2.7rem, 6.4vw, 6.6rem) !important;
  line-height: .91 !important;
  max-width: 12ch;
}

body[data-codee-suite="nyc-restaurant"] h2 {
  font-size: clamp(1.85rem, 3.4vw, 3.35rem) !important;
}

body[data-codee-suite="nyc-restaurant"] .site-shell {
  overflow: clip;
}

body[data-codee-suite="nyc-restaurant"] .main-header {
  border-radius: 8px !important;
  background:
    linear-gradient(90deg, rgba(17, 8, 5, .92), rgba(58, 23, 12, .90)),
    linear-gradient(135deg, var(--ic-green), var(--ic-gold), var(--ic-red)) !important;
  border-color: rgba(255, 230, 179, .22) !important;
  box-shadow: 0 18px 46px rgba(16, 7, 4, .38) !important;
}

body[data-codee-suite="nyc-restaurant"] .brand-mark {
  border-radius: 50% !important;
  background:
    conic-gradient(from 20deg, var(--ic-green), var(--ic-gold), var(--ic-red), var(--ic-green)) !important;
  color: #1b0d07 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.34);
  box-shadow: inset 0 0 0 4px rgba(255, 248, 234, .72);
}

body[data-codee-suite="nyc-restaurant"] .nav-links a {
  position: relative;
  padding-bottom: .22rem;
}

body[data-codee-suite="nyc-restaurant"] .nav-links a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--ic-plantain);
  transition: transform .22s ease;
}

body[data-codee-suite="nyc-restaurant"] .nav-links a:hover::after {
  transform: scaleX(1);
}

body[data-codee-suite="nyc-restaurant"] .story-card,
body[data-codee-suite="nyc-restaurant"] .cuisine-card,
body[data-codee-suite="nyc-restaurant"] .service-card,
body[data-codee-suite="nyc-restaurant"] .package-card,
body[data-codee-suite="nyc-restaurant"] .step-card,
body[data-codee-suite="nyc-restaurant"] .faq-card,
body[data-codee-suite="nyc-restaurant"] .intake-copy,
body[data-codee-suite="nyc-restaurant"] .intake-form,
body[data-codee-suite="nyc-restaurant"] .next-steps-card,
body[data-codee-suite="nyc-restaurant"] .order-room-card {
  background:
    linear-gradient(180deg, rgba(255, 254, 250, .98), rgba(255, 242, 220, .96)) !important;
  color: var(--ic-ink) !important;
  border-color: rgba(154, 86, 38, .18) !important;
  border-radius: 8px !important;
  box-shadow: var(--ic-card-shadow) !important;
}

body[data-codee-suite="nyc-restaurant"] .story-card h2,
body[data-codee-suite="nyc-restaurant"] .cuisine-card h3,
body[data-codee-suite="nyc-restaurant"] .service-card h3,
body[data-codee-suite="nyc-restaurant"] .package-card h3,
body[data-codee-suite="nyc-restaurant"] .step-card h3,
body[data-codee-suite="nyc-restaurant"] .faq-card h3,
body[data-codee-suite="nyc-restaurant"] .intake-copy h2,
body[data-codee-suite="nyc-restaurant"] .order-room-card h2,
body[data-codee-suite="nyc-restaurant"] .section-heading h2 {
  color: var(--ic-ink) !important;
  text-shadow: none !important;
}

body[data-codee-suite="nyc-restaurant"] .story-card p,
body[data-codee-suite="nyc-restaurant"] .cuisine-card p,
body[data-codee-suite="nyc-restaurant"] .cuisine-card li,
body[data-codee-suite="nyc-restaurant"] .service-card p,
body[data-codee-suite="nyc-restaurant"] .package-card p,
body[data-codee-suite="nyc-restaurant"] .package-card li,
body[data-codee-suite="nyc-restaurant"] .step-card p,
body[data-codee-suite="nyc-restaurant"] .faq-card p,
body[data-codee-suite="nyc-restaurant"] .intake-copy p,
body[data-codee-suite="nyc-restaurant"] .next-steps-card li,
body[data-codee-suite="nyc-restaurant"] .order-room-card p,
body[data-codee-suite="nyc-restaurant"] .section-intro,
body[data-codee-suite="nyc-restaurant"] .service-area-note {
  color: var(--ic-muted) !important;
  text-shadow: none !important;
}

body[data-codee-suite="nyc-restaurant"] .catering-hero {
  background:
    linear-gradient(90deg, rgba(0,0,0,.66), rgba(0,0,0,.18) 47%, rgba(0,0,0,.44)),
    radial-gradient(circle at 16% 18%, rgba(244, 182, 63, .28), transparent 28%),
    linear-gradient(135deg, rgba(20, 9, 6, .99), rgba(79, 27, 12, .94) 52%, rgba(22, 95, 67, .80)) !important;
  border-radius: 8px !important;
  position: relative;
  isolation: isolate;
  min-height: min(780px, calc(100vh - 32px));
}

body[data-codee-suite="nyc-restaurant"] .catering-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(120deg, transparent 0 55%, rgba(255, 210, 90, .15) 55% 56%, transparent 56%),
    radial-gradient(circle at 72% 62%, rgba(233, 111, 46, .18), transparent 34%);
  animation: icWarmGlow 8s ease-in-out infinite alternate;
}

body[data-codee-suite="nyc-restaurant"] .catering-hero h1,
body[data-codee-suite="nyc-restaurant"] .catering-hero p,
body[data-codee-suite="nyc-restaurant"] .catering-hero span {
  color: #fff8ec !important;
}

body[data-codee-suite="nyc-restaurant"] .collage-panel {
  background: #120906 !important;
  min-height: 220px;
  border-radius: 8px !important;
  overflow: hidden;
  box-shadow: 0 24px 50px rgba(0, 0, 0, .28);
}

body[data-codee-suite="nyc-restaurant"] .collage-panel img,
body[data-codee-suite="nyc-restaurant"] .gallery-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.18) contrast(1.06);
  transform: scale(1.03);
  transition: transform .7s ease, filter .7s ease;
}

body[data-codee-suite="nyc-restaurant"] .collage-panel:hover img,
body[data-codee-suite="nyc-restaurant"] .gallery-card:hover img {
  filter: saturate(1.32) contrast(1.10);
  transform: scale(1.09) rotate(.5deg);
}

body[data-codee-suite="nyc-restaurant"] .collage-panel::before,
body[data-codee-suite="nyc-restaurant"] .gallery-card::before {
  display: none !important;
}

body[data-codee-suite="nyc-restaurant"] .collage-panel::after,
body[data-codee-suite="nyc-restaurant"] .gallery-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background:
    linear-gradient(180deg, transparent 20%, rgba(9, 5, 3, .82)),
    radial-gradient(circle at 20% 15%, rgba(244, 182, 63, .18), transparent 28%);
}

body[data-codee-suite="nyc-restaurant"] .dish-copy,
body[data-codee-suite="nyc-restaurant"] .panel-chip,
body[data-codee-suite="nyc-restaurant"] .gallery-card span {
  z-index: 2;
}

body[data-codee-suite="nyc-restaurant"] .gallery-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body[data-codee-suite="nyc-restaurant"] .gallery-card {
  min-height: 260px;
  border: 1px solid rgba(255, 228, 180, .18) !important;
  background: #160a06 !important;
  box-shadow: 0 22px 48px rgba(43, 18, 7, .28) !important;
  border-radius: 8px !important;
  overflow: hidden;
}

body[data-codee-suite="nyc-restaurant"] .gallery-card span {
  color: #fff6e7 !important;
  text-shadow: 0 2px 8px rgba(0,0,0,.8) !important;
}

body[data-codee-suite="nyc-restaurant"] .section-heading {
  padding: 1rem;
  border-radius: 8px;
  background: rgba(255, 249, 239, .72);
  border: 1px solid rgba(154, 86, 38, .12);
}

body[data-codee-suite="nyc-restaurant"] .section-label,
body[data-codee-suite="nyc-restaurant"] .eyebrow,
body[data-codee-suite="nyc-restaurant"] .cuisine-tag,
body[data-codee-suite="nyc-restaurant"] .package-kicker {
  color: var(--ic-red) !important;
  font-family: Inter, Manrope, system-ui, sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
}

body[data-codee-suite="nyc-restaurant"] .catering-hero .eyebrow,
body[data-codee-suite="nyc-restaurant"] .yelp-proof-card .section-label,
body[data-codee-suite="nyc-restaurant"] .final-card .section-label {
  color: var(--ic-plantain) !important;
}

body[data-codee-suite="nyc-restaurant"] .cuisine-card {
  position: relative;
  overflow: hidden;
  padding-top: 1.35rem !important;
  transition: transform .24s ease, box-shadow .24s ease;
}

body[data-codee-suite="nyc-restaurant"] .cuisine-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 7px;
  background: linear-gradient(180deg, var(--ic-green), var(--ic-gold), var(--ic-red));
}

body[data-codee-suite="nyc-restaurant"] .cuisine-card:nth-child(1)::before {
  background: linear-gradient(180deg, #11975a, #ffd447, #111);
}

body[data-codee-suite="nyc-restaurant"] .cuisine-card:nth-child(2)::before {
  background: linear-gradient(180deg, #ed1c24, #fff, #0067b1);
}

body[data-codee-suite="nyc-restaurant"] .cuisine-card:nth-child(3)::before {
  background: linear-gradient(180deg, #ffd100, #0057b8, #ef3340);
}

body[data-codee-suite="nyc-restaurant"] .cuisine-card:nth-child(4)::before {
  background: linear-gradient(180deg, #8b1e12, #f4b63f, #21140d);
}

body[data-codee-suite="nyc-restaurant"] .cuisine-card:hover,
body[data-codee-suite="nyc-restaurant"] .package-card:hover,
body[data-codee-suite="nyc-restaurant"] .service-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 30px 70px rgba(55, 22, 8, .30) !important;
}

body[data-codee-suite="nyc-restaurant"] .cuisine-card ul,
body[data-codee-suite="nyc-restaurant"] .package-card ul {
  display: grid;
  gap: .45rem;
  padding-left: 1.1rem;
}

body[data-codee-suite="nyc-restaurant"] .btn {
  border-radius: 8px !important;
  letter-spacing: 0 !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

body[data-codee-suite="nyc-restaurant"] .btn:hover {
  transform: translateY(-2px);
}

body[data-codee-suite="nyc-restaurant"] .btn-primary {
  background: linear-gradient(135deg, var(--ic-green), #f2bd3f 46%, var(--ic-red)) !important;
  color: #180b06 !important;
  box-shadow: 0 16px 32px rgba(169, 50, 31, .25) !important;
}

body[data-codee-suite="nyc-restaurant"] .btn-secondary,
body[data-codee-suite="nyc-restaurant"] .quick-start-chip {
  background: rgba(255, 248, 234, .08) !important;
  border: 1px solid rgba(164, 87, 40, .26) !important;
}

body[data-codee-suite="nyc-restaurant"] .event-chip-grid span,
body[data-codee-suite="nyc-restaurant"] .order-room-steps span,
body[data-codee-suite="nyc-restaurant"] .quick-start-chip {
  border-radius: 8px !important;
  color: var(--ic-ink) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.84), rgba(255, 238, 205, .78)) !important;
  box-shadow: 0 10px 24px rgba(55, 22, 8, .12);
}

body[data-codee-suite="nyc-restaurant"] .story-section,
body[data-codee-suite="nyc-restaurant"] .yelp-proof-section,
body[data-codee-suite="nyc-restaurant"] .how-it-works,
body[data-codee-suite="nyc-restaurant"] .featured-food,
body[data-codee-suite="nyc-restaurant"] .why-section,
body[data-codee-suite="nyc-restaurant"] .packages-section,
body[data-codee-suite="nyc-restaurant"] .gallery-strip,
body[data-codee-suite="nyc-restaurant"] .intake-section,
body[data-codee-suite="nyc-restaurant"] .faq-section,
body[data-codee-suite="nyc-restaurant"] .final-cta {
  animation: icRiseIn .72s ease both;
  animation-timeline: view();
  animation-range: entry 0% cover 22%;
}

body[data-codee-suite="nyc-restaurant"] .yelp-proof-card,
body[data-codee-suite="nyc-restaurant"] .final-card,
body[data-codee-suite="nyc-restaurant"] .trust-badge {
  background:
    radial-gradient(circle at 90% 12%, rgba(244, 182, 63, .22), transparent 28%),
    linear-gradient(135deg, rgba(24, 10, 6, .98), rgba(94, 40, 19, .94)) !important;
  color: #fff7eb !important;
}

body[data-codee-suite="nyc-restaurant"] .yelp-proof-card h2,
body[data-codee-suite="nyc-restaurant"] .yelp-proof-card p,
body[data-codee-suite="nyc-restaurant"] .final-card h2,
body[data-codee-suite="nyc-restaurant"] .final-card p,
body[data-codee-suite="nyc-restaurant"] .trust-badge strong,
body[data-codee-suite="nyc-restaurant"] .trust-badge span {
  color: #fff7eb !important;
  text-shadow: 0 2px 6px rgba(0,0,0,.55) !important;
}

body[data-codee-suite="nyc-restaurant"] .intake-form label {
  color: var(--ic-ink) !important;
}

body[data-codee-suite="nyc-restaurant"] .intake-form input,
body[data-codee-suite="nyc-restaurant"] .intake-form select,
body[data-codee-suite="nyc-restaurant"] .intake-form textarea {
  background: #fffdfa !important;
  color: #1e130c !important;
  border-radius: 8px !important;
  border-color: rgba(154, 86, 38, .24) !important;
}

body[data-codee-suite="nyc-restaurant"] .intake-form input:focus,
body[data-codee-suite="nyc-restaurant"] .intake-form select:focus,
body[data-codee-suite="nyc-restaurant"] .intake-form textarea:focus {
  outline: 3px solid rgba(244, 182, 63, .28) !important;
  border-color: rgba(169, 50, 31, .48) !important;
}

body[data-codee-suite="nyc-restaurant"] .site-footer {
  background:
    linear-gradient(135deg, rgba(20, 9, 6, .98), rgba(35, 13, 8, .94)),
    linear-gradient(90deg, var(--ic-green), var(--ic-gold), var(--ic-red)) !important;
  color: #fff6e7 !important;
}

@keyframes icWarmGlow {
  from { opacity: .72; transform: translate3d(-1%, 0, 0); }
  to { opacity: 1; transform: translate3d(1%, -1%, 0); }
}

@keyframes icRiseIn {
  from { opacity: .15; transform: translateY(28px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 760px) {
  body[data-codee-suite="nyc-restaurant"] h1 {
    max-width: 100%;
    font-size: clamp(2.45rem, 15vw, 4rem) !important;
  }

  body[data-codee-suite="nyc-restaurant"] .catering-hero {
    min-height: auto;
  }

  body[data-codee-suite="nyc-restaurant"] .gallery-grid {
    grid-template-columns: 1fr;
  }

  body[data-codee-suite="nyc-restaurant"] .gallery-card {
    min-height: 310px;
  }

  body[data-codee-suite="nyc-restaurant"] .collage-panel {
    min-height: 280px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body[data-codee-suite="nyc-restaurant"] *,
  body[data-codee-suite="nyc-restaurant"] *::before,
  body[data-codee-suite="nyc-restaurant"] *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}
