/*
Theme Name: Persiano Dish
Theme URI: https://persianodish.com/
Author: OpenAI
Author URI: https://openai.com/
Description: Custom boutique WordPress theme for Persiano Dish with WooCommerce support.
Version: 1.11.1
Requires at least: 6.5
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: persiano-dish
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-logo, custom-menu, e-commerce, one-column, food-and-drink, featured-images
*/

:root {
  --pd-ivory: #f8f3e9;
  --pd-cream: #fffaf2;
  --pd-walnut: #2f231d;
  --pd-stone: #7b6f64;
  --pd-line: rgba(47, 35, 29, .12);
  --pd-pomegranate: #8e2435;
  --pd-pomegranate-dark: #731b2a;
  --pd-saffron: #d79a2d;
  --pd-herb: #687357;
  --pd-white: #ffffff;
  --pd-shadow: 0 22px 60px rgba(46, 31, 24, .10);
  --pd-shadow-sm: 0 12px 30px rgba(46, 31, 24, .08);
  --pd-radius-lg: 34px;
  --pd-radius-md: 26px;
  --pd-radius-sm: 18px;
  --pd-max: 1280px;
  --pd-shell: min(calc(100vw - 48px), var(--pd-max));
  --pd-serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --pd-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--pd-ivory);
  color: var(--pd-walnut);
  font-family: var(--pd-sans);
  font-size: 17px;
  line-height: 1.75;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; }
img { max-width: 100%; height: auto; }

.pd-shell,
.pd-narrow {
  width: var(--pd-shell);
  margin-inline: auto;
}
.pd-narrow { max-width: 860px; }
.pd-site-main { overflow: clip; }
.pd-section { padding: clamp(72px, 9vw, 118px) 0; }
.pd-section--cream { background: rgba(255,255,255,.34); }
.pd-section--dark { background: var(--pd-walnut); color: var(--pd-cream); }

h1, h2, h3, h4, h5, h6 {
  margin: 0 0 18px;
  font-family: var(--pd-serif);
  font-weight: 600;
  line-height: 1.02;
  letter-spacing: -.03em;
}
h1 { font-size: clamp(3.5rem, 7vw, 6.5rem); }
h2 { font-size: clamp(2.45rem, 4.6vw, 4.8rem); }
h3 { font-size: clamp(1.55rem, 2.2vw, 2.2rem); }
p { margin: 0 0 1.05em; }

.pd-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  color: var(--pd-pomegranate);
  font-size: .74rem;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.pd-kicker::before {
  content: '';
  width: 28px;
  height: 1px;
  background: currentColor;
}
.pd-section--dark .pd-kicker { color: var(--pd-saffron); }

.pd-lead {
  max-width: 700px;
  color: var(--pd-stone);
  font-size: clamp(1.04rem, 1.55vw, 1.22rem);
}
.pd-section--dark .pd-lead { color: rgba(255,250,242,.76); }

.pd-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wp-element-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 22px !important;
  border: 1px solid var(--pd-pomegranate) !important;
  border-radius: 999px !important;
  background: var(--pd-pomegranate) !important;
  color: var(--pd-white) !important;
  font-family: var(--pd-sans) !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
  letter-spacing: .09em;
  line-height: 1 !important;
  text-decoration: none;
  text-transform: uppercase;
  transition: transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.pd-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.wp-element-button:hover {
  background: var(--pd-pomegranate-dark) !important;
  border-color: var(--pd-pomegranate-dark) !important;
  color: var(--pd-white) !important;
  transform: translateY(-2px);
  box-shadow: var(--pd-shadow-sm);
}
.pd-btn--secondary {
  background: transparent !important;
  color: var(--pd-walnut) !important;
  border-color: var(--pd-line) !important;
}
.pd-btn--secondary:hover {
  background: var(--pd-walnut) !important;
  color: var(--pd-cream) !important;
  border-color: var(--pd-walnut) !important;
}
.pd-btn--light {
  background: var(--pd-cream) !important;
  color: var(--pd-pomegranate) !important;
  border-color: var(--pd-cream) !important;
}
.pd-actions { display: flex; flex-wrap: wrap; gap: 12px; }

/* Header */
.pd-site-header {
  position: sticky;
  z-index: 100;
  top: 0;
  border-bottom: 1px solid var(--pd-line);
  background: rgba(248, 243, 233, .92);
  backdrop-filter: blur(18px);
  transition: box-shadow .2s ease, background .2s ease;
}
.pd-site-header.is-scrolled { box-shadow: 0 10px 26px rgba(30,22,18,.06); }
.admin-bar .pd-site-header { top: 32px; }
.pd-header-inner {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto minmax(220px, 1fr);
  align-items: center;
  min-height: 88px;
  gap: 24px;
}
.pd-brand {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  text-decoration: none;
}
.pd-logo { display: block; width: auto; max-width: 100%; }
.pd-logo--header { max-height: 58px; }
.pd-logo--footer { max-height: 142px; }
.pd-brand-text {
  display: block;
  font-family: var(--pd-serif);
  font-size: 1.6rem;
  letter-spacing: -.03em;
  white-space: nowrap;
}
.pd-primary-nav ul {
  display: flex;
  gap: 28px;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.pd-primary-nav a {
  position: relative;
  font-size: .94rem;
  font-weight: 700;
  text-decoration: none;
}
.pd-primary-nav .current-menu-item > a,
.pd-primary-nav .current_page_item > a { color: var(--pd-pomegranate); }
.pd-primary-nav .current-menu-item > a::after,
.pd-primary-nav .current_page_item > a::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -8px;
  height: 1px;
  background: currentColor;
}
.pd-header-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
}
.pd-order-btn { min-height: 48px !important; padding-inline: 20px !important; }
.pd-cart-link {
  position: relative;
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border: 1px solid var(--pd-line);
  border-radius: 50%;
  text-decoration: none;
  background: rgba(255,255,255,.3);
}
.pd-cart-icon { width: 19px; height: 19px; }
.pd-cart-count {
  position: absolute;
  right: -2px;
  top: -4px;
  display: grid;
  min-width: 20px;
  height: 20px;
  place-items: center;
  padding: 0 5px;
  border-radius: 999px;
  background: var(--pd-pomegranate);
  color: white;
  font-size: .68rem;
  font-weight: 800;
}
.pd-menu-toggle {
  display: none;
  width: 46px;
  height: 46px;
  border: 1px solid var(--pd-line);
  border-radius: 50%;
  background: transparent;
}
.pd-menu-toggle span {
  display: block;
  width: 18px;
  height: 1.5px;
  margin: 5px auto;
  background: currentColor;
}

/* Hero */
.pd-hero {
  position: relative;
  overflow: hidden;
  min-height: min(860px, calc(100vh - 88px));
  display: grid;
  align-items: center;
}
.pd-hero::before,
.pd-hero::after {
  content: '';
  position: absolute;
  pointer-events: none;
  border: 1px solid rgba(122, 33, 51, .14);
  border-radius: 50%;
}
.pd-hero::before { width: 600px; height: 600px; right: -200px; top: -170px; }
.pd-hero::after { width: 320px; height: 320px; left: -160px; bottom: -150px; }
.pd-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, .96fr) minmax(360px, .92fr);
  align-items: center;
  gap: clamp(36px, 7vw, 90px);
  padding: clamp(76px, 9vw, 120px) 0;
}
.pd-hero-copy { max-width: 620px; }
.pd-hero h1 {
  max-width: 680px;
  margin-bottom: 24px;
  line-height: .96;
}
.pd-hero h1 br { display: block; }
.pd-hero-copy p {
  max-width: 540px;
  color: var(--pd-stone);
  font-size: clamp(1.08rem, 1.6vw, 1.26rem);
}
.pd-hero-proof {
  display: inline-flex;
  flex-direction: column;
  gap: 8px;
  max-width: 330px;
  margin-top: 22px;
  padding: 18px 20px;
  border: 1px solid rgba(47,35,29,.08);
  border-radius: var(--pd-radius-sm);
  background: rgba(255,255,255,.54);
  box-shadow: var(--pd-shadow-sm);
}
.pd-hero-proof strong {
  color: var(--pd-pomegranate);
  font-family: var(--pd-serif);
  font-size: 1.35rem;
  line-height: 1;
}
.pd-hero-proof span { color: var(--pd-stone); font-size: .94rem; line-height: 1.55; }
.pd-hero-media { position: relative; }
.pd-hero-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  border-radius: 44% 44% 24px 24px;
  background: #e8dfd2;
  box-shadow: var(--pd-shadow);
}
.pd-hero-image::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(47,35,29,.10));
  pointer-events: none;
}
.pd-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.pd-media-placeholder,
.pd-media-placeholder--dark {
  width: 100%;
  height: 100%;
  min-height: 100%;
  display: grid;
  place-items: center;
  padding: 36px;
  text-align: center;
  color: #8f857b;
}
.pd-media-placeholder--dark { color: rgba(255,250,242,.7); background: #493a31; border-radius: var(--pd-radius-lg); }

/* Section headings */
.pd-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 40px;
}
.pd-section-head h2 { max-width: 760px; margin-bottom: 0; }
.pd-section-head .pd-lead { margin-bottom: 0; }

