.home-page { overflow: hidden; }
.home-section { padding-block: var(--space-9); }
.home-breadcrumb { display:flex; flex-wrap:wrap; gap:var(--space-2); font-size:var(--text-xs); }
.home-hero { padding-block: var(--space-7) var(--space-9); background:linear-gradient(135deg,#f7f9fc 0%,#eee8f8 100%); }
.home-hero__grid { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:var(--space-7); align-items:center; }
.home-hero__copy { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); }
.home-hero__copy h1,.home-hero__copy p { margin:0; }
.home-hero__lead { max-width:58ch; font-size:var(--text-lead); line-height:1.4; }
.home-hero__support { max-width:55ch; border-inline-start:3px solid var(--color-electric-turquoise); padding-inline-start:var(--space-4); }
.home-hero__actions { display:flex; flex-wrap:wrap; gap:var(--space-3); }
.home-hero__topics { max-width:58ch; font-size:var(--text-xs); font-weight:700; letter-spacing:.06em; line-height:1.6; }
.home-hero__media { position:relative; min-width:0; margin:0; overflow:hidden; border:1px solid var(--color-line-silver); border-radius:var(--radius-panel); background:var(--color-royal-purple); }
.home-hero__media img { width:100%; min-width:0; aspect-ratio:16/10; object-fit:cover; object-position:right center; }
.home-hero__impact { position:absolute; inset:15% -8% auto auto; width:55%; height:32%; border-top:3px solid var(--color-flame-orange); transform:rotate(-18deg); pointer-events:none; }
.home-section__intro { min-width:0; }
.home-section__intro h2,.home-section__intro p { margin:0; }
.home-section__intro { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); }
.home-ring__intro { max-width:62ch; }
.home-ring__cards,.home-discovery__groups,.home-teams__cards,.home-beginners__cards,.home-next__cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-7); }
.home-path-card { min-width:0; min-height:100%; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); border:1px solid var(--color-border); border-top:4px solid var(--color-royal-purple); border-radius:var(--radius-card); background:var(--color-paper-white); padding:var(--space-5); color:var(--color-text); text-decoration:none; transition:transform var(--transition-base),box-shadow var(--transition-base); }
.home-path-card h3,.home-path-card p { margin:0; }.home-path-card > span:last-child { margin-top:auto; color:var(--color-link); font-weight:700; }
.home-path-card--combat { border-top-color:var(--color-electric-turquoise); }.home-path-card--progress { border-top-color:var(--color-flame-orange); }
.home-path-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-panel); color:var(--color-text); }
.home-discovery { background:var(--color-royal-purple); color:var(--color-ice-white); }.home-discovery h2,.home-discovery h3 { color:var(--color-ice-white); }.home-discovery .eyebrow { color:var(--color-ice-white); }
.home-discovery__top { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:var(--space-7); align-items:center; }.home-discovery__copy { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); }.home-discovery__copy h2,.home-discovery__copy p { margin:0; }.home-discovery__copy p { max-width:60ch; }.home-discovery__media { min-width:0; margin:0; border:1px solid rgba(247,249,252,.55); border-radius:var(--radius-card); overflow:hidden; }.home-discovery__media img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center; }
.home-discovery__groups { grid-template-columns:repeat(4,minmax(0,1fr)); }.home-discovery__groups article { min-width:0; border:1px solid rgba(247,249,252,.5); border-radius:var(--radius-card); padding:var(--space-4); background:rgba(255,255,255,.08); }.home-discovery__groups h3,.home-discovery__groups p { margin:0; }.home-discovery__groups article { display:flex; flex-direction:column; gap:var(--space-3); }
.home-discovery__mechanic { display:grid; grid-template-columns:minmax(0,auto) minmax(0,1fr); gap:var(--space-4); align-items:start; margin-top:var(--space-5); border-radius:var(--radius-card); background:var(--color-paper-white); color:var(--color-text); padding:var(--space-5); }.home-discovery__mechanic h3,.home-discovery__mechanic p { color:var(--color-text); margin:0; }.home-discovery__mechanic div { min-width:0; display:flex; flex-direction:column; gap:var(--space-3); }
.home-discovery__cta { display:flex; min-width:0; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-4); margin-top:var(--space-5); border-top:1px solid rgba(247,249,252,.5); padding-top:var(--space-5); }.home-discovery__cta p { max-width:50ch; margin:0; }
.home-combat__intro { max-width:64ch; }.home-combat__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-7); }.home-mechanic-card { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-3); border:1px solid var(--color-border); border-radius:var(--radius-card); background:var(--color-paper-white); padding:var(--space-5); }.home-mechanic-card h3,.home-mechanic-card p { margin:0; }.home-step { color:var(--color-royal-purple); font-family:var(--font-heading); font-size:2.5rem; font-weight:800; line-height:1; }.home-mechanic-card--turquoise { border-inline-start:4px solid var(--color-electric-turquoise); }.home-mechanic-card--orange { border-inline-start:4px solid var(--color-flame-orange); }.home-mechanic-card--dark { background:var(--color-graphite); color:var(--color-ice-white); }.home-mechanic-card--dark h3,.home-mechanic-card--dark .home-step { color:var(--color-ice-white); }
.home-teams { background:var(--color-soft-lavender); }.home-teams__top { display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:var(--space-6); align-items:start; }.home-teams__top > * { min-width:0; }.home-teams__top > div { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); }.home-teams__top h2,.home-teams__top p { margin:0; }.home-teams__top > div p { max-width:54ch; }.home-teams__top aside { display:flex; flex-direction:column; gap:var(--space-4); border:1px solid var(--color-border); border-radius:var(--radius-card); background:var(--color-paper-white); padding:var(--space-5); }.home-teams__top aside p { margin:0; }.home-teams__cards article { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-3); border:1px solid var(--color-border); border-radius:var(--radius-card); background:var(--color-paper-white); padding:var(--space-5); }.home-teams__cards h3,.home-teams__cards p { margin:0; }
.home-progress__grid { display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:var(--space-7); align-items:start; }.home-progress__intro { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); }.home-progress__intro h2,.home-progress__intro p { margin:0; }.home-progress__intro p { max-width:60ch; }.home-progress__steps { min-width:0; display:flex; flex-direction:column; gap:var(--space-4); }.home-progress__steps article { display:grid; grid-template-columns:3rem minmax(0,1fr); gap:var(--space-4); border-inline-start:2px solid var(--color-line-silver); padding-inline-start:var(--space-4); }.home-progress__steps article > span { display:grid; place-items:center; width:3rem; height:3rem; border-radius:50%; background:var(--color-soft-lavender); color:var(--color-royal-purple); font-family:var(--font-heading); font-weight:800; }.home-progress__steps article > div { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-3); }.home-progress__steps h3,.home-progress__steps p { margin:0; }
.home-modes { background:var(--color-paper-white); }.home-modes__intro { max-width:58ch; }.home-modes__primary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-7); }.home-modes__primary > * { min-width:0; }.home-quest-card { overflow:hidden; border:1px solid var(--color-border); border-radius:var(--radius-card); }.home-quest-card img { width:100%; aspect-ratio:16/10; object-fit:cover; object-position:right center; }.home-quest-card > div { display:flex; flex-direction:column; gap:var(--space-3); padding:var(--space-5); }.home-quest-card h3,.home-quest-card p { margin:0; }.home-alliance-card { display:flex; flex-direction:column; justify-content:center; gap:var(--space-4); border:1px solid rgba(247,249,252,.5); border-radius:var(--radius-card); background:var(--color-royal-purple); color:var(--color-ice-white); padding:var(--space-6); }.home-alliance-card h3,.home-alliance-card p { color:var(--color-ice-white); margin:0; }.home-modes__secondary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-5); }.home-modes__secondary > * { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-3); border:1px solid var(--color-border); border-radius:var(--radius-card); padding:var(--space-5); }.home-modes__secondary h3,.home-modes__secondary p { margin:0; }.home-modes__secondary aside { background:var(--color-soft-lavender); }.home-modes__secondary aside .button { margin-top:auto; }
.home-beginners__intro { max-width:58ch; }.home-beginners__cards article { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-3); border:1px solid var(--color-border); border-radius:var(--radius-card); background:var(--color-paper-white); padding:var(--space-5); }.home-beginners__cards article > span:first-child { color:var(--color-flame-orange); font-family:var(--font-heading); font-size:2.5rem; font-weight:800; line-height:1; }.home-beginners__cards h3,.home-beginners__cards p { margin:0; }
.home-trust { padding-bottom:0; }.home-trust__intro { max-width:60ch; }.home-trust__panels { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-7); }.home-trust__panels article { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); border:1px solid var(--color-border); border-radius:var(--radius-card); background:var(--color-paper-white); padding:var(--space-5); }.home-trust__panels article:last-child { background:var(--color-soft-lavender); }.home-trust__panels h3,.home-trust__panels p { margin:0; }.home-disclaimer { margin-top:var(--space-7); background:var(--color-graphite); color:var(--color-ice-white); }.home-disclaimer .container { padding-block:var(--space-5); }.home-disclaimer p { max-width:60ch; margin:0; }
.home-next { background:var(--color-soft-lavender); }.home-next__intro { max-width:58ch; }.home-next__cards article { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); border-radius:var(--radius-card); padding:var(--space-5); }.home-next__cards h3,.home-next__cards p { margin:0; }.home-next__cards .button { margin-top:auto; }.home-next__champions { background:var(--color-royal-purple); color:var(--color-ice-white); }.home-next__champions h3 { color:var(--color-ice-white); }.home-next__combat { background:var(--color-graphite); color:var(--color-ice-white); border-top:4px solid var(--color-electric-turquoise); }.home-next__combat h3 { color:var(--color-ice-white); }.home-next__teams { border:1px solid var(--color-border); background:var(--color-paper-white); border-top:4px solid var(--color-flame-orange); }
@media (max-width:68.75rem) { .home-hero__grid { grid-template-columns:minmax(0,8fr) minmax(0,4fr); gap:var(--space-5); }.home-hero__media img { aspect-ratio:4/5; }.home-discovery__groups { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:60rem) { .home-ring__cards,.home-teams__cards,.home-modes__secondary,.home-next__cards { grid-template-columns:repeat(2,minmax(0,1fr)); }.home-ring__cards > :last-child,.home-teams__cards > :last-child,.home-modes__secondary > :last-child,.home-next__cards > :last-child { grid-column:1 / -1; }.home-teams__top,.home-progress__grid { grid-template-columns:1fr; }.home-teams__top > *, .home-progress__grid > * { width:100%; }.home-modes__primary { grid-template-columns:1fr; } }
@media (max-width:53.75rem) { .home-combat__grid,.home-trust__panels { grid-template-columns:1fr; } }
@media (max-width:51.25rem) { .home-discovery__top { grid-template-columns:1fr; }.home-discovery__media { width:100%; }.home-discovery__media img { aspect-ratio:4/5; }.home-discovery__groups { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:47.99rem) { .home-section { padding-block:3.5rem; }.home-hero { padding-block:var(--space-5) 3.5rem; }.home-hero__grid { grid-template-columns:1fr; gap:var(--space-5); }.home-hero__copy { width:100%; }.home-hero__copy h1 { font-size:2.5rem; line-height:1.05; }.home-hero__lead { font-size:1.125rem; }.home-hero__actions { width:100%; flex-direction:column; }.home-hero__actions .button { width:100%; }.home-hero__media img { aspect-ratio:16/11; object-position:center; }.home-ring__cards,.home-teams__cards,.home-beginners__cards,.home-next__cards,.home-modes__secondary,.home-discovery__groups { grid-template-columns:1fr; margin-top:var(--space-5); }.home-ring__cards > :last-child,.home-teams__cards > :last-child,.home-modes__secondary > :last-child,.home-next__cards > :last-child { grid-column:auto; }.home-discovery__top { gap:var(--space-5); }.home-discovery__mechanic { grid-template-columns:1fr; }.home-discovery__cta { align-items:stretch; }.home-discovery__cta .button { width:100%; }.home-combat__grid,.home-trust__panels { margin-top:var(--space-5); }.home-progress__steps article { grid-template-columns:1fr; border-inline-start:0; border-top:2px solid var(--color-line-silver); padding-inline-start:0; padding-top:var(--space-4); }.home-progress__steps article > span { width:2.5rem; height:2.5rem; }.home-modes__primary { margin-top:var(--space-5); }.home-next__cards .button { width:100%; }.home-path-card,.home-teams__cards article,.home-beginners__cards article,.home-modes__secondary > *, .home-next__cards article { min-height:auto; } }
@media (prefers-reduced-motion: reduce) { .home-path-card { transition:none; }.home-path-card:hover { transform:none; } }