/* Brainpage's approved September 2026 identity. Public shell + homepage only. */
/* Two faces for one family. Browsers use the last matching face for each
   character, so Latin text loads the 74 KB WOFF2 subset and the 659 KB TTF
   downloads only if a page uses a character outside that range. */
@font-face {
  font-family: "Archivo";
  src: url("/assets/archivo-variable-a338d5b8.ttf") format("truetype");
  font-weight: 100 900;
  font-stretch: 62% 125%;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Archivo";
  src: url("/assets/archivo-latin-204fa71a.woff2") format("woff2");
  font-weight: 100 900;
  font-stretch: 62% 125%;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0020-007E, U+00A0-00FF, U+2013-2014, U+2018-2019, U+201C-201D, U+2022, U+2026, U+20AC, U+2122, U+2192;
}
.bp-page {
  --tk-ink: #191a23;
  --tk-blue: #3431bd;
  --tk-blue-hover: #25228f;
  --tk-coral: #ff6b45;
  --tk-lilac: #e2ddf7;
  --tk-rule: #d3d0df;
  color: var(--tk-ink);
  font-family: "Archivo", sans-serif;
  background: #fff;
}
.bp-page ::selection { background: var(--tk-lilac); color: var(--tk-ink); }
.bp-page :focus-visible { outline: 3px solid var(--tk-coral); outline-offset: 5px; }
.tk-home { font-size: 18px; line-height: 1.55; }
.tk-home *, .tk-header *, .tk-footer * { box-sizing: border-box; }
.tk-home h1, .tk-home h2, .tk-home h3, .tk-home p, .tk-home figure { margin: 0; }
.tk-home h1, .tk-home h2, .tk-home h3 { font-weight: 900; letter-spacing: -.035em; }
.tk-home h2 { font-size: clamp(36px, 4.5vw, 64px); line-height: 1.04; text-wrap: balance; }
.tk-home h3 { font-size: 28px; line-height: 1.13; }
.tk-home a, .tk-header a, .tk-footer a { text-underline-offset: .22em; }
.tk-home section[id] { scroll-margin-top: 24px; }
.tk-shell { width: min(1440px, calc(100% - 112px)); margin-inline: auto; }
.tk-header { background: #fff; }
.tk-nav { display: flex; align-items: center; justify-content: space-between; min-height: 104px; gap: 40px; }
.tk-wordmark { color: var(--tk-ink); font-size: 35px; font-weight: 900; letter-spacing: -.04em; line-height: 1; text-decoration: none; }
.tk-nav__links { display: flex; gap: 44px; margin-left: auto; margin-right: auto; }
.tk-nav__links a, .tk-login { font-size: 16px; color: var(--tk-ink); text-decoration: none; }
.tk-nav__links a:hover, .tk-login:hover { color: var(--tk-blue); text-decoration: underline; }
.tk-login { border: 1px solid var(--tk-rule); padding: 11px 22px; border-radius: 4px; }
.tk-mobile-nav { display: none; }
.tk-hero { padding: 30px 0 50px; overflow: clip; }
.tk-hero__grid { display: grid; grid-template-columns: 56% 44%; align-items: center; }
.tk-hero__copy { position: relative; z-index: 1; }
.tk-hero h1 { font-size: clamp(58px, 6.3vw, 96px); line-height: .96; margin-bottom: 28px; }
.tk-hero h1 span { display: block; color: var(--tk-blue); }
/* English keeps "whole company." on one line. Longer translations must wrap, or they run under the image and get cut off on phones. */
.tk-hero h1:lang(en) span { white-space: nowrap; }
.tk-hero__lede { font-size: clamp(20px, 1.85vw, 27px); line-height: 1.28; max-width: 650px; }
.tk-price { font-size: clamp(48px, 5vw, 72px); font-weight: 900; letter-spacing: -.04em; line-height: 1; white-space: nowrap; }
.tk-price span { font-size: .49em; letter-spacing: -.035em; }
.tk-hero__terms { margin-top: 22px !important; font-size: 28px; line-height: 1.3; font-weight: 700; }
.tk-hero .tk-button { margin-top: 26px; min-width: min(430px, 100%); }
.tk-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 66px; padding: 18px 28px; border-radius: 5px; background: var(--tk-blue); color: #fff; font-size: 18px; font-weight: 700; text-decoration: none; line-height: 1.3; transition: background 160ms ease-out; }
.tk-button svg { width: 24px; height: 24px; flex: 0 0 auto; }
.tk-button:hover { background: var(--tk-blue-hover); }
.tk-button--light { background: #fff; color: var(--tk-blue); }
.tk-button--light:hover { background: var(--tk-lilac); }
.tk-home .tk-fineprint { font-size: 14px; line-height: 1.5; }
.tk-hero .tk-fineprint { margin-top: 16px; max-width: 500px; }
.tk-fineprint a { color: inherit; }
.tk-hero__art { width: 145%; margin-left: -25% !important; pointer-events: none; }
.tk-hero__art img { display: block; width: 100%; height: auto; }
.tk-proof-strip { background: #f5f4f8; padding-block: 30px; }
.tk-proof-strip__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.tk-proof-strip p { display: flex; align-items: center; justify-content: center; gap: 26px; }
.tk-proof-strip strong { font-size: 52px; font-weight: 900; letter-spacing: -.035em; line-height: 1; }
.tk-proof-strip strong.tk-proof-strip__clever { font-size: 28px; }
/* Localized pages: on wide screens a longer caption must not squeeze "Clever Tiny Homes" onto two lines. */
@media (min-width: 901px) { .tk-home--localized .tk-proof-strip strong { flex-shrink: 0; } }
.tk-proof-strip span { border-left: 1px solid var(--tk-rule); padding-left: 26px; font-size: 16px; line-height: 1.4; }
.tk-footer { border-top: 1px solid var(--tk-rule); padding: 50px 0 24px; }
.tk-footer__main, .tk-footer__bottom { display: flex; justify-content: space-between; gap: 32px; }
.tk-footer__main p { margin-top: 15px; }
.tk-footer nav { display: flex; flex-wrap: wrap; gap: 28px; align-items: start; }
.tk-footer nav a { color: var(--tk-ink); font-size: 16px; }
.tk-footer__bottom { border-top: 1px solid var(--tk-rule); margin-top: 44px; padding-top: 22px; font-size: 14px; }
/* Country and language links on the home and get-started pages (all locales). */
.tk-footer nav.tk-footer__markets { margin-top: 36px; gap: 8px 22px; align-items: baseline; }
.tk-footer__markets p { flex-basis: 100%; font-size: 14px; font-weight: 700; }
.tk-footer nav.tk-footer__markets a { font-size: 14px; padding-block: 4px; }
.tk-footer__markets a[aria-current="page"] { color: var(--tk-blue); font-weight: 700; text-decoration: none; }
/* "(in English)" after a link to a page that has no translation. */
.tk-lang-note { font-size: .8em; font-weight: 400; white-space: nowrap; }
.tk-blue { display: block; color: var(--tk-blue); }
.tk-section { padding-block: 88px; }
.tk-section-lede { margin-top: 20px !important; font-size: 23px; }
.tk-icon { width: 30px; height: 30px; flex-shrink: 0; }
.tk-problem { display: grid; grid-template-columns: 71.5% 28.5%; background: var(--tk-blue); color: white; }
.tk-problem__main { padding: 56px 65px 60px max(56px, calc((100vw - 1440px) / 2)); }
.tk-problem h2 { font-size: clamp(42px, 5.2vw, 76px); max-width: 880px; line-height: 1.01; }
.tk-problem__intro { margin-top: 26px !important; font-size: 22px; max-width: 650px; }
.tk-problem__questions { display: grid; gap: 10px; margin: 25px 0; padding-left: 22px; font-size: 18px; }
.tk-problem__answer { max-width: 740px; line-height: 1.45; }
.tk-problem__answer strong { font-weight: 650; }
.tk-problem__continuity { margin-top: 14px !important; font-size: 16px; max-width: 710px; color: #e8e6ff; }
.tk-problem__bundle { background: var(--tk-coral); padding: 56px 40px; color: var(--tk-ink); display: flex; flex-direction: column; }
.tk-problem__bundle h3 { font-size: 27px; }
.tk-problem__bundle ul { list-style: none; padding: 0; margin-top: 28px; }
.tk-problem__bundle li { padding: 18px 0; border-top: 1px solid #191a2340; display: flex; gap: 20px; align-items: center; font-size: 18px; font-weight: 650; }
.tk-problem__bundle li:last-child { border-bottom: 1px solid #191a2340; }
.tk-problem__company { padding-top: 38px; margin-top: auto; }
.tk-problem__company > span { font-size: 16px; display: block; }
.tk-problem__company strong { display: block; font-size: 50px; font-weight: 900; letter-spacing: -.04em; }
.tk-problem__company strong span { font-size: 23px; }
.tk-bundle__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin-top: 34px; }
.tk-bundle__grid img { width: 100%; height: auto; display: block; }
.tk-bundle__text { padding: 20px 10px 0 0; }
.tk-bundle__text h3 { min-height: 64px; }
.tk-bundle__text p { margin-top: 18px; font-size: 17px; line-height: 1.55; }
.tk-bundle__grid article + article .tk-bundle__text { border-left: 1px solid var(--tk-rule); padding-left: 26px; }
.tk-bundle__summary { border-top: 1px solid var(--tk-rule); padding-top: 26px; margin-top: 38px !important; text-align: center; font-size: clamp(22px, 2.2vw, 30px); font-weight: 850; line-height: 1.25; letter-spacing: -.025em; }
.tk-demo { background: var(--tk-blue); color: white; }
.tk-demo__grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 50px; align-items: center; }
.tk-demo h2 { font-size: clamp(36px, 3.5vw, 50px); text-wrap: initial; }
.tk-demo__description { margin-top: 24px !important; font-size: 20px; line-height: 1.45; max-width: 520px; }
.tk-demo__benefits { padding: 0; list-style: none; margin: 24px 0; }
.tk-demo__benefits li { padding: 11px 0; border-bottom: 1px solid #ffffff40; font-size: 18px; }
.tk-demo__invitation { font-size: 18px; font-weight: 700; max-width: 430px; }
.tk-demo__affiliation { margin-top: 10px !important; font-size: 13px; color: var(--tk-lilac); }
.tk-demo__film { min-width: 0; }
.tk-demo__film img, .tk-demo__film video { display: block; width: 100%; aspect-ratio: 1440 / 811; object-fit: contain; background: var(--tk-lilac); }
.tk-demo__film figcaption { padding-top: 20px; }
.tk-demo__title { font-size: 20px; font-weight: 700; line-height: 1.35; max-width: 620px; }
.tk-demo__poster { display: block; width: 100%; position: relative; border: 0; padding: 0; cursor: pointer; color: white; background: var(--tk-ink); text-align: left; }
.tk-demo__play { position: absolute; top: calc((100% - 54px) / 2); left: 50%; transform: translate(-50%, -50%); display: grid; place-items: center; width: 92px; height: 68px; background: var(--tk-blue); border-radius: 7px; box-shadow: 0 6px 20px #191a2340; transition: background 160ms ease-out; }
.tk-demo__play svg { width: 35px; height: 35px; }
.tk-demo__poster:hover .tk-demo__play { background: var(--tk-blue-hover); }
.tk-demo__watch { display: flex; align-items: center; justify-content: space-between; padding: 15px 20px; gap: 20px; min-height: 54px; font-size: 16px; font-weight: 600; line-height: 1.5; }
.tk-demo__watch svg { width: 22px; height: 22px; flex-shrink: 0; }
.tk-demo__status { padding: 14px 0 0; font-size: 14px; }
.tk-examples { background: var(--tk-lilac); }
.tk-examples__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 42px 44px; margin-top: 44px; }
.tk-examples__heading { display: flex; align-items: center; gap: 15px; padding-bottom: 12px; border-bottom: 1px solid #b6afce; min-height: 65px; }
.tk-examples__heading h3 { font-size: 20px; font-weight: 750; letter-spacing: -.02em; }
.tk-example-icon { width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; border-radius: 4px; }
.tk-example-icon .tk-icon { width: 25px; height: 25px; }
.tk-example-icon--blue { background: var(--tk-blue); color: white; }
.tk-example-icon--coral { background: var(--tk-coral); color: var(--tk-ink); }
.tk-example-icon--lilac { background: #c1b5ef; color: var(--tk-ink); }
.tk-examples ul { list-style: none; padding: 0 0 0 57px; margin: 17px 0 0; }
.tk-examples li { font-size: 17px; line-height: 1.45; margin-bottom: 14px; }
.tk-home [hidden] { display: none !important; }
.tk-actions { display: flex; flex-wrap: wrap; gap: 18px; justify-content: center; margin-top: 44px; }
.tk-button--outline { border: 1px solid var(--tk-blue); background: transparent; color: var(--tk-ink); cursor: pointer; }
.tk-button--outline:hover { background: #f2eeff; }
.tk-button--outline[aria-expanded="true"] svg { transform: rotate(45deg); }
.tk-examples__note { text-align: center; margin: 24px auto 0 !important; max-width: 850px; }
.tk-evidence__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 38px; }
.tk-case { min-width: 0; padding: 32px; border-radius: 7px; overflow: hidden; }
.tk-case--bht { background: #dcd7f8; }
.tk-case--clever { border: 1.5px solid var(--tk-coral); }
.tk-case h3 { font-size: clamp(30px, 3vw, 42px); }
.tk-case--bht h3 { font-size: 54px; }
.tk-case__archive { display: grid; grid-template-columns: 51% 49%; align-items: center; margin-top: 20px; }
.tk-case .tk-case__number { font-size: 116px; letter-spacing: -.055em; color: var(--tk-blue); font-weight: 900; line-height: 1; }
.tk-case h4 { font-size: 25px; line-height: 1.12; font-weight: 800; letter-spacing: -.025em; }
.tk-case p { font-size: 16px; line-height: 1.5; }
.tk-case__archive p:last-child { margin-top: 24px; }
.tk-case__archive img { width: 110%; max-width: none; margin-left: 0; }
.tk-case__conclusion { font-weight: 750; padding-top: 24px; margin-top: 24px !important; border-top: 1px solid #b6afce; }
.tk-case__affiliation { margin-top: 7px !important; }
.tk-case--clever h4 { margin-top: 24px; font-size: 30px; max-width: 410px; }
.tk-case--clever > p:not(.tk-case__affiliation) { margin-top: 17px; }
.tk-case--clever > img { display: block; width: 80%; height: auto; margin: 4px auto -22px; }
.tk-pricing { background: var(--tk-blue); color: #fff; }
.tk-pricing__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 52px; margin-top: 44px; align-items: start; }
.tk-pricing .tk-price { font-size: clamp(70px, 7vw, 104px); }
.tk-pricing__company { font-size: 25px; line-height: 1.2; margin-top: 16px !important; }
.tk-pricing__features { list-style: none; padding: 0; display: grid; gap: 10px; margin: 26px 0 30px; }
.tk-pricing__features li { display: flex; align-items: center; gap: 13px; font-size: 20px; }
.tk-pricing__features li::before { content: ""; display: block; width: 20px; height: 20px; background: var(--tk-lilac); clip-path: polygon(0 45%, 15% 30%, 40% 55%, 85% 7%, 100% 22%, 41% 85%); }
.tk-pricing__offer .tk-fineprint { margin-top: 16px; max-width: 380px; }
.tk-comparison { padding: 28px; border-radius: 7px; color: var(--tk-ink); background: white; }
.tk-comparison h3 { font-size: 26px; line-height: 1.15; }
.tk-comparison table { width: 100%; border-collapse: collapse; margin: 24px 0 22px; font-variant-numeric: tabular-nums; }
.tk-comparison th, .tk-comparison td { text-align: left; padding: 16px 12px; font-size: 18px; line-height: 1.35; border-top: 1px solid var(--tk-rule); }
.tk-comparison thead th { font-size: 14px; font-weight: 600; color: #575166; padding-top: 10px; padding-bottom: 10px; }
.tk-comparison tbody th { font-weight: 450; }
.tk-comparison td { text-align: right; font-size: 24px; white-space: nowrap; font-weight: 700; }
.tk-comparison tfoot { background: var(--tk-coral); }
.tk-comparison tfoot th { font-weight: 750; border: 0; }
.tk-comparison tfoot td { font-size: 53px; font-weight: 900; letter-spacing: -.04em; border: 0; }
.tk-comparison .tk-fineprint { font-size: 13px; }
.tk-comparison .tk-fineprint + .tk-fineprint { margin-top: 10px; }
.tk-pricing__included { display: flex; gap: 36px; justify-content: space-between; align-items: center; border-top: 1px solid #ffffff70; margin-top: 38px; padding-top: 24px; }
.tk-pricing__included p { font-size: 26px; line-height: 1.3; }
.tk-pricing__included strong { font-weight: 850; }
.tk-pricing__included > span { font-size: 14px; max-width: 235px; padding-left: 26px; border-left: 1px solid #ffffff70; }
.tk-setup__rows { display: grid; gap: 19px; margin-top: 40px; padding-right: 18px; }
.tk-service { display: grid; grid-template-columns: 26% 54% 20%; position: relative; isolation: isolate; min-height: 165px; }
.tk-service::after, .tk-service-total::after { content: ""; position: absolute; top: 0; left: 100%; width: 18px; height: 100%; transform: skewY(30deg); transform-origin: top left; background: var(--tk-side); }
.tk-service--coral { background: #ffe1d7; --tk-face: var(--tk-coral); --tk-side: #ec694c; }
.tk-service--lilac { background: #eeebfb; --tk-face: var(--tk-lilac); --tk-side: #b8aaea; }
.tk-service__hours { background: var(--tk-face); display: flex; align-items: center; justify-content: center; gap: 10px; font-size: 79px; font-weight: 900; letter-spacing: -.04em; line-height: 1; }
.tk-service__hours span { font-size: 45px; }
.tk-service__description { padding: 26px 28px; }
.tk-service__description h3 { font-size: 25px; }
.tk-service__description p { font-size: 17px; margin-top: 12px; line-height: 1.45; }
.tk-service__price { padding: 24px; display: flex; flex-direction: column; justify-content: center; border-left: 1px solid #ffffff; }
.tk-service__price span { font-size: 14px; line-height: 1.25; }
.tk-service__price strong { font-size: 39px; letter-spacing: -.04em; font-weight: 900; margin-top: 8px; line-height: 1; }
.tk-service-total { position: relative; display: grid; grid-template-columns: 60% 40%; padding: 24px 32px; align-items: center; color: white; background: var(--tk-blue); --tk-side: #211d99; }
.tk-service-total p:first-child { display: flex; gap: 22px; align-items: center; }
.tk-service-total strong { font-size: 60px; letter-spacing: -.04em; line-height: 1; font-weight: 900; }
.tk-service-total span { max-width: 225px; line-height: 1.25; font-size: 22px; font-weight: 650; }
.tk-service-total p:last-child { border-left: 1px solid #ffffff80; padding-left: 28px; font-size: 25px; font-weight: 800; line-height: 1.25; }
.tk-setup__scope { margin-top: 32px !important; max-width: 940px; font-size: 17px; }
.tk-guarantee { border-top: 1px solid var(--tk-rule); padding-top: 28px; margin-top: 32px; }
.tk-guarantee p { margin-top: 14px; max-width: 1040px; }
.tk-guarantee a { display: inline-block; margin-top: 13px; font-size: 15px; color: var(--tk-blue); }
.tk-close { background: var(--tk-blue); color: white; overflow: clip; }
.tk-close__grid { display: grid; grid-template-columns: 63% 37%; align-items: center; }
.tk-close h2 { font-size: clamp(38px, 4.5vw, 64px); }
.tk-close__lede { margin-top: 24px !important; max-width: 680px; font-size: 19px; }
.tk-close__price { display: flex; align-items: center; gap: 22px; margin-top: 30px; }
.tk-close__price .tk-price { font-size: 64px; }
.tk-close__price > p:last-child { font-size: 16px; line-height: 1.3; border-left: 1px solid #ffffff80; padding-left: 22px; max-width: 245px; }
.tk-close .tk-button { margin-top: 26px; min-width: 420px; }
.tk-close .tk-fineprint { margin-top: 17px; }
.tk-close img { width: 125%; max-width: none; margin-left: -10%; }
/* Localized pages: the image reaches 10% into the text column. Keep a long headline ("…com ajuda para") in front of it. */
.tk-home--localized .tk-close__grid > div { position: relative; z-index: 1; }
.tk-faq h2 { margin-bottom: 32px; }
.tk-faq details { border-bottom: 1px solid var(--tk-rule); scroll-margin-top: 24px; }
.tk-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding-block: 22px; font-size: 21px; line-height: 1.35; font-weight: 650; cursor: pointer; list-style: none; }
.tk-faq summary::-webkit-details-marker { display: none; }
.tk-faq summary::after { content: ""; width: 22px; height: 22px; flex-shrink: 0; background: currentColor; clip-path: polygon(45% 0, 55% 0, 55% 45%, 100% 45%, 100% 55%, 55% 55%, 55% 100%, 45% 100%, 45% 55%, 0 55%, 0 45%, 45% 45%); }
.tk-faq details[open] summary::after { transform: rotate(45deg); }
.tk-faq summary:hover { color: var(--tk-blue); }
.tk-faq__answer { padding-bottom: 24px; max-width: 950px; font-size: 18px; line-height: 1.6; }
.tk-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (min-width: 1600px) { .tk-hero h1 { font-size: 100px; } }
@media (max-width: 1100px) {
  .tk-shell { width: calc(100% - 64px); }
  .tk-hero h1 { font-size: 6.2vw; }
  .tk-proof-strip__inner { gap: 20px; }
  .tk-proof-strip p { gap: 18px; }
  .tk-proof-strip span { padding-left: 18px; font-size: 14px; }
  .tk-section { padding-block: 64px; }
  .tk-problem__main { padding: 44px 32px; }
  .tk-problem__bundle { padding: 44px 25px; }
  .tk-problem__bundle h3 { font-size: 24px; }
  .tk-problem__bundle li { gap: 12px; font-size: 16px; }
  .tk-problem__company strong { font-size: 42px; }
  .tk-problem__company strong span { font-size: 19px; }
  .tk-bundle__grid { gap: 22px; }
  .tk-bundle__text h3 { font-size: 24px; }
  .tk-bundle__grid article + article .tk-bundle__text { padding-left: 18px; }
  .tk-examples__grid { gap: 28px; grid-template-columns: 1fr 1fr; }
  .tk-case { padding: 25px; }
  .tk-case__archive { display: block; }
  .tk-case__archive img { width: 90%; margin: -15px auto; }
  .tk-case__conclusion { margin-top: 10px !important; }
  .tk-case--clever > img { width: 100%; margin-top: 30px; }
  .tk-pricing__grid { gap: 30px; grid-template-columns: 1fr 1.1fr; }
  .tk-comparison { padding: 22px; }
  .tk-pricing .tk-price { font-size: 74px; }
  .tk-comparison tfoot td { font-size: 40px; }
  .tk-service { grid-template-columns: 25% 52% 23%; }
  .tk-service__hours { font-size: 62px; gap: 7px; }
  .tk-service__hours span { font-size: 32px; }
  .tk-service__description { padding: 22px; }
  .tk-service__price { padding: 20px; }
  .tk-service-total { padding: 22px; }
  .tk-service-total strong { font-size: 48px; }
  .tk-service-total span { font-size: 18px; }
  .tk-service-total p:last-child { font-size: 21px; }
  .tk-close__price { flex-wrap: wrap; gap: 18px; }
  .tk-close__price > p:last-child { border: 0; padding-left: 0; max-width: none; }
}
@media (max-width: 900px) {
  .tk-shell { width: calc(100% - 40px); }
  .tk-nav { min-height: 82px; }
  .tk-wordmark { font-size: 30px; }
  .tk-nav__links, .tk-login { display: none; }
  .tk-mobile-nav { display: block; position: relative; }
  .tk-mobile-nav summary { cursor: pointer; padding: 12px 0 12px 16px; font-weight: 600; }
  .tk-mobile-nav nav { position: absolute; right: 0; top: 48px; z-index: 5; width: 220px; padding: 12px 20px; background: white; box-shadow: 0 12px 28px #191a2320; }
  .tk-mobile-nav a { display: block; padding: 12px 0; color: var(--tk-ink); text-decoration: none; }
  .tk-hero { padding-top: 20px; padding-bottom: 22px; }
  .tk-hero__grid { display: flex; flex-direction: column; }
  .tk-hero__copy { width: 100%; }
  .tk-hero h1 { font-size: clamp(32px, 10.7vw, 70px); margin-bottom: 22px; }
  .tk-hero__lede { font-size: 21px; max-width: 600px; }
  .tk-price { font-size: 49px; }
  .tk-hero__terms { margin-top: 20px !important; font-size: 24px; }
  .tk-hero .tk-button { margin-top: 22px; }
  .tk-button { font-size: 16px; padding-inline: 21px; min-height: 60px; width: 100%; max-width: 430px; gap: 16px; }
  .tk-hero__art { width: 112%; margin: 20px -6% 0 !important; }
  .tk-proof-strip { padding: 24px 0; }
  .tk-proof-strip__inner { grid-template-columns: 1fr; gap: 22px; }
  .tk-proof-strip p { justify-content: start; }
  .tk-proof-strip strong { width: 47%; font-size: 43px; }
  .tk-proof-strip strong.tk-proof-strip__clever { font-size: 22px; }
  .tk-proof-strip span { padding-block: 3px; }
  .tk-footer__main, .tk-footer__bottom { flex-direction: column; gap: 24px; }
  .tk-footer__bottom { gap: 8px; }
  .tk-home { font-size: 17px; }
  .tk-section { padding-block: 50px; }
  .tk-home h2 { font-size: 38px; }
  .tk-section-lede { font-size: 19px; line-height: 1.4; }
  .tk-problem { grid-template-columns: 1fr; }
  .tk-problem__main { padding: 42px 20px; }
  .tk-problem h2 { font-size: 44px; }
  .tk-problem__intro { font-size: 20px; }
  .tk-problem__questions { font-size: 17px; gap: 13px; }
  .tk-problem__bundle { padding: 30px 20px; }
  .tk-problem__bundle ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; margin-top: 24px; }
  .tk-problem__bundle li { font-size: 15px; }
  .tk-problem__bundle li:last-child { border-bottom: 0; }
  .tk-problem__company { display: flex; gap: 15px; align-items: baseline; padding-top: 20px; }
  .tk-bundle__grid { grid-template-columns: 1fr; gap: 32px; margin-top: 20px; }
  .tk-bundle__grid img { max-width: 430px; margin-inline: auto; }
  .tk-bundle__text { padding: 5px 0 0; }
  .tk-bundle__text h3 { min-height: 0; font-size: 29px; }
  .tk-bundle__grid article + article .tk-bundle__text { border: 0; padding-left: 0; }
  .tk-bundle__text p { margin-top: 14px; }
  .tk-bundle__summary { text-align: left; font-size: 25px; }
  .tk-demo__grid { grid-template-columns: 1fr; gap: 28px; }
  .tk-demo__description { font-size: 18px; margin-top: 20px !important; }
  .tk-demo__title { font-size: 18px; }
  .tk-demo__benefits li, .tk-demo__invitation { font-size: 17px; }
  .tk-demo__play { width: 76px; height: 56px; }
  .tk-demo__watch { font-size: 14px; padding-inline: 16px; }
  .tk-examples__grid { grid-template-columns: 1fr; gap: 24px; margin-top: 26px; }
  .tk-examples__heading { min-height: 0; }
  .tk-examples__heading h3 { font-size: 20px; }
  .tk-actions { margin-top: 28px; gap: 12px; }
  .tk-examples__note { text-align: left; }
  .tk-evidence__grid { grid-template-columns: 1fr; gap: 22px; margin-top: 28px; }
  .tk-case { padding: 24px; }
  .tk-case__archive { display: grid; grid-template-columns: 1fr; }
  .tk-case__archive img { width: 100%; margin: 0; }
  .tk-case .tk-case__number { font-size: 104px; }
  .tk-case h4 { max-width: 260px; }
  .tk-case--clever h3 { font-size: 32px; }
  .tk-case--clever h4 { font-size: 28px; max-width: none; }
  .tk-case--clever > img { margin-top: 5px; }
  .tk-pricing__grid { grid-template-columns: 1fr; margin-top: 30px; }
  .tk-pricing .tk-price { font-size: 80px; }
  .tk-pricing__company { font-size: 24px; }
  .tk-pricing__features li { font-size: 19px; }
  .tk-comparison { padding: 22px 18px; }
  .tk-comparison h3 { font-size: 24px; }
  .tk-comparison th { font-size: 16px; padding-inline: 8px; }
  .tk-comparison td { font-size: 23px; padding-inline: 8px; }
  .tk-comparison tfoot td { font-size: 39px; }
  .tk-pricing__included { flex-direction: column; align-items: start; gap: 16px; }
  .tk-pricing__included p { font-size: 25px; }
  .tk-pricing__included > span { border: 0; padding: 0; max-width: none; }
  .tk-setup__rows { gap: 22px; padding-right: 10px; margin-top: 28px; }
  .tk-service { grid-template-columns: 1fr; }
  .tk-service::after, .tk-service-total::after { width: 10px; }
  .tk-service__hours { justify-content: start; padding: 22px; font-size: 68px; }
  .tk-service__hours span { font-size: 42px; }
  .tk-service__description { padding: 24px 22px 16px; }
  .tk-service__description h3 { font-size: 27px; }
  .tk-service__price { border: 0; flex-direction: row; align-items: center; justify-content: space-between; padding: 10px 22px 24px; gap: 22px; }
  .tk-service__price span { max-width: 125px; }
  .tk-service__price strong { font-size: 37px; margin: 0; }
  .tk-service-total { grid-template-columns: 1fr; gap: 22px; padding: 26px 22px; }
  .tk-service-total p:first-child { align-items: start; flex-direction: column; gap: 12px; }
  .tk-service-total strong { font-size: 62px; }
  .tk-service-total span { font-size: 22px; max-width: none; }
  .tk-service-total p:last-child { border-left: 0; border-top: 1px solid #ffffff80; padding: 20px 0 0; font-size: 23px; }
  .tk-guarantee h3 { font-size: 28px; }
  .tk-close__grid { grid-template-columns: 1fr; }
  .tk-close__lede { font-size: 18px; }
  .tk-close__price .tk-price { font-size: 62px; }
  .tk-close .tk-button { min-width: 0; }
  .tk-close img { width: 110%; margin: 22px -5% -15px; }
  .tk-faq summary { font-size: 18px; padding-block: 21px; gap: 20px; }
  .tk-faq__answer { font-size: 17px; }
}
/* Localized home pages: a long amount (COP$299.900/mes, COP$3.723.538, US$2,500) shrinks until
   it fits its box. marketing/_page sets the class and the text widths in em (--tk-price-em,
   --tk-difference-em, --tk-setup-em). A short amount fits at the design size, so min() keeps it. */
.tk-home--localized :is(.tk-pricing__offer, .tk-close__price, .tk-problem__company, .tk-comparison, .tk-service-total) { container-type: inline-size; }
.tk-home--localized .tk-pricing .tk-price { font-size: min(clamp(70px, 7vw, 104px), 100cqi / var(--tk-price-em)); }
.tk-home--localized .tk-close__price .tk-price { font-size: min(64px, 100cqi / var(--tk-price-em)); }
.tk-home--localized .tk-problem__company strong { font-size: min(50px, 100cqi / var(--tk-price-em)); }
.tk-home--localized .tk-problem__company strong span { font-size: min(23px, .46em); }
/* The row label ("Monthly price difference") keeps about 116px: its longest word plus the cell padding. */
.tk-home--localized .tk-comparison tfoot td { font-size: min(53px, (100cqi - 116px) / var(--tk-difference-em)); }
@media (max-width: 1100px) {
  .tk-home--localized .tk-pricing .tk-price { font-size: min(74px, 100cqi / var(--tk-price-em)); }
  .tk-home--localized .tk-problem__company strong { font-size: min(42px, 100cqi / var(--tk-price-em)); }
  .tk-home--localized .tk-problem__company strong span { font-size: min(19px, .46em); }
  .tk-home--localized .tk-comparison tfoot td { font-size: min(40px, (100cqi - 116px) / var(--tk-difference-em)); }
}
@media (max-width: 900px) {
  .tk-home--localized .tk-pricing .tk-price { font-size: min(80px, 100cqi / var(--tk-price-em)); }
  .tk-home--localized .tk-close__price .tk-price { font-size: min(62px, 100cqi / var(--tk-price-em)); }
  /* On phones the label "One plan for the whole company." shares the row. Keep about 100px for it. */
  .tk-home--localized .tk-problem__company strong { font-size: min(42px, (100cqi - 100px) / var(--tk-price-em)); }
  .tk-home--localized .tk-comparison tfoot td { font-size: min(39px, (100cqi - 116px) / var(--tk-difference-em)); }
  .tk-home--localized .tk-comparison tbody td { font-size: min(23px, (100cqi - 116px) / var(--tk-difference-em)); }
  /* "US$1,750" is wider than "$1,750" and does not fit beside its label. Put the label above the price in every card. */
  .tk-home--localized .tk-service__price { flex-direction: column; align-items: start; gap: 8px; }
  .tk-home--localized .tk-service__price span { max-width: none; }
  /* The package total (US$2,500) sits alone on its line here. */
  .tk-home--localized .tk-service-total strong { font-size: min(62px, 100cqi / var(--tk-setup-em)); }
  /* Balance a wrapped button label, so one word ("saya") does not sit alone on line two. */
  .tk-home--localized .tk-button { text-wrap: balance; }
}
/* On the narrowest phones a long word such as "perkembangan" must not push the page sideways. */
@media (max-width: 360px) { .tk-home--localized :is(h2, h3) { overflow-wrap: anywhere; } }
@media (prefers-reduced-motion: reduce) { .tk-home * { transition: none; scroll-behavior: auto; } }
