/* SIERRA NEVADA — PAGE 635 ONLY. Reuses the approved component system (band, eyebrow, display-h2, fd-editorial, utility-band, adapt, faq, final CTA). */

body.page-id-635 {
  --ski-deep: #214A5E;
  --ski-blue: #26ADE2;
  --ski-ink: #0F2430;
  --ski-ice: #E8F1F5;
  --ski-snow: #FFFFFF;
  --ski-line: rgba(33, 74, 94, 0.16);
  --ski-muted: rgba(15, 36, 48, 0.72);
  --ski-tech: var(--gvid-b5547a12-68b7-4dee-9a11-c6f6c6f0d32b, Orbitron), system-ui, sans-serif;
  --ski-edge: max(48px, calc((100vw - 1240px) / 2));
  --ski-space: clamp(64px, 6vw, 96px);
  --ski-space-dense: clamp(52px, 4.8vw, 76px);
  overflow-x: clip;
}

body.page-id-635 .ski-band { position: relative; padding: var(--ski-space) var(--ski-edge) !important; }
body.page-id-635 .ski-band--dense { padding: var(--ski-space-dense) var(--ski-edge) !important; }
body.page-id-635 .ski-band > .et_pb_row { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
body.page-id-635 .ski-band > .ski-section-head { margin-bottom: clamp(28px, 3vw, 44px) !important; }
body.page-id-635 .ski-section-head > .et_pb_column { width: 100% !important; max-width: 720px !important; margin: 0 !important; background-image: none !important; }

body.page-id-635 .ski-eyebrow { margin: 0 0 14px !important; }
body.page-id-635 .ski-eyebrow .et_pb_text_inner { display: inline-flex; align-items: center; gap: 14px; color: var(--ski-blue); }
body.page-id-635 .ski-eyebrow .et_pb_text_inner::before { content: ""; flex: 0 0 auto; width: 32px; height: 2px; background: currentColor; }
body.page-id-635 .ski-eyebrow p { margin: 0 !important; padding: 0 !important; font-family: var(--gvid-b5547a12-68b7-4dee-9a11-c6f6c6f0d32b, Orbitron), system-ui, sans-serif; font-size: 12.5px !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: 0.18em !important; text-transform: uppercase; color: var(--ski-blue) !important; }

body.page-id-635 .ski-display-h2,
body.page-id-635 .ski-display-h2 .et_pb_heading_container { margin: 0 !important; text-align: left !important; transform: none !important; }
body.page-id-635 .ski-display-h2 .et_pb_module_header { margin: 0 !important; padding: 0 !important; max-width: 17ch; font-size: clamp(1.9rem, 1.1rem + 2.4vw, 3.25rem) !important; font-weight: 800 !important; line-height: 1.03 !important; letter-spacing: -0.03em !important; color: var(--ski-deep) !important; text-align: left !important; text-shadow: none !important; text-wrap: balance; }
body.page-id-635 .ski-display-h2--sm .et_pb_module_header { max-width: 14ch; font-size: clamp(1.875rem, 1.1rem + 1.9vw, 2.9rem) !important; line-height: 1.06 !important; }
body.page-id-635 .ski-lead { margin: 18px 0 0 !important; }
body.page-id-635 .ski-lead p { margin: 0; padding: 0; max-width: 58ch; font-size: 18px; line-height: 1.6; color: var(--ski-muted); }
@media (max-width: 767px) { body.page-id-635 .ski-lead p { font-size: 16.5px; } }

body.page-id-635 .ski-fd-editorial { background-color: var(--ski-snow) !important; padding: clamp(48px, 4vw, 72px) var(--ski-edge) !important; border-top: 1px solid var(--ski-line); }
body.page-id-635 .ski-fd-editorial__grid { display: grid !important; grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); column-gap: clamp(36px, 4vw, 72px) !important; align-items: center; }
body.page-id-635 .ski-fd-editorial__grid > .et_pb_column { width: 100% !important; max-width: none !important; margin: 0 !important; min-width: 0; background-image: none !important; }
body.page-id-635 .ski-fd-editorial__media { position: relative; }
body.page-id-635 .ski-fd-editorial__img { margin: 0 !important; overflow: hidden; border-radius: var(--gvid-b1ca321e-a7f9-435b-92bf-2d3cb4d123e5, 16px); line-height: 0; }
body.page-id-635 .ski-fd-editorial__img img { display: block; width: 100%; height: 100%; max-width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center center; }
body.page-id-635 .ski-fd-editorial__media::before { content: ""; position: absolute; z-index: 2; top: -10px; left: -10px; width: 18px; height: 18px; border-style: solid; border-color: var(--ski-blue); border-width: 1.5px 0 0 1.5px; pointer-events: none; }
body.page-id-635 .ski-fd-editorial .ski-eyebrow { margin: 0 0 12px !important; }
body.page-id-635 .ski-fd-editorial .ski-display-h2 .et_pb_module_header { max-width: 15ch; font-size: clamp(1.75rem, 1.15rem + 1.4vw, 2.35rem) !important; line-height: 1.06 !important; }
body.page-id-635 .ski-fd-editorial .ski-lead { margin: 14px 0 0 !important; }
body.page-id-635 .ski-fd-editorial .ski-lead p { max-width: 44ch; font-size: 16.5px; line-height: 1.6; }
body.page-id-635 .ski-editorial--reverse .ski-fd-editorial__grid { grid-template-columns: minmax(0, 44fr) minmax(0, 56fr); }
body.page-id-635 .ski-editorial--reverse .ski-fd-editorial__media::before { left: auto; right: -10px; border-width: 1.5px 1.5px 0 0; }
@media (max-width: 980px) {
  body.page-id-635 .ski-fd-editorial { padding: clamp(40px, 6vw, 56px) var(--ski-edge) !important; }
  body.page-id-635 .ski-fd-editorial__grid { grid-template-columns: minmax(0, 1fr); row-gap: 22px !important; }
  body.page-id-635 .ski-fd-editorial__media { order: -1; }
  body.page-id-635 .ski-fd-editorial__img img { aspect-ratio: 16 / 10; }
  body.page-id-635 .ski-fd-editorial__media::before { top: -8px; left: 0; }
  body.page-id-635 .ski-editorial--reverse .ski-fd-editorial__grid { grid-template-columns: minmax(0, 1fr); }
  body.page-id-635 .ski-editorial--reverse .ski-fd-editorial__media::before { right: 0; top: -8px; }
}

