:root { --entourage-blue: #68f4ff; --entourage-pink: #ff69d9; --entourage-violet: #9b6cff; }

.entourage-hero { min-height: calc(100vh - 5.5rem); }
.entourage-hero h1 { max-width: 100%; font-size: clamp(3.8rem,7vw,6.8rem); letter-spacing: -.055em; }
.entourage-hero .hero-tagline span { color: var(--entourage-blue); }

@media (min-width: 761px) {
  .entourage-hero { grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(2rem,4vw,4rem); }
}

.entourage-stage { position: relative; min-height: 39rem; display: grid; place-items: center; margin: 0; }
.entourage-stage::before { position: absolute; width: 82%; aspect-ratio: 1; contain: strict; border-radius: 50%; content: ""; background: radial-gradient(circle,rgba(104,244,255,.17),rgba(155,108,255,.1) 36%,transparent 74%); will-change: transform,opacity; animation: entourage-pulse 7s ease-in-out infinite; }
@keyframes entourage-pulse { 50% { transform: scale(1.08); opacity: .75; } }
.entourage-stage-shot { position: relative; z-index: 1; box-sizing: border-box; display: block; width: min(100%,48rem); height: auto; padding: .32rem; border: 3px solid rgba(104,244,255,.86); outline: 1px solid rgba(255,105,217,.68); outline-offset: 4px; border-radius: 1rem; background: linear-gradient(135deg,rgba(104,244,255,.2),rgba(255,105,217,.2)); box-shadow: 0 2.5rem 6rem rgba(0,0,0,.68),0 0 2.5rem rgba(104,244,255,.22),0 0 4.5rem rgba(155,108,255,.2); }

.suite-strip { border-block: 1px solid rgba(104,244,255,.18); background: rgba(9,8,14,.72); }
.suite-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.suite-grid div { padding: 1.25rem; border-right: 1px solid rgba(255,255,255,.07); }
.suite-grid div:first-child { border-left: 1px solid rgba(255,255,255,.07); }
.suite-grid strong,.suite-grid span { display: block; }
.suite-grid strong { color: #fff; }
.suite-grid span { color: var(--muted); font-size: .8rem; }

.entourage-section { padding: clamp(4rem,9vw,8rem) 0; }
.entourage-section-heading { max-width: 49rem; margin-bottom: 2.5rem; }
.entourage-section-heading h2 { margin: .1rem 0 1rem; color: #fff; font-size: clamp(2.2rem,6vw,4.6rem); font-weight: 260; line-height: .98; letter-spacing: -.045em; }
.entourage-section-heading p { color: var(--muted); font-size: 1.05rem; }
.entourage-feature-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1rem; }
.entourage-feature { position: relative; min-height: 19rem; overflow: hidden; padding: clamp(1.5rem,4vw,2.5rem); border: 1px solid rgba(255,255,255,.09); border-radius: 1.25rem; background: linear-gradient(145deg,rgba(27,20,39,.84),rgba(9,8,14,.92)); }
.entourage-feature::after { position: absolute; right: -15%; bottom: -35%; width: 55%; aspect-ratio: 1; border-radius: 50%; content: ""; background: radial-gradient(circle,rgba(104,244,255,.16),transparent 66%); }
.entourage-feature-wide { grid-column: 1 / -1; min-height: 16rem; }
.entourage-feature span { color: var(--entourage-blue); font-size: .7rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.entourage-feature h3 { max-width: 28rem; margin: .7rem 0; color: #fff; font-size: clamp(1.55rem,4vw,2.6rem); font-weight: 300; line-height: 1.05; }
.entourage-feature p { position: relative; z-index: 1; max-width: 38rem; color: var(--muted); }
.entourage-feature ul { position: relative; z-index: 1; color: #ded6e5; }

.workflow-rail { display: grid; gap: 1rem; counter-reset: entourage-step; }
.workflow-step { display: grid; grid-template-columns: 4rem minmax(0,1fr); gap: 1.3rem; padding: 1.4rem; border: 1px solid rgba(255,255,255,.09); border-radius: 1rem; background: rgba(18,14,27,.78); counter-increment: entourage-step; }
.workflow-step::before { width: 3rem; height: 3rem; display: grid; place-items: center; border: 1px solid rgba(104,244,255,.36); border-radius: 50%; color: var(--entourage-blue); content: counter(entourage-step,decimal-leading-zero); font-weight: 800; }
.workflow-step h3 { margin: 0 0 .35rem; color: #fff; font-size: 1.35rem; }
.workflow-step p { margin: 0; color: var(--muted); }

.support-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.support-card { display: grid; align-content: start; gap: .6rem; min-height: 13rem; padding: 1.4rem; border: 1px solid rgba(255,255,255,.09); border-radius: 1rem; color: var(--muted); text-decoration: none; background: rgba(18,14,27,.8); }
.support-card:hover { border-color: rgba(104,244,255,.42); background: rgba(28,21,40,.92); }
.support-card strong { color: #fff; font-size: 1.2rem; }
.support-card span { color: var(--entourage-blue); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

.entourage-notice { margin: 1.5rem 0; padding: 1rem 1.1rem; border-left: 3px solid var(--entourage-blue); border-radius: .3rem .8rem .8rem .3rem; background: rgba(104,244,255,.07); color: #ded6e5; }
.document .button { display: inline-flex; margin-top: 1rem; }

@media (max-width: 760px) {
  .entourage-hero { min-height: auto; }
  .entourage-stage { min-height: auto; margin-top: 2rem; }
  .suite-grid { grid-template-columns: repeat(2,1fr); }
  .suite-grid div:nth-child(3) { border-left: 1px solid rgba(255,255,255,.07); border-top: 1px solid rgba(255,255,255,.07); }
  .suite-grid div:nth-child(4) { border-top: 1px solid rgba(255,255,255,.07); }
  .entourage-feature-grid,.support-grid { grid-template-columns: 1fr; }
  .entourage-feature-wide { grid-column: auto; }
}

@media (max-width: 430px) {
  .entourage-stage-shot { border-radius: .65rem; }
  .workflow-step { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) { html:not([data-aurora-explicit-tier]) .entourage-stage::before { animation: none; } }
html[data-aurora-effects="calm"] .entourage-stage::before { animation: none; }
