/* Homepage-only graphite / blue system. Existing catalogue and builder styles stay intact. */
.homepage-clarity{--clarity-bg:#13161b;--clarity-panel:#1c2129;--clarity-border:#39414f;--clarity-text:#f5f7fb;--clarity-muted:#b8c2d1;--clarity-blue:#9bc6ff;background:var(--clarity-bg);color:var(--clarity-text);background-image:none}
.homepage-clarity::before,.homepage-clarity::after{display:none}
.homepage-clarity main{max-width:1120px;margin:auto;padding:0 28px}
.homepage-clarity header.clarity-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1180px;margin:auto;padding:22px 28px;background:transparent;box-shadow:none;border:0;min-height:90px;flex-wrap:wrap}
.homepage-clarity .brand{color:var(--clarity-text);text-shadow:none;flex-shrink:0}
.homepage-clarity .brand b{color:var(--clarity-text)}
.homepage-clarity .brand small{color:var(--clarity-muted);letter-spacing:0;font-size:12px;text-transform:none;line-height:1.4}
.homepage-clarity .clarity-desktop-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap;max-width:100%;min-width:0}
.homepage-clarity header nav a{padding:12px 13px;color:var(--clarity-muted);white-space:nowrap;font-size:14px;line-height:1.4;text-transform:none;min-height:44px;display:flex;align-items:center}
.homepage-clarity header nav .nav-build{background:#243a59;color:#e5efff;border:1px solid #49688e;border-radius:8px;font-weight:700}
.homepage-clarity header nav a:hover{color:white;background:#28313d}
.clarity-mobile-menu{display:none}
.clarity-home{padding-bottom:35px}
.clarity-hero{max-width:790px;padding:58px 0 26px;margin:0 auto;text-align:center;position:relative}
.homepage-clarity .eyebrow{color:var(--clarity-blue);letter-spacing:.08em;font-size:12px;font-weight:700}
.clarity-hero h1{font-size:clamp(38px,5.1vw,66px);line-height:1.08;letter-spacing:-.045em;margin:18px 0 22px;color:var(--clarity-text);font-style:normal;text-shadow:none}
.homepage-clarity p{color:var(--clarity-muted);font-size:16px;line-height:1.65}
.clarity-hero .clarity-lead{font-size:18px;line-height:1.6;max-width:720px;margin:0 auto 26px;color:#cbd4e1}
.clarity-idea-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;text-align:left;max-width:720px;margin:auto;background:var(--clarity-panel);border:1px solid var(--clarity-border);border-radius:14px;padding:20px;box-shadow:0 8px 24px #0002}
.clarity-idea-form label{grid-column:1/-1;color:var(--clarity-text);font-weight:600;font-size:16px}
.clarity-idea-form textarea{width:100%;min-width:0;min-height:92px;max-height:280px;resize:vertical;font:inherit;line-height:1.5;color:var(--clarity-text);background:#131820;border:1px solid #566277;border-radius:8px;padding:12px;box-sizing:border-box}
.clarity-idea-form textarea::placeholder{color:#a8b4c5;opacity:1}
.homepage-clarity .button{background:#9bc6ff;color:#142238;border:1px solid #9bc6ff;border-radius:8px;box-shadow:none;min-height:48px;padding:12px 18px;font-size:15px;line-height:1.5;font-weight:700;letter-spacing:0;text-transform:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;white-space:normal;transform:none}
.clarity-idea-form .button{align-self:stretch}
.homepage-clarity .button:hover{background:#bbd8ff;filter:none;transform:none;box-shadow:none}
.homepage-clarity .button-secondary{color:#e6efff;background:#263245;border-color:#546981}
.homepage-clarity .button-secondary:hover{background:#354761}
.clarity-idea-form p,.clarity-idea-form noscript{grid-column:1/-1;margin:0;font-size:13px;line-height:1.5}
.clarity-hero .clarity-audience{font-size:13px;line-height:1.6;margin:18px auto 0;max-width:620px}
.clarity-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:10px 0 0;padding:0}
.clarity-card{min-width:0;padding:24px;border:1px solid var(--clarity-border);border-radius:12px;background:var(--clarity-panel);box-shadow:none;position:relative;overflow:hidden}
.clarity-secondary>a{display:flex;align-items:flex-start;gap:18px;color:var(--clarity-text)}
.clarity-card>svg{width:28px;height:28px;flex-shrink:0;color:var(--clarity-blue)}
.homepage-clarity h2{font-size:29px;line-height:1.25;letter-spacing:-.02em;margin:0 0 18px;color:var(--clarity-text);text-shadow:none}
.homepage-clarity h3{font-size:20px;line-height:1.4;margin:12px 0;color:var(--clarity-text);letter-spacing:-.015em}
.clarity-secondary h2{font-size:21px;margin:0 0 8px}
.clarity-card p{margin:10px 0 16px}
.homepage-clarity strong,.homepage-clarity .text-link,.homepage-clarity a{color:var(--clarity-blue)}
.homepage-clarity .text-link{display:inline-flex;gap:8px;align-items:center;min-height:44px;margin:6px 0;font-size:15px;line-height:1.5}
.homepage-clarity a:hover{text-decoration:underline;text-underline-offset:4px}
.homepage-clarity .button:hover{text-decoration:none}
.clarity-section{padding:58px 0 0;margin:0}
.clarity-section>p{max-width:850px}
.clarity-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:28px 0}
.clarity-step{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid #49688e;border-radius:50%;color:var(--clarity-blue);font-weight:700;background:#243a59}
.clarity-steps p{font-size:15px;margin:8px 0}
.clarity-reuse{border:1px solid var(--clarity-border);border-radius:8px;padding:0 18px;background:var(--clarity-panel)}
.homepage-clarity summary{cursor:pointer;min-height:48px;padding:13px 0;line-height:1.5;color:#e1ebfa;font-weight:600;list-style-position:inside}
.homepage-clarity .clarity-muted{font-size:14px;color:var(--clarity-muted)}
.clarity-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.clarity-heading .eyebrow{margin:0 0 12px}
.clarity-resource-grid,.clarity-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}
.clarity-pill{display:inline-block;padding:5px 10px;font-size:13px;border:1px solid #566b85;border-radius:6px;color:#d8e9ff;background:#253346}
.clarity-disclosure{font-size:13px!important;border-top:1px solid var(--clarity-border);padding-top:12px}
.clarity-game-grid img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
.clarity-game-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.clarity-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}
.clarity-guide-grid .clarity-card{padding:20px}
.clarity-guide-grid h3{margin:0 0 12px;font-size:18px}
.clarity-guide-grid p{font-size:15px}
.clarity-support{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}
.clarity-support>div:first-child{max-width:580px}
.clarity-more{margin-top:35px;padding:0 20px;border:1px solid var(--clarity-border);border-radius:10px}
.clarity-category-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-bottom:20px}
.clarity-category-links>a{padding:12px;border:1px solid var(--clarity-border);border-radius:8px;font-size:15px;background:var(--clarity-panel);min-height:44px;display:flex;align-items:center}
.homepage-clarity .genre-card{aspect-ratio:auto}
.homepage-clarity .quick-game-reminder{padding:58px 0 0;background:none;border:0;margin:0;box-shadow:none}
.homepage-clarity .quick-game-card{background:var(--clarity-panel);border:1px solid var(--clarity-border);box-shadow:none;border-radius:10px;color:var(--clarity-text)}
.homepage-clarity .quick-game-card p{color:var(--clarity-muted)}
.homepage-clarity .quick-game-card small{color:var(--clarity-muted)}
.homepage-clarity .quick-game-card img{aspect-ratio:16/9;object-fit:cover}
.homepage-clarity .quick-game-grid-compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:16px}
.homepage-clarity .home-row-hint{display:none}
.homepage-clarity .cost-toggle{background:#1c2129;border-color:var(--clarity-border)}
.homepage-clarity .cost-toggle a{min-height:44px;display:flex;align-items:center;padding:8px 14px}
.homepage-clarity .cost-toggle a[aria-current]{background:#9bc6ff;color:#142238}
.homepage-clarity footer{background:var(--clarity-bg);border-color:var(--clarity-border);box-shadow:none;color:var(--clarity-muted);padding:32px 28px}
.homepage-clarity footer a{color:var(--clarity-blue);min-height:44px;display:inline-flex;align-items:center}
.homepage-clarity :focus-visible{outline:3px solid #c5ddff;outline-offset:4px}
.homepage-clarity .analytics-consent{position:relative;margin:22px auto;inset:auto;max-width:1064px;background:#202631;color:#f5f7fb;border:1px solid #566277;box-shadow:none;z-index:auto;width:auto}
.homepage-clarity .analytics-manage{position:static;display:block;margin:12px auto}
.retained-game-idea textarea{width:100%;min-height:88px;box-sizing:border-box}
@media(max-width:960px){.homepage-clarity header nav a{padding:12px 8px;font-size:13px}.homepage-clarity .brand small{max-width:175px}.clarity-hero{padding-top:32px}.clarity-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.homepage-clarity main{padding:0 20px}.homepage-clarity header.clarity-header{padding:16px 20px;min-height:72px;align-items:flex-start;flex-wrap:wrap}.homepage-clarity .clarity-desktop-nav{display:none}.clarity-mobile-menu{display:block;position:relative;margin-left:auto}.clarity-mobile-menu summary{min-width:68px;text-align:center;border:1px solid #566277;border-radius:8px;padding:10px;min-height:44px}.clarity-mobile-menu[open]{width:100%}.clarity-mobile-menu nav{display:flex!important;flex-direction:column;align-items:stretch;gap:6px;padding-top:12px}.homepage-clarity .clarity-mobile-menu nav a{padding:12px;font-size:15px}.clarity-hero{padding:28px 0 20px}.clarity-hero h1{margin:14px 0 18px}.clarity-hero .clarity-lead{font-size:16px;line-height:1.55;margin-bottom:22px}.clarity-idea-form{grid-template-columns:1fr;padding:16px;gap:10px}.clarity-idea-form .button{width:100%;min-height:48px}.clarity-idea-form textarea{min-height:88px}.clarity-secondary{gap:12px;margin-top:8px}.clarity-secondary>a{padding:16px;display:block}.clarity-secondary>a>svg{margin-bottom:12px;width:24px;height:24px}.clarity-secondary h2{font-size:18px}.clarity-secondary p{font-size:14px;line-height:1.6}.clarity-secondary strong{font-size:14px}.clarity-section{padding-top:42px}.homepage-clarity h2{font-size:25px}.clarity-steps{gap:24px;grid-template-columns:1fr;margin:24px 0}.clarity-steps h3{display:inline;margin-left:12px}.clarity-steps p{margin:12px 0 0}.clarity-category-links{grid-template-columns:repeat(2,minmax(0,1fr))}.clarity-resource-grid,.clarity-game-grid{grid-template-columns:1fr}.clarity-guide-grid{grid-template-columns:1fr}.homepage-clarity .quick-game-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.homepage-clarity .quick-game-card div{padding:14px}.homepage-clarity .quick-game-card h3{font-size:17px}.homepage-clarity .quick-game-card p{font-size:14px}.homepage-clarity .quick-game-card strong{font-size:14px}.clarity-support{align-items:flex-start}.homepage-clarity footer{padding:24px 20px}.homepage-clarity .analytics-consent{margin:20px;max-width:calc(100% - 40px);box-sizing:border-box}}
@media(max-width:359px){.homepage-clarity main{padding:0 16px}.homepage-clarity header.clarity-header{padding:14px 16px}.clarity-hero h1{font-size:36px}.clarity-hero{padding-top:22px}.clarity-secondary{grid-template-columns:1fr}.clarity-secondary>a{display:flex;gap:14px}.clarity-secondary>a>svg{margin:0}.homepage-clarity .quick-game-grid-compact{grid-template-columns:1fr}.clarity-category-links{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.homepage-clarity *,.homepage-clarity *::before,.homepage-clarity *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.homepage-clarity .reimagine-home{--rim:var(--clarity-blue);--rim-line:var(--clarity-border)}
.homepage-clarity .reimagine-banner,.homepage-clarity .reimagine-card,.homepage-clarity .concept-card{background:var(--clarity-panel);box-shadow:none;border-color:var(--clarity-border)}
.homepage-clarity .reimagine-home .reuse-message,.homepage-clarity .reimagine-card strong{color:var(--clarity-blue)}
.homepage-clarity .reimagine-home img,.homepage-clarity .home-ideas img{max-width:100%;height:auto}

.homepage-clarity .reimagine-banner h2{font-size:24px;line-height:1.25;margin:0 0 10px}
.homepage-clarity .reimagine-banner{padding:16px;gap:16px}

.homepage-clarity .reimagine-banner .reimagine-filters{margin:0 0 12px}
@media(max-width:600px){.homepage-clarity .reimagine-home{padding-inline:0}.homepage-clarity .reimagine-intro p{font-size:15px;line-height:1.5;margin:12px 0 0}.homepage-clarity .reimagine-intro .reuse-message{font-size:14px}.homepage-clarity .reimagine-banner .text-link{margin:0}}

/* One compact first-screen chooser; native links keep the full page reflowable. */
.homepage-clarity .forge1-entry{padding:20px;border:1px solid #647c99;border-radius:18px;background:linear-gradient(145deg,#1b2738,#18212e);box-shadow:0 8px 28px #0002;margin:18px 0 16px}
.forge1-entry-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.homepage-clarity .forge1-entry-heading h2{margin:0;font-size:28px;line-height:1.2}
.forge1-step-note{font-size:12px;line-height:1.4;color:#c7dcf5;border:1px solid #546c88;border-radius:20px;padding:5px 9px}
.homepage-clarity .forge1-genre-intro{margin:8px 0 16px;font-size:15px;line-height:1.4}
.homepage-clarity .forge1-genre-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.homepage-clarity .forge1-genre-card .type-art,.homepage-clarity .forge1-genre-card .choice-art{aspect-ratio:4/3}
.forge1-entry-links{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}
.homepage-clarity .forge1-entry-links .text-link{display:inline-flex;align-items:center;min-height:44px;margin:0;font-size:14px;padding:6px 0}
.homepage-clarity .forge1-entry-note{font-size:12px;line-height:1.4;margin:0;color:#c6d5e7}
.homepage-clarity .forge1-how{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #54677e}
.homepage-clarity .forge1-how h2{font-size:17px;line-height:1.3;margin:0 0 8px}
.homepage-clarity .forge1-how .clarity-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;list-style:none}
.homepage-clarity .forge1-how li{display:flex;align-items:flex-start;gap:9px;min-width:0}
.homepage-clarity .forge1-how li:nth-child(1){--forge-step-accent:#86d6ff}
.homepage-clarity .forge1-how li:nth-child(2){--forge-step-accent:#ffd27d}
.homepage-clarity .forge1-how li:nth-child(3){--forge-step-accent:#8ce0ae}
.homepage-clarity .forge1-how .clarity-step{width:32px;height:32px;min-width:32px;font-size:14px;display:grid;place-items:center;color:#11202d;background:var(--forge-step-accent);border-color:var(--forge-step-accent)}
.homepage-clarity .forge1-how h3{font-size:18px;line-height:1.3;margin:0;display:block;color:var(--forge-step-accent)}
.homepage-clarity .forge1-how p{font-size:14px;line-height:1.4;margin:4px 0 0}
.homepage-clarity .forge1-genre-card{position:relative}
.forge1-choice-indicator{display:block;flex:0 0 20px;width:20px;height:20px;border:1.5px solid #b1bac8;border-radius:50%;background:#252b35;box-sizing:border-box}
.forge1-genre-card:is(:hover,:focus-visible) .forge1-choice-indicator{border-color:#b4dcff;box-shadow:0 0 0 3px #7abaff26}
.homepage-clarity .clarity-hero{padding-top:16px}
.homepage-clarity .clarity-hero h1{font-size:clamp(38px,4.2vw,54px)}
.homepage-clarity .forge1-genre-card .type-art,.homepage-clarity .forge1-genre-card .choice-art{aspect-ratio:16/10}
@media(max-width:767px){
 .homepage-clarity .clarity-hero{padding:12px 0 16px}
 .homepage-clarity .clarity-hero>.eyebrow{font-size:10px;line-height:1.4;margin:0 0 8px;letter-spacing:.05em}
 .homepage-clarity .clarity-hero h1{font-size:clamp(22px,6vw,28px);line-height:1.15;margin:8px auto 10px;max-width:none}
 .homepage-clarity .clarity-hero .clarity-lead{font-size:14px;line-height:1.4;margin:0 auto 10px;max-width:none}
 .homepage-clarity .forge1-entry{padding:10px;border-radius:14px;margin:14px 0 10px}
 .homepage-clarity .forge1-entry-heading h2{font-size:23px}
 .forge1-entry-heading{gap:6px}
 .forge1-step-note{font-size:11px;padding:4px 7px}
 .homepage-clarity .forge1-genre-intro{font-size:13px;line-height:1.4;margin:5px 0 6px}
 .homepage-clarity .forge1-genre-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
 .homepage-clarity .forge1-genre-card{border-radius:9px}
 .homepage-clarity .forge1-genre-card .type-art,.homepage-clarity .forge1-genre-card .choice-art{aspect-ratio:16/10}
 .homepage-clarity .forge1-genre-label{justify-content:center;min-height:34px;padding:4px 2px;gap:0;text-align:center}
 .homepage-clarity .forge1-genre-card h3{font-size:.75rem;line-height:1.25;letter-spacing:-.02em;margin:0}
 .homepage-clarity .forge1-choice-indicator{position:absolute;right:5px;top:5px;width:16px;height:16px;min-width:16px;box-shadow:0 0 0 2px #101d2acc}
 .homepage-clarity .forge1-entry-links .text-link{font-size:12px}
 .homepage-clarity .forge1-entry-links{margin-top:2px}
 .homepage-clarity .forge1-entry-note{font-size:11px;line-height:1.4}
 .homepage-clarity .forge1-optional-idea{margin:8px 0}
 .homepage-clarity .forge1-optional-idea summary{padding:10px 0;min-height:44px}
 .homepage-clarity .forge1-how{padding-bottom:8px;margin-bottom:8px}
 .homepage-clarity .forge1-how h2{font-size:14px;margin-bottom:6px}
 .homepage-clarity .forge1-how .clarity-steps{gap:8px}
 .homepage-clarity .forge1-how li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:3px 5px}
 .homepage-clarity .forge1-how li>div{display:contents}
 .homepage-clarity .forge1-how .clarity-step{width:24px;height:24px;min-width:24px;font-size:12px;margin:0}
 .homepage-clarity .forge1-how h3{font-size:14px;margin:0;align-self:center}
 .homepage-clarity .forge1-how p{grid-column:1/-1;font-size:13px;line-height:1.35;margin:0}
}
@media(max-width:359px){
 .homepage-clarity main{padding-inline:12px}
 .homepage-clarity .forge1-entry{padding:10px}
 .homepage-clarity .forge1-genre-grid{gap:6px}
 .homepage-clarity .forge1-entry-heading h2{font-size:21px}
 .homepage-clarity .clarity-hero h1{font-size:22px}
 .homepage-clarity .clarity-hero .clarity-lead{font-size:14px}
}

.learn-intro h1{margin:0 0 .45rem;font-size:clamp(2rem,4.8vw,3.25rem);line-height:1.12}
.learn-intro .route-chips{margin-bottom:0}

.home-quick-games{margin:18px 0 16px;text-align:left}
.home-quick-games h2{font-size:18px;margin:0 0 8px}
.home-quick-games ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;list-style:none;padding:0;margin:0}
.home-quick-games li{display:flex;flex-direction:column;min-width:0;border:1px solid #415a72;border-radius:10px;background:#132131;overflow:hidden}
.home-quick-games .home-quick-play{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;flex:1;text-decoration:none;padding:6px 8px;color:var(--clarity-text);font-size:13px}
.home-quick-games img{grid-column:1/-1;display:block;width:100%;height:64px;object-fit:cover;border-radius:5px}
.home-quick-games .home-quick-prompt{color:var(--clarity-blue)}
.home-quick-games .home-quick-play span{color:#8ce0ae;border:1px solid currentColor;border-radius:6px;padding:2px 5px;font-weight:700;white-space:nowrap}
.home-quick-games .home-quick-prompt{border-top:1px solid #415a72;display:flex;align-items:center;justify-content:center;min-height:44px;padding:4px 8px;font-size:13px;text-decoration:none}
.home-quick-games a:hover{background:#203a52}
.home-quick-games a:focus-visible{outline:2px solid #9bc6ff;outline-offset:-3px}
@media(max-width:640px){.home-quick-games ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:359px){.home-quick-games .home-quick-play{gap:4px;padding-inline:6px}.home-quick-games .home-quick-play span{font-size:12px;padding-inline:3px}}
