/* طبقة موحدة أخيرة لصفحات بيرلا الداخلية. */
body:not(.maison) { font-family: Alexandria, Arial, sans-serif; }
body:not(.maison) h1, body:not(.maison) h2, body:not(.maison) h3 { font-family: Alexandria, Arial, sans-serif; letter-spacing: 0; }
body:not(.maison) .page-hero, body:not(.maison) .section--mist { background: #F6EFE5; }
body:not(.maison) .page-hero { border-color: rgba(200,164,93,.45); }
body:not(.maison) .page-hero h1 { color: #0F2747; }
body:not(.maison) .page-hero p { color: #40516a; }
body:not(.maison) .section { background: #fff; }
body:not(.maison) .section--mist { background: #F6EFE5; }
.category-tabs .tab { appearance: none; background: #fff; color: #0F2747; cursor: pointer; font-family: inherit; }
.category-tabs .tab:hover, .category-tabs .tab--active { border-color: #FF9E1B; background: #FF9E1B; color: #0F2747; }
.product-card[hidden] { display: none; }
html body:not(.maison) .product-photo--1 { background-image: url("assets/perla-real-box-02.jpeg") !important; }
html body:not(.maison) .product-photo--2 { background-image: url("assets/perla-real-box-04.jpeg") !important; }
html body:not(.maison) .product-photo--3 { background-image: url("assets/perla-real-box-03.jpeg") !important; }
html body:not(.maison) .product-photo--4 { background-image: url("assets/perla-real-box-06.jpeg") !important; }
html body:not(.maison) .product-photo--5 { background-image: url("assets/perla-real-box-01.jpeg") !important; }
html body:not(.maison) .product-photo--6 { background-image: url("assets/perla-real-box-05.jpeg") !important; }
html body:not(.maison) .product-detail-image { background: #0F2747 url("assets/perla-real-box-02.jpeg") center / cover !important; color: transparent; }
html body:not(.maison) .product-detail-image::before { display: none; }
.site-footer--full { padding: 0; background: #091c34 !important; color: #F6EFE5 !important; border-color: rgba(200,164,93,.42) !important; }
.site-footer--full .footer-grid { padding: 3rem 5vw; }
.site-footer--full .footer-grid h3 { color: #C8A45D !important; }
.site-footer--full .footer-grid a { color: #F6EFE5 !important; }
.site-footer--full .subpage-logo { justify-items: start; }
.site-footer--full .subpage-logo img { width: min(190px, 48vw); }
.site-footer--full .legal { color: #dce4ed !important; border-color: rgba(200,164,93,.36) !important; }
.story-image { width: 100%; height: 100%; min-height: 320px; object-fit: cover; }
.product-detail-image { overflow: hidden; }
.product-detail-image img { display: block; width: 100%; height: 100%; min-height: 420px; object-fit: cover; }
.subpage-categories { display: flex; justify-content: center; gap: 2rem; padding: .9rem 1rem; border-top: 1px solid rgba(200,164,93,.32); background: #0F2747; }
.subpage-categories a { color: #F6EFE5; font-size: .88rem; }
.subpage-categories a:hover { color: #FF9E1B; }
.order-note { max-width: 54rem; margin: 1.5rem 0 0; color: #40516a; font-size: .9rem; line-height: 1.8; }
@media (max-width:800px) { .site-footer--full .footer-grid { padding: 2.4rem 1rem; } .story-image { min-height: 260px; } }

/* Homepage cake campaign: preserve the full image, including on phones. */
.maison .cake-campaign { position: relative; width: min(100%, 1672px); margin: 0 auto; background: #0F2747; color: #F6EFE5; scroll-margin-top: 210px; }
.maison .cake-campaign__image { display: block; width: 100%; height: auto; }
.maison .cake-campaign__copy { position: absolute; top: 12%; right: 4%; width: 26%; text-align: start; }
.maison .cake-campaign__copy .eyebrow { display: block; color: #C8A45D; font-size: .875rem; }
.maison .cake-campaign__copy h2 { margin: 1rem 0; color: #F6EFE5; font-family: Alexandria, Arial, sans-serif; font-size: clamp(1.75rem, 3.2vw, 3.4rem); line-height: 1.5; letter-spacing: 0; }
.maison .cake-campaign__copy p { margin: 0 0 1.75rem; color: #F6EFE5; font-size: 1rem; line-height: 1.9; }
.maison .cake-campaign__copy .button { min-height: 48px; font-size: .9rem; color: #0F2747; }
.maison .cake-campaign__copy .button:hover { background: #E58B12; }
.maison .cake-campaign__copy .button:focus-visible { outline: 2px solid #F6EFE5; outline-offset: 4px; }
@media (max-width: 900px) {
  .maison .cake-campaign__copy { position: static; width: auto; padding: 2rem 1.25rem 2.5rem; text-align: center; }
  .maison .cake-campaign__copy h2 { font-size: clamp(1.75rem, 5vw, 2.5rem); }
  .maison .cake-campaign__copy p { max-width: 32rem; margin: 0 auto 1.5rem; }
}

/* Homemade sweets: one editorial banner and two complete group photographs. */
.maison .homemade-campaign { width: min(100%, 1672px); margin: 3rem auto; background: #07192f; color: #F6EFE5; scroll-margin-top: 210px; }
.maison .homemade-campaign__hero { position: relative; }
.maison .homemade-campaign__image { display: block; width: 100%; height: auto; }
.maison .homemade-campaign__copy { position: absolute; top: 15%; right: 4%; width: 25%; text-align: start; }
.maison .homemade-campaign__copy .eyebrow { display: block; color: #C8A45D; font-size: .875rem; }
.maison .homemade-campaign__copy h2 { margin: 1rem 0; color: #F6EFE5; font-family: Alexandria, Arial, sans-serif; font-size: clamp(1.75rem, 3vw, 3.25rem); line-height: 1.5; letter-spacing: 0; }
.maison .homemade-campaign__copy p { margin: 0; color: #F6EFE5; font-size: 1rem; line-height: 1.9; }
.maison .homemade-campaign__gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; padding: 1.5rem; }
.maison .homemade-campaign__gallery figure { min-width: 0; margin: 0; }
.maison .homemade-campaign__gallery img { display: block; width: 100%; height: auto; }
.maison .collection-tile--homemade { background-image: url("assets/perla-homemade-textures.webp") !important; background-position: center; }
@media (max-width: 900px) {
  .maison .homemade-campaign { margin: 2rem auto; }
  .maison .homemade-campaign__copy { position: static; width: auto; padding: 2rem 1.25rem; text-align: center; }
  .maison .homemade-campaign__copy h2 { font-size: clamp(1.75rem, 5vw, 2.5rem); }
  .maison .homemade-campaign__copy p { max-width: 32rem; margin: 0 auto; }
}
@media (max-width: 600px) {
  .maison .homemade-campaign__gallery { grid-template-columns: 1fr; gap: .75rem; padding: .75rem; }
}

/* Maamoul: preserve every grouped photo in full, with copy beside the hero. */
.maison .maamoul-campaign { width: min(100%, 1672px); margin: 3rem auto; background: #07192f; color: #F6EFE5; scroll-margin-top: 210px; }
.maison .maamoul-campaign__hero { position: relative; }
.maison .maamoul-campaign__image, .maison .maamoul-campaign__gallery img { display: block; width: 100%; height: auto; }
.maison .maamoul-campaign__copy { position: absolute; top: 20%; right: 4%; width: 25%; text-align: start; }
.maison .maamoul-campaign__copy .eyebrow { display: block; color: #C8A45D; font-size: .875rem; }
.maison .maamoul-campaign__copy h2 { margin: 1rem 0; color: #F6EFE5; font-family: Alexandria, Arial, sans-serif; font-size: clamp(1.75rem, 3vw, 3.25rem); line-height: 1.5; letter-spacing: 0; }
.maison .maamoul-campaign__copy p { margin: 0 0 1.75rem; color: #F6EFE5; font-size: 1rem; line-height: 1.9; }
.maison .maamoul-campaign__copy .button { min-height: 48px; font-size: .9rem; color: #0F2747; }
.maison .maamoul-campaign__copy .button:hover { background: #E58B12; }
.maison .maamoul-campaign__copy .button:focus-visible { outline: 2px solid #F6EFE5; outline-offset: 4px; }
.maison .maamoul-campaign__gallery { margin: 0; padding: 1.5rem 8%; }
@media (max-width: 900px) {
  .maison .maamoul-campaign { margin: 2rem auto; }
  .maison .maamoul-campaign__copy { position: static; width: auto; padding: 2rem 1.25rem; text-align: center; }
  .maison .maamoul-campaign__copy h2 { font-size: clamp(1.75rem, 5vw, 2.5rem); }
  .maison .maamoul-campaign__copy p { max-width: 32rem; margin: 0 auto 1.5rem; }
  .maison .maamoul-campaign__gallery { padding: .75rem; }
}
