/* ConvoCircle Core 2.1.2: homepage section layouts ONLY.
 * Original cc-core.css and its design tokens stay untouched. */
#convocircle-root .cc-home-service-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
#convocircle-root .cc-home-service-grid a {color:var(--cc-text);text-decoration:none;display:flex;flex-direction:column;min-width:0;}
#convocircle-root .cc-home-service-grid h3 {font-size:24px;line-height:1.2;margin:24px 0 16px;}
#convocircle-root .cc-home-service-grid p {font-size:16px;line-height:1.65;color:var(--cc-muted);}
#convocircle-root .cc-home-link {margin-top:auto;padding-top:20px;font-size:14px;font-weight:700;}
#convocircle-root .cc-service-icon {width:40px;height:40px;color:var(--cc-text);background:var(--cc-yellow);padding:8px;border-radius:10px;box-sizing:border-box;}
#convocircle-root .cc-home-services-v212 h2,#convocircle-root .cc-home-video-section h2 {color:var(--cc-text);display:block;}
#convocircle-root .cc-home-video-option:focus-visible,#convocircle-root .cc-home-service-grid a:focus-visible {outline:3px solid var(--cc-yellow);outline-offset:4px;}
@media(max-width:850px){#convocircle-root .cc-home-service-grid{grid-template-columns:1fr;}}
#convocircle-root .cc-home-services-v212 { padding-top:58px; padding-bottom:58px; }
#convocircle-root .cc-home-services-v212 .cc-head { margin-bottom:26px; align-items:end; }
#convocircle-root .cc-home-services-lead { margin:14px 0 0; max-width:65ch; color:var(--cc-muted); font-size:17px; line-height:1.65; }
#convocircle-root .cc-home-services-v212 .cc-home-service-grid > a { transition:transform .22s ease,box-shadow .22s ease; }
#convocircle-root .cc-home-services-v212 .cc-home-service-grid > a:hover { transform:translateY(-3px); box-shadow:var(--cc-shadow); }
#convocircle-root .cc-home-service-number { display:block; color:var(--cc-olive); font-size:13px; letter-spacing:.14em; font-weight:750; margin-bottom:24px; }
#convocircle-root .cc-home-services-v212 .cc-home-link { color:var(--cc-text); }
#convocircle-root .cc-home-video-section { padding:clamp(50px,6vw,78px) 0; }
#convocircle-root .cc-home-video-section .cc-head { align-items:end; margin-bottom:26px; }
#convocircle-root .cc-home-video-lead { margin:12px 0 0; color:var(--cc-muted); line-height:1.6; font-size:17px; }
#convocircle-root .cc-home-video-library { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr); gap:20px; align-items:stretch; }
#convocircle-root .cc-home-video-featured { overflow:hidden; min-width:0; }
#convocircle-root .cc-home-video-frame { aspect-ratio:16/9; background:var(--cc-dark); overflow:hidden; }
#convocircle-root .cc-home-video-frame iframe { display:block; width:100%; height:100%; border:0; }
#convocircle-root .cc-home-video-detail { padding:24px 28px 28px; }
#convocircle-root .cc-home-video-detail h3 { font-size:clamp(23px,2.3vw,34px); line-height:1.12; margin:0 0 11px; letter-spacing:-.035em; color:var(--cc-text); }
#convocircle-root .cc-home-video-detail p { color:var(--cc-muted); line-height:1.6; font-size:15px; margin:0 0 22px; }
#convocircle-root .cc-home-video-watch { display:inline-flex; align-items:center; gap:8px; color:var(--cc-text); font-size:14px; font-weight:750; text-decoration:underline; text-underline-offset:4px; }
#convocircle-root .cc-home-video-playlist { display:flex; flex-direction:column; gap:11px; min-width:0; }
#convocircle-root .cc-home-video-playlist-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; font-size:13px; letter-spacing:.02em; font-weight:750; margin-bottom:4px; color:var(--cc-text); }
#convocircle-root .cc-home-video-playlist-heading span { color:var(--cc-muted); font-size:12px; font-weight:500; }
#convocircle-root .cc-home-video-option { min-width:0; display:grid; grid-template-columns:minmax(110px,40%) minmax(0,1fr); gap:14px; padding:12px; background:var(--cc-card); border:1px solid var(--cc-line); border-radius:var(--cc-radius-sm); color:var(--cc-text); text-decoration:none; transition:transform .2s ease,box-shadow .2s ease; }
#convocircle-root .cc-home-video-option:hover { transform:translateY(-2px); box-shadow:var(--cc-shadow); }
#convocircle-root .cc-home-video-option.is-current { box-shadow:inset 4px 0 0 var(--cc-yellow); }
#convocircle-root .cc-home-video-thumb { position:relative; display:block; aspect-ratio:16/9; border-radius:10px; background:var(--cc-dark); overflow:hidden; }
#convocircle-root .cc-home-video-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
#convocircle-root .cc-home-video-play-icon { display:grid; place-items:center; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); border-radius:50%; width:36px; height:36px; color:var(--cc-text); background:var(--cc-yellow); font-size:13px; }
#convocircle-root .cc-home-video-option-body { display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
#convocircle-root .cc-home-video-option-label { color:var(--cc-olive); font-size:10px; text-transform:uppercase; font-weight:750; letter-spacing:.09em; margin-bottom:7px; }
#convocircle-root .cc-home-video-option-body strong { display:block; font-size:clamp(14px,1.25vw,17px); line-height:1.3; font-weight:750; overflow-wrap:anywhere; }
#convocircle-root .cc-home-video-option-action { margin-top:auto; padding-top:8px; color:var(--cc-muted); font-size:12px; font-weight:650; }
@media(max-width:1050px) {
  #convocircle-root .cc-home-video-library { grid-template-columns:minmax(0,1fr); }
  #convocircle-root .cc-home-video-playlist { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
  #convocircle-root .cc-home-video-playlist-heading { grid-column:1/-1; }
  #convocircle-root .cc-home-video-option { display:flex; flex-direction:column; }
  #convocircle-root .cc-home-video-option-body { flex:1; }
}
@media(max-width:800px) {
}
@media(max-width:680px) {
  #convocircle-root .cc-home-services-v212 .cc-head, #convocircle-root .cc-home-video-section .cc-head { align-items:flex-start; flex-direction:column; }
  #convocircle-root .cc-home-video-playlist { grid-template-columns:1fr; }
  #convocircle-root .cc-home-video-option { display:grid; grid-template-columns:112px minmax(0,1fr); }
  #convocircle-root .cc-home-video-detail { padding:20px; }
}
@media(prefers-reduced-motion:reduce){#convocircle-root .cc-home-video-option,#convocircle-root .cc-home-services-v212 .cc-home-service-grid>a{transition:none;}}

/* ConvoCircle World follows the video library. */
/* A readable first fold, with the established article data and image renderer. */
#convocircle-root .cc-hero-band{padding:48px 0;}
#convocircle-root .cc-hero-band .cc-shell{padding:0 24px;}
#convocircle-root .cc-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;}
#convocircle-root .cc-hero-title{font-size:clamp(40px,4.6vw,64px);line-height:1.04;letter-spacing:-.045em;font-weight:600;margin-bottom:24px;max-width:12ch;}
#convocircle-root .cc-hero-title em{font-style:normal;color:#fdc62f;}
#convocircle-root .cc-hero-text{font-size:18px;line-height:1.7;max-width:46ch;}
#convocircle-root #cc-featured-article{min-height:410px;padding:90px 30px 30px;border-radius:22px;justify-content:flex-end;}
#convocircle-root #cc-featured-article h2{font-size:clamp(28px,2.5vw,36px)!important;line-height:1.12!important;letter-spacing:-.035em!important;}
#convocircle-root #cc-featured-article p{font-size:14px;line-height:1.65;}
#convocircle-root .cc-hero-copy .cc-btn-ghost{color:#fff!important;border-color:#777;}
@media(max-width:900px){#convocircle-root .cc-hero-grid{grid-template-columns:1fr;gap:30px;}#convocircle-root .cc-hero-title{max-width:18ch;}#convocircle-root #cc-featured-article{min-height:330px;}#convocircle-root .cc-hero-band{padding:36px 0;}}
#convocircle-root .cc-home-world{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:54px;padding:52px 0 72px;scroll-margin-top:110px;}
#convocircle-root .cc-home-world h2{display:block;color:var(--cc-text);font-size:clamp(32px,4vw,52px);line-height:1.06;letter-spacing:-.04em;margin:24px 0 20px;}
#convocircle-root .cc-home-world p{font-size:17px;line-height:1.7;color:var(--cc-muted);margin:0 0 24px;}
#convocircle-root .cc-world-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:22px 0;margin:0 0 12px;border-top:1px solid var(--cc-line);gap:20px;}
#convocircle-root .cc-world-features li{margin:0;padding:0;}
#convocircle-root .cc-world-features strong{display:block;font-size:16px;margin-bottom:7px;}
#convocircle-root .cc-world-features span{display:block;font-size:13px;line-height:1.6;color:var(--cc-muted);}
#convocircle-root .cc-world-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;}
#convocircle-root .cc-world-text-link{color:var(--cc-text);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:5px;}
#convocircle-root .cc-world-visual{min-width:0;margin:0;background:#f3f0e8;border:1px solid var(--cc-line);border-radius:26px;overflow:hidden;}
#convocircle-root .cc-world-visual img{display:block;width:100%;height:auto;}
#convocircle-root .cc-world-visual figcaption{border-top:1px solid #dfd9cb;padding:18px 24px;font-size:13px;font-weight:600;}
#convocircle-root .cc-home-world a:focus-visible{outline:3px solid var(--cc-yellow);outline-offset:5px;}
@media(max-width:900px){#convocircle-root .cc-home-world{grid-template-columns:1fr;gap:32px;padding:34px 0 50px;}#convocircle-root .cc-world-visual{max-width:640px;}}
@media(max-width:420px){#convocircle-root .cc-world-features{gap:12px;}#convocircle-root .cc-world-features span{font-size:12px;}}
