.kc-page { --kc-ink:#102a43; --kc-muted:#566b7f; --kc-line:#cad7e3; --kc-red:#e73b4e; color:var(--kc-ink); background:#fff; font-family:"Plus Jakarta Sans",sans-serif; }
.kc-page *, .kc-page *::before, .kc-page *::after { box-sizing:border-box; }
.kc-shell { width:min(1180px,calc(100% - 40px)); margin-inline:auto; }
.kc-hero { padding:132px 0 72px; overflow:hidden; border-bottom:1px solid var(--kc-line); background:linear-gradient(rgba(219,229,238,.48) 1px,transparent 1px),linear-gradient(90deg,rgba(219,229,238,.48) 1px,transparent 1px),radial-gradient(circle at 12% 18%,rgba(231,59,78,.10),transparent 30%),#f8fbfd; background-size:32px 32px,32px 32px,auto,auto; }
.kc-hero__grid { display:grid; grid-template-columns:minmax(0,.88fr) minmax(480px,1.12fr); gap:clamp(38px,5vw,76px); align-items:center; }
.kc-hero__grid > *,.kc-signature__grid > *,.kc-card__layout > * { min-width:0; }
.kc-kicker,.kc-section-kicker,.kc-hero h1,.kc-hero__lead,.kc-button,.kc-signature h2,.kc-signature__intro,.kc-signature__note,.kc-card__head span,.kc-card__index,.kc-card__primary > strong,.kc-card__rule span,.kc-card__rule b,.kc-card__output span,.kc-card__output strong,.kc-card__output em,.kc-card__result span,.kc-card__result strong { overflow-wrap:anywhere; }
.kc-kicker,.kc-section-kicker { margin:0 0 18px; color:var(--kc-red); font-size:13px; font-weight:800; letter-spacing:.14em; line-height:1.35; text-transform:uppercase; }
.kc-hero h1 { margin:0; max-width:660px; color:#101c32; font-weight:800; letter-spacing:-.045em; line-height:1.02; text-wrap:balance; }
.kc-hero__lead { max-width:610px; margin:24px 0 0; color:var(--kc-muted); font-size:clamp(17px,1.5vw,20px); line-height:1.65; }
.kc-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.kc-button { display:inline-flex; min-height:50px; align-items:center; justify-content:center; padding:12px 20px; border:1px solid var(--kc-ink); border-radius:10px; color:#fff; background:var(--kc-ink); font-size:15px; font-weight:800; text-decoration:none; }
.kc-button--quiet { color:var(--kc-ink); background:#fff; }
.kc-button:hover,.kc-button:focus-visible { transform:translateY(-1px); box-shadow:0 10px 24px rgba(16,42,67,.14); }
.kc-hero__visual { margin:0; min-width:0; }
.kc-hero__visual picture,.kc-hero__visual img { display:block; width:100%; }
.kc-hero__visual img { height:auto; filter:drop-shadow(0 20px 30px rgba(16,42,67,.12)); }
.kc-hero__visual figcaption { margin:12px 10px 0; color:var(--kc-muted); font-size:13px; line-height:1.5; }
.kc-source { border-bottom:1px solid var(--kc-line); background:#fff; }
.kc-source__grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:32px; padding-block:28px; }
.kc-source h2 { margin:0; font-size:20px; line-height:1.35; }
.kc-source p { margin:0; color:var(--kc-muted); font-size:14px; line-height:1.7; }
.kc-source a { color:#c72f42; font-weight:800; text-underline-offset:3px; }
.kc-signature { padding:82px 0 90px; background:#fffdf8; }
.kc-signature__grid { display:grid; grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr); gap:clamp(40px,6vw,86px); align-items:start; }
.kc-signature h2 { margin:0; max-width:560px; color:#101c32; font-size:clamp(34px,4vw,54px); font-weight:800; letter-spacing:-.045em; line-height:1.04; text-wrap:balance; }
.kc-signature__intro { margin:22px 0 0; color:var(--kc-muted); font-size:17px; line-height:1.7; }
.kc-signature__note { margin:26px 0 0; padding-left:18px; border-left:4px solid var(--kc-red); font-size:15px; font-weight:700; line-height:1.6; }
.kc-card { position:relative; padding:24px; border:2px solid var(--kc-ink); border-radius:20px 4px 20px 20px; background:#fff; box-shadow:14px 14px 0 #dbe7ef; }
.kc-card::before { position:absolute; top:20px; right:18px; width:24px; height:54px; border:2px solid var(--kc-ink); border-radius:10px; background:#f3d99f; content:""; }
.kc-card::after { position:absolute; top:39px; right:54px; width:16px; height:16px; border:3px solid var(--kc-line); border-radius:50%; background:#fff; content:""; }
.kc-card__head { display:flex; justify-content:space-between; gap:18px; padding:2px 4px 18px; border-bottom:2px solid var(--kc-ink); font-size:14px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.kc-card__head span:last-child { margin-right:80px; color:var(--kc-red); }
.kc-card__layout { display:grid; grid-template-columns:minmax(0,1.58fr) minmax(180px,.64fr); min-height:340px; margin-top:20px; border:1px solid var(--kc-line); background:#f8fbfd; }
.kc-card__primary { min-width:0; padding:26px 28px; border-right:2px solid var(--kc-ink); background:linear-gradient(145deg,#fffdf7 0 79%,#dbe7ef 79%); }
.kc-card__index,.kc-card__output span { color:var(--kc-red); font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.kc-card__primary > strong { display:block; margin:30px 0 26px; color:var(--kc-ink); font-size:clamp(28px,3vw,40px); letter-spacing:-.04em; line-height:1.08; }
.kc-card__rule { display:grid; grid-template-columns:86px minmax(0,1fr); gap:16px; padding:15px 0; border-top:1px solid #9fb2c5; }
.kc-card__rule span { color:var(--kc-red); font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.kc-card__rule b { font-size:15px; line-height:1.45; }
.kc-card__output { display:flex; min-width:0; flex-direction:column; justify-content:flex-end; padding:24px 20px; background:#fff0d9; }
.kc-card__output strong { margin-top:auto; color:#9d5c09; font-size:clamp(34px,4vw,50px); letter-spacing:-.04em; line-height:.95; }
.kc-card__output em { margin-top:12px; color:#7c4a0a; font-size:14px; font-style:normal; font-weight:800; }
.kc-card__result { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:20px; padding:18px 20px; color:#fff; background:#2d806f; font-size:14px; font-weight:800; }
.kc-card__result strong { max-width:330px; text-align:right; font-size:17px; line-height:1.4; }
@media (max-width:959px){.kc-hero{padding-top:112px}.kc-hero__grid,.kc-signature__grid{grid-template-columns:minmax(0,1fr)}.kc-hero__visual{max-width:720px;margin-inline:auto}.kc-source__grid{grid-template-columns:minmax(0,1fr);gap:12px}}
@media (max-width:639px){#main-content.kc-page .kc-hero h1[data-city-type="h1"]{font-size:32px!important;line-height:1.08!important;letter-spacing:-.065em;overflow-wrap:normal;word-break:normal;hyphens:none}}
@media (max-width:639px){#main-content.kc-page .kc-signature h2{font-size:28px!important;line-height:1.1!important;overflow-wrap:normal;word-break:normal;hyphens:none}.kc-card__rule{grid-template-columns:minmax(0,1fr);gap:4px}.kc-card__primary>strong{font-size:28px}.kc-card__output strong{font-size:34px}}
@media (max-width:639px){.kc-shell{width:min(100% - 28px,1180px)}.kc-hero{padding:102px 0 48px;background-size:24px 24px,24px 24px,auto,auto}.kc-hero__grid{gap:34px}.kc-kicker,.kc-section-kicker{margin-bottom:14px;font-size:12px}.kc-hero__lead{margin-top:18px;font-size:16px;line-height:1.6}.kc-actions{display:grid;grid-template-columns:minmax(0,1fr);margin-top:24px}.kc-button{width:100%;min-width:0;max-width:100%}.kc-source__grid{padding-block:22px}.kc-signature{padding:60px 0 72px}.kc-signature h2{font-size:36px}.kc-signature__intro{font-size:16px}.kc-card{min-width:0;padding:18px;box-shadow:8px 8px 0 #dbe7ef}.kc-card::before{right:16px;width:18px;height:52px}.kc-card::after{right:44px}.kc-card__head{align-items:flex-start;flex-direction:column;gap:5px}.kc-card__head span:last-child{margin-right:0}.kc-card__layout{grid-template-columns:minmax(0,1fr);min-height:0}.kc-card__primary{padding:22px;border-right:0;border-bottom:2px solid var(--kc-ink)}.kc-card__primary > strong{margin:28px 0 22px;font-size:32px}.kc-card__rule{grid-template-columns:minmax(72px,.35fr) minmax(0,1fr);gap:10px;padding:13px 0}.kc-card__output{min-height:170px;padding:22px}.kc-card__output strong{margin-top:46px;font-size:46px}.kc-card__result{align-items:flex-start;flex-direction:column;gap:7px}.kc-card__result strong{max-width:none;text-align:left;font-size:16px}}

#main-content.kc-page .kc-card__output strong {
  font-size: clamp(32px, 3vw, 38px);
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none;
}

@media (max-width:639px) {
  #main-content.kc-page .kc-card__rule {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 4px !important;
  }

  #main-content.kc-page .kc-card__rule :where(span, b) {
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none;
  }

  #main-content.kc-page .kc-card__primary > strong {
    font-size: 28px !important;
  }

  #main-content.kc-page .kc-card__output strong {
    font-size: 32px !important;
  }
}