/* Product cards */
.pd-product-grid,
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px !important;
  margin: 0 !important;
}
.pd-product-card,
.woocommerce ul.products li.product {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  overflow: hidden;
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-md);
  background: var(--pd-cream);
  transition: transform .25s ease, box-shadow .25s ease;
}
.pd-product-card:hover,
.woocommerce ul.products li.product:hover {
  transform: translateY(-5px);
  box-shadow: var(--pd-shadow-sm);
}
.pd-product-image,
.woocommerce ul.products li.product a img {
  display: block;
  aspect-ratio: 4 / 3;
  width: 100%;
  object-fit: cover;
  margin: 0 !important;
  background: #e8dfd2;
}
.pd-product-body { padding: 24px; }
.pd-product-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 13px; }
.pd-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(122,33,51,.08);
  color: var(--pd-pomegranate);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.pd-badge--green { background: rgba(104,115,87,.12); color: #536044; }
.pd-badge--gold { background: rgba(214,154,45,.14); color: #9b6811; }
.pd-product-card h3 { margin-bottom: 9px; font-size: 1.7rem; }
.pd-product-price { color: var(--pd-pomegranate); font-family: var(--pd-serif); font-size: 1.28rem; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 22px 22px 0 !important; font-size: 1.55rem !important; }
.woocommerce ul.products li.product .price { padding: 0 22px; color: var(--pd-pomegranate) !important; font-family: var(--pd-serif); font-size: 1.16rem !important; }
.woocommerce ul.products li.product .button { margin: 6px 22px 24px !important; }
.woocommerce span.onsale { min-height: auto; min-width: auto; padding: 8px 11px; border-radius: 999px; background: var(--pd-pomegranate); line-height: 1; }

/* Editorial section */
.pd-story-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(50px, 9vw, 120px);
  align-items: center;
}
.pd-story-media { position: relative; }
.pd-story-media img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--pd-radius-lg);
}
.pd-pattern-card {
  position: absolute;
  right: -34px;
  bottom: -34px;
  width: 180px;
  aspect-ratio: 1;
  border-radius: 26px;
  background-color: var(--pd-pomegranate);
  background-image:
    linear-gradient(45deg, transparent 42%, rgba(255,250,242,.20) 42% 47%, transparent 47%),
    linear-gradient(-45deg, transparent 42%, rgba(255,250,242,.20) 42% 47%, transparent 47%);
  background-size: 28px 28px;
}

/* Catering */
.pd-catering-card {
  position: relative;
  overflow: hidden;
  min-height: 580px;
  display: grid;
  align-items: end;
  border-radius: var(--pd-radius-lg);
  background: var(--pd-walnut);
  color: white;
}
.pd-catering-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(30,22,18,.88) 0%, rgba(30,22,18,.56) 45%, rgba(30,22,18,.12) 100%);
}
.pd-catering-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pd-catering-content {
  position: relative;
  z-index: 2;
  max-width: 610px;
  padding: clamp(34px, 7vw, 82px);
}
.pd-catering-content h2 { margin-bottom: 20px; }
.pd-catering-content p { color: rgba(255,255,255,.78); font-size: 1.12rem; }

/* Reviews */
.pd-reviews { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.pd-review { padding: 28px; border-top: 2px solid var(--pd-saffron); background: rgba(255,255,255,.42); border-radius: 12px; }
.pd-stars { color: var(--pd-saffron); letter-spacing: .1em; }
.pd-review blockquote { margin: 18px 0 20px; font-family: var(--pd-serif); font-size: 1.3rem; line-height: 1.45; }
.pd-review cite { color: var(--pd-stone); font-size: .86rem; font-style: normal; font-weight: 700; }

/* Page hero */
.pd-page-hero { padding: clamp(76px, 10vw, 146px) 0 clamp(54px, 7vw, 96px); border-bottom: 1px solid var(--pd-line); }
.pd-page-hero h1 { max-width: 920px; font-size: clamp(3.1rem, 7vw, 6.6rem); margin-bottom: 22px; }
.pd-page-content { padding: clamp(58px, 8vw, 110px) 0; }
.pd-page-content > *:first-child { margin-top: 0; }
.pd-page-content :where(p, ul, ol) { max-width: 820px; }

/* Events */
.pd-event-list { display: grid; gap: 18px; }
.pd-event-card {
  display: grid;
  grid-template-columns: 180px 1fr auto;
  gap: 28px;
  align-items: center;
  padding: 24px;
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-md);
  background: var(--pd-cream);
}
.pd-event-date { color: var(--pd-pomegranate); font-family: var(--pd-serif); font-size: 1.3rem; }

/* WooCommerce */
.woocommerce .woocommerce-breadcrumb { color: var(--pd-stone); font-size: .8rem; }
.woocommerce div.product { padding: 48px 0 90px; }
.woocommerce div.product div.images img { border-radius: var(--pd-radius-md); }
.woocommerce div.product .product_title { font-size: clamp(2.3rem, 5vw, 4.6rem); }
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--pd-pomegranate); font-family: var(--pd-serif); font-size: 1.6rem; }
.woocommerce .quantity .qty { min-height: 52px; border: 1px solid var(--pd-line); border-radius: 999px; background: var(--pd-cream); }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error { border-top-color: var(--pd-pomegranate); background: var(--pd-cream); }
.woocommerce-message::before,
.woocommerce-info::before { color: var(--pd-pomegranate); }
.woocommerce table.shop_table { overflow: hidden; border-color: var(--pd-line); border-radius: var(--pd-radius-md); background: var(--pd-cream); }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
  min-height: 50px;
  border: 1px solid var(--pd-line);
  border-radius: 12px;
  background: var(--pd-cream);
}
.woocommerce-checkout #payment { background: var(--pd-cream); border: 1px solid var(--pd-line); border-radius: var(--pd-radius-md); }

/* Footer */
.pd-footer { padding: 80px 0 26px; background: var(--pd-walnut); color: var(--pd-cream); }
.pd-footer-grid { display: grid; grid-template-columns: 1.35fr repeat(3, .72fr); gap: 50px; padding-bottom: 56px; }
.pd-footer h3, .pd-footer h4 { color: var(--pd-cream); }
.pd-footer h4 {
  margin-bottom: 14px;
  font-family: var(--pd-sans);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.pd-footer p, .pd-footer a { color: rgba(255,250,242,.72); }
.pd-footer ul { list-style: none; padding: 0; margin: 0; }
.pd-footer li + li { margin-top: 8px; }
.pd-footer a { text-decoration: none; }
.pd-footer a:hover { color: var(--pd-saffron); }
.pd-footer-brand { max-width: 430px; }
.pd-footer-brand-link {
  display: inline-flex;
  align-items: center;
  margin-bottom: 16px;
}
.pd-footer-brand .pd-brand-text { display: block; margin-bottom: 15px; color: white; font-size: 2rem; }
.pd-footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.12);
  color: rgba(255,250,242,.55);
  font-size: .8rem;
}

/* Utility */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }
.alignwide { width: min(calc(100vw - 40px), var(--pd-max)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }

@media (max-width: 1080px) {
  .pd-header-inner { grid-template-columns: 1fr auto; }
  .pd-primary-nav {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    padding: 26px 20px 34px;
    border-bottom: 1px solid var(--pd-line);
    background: var(--pd-ivory);
  }
  .pd-primary-nav.is-open { display: block; }
  .pd-primary-nav ul { flex-direction: column; align-items: stretch; gap: 0; }
  .pd-primary-nav a { display: block; padding: 12px 0; font-family: var(--pd-serif); font-size: 1.3rem; }
  .pd-primary-nav .current-menu-item > a::after,
  .pd-primary-nav .current_page_item > a::after { display: none; }
  .pd-menu-toggle { display: inline-block; }
  .pd-header-actions .pd-order-btn { display: none !important; }
  .pd-hero-grid { grid-template-columns: 1fr 430px; gap: 42px; }
  .pd-product-grid, .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .pd-footer-grid { grid-template-columns: 1.2fr 1fr 1fr; }
  .pd-footer-grid > :last-child { grid-column: 2 / -1; }
}

@media (max-width: 760px) {
  body { font-size: 16px; }
  .admin-bar .pd-site-header { top: 46px; }
  .pd-shell, .pd-narrow { width: min(calc(100% - 28px), var(--pd-max)); }
  .pd-header-inner { min-height: 74px; gap: 14px; }
  .pd-logo--header { max-height: 48px; }
  .pd-header-actions { gap: 7px; }
  .pd-hero { min-height: 0; }
  .pd-hero-grid { grid-template-columns: 1fr; padding: 58px 0 82px; }
  .pd-hero-copy { max-width: 100%; }
  .pd-hero h1 { font-size: clamp(3.1rem, 15vw, 5.2rem); }
  .pd-hero-media { max-width: 520px; }
  .pd-section-head { align-items: start; flex-direction: column; }
  .pd-product-grid, .woocommerce ul.products { grid-template-columns: 1fr; }
  .pd-story-grid { grid-template-columns: 1fr; }
  .pd-pattern-card { width: 120px; right: -8px; bottom: -18px; }
  .pd-catering-card { min-height: 640px; }
  .pd-catering-card::after { background: linear-gradient(0deg, rgba(30,22,18,.90) 0%, rgba(30,22,18,.60) 54%, rgba(30,22,18,.08) 100%); }
  .pd-reviews { grid-template-columns: 1fr; }
  .pd-event-card { grid-template-columns: 1fr; }
  .pd-footer-grid { grid-template-columns: 1fr 1fr; }
  .pd-footer-grid > :first-child,
  .pd-footer-grid > :last-child { grid-column: 1 / -1; }
  .pd-footer-bottom { flex-direction: column; }
}

@media (max-width: 680px) {
  .woocommerce-account .woocommerce-MyAccount-content { overflow: hidden; }
  .woocommerce-account .woocommerce-orders-table,
  .woocommerce-account .woocommerce-orders-table tbody,
  .woocommerce-account .woocommerce-orders-table tr,
  .woocommerce-account .woocommerce-orders-table td {
    display: block;
    width: 100%;
  }
  .woocommerce-account .woocommerce-orders-table thead { display: none; }
  .woocommerce-account .woocommerce-orders-table tbody tr {
    padding: 8px 0;
    border-bottom: 1px solid var(--pd-line);
  }
  .woocommerce-account .woocommerce-orders-table tbody tr:last-child { border-bottom: 0; }
  .woocommerce-account .woocommerce-orders-table td {
    min-width: 0;
    padding: 9px 14px;
    border: 0;
    text-align: right;
  }
  .woocommerce-account .woocommerce-orders-table td::before {
    float: left;
    margin-right: 18px;
    color: var(--pd-stone);
    font-size: .75rem;
    font-weight: 780;
  }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions {
    text-align: left;
  }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions::before {
    float: none;
    display: block;
    margin: 0 0 6px;
  }
}

@media (max-width: 440px) {
  .pd-btn { width: 100%; }
  .pd-actions { width: 100%; }
  .pd-cart-link,
  .pd-menu-toggle { width: 42px; height: 42px; }
  .pd-footer-grid { grid-template-columns: 1fr; }
  .pd-footer-grid > * { grid-column: 1 !important; }
}

/* v1.2 page system */
.pd-page-hero--split {
  padding: clamp(72px, 9vw, 126px) 0 clamp(62px, 8vw, 108px);
}
.pd-page-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .72fr);
  gap: clamp(44px, 8vw, 110px);
  align-items: end;
}
.pd-page-hero--split h1 {
  max-width: 760px;
  margin-bottom: 0;
  font-size: clamp(3.6rem, 7vw, 6.7rem);
}
.pd-page-hero-aside {
  padding-bottom: .55rem;
}
.pd-page-hero-aside .pd-lead {
  margin-bottom: 24px;
}
.pd-inline-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.pd-inline-notes span {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 12px;
  border: 1px solid var(--pd-line);
  border-radius: 999px;
  background: rgba(255,255,255,.34);
  color: var(--pd-stone);
  font-size: .75rem;
  font-weight: 750;
  letter-spacing: .04em;
}
.pd-section--compact { padding: clamp(44px, 6vw, 72px) 0; }
.pd-section-head--top { align-items: start; }
.pd-rich-intro {
  max-width: 900px;
  font-size: 1.08rem;
  color: var(--pd-stone);
}
.pd-rich-intro > *:first-child { margin-top: 0; }
.pd-rich-intro > *:last-child { margin-bottom: 0; }
.pd-product-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.pd-empty-state {
  display: grid;
  grid-template-columns: 84px 1fr;
  gap: 24px;
  align-items: center;
  max-width: 820px;
  padding: clamp(28px, 4vw, 42px);
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-md);
  background: rgba(255,255,255,.38);
}
.pd-empty-state-mark {
  display: grid;
  width: 84px;
  height: 84px;
  place-items: center;
  border-radius: 50%;
  background: var(--pd-walnut);
  color: var(--pd-saffron);
  font-family: var(--pd-serif);
  font-size: 2.4rem;
}
.pd-empty-state h3 { margin-bottom: 8px; }
.pd-empty-state p { margin: 0; color: var(--pd-stone); }

