/* Shared layouts for the homepage and service catalogue. */
.tk-section { padding:4.5rem 0; }
.tk-section h2 { font-size:clamp(1.6rem,2.5vw,2.15rem); line-height:1.2; font-weight:750; letter-spacing:-.025em; }
.tk-section-head { align-items:center; }
.tk-section-head p { max-width:720px; margin:.85rem 0 0; line-height:1.7; }
.tk-section-head .tk-link { flex-shrink:0; }
.tk-page-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.75rem; }
.page-header h1 { line-height:1.15; letter-spacing:-.025em; }
.page-header-sub { color:#c7d3e5; }
.page-header .breadcrumb-item, .page-header .breadcrumb-item a, .page-header .breadcrumb-item.active { color:#b7c7de!important; }
[id] { scroll-margin-top:105px; }
.tk-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.tk-plan-grid-1 { grid-template-columns:minmax(0,1fr); max-width:460px; margin-inline:auto; }
.tk-plan-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:920px; margin-inline:auto; }
.tk-plan-grid .tk-pricing { min-width:0; }
.tk-pricing-head { position:relative; padding-top:2.1rem; }
.tk-pricing-head h3 { font-size:1.2rem; line-height:1.35; margin-bottom:.5rem; }
.tk-pricing-head .sub { line-height:1.65; min-height:2.6em; font-size:.88rem; }
.tk-pricing-badge { position:absolute; top:0; right:1.5rem; border-radius:0 0 6px 6px; margin:0; }
.tk-pricing-amount { align-items:baseline; flex-wrap:wrap; gap:.18rem; }
.tk-pricing-amount .currency, .tk-pricing-amount .period { padding-bottom:0; }
.tk-pricing-amount .period { margin-left:.25rem; }
.tk-plan-button { display:flex; justify-content:center; width:100%; text-align:center; line-height:1.45; }
.tk-pricing-renewal { color:var(--tk-muted); font-size:.9rem; line-height:1.65; margin:1.2rem 0 0; }
.tk-pricing-renewal strong { color:var(--tk-text); }
.tk-plan-note { color:var(--tk-muted); font-size:.86rem; line-height:1.7; margin:1.5rem 0 0; max-width:900px; }
.tk-details-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4rem; }
.tk-details-grid p, .tk-offer-copy p { color:var(--tk-muted); line-height:1.8; }
.tk-details-grid h2, .tk-offer-copy h2 { margin-bottom:1.25rem; }
.tk-help-strip, .tk-domain-strip { display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.tk-help-strip { border:1px solid var(--tk-border); border-radius:var(--tk-radius); padding:2rem; background:var(--tk-light); }
.tk-help-strip p, .tk-domain-strip p { color:var(--tk-muted); line-height:1.7; max-width:680px; margin:.75rem 0 0; }
.tk-help-strip > a, .tk-domain-strip > a { flex-shrink:0; }
.tk-offer-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); align-items:start; gap:4.5rem; }
.tk-offer-plan .tk-pricing { height:auto; }
.tk-offer-plan h2.tk-label { font-size:.75rem; letter-spacing:.1em; margin-bottom:1rem; }
.tk-benefit-list { list-style:none; margin:1.75rem 0; padding:0; }
.tk-benefit-list li { display:grid; gap:.35rem; padding:1.1rem 0; border-top:1px solid var(--tk-border); }
.tk-benefit-list strong { font-size:1.02rem; }
.tk-benefit-list span { color:var(--tk-muted); line-height:1.7; }
.tk-step-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2.5rem; }
.tk-step-grid h3 { font-size:1.15rem; font-weight:700; line-height:1.35; margin-bottom:.75rem; }
.tk-step-grid p { color:var(--tk-muted); line-height:1.8; margin:0; font-size:.95rem; }
.tk-step-number { display:block; color:var(--tk-indigo); font-size:.9rem; font-weight:750; padding-bottom:1rem; }
.tk-home .tk-hero { padding:5rem 0 4.5rem; }
.tk-home .tk-hero-headline { font-size:clamp(2.5rem,4.8vw,3.8rem); }
.tk-home .tk-hero-headline span, .tk-home .tk-hero .tk-label { color:#a9c7ff; }
.tk-home .tk-hero-sub { color:#c7d3e5; margin-bottom:1.75rem; }
.tk-home .tk-hero-globe { max-width:380px; margin-inline:auto; }
.tk-hero-price { margin:1.5rem 0 0; color:#c7d3e5; font-size:.87rem; }
.tk-hero-price strong { color:#fff; font-weight:650; }
.tk-trust-strip { background:var(--tk-light); border-bottom:1px solid var(--tk-border); }
.tk-trust-strip > div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:1rem; padding-top:1.2rem; padding-bottom:1.2rem; }
.tk-trust-strip a { display:inline-flex; align-items:center; gap:.6rem; color:var(--tk-muted); font-size:.8rem; text-decoration:none; }
.tk-trust-strip i { color:var(--tk-indigo); }
.tk-home-service { display:flex; flex-direction:column; padding:1.85rem; }
.tk-home-service h3 { font-size:1.25rem; font-weight:700; margin-bottom:.75rem; }
.tk-home-service p { color:var(--tk-muted); font-size:.95rem; line-height:1.75; margin-bottom:1.5rem; }
.tk-home-service-price { color:var(--tk-muted); margin-top:auto; margin-bottom:1.2rem; font-size:.82rem; }
.tk-home-service-price strong { font-size:1.8rem; color:var(--tk-text); letter-spacing:-.03em; }
.tk-home-service .tk-sc-link { padding-top:1rem; border-top:1px solid var(--tk-border); font-size:.87rem; }
.tk-service-links { display:flex; flex-wrap:wrap; gap:.65rem 1.35rem; margin-top:1.75rem; font-size:.88rem; }
.tk-service-links span { color:var(--tk-muted); }
.tk-service-links a { color:var(--tk-indigo); text-underline-offset:3px; }
.tk-business-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.tk-business-card { display:flex; flex-direction:column; align-items:flex-start; padding:2.2rem; background:#fff; border:1px solid var(--tk-border); border-radius:var(--tk-radius); }
.tk-business-card h3 { font-size:1.5rem; font-weight:700; margin-bottom:1rem; }
.tk-business-card > p { color:var(--tk-muted); line-height:1.75; }
.tk-business-card .tk-business-price { color:var(--tk-text); margin:1rem 0 .2rem; font-size:.9rem; }
.tk-business-price strong { font-size:2.3rem; letter-spacing:-.03em; }
.tk-business-card .tk-business-term { font-size:.85rem; margin-bottom:1.5rem; }
.tk-business-card > a { margin-top:auto; }
.tk-home-why .tk-step-grid h3 { color:#fff; }
.tk-home-why .tk-step-grid p { color:#c7d3e5; }
.tk-home-why .tk-step-grid a { color:#b7d2ff; display:inline-block; margin-top:1rem; font-size:.9rem; text-underline-offset:4px; }
.tk-home-why .tk-step-grid a i { margin-left:.4rem; font-size:.75rem; }
.tk-footer .tk-site-logo { width:112px; }
.tk-stats-three { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.tk-stats-three .tk-stat-item { min-width:0; padding:1.2rem .4rem; }
.navbar-toggler { padding:.65rem; border:0; }
.navbar-toggler-icon { display:flex; flex-direction:column; align-items:center; justify-content:center; background:none; }
.navbar-toggler-bar { height:2px; }
.navbar-toggler-bar + .navbar-toggler-bar { margin-top:5px; }
@media (max-width:991px) {
  .tk-home .tk-hero { padding:3.5rem 0; }
  .tk-home .tk-hero .col-lg-5 { display:none; }
  .tk-home .tk-hero-headline { max-width:680px; }
  .tk-home .tk-hero-sub { max-width:620px; }
  .tk-service-grid:has(.tk-home-service) { grid-template-columns:1fr; }
  .tk-details-grid, .tk-offer-layout { gap:2rem; }
  .tk-business-card { padding:1.6rem; }
  .tk-plan-grid { gap:1rem; }
  .tk-pricing-head, .tk-pricing-body { padding-left:1.25rem; padding-right:1.25rem; }
  .tk-pricing-foot { padding-left:1.25rem; padding-right:1.25rem; }
  .tk-help-strip, .tk-domain-strip { align-items:flex-start; flex-direction:column; }
}
@media (max-width:767px) {
  .tk-domain-featured { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tk-stats-three .tk-stat-num { font-size:1.5rem; }
  .tk-section { padding:3rem 0; }
  .page-header { padding:2.5rem 0!important; }
  .page-header h1 { font-size:2rem; }
  .page-header-sub { font-size:1rem; line-height:1.7; }
  .tk-home .tk-hero-headline { font-size:2.65rem; }
  .tk-home .tk-hero-sub { font-size:1rem; }
  .tk-plan-grid, .tk-details-grid, .tk-offer-layout, .tk-business-grid, .tk-step-grid { grid-template-columns:minmax(0,1fr); }
  .tk-plan-grid { gap:1.25rem; }
  .tk-step-grid { gap:2rem; }
  .tk-section-head .tk-link { margin-top:1rem; }
  .tk-trust-strip > div { justify-content:flex-start; gap:.8rem; }
  .tk-trust-strip a { flex-basis:100%; }
  .tk-help-strip { padding:1.5rem; }
  .tk-service-links { gap:.75rem 1rem; }
  .tk-section .tk-section-head { display:block; margin-bottom:1.75rem; }
}
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}

/* Purposeful homepage and service illustration, October 2026. */
.tk-home .tk-hero { background:#142139; padding:80px 0; }
.tk-home .tk-hero::before,.tk-home .tk-hero::after { display:none; }
.tk-home .tk-hero-headline { font-size:clamp(2.8rem,5.2vw,4.7rem); line-height:1.06; letter-spacing:-.05em; }
.tk-hosting-board { border-top:3px solid #4d83f3; padding-top:1.4rem; }
.tk-board-caption { color:#b8c9e3; font-size:.75rem; text-transform:uppercase; letter-spacing:.12em; padding-bottom:1rem; }
.tk-hosting-board > a { display:grid; grid-template-columns:2rem 1fr 1rem; align-items:center; gap:1rem; color:white; text-decoration:none; padding:1.6rem 0; border-bottom:1px solid #3a4860; }
.tk-hosting-board > a:hover strong { color:#accbff; }
.tk-board-number { color:#a4b8d9; font-size:.75rem; }
.tk-hosting-board strong { display:block; font-size:1.15rem; line-height:1.4; }
.tk-hosting-board small { display:block; color:#c5d2e5; margin-top:.35rem; font-size:.85rem; }
.tk-hosting-board > p { color:#c5d2e5; font-size:.85rem; margin:1.4rem 0 0; line-height:1.8; }
.tk-hosting-board p a { color:#b6d0ff; text-decoration:underline; text-underline-offset:4px; }
.tk-example-layout { display:grid; grid-template-columns:1fr 1.2fr; gap:4rem; align-items:center; }
.tk-example-layout > div > h2 { font-size:clamp(1.8rem,3vw,2.5rem); margin:1rem 0; }
.tk-example-layout p { line-height:1.8; color:#526078; }
.tk-example-disclaimer { font-size:.8rem; border-left:2px solid #b6c8e1; padding-left:1rem; margin-top:1.5rem; }
.tk-site-example { background:#f2f0e9; border:1px solid #d9ddd8; border-radius:8px; box-shadow:0 22px 50px #14213912; overflow:hidden; color:#203c36; }
.tk-example-nav { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.5rem; border-bottom:1px solid #d2d8d0; }
.tk-example-nav span { font-size:.65rem; }
.tk-example-intro { padding:2.5rem 2rem; }
.tk-example-intro > span:first-child { text-transform:uppercase; letter-spacing:.1em; font-size:.65rem; }
.tk-example-intro h3 { font-size:clamp(1.7rem,3vw,2.5rem); color:#203c36; line-height:1.12; margin:1rem 0; }
.tk-example-intro p { font-size:.8rem; max-width:23rem; color:#435b54; }
.tk-example-button { display:inline-block; background:#203c36; color:white; border-radius:3px; padding:.8rem 1rem; font-size:.75rem; margin-top:.5rem; }
.tk-example-details { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #d2d8d0; }
.tk-example-details > div { padding:1.2rem; border-right:1px solid #d2d8d0; }
.tk-example-details strong,.tk-example-details span { display:block; font-size:.75rem; }
.tk-example-details span { font-size:.65rem; margin-top:.5rem; }
@media(max-width:991px) { .tk-example-layout { grid-template-columns:1fr; gap:2rem; } .tk-hosting-board { margin-top:1rem; } }
@media(max-width:575px) { .tk-home .tk-hero { padding:3.5rem 0; } .tk-example-nav { padding:1rem; } .tk-example-nav span { max-width:7rem; text-align:right; } .tk-example-intro { padding:2rem 1rem; } .tk-example-details > div { padding:.9rem .65rem; } }
