/* ===== Design (product) pages: one page per cake in the Traditional, Royal and Mother's Day galleries ===== */

.pcrumb{padding-block:var(--space-sm) 0;font-size:.75rem;letter-spacing:.06em;color:var(--color-muted)}
.pcrumb ol{display:flex;flex-wrap:wrap;gap:.35rem .6rem;list-style:none;margin:0;padding:0}
.pcrumb li+li::before{content:"/";margin-inline-end:.6rem;color:var(--color-border)}
.pcrumb a{transition:color var(--dur-fast)}
.pcrumb a:hover,.pcrumb a:focus-visible{color:var(--color-gold-text)}
.pcrumb [aria-current]{color:var(--color-text)}

.pdp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5.5rem);align-items:start;padding-block:var(--space-md) var(--space-xl)}
.pdp__media{margin:0;background:var(--color-surface);display:flex;justify-content:center;position:sticky;top:calc(var(--header-h) + 1rem)}
.pdp__media img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(100vh - var(--header-h) - 2rem)}
.pdp__info{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-sm);min-width:0}
.pdp__title{font-size:clamp(2.2rem,3.6vw,3.8rem);line-height:1.08}
.pdp__lede{font-size:var(--fs-lead);line-height:1.7;max-width:34rem}
.pdp__more{color:var(--color-muted);line-height:1.75;max-width:34rem}

.pdp__facts{display:grid;grid-template-columns:auto 1fr;gap:.6rem 1.6rem;width:100%;max-width:34rem;margin:0;padding-block:var(--space-sm);border-block:1px solid var(--color-border);font-size:.9375rem}
.pdp__facts dt{font-size:.6875rem;font-weight:600;letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--color-muted);padding-top:.2rem}
.pdp__facts dd{margin:0}

/* The inquiry form reuses the questionnaire's field styles (css/inquire.css). */
.pform{width:100%;max-width:34rem;display:flex;flex-direction:column;gap:var(--space-sm);scroll-margin-top:calc(var(--header-h) + 1rem)}
.pform__title{font-size:clamp(1.5rem,2.2vw,2.1rem);line-height:1.2}
.pform__intro{color:var(--color-muted);font-size:.9375rem;line-height:1.6;margin-top:-.5rem}
.pform .iform__row{grid-template-columns:1fr 1fr}
.pform .iform__field--wide{grid-column:1/-1}
.iform__req{color:var(--color-gold-text);margin-inline-start:.15rem}
.iform__error{color:#9b2c2c;font-size:.8125rem;line-height:1.4;min-height:0}
.iform__error[hidden]{display:none}
.iform__field input[aria-invalid="true"],.iform__field textarea[aria-invalid="true"]{border-color:#9b2c2c}
.pform .iform__submit{margin-top:.25rem}
.pform .iform__submit .btn{width:100%;justify-content:center}

/* Previous / next design */
.pnav{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-block:var(--space-sm);border-top:1px solid var(--color-border);font-size:.75rem;font-weight:600;letter-spacing:var(--track-ui);text-transform:uppercase}
.pnav a{transition:color var(--dur-fast)}
.pnav a:hover,.pnav a:focus-visible{color:var(--color-gold-text)}

.pmore{padding-block:var(--space-lg) var(--space-xl);border-top:1px solid var(--color-border)}
.pmore__head{margin-bottom:var(--space-md)}
.pmore .container{max-width:1720px}
.pmore .tgrid{grid-template-columns:repeat(4,1fr)}

html[dir="rtl"] .pnav [data-dir]{unicode-bidi:plaintext}
html[lang="ar"] .pdp__facts dt,html[lang="ar"] .pcrumb{font-size:.875rem;letter-spacing:0}
html[lang="ar"] .pdp__lede,html[lang="ar"] .pdp__more{line-height:1.95}
html[lang="ar"] .pdp__title{line-height:1.3}

@media (max-width:900px){
  .pdp{grid-template-columns:1fr;gap:var(--space-md)}
  .pdp__media{position:static}
  .pdp__media img{max-height:none;width:100%}
  .pmore .tgrid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
  .pform .iform__row{grid-template-columns:1fr}
}

/* "Inquire now" button, sticky bar on phones, and the pop-up form */
.pdp__inquire{align-self:flex-start}
.pdp__bar{display:none}
.inquire-open{overflow:hidden}
.inquire-dialog{border:0;padding:clamp(1.5rem,3vw,2.25rem);border-radius:1.25rem;background:var(--color-bg);color:var(--color-text);width:min(36rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow-y:auto;box-shadow:0 30px 80px rgba(37,40,33,.28);margin:auto}
.inquire-dialog::backdrop{background:rgba(37,40,33,.45);backdrop-filter:blur(3px)}
.inquire-dialog[open]{animation:inquire-in .22s ease-out}
@keyframes inquire-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.inquire-dialog__close{position:absolute;inset-block-start:.75rem;inset-inline-end:.9rem;width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:transparent;color:var(--color-muted);font-size:1.75rem;line-height:1;cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast)}
.inquire-dialog__close:hover,.inquire-dialog__close:focus-visible{background:var(--color-surface);color:var(--color-text)}
.inquire-dialog .pform{max-width:none}
@media (prefers-reduced-motion:reduce){.inquire-dialog[open]{animation:none}}
@media (max-width:900px){
  .pdp__bar{display:block;position:fixed;inset-inline:0;bottom:0;z-index:40;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom,0px));background:rgb(250 249 246 / .96);backdrop-filter:blur(8px);border-top:1px solid var(--color-border)}
  .pdp__bar .btn{width:100%;justify-content:center}
  body{padding-bottom:4.5rem}
  .pdp__inquire{display:none}
}
