/* Presentación pública de Tecnológico; conserva la identidad turquesa. */
.brand-logo { width: 58px; height: 58px; object-fit: contain; flex-shrink: 0; border-radius: 8px; }
.brand { gap: .85rem; }
.brand-text strong { font-size: 1.5rem; }
.brand-text em { display: flex; align-items: baseline; gap: .5em; font-size: .76rem; letter-spacing: .12em; }
.brand-branch { font-size: 1.05rem; font-weight: 900; letter-spacing: .07em; }
#header nav a { padding-left: .85rem; padding-right: .85rem; }
.hero-sub { max-width: 630px; color: #e0e8e5; line-height: 1.75; }
.hero-eyebrow { color: var(--gold-light); }
.hero-content { width: 100%; max-width: 1180px; }
.hero-title { font-size: clamp(3.2rem, 7vw, 6.8rem); line-height: 1.1; }
.hero-title .line { padding-bottom: .08em; overflow: visible; }
.hero-title-gold { font-style: normal; color: var(--gold-light); }
.hero-eyebrow, .hero-title .line span, .hero-sub, .hero-actions { animation: none; opacity: 1; transform: none; }
.quick-guide { padding: 2.8rem 0; background: #0d1513; border-block: 1px solid #1d3933; }
.quick-guide-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.quick-guide a { padding: 1.1rem; border-left: 1px solid #255148; }
.quick-guide span { font-size: .65rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--gold-light); }
.quick-guide strong { display: block; font-size: 1.18rem; margin: .8rem 0 .5rem; }
.quick-guide p { color: #b4c6c0; font-size: .82rem; line-height: 1.7; }
.quick-guide a:hover strong { color: var(--gold-light); }
.booking-app-link { margin-top: 1.3rem; font-size: .85rem; }
.booking-include { margin-top: 1.4rem; }
.perk-item p { color: #aebbb6; }
section[id] { scroll-margin-top: 100px; }
.posts-home { background: #0b1110; }
.posts-home-intro p, .post-meta, .posts-intro > p, .post-card-copy > p, .posts-section-heading > span, .post-empty p { color: #becbc6; }
.post-body p { color: #d9e1dc; }
.post-card, .post-empty { background: #101714; border-color: #2b423b; }
.post-topics span { border-color: #2d5d53; color: #bddbd2; }
.posts-archive-link { border-color: #397c6d; }
.posts-footer { border-color: #2b423b; }
.post-share-status:not(:empty) { background: #b4e8d9; }
.brand:focus-visible, .quick-guide a:focus-visible, .header-cta:focus-visible, .btn:focus-visible, .menu-toggle:focus-visible, .mobile-nav a:focus-visible { outline: 2px solid var(--gold-light); outline-offset: 5px; }
@media (max-width: 1080px) {
  #header nav { display: none; }
  .menu-toggle { display: flex; }
  .quick-guide-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
  #header, #header.scrolled { padding: .8rem 1rem; }
  .brand-logo { width: 44px; height: 44px; }
  .brand-text strong { font-size: 1.2rem; }
  .brand-text em { display: block; font-size: .64rem; letter-spacing: .06em; }
  .brand-branch { display: block; font-size: .88rem; margin-top: .15rem; }
  .hero { min-height: 680px; }
  .hero-title { font-size: clamp(2.8rem, 11vw, 4rem); }
  .hero-sub { font-size: 1rem; }
  .hero-content { padding: 0 1.4rem; }
  .mobile-nav { gap: 1.8rem; overflow-y: auto; padding-top: 100px; padding-bottom: 30px; }
  .mobile-nav a { font-size: 1.8rem; }
  .quick-guide { padding: 1.8rem 0; }
  .quick-guide a { padding: .8rem; }
  .quick-guide strong { font-size: 1.05rem; }
}
@media (max-width: 380px) { .quick-guide-grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

.posts-header .posts-brand { display: flex; align-items: center; gap: .7rem; }
.posts-header .brand-logo { width: 44px; height: 44px; }
.posts-header .posts-brand small { padding-left: 0; }
@media (max-width: 680px) { .posts-header .brand-logo { width: 30px; height: 30px; } .posts-header .posts-brand { gap: .4rem; } }
