/* CODECOOR visual layer for Autumn-Pro 6.5.1. All styles scoped. */
:root { --cc-navy:#18334b; --cc-deep:#102638; --cc-sea:#247d78; --cc-soft:#eaf4f2; --cc-line:#dce5e7; --cc-ink:#243b48; }
.cc-home { color:var(--cc-ink); font-size:16px; line-height:1.78; }
.cc-home * { box-sizing:border-box; }
.cc-home a { text-decoration:none; }
.cc-home .cc-eyebrow { color:var(--cc-sea); text-transform:uppercase; font-size:13px; font-weight:700; letter-spacing:1px; margin:0 0 13px; }
.cc-home h1,.cc-home h2,.cc-home h3 { color:var(--cc-navy); font-weight:700; line-height:1.3; letter-spacing:-.025em; }
.cc-home h1 { font-size:clamp(32px,3.8vw,49px); margin:0 0 22px; }
.cc-home h2 { font-size:clamp(25px,2.6vw,34px); margin:0 0 18px; }
.cc-home h3 { font-size:21px; margin:10px 0; }
.cc-home p { margin:0 0 14px; }
.cc-home img { max-width:100%; display:block; object-fit:cover; }
.cc-home .cc-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:38px; align-items:center; padding:36px 0 62px; }
.cc-home .cc-lead { font-size:18px; color:#526574; line-height:1.85; max-width:570px; }
.cc-home .cc-hero-note { font-size:13px; color:#6e808a; margin-top:20px; }
.cc-home .cc-hero-image { border-radius:20px; width:100%; aspect-ratio:5/4; box-shadow:0 16px 46px #19354817; }
.cc-home .cc-actions { display:flex; gap:13px; flex-wrap:wrap; margin-top:28px; }
.cc-home .cc-button { background:var(--cc-sea); color:#fff; padding:13px 23px; font-weight:600; font-size:15px; border-radius:6px; display:inline-block; }
.cc-home .cc-button:hover { color:#fff; background:#1c6560; }
.cc-home .cc-button-outline { background:transparent; border:1px solid var(--cc-sea); color:var(--cc-sea); }
.cc-home .cc-button-outline:hover { background:var(--cc-soft); color:var(--cc-sea); }
.cc-home .cc-button-light { background:#fff; color:var(--cc-navy); white-space:nowrap; }
.cc-home .cc-button-light:hover { background:#e8f1f3;color:var(--cc-navy) }
.cc-home .cc-section { margin:0 -14px; padding:68px 14px; }
.cc-home .cc-section-head { max-width:790px; margin-bottom:30px; }
.cc-home .cc-section-head p { color:#60727d; }
.cc-home .cc-grid { display:grid; gap:20px; }
.cc-home .cc-grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cc-home .cc-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cc-home .cc-card { border:1px solid var(--cc-line); border-radius:12px; background:#fff; padding:22px; min-width:0; }
.cc-home .cc-card .cc-card-media { margin:-22px -22px 22px; height:180px; overflow:hidden; border-radius:12px 12px 0 0; background:#f1f4f4; }
.cc-home .cc-card .cc-card-media img { width:100%;height:100%;object-fit:cover; }
.cc-home .cc-card p { color:#60727d;min-height:80px; }
.cc-home .cc-text-link { color:var(--cc-sea);font-weight:650; }
.cc-home .cc-section-tint { background:var(--cc-soft); padding:54px 38px; border-radius:16px; margin-top:26px; }
.cc-home .cc-feature { border-bottom:1px solid #c5d8d6; padding:12px 0; }
.cc-home .cc-feature span { font-size:13px;color:var(--cc-sea);font-weight:700; }
.cc-home .cc-split { display:grid;grid-template-columns: 1fr 1fr;align-items:center;gap:46px; }
.cc-home .cc-split img { width:100%; max-height:420px;border-radius:14px; }
.cc-home .cc-cta { display:flex; justify-content:space-between; gap:24px;align-items:center; background:var(--cc-navy); padding:42px 38px; border-radius:14px;margin:32px 0 12px; }
.cc-home .cc-cta h2,.cc-home .cc-cta p { color:#fff; }
.cc-home .cc-cta .cc-eyebrow { color:#a5ddd4; }
.cc-qr-grid { display:grid;grid-template-columns:repeat(2,minmax(0,230px)); gap:28px; margin:24px 0; }
.cc-qr-item { padding:14px; background:#f6f8f8; border:1px solid #dde5e7; border-radius:12px;text-align:center; }
.cc-qr-item img { width:100%;aspect-ratio:1;object-fit:contain; }
.cc-qr-item p { margin:9px 0 0; font-size:14px; }
/* Autumn-Pro page-full template already removes sidebar; hide redundant title only on static homepage. */
body.home.page .entry-header.page { display:none; }
body.home.page .entry-wrapper { margin-top:0; }
body.home.page .entry-content { padding-top:0; }
body.home.page .site-content { max-width:1240px; }
body.home.page .entry-content > .cc-home { text-indent:0 !important; }
@media(max-width:900px) { .cc-home .cc-hero,.cc-home .cc-split {grid-template-columns:1fr;} .cc-home .cc-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));} .cc-home .cc-hero {padding:20px 0 46px;} }
@media(max-width:620px) { .cc-home .cc-grid-2,.cc-home .cc-grid-3{grid-template-columns:1fr;} .cc-home .cc-section {padding:40px 10px;margin:0 -10px;} .cc-home .cc-section-tint {padding:30px 20px;margin:18px 0;} .cc-home .cc-cta {display:block;padding:28px 22px;} .cc-home .cc-cta .cc-button {margin-top:12px;} .cc-home .cc-card p {min-height:0;} .cc-home .cc-hero {gap:25px;} .cc-qr-grid{grid-template-columns:1fr 1fr;gap:10px;} }

/* Gate B-R2: center reading pages when the theme sidebar has no widgets. */
body.cc-reading-shell .site-content{max-width:1040px}
body.cc-reading-shell .site-content > .row:not(:has(.widget-area > *)) > .col-lg-9{flex:0 0 100%;max-width:100%;width:100%}
body.cc-reading-shell .site-content > .row > .col-lg-3:has(.widget-area:not(:has(*))){display:none}
/* A floated directory squeezed mobile introductions and left a large desktop gap. */
body.cc-reading-shell.single .entry-content #toc{float:none;width:auto;max-width:100%;margin:0 0 26px;padding:16px 20px;background:#f4f8f7;border:1px solid #dce5e7;border-radius:8px;color:#243b48}
body.cc-reading-shell.single .entry-content #toc > ul{columns:2;column-gap:32px}
body.cc-reading-shell.single .entry-content #toc li{break-inside:avoid}
body.cc-reading-shell.single .entry-content #toc summary{cursor:pointer;font-weight:600}
body.cc-reading-shell.single .entry-content #toc a{color:#24675f}
@media(max-width:620px){body.cc-reading-shell.single .entry-content #toc > ul{columns:1}body.cc-reading-shell.single .entry-content #toc{padding:14px 16px}}

/* SITE-Q2: no-image related links remain readable without broken thumbnail slots. */
body.single-post .related-post .entry-media:has(img.lazyload[data-srcset=""]:not([src]):not([srcset])){display:none}
body.single-post .entry-navigation img.lazyload[data-srcset=""]:not([src]):not([srcset]){display:none}
