/* 0.36.1 — one brand palette, quiet pastel surfaces per service.
   Navy is shared by text and accents; saturated yellow is reserved for primary actions. */
:root{
 --cc-brand:#1e3f65;--cc-ink:var(--cc-brand);--cc-navy:var(--cc-brand);--cc-navy-deep:var(--cc-brand);--cc-blue:var(--cc-brand);
 --cc-sage:#edf2ef;--cc-yellow-soft:#fbf3d6;--cc-lilac:var(--cc-mobile-soft);
 --cc-analysis:#1e3f65;--cc-analysis-ink:#1e3f65;--cc-analysis-soft:#eef0f2;--cc-analysis-deep:#1e3f65;
 --cc-light:#1e3f65;--cc-light-ink:#1e3f65;--cc-light-soft:#fbf5e3;--cc-light-deep:#1e3f65;
 --cc-gas:#1e3f65;--cc-gas-ink:#1e3f65;--cc-gas-soft:#f5efe7;--cc-gas-deep:#1e3f65;
 --cc-internet:#1e3f65;--cc-internet-ink:#1e3f65;--cc-internet-soft:#edf2ef;--cc-internet-deep:#1e3f65;
 --cc-mobile:#1e3f65;--cc-mobile-ink:#1e3f65;--cc-mobile-soft:#f0f2f3;--cc-mobile-deep:#1e3f65;
 --cc-promoter:#1e3f65;--cc-promoter-ink:#1e3f65;--cc-promoter-soft:#eef0f2;--cc-promoter-deep:#1e3f65;
}
[data-cc-service="analysis"]{--service:var(--cc-analysis);--service-ink:var(--cc-analysis-ink);--service-soft:var(--cc-analysis-soft);--service-deep:var(--cc-analysis-deep)}
[data-cc-service="light"]{--service:var(--cc-light);--service-ink:var(--cc-light-ink);--service-soft:var(--cc-light-soft);--service-deep:var(--cc-light-deep)}
[data-cc-service="gas"]{--service:var(--cc-gas);--service-ink:var(--cc-gas-ink);--service-soft:var(--cc-gas-soft);--service-deep:var(--cc-gas-deep)}
[data-cc-service="internet"]{--service:var(--cc-internet);--service-ink:var(--cc-internet-ink);--service-soft:var(--cc-internet-soft);--service-deep:var(--cc-internet-deep)}
[data-cc-service="mobile"]{--service:var(--cc-mobile);--service-ink:var(--cc-mobile-ink);--service-soft:var(--cc-mobile-soft);--service-deep:var(--cc-mobile-deep)}
[data-cc-service="promoter"]{--service:var(--cc-promoter);--service-ink:var(--cc-promoter-ink);--service-soft:var(--cc-promoter-soft);--service-deep:var(--cc-promoter-deep)}