.pd-step-grid,
.pd-service-grid,
.pd-value-grid,
.pd-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.pd-step-card,
.pd-service-card,
.pd-value-grid article,
.pd-info-card {
  position: relative;
  min-height: 260px;
  padding: 30px;
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-md);
  background: rgba(255,255,255,.38);
}
.pd-step-card > span,
.pd-service-card > span,
.pd-value-grid article > span {
  display: block;
  margin-bottom: 42px;
  color: var(--pd-pomegranate);
  font-size: .74rem;
  font-weight: 850;
  letter-spacing: .14em;
}
.pd-step-card h3,
.pd-service-card h3,
.pd-value-grid h3,
.pd-info-card h3 { margin-bottom: 12px; }
.pd-step-card p,
.pd-service-card p,
.pd-value-grid p,
.pd-info-card p { margin-bottom: 0; color: var(--pd-stone); }
.pd-info-card-label {
  margin-bottom: 38px;
  color: var(--pd-pomegranate);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.pd-info-card a {
  display: inline-block;
  margin-top: 20px;
  color: var(--pd-pomegranate);
  font-weight: 800;
  text-decoration: none;
}

.pd-callout-band {
  padding: clamp(58px, 7vw, 86px) 0;
  background: var(--pd-pomegranate);
  color: var(--pd-cream);
}
.pd-callout-band .pd-kicker { color: var(--pd-saffron); }
.pd-callout-band h2 { margin: 0; max-width: 780px; }
.pd-callout-band-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 42px;
}

.pd-process-layout {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1fr);
  gap: clamp(50px, 9vw, 120px);
  align-items: start;
}
.pd-process-list {
  border-top: 1px solid var(--pd-line);
}
.pd-process-list article {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 22px;
  padding: 28px 0;
  border-bottom: 1px solid var(--pd-line);
}
.pd-process-list article > span {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid var(--pd-line);
  border-radius: 50%;
  color: var(--pd-pomegranate);
  font-size: .78rem;
  font-weight: 850;
}
.pd-process-list h3 { margin-bottom: 5px; font-size: 1.55rem; }
.pd-process-list p { margin: 0; color: var(--pd-stone); }

.pd-inquiry-layout,
.pd-contact-layout {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(440px, 1.05fr);
  gap: clamp(48px, 8vw, 100px);
  align-items: start;
}
.pd-form-panel {
  padding: clamp(28px, 5vw, 48px);
  border-radius: var(--pd-radius-lg);
  background: var(--pd-cream);
  color: var(--pd-walnut);
  box-shadow: var(--pd-shadow-sm);
}
.pd-form-panel--light {
  border: 1px solid var(--pd-line);
  box-shadow: none;
}
.pd-form-empty h3 { margin-bottom: 12px; }
.pd-form-empty p { color: var(--pd-stone); }