body.page-id-635 .ski-utility-band { background-color: var(--ski-snow) !important; min-height: 0 !important; padding: clamp(42px, 3.6vw, 62px) var(--ski-edge) !important; }
body.page-id-635 .ski-utility-band > .et_pb_row,
body.page-id-635 .ski-utility__head,
body.page-id-635 .ski-utility__grid,
body.page-id-635 .ski-utility__grid > .et_pb_column { background-image: none !important; }
body.page-id-635 .ski-utility__head { margin-bottom: clamp(16px, 1.6vw, 24px) !important; }
body.page-id-635 .ski-utility__grid { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: clamp(24px, 2.6vw, 48px) !important; margin-bottom: 0 !important; align-items: stretch; }
body.page-id-635 .ski-utility__grid > .et_pb_column { display: flex !important; flex-direction: column !important; padding: 20px 0 0 !important; }
body.page-id-635 .ski-utility__grid .et_pb_blurb { margin: 0 !important; flex: 1 1 auto; }
body.page-id-635 .ski-utility__grid .et_pb_blurb_content { display: flex !important; flex-direction: column; height: 100%; width: 100%; max-width: none !important; text-align: left !important; }
body.page-id-635 .ski-utility__grid .et_pb_main_blurb_image { display: block !important; flex: 0 0 auto; width: 30px !important; height: 30px !important; margin: 0 0 11px !important; padding: 0 !important; line-height: 0; text-align: left !important; }
body.page-id-635 .ski-utility__grid .et_pb_main_blurb_image img { display: block; width: 30px !important; height: 30px !important; object-fit: contain; border-radius: 0 !important; }
body.page-id-635 .ski-utility__grid .et_pb_blurb_container { display: flex; flex-direction: column; flex: 1 1 auto; padding: 0 !important; text-align: left !important; }
body.page-id-635 .ski-utility__grid .et_pb_module_header { margin: 0 0 6px !important; padding: 0 !important; font-size: 16.5px !important; font-weight: 700 !important; line-height: 1.3 !important; letter-spacing: -0.012em !important; color: var(--ski-deep) !important; text-align: left !important; }
body.page-id-635 .ski-utility__grid .et_pb_blurb_description p { margin: 0; padding: 0; max-width: 30ch; font-size: 15px; line-height: 1.55; color: rgba(15, 36, 48, 0.78); }
body.page-id-635 .ski-utility__grid .et_pb_blurb_description p:has(a) { margin-top: auto; padding-top: 8px; }
body.page-id-635 .ski-utility__grid .et_pb_blurb_description a { display: inline-flex; align-items: center; min-height: 40px; font-size: 14.5px; font-weight: 700 !important; color: var(--ski-deep) !important; text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 5px; transition: text-decoration-color 0.2s ease, color 0.2s ease; }
body.page-id-635 .ski-utility__grid .et_pb_blurb_description a:hover,
body.page-id-635 .ski-utility__grid .et_pb_blurb_description a:focus-visible { text-decoration-color: currentColor; color: var(--ski-blue) !important; }
@media (prefers-reduced-motion: reduce) { body.page-id-635 .ski-utility__grid .et_pb_blurb_description a { transition: none; } }
@media (max-width: 980px) {
  body.page-id-635 .ski-utility-band { padding: clamp(38px, 5.4vw, 52px) var(--ski-edge) !important; }
  body.page-id-635 .ski-utility__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px !important; }
  body.page-id-635 .ski-utility__grid > .et_pb_column { padding: 18px 0 20px !important; border-top: 1px solid var(--ski-line) !important; }
}
@media (max-width: 700px) {
  body.page-id-635 .ski-utility__grid { grid-template-columns: minmax(0, 1fr); }
  body.page-id-635 .ski-utility__grid > .et_pb_column { padding: 15px 0 16px !important; }
  body.page-id-635 .ski-utility__grid .et_pb_blurb_description p { max-width: 52ch; }
}

