/* ============================================================
   SECTION HEIGHT FIX (v2)
   Each page's per-page stylesheet (age-formal.css, age-events.css,
   age-holiday.css, age-menus.css, age-private-chef.css,
   age-sliders.css, age-story.css, age-workplace.css) sets a small
   fixed pixel `height` on some hero/section blocks (left over from
   an earlier, denser layout) — e.g. age-formal.css had
   `.custom{height:253px}`, `.feature{height:208px}`,
   `.process{height:158px}`, `.final-cta{height:126px}`,
   `.footer{height:109px}`, etc. Those fixed heights are far
   shorter than the real content (headings, copy, images, cards),
   so this line keeps every top-level section at its natural
   content height instead of being clipped to that old pixel value.

   v1 of this file also forced `min-height: 100vh` on every one of
   those sections to try to make "one section per screen." That
   was the actual cause of the huge blank gaps the client flagged:
   short sections (a CTA banner, a 3-card testimonial row, the
   footer, even the popup/SVG icons at the end of the page — all
   direct children of .integrated-page) were being stretched to a
   full screen tall regardless of how little content they held,
   leaving dead empty space below the content until the next
   section's box began. `min-height: 100vh` has been removed here
   for that reason — sections now stack back-to-back at exactly
   their content height, so scrolling moves straight from the end
   of one section into the start of the next with no gap.

   This file must be linked AFTER the page's age-*.css and
   responsive-production.css so it wins the cascade.
   ============================================================ */

.integrated-page > *{
  height: auto !important;
}

/* =====================================================================
   READABILITY FLOOR + OVERFLOW SAFETY (all inner pages)
   Several pages shipped with 7–10px text. These rules lift every small
   text element to a comfortable size without touching layout widths.
   ===================================================================== */
.integrated-page{overflow-x:clip}
.integrated-page img,.integrated-page video{max-width:100%}

/* Sliders & Dogs */
.age-sliders.integrated-page .btn,
.age-sliders.integrated-page .hero-actions .btn b,
.age-sliders.integrated-page .pdf-btn b{font-size:12px}
.age-sliders.integrated-page .feature-bar .feature span,
.age-sliders.integrated-page .occasion span,
.age-sliders.integrated-page .testimonial strong,
.age-sliders.integrated-page .step-card h3{font-size:12px}
.age-sliders.integrated-page .product-card div p,
.age-sliders.integrated-page .step-card ul li,
.age-sliders.integrated-page .grill-features div b,
.age-sliders.integrated-page .pdf-btn b small{font-size:12.5px;line-height:1.45}

/* Workplace Dining */
.age-workplace.integrated-page .btn{font-size:12px}
.age-workplace.integrated-page .value-strip .value-item span{font-size:11px}
.age-workplace.integrated-page .hero-body{font-size:14px;line-height:1.55}
.age-workplace.integrated-page .section-heading p,
.age-workplace.integrated-page .feature p,
.age-workplace.integrated-page .how-card div p,
.age-workplace.integrated-page .concept-card div p,
.age-workplace.integrated-page .programs p,
.age-workplace.integrated-page .program-item div p,
.age-workplace.integrated-page .benefit p,
.age-workplace.integrated-page .cta-copy p,
.age-workplace.integrated-page .cta-info div p,
.age-workplace.integrated-page .cta-info div p b{font-size:13px;line-height:1.5}
.age-workplace.integrated-page .contact-form select,
.age-workplace.integrated-page .contact-form select option,
.age-workplace.integrated-page .contact-form input{font-size:14px}

/* Holiday */
.age-holiday.integrated-page .btn{font-size:12px}
.age-holiday.integrated-page .feature-strip .feature span{font-size:11.5px}
.age-holiday.integrated-page .card-copy p{font-size:13px}

/* Corporate catering */
.age-events.integrated-page .call-btn span strong{font-size:12px}
.age-events.integrated-page .experience-left .features .feature strong{font-size:12px}
.age-events.integrated-page .eyebrow{font-size:12px}
.age-events.integrated-page .menu-grid>*{min-width:0}
@media(max-width:900px){
  .age-events.integrated-page .menu-grid{grid-template-columns:1fr;gap:34px}
  .age-events.integrated-page .menu-row{flex-wrap:wrap}
  .age-events.integrated-page .menu-dots{display:none}
  .age-events.integrated-page .menu-name{white-space:normal}
}

/* Private chef */
.age-private-chef.integrated-page .btn{font-size:12px}
.age-private-chef.integrated-page .eyebrow span{font-size:12px}
.age-private-chef.integrated-page .btn span b{font-size:12px}

/* Chef-curated menus */
.age-menus.integrated-page .btn{font-size:12px}
.age-menus.integrated-page .eyebrow{font-size:12px}
.age-menus.integrated-page ul li{font-size:13px}
.age-menus.integrated-page .cards .btn,.age-menus.integrated-page .split-h .btn{font-size:12px}

/* Sliders & Dogs: grill-features row must wrap instead of overflowing on tablet widths */
@media(max-width:1000px){
  .age-sliders.integrated-page .grill-features{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
}
.age-sliders.integrated-page .grill-features>div{min-width:0;overflow-wrap:anywhere}
