/* Existing homepage customization consolidated into one shared-theme group. */
.customization-group { border-block:1px solid var(--border-color); background:var(--bg-primary); }
.customization-heading,.agent-gallery,.customization-finish { max-width:1200px; margin:auto; padding:56px 24px; text-align:center; }
.customization-heading h2 { font-size:clamp(2rem,4vw,3.3rem); margin:12px 0; }
.customization-heading p,.agent-gallery-note,.customization-finish p { color:var(--text-secondary); line-height:1.6; }
.customization-heading nav { display:flex; flex-wrap:wrap; justify-content:center; gap:24px; margin-top:28px; }
.customization-group section { scroll-margin-top:85px; }
.customization-group .commanders-section { padding-block:40px; }
.customization-group .source-pack-home { margin:0 auto; padding-block:40px; grid-template-columns:minmax(0,1fr); text-align:center; }
.source-pack-home .source-pack-home-copy { width:100%; max-width:900px; margin-inline:auto; }
.source-pack-home .source-pack-home-copy > .section-title { text-align:center; }
.source-pack-home .source-pack-home-copy > p { margin-inline:auto; }
.source-pack-home .source-pack-home-actions { justify-content:center; }
.team-home .team-launch-badge { display:inline-flex; align-items:center; justify-content:center; padding:10px 20px; margin-bottom:18px; border:1px solid #ff8b99; border-radius:999px; background:#fa667b; color:#2b0710; font-weight:800; font-size:.8rem; line-height:1.4; letter-spacing:.12em; box-shadow:0 0 24px rgba(250,102,123,.14); }
.agent-pack-controls { display:grid; grid-template-columns:repeat(2,minmax(0,150px)); align-items:center; justify-content:center; gap:12px 20px; margin:24px 0 18px; }
.agent-pack-controls #agent-pack-label { grid-column:1 / -1; margin:0; line-height:1.5; text-align:center; }
.agent-pack-controls .cta-button { width:100%; min-width:0; margin:0; }
.agent-gallery-card { font:inherit; color:var(--text-primary); background:var(--bg-secondary); border:1px solid var(--border-color); border-radius:14px; cursor:pointer; }
.agent-gallery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.agent-gallery-card { padding:16px; display:flex; flex-direction:column; align-items:center; gap:8px; transition:transform .15s; }
.agent-gallery-card:hover { transform:translateY(-3px); border-color:var(--text-primary); }
.agent-gallery-card img { width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:10px; }
.agent-gallery-card strong { font-size:1.15rem; }.agent-gallery-card span { color:var(--text-secondary); min-height:2.5em; }.agent-gallery-card small { text-decoration:underline; }
.agent-gallery button:focus-visible { outline:2px solid var(--text-primary); outline-offset:4px; }
#gallery-agent-dialog { background:var(--bg-secondary); color:var(--text-primary); border:1px solid var(--border-color); border-radius:20px; max-width:480px; width:calc(100% - 40px); padding:28px; box-sizing:border-box; text-align:center; max-height:90svh; overflow:auto; }
#gallery-agent-dialog::backdrop { background:rgba(0,0,0,.8); }#gallery-agent-dialog img { display:block; width:180px; height:180px; object-fit:cover; border-radius:14px; margin:20px auto; }#gallery-agent-dialog p { line-height:1.6; } .gallery-close { display:block; margin-left:auto; }
@media(max-width:700px){.agent-gallery-grid {grid-template-columns:repeat(2,minmax(0,1fr));}.agent-gallery {padding:36px 16px;}.agent-gallery-card {padding:10px;}.agent-pack-controls {gap:12px;}.agent-pack-controls p {font-size:.9rem;}.customization-heading nav {gap:16px;} }

.agent-gallery .ui-style-choice small { display:block; padding:2px 3px 7px; color:var(--text-secondary); font-size:.72rem; }
.agent-gallery .ui-style-choice[aria-pressed="true"] { border-color:var(--text-primary); }
.customization-heading nav a, .customization-heading nav a:visited { color:var(--text-primary) !important; text-decoration-color:var(--border-color); text-underline-offset:5px; } .customization-heading nav a:hover { text-decoration-color:var(--text-primary); }
.agent-gallery #ui-preview-link { display:block; margin:28px auto 0; } .agent-gallery #ui-preview { display:block; width:100%; height:auto; border:1px solid var(--border-color); border-radius:16px; }
.agent-gallery-card { min-height:100px; justify-content:center; padding:18px 12px; gap:6px; } .agent-gallery-card span { min-height:0; font-size:.9rem; line-height:1.4; }
.customization-group .source-pack-home { margin-bottom:56px; }
.source-pack-home .source-pack-developer-note { grid-column:1 / -1; margin:0; color:var(--text-secondary); font-size:.95rem; line-height:1.6; }
@media(max-width:700px) { .customization-group .source-pack-home { margin-bottom:36px; } }
#commander-choice > .personality-choice-title { max-width:1100px; margin:28px auto 24px; padding:0 24px; font-size:clamp(1.5rem,3vw,2.5rem); line-height:1.2; text-align:center; } #commander-choice .commanders-band > .section-title { font-size:clamp(2rem,4vw,3.3rem); }
/* Keep the pack scroller clear of the cards and descriptive text. */
.agent-gallery .ui-style-strip { padding-top:8px; padding-bottom:24px; margin-bottom:24px; scrollbar-color:#737373 #242424; scrollbar-width:auto; }
.agent-gallery .ui-style-strip::-webkit-scrollbar { height:10px; }
.agent-gallery .ui-style-strip::-webkit-scrollbar-track { background:#242424; border-radius:999px; }
.agent-gallery .ui-style-strip::-webkit-scrollbar-thumb { background:#737373; border:2px solid #242424; border-radius:999px; }
.agent-gallery .ui-style-strip::-webkit-scrollbar-thumb:hover { background:#a3a3a3; }
.agent-gallery .ui-style-strip::-webkit-scrollbar-button { display:none; width:0; height:0; }
.agent-gallery .agent-gallery-note { margin:0 0 22px; }
#gallery-agent-dialog { position:fixed; inset:0; margin:auto; height:fit-content; max-height:calc(100dvh - 40px); }
.plugins-feature-grid { grid-template-columns:minmax(0,800px); justify-content:center; }
#download .com-dual-columns { max-width:1280px; margin-top:32px; gap:24px; }
@media(max-width:768px) { #download .com-dual-columns { max-width:100%; margin-top:24px; gap:18px; } }

/* Provider freedom is a primary product benefit, with equal space for open models. */
.provider-freedom { padding:72px 24px; background:var(--bg-primary); text-align:center; border-top:1px solid var(--border-color); }
.provider-freedom-heading { max-width:980px; margin:0 auto 34px; }
.provider-freedom .section-title { font-size:clamp(2rem,4.5vw,4rem); line-height:1.1; margin:16px 0 22px; }
.provider-freedom-options { max-width:1200px; margin:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; text-align:left; }
.provider-freedom-card { padding:32px; border:1px solid var(--border-color); border-radius:20px; background:linear-gradient(145deg,var(--bg-secondary),var(--bg-primary)); }
.provider-freedom-number { font-size:.75rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--text-secondary); }
.provider-freedom-card h3 { font-size:clamp(1.4rem,2vw,1.9rem); line-height:1.2; margin:16px 0; }
.provider-freedom-card p { color:var(--text-secondary); line-height:1.7; }
.provider-freedom-tags { list-style:none; padding:0; margin:24px 0 0; display:flex; flex-wrap:wrap; gap:8px; }
.provider-freedom-tags li { border:1px solid var(--border-color); border-radius:999px; padding:7px 12px; font-size:.85rem; color:var(--text-primary); }
.provider-freedom-takeaway { font-size:clamp(1.05rem,2vw,1.4rem); font-weight:600; margin:32px 0 22px; }
.provider-freedom-note { max-width:950px; margin:24px auto 0; color:var(--text-secondary); font-size:.8rem; line-height:1.6; }
@media(max-width:700px) { .provider-freedom { padding:44px 16px; }.provider-freedom-options { grid-template-columns:1fr; gap:16px; }.provider-freedom-card { padding:24px; } }

.provider-freedom-preview { display:block; margin-top:24px; border:1px solid var(--border-color); border-radius:12px; overflow:hidden; cursor:zoom-in; }
.provider-freedom-preview img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }
.provider-freedom-card .provider-freedom-caption { font-size:.8rem; line-height:1.5; margin-bottom:0; }
.provider-open-models { max-width:1000px; margin:32px auto 26px; }
.provider-open-models strong { font-size:clamp(1.3rem,2.4vw,1.9rem); }
.provider-open-models p { color:var(--text-secondary); line-height:1.7; margin:14px 0 0; }

.provider-freedom-number { display:block; }.provider-freedom-number strong { display:block; font-size:clamp(2.6rem,5vw,4.2rem); line-height:1; letter-spacing:-.04em; color:var(--text-primary); margin-bottom:10px; }
.team-home { padding:64px 24px; text-align:center; background:var(--bg-primary); border-top:1px solid var(--border-color); }
.team-home > .section-subtitle { max-width:950px; margin:20px auto 28px; }.team-home-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; max-width:1200px; margin:0 auto 30px; text-align:left; }
.team-home-grid article { padding:24px; background:var(--bg-secondary); border:1px solid var(--border-color); border-radius:16px; }.team-home-grid h3 { margin:0 0 12px; }.team-home-grid p,.team-home-note { color:var(--text-secondary); line-height:1.65; }.team-home-note { max-width:950px; margin:22px auto 0; font-size:.85rem; }
@media(max-width:700px){.team-home {padding:44px 16px;}.team-home > .section-title {font-size:clamp(1.9rem,8vw,2.25rem);line-height:1.2;max-width:18ch;margin-left:auto;margin-right:auto;}.team-home-grid {grid-template-columns:1fr;gap:14px;} }
