/* CCBONLINE VI V3.0 — bilingual editorial homepage layer.
   Loaded after existing site CSS on / and /en/ only.
   No additional fonts, external dependencies or unsourced marketing imagery. */
.visual-home {
  --home-ink:#182F3B;
  --home-teal:#087E75;
  --home-paper:#F7F5F0;
  --home-fog:#DFE6E1;
}
.visual-home .guide-hero {
  background:var(--home-paper)!important;
}
.visual-home .guide-hero-grid {
  align-items:center;
}
.visual-home .guide-hero .eyebrow {
  text-transform:none;
  letter-spacing:.035em!important;
}
.visual-home .guide-hero .english-title {
  padding-left:14px;
  border-left:2px solid var(--home-teal);
  line-height:1.65;
}
.visual-home .guide-hero-card {
  background:var(--home-ink)!important;
  border:1px solid var(--home-ink)!important;
  border-radius:8px!important;
  box-shadow:none!important;
  padding:clamp(24px,3vw,38px)!important;
}
.visual-home .guide-hero-card h2 {
  color:#FFFFFF!important;
  font-size:clamp(22px,2.15vw,28px)!important;
  max-width:18ch;
}
.visual-home .guide-hero-card p,
.visual-home .guide-hero-card li {
  color:#F2F7F4!important;
}
.visual-home .guide-hero-card .guide-seal {
  background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(162,225,207,.45)!important;
  color:#ADE7D7!important;
  font-weight:700;
}
.visual-home .guide-hero-card li {
  border-bottom:1px solid rgba(223,230,225,.23)!important;
  padding-top:13px;
  padding-bottom:13px;
}
.visual-home .guide-hero-card li:last-child {
  border-bottom:0!important;
}
.visual-home .guide-hero-card li::before {
  background:#8EDCC5!important;
  width:5px;
  height:5px;
  top:23px;
}
.visual-home .v3-offers {
  background:#FFFFFF;
}
.visual-home .v3-offers .v3-offer-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0!important;
  border:1px solid var(--home-fog);
  border-radius:8px;
  overflow:hidden;
  background:#FFFFFF;
}
.visual-home .v3-offers .v3-offer {
  display:flex;
  flex-direction:column;
  min-width:0;
  background:#FFFFFF!important;
  border:0!important;
  border-radius:0!important;
  padding:clamp(24px,3vw,36px)!important;
  box-shadow:none!important;
  transition:background-color .16s ease;
}
.visual-home .v3-offers .v3-offer::before {
  display:none!important;
}
.visual-home .v3-offers .v3-offer:nth-child(odd) {
  border-right:1px solid var(--home-fog)!important;
}
.visual-home .v3-offers .v3-offer:nth-child(-n+2) {
  border-bottom:1px solid var(--home-fog)!important;
}
.visual-home .v3-offers .v3-offer:hover {
  background:#F3F8F5!important;
  box-shadow:none!important;
}
.visual-home .v3-offers .v3-offer:focus-within {
  outline:3px solid var(--home-teal);
  outline-offset:-3px;
  position:relative;
  z-index:1;
}
.visual-home .v3-offers .v3-label {
  color:var(--home-teal)!important;
  font-size:13px!important;
  letter-spacing:.04em;
}
.visual-home .v3-offers .v3-offer h3 {
  color:var(--home-ink)!important;
  font-size:clamp(21px,2.1vw,25px)!important;
  line-height:1.35!important;
  margin:14px 0!important;
}
.visual-home .v3-offers .service-outcome {
  border-top:1px solid var(--home-fog)!important;
  margin-top:auto;
}
.visual-home .v3-offers .v3-offer > a {
  color:#086E65!important;
  text-underline-offset:4px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
}
.visual-home .cta-panel {
  border-left:4px solid var(--home-teal)!important;
  background:var(--home-paper)!important;
}
.visual-home .skip-link:focus-visible {
  position:fixed;
  top:12px;
  left:12px;
  background:var(--home-ink);
  color:#FFFFFF;
  border:3px solid #8EDCC5;
  outline:0;
  border-radius:4px;
  padding:11px 18px;
  z-index:9999;
}
@media(max-width:640px) {
  .visual-home .v3-offers .v3-offer-grid {
    grid-template-columns:1fr;
  }
  .visual-home .v3-offers .v3-offer:nth-child(odd) {
    border-right:0!important;
  }
  .visual-home .v3-offers .v3-offer {
    border-bottom:1px solid var(--home-fog)!important;
  }
  .visual-home .v3-offers .v3-offer:last-child {
    border-bottom:0!important;
  }
  .visual-home .guide-hero-card h2 {
    max-width:none;
  }
}
@media(prefers-reduced-motion:reduce) {
  .visual-home .v3-offers .v3-offer {
    transition:none!important;
  }
}
