/*
Theme Name: Millcreek Pizza
Theme URI: https://millcreekpizza.com
Description: Child theme of Twenty Twenty-Five for millcreekpizza.com — the marketing site in front of the SimplyDine ordering app at /order. Core blocks only; an SEO plugin may own titles, meta and sitemaps.
Author: SimplyDine
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: millcreek
*/

/* Everything a viewer can restyle lives in theme.json; this file only carries
   the component classes the page content references. Prefix: mc- */

.mc-eyebrow {
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  font-size: var(--wp--preset--font-size--small);
}

/* ---- header ---------------------------------------------------------- */

/* the four-phone strip above the header: one line, never wraps, hidden on
   phones (the Order button and the location cards are the tap targets there) */
.mc-topbar p { margin: 0; white-space: nowrap; }
.mc-topbar a { color: #fff; }
.mc-topbar strong { color: var(--wp--preset--color--saffron); font-weight: 800; }
@media (max-width: 1099px) {
  .mc-topbar { display: none; }
}

/* brand: the wide script lockup (assets/img/logo.png). The block pins an inline
   width, so width:auto needs the !important to keep the aspect ratio. */
.mc-brand img { display: block; height: 58px; width: auto !important; max-width: none; }
@media (max-width: 781px) {
  .mc-brand img { height: 42px; }
  .mc-order-cta .wp-block-button__link { padding: 12px 18px; }
  header > .wp-block-group.alignfull { padding-left: 16px !important; padding-right: 16px !important; }
}
@media (max-width: 480px) {
  .mc-brand img { height: 34px; }
  .mc-order-cta .wp-block-button__link { padding: 11px 14px; font-size: 0.8rem; letter-spacing: 0.04em; }
  header .wp-block-group.alignfull > .wp-block-group { gap: 10px; }
}
@media (max-width: 400px) {
  .mc-brand img { height: 30px; }
  header .wp-block-group.alignfull { padding-left: 12px !important; padding-right: 12px !important; }
}
@media (max-width: 340px) {
  .mc-brand img { height: 26px; }
  .mc-order-cta .wp-block-button__link { padding: 10px 10px; }
}

/* the header keeps a hairline under it and the button never wraps */
.mc-header { border-bottom: 1px solid var(--wp--preset--color--line); }
.mc-order-cta .wp-block-button__link { white-space: nowrap; }

/* nav links: uppercase, spaced, never wrapping mid-label */
.mc-nav .wp-block-navigation-item__content {
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 800;
}
.mc-nav .current-menu-item > .wp-block-navigation-item__content {
  color: var(--wp--preset--color--brand);
}

/* ---- hero ------------------------------------------------------------ */

.mc-hero .wp-block-cover__inner-container { padding-top: var(--wp--preset--spacing--60); padding-bottom: var(--wp--preset--spacing--60); }
.mc-hero h1 { text-shadow: 0 2px 24px rgba(0, 0, 0, 0.35); }

/* ---- cards ----------------------------------------------------------- */

/* category / feature cards — a white tile with the photo bleeding to the edges */
.mc-card {
  background: var(--wp--preset--color--white);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(28, 20, 22, 0.10);
  height: 100%;
  transition: transform .15s ease, box-shadow .15s ease;
}
.mc-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(28, 20, 22, 0.16);
}
.mc-card .wp-block-image img {
  display: block;
  width: 100%;
  height: 210px;
  object-fit: cover;
}
.mc-card > :not(.wp-block-image) {
  margin-left: var(--wp--preset--spacing--40);
  margin-right: var(--wp--preset--spacing--40);
}
.mc-card > .wp-block-image + * {
  margin-top: var(--wp--preset--spacing--40);
}
.mc-card > :last-child {
  margin-bottom: var(--wp--preset--spacing--40);
}
.mc-card-link {
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: var(--wp--preset--font-size--small);
}
@media (max-width: 781px) {
  .mc-card .wp-block-image img { height: 170px; }
}

/* "why Millcreek" tiles on the red band: translucent, saffron rule on top */
.mc-feature {
  background: rgba(255, 255, 255, 0.08);
  border-top: 3px solid var(--wp--preset--color--saffron);
  border-radius: 14px;
  height: 100%;
}
.mc-feature h3 { color: var(--wp--preset--color--white); }

/* location cards on the home page + locations page */
.mc-store {
  background: var(--wp--preset--color--white);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 16px;
  height: 100%;
  overflow: hidden;
}
.mc-store > .wp-block-image { margin: 0; }
.mc-store > .wp-block-image img {
  display: block;
  width: 100%;
  height: 200px;
  object-fit: cover;
}
.mc-store > :not(.wp-block-image) {
  margin-left: var(--wp--preset--spacing--40);
  margin-right: var(--wp--preset--spacing--40);
}
.mc-store > .wp-block-image + * { margin-top: var(--wp--preset--spacing--40); }
.mc-store > :last-child { margin-bottom: var(--wp--preset--spacing--40); }
.mc-store .mc-phone a { color: var(--wp--preset--color--ink); }

/* hours grid */
.mc-hours {
  border-top: 2px solid var(--wp--preset--color--saffron);
  padding-top: var(--wp--preset--spacing--30);
}
.mc-hours table { table-layout: auto !important; width: 100%; }
.mc-hours td { padding: 4px 0; border: 0; }
.mc-hours td:first-child { font-weight: 800; padding-right: 16px; }
.mc-hours td:last-child { white-space: nowrap; text-align: right; }

/* map embed */
.mc-map iframe { display: block; width: 100%; height: 340px; border: 0; border-radius: 12px; }

/* gallery: uniform 4:3 crops in a grid */
.mc-gallery .wp-block-image img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 12px;
}
.mc-gallery .wp-block-image { margin: 0; }

/* award badge (foodpages.ca People's Choice) */
.mc-award img { max-width: 220px; height: auto; }

/* delivery partner tiles: same height, soft edges, muted until hovered */
.mc-partners .wp-block-image { margin: 0; }
.mc-partners .wp-block-image img {
  display: block;
  height: 72px;
  width: auto;
  border-radius: 10px;
  border: 1px solid var(--wp--preset--color--line);
  background: #fff;
}

/* the storefront's own /order pages are not WordPress — nothing here */