/* WPForms integration */
.pd-form-panel .wpforms-container { margin: 0; }
.pd-form-panel .wpforms-field { padding: 8px 0 14px !important; }
.pd-form-panel .wpforms-field-label {
  margin-bottom: 7px !important;
  color: var(--pd-walnut) !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  letter-spacing: .04em;
}
.pd-form-panel input[type="text"],
.pd-form-panel input[type="email"],
.pd-form-panel input[type="tel"],
.pd-form-panel input[type="number"],
.pd-form-panel input[type="date"],
.pd-form-panel select,
.pd-form-panel textarea,
.pd-form-panel .wpforms-form input,
.pd-form-panel .wpforms-form select,
.pd-form-panel .wpforms-form textarea {
  width: 100% !important;
  max-width: none !important;
  border: 1px solid var(--pd-line) !important;
  border-radius: 12px !important;
  background: rgba(248,243,233,.58) !important;
  color: var(--pd-walnut) !important;
  font: inherit !important;
}
.pd-form-panel input,
.pd-form-panel select { min-height: 52px !important; }
.pd-form-panel textarea { min-height: 150px !important; }
.pd-form-panel button[type="submit"],
.pd-form-panel .wpforms-submit {
  min-height: 50px !important;
  padding: 0 22px !important;
  border: 1px solid var(--pd-pomegranate) !important;
  border-radius: 999px !important;
  background: var(--pd-pomegranate) !important;
  color: white !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

.pd-event-card {
  grid-template-columns: 112px 1fr auto;
  padding: 28px;
}
.pd-event-date {
  display: grid;
  place-items: center;
  align-content: center;
  min-height: 112px;
  border-right: 1px solid var(--pd-line);
  text-align: center;
}
.pd-event-date span,
.pd-event-date small {
  font-family: var(--pd-sans);
  font-size: .7rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.pd-event-date strong {
  display: block;
  font-size: 3rem;
  line-height: 1;
}
.pd-event-card-content h3 { margin-bottom: 7px; }
.pd-event-card-content p { margin: 0; color: var(--pd-stone); }
.pd-event-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 42px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.pd-story-page-layout {
  display: grid;
  grid-template-columns: minmax(250px, .58fr) minmax(0, 1.2fr);
  gap: clamp(48px, 10vw, 140px);
  align-items: start;
}
.pd-story-page-aside {
  position: sticky;
  top: 132px;
}
.pd-story-page-aside blockquote {
  margin: 8px 0 0;
  padding: 0;
  color: var(--pd-pomegranate);
  font-family: var(--pd-serif);
  font-size: clamp(1.8rem, 3vw, 2.8rem);
  line-height: 1.12;
}
.pd-story-page-content {
  font-size: 1.08rem;
  color: var(--pd-stone);
}
.pd-story-page-content h2,
.pd-story-page-content h3 { color: var(--pd-walnut); }
.pd-story-page-content h2 { font-size: clamp(2.3rem, 4vw, 4rem); }
.pd-story-page-content > *:first-child { margin-top: 0; }

.pd-contact-details h2 { max-width: 560px; }
.pd-contact-list {
  margin-top: 38px;
  border-top: 1px solid var(--pd-line);
}
.pd-contact-list > a {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 18px 0;
  border-bottom: 1px solid var(--pd-line);
  text-decoration: none;
}
.pd-contact-list span {
  color: var(--pd-pomegranate);
  font-size: .7rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.pd-contact-list strong { font-size: 1rem; overflow-wrap: anywhere; }
.pd-contact-note {
  margin-top: 32px;
  padding: 22px;
  border-radius: var(--pd-radius-sm);
  background: rgba(142,36,53,.06);
}
.pd-contact-note strong { font-family: var(--pd-serif); font-size: 1.4rem; }
.pd-contact-note p { margin: 7px 0 12px; color: var(--pd-stone); }
.pd-contact-note a { color: var(--pd-pomegranate); font-weight: 800; text-decoration: none; }

/* Generic pages */
.page:not(.woocommerce-page) .pd-page-content {
  font-size: 1.05rem;
  color: var(--pd-stone);
}
.page:not(.woocommerce-page) .pd-page-content h2,
.page:not(.woocommerce-page) .pd-page-content h3,
.page:not(.woocommerce-page) .pd-page-content h4 { color: var(--pd-walnut); }

/* WooCommerce page polish */
.pd-shop-header {
  padding: clamp(64px, 8vw, 104px) 0 28px;
}
.pd-shop-header h1 { margin-bottom: 12px; }
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering { margin-bottom: 30px; }
.woocommerce .woocommerce-ordering select {
  min-height: 46px;
  padding: 0 38px 0 14px;
  border: 1px solid var(--pd-line);
  border-radius: 999px;
  background: var(--pd-cream);
}
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce { padding: 28px 0 80px; }
.woocommerce-cart h1,
.woocommerce-checkout h1,
.woocommerce-account h1 { font-size: clamp(2.8rem, 6vw, 5rem); }

@media (max-width: 1080px) {
  .pd-product-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pd-page-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr); gap: 48px; }
  .pd-process-layout,
  .pd-inquiry-layout,
  .pd-contact-layout { grid-template-columns: 1fr 1fr; gap: 48px; }
}

@media (max-width: 760px) {
  .pd-page-hero-grid,
  .pd-process-layout,
  .pd-inquiry-layout,
  .pd-contact-layout,
  .pd-story-page-layout { grid-template-columns: 1fr; }
  .pd-page-hero--split h1 { font-size: clamp(3.25rem, 15vw, 5.3rem); }
  .pd-page-hero-aside { padding-bottom: 0; }
  .pd-step-grid,
  .pd-service-grid,
  .pd-value-grid,
  .pd-info-grid { grid-template-columns: 1fr; }
  .pd-step-card,
  .pd-service-card,
  .pd-value-grid article,
  .pd-info-card { min-height: auto; }
  .pd-callout-band-inner,
  .pd-event-note { flex-direction: column; align-items: flex-start; }
  .pd-story-page-aside { position: static; }
  .pd-event-card { grid-template-columns: 90px 1fr; }
  .pd-event-card .pd-btn { grid-column: 1 / -1; }
  .pd-event-date { min-height: 96px; }
  .pd-form-panel { padding: 24px 20px; }
}

@media (max-width: 520px) {
  .pd-product-grid--four { grid-template-columns: 1fr; }
  .pd-empty-state { grid-template-columns: 1fr; }
  .pd-empty-state-mark { width: 64px; height: 64px; }
  .pd-event-card { grid-template-columns: 1fr; }
  .pd-event-date { min-height: auto; justify-items: start; border-right: 0; border-bottom: 1px solid var(--pd-line); padding-bottom: 18px; text-align: left; }
  .pd-event-date strong { font-size: 2.2rem; }
}

.pd-product-card h3 a { text-decoration: none; }
.pd-product-card-bottom {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-top: 18px;
}
.pd-product-link {
  color: var(--pd-pomegranate);
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .05em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}
.pd-product-link span { transition: transform .2s ease; display: inline-block; }
.pd-product-link:hover span { transform: translateX(3px); }
.pd-shop-hero .term-description p:last-child { margin-bottom: 0; }

@media (max-width: 680px) {
  .woocommerce-account .woocommerce-MyAccount-content { overflow: hidden; }
  .woocommerce-account .woocommerce-orders-table,
  .woocommerce-account .woocommerce-orders-table tbody,
  .woocommerce-account .woocommerce-orders-table tr,
  .woocommerce-account .woocommerce-orders-table td {
    display: block;
    width: 100%;
  }
  .woocommerce-account .woocommerce-orders-table thead { display: none; }
  .woocommerce-account .woocommerce-orders-table tbody tr {
    padding: 8px 0;
    border-bottom: 1px solid var(--pd-line);
  }
  .woocommerce-account .woocommerce-orders-table tbody tr:last-child { border-bottom: 0; }
  .woocommerce-account .woocommerce-orders-table td {
    min-width: 0;
    padding: 9px 14px;
    border: 0;
    text-align: right;
  }
  .woocommerce-account .woocommerce-orders-table td::before {
    float: left;
    margin-right: 18px;
    color: var(--pd-stone);
    font-size: .75rem;
    font-weight: 780;
  }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions {
    text-align: left;
  }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions::before {
    float: none;
    display: block;
    margin: 0 0 6px;
  }
}

@media (max-width: 440px) {
  .pd-product-card-bottom { align-items: flex-start; flex-direction: column; }
}


/* Contact page refinements */
.pd-contact-section { padding-top: clamp(62px, 8vw, 104px); }
.pd-contact-layout--refined {
  grid-template-columns: minmax(0, .95fr) minmax(440px, 1fr);
  gap: clamp(54px, 8vw, 110px);
}
.pd-contact-intro { max-width: 560px; }
.pd-contact-method-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 34px;
}
.pd-contact-method {
  display: flex;
  min-height: 150px;
  flex-direction: column;
  justify-content: space-between;
  gap: 9px;
  padding: 22px;
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-sm);
  background: rgba(255,255,255,.28);
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.pd-contact-method:hover {
  transform: translateY(-3px);
  border-color: rgba(142,36,53,.26);
  background: rgba(255,250,242,.68);
  box-shadow: var(--pd-shadow-sm);
}
.pd-contact-method span {
  color: var(--pd-pomegranate);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.pd-contact-method strong {
  display: block;
  margin-top: auto;
  font-family: var(--pd-serif);
  font-size: 1.32rem;
  line-height: 1.12;
  overflow-wrap: anywhere;
}
.pd-contact-method small {
  color: var(--pd-stone);
  font-size: .78rem;
}
.pd-contact-form-wrap > h2 {
  max-width: 520px;
  margin-bottom: 26px;
}
.pd-contact-form-wrap .pd-form-panel {
  padding: clamp(28px, 4vw, 42px);
  background: rgba(255,250,242,.72);
}
.pd-contact-form-wrap .wpforms-title,
.pd-contact-form-wrap .wpforms-description { display: none !important; }

@media (max-width: 1080px) {
  .pd-contact-layout--refined { grid-template-columns: 1fr 1fr; gap: 44px; }
  .pd-contact-method-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .pd-contact-layout--refined { grid-template-columns: 1fr; }
  .pd-contact-method-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 520px) {
  .pd-contact-method-grid { grid-template-columns: 1fr; }
  .pd-contact-method { min-height: 132px; }
}

/* Commerce flow: Cart, Checkout and Order confirmation */
.pd-commerce-hero {
  padding: clamp(70px, 9vw, 118px) 0 clamp(54px, 7vw, 88px);
  border-bottom: 1px solid var(--pd-line);
}
.pd-commerce-hero--success { background: rgba(104,115,87,.07); }
.pd-commerce-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr);
  gap: clamp(48px, 9vw, 120px);
  align-items: end;
}
.pd-commerce-hero h1 {
  max-width: 760px;
  margin: 0;
  font-size: clamp(3.4rem, 7vw, 6.2rem);
}
.pd-commerce-hero-copy { padding-bottom: 8px; color: var(--pd-stone); font-size: 1.08rem; }
.pd-commerce-hero-copy p { max-width: 620px; }
.pd-commerce-section { padding: clamp(56px, 7vw, 92px) 0; }
.pd-commerce-shell { max-width: 1180px; }
.pd-commerce-content { min-width: 0; }
.pd-commerce-help { padding: 0 0 clamp(72px, 9vw, 118px); }
.pd-commerce-help-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.pd-commerce-help article {
  min-height: 220px;
  padding: 26px;
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-md);
  background: rgba(255,255,255,.32);
}
.pd-commerce-help article > span {
  color: var(--pd-pomegranate);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .12em;
}
.pd-commerce-help h3 { margin: 42px 0 10px; font-size: 1.8rem; }
.pd-commerce-help p { margin: 0; color: var(--pd-stone); }

/* Cart block and classic cart */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout,
.wc-block-cart,
.wc-block-checkout { font-family: var(--pd-sans); }
.wc-block-components-sidebar,
.wc-block-cart__main,
.wc-block-checkout__main,
.woocommerce-cart-form,
.cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-checkout #customer_details {
  border-radius: var(--pd-radius-md);
}
.wc-block-cart-items,
.wc-block-components-order-summary,
.woocommerce table.shop_table {
  border-color: var(--pd-line) !important;
  background: rgba(255,250,242,.66);
}
.wc-block-cart-items__row,
.wc-block-components-order-summary-item,
.woocommerce-cart-form__cart-item { border-color: var(--pd-line) !important; }
.wc-block-components-product-name,
.woocommerce-cart-form__cart-item .product-name a {
  color: var(--pd-walnut) !important;
  font-family: var(--pd-serif);
  font-size: 1.25rem;
  font-weight: 650;
  text-decoration: none;
}
.wc-block-components-product-metadata,
.woocommerce .variation {
  color: var(--pd-stone) !important;
  font-size: .82rem;
}
.wc-block-components-product-metadata__description { display: none; }
.wc-block-components-quantity-selector,
.woocommerce .quantity .qty {
  border-color: var(--pd-line) !important;
  background: var(--pd-cream) !important;
}
.wc-block-components-totals-wrapper,
.wc-block-components-order-summary__content,
.cart_totals td,
.cart_totals th { border-color: var(--pd-line) !important; }
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.woocommerce .checkout-button,
.woocommerce #place_order {
  min-height: 56px !important;
  border-radius: 999px !important;
  background: var(--pd-pomegranate) !important;
  color: #fff !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.woocommerce .checkout-button:hover,
