/* Bencefalo global shell v99 — one canonical header + footer across the whole site */
:root{
  --shell-bg:#05050c;
  --shell-ui:Inter,Arial,sans-serif;
  --shell-display:"AngleFairy",Georgia,serif;
  --shell-purple:#c997ff;
  --shell-muted:#918b9e;
  --shell-line:rgba(164,126,255,.12);
}
.global-nav{
  position:sticky!important;top:0!important;z-index:1200!important;
  width:100%!important;height:65px!important;
  display:block!important;
  border-bottom:1px solid var(--shell-line)!important;
  background:rgba(2,4,12,.84)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  transform:translateY(0);
  opacity:1;
  transition:transform .28s cubic-bezier(.22,.7,.22,1),opacity .22s ease!important;
  will-change:transform,opacity;
}
.global-nav.nav-hidden{
  transform:translateY(calc(-100% - 2px))!important;
  opacity:0!important;
  pointer-events:none!important;
}
.global-nav .shell,
.global-footer .shell{
  width:min(1180px,calc(100% - 40px))!important;
  max-width:none!important;margin:0 auto!important;
}
.global-nav .navin{
  height:64px!important;display:flex!important;align-items:center!important;
  justify-content:space-between!important;gap:24px!important;padding:0!important;
}
.global-nav .brand{
  display:inline-flex!important;align-items:center!important;gap:11px!important;
  color:#fff!important;text-decoration:none!important;flex:0 0 auto!important;
}
.global-nav .brand img{width:34px!important;height:34px!important;object-fit:contain!important}
.global-nav .brandword{
  color:#fff!important;font-family:var(--shell-display)!important;
  font-size:23px!important;line-height:1!important;font-weight:400!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;
}
.global-nav .navlinks{
  display:flex!important;align-items:center!important;gap:14px!important;
  margin-left:auto!important;flex-wrap:nowrap!important;
}
.global-nav .navlinks>a:not(.btn),
.global-nav .nav-trigger{
  display:inline-flex!important;align-items:center!important;gap:5px!important;
  min-height:36px!important;padding:0!important;border:0!important;background:none!important;
  color:#cbc5d2!important;font-family:var(--shell-ui)!important;
  font-size:11px!important;line-height:1.2!important;font-weight:600!important;
  letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;
  white-space:nowrap!important;cursor:pointer!important;
}
.global-nav .navlinks>a:not(.btn):hover,
.global-nav .nav-trigger:hover{color:#fff!important;text-decoration:none!important}
.global-nav .navlinks>.btn.small{
  min-height:38px!important;padding:8px 15px!important;border-radius:999px!important;
  color:#fff!important;font-family:var(--shell-ui)!important;font-size:12px!important;
  line-height:1.2!important;font-weight:700!important;text-decoration:none!important;
  border:1px solid rgba(216,190,255,.52)!important;
  background:linear-gradient(135deg,#b16cf6 0%,#8b5cf6 48%,#6d45cf 100%)!important;
  box-shadow:0 10px 30px rgba(139,92,246,.24),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
.global-nav .mobile-menu-toggle{
  display:none!important;width:42px!important;height:42px!important;padding:9px!important;
  border:1px solid rgba(177,145,224,.22)!important;border-radius:12px!important;
  background:rgba(10,9,21,.82)!important;cursor:pointer!important;
}
.global-nav .mobile-menu-toggle span{display:block!important;height:1px!important;margin:5px 0!important;background:#ddd7e7!important}

/* Tarot dropdown */
.global-nav .nav-dropdown{position:relative!important}
.global-nav .nav-menu{
  position:absolute!important;top:calc(100% + 10px)!important;left:auto!important;right:0!important;
  width:min(820px,calc(100vw - 40px))!important;padding:0!important;
  border:1px solid rgba(164,126,255,.18)!important;border-radius:20px!important;
  background:linear-gradient(145deg,rgba(14,12,29,.985),rgba(5,6,14,.995))!important;
  box-shadow:0 28px 70px rgba(0,0,0,.52)!important;overflow:hidden!important;
  opacity:0!important;visibility:hidden!important;transform:translateY(-5px)!important;
  transition:.16s ease!important;
}
.global-nav .nav-dropdown:hover>.nav-menu,
.global-nav .nav-dropdown.is-open>.nav-menu{
  opacity:1!important;visibility:visible!important;transform:none!important;
}
.global-nav .tarot-menu-layout{display:grid!important;grid-template-columns:260px 1fr!important;min-height:250px!important}
.global-nav .tarot-menu-options{
  padding:16px!important;border-right:1px solid rgba(164,126,255,.10)!important;
  background:rgba(8,8,18,.62)!important;
}
.global-nav .tarot-subnav-button,
.global-nav .tarot-subnav-link{
  width:100%!important;display:flex!important;justify-content:space-between!important;align-items:center!important;
  gap:12px!important;padding:12px 13px!important;margin:0 0 4px!important;border:0!important;
  border-radius:12px!important;background:transparent!important;color:#beb8c8!important;
  font-family:var(--shell-ui)!important;text-align:left!important;text-decoration:none!important;cursor:pointer!important;
}
.global-nav .tarot-subnav-button:hover,
.global-nav .tarot-subnav-link:hover,
.global-nav .tarot-subnav-button.is-active{background:rgba(145,86,217,.10)!important;color:#fff!important;text-decoration:none!important}
.global-nav .tarot-subnav-button span,
.global-nav .tarot-subnav-link span{display:grid!important;gap:3px!important}
.global-nav .tarot-subnav-button strong,
.global-nav .tarot-subnav-link strong{font-size:11px!important;line-height:1.25!important;font-weight:700!important}
.global-nav .tarot-subnav-button small,
.global-nav .tarot-subnav-link small{font-size:9px!important;line-height:1.3!important;font-weight:400!important;color:#807a8c!important}
.global-nav .tarot-menu-content{padding:22px!important}
.global-nav .nav-menu-head{display:flex!important;justify-content:space-between!important;gap:16px!important;align-items:center!important;margin-bottom:14px!important}
.global-nav .nav-menu-head strong{font-family:var(--shell-ui)!important;font-size:11px!important;color:#eae4f0!important}
.global-nav .nav-menu-head a{color:#c997ff!important;font:600 10px/1.3 var(--shell-ui)!important;text-decoration:none!important}
.global-nav .nav-static-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.global-nav .nav-static-card{
  display:block!important;padding:15px!important;border:1px solid rgba(164,126,255,.12)!important;border-radius:14px!important;
  background:rgba(12,10,24,.70)!important;color:#ded8e5!important;text-decoration:none!important;
}
.global-nav .nav-static-card strong{display:block!important;margin-bottom:4px!important;font:600 11px/1.3 var(--shell-ui)!important}
.global-nav .nav-static-card small{display:block!important;color:#888292!important;font:400 10px/1.45 var(--shell-ui)!important}

/* Canonical footer */
.global-footer{
  width:100%!important;margin:0!important;padding:54px 0 22px!important;
  border-top:1px solid rgba(164,126,255,.10)!important;background:transparent!important;
  color:#918b9e!important;
}
.global-footer .footer-grid{
  display:grid!important;
  grid-template-columns:minmax(400px,1fr) repeat(4,minmax(112px,132px))!important;
  column-gap:18px!important;row-gap:28px!important;align-items:start!important;
}
.global-footer .footer-brand{max-width:560px!important;padding-right:24px!important}
.global-footer .footer-brand-link{display:inline-block!important;color:#fff!important;text-decoration:none!important}
.global-footer .footer-brand-title{
  color:#fff!important;font-family:var(--shell-display)!important;font-size:22px!important;
  line-height:1!important;font-weight:400!important;letter-spacing:.035em!important;
}
.global-footer .footer-brand p{
  max-width:420px!important;margin:15px 0 17px!important;color:#918b9e!important;
  font-family:var(--shell-ui)!important;font-size:12px!important;line-height:1.65!important;font-weight:400!important;
}
.global-footer .footer-socials{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
.global-footer .footer-socials a{
  width:32px!important;height:32px!important;display:grid!important;place-items:center!important;
  border:1px solid rgba(164,126,255,.14)!important;border-radius:50%!important;
  color:#9c95aa!important;background:rgba(10,9,18,.42)!important;text-decoration:none!important;
}
.global-footer .footer-socials svg{width:15px!important;height:15px!important;fill:currentColor!important}
.global-footer .footer-col{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important;min-width:0!important}
/* All four footer titles are intentionally identical */
.global-footer .footer-col>.footer-heading,
.global-footer .footer-col>strong.footer-heading{
  display:block!important;margin:0 0 7px!important;padding:0!important;border:0!important;background:none!important;
  color:var(--shell-purple)!important;font-family:var(--shell-ui)!important;
  font-size:11px!important;line-height:1.35!important;font-weight:600!important;
  letter-spacing:.14em!important;text-transform:uppercase!important;text-decoration:none!important;
  white-space:nowrap!important;
}
.global-footer .footer-col>a:not(.footer-heading){
  margin:0!important;padding:0!important;border:0!important;background:none!important;
  color:var(--shell-muted)!important;font-family:var(--shell-ui)!important;
  font-size:12px!important;line-height:1.5!important;font-weight:400!important;
  letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;
}
.global-footer .footer-col>a:not(.footer-heading):hover{color:#d5afff!important;text-decoration:none!important}
.global-footer .footer-heading:hover{color:#e2c7ff!important;text-decoration:none!important}
.global-footer .footer-bottom{
  display:flex!important;justify-content:space-between!important;gap:18px!important;
  margin-top:40px!important;padding-top:18px!important;border-top:1px solid rgba(164,126,255,.10)!important;
  color:#716b7d!important;font-family:var(--shell-ui)!important;font-size:10px!important;line-height:1.5!important;
}

@media(max-width:980px){
  .global-nav .mobile-menu-toggle{display:block!important;margin-left:auto!important}
  .global-nav .navlinks{
    display:none!important;position:absolute!important;top:65px!important;left:0!important;right:0!important;
    width:100%!important;max-height:calc(100vh - 65px)!important;overflow:auto!important;
    padding:16px 20px 22px!important;flex-direction:column!important;align-items:stretch!important;gap:3px!important;
    border-bottom:1px solid var(--shell-line)!important;background:rgba(3,4,12,.985)!important;
    box-shadow:0 22px 48px rgba(0,0,0,.40)!important;
  }
  .global-nav.mobile-open .navlinks{display:flex!important}
  .global-nav .navlinks>a:not(.btn),.global-nav .nav-trigger{
    width:100%!important;min-height:44px!important;padding:10px!important;justify-content:flex-start!important;
  }
  .global-nav .navlinks>.btn.small{width:100%!important;margin-top:6px!important}
  .global-nav .nav-dropdown{width:100%!important}
  .global-nav .nav-menu{
    position:static!important;width:100%!important;margin:3px 0 8px!important;
    opacity:1!important;visibility:visible!important;transform:none!important;display:none!important;
    box-shadow:none!important;
  }
  .global-nav .nav-dropdown.is-open>.nav-menu{display:block!important}
  .global-nav .tarot-menu-layout{grid-template-columns:1fr!important;min-height:0!important}
  .global-nav .tarot-menu-options{border-right:0!important}
  .global-nav .tarot-menu-content{display:none!important}
  .global-footer .footer-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:28px 18px!important}
  .global-footer .footer-brand{grid-column:1/-1!important;max-width:620px!important;padding-right:0!important}
}
@media(max-width:680px){
  .global-nav .shell,.global-footer .shell{width:min(100% - 28px,1180px)!important}
  .global-nav .brandword{font-size:21px!important}
  .global-footer .footer-grid{grid-template-columns:1fr 1fr!important;gap:27px 18px!important}
  .global-footer .footer-brand{grid-column:1/-1!important;max-width:none!important}
  .global-footer .footer-bottom{flex-direction:column!important;gap:6px!important}
}

/* v99 content-width + Tarot catalog refinements */
.service-card h3{
  font-size:24px!important;
  line-height:1.08!important;
  margin-bottom:12px!important;
}
.service-card p{
  width:100%!important;
  max-width:none!important;
}
.service-card .service-detail-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:15px!important;
  padding:0!important;
  min-height:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--accent,#c997ff)!important;
  font-family:var(--shell-ui)!important;
  font-size:11px!important;
  line-height:1.4!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  text-decoration:none!important;
}
.service-card .service-detail-link:hover{
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
.service-card .service-detail-link span{font-size:12px!important}

/* Content rails: don't artificially pinch section headings/descriptions */
.section>.shell>.section-title,
.section>.shell>.section-lead,
.section>.shell>.section-head,
.section>.shell>.section-head>div,
.section>.shell>.section-head>p,
.finder-head,
.finder-head .qlead,
.taller-page .courses-intro,
.taller-page .academy-how-intro,
.taller-page .story-copy,
.taller-page .story-copy p,
.taller-page .guide-copy,
.taller-page .guide-copy p,
.course-detail-section .detail-copy-wide,
.course-detail-section .detail-copy-wide p,
.course-detail-section .section-title,
.course-detail-section .courses-intro,
main.article{
  width:100%!important;
  max-width:none!important;
}
.section>.shell>.section-head{align-items:end!important}
.global-footer .footer-brand{max-width:none!important}
.global-footer .footer-brand p{
  width:100%!important;
  max-width:500px!important;
}

/* Círculo Mágico is the single name of the private area */
[data-campus-page-title]{white-space:normal!important}