body.page-id-635 .ski-adapt { border-top: 1px solid var(--ski-line); }
body.page-id-635 .ski-adapt > .ski-section-head { margin-bottom: clamp(20px, 2vw, 30px) !important; }
body.page-id-635 .ski-adapt__grid {
  position: relative;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  column-gap: clamp(32px, 3.2vw, 64px) !important;
  row-gap: 0 !important;
  counter-reset: ski-adapt;
  --ski-aico: var(--ski-icon-lg);
  --ski-aico-col: calc(var(--ski-icon-lg) + 4px);
  --ski-aico-gap: 14px;
}
body.page-id-635 .ski-adapt__grid::after { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: var(--ski-line); pointer-events: none; }
body.page-id-635 .ski-adapt__grid > .et_pb_column { position: relative; counter-increment: ski-adapt; width: auto !important; max-width: none !important; flex: 1 1 auto !important; margin: 0 !important; padding: 30px 0 0 !important; border-top: 0 !important; background-image: none !important; }
body.page-id-635 .ski-adapt__grid > .et_pb_column::before { content: ""; position: absolute; top: -1px; left: 0; width: 64px; height: 3px; background: var(--ski-blue); }
body.page-id-635 .ski-adapt__grid .et_pb_blurb { margin: 0 !important; }
body.page-id-635 .ski-adapt__grid .et_pb_blurb_content { display: flex !important; flex-direction: row !important; align-items: flex-start !important; gap: var(--ski-aico-gap); width: 100%; max-width: none !important; text-align: left !important; }
body.page-id-635 .ski-adapt__grid .et_pb_main_blurb_image { display: block !important; flex: 0 0 var(--ski-aico-col); width: var(--ski-aico-col) !important; align-self: flex-start; margin: 0 !important; padding: 0 !important; line-height: 0; }
body.page-id-635 .ski-adapt__grid .et_pb_main_blurb_image img { display: block; width: var(--ski-aico) !important; height: var(--ski-aico) !important; object-fit: contain; border-radius: 0 !important; }
body.page-id-635 .ski-adapt__grid .et_pb_blurb_container { flex: 1 1 auto; padding: 0 !important; text-align: left !important; }
body.page-id-635 .ski-adapt__grid .et_pb_blurb_container::before { content: counter(ski-adapt, decimal-leading-zero); display: block; margin: 0 0 4px; font-family: var(--gvid-b5547a12-68b7-4dee-9a11-c6f6c6f0d32b, Orbitron), system-ui, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: 0.12em; line-height: 1.4; color: var(--ski-blue); font-variant-numeric: tabular-nums; }
body.page-id-635 .ski-adapt__grid .et_pb_module_header { margin: 0 0 8px !important; padding: 0 !important; font-size: 21px !important; font-weight: 700 !important; line-height: 1.35 !important; letter-spacing: -0.015em !important; color: var(--ski-deep) !important; text-align: left !important; }
body.page-id-635 .ski-adapt__grid .et_pb_blurb_description p { margin: 0; padding: 0; max-width: 40ch; font-size: 16.5px; line-height: 1.6; color: var(--ski-muted); }
@media (max-width: 980px) {
  body.page-id-635 .ski-adapt__grid { grid-template-columns: minmax(0, 1fr) !important; --ski-aico: var(--ski-icon-lg); --ski-aico-col: calc(var(--ski-icon-lg) + 4px); }
  body.page-id-635 .ski-adapt__grid::after { display: none; }
  body.page-id-635 .ski-adapt__grid > .et_pb_column { padding: 22px 0 !important; border-top: 1px solid var(--ski-line) !important; }
  body.page-id-635 .ski-adapt__grid > .et_pb_column:last-child { padding-bottom: 0 !important; }
  body.page-id-635 .ski-adapt__grid .et_pb_blurb_description p { max-width: 60ch; }
}

