/* r67: homepage-only theme controls. Shared pages and the r65 layout stay intact. */
body.ce-home {
  background-color: var(--ce-home-bg-color, #f5f1e9);
  background-image: var(--ce-home-bg-image, none);
  background-size: var(--ce-home-bg-size, cover);
  background-repeat: var(--ce-home-bg-repeat, no-repeat);
  background-position: center top;
}

body.ce-home .site-header__center,
body.ce-home .main-nav {
  background-color: var(--ce-home-nav-bg, #f5f1e9);
}
body.ce-home .main-nav a {
  color: var(--ce-home-nav-color, #080808);
  font-family: var(--ce-home-nav-font, Arial, Helvetica, sans-serif);
  font-weight: var(--ce-home-nav-weight, 900);
  font-style: var(--ce-home-nav-style, normal);
}
body.ce-home .main-nav a::after { background-color: var(--ce-home-nav-accent, #a8853f); }
body.ce-home .account-button.is-member { color: var(--ce-home-nav-color, #080808); }
body.ce-home .site-header__menu {
  background-color: var(--ce-home-nav-bg, #f5f1e9);
  color: var(--ce-home-nav-color, #080808);
  border-color: var(--ce-home-nav-accent, #a8853f);
}
body.ce-home .main-nav a:focus-visible,
body.ce-home .account-button:focus-visible {
  outline: 2px solid var(--ce-home-nav-accent, #a8853f);
  outline-offset: 3px;
}

body.ce-home .hero { background-color: var(--ce-home-hero-bg, #e9e1d5); }
body.ce-home .hero__copy {
  position: relative;
  isolation: isolate;
  background-color: var(--ce-home-intro-bg, #e9e1d5);
}
body.ce-home .hero h1 {
  color: var(--ce-home-heading-color, #080808);
  font-family: var(--ce-home-heading-font, Georgia, 'Times New Roman', serif);
  font-style: var(--ce-home-heading-style, italic);
  font-weight: var(--ce-home-heading-weight, 900);
}
body.ce-home .hero h1 .gold { color: var(--ce-home-heading-accent, #bd8d30); }
body.ce-home .hero__copy > p {
  color: var(--ce-home-intro-color, #080808);
  font-family: var(--ce-home-intro-font, 'Courier New', monospace);
  font-weight: var(--ce-home-intro-weight, 400);
  font-style: var(--ce-home-intro-style, normal);
  overflow-wrap: anywhere;
}
body.ce-home .hero__image { background-color: var(--ce-home-hero-bg, #e9e1d5); }
body.ce-home .hero__image img {
  object-fit: var(--ce-home-hero-fit, cover);
  object-position: var(--ce-home-hero-x, 50%) var(--ce-home-hero-y, 50%);
}
html.ce-home-theme-waiting body.ce-home .hero__image img { visibility: hidden; }

body.ce-home .process-grid { background-color: var(--ce-home-features-bg, #fffaf1); }
body.ce-home .process-grid__icon { color: var(--ce-home-features-accent, #080808); }
body.ce-home .process-grid h2 {
  color: var(--ce-home-features-heading-color, #080808);
  font-family: var(--ce-home-features-heading-font, Arial, Helvetica, sans-serif);
  font-weight: var(--ce-home-features-heading-weight, 900);
  font-style: var(--ce-home-features-heading-style, normal);
  overflow-wrap: anywhere;
}
body.ce-home .process-grid p {
  color: var(--ce-home-features-body-color, #080808);
  font-family: var(--ce-home-features-body-font, 'Courier New', monospace);
  font-weight: var(--ce-home-features-body-weight, 400);
  font-style: var(--ce-home-features-body-style, normal);
  overflow-wrap: anywhere;
}

/* Restrained papel picado and floral details. These add no layout height. */
html[data-ce-home-decoration="dia-de-los-muertos"] body.ce-home .hero__copy::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0 0 auto;
  height: 17px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='144' height='18' viewBox='0 0 144 18'%3E%3Cpath fill='%23f2b33d' d='M5 1h58v9l-8 7-8-7-8 7-8-7-8 7-9-7-9 7z'/%3E%3Cpath fill='%2366c8bb' d='M77 1h58v9l-8 7-8-7-8 7-8-7-8 7-9-7-9 7z'/%3E%3Cg fill='%2324152d'%3E%3Ccircle cx='18' cy='6' r='2'/%3E%3Ccircle cx='34' cy='6' r='2'/%3E%3Ccircle cx='50' cy='6' r='2'/%3E%3Ccircle cx='90' cy='6' r='2'/%3E%3Ccircle cx='106' cy='6' r='2'/%3E%3Ccircle cx='122' cy='6' r='2'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: repeat-x;
  opacity: .8;
  pointer-events: none;
}
html[data-ce-home-decoration="dia-de-los-muertos"] body.ce-home .hero__copy::after {
  content: '';
  position: absolute;
  z-index: -1;
  right: 12px;
  bottom: 10px;
  width: 95px;
  height: 95px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%2366c8bb' stroke-width='2'%3E%3Cpath d='M50 98V55M50 77Q16 79 17 54Q48 54 50 77M50 87Q82 85 85 65Q57 65 50 87'/%3E%3C/g%3E%3Cg fill='%23f2b33d'%3E%3Cellipse cx='50' cy='22' rx='9' ry='17'/%3E%3Cellipse cx='50' cy='22' rx='9' ry='17' transform='rotate(45 50 40)'/%3E%3Cellipse cx='50' cy='22' rx='9' ry='17' transform='rotate(90 50 40)'/%3E%3Cellipse cx='50' cy='22' rx='9' ry='17' transform='rotate(135 50 40)'/%3E%3Cellipse cx='50' cy='22' rx='9' ry='17' transform='rotate(180 50 40)'/%3E%3Cellipse cx='50' cy='22' rx='9' ry='17' transform='rotate(225 50 40)'/%3E%3Cellipse cx='50' cy='22' rx='9' ry='17' transform='rotate(270 50 40)'/%3E%3Cellipse cx='50' cy='22' rx='9' ry='17' transform='rotate(315 50 40)'/%3E%3C/g%3E%3Ccircle cx='50' cy='40' r='10' fill='%2324152d'/%3E%3Ccircle cx='50' cy='40' r='5' fill='%23fff4df'/%3E%3C/svg%3E");
  opacity: .2;
  pointer-events: none;
}
html[data-ce-home-decoration="dia-de-los-muertos"] body.ce-home .site-header__center {
  box-shadow: inset 0 -2px 0 var(--ce-home-nav-accent, #f2b33d);
}
html[data-ce-home-decoration="dia-de-los-muertos"] body.ce-home .process-grid {
  border-top-color: var(--ce-home-features-accent, #f2b33d);
}
html[data-ce-home-decoration="dia-de-los-muertos"] body.ce-home .process-grid::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: repeating-linear-gradient(90deg, #f2b33d 0 28px, #24152d 28px 31px, #66c8bb 31px 59px, #24152d 59px 62px);
  pointer-events: none;
}

@media (max-width: 900px) {
  /* The existing center uses display:contents here, so color its visible cells. */
  body.ce-home .site-header { background-color: var(--ce-home-nav-bg, #f5f1e9); }
  body.ce-home .site-header .campus-bay { background-color: #f5f1e9; }
  body.ce-home .site-header__actions { background-color: var(--ce-home-nav-bg, #f5f1e9); }
}
