/* To-TeMeble – tylko landing lokalny; bez nadpisywania styli Joomla/Helix. */
.tt-local {
  --tt-ink: #12221e; --tt-green: #006b58; --tt-green-deep: #053e33;
  --tt-cream: #f5f6f1; --tt-mint: #e8f3ef; --tt-muted: #586c65;
  --tt-border: rgba(8, 86, 69, .13); --tt-shadow: 0 18px 45px rgba(9, 54, 43, .09);
  --tt-gutter: clamp(18px, 2.5vw, 32px);
  color: var(--tt-ink); font-family: "Open Sans", Arial, sans-serif;
  width: 100%; max-width: 100%; min-width: 0; line-height: 1.65;
}
.tt-local, .tt-local *, .tt-local *::before, .tt-local *::after { box-sizing: border-box; }
.tt-local__container { width: 100%; max-width: 1320px; padding-inline: var(--tt-gutter); margin-inline: auto; }
.tt-local__eyebrow { font-size: .71rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: var(--tt-green); margin: 0 0 16px; }
.tt-local h1, .tt-local h2, .tt-local h3 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; color: var(--tt-ink); letter-spacing: -.035em; text-wrap: balance; }
.tt-local h2 { font-size: clamp(32px, 3.5vw, 52px); line-height: 1.1; margin: 0 0 16px; }
.tt-local h3 { font-size: clamp(23px, 2.1vw, 31px); line-height: 1.15; margin: 0 0 12px; }
.tt-local p { margin-block: 0 14px; }
.tt-local a { color: inherit; }
.tt-local .tt-local__button { display: inline-flex; align-items: center; justify-content: center; gap: 15px; min-height: 48px; padding: 12px 24px; border-radius: 100px; font-size: .88rem; font-weight: 750; line-height: 1.35; text-decoration: none; transition: transform .2s ease, color .2s ease, background .2s ease, box-shadow .2s ease; }
.tt-local .tt-local__button:hover { transform: translateY(-2px); text-decoration: none; }
.tt-local .tt-local__button:focus-visible, .tt-local a:focus-visible, .tt-local summary:focus-visible { outline: 3px solid #ecbb6c; outline-offset: 4px; }
.tt-local .tt-local__button--primary { background: var(--tt-green); color: white; box-shadow: 0 7px 18px rgba(0,107,88,.16); }
.tt-local .tt-local__button--primary:hover { background: var(--tt-green-deep); color: white; }
.tt-local .tt-local__button--ghost { border: 1px solid var(--tt-border); background: #fff; }
.tt-local .tt-local__button--light { background: #fff; color: var(--tt-green-deep); }
.tt-local .tt-local__button--light:hover { color: var(--tt-green-deep); }
.tt-local .tt-local__section { padding-block: clamp(55px, 6vw, 98px); }
.tt-local .tt-local__section-head { margin-bottom: clamp(28px, 3vw, 42px); }
.tt-local .tt-local__lead { font-size: clamp(16px, 1.2vw, 19px); line-height: 1.7; max-width: 760px; color: var(--tt-muted); }
.tt-local .tt-local__kicker { color: var(--tt-green); font-size: .75rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 14px; }
.tt-local .tt-local__card { padding: clamp(24px, 3vw, 37px); background: #fff; border: 1px solid var(--tt-border); border-radius: 20px; box-shadow: var(--tt-shadow); }
.tt-local .tt-local__muted { color: var(--tt-muted); }
.tt-local .tt-local__grid { display: grid; gap: 20px; }
.tt-local .tt-local__grid--3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.tt-local .tt-local__grid--2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.tt-local .tt-local__tick { display: inline-flex; align-items: center; gap: 8px; }
.tt-local .tt-local__tick:before { content: "✓"; display: grid; place-items: center; flex: none; width: 23px; height: 23px; border-radius: 50%; background: var(--tt-mint); color: var(--tt-green); font-size: 12px; font-weight: 900; }
@media(max-width: 991px) { .tt-local .tt-local__grid--3 {grid-template-columns:repeat(2,minmax(0,1fr))} }
@media(max-width: 767px) { .tt-local {--tt-gutter:20px} .tt-local .tt-local__grid--3,.tt-local .tt-local__grid--2 {grid-template-columns:1fr} .tt-local .tt-local__section {padding-block:60px} }
@media(prefers-reduced-motion:reduce) { .tt-local .tt-local__button {transition:none} }