body.page-id-635 .ski-faq__split { display: grid !important; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: clamp(40px, 4.5vw, 88px); align-items: start; width: 100% !important; max-width: none !important; margin: 0 !important; background-image: none !important; }
body.page-id-635 .ski-faq__split > .et_pb_heading { grid-column: 1; margin: 0 !important; }
body.page-id-635 .ski-faq__split > .et_pb_accordion { grid-column: 2; margin: 0 !important; }
body.page-id-635 .ski-faq .et_pb_toggle { margin: 0 !important; padding: 0 !important; border: 0 !important; border-bottom: 1px solid var(--ski-line) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
body.page-id-635 .ski-faq .et_pb_toggle:first-child { border-top: 1px solid var(--ski-line) !important; }
body.page-id-635 .ski-faq .et_pb_toggle_title { position: relative; margin: 0 !important; padding: 18px 56px 18px 0 !important; font-size: clamp(1.0625rem, 1rem + 0.3vw, 1.1875rem) !important; font-weight: 700 !important; line-height: 1.35 !important; color: var(--ski-deep) !important; cursor: pointer; }
body.page-id-635 .ski-faq .et_pb_toggle_title::before { content: "" !important; position: absolute; top: 50% !important; right: 4px !important; left: auto !important; width: 16px; height: 16px; margin-top: -8px !important; font-size: 0 !important; background: linear-gradient(var(--ski-blue), var(--ski-blue)) center / 16px 2px no-repeat, linear-gradient(var(--ski-blue), var(--ski-blue)) center / 2px 16px no-repeat; }
body.page-id-635 .ski-faq .et_pb_toggle_open .et_pb_toggle_title::before { display: block !important; background: linear-gradient(var(--ski-blue), var(--ski-blue)) center / 16px 2px no-repeat, linear-gradient(var(--ski-blue), var(--ski-blue)) center / 2px 0 no-repeat; }
@media (prefers-reduced-motion: no-preference) { body.page-id-635 .ski-faq .et_pb_toggle_title::before { transition: background-size 0.25s ease; } }
@media (hover: hover) and (pointer: fine) { body.page-id-635 .ski-faq .et_pb_toggle_title:hover { color: var(--ski-blue) !important; } }
body.page-id-635 .ski-faq .et_pb_toggle_title:focus-visible { outline: 2px solid var(--ski-blue); outline-offset: 3px; }
body.page-id-635 .ski-faq .et_pb_toggle_content { padding: 0 56px 22px 0 !important; max-width: 68ch; font-size: 16.5px; line-height: 1.65; color: var(--ski-muted); }
body.page-id-635 .ski-faq .et_pb_toggle_content p { margin: 0; padding: 0; }
@media (max-width: 980px) {
  body.page-id-635 .ski-faq__split { grid-template-columns: minmax(0, 1fr); row-gap: 32px; }
  body.page-id-635 .ski-faq__split > .et_pb_heading,
  body.page-id-635 .ski-faq__split > .et_pb_accordion { grid-column: 1; }
}
@media (max-width: 767px) {
  body.page-id-635 .ski-faq .et_pb_toggle_title { padding: 22px 44px 22px 0 !important; }
  body.page-id-635 .ski-faq .et_pb_toggle_content { padding: 0 0 22px !important; }
}

body.page-id-635 .ski-final .ski-cta-box { position: relative; max-width: 640px; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; text-align: left !important; }
body.page-id-635 .ski-final .ski-cta-box::after { content: ""; position: absolute; z-index: 2; width: 18px; height: 18px; border-style: solid; border-color: var(--ski-blue); border-width: 1.5px 1.5px 0 0; pointer-events: none; top: 2px; right: -34px; }
@media (max-width: 767px) { body.page-id-635 .ski-final .ski-cta-box::after { right: -6px; } }
body.page-id-635 .ski-final::after { content: ""; position: absolute; z-index: 1; right: calc(-1 * var(--ski-edge) - 7vw); top: 50%; transform: translateY(-50%); width: min(1100px, 64vw); aspect-ratio: 1672 / 941; background-image: url("/wp-content/uploads/2026/09/ski-school-sierra-nevada-bg-logo-contornos.webp"); background-repeat: no-repeat; background-size: contain; opacity: 0.78; pointer-events: none; }
@media (max-width: 980px) { body.page-id-635 .ski-final::after { top: auto; bottom: -8%; right: -32vw; width: 130vw; transform: none; opacity: 0.48; } }
body.page-id-635 .ski-final { position: relative; overflow: hidden; }
body.page-id-635 .ski-final > .et_pb_row > .et_pb_column { display: flex !important; flex-direction: column !important; align-items: flex-start !important; width: 100% !important; margin: 0 !important; background-image: none !important; position: relative; z-index: 2; }
@media (min-width: 981px) { body.page-id-635 .ski-final > .et_pb_row > .et_pb_column { max-width: 58% !important; } }
body.page-id-635 .ski-final .ski-cta-box::before { content: "SKI SCHOOL / SIERRA NEVADA"; display: block; margin: 0 0 18px; font-family: var(--gvid-b5547a12-68b7-4dee-9a11-c6f6c6f0d32b, Orbitron), system-ui, sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 0.26em; line-height: 1; color: var(--ski-blue); opacity: 0.85; font-variant-numeric: tabular-nums; }
body.page-id-635 .ski-final .et_pb_promo_description,
body.page-id-635 .ski-final .et_pb_promo_description div,
body.page-id-635 .ski-final .et_pb_promo_content,
body.page-id-635 .ski-final .et_pb_button_wrapper { padding: 0 !important; text-align: left !important; }
body.page-id-635 .ski-final .et_pb_promo_description .et_pb_module_header { max-width: 13ch; margin: 0 !important; padding: 0 0 18px !important; font-size: clamp(2rem, 1.25rem + 2.7vw, 3.5rem) !important; font-weight: 800 !important; line-height: 1.02 !important; letter-spacing: -0.03em !important; color: var(--ski-deep) !important; text-align: left !important; text-wrap: balance; }
body.page-id-635 .ski-final .et_pb_promo_content p { margin: 0; padding: 0; max-width: 46ch; font-size: 18px; line-height: 1.6; color: var(--ski-muted) !important; }
body.page-id-635 .ski-final .et_pb_button_wrapper { margin: 28px 0 0 !important; text-align: left !important; }
body.page-id-635 #page-container .ski-final .ski-cta-box.et_pb_promo .et_pb_promo_button.et_pb_button { display: inline-flex !important; align-items: center; justify-content: center; min-height: 46px; padding: 10px 24px !important; background: var(--ski-blue) !important; color: var(--ski-ink) !important; font-size: 15px !important; font-weight: 700 !important; }
body.page-id-635 .ski-final .et_pb_promo_button::after { display: none !important; }
body.page-id-635 #page-container .ski-final .ski-cta-box.et_pb_promo .et_pb_promo_button.et_pb_button:hover,
body.page-id-635 #page-container .ski-final .ski-cta-box.et_pb_promo .et_pb_promo_button.et_pb_button:focus-visible { background: var(--ski-deep) !important; color: #FFFFFF !important; }
body.page-id-635 .ski-final .et_pb_button_module_wrapper { margin: 14px 0 0 !important; }
@media (max-width: 767px) {
  body.page-id-635 .ski-final .et_pb_button_wrapper,
  body.page-id-635 #page-container .ski-final .ski-cta-box.et_pb_promo .et_pb_promo_button.et_pb_button { width: 100%; }
}

body.page-id-635 .ski-reveal,
body.page-id-635 .ski-reveal-stagger,
body.page-id-635 .ski-reveal-stagger > .et_pb_column,
body.page-id-635 .ski-heading-reveal,
body.page-id-635 .ski-image-reveal,
body.page-id-635 .ski-fd-editorial__img,
body.page-id-635 .ski-cta-box {
  opacity: 1;
  visibility: visible;
}


/* ===== Final visual polish pass (2026-09-25) ===== */
body.page-id-635 .ski-band:not(.ski-fd-editorial):not(.ski-utility-band):not(.ski-adapt):not(.ski-faq) {
  background-color: var(--ski-ice) !important;
}
body.page-id-635 .ski-faq {
  background-color: var(--ski-ice) !important;
}

/* Utility band: larger icon, numbered index, hairline rhythm (aligned with the
   Home2 practical-index treatment: icon + number + title + text). */
body.page-id-635 .ski-utility__grid { counter-reset: ski-util; }
body.page-id-635 .ski-utility__grid > .et_pb_column {
  counter-increment: ski-util;
  border-top: 1px solid var(--ski-line) !important;
  padding-top: 20px !important;
}
body.page-id-635 .ski-utility__grid .et_pb_main_blurb_image,
body.page-id-635 .ski-utility__grid .et_pb_main_blurb_image img {
  width: var(--ski-icon-md) !important;
  height: var(--ski-icon-md) !important;
}
body.page-id-635 .ski-utility__grid .et_pb_blurb_container::before {
  content: counter(ski-util, decimal-leading-zero);
  display: block;
  margin: 0 0 5px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--ski-blue);
  font-variant-numeric: tabular-nums;
}
body.page-id-635 .ski-utility__grid .et_pb_module_header {
  font-size: 17.5px !important;
}