.woocommerce #place_order:hover { background: var(--pd-pomegranate-dark) !important; }
.wc-block-components-button:not(.is-link) { box-shadow: none !important; }
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea {
  border-color: var(--pd-line) !important;
  border-radius: 12px !important;
  background: var(--pd-cream) !important;
}
.wc-block-components-checkout-step__heading h2,
.woocommerce-checkout h3 {
  font-family: var(--pd-serif) !important;
  font-size: clamp(1.75rem, 3vw, 2.5rem) !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.order-total { color: var(--pd-walnut); font-weight: 800; }
.wc-block-components-radio-control-accordion-option,
.woocommerce-checkout #payment {
  border-color: var(--pd-line) !important;
  background: rgba(255,250,242,.72) !important;
}
.woocommerce-checkout-payment .payment_box { background: rgba(142,36,53,.045) !important; }
.woocommerce-checkout-payment .payment_box::before { border-bottom-color: rgba(142,36,53,.045) !important; }

/* Thank-you / order received */
.woocommerce-order-received .woocommerce-order,
.woocommerce-order-received .wc-block-order-confirmation-status,
.woocommerce-order-received .wp-block-woocommerce-order-confirmation-status {
  max-width: 1080px;
  margin-inline: auto;
}
.woocommerce-order-overview,
.wc-block-order-confirmation-summary {
  padding: 24px !important;
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-md);
  background: rgba(255,250,242,.72);
}

/* Newsletter band between content and footer */
.pd-footer-newsletter {
  padding: clamp(58px, 7vw, 88px) 0;
  background: var(--pd-pomegranate);
  color: var(--pd-cream);
}

@media (max-width: 900px) {
  .pd-commerce-hero-grid { grid-template-columns: 1fr; gap: 28px; }
  .pd-commerce-help-grid { grid-template-columns: 1fr; }
  .pd-commerce-help article { min-height: auto; }
  .pd-commerce-help h3 { margin-top: 24px; }
}

