/* The mentoring site is the visual reference for the entire universe. */
:root {
  --universe-paper: #faf9f2;
  --universe-forest: #163e34;
  --universe-ink: #203e34;
  --universe-muted: #5c6b61;
  --universe-mint: #e7edcf;
  --universe-sage: #edf0e2;
  --universe-line: #cbd2c3;
  --universe-olive: #63774b;
}
body[data-universe-page] {
  background: var(--universe-paper);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
body[data-universe-page] :is(h1,h2,h3,h4,blockquote) {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
}
body[data-universe-page] :is(h1,h2,h3,h4) { overflow-wrap: break-word; }
body[data-universe-page] :is(button,input,textarea,select) { font-family: Arial, Helvetica, sans-serif; }
body[data-universe-page] em { color: var(--universe-olive); }
body[data-universe-page] :is(a,button,input,select,textarea,summary):focus-visible {
  outline-color: var(--universe-olive);
}
body[data-universe-page] :is(.button,.room-cta) {
  border-radius: 5px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
}
body[data-universe-page] .button:hover { transform: none; }
body[data-universe-page] :is(.announcement,.ribbon) {
  background: var(--universe-mint);
  color: var(--universe-forest);
}
body[data-universe-page] .universe-shell .universe-home span { font-family: Arial, Helvetica, sans-serif; }
body[data-universe-page] .universe-shell { border-bottom-color: var(--universe-line); }
body[data-universe-page] :is(.universe-shell,.universe-footer) { background: var(--universe-paper); }
body[data-universe-page] .universe-footer { padding-top: 28px; padding-bottom: 28px; }

/* The home retains its house and five-door navigation, on light surfaces. */
body[data-universe-page="inicio"] { color: var(--universe-ink); }
body[data-universe-page="inicio"] :is(.wordmark,h1,h2,h3) { color: var(--universe-ink); }
body[data-universe-page="inicio"] :is(h1,h2) em { color: var(--universe-olive); }
body[data-universe-page="inicio"] .wordmark { letter-spacing: -1.5px; }
body[data-universe-page="inicio"] .wordmark span { color: var(--universe-muted); }
body[data-universe-page="inicio"] h1 {
  font-size: clamp(3.4rem,5.6vw,5.5rem);
  line-height: 1.06;
  letter-spacing: -.045em;
}
body[data-universe-page="inicio"] .intro { padding-top: 64px; padding-bottom: 45px; }
body[data-universe-page="inicio"] .small-mark { color: var(--universe-olive); }
body[data-universe-page="inicio"] .house {
  border: 1px solid var(--universe-line);
  border-radius: 10px;
  overflow: hidden;
  color: var(--universe-ink);
  background: #fff;
}
body[data-universe-page="inicio"] .door-panel { background: #fff; }
body[data-universe-page="inicio"] .courtyard img { filter: saturate(.72) brightness(1.06); animation: none; }
body[data-universe-page="inicio"] .image-caption { color: #faf9f2; }
body[data-universe-page="inicio"] :is(.room-label,.link-note,#room-description) { color: var(--universe-muted); }
body[data-universe-page="inicio"] .room-cta { color: #fff; }
body[data-universe-page="inicio"] .room-cta:hover { color: #fff; background: #275748; }
body[data-universe-page="inicio"] .room-tabs button { border-radius: 30px; padding: 8px 13px; }
body[data-universe-page="inicio"] .room-question { color: var(--universe-olive); }
body[data-universe-page="inicio"] :is(.test-entry,.reflection,.community-note) { border-radius: 8px; }
body[data-universe-page="inicio"] .test-entry { background: var(--universe-mint); }
body[data-universe-page="inicio"] .philosophy { background: var(--universe-sage); }
body[data-universe-page="inicio"] .philosophy h2 { font-size: clamp(3rem,4.6vw,4.3rem); line-height: 1.15; }
body[data-universe-page="inicio"] .beliefs article { padding: 22px 0; }
body[data-universe-page="inicio"] .reflection { background: #fff; }
body[data-universe-page="inicio"] .reflection button { color: var(--universe-forest); }
body[data-universe-page="inicio"] .community { background: var(--universe-mint); }
body[data-universe-page="inicio"] .community-note { background: var(--universe-paper); }
body[data-universe-page="inicio"] .community-note p { font-size: 25px; }
body[data-universe-page="inicio"] .about { background: var(--universe-sage); color: var(--universe-ink); }
body[data-universe-page="inicio"] .about-lead { color: var(--universe-ink)!important; }
body[data-universe-page="inicio"] .about p { color: var(--universe-muted); }
body[data-universe-page="inicio"] .about-portrait { background: var(--universe-mint); padding: 9px; }
body[data-universe-page="inicio"] .social-links h3 { color: var(--universe-ink); }
body[data-universe-page="inicio"] .social-account a:hover { color: #275748; }
body[data-universe-page="inicio"] .changing { animation: none; }

/* Program: the same cream, sage and restrained green used by Brújula. */
body[data-universe-page="programa"] .hero h1 {
  font-size: clamp(3.4rem,5.6vw,5.5rem);
  line-height: 1.06;
  letter-spacing: -.045em;
}
body[data-universe-page="programa"] h2 { font-size: clamp(2.5rem,4vw,3.8rem); line-height: 1.12; }
body[data-universe-page="programa"] .hero-art img { filter: saturate(.72) brightness(1.06); }
body[data-universe-page="programa"] .button:not(.small):not(.test-button):hover { color: #fff; background: #275748; }
body[data-universe-page="programa"] .button.small { border-color: var(--universe-forest); border-radius: 30px; }
body[data-universe-page="programa"] .button.small:hover { color: var(--universe-forest); background: var(--universe-mint); }
body[data-universe-page="programa"] .test-button { border-radius: 5px; }
body[data-universe-page="programa"] :is(.price-card,.testimonial) { border-radius: 8px; }
body[data-universe-page="programa"] .price-card { box-shadow: 0 6px 22px #203e3408; }
body[data-universe-page="programa"] .systems { border-radius: 8px; overflow: hidden; background: #fff; }
body[data-universe-page="programa"] .systems h3 { font-size: 32px; }
body[data-universe-page="programa"] .testimonial blockquote { font-size: 23px; line-height: 1.5; }
body[data-universe-page="programa"] .testimonial figcaption { color: var(--universe-ink); }
body[data-universe-page="programa"] .price { font-size: clamp(2.8rem,4vw,3.8rem); }
body[data-universe-page="programa"] .weeks img { border-radius: 8px; filter: saturate(.72) brightness(1.04); }

/* Portal keeps its service imagery and gains the mentoring palette. */
body[data-universe-page="portal"] :is(.hero-art img,.card-image img) { filter: saturate(.85); }
body[data-universe-page="portal"] .service { background: #fff; }
body[data-universe-page="portal"] .service.featured { background: var(--universe-sage); border-color: var(--universe-line); }
body[data-universe-page="portal"] .art-note { border-radius: 6px; }
body[data-universe-page="portal"] .button.small { border-radius: 30px; }
body[data-universe-page="portal"] .closing em { color: #e0eaa7; }
body[data-universe-page="mentorias"] :is(.process,.closing) em { color: #e0eaa7; }
body[data-universe-page="mentorias"] .universe-footer { margin-bottom: 0; }

/* Dynamic quiz, result, story and laboratory surfaces share the same theme. */
body[data-universe-page="test"] :is(.home-hero,.profile-hero,.lab-hero,.tie-view,.error-view,.result-overview) h1 {
  font-size: clamp(3.1rem,5.4vw,5rem);
  line-height: 1.1;
  letter-spacing: -.035em;
}
body[data-universe-page="test"] h2 { font-size: clamp(2.2rem,3.5vw,3.25rem); line-height: 1.18; }
body[data-universe-page="test"] .question-title { font-size: clamp(1.9rem,3vw,2.6rem); letter-spacing: -.025em; line-height: 1.22; }
body[data-universe-page="test"] .quiz-aside h2 { font-size: 34px; }
body[data-universe-page="test"] .profile-hero .lead { font-size: 23px; }
body[data-universe-page="test"] .result-duo h2 { font-size: 34px; }
body[data-universe-page="test"] .result-combination h2 { font-size: 36px; }
body[data-universe-page="test"] .result-character h2 { font-size: 35px; }
body[data-universe-page="test"] .result-character h2 em { font-size: 27px; }
body[data-universe-page="test"] :is(.home-hero .hero-art img,.profile-image img,.tie-card img) { filter: saturate(.8) brightness(1.03); }
body[data-universe-page="test"] :is(.option-body,.tie-card,.result-character,.result-duo,.format-card,.idea-card,.lab-form,.lab-preview,.saved-card,.empty-formats,.reminder) { border-radius: 8px; }
body[data-universe-page="test"] :is(.format-card,.result-character,.idea-card,.lab-preview) { background: #fff; }
body[data-universe-page="test"] .field { border-radius: 5px; background: #fff; color: var(--universe-ink); }
body[data-universe-page="test"] .field::placeholder { color: var(--universe-muted); }
body[data-universe-page="test"] .button:not(:disabled):hover { color: #fff; }
body[data-universe-page="test"] .button.outline:hover { background: var(--universe-forest); color: #fff; }
body[data-universe-page="test"] .button.subtle:hover { background: var(--universe-mint); color: var(--universe-forest); }
body[data-universe-page="test"] .header-cta { color: var(--universe-forest)!important; border-radius: 30px; }
body[data-universe-page="test"] .header-cta:hover { background: var(--universe-mint)!important; }
body[data-universe-page="test"] .text-link:hover { color: #275748; }
body[data-universe-page="test"] .option-letter { border-radius: 5px; }
body[data-universe-page="test"] .option-check { border-color: var(--universe-olive); }
body[data-universe-page="test"] .question-dot { border-radius: 50%; }
body[data-universe-page="test"] .question-dot.active { background: var(--universe-forest); color: #fff; }
body[data-universe-page="test"] :is(.filter,.lab-tab,.pill,.tag-cloud span) { border-radius: 30px; }
body[data-universe-page="test"] .save-idea[aria-pressed=true] { color: var(--universe-olive); }
body[data-universe-page="test"] .image-dialog { border-radius: 8px; background: var(--universe-paper); }
body[data-universe-page="test"] .toast { color: #fff; border-radius: 6px; box-shadow: 0 6px 24px #203e341f; }
body[data-universe-page="test"] .profile-nav { background: var(--universe-paper); }
body[data-universe-page="test"] .block-list li { opacity: .85; }
body[data-universe-page="test"] .block-list .current { opacity: 1; }
body[data-universe-page="test"] .lab-form h2 { font-size: 32px; }
body[data-universe-page="test"] .lab-preview h2 { font-size: 33px; }

@media(max-width:760px) {
  body[data-universe-page="inicio"] .intro { padding-top: 38px; padding-bottom: 30px; }
  body[data-universe-page="inicio"] h1,
  body[data-universe-page="programa"] .hero h1 { font-size: clamp(3rem,10vw,3.65rem); }
  body[data-universe-page="inicio"] .philosophy h2 { font-size: clamp(2.65rem,8.8vw,3.5rem); }
  body[data-universe-page="inicio"] .community-note p { font-size: 23px; }
  body[data-universe-page="programa"] h2 { font-size: 2.6rem; }
  body[data-universe-page="test"] :is(.home-hero,.profile-hero,.lab-hero,.tie-view,.error-view,.result-overview) h1 {
    font-size: clamp(2.7rem,9vw,3.6rem);
    letter-spacing: -.035em;
  }
  body[data-universe-page="test"] h2 { font-size: 2.35rem; }
  body[data-universe-page="test"] .question-title { font-size: clamp(1.85rem,6.5vw,2.25rem); }
  body[data-universe-page="test"] .result-character h2 { font-size: 33px; }
  body[data-universe-page="test"] .result-character h2 em { font-size: 25px; }
  body[data-universe-page="mentorias"] .universe-footer { padding-bottom: 85px; }
}