/* Conoce Sierra Nevada: editorial text + photo pairing (was text-only). */
body.page-id-635 .ski-conoce-sn {
  display: grid !important;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  column-gap: clamp(40px, 5vw, 72px);
  align-items: center;
}
body.page-id-635 .ski-conoce-sn > .et_pb_column {
  background-image: none !important;
}
body.page-id-635 .ski-conoce-sn .ski-section-head,
body.page-id-635 .ski-conoce-sn .ski-eyebrow,
body.page-id-635 .ski-conoce-sn .ski-display-h2,
body.page-id-635 .ski-conoce-sn .ski-lead {
  text-align: left !important;
}
body.page-id-635 .ski-conoce-sn .ski-display-h2 .et_pb_module_header,
body.page-id-635 .ski-conoce-sn .ski-eyebrow .et_pb_text_inner,
body.page-id-635 .ski-conoce-sn .ski-lead p {
  text-align: left !important;
}
body.page-id-635 .ski-conoce-sn__media {
  border-radius: 16px;
  overflow: hidden;
}
body.page-id-635 .ski-conoce-sn__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 4 / 3;
  border-radius: 16px;
}
@media (max-width: 980px) {
  body.page-id-635 .ski-conoce-sn {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 28px;
  }
  body.page-id-635 .ski-conoce-sn .ski-section-head,
  body.page-id-635 .ski-conoce-sn .ski-eyebrow .et_pb_text_inner,
  body.page-id-635 .ski-conoce-sn .ski-display-h2 .et_pb_module_header,
  body.page-id-635 .ski-conoce-sn .ski-lead p {
    text-align: center !important;
  }
  body.page-id-635 .ski-conoce-sn .ski-eyebrow .et_pb_text_inner {
    justify-content: center;
  }
}