/* Entry points and light surfaces. */
.cc-page[data-cc-service]>.cc-hero,
.cc-service[data-cc-service],
.cc-home-connectivity__card[data-cc-service],
.cc-partner-teaser[data-cc-service],
.cc-prepare[data-cc-service],
.cc-page[data-cc-service] .cc-prepare{background:var(--service-soft)}
[data-cc-service] .eyebrow,[data-cc-service] .text-link{color:var(--service-ink)}
[data-cc-service] .text-link:hover{color:var(--service-deep)}
[data-cc-service] .cc-step-icon>rect{fill:var(--service-soft)}
[data-cc-service] .cc-step-icon>g{stroke:var(--service-ink)}
[data-cc-service] .cc-service__symbol{color:var(--service-ink);background:#fff}
[data-cc-service] .cc-service__symbol>.cc-step-icon>rect{fill:transparent}
[data-cc-service] .cc-data-grid>div{background:var(--service-soft)}
[data-cc-service] .cc-data-number{color:var(--service-ink)}
[data-cc-service] .cc-timeline__number{background:var(--service-soft);color:var(--service-ink);border-color:var(--service-ink)}
[data-cc-service] .cc-lifestyle-grid article{border-top-color:#c7d1d7}
[data-cc-service] .cc-detail-panels article{border-top:3px solid #c7d1d7}
.cc-page[data-cc-service] .cc-content-section--prose:nth-of-type(odd),
.cc-page[data-cc-service] .cc-content-section--example{background:var(--service-soft)}

/* Only explanatory highlights use a dark surface, always the exact brand navy. */
.cc-page[data-cc-service] .cc-content-section--outcomes,
.cc-page[data-cc-service] .cc-promoter-reward{background:var(--service-deep)}
.cc-page[data-cc-service] :is(.cc-content-section--outcomes,.cc-promoter-reward) .eyebrow,
.cc-page[data-cc-service] :is(.cc-content-section--outcomes,.cc-promoter-reward) .text-link{color:var(--service-soft)}
.cc-page[data-cc-service] :is(.cc-content-section--outcomes,.cc-promoter-reward) .text-link:hover{color:#fff}
.cc-page[data-cc-service] .cc-reward-calculator .eyebrow{color:var(--service-ink)}

/* Quiet closing sections separate each landing from the navy footer.
   Reset all foreground roles together, including nested links and focus rings. */
.cc-page .cc-final,
.cc-page[data-cc-service] .cc-connectivity-criteria{
 --cc-on-dark:var(--cc-brand);--cc-on-dark-muted:var(--cc-muted);--cc-on-dark-accent:var(--cc-brand);
 background:var(--service-soft,var(--cc-paper));color:var(--cc-brand)
}
.cc-page .cc-final :is(h2,h3,.eyebrow,.text-link),
.cc-page[data-cc-service] .cc-connectivity-criteria :is(h2,h3,.eyebrow,.text-link){color:var(--cc-brand)}
.cc-page .cc-final p:not(.eyebrow),
.cc-page[data-cc-service] .cc-connectivity-criteria .cc-editorial-split>div>p:not(.eyebrow),
.cc-page[data-cc-service] .cc-connectivity-criteria .cc-criteria-list p{color:var(--cc-muted)}
.cc-page .cc-final .text-link:hover{color:var(--cc-brand);text-decoration:underline}
.cc-page[data-cc-service] .cc-criteria-list li{border-color:#c7d1d7}
.cc-page[data-cc-service] .cc-criteria-list li>span{color:var(--cc-brand)}
.cc-page[data-cc-service] .cc-connection-details{background:#fff}
.cc-page[data-cc-service] .cc-detail-panels article{background:var(--service-soft);border-color:#d8dfe2}
.cc-page :is(.cc-final,.cc-connectivity-criteria) :focus-visible{outline:3px solid var(--cc-brand);outline-offset:5px}

/* Analysis uses the exact brand navy; light surfaces use its neutral tint. */
.cc-home-art__disc{background:var(--cc-analysis-soft)}
.cc-home .cc-ai-explained[data-cc-service="analysis"]{background:var(--service);color:#fff}
.cc-ai-explained[data-cc-service] h2,.cc-ai-explained[data-cc-service] h3{color:#fff}
.cc-ai-explained[data-cc-service] .eyebrow,.cc-ai-explained[data-cc-service] .text-link{color:#fff}
.cc-ai-explained[data-cc-service] .text-link:hover{color:var(--cc-yellow-soft)}
.cc-ai-explained[data-cc-service] .cc-ai-explained__intro>p:not(.eyebrow),
.cc-ai-explained[data-cc-service] .cc-ai-explained__list p{color:var(--cc-analysis-soft)}
.cc-ai-explained[data-cc-service] .cc-ai-explained__list,
.cc-ai-explained[data-cc-service] .cc-ai-explained__list>li{border-color:#ffffff40}
.cc-ai-explained[data-cc-service] .cc-ai-explained__list>li>span{color:var(--service-deep);background:var(--service-soft)}
.cc-ai-explained[data-cc-service] :focus-visible{outline:3px solid var(--cc-yellow);outline-offset:5px}
.cc-no-bill[data-cc-service] .cc-no-bill__inner{border-color:#c7d1d7}
.cc-no-bill[data-cc-service] .button--outline{border-color:var(--service-ink);color:var(--service-ink)}
.cc-no-bill[data-cc-service] .button--outline:hover{background:var(--service-deep);color:#fff}
.cc-page--analysis .cc-bill-explorer__notes{background:var(--service-deep)}
.cc-page--analysis .cc-bill-explorer__rows>a[aria-selected="true"]{background:var(--service-soft);color:var(--service-deep)}
.cc-page--analysis .cc-bill-explorer__rows>a:focus-visible{outline-color:var(--service-ink)}
.cc-home .cc-prepare[data-cc-service] .cc-prepare__figure{padding:0;background:transparent;border-radius:var(--cc-radius)}
.cc-prepare[data-cc-service] .cc-prepare__checks,.cc-prepare[data-cc-service] .cc-prepare__checks>li{border-color:#d1dadd}
.cc-prepare[data-cc-service] .cc-prepare__checks .cc-icon{color:var(--service-ink)}

/* Promoter shares the brand navy and neutral surfaces with Analysis. */
.cc-page--promoter .cc-dashboard-section{background:var(--cc-promoter-soft)}
.cc-page--promoter .cc-sharing{background:var(--cc-paper)}
.cc-page--promoter .cc-share-text{background:var(--cc-promoter-soft)}
/* Mixed-service and editorial pages use the neutral brand palette. */
.cc-page--offers>.cc-hero,.cc-page--method>.cc-hero,.cc-page--switch>.cc-hero{background:var(--cc-paper)}

/* Promoter details follow the same neutral tint as its navy surfaces. */
.cc-page--promoter :is(.cc-dashboard-preview,.cc-dashboard-preview__head,.cc-dashboard-preview dl>div,.cc-sharing-grid>div,.cc-sharing-grid li,.cc-share-text){border-color:#d1dadd}

/* Bundled landing SVGs use the same pastel/navy palette at source, including home previews. */

/* 0.36.2 — consecutive sections must remain visibly separate.
   Alternate the actual section order, including optional blocks. Dark brand
   highlights retain their surface and readable foregrounds; never duplicate
   a dark highlight consecutively when composing a new layout. */
.cc-page>section:not(:is(.cc-ai-explained,.cc-manifesto,.cc-speed,.cc-content-section--outcomes,.cc-promoter-reward,.cc-process,.cc-home-video)):nth-of-type(odd){--cc-panel-surface:#fff;background-color:var(--service-soft,var(--cc-paper))}
.cc-page>section:not(:is(.cc-ai-explained,.cc-manifesto,.cc-speed,.cc-content-section--outcomes,.cc-promoter-reward,.cc-process,.cc-home-video)):nth-of-type(even){--cc-panel-surface:var(--service-soft,var(--cc-paper));background-color:#fff}
/* On the white benefits section, retain contrast around the two smaller cards. */
.cc-page>.cc-why:nth-of-type(even) :is(.cc-why__row--reliability,.cc-why__row--precision){background:var(--cc-sage)}

/* 0.37.1 — content panels must stand apart from their section.
   Both Promoter lists share the same surface and text hierarchy. The panel
   role follows the real section order, including optional home blocks. */
.cc-page--promoter .cc-sharing-grid>div,
.cc-page :is(.cc-guide-feature,.cc-guide-card){background:var(--cc-panel-surface,#fff);border-color:#c7d1d7;color:var(--cc-brand)}
.cc-page--promoter .cc-sharing-grid h3{color:var(--cc-brand)}
.cc-page--promoter .cc-sharing-grid li{font-size:1rem;line-height:1.75;color:var(--cc-brand);border-color:#d1dadd}
.cc-guide-body .author-box{background:var(--cc-analysis-soft);border-color:#c7d1d7}
.breadcrumbs li:not(:last-child):after{color:var(--cc-muted)}

/* The About hero now follows the light section rhythm: reset its complete
   foreground palette as well, including secondary actions and focus. */
.cc-page .cc-hero--about{color:var(--cc-brand)}
.cc-page .cc-hero--about :is(h1,.eyebrow,.text-link){color:var(--cc-brand)}
.cc-page .cc-hero--about :is(.cc-hero__lead,.hero-note){color:var(--cc-muted)}
.cc-page .cc-hero--about .text-link:hover{text-decoration:underline}
.cc-page .cc-hero--about :focus-visible{outline-color:var(--cc-brand)}
.cc-content-section--outcomes .cc-prose strong{color:var(--cc-on-dark)}

/* Keep comparison tables readable on small screens. The existing wrapper
   supplies horizontal scrolling when the table needs more room. */
@media(max-width:700px){
 .cc-comparison .cc-table-wrap table{font-size:.9375rem;line-height:1.65}
}

/* 0.37 — one coherent hero area, including the no-bill alternative. */
.cc-home>.cc-hero--home{padding-bottom:clamp(48px,5vw,72px)}
.cc-hero--home .cc-no-bill{background:transparent;margin-top:clamp(36px,4vw,56px);padding:0}
.cc-hero--home .cc-no-bill__inner{background:#fff;box-shadow:none}
.cc-prepare__figure img{display:block;width:100%;height:auto;object-fit:contain}

/* Promoter: imagery accompanies the copy, without text overlays or cropping. */
.cc-promoter-intro>.cc-editorial-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center}
.cc-promoter-editorial{margin:0;min-width:0;overflow:hidden;border-radius:var(--cc-radius);background:var(--cc-paper)}
.cc-promoter-editorial__image{display:block;width:100%;height:auto;object-fit:contain}
.cc-promoter-editorial--conversation{margin-top:32px}
.cc-sharing-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,72px);margin-bottom:44px}
.cc-sharing-intro h2{max-width:18ch;font-size:clamp(2.2rem,3.6vw,3.5rem)}
.cc-sharing-intro>div>p:not(.eyebrow){max-width:46ch;line-height:1.8;color:var(--cc-muted)}
@media(max-width:700px){
 .cc-promoter-intro>.cc-editorial-split,.cc-sharing-intro{grid-template-columns:minmax(0,1fr);gap:28px}
 .cc-promoter-editorial--conversation{margin-top:26px}
 .cc-sharing-intro{margin-bottom:32px}
 .cc-sharing-intro h2{font-size:clamp(2rem,7.7vw,2.6rem)}
}