/* Our Dishes catalogue */
.pd-catalogue-section { padding-top: clamp(58px, 7vw, 94px); }
.pd-dish-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1.35fr) repeat(3, minmax(150px, .7fr)) auto;
  gap: 12px;
  align-items: end;
  margin: 34px 0 18px;
  padding: 18px;
  border: 1px solid var(--pd-line);
  border-radius: 22px;
  background: rgba(255,255,255,.58);
  box-shadow: var(--pd-shadow-sm);
}
.pd-dish-filters label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.pd-dish-filters label > span {
  color: var(--pd-pomegranate);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.pd-dish-filters input,
.pd-dish-filters select {
  width: 100%;
  min-height: 48px;
  padding: 0 13px;
  border: 1px solid rgba(47,35,29,.14);
  border-radius: 12px;
  background: var(--pd-cream);
  color: var(--pd-walnut);
  font: inherit;
  font-size: .88rem;
}
.pd-filter-actions {
  display: flex;
  gap: 12px;
  align-items: center;
  min-height: 48px;
}
.pd-filter-actions .pd-btn { min-height: 48px; white-space: nowrap; }
.pd-filter-reset {
  color: var(--pd-pomegranate);
  font-size: .78rem;
  font-weight: 800;
  text-decoration: none;
}
.pd-catalogue-summary {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 26px;
  color: var(--pd-stone);
  font-size: .8rem;
}
.pd-dietary-disclaimer {
  max-width: 880px;
  margin: 34px auto 0;
  padding-top: 20px;
  border-top: 1px solid var(--pd-line);
  color: var(--pd-stone);
  font-size: .78rem;
  text-align: center;
}
@media (max-width: 1080px) {
  .pd-dish-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pd-filter-actions { align-self: end; }
}
@media (max-width: 640px) {
  .pd-dish-filters { grid-template-columns: 1fr; }
  .pd-filter-actions { justify-content: space-between; }
  .pd-filter-actions .pd-btn { flex: 1; }
  .pd-catalogue-summary { flex-direction: column; gap: 4px; }
}

.pd-product-price small {
  display: block;
  margin-top: 2px;
  color: var(--pd-stone);
  font-family: var(--pd-sans);
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.pd-catalogue-link-card {
  display: flex;
  justify-content: space-between;
  gap: 36px;
  align-items: center;
  padding: clamp(28px, 5vw, 52px);
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-lg);
  background: rgba(255,255,255,.42);
}
.pd-catalogue-link-card h2 { margin-bottom: 10px; font-size: clamp(2rem, 4vw, 3.8rem); }
.pd-catalogue-link-card p { margin: 0; color: var(--pd-stone); }
@media (max-width: 760px) {
  .pd-catalogue-link-card { align-items: flex-start; flex-direction: column; }
}


/* v1.5 global search */
.pd-global-search-bar {
  position: relative;
  z-index: 90;
  border-bottom: 1px solid var(--pd-line);
  background: rgba(255,250,242,.86);
  backdrop-filter: blur(14px);
}
.pd-global-search-form {
  display: grid;
  grid-template-columns: 24px minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 58px;
}
.pd-global-search-icon { display: inline-grid; place-items: center; color: var(--pd-stone); }
.pd-global-search-icon svg { width: 20px; height: 20px; }
.pd-global-search-form input[type="search"] {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--pd-walnut);
  font: inherit;
  font-size: .96rem;
}
.pd-global-search-form input[type="search"]::placeholder { color: rgba(47,35,29,.48); }
.pd-global-search-form button {
  border: 0;
  border-left: 1px solid var(--pd-line);
  padding: 7px 0 7px 22px;
  background: transparent;
  color: var(--pd-pomegranate);
  font: inherit;
  font-size: .86rem;
  font-weight: 800;
  cursor: pointer;
}
.pd-global-search-form button:hover { color: var(--pd-pomegranate-dark); }
.pd-page-hero--compact { padding-top: clamp(64px,8vw,108px); padding-bottom: clamp(48px,6vw,78px); }
.pd-search-results-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 26px;
}
.pd-search-result-card {
  overflow: hidden;
  border: 1px solid var(--pd-line);
  border-radius: var(--pd-radius-md);
  background: rgba(255,255,255,.66);
  box-shadow: var(--pd-shadow-sm);
}
.pd-search-result-image { display:block; aspect-ratio:4/3; overflow:hidden; background:#eee4d7; }
.pd-search-result-image img { width:100%; height:100%; object-fit:cover; }
.pd-search-result-body { padding: 24px; }
.pd-search-result-body h3 a { text-decoration:none; }
.pd-search-pagination { margin-top:42px; }
@media (max-width: 980px) { .pd-search-results-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 650px) {
  .pd-global-search-form { grid-template-columns: 20px minmax(0,1fr); min-height:54px; }
  .pd-global-search-form button { display:none; }
  .pd-search-results-grid { grid-template-columns:1fr; }
}

/* 1.6.0 Promotion / campaign landing pages */
.pd-promotion-hero{padding:clamp(52px,8vw,104px) 0;background:linear-gradient(135deg,var(--pd-cream),var(--pd-ivory))}
.pd-promotion-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);align-items:center;gap:clamp(34px,6vw,84px)}
.pd-promotion-hero__copy h1{max-width:760px;margin:14px 0 20px;font-size:clamp(3rem,7vw,6.6rem);line-height:.94;letter-spacing:-.055em}
.pd-promotion-offer{margin:0 0 10px;color:var(--pd-pomegranate);font-family:var(--pd-serif);font-size:clamp(1.35rem,2.4vw,2.1rem);line-height:1.18}
.pd-promotion-urgency{display:inline-flex;margin:10px 0 24px;padding:9px 13px;border:1px solid rgba(122,33,51,.22);border-radius:999px;background:rgba(255,255,255,.55);color:var(--pd-walnut);font-size:.88rem;font-weight:750}
.pd-promotion-price{display:flex;align-items:baseline;gap:10px;margin:0 0 24px;color:var(--pd-walnut);font-family:var(--pd-serif);font-size:2rem}.pd-promotion-price small{color:var(--pd-stone);font-family:var(--pd-sans);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.pd-promotion-hero__media img{display:block;width:100%;max-height:680px;object-fit:cover;border-radius:30px;box-shadow:0 28px 65px rgba(47,35,29,.14)}
.pd-promotion-body .pd-narrow{font-size:1.08rem}.pd-promotion-final-cta{margin-top:34px;padding-top:28px;border-top:1px solid var(--pd-line)}
.pd-promotion-ended{min-height:62vh;display:flex;align-items:center}.pd-promotion-ended__inner{max-width:820px}.pd-promotion-ended h1{max-width:720px}
@media(max-width:900px){.pd-promotion-hero__grid{grid-template-columns:1fr}.pd-promotion-hero__media{order:-1}.pd-promotion-hero__media img{max-height:520px}.pd-promotion-hero__copy h1{font-size:clamp(2.8rem,14vw,5rem)}}


/* Public offers and updates */
.pd-public-content-section{padding-top:clamp(64px,8vw,96px);padding-bottom:clamp(64px,8vw,96px)}
.pd-content-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.pd-content-card{overflow:hidden;border:1px solid var(--pd-line);border-radius:24px;background:var(--pd-cream);box-shadow:0 18px 50px rgba(47,35,29,.05)}
.pd-content-card__media{display:block;aspect-ratio:4/3;background:#e8dfd2;overflow:hidden}
.pd-content-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.pd-content-card:hover .pd-content-card__media img{transform:scale(1.025)}
.pd-content-card__body{padding:24px}
.pd-content-card__meta{color:var(--pd-pomegranate);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.pd-content-card h3{font-size:clamp(1.55rem,2.6vw,2.15rem);margin:8px 0 10px}
.pd-content-card h3 a{color:inherit;text-decoration:none}
.pd-content-card p{color:var(--pd-muted)}
.pd-content-card__offer{font-weight:800;color:var(--pd-walnut)!important}
.pd-content-card__link{color:var(--pd-pomegranate);font-weight:800;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;text-decoration:none}
.pd-public-page .pd-page-content{max-width:none}
.pd-public-page .ph-updates-grid,.pd-public-page .ph-offers-grid{width:100%}
@media(max-width:900px){.pd-content-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.pd-content-card-grid{grid-template-columns:1fr}}


/* Events & RSVP — v1.7.0 */
.pd-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.pd-event-tile{background:#fffaf2;border:1px solid rgba(47,35,29,.12);border-radius:24px;overflow:hidden;display:grid;grid-template-columns:minmax(180px,42%) 1fr;min-height:300px}.pd-event-tile-media{display:block;min-height:100%;background:#e8dfd2}.pd-event-tile-media img{width:100%;height:100%;object-fit:cover;display:block}.pd-event-tile-placeholder{display:flex;width:100%;height:100%;min-height:260px;align-items:center;justify-content:center;background:#8e2435;color:#fffaf2;font:700 82px/1 Georgia,serif}.pd-event-tile-body{padding:28px;display:flex;flex-direction:column;align-items:flex-start}.pd-event-tile-body h3{margin:8px 0 10px;font-size:30px}.pd-event-tile-body h3 a{color:inherit;text-decoration:none}.pd-event-tile-body p{color:#665a52}.pd-event-tile-body .pd-btn,.pd-event-tile-body .pd-text-link{margin-top:auto}.pd-event-tile-location{font-size:14px;font-weight:700}.pd-event-grid--past .pd-event-tile{grid-template-columns:1fr}.pd-event-grid--past .pd-event-tile-media{height:260px}.pd-event-single-hero{background:#2f231d;color:#fffaf2;padding:70px 0}.pd-event-single-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,46%);gap:64px;align-items:center}.pd-event-single-copy h1{font-size:clamp(48px,6vw,82px);line-height:.98;margin:14px 0 24px}.pd-event-single-copy .pd-lead{color:#ded4c7}.pd-event-single-media{border-radius:28px;overflow:hidden;min-height:420px}.pd-event-single-media img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover}.pd-event-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0}.pd-event-facts>div{padding:16px 18px;border:1px solid rgba(255,250,242,.18);border-radius:14px}.pd-event-facts span{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#d6b95e;margin-bottom:6px}.pd-event-facts strong{font-size:15px}.pd-event-story-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:70px}.pd-event-story-main{max-width:820px}.pd-event-story-aside{padding:24px;border:1px solid rgba(47,35,29,.12);border-radius:20px;height:max-content;background:#fffaf2}.pd-event-stat strong{display:block;font:700 64px/1 Georgia,serif;color:#8e2435}.pd-event-stat span{text-transform:uppercase;letter-spacing:.12em;font-size:12px}.pd-event-report-block{margin-top:42px;padding-top:36px;border-top:1px solid rgba(47,35,29,.14)}.pd-event-detail-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px}.pd-event-list-block ul{list-style:none;margin:24px 0 0;padding:0}.pd-event-list-block li{padding:13px 0 13px 22px;border-top:1px solid rgba(47,35,29,.12);position:relative}.pd-event-list-block li:before{content:'✦';position:absolute;left:0;color:#8e2435}.pd-event-testimonial{margin:0;padding:48px;border-radius:24px;background:#8e2435;color:#fffaf2;font:italic 34px/1.35 Georgia,serif;text-align:center}.pd-event-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.pd-event-gallery figure{margin:0}.pd-event-gallery img{width:100%;height:460px;object-fit:cover;border-radius:20px;display:block}.pd-event-gallery figcaption{padding:10px 4px 0;color:#756960;font-size:13px}.ph-event-rsvp{background:#fffaf2;border:1px solid rgba(47,35,29,.14);border-radius:26px;padding:34px;display:grid;grid-template-columns:minmax(220px,34%) 1fr;gap:42px}.ph-event-rsvp-eyebrow{display:block;color:#8e2435;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.ph-event-rsvp h2{font-size:40px;margin:10px 0}.ph-event-rsvp-form{display:grid;gap:16px}.ph-event-rsvp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ph-event-rsvp-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.ph-event-rsvp-form input,.ph-event-rsvp-form select,.ph-event-rsvp-form textarea{width:100%;padding:12px 14px;border:1px solid #cabeb1;border-radius:10px;background:#fff;font:inherit;box-sizing:border-box}.ph-event-rsvp-consent{flex-direction:row!important;align-items:flex-start;font-weight:400!important}.ph-event-rsvp-consent input{width:auto;margin-top:3px}.ph-event-rsvp-message,.ph-event-rsvp-note{margin:0 0 18px;padding:14px 18px;border-radius:12px}.ph-event-rsvp-message--success{background:#edf5ed;color:#24562d}.ph-event-rsvp-message--error{background:#fff0f0;color:#8a2530}.ph-event-rsvp--manage{grid-template-columns:1fr auto;align-items:center}
@media(max-width:1000px){.pd-event-grid{grid-template-columns:1fr}.pd-event-single-hero-grid,.pd-event-story-grid,.pd-event-detail-columns{grid-template-columns:1fr}.pd-event-story-aside{max-width:520px}.ph-event-rsvp{grid-template-columns:1fr}}
@media(max-width:680px){.pd-event-tile{grid-template-columns:1fr}.pd-event-tile-media{height:250px}.pd-event-single-hero{padding:45px 0}.pd-event-single-media,.pd-event-single-media img{min-height:300px}.pd-event-facts,.ph-event-rsvp-grid,.pd-event-gallery{grid-template-columns:1fr}.pd-event-gallery img{height:360px}.ph-event-rsvp{padding:24px}.ph-event-rsvp--manage{grid-template-columns:1fr}.pd-event-testimonial{font-size:26px;padding:32px}}

/* Customer account portal — v1.8.1 */
.pd-account-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 13px;
  border: 1px solid var(--pd-line);
  border-radius: 999px;
  background: rgba(255,255,255,.3);
  color: var(--pd-walnut);
  font-size: .72rem;
  font-weight: 820;
  letter-spacing: .06em;
  text-decoration: none;
  text-transform: uppercase;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
.pd-account-link:hover,
.pd-account-link:focus-visible {
  border-color: rgba(142,36,53,.28);
  background: var(--pd-cream);
  color: var(--pd-pomegranate);
}
.pd-account-icon { width: 19px; height: 19px; flex: 0 0 auto; }

.pd-account-hero {
  padding: clamp(72px, 9vw, 118px) 0 clamp(52px, 7vw, 84px);
  border-bottom: 1px solid var(--pd-line);
  background:
    radial-gradient(circle at 86% 15%, rgba(215,154,45,.10), transparent 29%),
    linear-gradient(135deg, rgba(255,250,242,.92), rgba(248,243,233,.84));
}
.pd-account-hero-grid {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(340px,.72fr);
  gap: clamp(48px, 9vw, 120px);
  align-items: end;
}
.pd-account-hero h1 {
  max-width: 830px;
  margin: 0;
  font-size: clamp(3.35rem, 6.8vw, 6.15rem);
}
.pd-account-hero-copy {
  padding-bottom: 8px;
  color: var(--pd-stone);
  font-size: 1.06rem;
}
.pd-account-page-section { padding: clamp(54px, 7vw, 92px) 0 clamp(76px, 9vw, 126px); }
.pd-account-page-shell { max-width: 1180px; }
.pd-account-content { min-width: 0; }

.woocommerce-account .pd-account-content > .woocommerce {
  display: grid;
  grid-template-columns: 240px minmax(0,1fr);
  grid-template-areas: "account-nav account-main";
  gap: 30px;
  width: 100%;
  min-width: 0;
  padding: 0;
  align-items: start;
}
/* WooCommerce clearfix pseudo-elements become unwanted grid items unless removed. */
.woocommerce-account .pd-account-content > .woocommerce::before,
.woocommerce-account .pd-account-content > .woocommerce::after {
  display: none !important;
  content: none !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
  grid-area: account-nav;
  float: none;
  clear: both;
  width: 100%;
  min-width: 0;
  position: sticky;
  top: 116px;
  padding: 13px;
  border: 1px solid var(--pd-line);
  border-radius: 24px;
  background: rgba(255,250,242,.94);
  box-shadow: var(--pd-shadow-sm);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: flex;
  align-items: center;
  min-height: 48px;
  padding: 10px 14px;
  border-radius: 14px;
  color: var(--pd-walnut);
  font-size: .88rem;
  font-weight: 760;
  text-decoration: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
  background: rgba(142,36,53,.08);
  color: var(--pd-pomegranate);
}
.woocommerce-account .woocommerce-MyAccount-content {
  grid-area: account-main;
  float: none;
  clear: both;
  width: 100%;
  min-width: 0;
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid var(--pd-line);
  border-radius: 28px;
  background: rgba(255,250,242,.94);
  box-shadow: var(--pd-shadow-sm);
}
.woocommerce-account .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 { color: var(--pd-walnut); }

/* Signed-out login and independent registration. */
.woocommerce-account:not(.logged-in) .pd-account-content > .woocommerce { display: block; }
.woocommerce-account .u-columns.col2-set {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 24px;
  margin: 0;
}
.woocommerce-account .u-columns.col2-set::before,
.woocommerce-account .u-columns.col2-set::after { display: none; }
.woocommerce-account .u-column1.col-1,
.woocommerce-account .u-column2.col-2 {
  float: none;
  width: auto;
  padding: clamp(24px,4vw,40px);
  border: 1px solid var(--pd-line);
  border-radius: 28px;
  background: rgba(255,250,242,.94);
  box-shadow: var(--pd-shadow-sm);
}
.woocommerce-account form.login,
.woocommerce-account form.register,
.woocommerce-account form.lost_reset_password {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.woocommerce-account .u-column1 h2,
.woocommerce-account .u-column2 h2 {
  margin-bottom: 24px;
  font-size: clamp(2rem,3.5vw,3rem);
}

.woocommerce-account label,
.woocommerce-account legend {
  color: var(--pd-walnut);
  font-size: .82rem;
  font-weight: 760;
}
.woocommerce-account input.input-text,
.woocommerce-account input[type="email"],
.woocommerce-account input[type="tel"],
.woocommerce-account input[type="password"],
.woocommerce-account select,
.woocommerce-account textarea {
  width: 100%;
  min-height: 50px;
  padding: 11px 14px;
  border: 1px solid rgba(47,35,29,.22);
  border-radius: 13px;
  background: #fff;
  color: var(--pd-walnut);
  font: inherit;
  box-shadow: none;
}
.woocommerce-account textarea { min-height: 110px; resize: vertical; }
.woocommerce-account input:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
  border-color: var(--pd-pomegranate);
  outline: 3px solid rgba(142,36,53,.09);
}
.woocommerce-account .form-row { margin: 0 0 17px; }
.woocommerce-account .woocommerce-form__label-for-checkbox { align-items: flex-start; }
.woocommerce-account .lost_password a,
.woocommerce-account .woocommerce-privacy-policy-link { color: var(--pd-pomegranate); font-weight: 760; }
.woocommerce-account .woocommerce-Address,
.woocommerce-account .woocommerce-customer-details address {
  padding: 22px;
  border: 1px solid var(--pd-line);
  border-radius: 18px;
  background: #fff;
  font-style: normal;
}
.woocommerce-account table.shop_table {
  overflow: hidden;
  border: 1px solid var(--pd-line);
  border-radius: 18px;
  background: #fff;
}
.woocommerce-account table.shop_table th,
.woocommerce-account table.shop_table td { padding: 15px 14px; }

/* Orders page: keep the table readable and actions tidy on desktop. */
.woocommerce-account .woocommerce-orders-table {
  width: 100%;
  table-layout: auto;
  margin: 0;
}
.woocommerce-account .woocommerce-orders-table th,
.woocommerce-account .woocommerce-orders-table td {
  vertical-align: middle;
}
.woocommerce-account .woocommerce-orders-table__header-order-actions,
.woocommerce-account .woocommerce-orders-table__cell-order-actions {
  width: 250px;
  min-width: 250px;
}
.woocommerce-account .woocommerce-orders-table__cell-order-actions {
  white-space: normal;
}
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  margin: 4px 5px 4px 0;
  padding: 0 15px;
  border-radius: 999px;
  font-size: .72rem;
  line-height: 1;
  letter-spacing: .08em;
  white-space: nowrap;
}
.woocommerce-account .woocommerce-orders-table__cell-order-number a {
  color: var(--pd-pomegranate);
  font-weight: 820;
}
.woocommerce-account .woocommerce-orders-table tbody tr:hover {
  background: rgba(142,36,53,.025);
}
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
  border: 0;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(47,35,29,.05);
}

@media (max-width: 1180px) {
  .pd-account-link span { display: none; }
  .pd-account-link { width: 46px; padding: 0; justify-content: center; }
}
@media (max-width: 900px) {
  .pd-account-hero-grid { grid-template-columns: 1fr; gap: 26px; }
  .woocommerce-account .pd-account-content > .woocommerce {
    grid-template-columns: 1fr;
    grid-template-areas:
      "account-nav"
      "account-main";
    gap: 18px;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation { position: static; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex;
    gap: 4px;
    overflow-x: auto;
    padding-bottom: 2px;
    scrollbar-width: thin;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
  .woocommerce-account .woocommerce-MyAccount-navigation a { white-space: nowrap; }
}
@media (max-width: 700px) {
  .woocommerce-account .u-columns.col2-set { grid-template-columns: 1fr; }
  .pd-account-hero h1 { font-size: clamp(3rem,14vw,4.8rem); }
}
@media (max-width: 680px) {
  .woocommerce-account .woocommerce-MyAccount-content { overflow: hidden; }
  .woocommerce-account .woocommerce-orders-table,
  .woocommerce-account .woocommerce-orders-table tbody,
  .woocommerce-account .woocommerce-orders-table tr,
  .woocommerce-account .woocommerce-orders-table td {
    display: block;
    width: 100%;
  }
  .woocommerce-account .woocommerce-orders-table thead { display: none; }
  .woocommerce-account .woocommerce-orders-table tbody tr {
    padding: 8px 0;
    border-bottom: 1px solid var(--pd-line);
  }
  .woocommerce-account .woocommerce-orders-table tbody tr:last-child { border-bottom: 0; }
  .woocommerce-account .woocommerce-orders-table td {
    min-width: 0;
    padding: 9px 14px;
    border: 0;
    text-align: right;
  }
  .woocommerce-account .woocommerce-orders-table td::before {
    float: left;
    margin-right: 18px;
    color: var(--pd-stone);
    font-size: .75rem;
    font-weight: 780;
  }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions {
    text-align: left;
  }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions::before {
    float: none;
    display: block;
    margin: 0 0 6px;
  }
}

@media (max-width: 440px) {
  .pd-account-link { width: 42px; min-height: 42px; }
  .woocommerce-account .woocommerce-MyAccount-content,
  .woocommerce-account .u-column1.col-1,
  .woocommerce-account .u-column2.col-2 { padding: 21px; border-radius: 22px; }
}


/* Persiano 1.9 — compact, practical typography across store and account pages */
:root{--ph-title-xl:clamp(2.7rem,6vw,5rem);--ph-title-lg:clamp(2.15rem,4.2vw,3.8rem);--ph-title-md:clamp(1.7rem,3vw,2.65rem);--ph-title-sm:clamp(1.35rem,2.2vw,2rem)}
.site-title,.hero-title,.ph-hero h1,.home-hero h1{font-size:var(--ph-title-xl)!important;line-height:1.02!important}
.entry-title,.page-title,.woocommerce-products-header__title,.ph-page-hero h1,.page-hero h1{font-size:var(--ph-title-lg)!important;line-height:1.08!important;margin-bottom:.45em!important}
.woocommerce-MyAccount-content h1,.woocommerce-MyAccount-content>h2,.woocommerce-account .entry-title,.ph-account-hero h1,.ph-account-welcome h1{font-size:var(--ph-title-md)!important;line-height:1.12!important}
.woocommerce-MyAccount-content h2,.woocommerce-cart h2,.woocommerce-checkout h2,.woocommerce-order-details__title,.woocommerce-column__title,.ph-account-section h2,.ph-loyalty-hero h2{font-size:var(--ph-title-sm)!important;line-height:1.2!important}
.woocommerce-MyAccount-content h3,.product_title,.woocommerce-loop-product__title{line-height:1.18!important}
.ph-page-hero,.page-hero,.woocommerce-account .site-main>header{padding-top:clamp(2rem,5vw,4.5rem)!important;padding-bottom:clamp(1.6rem,4vw,3.5rem)!important;min-height:0!important}
.site-header nav a,.main-navigation a{font-size:.88rem!important}
.button,button,input[type=submit]{font-size:.78rem!important;letter-spacing:.06em!important}
.ph-item-saving,.ph-total-savings{color:#5f7046!important}.ph-total-savings strong{color:#5f7046!important}
@media(max-width:640px){.site-title,.hero-title,.ph-hero h1,.home-hero h1{font-size:clamp(2.35rem,12vw,3.4rem)!important}.entry-title,.page-title,.woocommerce-products-header__title,.ph-page-hero h1,.page-hero h1{font-size:clamp(1.9rem,9vw,2.7rem)!important}.woocommerce-MyAccount-content h1,.woocommerce-account .entry-title{font-size:1.85rem!important}.ph-page-hero,.page-hero{padding-top:1.8rem!important;padding-bottom:1.5rem!important}}

/* Persiano 1.10 — balanced utility typography and clearer payment pages */
:root{
  --ph-title-xl:clamp(3.4rem,6.4vw,6rem);
  --ph-title-lg:clamp(2.3rem,4vw,3.7rem);
  --ph-title-md:clamp(1.75rem,2.8vw,2.5rem);
  --ph-title-sm:clamp(1.3rem,1.9vw,1.8rem);
}
.pd-account-hero{padding:clamp(2.1rem,4vw,3.8rem) 0!important;min-height:0!important}
.pd-account-hero h1{font-size:clamp(2.6rem,5.2vw,4.6rem)!important;line-height:1.02!important}
.woocommerce-account:not(.woocommerce-account-dashboard) .pd-account-hero{padding:1.6rem 0!important}
.woocommerce-account:not(.woocommerce-account-dashboard) .pd-account-hero h1{font-size:clamp(2rem,3.5vw,3rem)!important}
.woocommerce-account:not(.woocommerce-account-dashboard) .pd-account-hero-copy{font-size:.95rem!important}
.woocommerce-account .pd-global-search-bar{display:none!important}
.woocommerce-checkout .pd-commerce-hero{padding:clamp(2rem,4vw,3.6rem) 0!important}
.woocommerce-checkout .pd-commerce-hero h1{font-size:clamp(2.6rem,4.6vw,4.5rem)!important;line-height:1.02!important}
.woocommerce-checkout .pd-commerce-shell,.woocommerce-checkout .woocommerce{max-width:1120px!important}
.woocommerce-checkout form#order_review,.woocommerce-checkout .woocommerce-order-pay{max-width:100%!important}
.woocommerce-checkout #payment{background:#fffaf2!important;border:1px solid var(--pd-line)!important;border-radius:22px!important}
.woocommerce-checkout #payment div.payment_box{background:#f8f3e9!important;color:var(--pd-walnut)!important;border-radius:14px!important}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#f8f3e9!important}
.woocommerce-checkout #place_order{min-width:190px!important;font-size:.82rem!important}
.site-header nav a,.main-navigation a{font-size:.94rem!important}
@media(max-width:900px){
  .pd-account-hero{padding:1.5rem 0!important}
  .pd-account-hero-grid{gap:12px!important}
  .pd-account-hero h1{font-size:clamp(2.2rem,8vw,3.5rem)!important}
  .woocommerce-checkout .pd-commerce-hero h1{font-size:clamp(2.25rem,8vw,3.4rem)!important}
}
@media(max-width:640px){
  .pd-account-hero-copy{display:none!important}
  .pd-account-hero{padding:1.2rem 0!important}
  .pd-account-hero h1{font-size:2rem!important}
  .woocommerce-checkout .pd-commerce-hero{padding:1.4rem 0!important}
}


/* Persiano 1.10.1 — balanced platform typography and utility-page polish */
:root{
  --pd-display-xl:clamp(3.2rem,6vw,5.8rem);
  --pd-display-lg:clamp(2.55rem,4.6vw,4.3rem);
  --pd-display-md:clamp(2rem,3.4vw,3rem);
  --pd-heading-lg:clamp(1.75rem,2.7vw,2.45rem);
  --pd-heading-md:clamp(1.35rem,2vw,1.8rem);
}
.home .hero-title,.home .site-title,.home-hero h1{font-size:var(--pd-display-xl)!important}
.entry-title,.page-title,.woocommerce-products-header__title,.pd-page-hero h1,.page-hero h1{font-size:var(--pd-display-lg)!important;line-height:1.06!important}
h1{line-height:1.06}h2{line-height:1.14}h3{line-height:1.2}
.pd-account-hero{padding:clamp(1.55rem,3vw,2.7rem) 0!important}
.pd-account-hero h1{font-size:var(--pd-display-md)!important;line-height:1.04!important}
.pd-account-hero--compact{padding:1.15rem 0!important}
.pd-account-hero--compact h1{font-size:var(--pd-heading-lg)!important}
.pd-account-hero--compact .pd-account-hero-copy{display:none!important}
.pd-account-page-section{padding-top:clamp(1.5rem,3vw,2.8rem)!important}
.woocommerce-account .woocommerce-MyAccount-content h1{font-size:var(--pd-heading-lg)!important}
.woocommerce-account .woocommerce-MyAccount-content h2{font-size:var(--pd-heading-md)!important}
.pd-commerce-hero{padding:clamp(1.55rem,3vw,2.8rem) 0!important}
.pd-commerce-hero h1{font-size:var(--pd-display-md)!important}
.pd-commerce-hero--pay h1{font-size:var(--pd-heading-lg)!important}
.pd-commerce-hero--pay{padding:1.15rem 0!important}
.pd-commerce-hero--pay .pd-commerce-hero-copy{font-size:.95rem}
.woocommerce-checkout .pd-commerce-shell,.woocommerce-checkout .woocommerce{max-width:1180px!important}
.woocommerce-checkout #payment{background:#fffaf2!important}
.woocommerce-checkout #payment div.payment_box{background:#fbf6ed!important;border:1px solid rgba(89,66,52,.12)!important}
.woocommerce-checkout #place_order{font-size:.9rem!important;min-height:48px!important;padding:0 24px!important}
.woocommerce-account .pd-global-search-bar,.woocommerce-checkout .pd-global-search-bar{display:none!important}
@media(max-width:782px){
  .pd-account-hero,.pd-commerce-hero{padding:1.1rem 0!important}
  .pd-account-hero h1,.pd-commerce-hero h1{font-size:clamp(1.9rem,8vw,2.65rem)!important}
  .pd-account-hero-copy,.pd-commerce-hero-copy{display:none!important}
  .pd-account-page-section,.pd-commerce-section{padding-top:1.25rem!important}
  .site-header nav a{font-size:.82rem!important}
}

/* Persiano account utility refinement 1.10.2 */
.woocommerce-account .pd-search-row,.woocommerce-account .pd-site-search,.woocommerce-account .site-search-row{display:none!important}
.woocommerce-account .pd-account-hero{padding:1rem 0!important}
.woocommerce-account .pd-account-hero h1{font-size:clamp(2rem,4.2vw,3.4rem)!important}
.woocommerce-account:not(.woocommerce-account-dashboard) .pd-account-hero{display:none!important}

/* Persiano 1.10.3 — readable customer forms and compact account dashboard */
body,.woocommerce,.woocommerce-account,.woocommerce-checkout{font-size:16px}
.woocommerce p,.woocommerce li,.woocommerce table,.woocommerce label,.woocommerce .form-row label,.woocommerce-checkout-review-order-table{font-size:16px;line-height:1.55}
.woocommerce small,.woocommerce .description,.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:14px;line-height:1.5}
.woocommerce input[type="radio"],.woocommerce input[type="checkbox"]{width:20px!important;height:20px!important;min-width:20px!important;vertical-align:middle;margin-right:9px!important;accent-color:#a32638}
.woocommerce #payment ul.payment_methods li{padding:12px 0!important;font-size:16px!important}
.woocommerce #payment ul.payment_methods li>label{display:inline-flex!important;align-items:center;gap:8px;font-size:16px!important;min-height:42px}
.woocommerce input.input-text,.woocommerce select,.woocommerce textarea{min-height:46px;font-size:16px!important}
.woocommerce-account .pd-account-hero{padding:.65rem 0!important}
.woocommerce-account .pd-account-hero h1{font-size:clamp(1.8rem,3.4vw,2.65rem)!important}
.woocommerce-account .pd-account-hero-copy{font-size:1rem!important}
.woocommerce-account .pd-global-search-bar,.woocommerce-account .pd-search-row,.woocommerce-account .pd-site-search,.woocommerce-account .site-search-row{display:none!important}
.ph-tip-box h3{font-size:clamp(1.65rem,2.6vw,2.15rem)!important}
@media(max-width:782px){body,.woocommerce,.woocommerce-account,.woocommerce-checkout{font-size:16px}.woocommerce-account .pd-account-hero{padding:.55rem 0!important}.woocommerce-account .pd-account-hero h1{font-size:1.85rem!important}.woocommerce input[type="radio"],.woocommerce input[type="checkbox"]{width:22px!important;height:22px!important;min-width:22px!important}}


/* Unified Persiano checkout and payment layout */
.woocommerce-checkout .pd-commerce-hero,
.woocommerce-order-pay .pd-commerce-hero { padding-block: clamp(26px,4vw,48px); }
.woocommerce-checkout .pd-commerce-hero h1,
.woocommerce-order-pay .pd-commerce-hero h1 { font-size: clamp(2rem,4vw,3.5rem); }
.woocommerce-checkout .pd-commerce-section,
.woocommerce-order-pay .pd-commerce-section { padding-top: 30px; }
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper { display:flex;flex-wrap:wrap;gap:0 16px; }
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row { margin-bottom:15px; }
.woocommerce-checkout .woocommerce-form__label-for-checkbox,
.woocommerce-checkout .payment_methods label { line-height:1.45; }
.woocommerce-checkout .ph-reward-options,
.woocommerce-order-pay .ph-reward-options { display:flex;flex-wrap:wrap;gap:10px;margin-top:12px; }
.woocommerce-checkout .ph-reward-options label,
.woocommerce-order-pay .ph-reward-options a { display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 15px;border:1px solid var(--pd-pomegranate);border-radius:999px;background:#fff;color:var(--pd-pomegranate);font-weight:800;text-decoration:none; }
.woocommerce-checkout .ph-reward-options label:has(input:checked) { background:var(--pd-pomegranate);color:#fff; }
.woocommerce-checkout .ph-tip-custom-wrap.is-active { border-color:var(--pd-pomegranate);box-shadow:0 0 0 2px rgba(142,36,53,.12); }
.woocommerce-order-pay form#order_review { max-width:1120px;margin:0 auto; }
.woocommerce-order-pay .shop_table { background:#fff;border-radius:18px;overflow:hidden; }
@media(max-width:900px){
 .woocommerce-checkout .pd-commerce-hero-grid,.woocommerce-order-pay .pd-commerce-hero-grid{grid-template-columns:1fr;gap:12px}
}

/* Persiano 1.11.1 — checkout layout correction */
body.woocommerce-checkout .pd-commerce-hero{padding:18px 0!important}
body.woocommerce-checkout .pd-commerce-hero-grid{grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:20px!important}
body.woocommerce-checkout .pd-commerce-hero h1{font-size:clamp(2rem,3.4vw,3.2rem)!important;margin-bottom:0!important}
body.woocommerce-checkout .pd-commerce-hero-copy{max-width:440px!important;font-size:.95rem!important}
body.woocommerce-checkout .pd-inline-notes{margin-top:8px!important;gap:6px!important}
body.woocommerce-checkout .pd-commerce-section{padding-top:18px!important}
body.woocommerce-checkout .pd-commerce-content{overflow:visible!important}
body.woocommerce-checkout .site-header{position:relative!important}
body.woocommerce-checkout .woocommerce-form-coupon-toggle{margin-bottom:14px!important}
body.woocommerce-checkout .woocommerce-form-coupon{max-width:680px!important;margin:0 0 18px!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .variation{font-size:12px!important;line-height:1.35!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .variation dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .variation dd{display:inline!important;float:none!important;margin:0 3px 0 0!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .variation dd:after{content:"";display:block}
body.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:13px!important;line-height:1.45!important}
@media(max-width:900px){body.woocommerce-checkout .pd-commerce-hero-grid{grid-template-columns:1fr!important}.woocommerce-checkout .pd-commerce-hero-copy{display:block!important;max-width:none!important}}
@media print{body.woocommerce-checkout .site-header,body.woocommerce-checkout .site-footer,body.woocommerce-checkout .pd-commerce-hero{display:none!important}}