/* Trust strip (desktop): title-only items, matching the canonical component
   on /clases/clases-de-esqui/ exactly. No description text, so no icon
   anchoring hack is needed — default centred alignment from the shared
   .et_pb_blurb_content flex rules applies, same as the canonical page.
   Only the title size needs a page-scoped override to match canonical's
   (canonical gets 15px from its own page-390-scoped rule). */
@media (min-width: 981px) {
	body.page-id-635 .ski-trust-strip .et_pb_blurb .et_pb_module_header {
		font-size: 15px;
	}
}

/* ===== Mobile refinement pass (2026-09-26) ===== */

/* --- 0. Global: tighten edge padding at mobile widths --- */
@media (max-width: 980px) {
  body.page-id-635 {
    --ski-edge: 20px;
  }
}

/* --- 1. Trust strip: 3 items one row, icon top + centred, no body text --- */
@media (max-width: 980px) {
  body.page-id-635 .ski-trust-strip {
    flex-wrap: nowrap !important;
    column-gap: 6px !important;
    row-gap: 0 !important;
    justify-content: center !important;
    align-items: stretch !important;
  }
  body.page-id-635 .ski-trust-strip > .et_pb_column {
    flex: 1 1 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 14px 4px !important;
    border-left: none !important;
    border-right: none !important;
    border-top: none !important;
    background-image: none !important;
  }
  body.page-id-635 .ski-trust-strip .et_pb_blurb .et_pb_blurb_content {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    width: 100%;
    max-width: none !important;
  }
  body.page-id-635 .ski-trust-strip .et_pb_blurb .et_pb_main_blurb_image {
    width: 26px !important;
    height: 26px !important;
    align-self: center !important;
    flex: 0 0 auto !important;
    margin: 0 0 7px !important;
  }
  body.page-id-635 .ski-trust-strip .et_pb_blurb .et_pb_main_blurb_image img {
    width: 26px !important;
    height: 26px !important;
    object-fit: contain;
  }
  body.page-id-635 .ski-trust-strip .et_pb_blurb_container {
    text-align: center !important;
    padding: 0 !important;
  }
  body.page-id-635 .ski-trust-strip .et_pb_module_header {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.01em !important;
    text-align: center !important;
    margin: 0 !important;
    hyphens: none !important;
    overflow-wrap: normal;
    word-break: normal;
    color: var(--ski-deep) !important;
  }
  body.page-id-635 .ski-trust-strip .et_pb_blurb_description {
    display: none !important;
  }
}

