/* Cartners keeps its traditional sports layout at a comfortable reading size.
   Use rem so browser text preferences enlarge the entire reading hierarchy. */
html { font-size: 100%; }
body.cw-public, body.cw-member { font-size: 1.125rem; line-height: 1.6; }
[hidden] { display: none !important; }
.cw-width { max-width: 90rem; }
.cw-public main.cw-width { container-type: inline-size; container-name: cw-content; }
.cw-public :is(h1, h2, h3, p, a, label, li, td) { overflow-wrap: anywhere; }
body.cw-public p { font-size: 1.125rem; line-height: 1.65; color: #4d5e42; }
body.cw-public :is(.cw-eyebrow, .cw-breadcrumb, .cw-sidebar-label, .cw-section-divider > span, .cw-footer, .cw-fineprint, .cw-join > small, .cw-score-promo > small, .cw-link-list li > span) { color: #4d603e !important; }
.cw-utility { color: #4d5c42; }
.cw-utility > .cw-width { min-height: 2.75rem; gap: 1rem; }
.cw-utility a, .cw-quick a, .cw-account .cw-signin,
.cw-sidebar-nav > a, .cw-sidebar-note a, .cw-footer a,
.cw-panel-title > a, .cw-panel-intro > a, .cw-panel-foot > a,
.cw-three-links a, .cw-link-list li > a, .cw-service-row a,
.cw-score-promo > a, .cw-panel-body > a, .cw-text-link,
.cw-lead-secondary, .cw-join > small > a, .cw-editorial-note > a,
.cw-action-strip > a, .cw-inline-links > a, .cw-faq details > a, .cw-breadcrumb > a {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  line-height: 1.5;
}
.cw-masthead { height: auto; min-height: 8rem; padding-block: 1rem; gap: 1.75rem; }
.cw-masthead-middle { color: #526143; }
.cw-brand > span { font-size: 2.75rem; }
.cw-brand small { font-size: .875rem; letter-spacing: .075rem; color: #4b613c; }
.cw-account { flex-shrink: 0; margin-left: auto; }
.cw-account small { font-size: 1rem; color: #526143; }
.cw-button { min-height: 3rem; max-width: 100%; padding: .65rem 1rem; font-size: 1rem; line-height: 1.5; white-space: normal; text-align: center; }
.cw-nav { min-height: 3.25rem; flex-wrap: wrap; }
.cw-nav > a { flex-shrink: 0; min-height: 3.25rem; font-size: 1rem; padding: .7rem 1.125rem; white-space: normal; overflow-wrap: normal; line-height: 1.5; }
.cw-menu-bar, .cw-mobile-actions { display: none; }
.cw-quick { flex-wrap: wrap; min-height: 3rem; gap: .1rem .875rem; white-space: normal; }
.cw-quick > strong, .cw-quick time { font-size: .875rem; color: #50603e; }
.cw-breadcrumb { flex-wrap: wrap; gap: .5rem; line-height: 1.5; }
.cw-home-grid { grid-template-columns: 13.75rem minmax(0, 1fr) 19rem; gap: 1.25rem; }
.cw-sidebar-nav > a { display: flex; padding: .6rem .8rem; font-size: 1rem; }
.cw-sidebar-label { font-size: .9375rem; }
.cw-sidebar-note { padding: .8rem .65rem; }
.cw-lead { grid-template-columns: 42% 58%; }
.cw-lead h1 { font-size: 2.625rem; line-height: 1.12; }
.cw-lead p, .cw-lead p:first-of-type { font-size: 1.125rem; color: #475c39; }
.cw-lead .cw-button { font-size: 1rem; }
.cw-lead-secondary { display: flex; margin-top: .4rem; }
.cw-photo-caption { font-size: .875rem; background: #183528e6; }
.cw-section-divider { flex-wrap: wrap; }
.cw-section-divider h2 { font-size: 1.125rem; line-height: 1.5; }
.cw-three-links h3 { font-size: 1.25rem; line-height: 1.4; }
.cw-three-links p { font-size: 1.125rem; }
.cw-panel-title { flex-wrap: wrap; min-height: 3rem; gap: .4rem .7rem; padding: .65rem .9rem; }
.cw-panel-title h2 { font-size: 1.25rem; line-height: 1.4; }
.cw-panel-title > a, .cw-panel-intro > a { white-space: normal; }
.cw-panel-intro { flex-wrap: wrap; gap: .5rem; }
.cw-panel-body { font-size: 1.125rem; padding: 1rem; }
.cw-panel-foot { flex-wrap: wrap; align-items: center; font-size: 1rem; }
.cw-table-wrap { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.cw-table { min-width: 40rem; font-size: 1rem; }
.cw-table :is(td, th) { padding: .8rem 1rem; vertical-align: top; color: #465b36; }
.cw-table td:first-child, .cw-table td:last-child a { white-space: normal; }
.cw-table td:first-child { width: 24%; }
.cw-table td:last-child { width: 23%; }
.cw-table td a { display: inline-flex; align-items: center; min-height: 2.75rem; }
.cw-table-scroll-hint { margin: 0 !important; padding: .65rem 1rem; font-size: 1rem !important; color: #445c32; background: #edf2e3; border-bottom: 1px solid #cdd4c1; }
.cw-link-list li { padding: .7rem 1rem; }
.cw-link-list li > a { font-size: 1.125rem; }
.cw-link-list li > span:not(.cw-eyebrow) { font-size: 1rem; }
.cw-editorial-note { flex-wrap: wrap; }
.cw-search { padding: .9rem; }
.cw-search label { font-size: 1rem; line-height: 1.5; letter-spacing: 0; color: #405633; margin-bottom: .6rem; }
.cw-search > div { flex-wrap: wrap; gap: .5rem; }
.cw-search input { flex: 1 1 10rem; min-width: 0; min-height: 3rem; font-size: 1rem; padding: .6rem .7rem; border: 1px solid #97aa83; }
.cw-search button { min-height: 3rem; font-size: 1rem; padding: .6rem 1rem; background: #405f31; }
.cw-join .cw-eyebrow { font-size: 1rem; }
.cw-join h2 { font-size: 1.875rem; }
.cw-join p { font-size: 1.125rem; }
.cw-join .cw-button, .cw-join > small { font-size: 1rem; }
.cw-service-row a { font-size: 1.25rem; }
.cw-service-icon { width: 2.2rem; height: 2.2rem; line-height: 2.2rem; }
.cw-score-promo h3 { font-size: 1.25rem; line-height: 1.4; max-width: none; }
.cw-mini-score { grid-template-columns: repeat(3, 2rem); margin-left: .75rem; }
.cw-mini-score > * { line-height: 1.8; }
.cw-score-promo p { clear: both; }
.cw-footer { flex-wrap: wrap; gap: .75rem 1.125rem; }
.cw-footer > nav { flex-wrap: wrap; gap: .5rem 1.125rem; }
.cw-footer nav a { min-width: 2.75rem; }
.cw-content-grid { grid-template-columns: minmax(0, 1fr) 20rem; }
.cw-page-heading h1 { font-size: 2.5rem; }
.cw-page-heading p { font-size: 1.125rem; line-height: 1.65; }
.cw-service-choice h2 { font-size: 1.7rem; }
.cw-reference-form label { font-size: 1rem; }
.cw-reference-form > div { flex-wrap: wrap; }
.cw-reference-form input { flex: 1 1 16rem; min-height: 3rem; min-width: 0; padding: .6rem .75rem; font-size: 1rem; }
.cw-inline-links { flex-wrap: wrap; }
.cw-community-photo img { height: 100%; min-height: 17rem; }
.cw-community-photo h2 { font-size: 1.875rem; }
.cw-faq summary { min-height: 3rem; padding-block: .6rem; font-size: 1.125rem; line-height: 1.6; }
.cw-faq p { font-size: 1.125rem; }

@media (max-width: 82rem) {
  .cw-home-grid { grid-template-columns: minmax(0, 1fr) 19rem; }
  .cw-home-grid > .cw-left, .cw-masthead-middle { display: none; }
  .cw-nav > a { padding-inline: .8rem; }
  .cw-quick time { display: none; }
}
@media (max-width: 68.75rem) {
  .cw-width { width: calc(100% - 2rem); }
  .cw-utility > .cw-width > span { display: none; }
  .cw-utility > div > div { width: 100%; justify-content: space-between; }
  .cw-home-grid, .cw-content-grid { grid-template-columns: minmax(0, 1fr); }
  .cw-content-page .cw-right, .cw-home-grid > .cw-right { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; align-items: start; }
  .cw-right > .cw-search { grid-column: 1/-1; }
  .cw-right > * { margin-bottom: 0; }
  .cw-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding-block: .5rem; overflow: visible; }
  .cw-nav > a { min-height: 3rem; padding: .75rem; border: 1px solid #ffffff22; margin: 0; }
  .cw-nav > .cw-my-clubhouse { margin: 0; }
  .cw-menu-bar { display: flex; justify-content: space-between; align-items: center; min-height: 3.5rem; gap: 1rem; }
  .cw-menu-toggle { display: none; align-items: center; gap: .6rem; min-height: 3rem; font-size: 1.125rem; font-weight: bold; padding: .5rem .75rem; border: 1px solid #a4bc8c; border-radius: 2px; color: white; background: #22492f; cursor: pointer; }
  .cw-menu-ready .cw-menu-toggle { display: inline-flex; }
  .cw-mobile-clubhouse { display: inline-flex; align-items: center; min-height: 3rem; font-size: 1rem; color: white !important; padding: .5rem 0; text-decoration: none; }
  .cw-mobile-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-column: 1/-1; border-top: 1px solid #aac881; margin-top: .75rem; padding-top: .5rem; }
  .cw-mobile-actions strong { grid-column: 1/-1; padding: .5rem .75rem; font-size: 1rem; color: #e2eec3; }
  .cw-mobile-actions a { display: flex; align-items: center; min-height: 3rem; padding: .75rem; font-size: 1rem; color: white !important; line-height: 1.5; text-decoration: none; border: 1px solid #ffffff22; }
  .cw-quick-wrap { display: none; }
  .cw-footer > nav { flex-basis: 100%; margin-left: 0; }
}
@media (max-width: 42rem) {
  .cw-width { width: calc(100% - 1.5rem); }
  .cw-utility { display: none; }
  .cw-masthead { flex-wrap: wrap; gap: .8rem; min-height: 0; padding-block: 1rem; }
  .cw-brand { margin-inline: auto; gap: .7rem; }
  .cw-brand > span { font-size: 2.375rem; }
  .cw-brand img { width: 3.5rem; height: 3.5rem; }
  .cw-brand small { font-size: .875rem; letter-spacing: .025rem; }
  .cw-account { display: grid; width: 100%; grid-template-columns: 1fr 1fr; gap: .75rem; }
  .cw-account .cw-signin { justify-content: center; min-height: 3rem; border: 1px solid #98ac83; background: #f9fbf5; border-radius: 2px; }
  .cw-account .cw-button { padding: .65rem .5rem; font-size: 1rem; }
  .cw-account small { display: none; }
  .cw-breadcrumb { padding: .75rem 0; }
  .cw-breadcrumb > span:last-child { display: none; }
  .cw-lead, .cw-community-photo { grid-template-columns: minmax(0, 1fr); }
  .cw-lead-copy { order: -1; padding: 1.125rem; }
  .cw-lead h1 { font-size: 2.375rem; }
  .cw-lead-image { height: 13rem; }
  .cw-lead-image img { object-position: center 55%; }
  .cw-lead .cw-button { width: 100%; font-size: 1rem; padding: .65rem 1rem; }
  .cw-lead-secondary { display: flex; justify-content: center; text-align: center; font-size: 1rem; }
  .cw-three-links, .cw-two-cols { grid-template-columns: minmax(0, 1fr); }
  .cw-three-links article { padding: 1rem .25rem; }
  .cw-three-links article + article { border-left: 0; border-top: 1px solid var(--cw-line); padding-left: .25rem; }
  .cw-three-links h3 { font-size: 1.375rem; }
  .cw-three-links p { font-size: 1.125rem; }
  .cw-section-divider > span { display: none; }
  .cw-two-cols { gap: 0; }
  .cw-content-page .cw-right, .cw-home-grid > .cw-right { display: block; }
  .cw-right > * { margin-bottom: 1.125rem; }
  .cw-right .cw-panel-title { padding: .65rem .8rem; }
  .cw-right .cw-panel-title h2 { font-size: 1.25rem; }
  .cw-panel-body { padding: .9rem; }
  .cw-page-heading { padding-top: .25rem; }
  .cw-page-heading h1 { font-size: 2.125rem; }
  .cw-page-heading p { font-size: 1.125rem; }
  .cw-action-strip { align-items: stretch; flex-direction: column; gap: .6rem; }
  .cw-service-choice article { padding: 1.125rem; }
  .cw-service-choice .cw-button { width: 100%; }
  .cw-community-photo img { height: 13rem; min-height: 0; }
  .cw-community-photo > div { padding: 1.125rem; }
  .cw-community-photo h2 { font-size: 1.75rem; }
  .cw-reference-form input { flex-basis: 100%; width: 100%; }
  .cw-reference-form .cw-button { width: 100%; }
  .cw-public .cw-directory { grid-template-columns: minmax(0, 1fr); }
  .cw-footer { display: block; padding-block: 1rem 1.5rem; }
  .cw-footer > span { display: block; margin-block: .5rem; font-size: 1rem; }
  .cw-footer > nav { display: grid; grid-template-columns: 1fr 1fr; gap: .25rem .8rem; margin-block: .5rem; }
  .cw-footer > small { display: block; margin-top: .75rem; }
  .cw-mini-score { float: none; width: max-content; margin: 0 0 .75rem; }
  .cw-faq details { padding-inline: .85rem; }
}
/* The public-page tables fit without scrolling from a laptop width up, so the
   "scroll sideways" hint would only be noise there. It stays for phones and
   narrow windows, where the table does scroll. */
@media (min-width: 75rem) {
  .cw-public .cw-table-scroll-hint { display: none !important; }
}
@media print {
  .cw-menu-bar, .cw-mobile-actions, .cw-table-scroll-hint { display: none !important; }
  .cw-table-wrap { overflow: visible; }
  .cw-table { min-width: 0; }
}

/* Container rem units follow the reader's actual text size. Media queries use
   the browser's initial size, so they alone cannot protect a readable column
   when text is enlarged without shrinking the viewport. */
@container cw-content (max-width: 82rem) {
  .cw-home-grid { grid-template-columns: minmax(0, 1fr) 19rem; }
  .cw-home-grid > .cw-left { display: none; }
}
@container cw-content (max-width: 68.75rem) {
  .cw-home-grid, .cw-content-grid { grid-template-columns: minmax(0, 1fr); }
  .cw-content-page .cw-right, .cw-home-grid > .cw-right { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; align-items: start; }
  .cw-right > .cw-search { grid-column: 1/-1; }
}
@container cw-content (max-width: 42rem) {
  .cw-lead, .cw-community-photo, .cw-three-links, .cw-two-cols { grid-template-columns: minmax(0, 1fr); }
  .cw-lead-copy { order: -1; }
  .cw-lead-image { height: 13rem; }
  .cw-three-links article + article { border-left: 0; border-top: 1px solid var(--cw-line); padding-left: .25rem; }
  .cw-content-page .cw-right, .cw-home-grid > .cw-right { display: block; }
  .cw-right > * { margin-bottom: 1.125rem; }
  .cw-public .cw-directory { grid-template-columns: minmax(0, 1fr); }
  .cw-community-photo img { height: 13rem; min-height: 0; }
}
