/* Chamber homepage: a consistent editorial layout with CMS-managed content. */
.tcc-home { background:#fbfaf7; }
.tcc-home #site-header { background:#fbfaf7; box-shadow:none; border-bottom:1px solid #dedfdc; }
.tcc-home .tcc-header-rule { background:#a08048; height:2px; }
.tcc-home #site-header .nav-link { font-size:13px; font-weight:500; border-radius:3px; }
.tcc-home #site-header .nav-link.is-active { background:transparent; box-shadow:inset 0 -2px #9a7639; }
.tcc-home #site-header .tcc-header-call, .tcc-home #site-header .tcc-menu-toggle { border-radius:4px; }
.tcc-home .mobile-cta-bar { display:none; }
.tcc-home .tcc-footer { padding-bottom:0; }
.chamber-home { --ch-ink:#162b46; --ch-muted:#54606c; --ch-gold:#8b692e; color:var(--ch-ink); background:#fbfaf7; padding-top:86px; font-size:16px; }
.chamber-home *, .chamber-home *::before, .chamber-home *::after { box-sizing:border-box; }
.ch-wrap { width:min(1240px,calc(100% - 96px)); margin-inline:auto; }
.chamber-home h1,.chamber-home h2,.chamber-home h3 { color:var(--ch-ink); font-family:var(--font-display); font-weight:500; letter-spacing:-.035em; margin:0; }
.chamber-home h1 { font-size:clamp(3.5rem,5.5vw,5.4rem); line-height:.99; }
.chamber-home h1 span { display:block; }
.chamber-home h2 { font-size:clamp(2.35rem,3.5vw,3.65rem); line-height:1.07; }
.chamber-home h3 { font-size:1.85rem; line-height:1.14; }
.chamber-home p { margin:0; line-height:1.7; }
.chamber-home a { text-decoration:none; }
.chamber-home a:focus-visible,.chamber-home summary:focus-visible,.chamber-home button:focus-visible { outline:3px solid #a57a31; outline-offset:5px; }
.ch-kicker { display:flex; align-items:center; gap:10px; font-size:11px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--ch-gold); margin-bottom:22px!important; }
.ch-diamond { width:7px; height:7px; background:#9a7639; transform:rotate(45deg); flex:none; }
.ch-hero-top { display:grid; grid-template-columns:1.55fr 1fr; align-items:end; gap:70px; padding:66px 0 44px; }
.ch-title-accent { font-style:normal; color:#776344; }
.ch-hero-intro { padding-bottom:5px; }
.ch-hero-intro>p { color:var(--ch-muted); font-size:17px; line-height:1.7; max-width:37ch; }
.ch-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 22px; margin-top:25px; }
.ch-button { display:inline-flex; gap:25px; align-items:center; justify-content:center; padding:15px 23px; min-height:52px; border:1px solid var(--ch-ink); border-radius:3px; color:#fff; background:var(--ch-ink); font-size:14px; font-weight:500; line-height:1.4; transition:background .2s,transform .2s; }
.ch-button:hover { background:#294762; color:white; }
.ch-button:active { transform:translateY(1px); }
.ch-button>span { font-size:20px; }
.ch-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; min-height:44px; color:var(--ch-ink); font-size:14px; font-weight:500; border-bottom:1px solid #c2b69f; transition:border-color .2s; }
.ch-text-link:hover { border-color:var(--ch-ink); color:#80632f; }
.ch-hero-photo { margin:0; border-radius:5px; overflow:hidden; }
.ch-hero-photo>img { display:block; width:100%; height:auto; aspect-ratio:2.65; object-fit:cover; object-position:center 42%; }
.ch-hero-photo figcaption { background:#172e49; color:#edf0f2; display:flex; justify-content:space-between; align-items:center; gap:16px; padding:14px 23px; font-size:12px; font-weight:400; }
.ch-hero-photo figcaption a { color:#f0d49f; min-height:28px; display:inline-flex; align-items:center; gap:25px; }
.ch-stats { display:grid; grid-template-columns:repeat(4,1fr); margin:0; padding:34px 0; border-bottom:1px solid #dcdcd6; }
.ch-stats>div { display:flex; flex-direction:column-reverse; gap:5px; padding-left:32px; border-left:1px solid #deddd5; }
.ch-stats>div:first-child { border:0; padding-left:0; }
.ch-stats dd { font-family:var(--font-display); font-size:42px; line-height:1; margin:0; font-weight:500; }
.ch-stats dt { color:var(--ch-muted); font-size:12px; }
.ch-section { padding-block:84px; }
.ch-mission { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:start; }
.ch-mission h2 { max-width:15ch; }
.ch-mission-copy { padding-top:7px; }
.ch-mission-copy p { color:var(--ch-muted); font-size:17px; margin-bottom:16px; }
.ch-mission-copy .ch-text-link { margin-top:7px; }
.ch-initiatives { background:#f0eee8; }
.ch-section-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; }
.ch-section-heading h2 { max-width:23ch; }
.ch-section-heading>.ch-text-link { flex-shrink:0; margin-bottom:5px; }
.ch-section-lead { color:var(--ch-muted); max-width:65ch; margin-top:22px!important; font-size:16px; }
.ch-work-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin-top:38px; }
.ch-work-card { min-width:0; }
.ch-work-image { display:block; overflow:hidden; border-radius:4px; background:#e4e1d8; }
.ch-work-image img { width:100%; aspect-ratio:1.5; height:auto; object-fit:cover; display:block; transition:transform .45s; }
.ch-work-card:hover img { transform:scale(1.025); }
.ch-work-meta { display:flex; justify-content:space-between; align-items:center; color:#675738; font-size:10px; letter-spacing:.12em; margin:20px 0 12px; }
.ch-work-meta>span:last-child { font-size:20px; }
.ch-work-card h3 a { color:inherit; display:inline-block; min-height:44px; }
.ch-work-card h3 a:hover { text-decoration:underline; text-underline-offset:5px; }
.ch-work-card>p { margin-top:12px; font-size:14px; color:var(--ch-muted); line-height:1.75; }
.ch-work-more { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; border-top:1px solid #d3d1c8; margin-top:38px; padding-top:25px; }
.ch-work-more a { display:flex; gap:15px; align-items:start; color:var(--ch-ink); padding-block:10px; }
.ch-work-more a>span:last-child { margin-left:auto; }
.ch-work-more a:hover strong { text-decoration:underline; text-underline-offset:4px; }
.ch-work-number { color:var(--ch-gold); font-size:12px; padding-top:4px; }
.ch-work-more strong { font-size:15px; font-weight:500; display:block; line-height:1.5; }
.ch-work-more small { display:block; color:var(--ch-muted); font-size:12px; line-height:1.7; margin-top:8px; }
.ch-directory { background:#152b44; color:#fff; }
.ch-directory h2,.ch-directory h3 { color:#fff; }
.ch-directory .ch-kicker { color:#d9bd85; }
.ch-directory h2 .ch-directory-accent { font-weight:400; color:#e4d2ab; }
.ch-directory .ch-section-heading>p { max-width:32ch; color:#c5ced8; margin-bottom:5px; font-size:16px; }
.ch-directory-search { margin-top:36px; }
.ch-directory-search>label { display:block; font-size:12px; margin-bottom:10px; color:#d2dbe3; }
.ch-directory-search>div { display:flex; align-items:center; gap:14px; padding:8px 8px 8px 20px; border-radius:4px; background:#fff; color:var(--ch-ink); }
.ch-directory-search svg { width:21px; height:21px; flex-shrink:0; }
.ch-directory-search input { min-width:0; flex:1; border:0; background:#fff; color:var(--ch-ink); font-family:var(--font-body); font-size:16px; padding:12px 0; box-shadow:none; outline-offset:1px; }
.ch-directory-search input:focus { outline:2px solid #a08048; box-shadow:none; }
.ch-directory-search input::placeholder { color:#697480; opacity:1; }
.ch-directory-search button { display:flex; align-items:center; gap:30px; background:#e9d6b1; border:1px solid #e9d6b1; color:#172e49; border-radius:2px; font-family:var(--font-body); font-size:14px; font-weight:500; cursor:pointer; min-height:48px; padding:12px 22px; }
.ch-directory-search button:hover { background:#f3e5c9; }
.ch-directory-search button:active { background:#d9bc85; }
.ch-city-links { display:flex; align-items:center; flex-wrap:wrap; gap:5px 24px; margin-top:12px; font-size:12px; }
.ch-city-links>span { color:#b2c0ce; }
.ch-city-links a { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:#f2e1c2; }
.ch-city-links a:hover { text-decoration:underline; text-underline-offset:5px; }
.ch-business-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin-top:30px; }
.ch-business-photo { display:flex; justify-content:center; align-items:center; overflow:hidden; border-radius:4px; background:#31465b; aspect-ratio:1.65; font:64px var(--font-display); color:#fff; }
.ch-business-photo img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.ch-business-photo:hover img { transform:scale(1.025); }
.ch-business-meta { display:flex; gap:8px; justify-content:space-between; color:#c3cdd6; font-size:11px; margin-top:17px; }
.ch-business-grid h3 { font-size:26px; margin-top:8px; }
.ch-business-grid h3 a { display:flex; justify-content:space-between; gap:15px; color:#fff; min-height:44px; align-items:start; }
.ch-business-grid h3 a:hover { color:#e4d2ab; }
.ch-business-grid h3 span { font-family:var(--font-body); font-size:19px; flex-shrink:0; }
.ch-directory-all { margin-top:32px; color:#eeddbb; border-color:#7f8b91; }
.ch-directory-all:hover { color:white; border-color:white; }
.ch-gallery-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:24px; margin-top:36px; }
.ch-gallery-grid figure { margin:0; }
.ch-gallery-grid a { position:relative; display:block; overflow:hidden; border-radius:4px; }
.ch-gallery-grid img { display:block; width:100%; height:270px; object-fit:cover; transition:transform .4s; }
.ch-gallery-grid a:hover img { transform:scale(1.025); }
.ch-gallery-grid a span { position:absolute; right:12px; bottom:12px; display:grid; place-items:center; width:38px; height:38px; background:#fbfaf7; color:var(--ch-ink); border-radius:50%; font-size:20px; }
.ch-gallery-grid figcaption { font-size:12px; color:var(--ch-muted); line-height:1.6; padding-top:14px; }
.ch-faq { border-top:1px solid #e1dfd7; border-bottom:1px solid #e1dfd7; background:#f4f2ec; }
.ch-faq-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; }
.ch-faq-grid>.ch-section-lead { max-width:34ch; }
.ch-faq-grid>div>.ch-text-link { margin-top:24px; }
.ch-faq-list details { border-top:1px solid #d4d3cd; }
.ch-faq-list details:last-of-type { border-bottom:1px solid #d4d3cd; }
.ch-faq-list summary { display:flex; justify-content:space-between; align-items:center; gap:22px; list-style:none; cursor:pointer; padding:23px 0; min-height:64px; font-size:16px; font-weight:500; }
.ch-faq-list summary::-webkit-details-marker { display:none; }
.ch-faq-list summary span { font-size:24px; font-weight:300; flex:none; transition:transform .2s; }
.ch-faq-list details[open] summary span { transform:rotate(45deg); }
.ch-faq-list details>p { padding:0 36px 24px 0; color:var(--ch-muted); font-size:15px; }
.ch-faq-list .ch-text-link { margin-top:20px; }
.ch-communities { text-align:center; padding-block:38px; border-bottom:1px solid #dfddd4; }
.ch-communities .ch-kicker { justify-content:center; margin-bottom:10px!important; }
.ch-communities>p:last-child { color:var(--ch-muted); font-size:15px; word-spacing:5px; }
.ch-join { display:flex; justify-content:space-between; align-items:center; gap:65px; }
.ch-join h2 { max-width:21ch; }
.ch-join>div>p:last-child { max-width:64ch; color:var(--ch-muted); font-size:15px; margin-top:22px; }
.ch-join>.ch-button { flex-shrink:0; }
.ch-values { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:30px; }
.ch-values h3 { font-size:25px; margin-bottom:12px; }
.ch-values p,.ch-values blockquote { font-size:15px; color:var(--ch-muted); line-height:1.7; }
.ch-values figcaption { margin-top:18px; font-size:12px; }
@media(min-width:1100px) { .tcc-home .tcc-desktop-nav { display:flex; } .tcc-home .tcc-menu-toggle { display:none; } .tcc-home #site-header .site-header__brand-name { font-size:17px; max-width:200px; } }
@media(max-width:1150px) { .ch-wrap { width:calc(100% - 64px); } .ch-hero-top { gap:40px; } .ch-actions { gap:10px; } .ch-mission,.ch-faq-grid { gap:55px; } .ch-work-grid,.ch-work-more,.ch-business-grid { gap:22px; } }
@media(max-width:900px) { .ch-hero-top { grid-template-columns:1fr; gap:26px; padding-top:45px; } .ch-hero-intro { display:flex; align-items:center; justify-content:space-between; gap:30px; } .ch-hero-intro>p { max-width:40ch; } .ch-actions { flex-shrink:0; flex-direction:column; align-items:start; margin-top:0; } .ch-hero-photo>img { aspect-ratio:2.1; } .ch-section { padding-block:60px; } .ch-mission,.ch-faq-grid { gap:40px; } .ch-work-grid,.ch-business-grid { gap:20px; } .chamber-home h3 { font-size:1.6rem; } .ch-work-more { grid-template-columns:1fr; gap:0; } .ch-work-more a { border-bottom:1px solid #d6d4cb; padding-block:18px; } .ch-work-more a:last-child { border:0; } .ch-work-more small { margin-top:4px; } .ch-gallery-grid { gap:18px; } .ch-gallery-grid img { height:220px; } .ch-join { gap:30px; } }
@media(max-width:650px) {
 .ch-wrap { width:calc(100% - 40px); } .chamber-home { padding-top:82px; } .ch-hero-top { padding:37px 0 28px; gap:24px; } .ch-kicker { font-size:10px; letter-spacing:.12em; margin-bottom:18px!important; } .chamber-home h1 { font-size:clamp(2.65rem,10.7vw,4rem); line-height:1.02; } .chamber-home h2 { font-size:2.5rem; } .ch-hero-intro { display:block; } .ch-hero-intro>p { font-size:16px; max-width:none; } .ch-actions { flex-direction:row; align-items:center; gap:12px 20px; margin-top:23px; } .ch-button { padding:14px 19px; min-height:50px; gap:22px; } .ch-hero-photo>img { aspect-ratio:1.65; } .ch-hero-photo figcaption { padding:12px 14px; font-size:10px; line-height:1.6; } .ch-hero-photo figcaption>span { max-width:62%; } .ch-hero-photo figcaption a { gap:8px; min-height:44px; } .ch-stats { grid-template-columns:1fr 1fr; gap:25px 0; padding-block:26px; } .ch-stats>div { padding-left:20px; } .ch-stats>div:nth-child(3) { padding-left:0; border:0; } .ch-stats dd { font-size:36px; } .ch-stats dt { font-size:11px; } .ch-section { padding-block:48px; } .ch-mission,.ch-faq-grid { grid-template-columns:1fr; gap:24px; } .ch-mission-copy { padding:0; } .ch-mission-copy p { font-size:16px; } .ch-section-heading { align-items:start; flex-direction:column; gap:15px; } .ch-section-heading h2 { max-width:20ch; } .ch-section-lead { margin-top:17px!important; font-size:15px; } .ch-work-grid,.ch-business-grid { grid-template-columns:1fr; gap:32px; margin-top:28px; } .ch-work-image img { aspect-ratio:1.6; } .ch-work-meta { margin-top:15px; margin-bottom:8px; } .chamber-home h3 { font-size:1.9rem; } .ch-work-card h3 a { min-height:0; padding-bottom:6px; } .ch-work-card>p { margin-top:5px; } .ch-work-more { margin-top:27px; padding-top:8px; } .ch-directory .ch-section-heading>p { max-width:none; font-size:15px; } .ch-directory-search { margin-top:25px; } .ch-directory-search>div { flex-wrap:wrap; gap:6px 12px; padding:10px 12px; } .ch-directory-search input { width:calc(100% - 36px); } .ch-directory-search button { width:100%; justify-content:space-between; margin-top:2px; } .ch-city-links { gap:0 20px; } .ch-city-links>span { width:100%; margin-top:10px; } .ch-business-meta { font-size:11px; } .ch-business-grid h3 { font-size:27px; } .ch-directory-all { margin-top:20px; } .ch-gallery-grid { grid-template-columns:1fr 1fr; gap:23px 14px; margin-top:28px; } .ch-gallery-grid figure:first-child { grid-column:1/-1; } .ch-gallery-grid img { height:150px; } .ch-gallery-grid figure:first-child img { height:auto; aspect-ratio:1.65; } .ch-gallery-grid figcaption { font-size:11px; padding-top:10px; } .ch-faq-list summary { font-size:15px; padding-block:20px; } .ch-faq-list details>p { font-size:14px; } .ch-communities { padding-block:30px; } .ch-communities>p:last-child { font-size:13px; line-height:1.9; } .ch-join { flex-direction:column; align-items:start; gap:25px; } .ch-values { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .chamber-home *, .chamber-home *::before, .chamber-home *::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; } }