/* --- 2. fd-editorial: text-width fix --- */
@media (max-width: 980px) {
  body.page-id-635 .ski-fd-editorial__body .ski-display-h2 .et_pb_module_header {
    max-width: 100%;
  }
  body.page-id-635 .ski-fd-editorial .ski-lead p {
    max-width: 100%;
  }
}

/* --- 3. Utility band: spacing at phone (icon alignment → global style.css) --- */
@media (max-width: 767px) {
  body.page-id-635 .ski-utility__grid > .et_pb_column {
    padding: 14px 0 16px !important;
  }
  body.page-id-635 .ski-utility__grid .et_pb_blurb_description p {
    max-width: 100%;
  }
}

/* --- 4. "Antes de tu clase": compact checklist on mobile
        (icon alignment → global style.css) --- */
@media (max-width: 980px) {
  body.page-id-635 .ski-adapt__grid {
    row-gap: 28px !important;
  }
  body.page-id-635 .ski-adapt__grid > .et_pb_column {
    padding: 16px 0 !important;
  }
  body.page-id-635 .ski-adapt__grid > .et_pb_column:last-child {
    padding-bottom: 4px !important;
  }
  body.page-id-635 .ski-adapt__grid .et_pb_module_header {
    font-size: 18px !important;
    margin-bottom: 4px !important;
  }
  body.page-id-635 .ski-adapt__grid .et_pb_blurb_description p {
    font-size: 15.5px;
    max-width: 100%;
  }
}

/* --- 5. CTA final: mobile hierarchy spacing --- */
@media (max-width: 980px) {
  body.page-id-635 .ski-final .et_pb_promo_description .et_pb_module_header {
    font-size: clamp(1.85rem, 1.3rem + 2.1vw, 3rem) !important;
    padding-bottom: 14px !important;
  }
  body.page-id-635 .ski-final .et_pb_promo_content p {
    font-size: 16.5px;
    line-height: 1.55;
  }
  body.page-id-635 .ski-final .et_pb_button_wrapper {
    margin-top: 22px !important;
  }
}

/* --- 6. FAQ: touch-friendly tap area on phone --- */
@media (max-width: 767px) {
  body.page-id-635 .ski-faq .et_pb_toggle_title {
    min-height: 48px;
    display: flex;
    align-items: center;
  }
}

/* ===== UI refinement pass (2026-09-27): Parking ===== */
/* Reuses the existing .ski-adapt__grid system (numbered label, icon-left
   layout, hairline top accent) at 2 columns instead of 3, with a smaller
   icon (logistics info, not a protagonist trio) — matches the
   "Te ayudamos a preparar tu día" icon scale. No new component created. */
body.page-id-635 .ski-adapt__grid--2col {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  --ski-aico: var(--ski-icon-md);
  --ski-aico-col: calc(var(--ski-icon-md) + 4px);
}
@media (max-width: 980px) {
  body.page-id-635 .ski-adapt__grid--2col {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* ===== Visual regression fix (2026-09-28) =====
   Diagnosed: the hero (#ski-hero / .ski-page-hero) is a Fullwidth Header
   nested inside a Row/Column (instead of a direct Section child). This
   exposes the row to Divi core's generic content-width rule
   (.et_pb_row:not([class*="et_flex_column"]) { width: var(--content-width) })
   combined with the flex-column margin override
   (.et_flex_column > .et_pb_row { margin: initial }), which together leave
   the row at 80% width with NO centering margin — an 80%-wide,
   left-aligned hero instead of edge-to-edge. Scoped strictly to this page's
   hero row; does not touch any other row on the page or site-wide Divi
   behavior. Same pattern already used above for .ski-band > .et_pb_row. */
body.page-id-635 .et_pb_row:has(#ski-hero) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

/* ===== Visual regression fix (2026-09-28) — missing background/min-height =====
   Confirmed via a full clean rebuild of the Divi static CSS cache (et-cache/635)
   that Divi's per-module generator emits NO rule at all for #ski-hero on this
   page — not stale cache, a live generation gap (likely due to the module's
   non-standard Row/Column nesting, see the fix above). The values below are a
   1:1 copy of what is already saved in the module's own settings (background
   image, gradient overlay, min-height for desktop and mobile) — no new design
   decisions. Remove this block if a future Divi/theme update starts generating
   the rule again (check by searching the regenerated et-cache/635 files for
   "ski-hero" first). */
#ski-hero {
  background-image: url("https://skischoolsierranevada.es/wp-content/uploads/2026/08/PHOTO-2025-03-17-18-45-19.jpg") !important;
  background-size: cover, cover !important;
  background-position: center, center !important;
  background-repeat: no-repeat, no-repeat !important;
  min-height: clamp(560px, 62vh, 640px) !important;
}
@media (max-width: 980px) {
  #ski-hero {
    background-image: url("https://skischoolsierranevada.es/wp-content/uploads/2026/08/PHOTO-2025-03-17-18-45-19.jpg") !important;
    min-height: 80svh !important;
  }
}
