/* Tarifly brand preset — 1.47.0
   Identity taken from tarifly.de: brand orange #fa7320 (WoodMart primary/buttons), deep indigo
   #0d0625 (theme colour), slate neutrals #162033 / #64748b / #e2e8f0 / #f8fafc, 20 px radii,
   Montserrat headings (already loaded by the theme) over the theme body font.
   Scoped to .tos-p-tarifly, which TOS_Design::shell() only adds when the preset is active
   (Tarifly → Einstellungen → Layout & design → Design preset). Explicit design settings
   (front-design.css, loaded after this file) still win over the preset. */

.tos-offers-shell.tos-ui-v2.tos-p-tarifly,
.tos-details-modal.tos-p-tarifly{
  --tos-text:#162033;--tos-muted:#64748b;--tos-subtle:#94a3b8;--tos-line:#e2e8f0;--tos-soft:#f8fafc;
  --tos-ink:#0d0625;--tos-ease:cubic-bezier(.2,.7,.2,1);
  --tos-heading-font:"Montserrat","Open Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --tos-shadow-card:0 1px 2px rgba(13,6,37,.04),0 14px 34px -16px rgba(13,6,37,.18);
  --tos-shadow-hover:0 2px 4px rgba(13,6,37,.05),0 24px 48px -18px rgba(13,6,37,.30);
}

/* ---- Cards ---------------------------------------------------------------- */
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-v2-card{
  border:1px solid var(--tos-line)!important;border-radius:20px!important;background:#fff!important;
  box-shadow:var(--tos-shadow-card)!important;
  transition:transform .24s var(--tos-ease),box-shadow .24s var(--tos-ease),border-color .24s ease;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-v2-card:hover{
  transform:translateY(-3px);box-shadow:var(--tos-shadow-hover)!important;
  border-color:var(--tos-accent-line,#fdba8c)!important;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-premium-head,
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-premium-footer{background:var(--tos-soft)!important;border-color:var(--tos-line)!important}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-premium-layout>*+*{border-color:var(--tos-line)!important}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-premium-provider small,
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-choice-label{color:var(--tos-muted)}

/* Typography: Montserrat for names and prices, navy ink */
.tos-offers-shell.tos-ui-v2.tos-p-tarifly h3{
  font-family:var(--tos-heading-font)!important;font-weight:700;color:var(--tos-ink);letter-spacing:-.01em;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-main-price strong,
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-premium-monthly strong,
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-compact-prices>strong,
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-split-price strong,
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-minimal-price>strong{
  font-family:var(--tos-heading-font)!important;font-weight:800;color:var(--tos-ink);letter-spacing:-.025em;font-variant-numeric:tabular-nums;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-primary-price]{display:inline-block}

/* Price panel: a warm brand tint that fades to white */
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-premium-pricebox{
  background:linear-gradient(180deg,var(--tos-accent-softer,#fff7f1) 0%,#fff 92%)!important;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-split-price{background:linear-gradient(180deg,var(--tos-accent-softer,#fff7f1),#fff)!important;border-color:var(--tos-accent-line,#fdba8c)!important}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-price-kicker,
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-primary-label]{color:var(--tos-accent-ink,#9a3412)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-price-after{color:var(--tos-accent-ink,#9a3412);font-weight:700}

/* ---- Call to action: flat accent pill, theme-navy hover (same as the blocks) -- */
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta]{
  border:0!important;border-radius:980px!important;background:var(--tos-accent)!important;
  color:var(--tos-accent-contrast,#fff)!important;font-weight:600;letter-spacing:0;text-transform:none;
  box-shadow:none!important;transition:background .2s ease,color .2s ease;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta]:hover,
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta]:focus-visible{background:var(--tos-accent-hover,#0c0625)!important;color:#fff!important}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta]:active{transform:scale(.985)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta]:focus-visible{outline:3px solid rgba(13,6,37,.4);outline-offset:3px}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta] svg{transition:transform .2s var(--tos-ease)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta]:hover svg{transform:translate(2px,-2px)}

/* ---- Facts, filters, controls ------------------------------------------------ */
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-fact{background:#fff;border-color:var(--tos-line);color:var(--tos-muted)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-fact strong{color:var(--tos-ink)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-fact--data{background:var(--tos-accent-softer,#fff7f1);border-color:var(--tos-accent-line,#fdba8c)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-filter-panel{
  border:1px solid var(--tos-line);border-radius:20px;box-shadow:var(--tos-shadow-card);
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-filter-kicker{color:var(--tos-accent)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-filter-segment{transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s var(--tos-ease)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-filter-segment:hover{transform:translateY(-1px)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-filter-segment.is-active{
  background:var(--tos-ink)!important;border-color:var(--tos-ink)!important;color:#fff!important;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-choice-select select{
  border-radius:12px!important;border-color:var(--tos-line)!important;transition:border-color .2s ease,box-shadow .2s ease;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-choice-select select:focus{
  border-color:var(--tos-accent)!important;box-shadow:0 0 0 3px rgba(var(--tos-accent-rgb,255,117,31),.18)!important;
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-details-toggle{color:var(--tos-ink);font-weight:700;transition:color .2s ease}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-details-toggle:hover{color:var(--tos-accent-ink,#9a3412)}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-load-more{
  border-radius:14px!important;background:var(--tos-ink)!important;border-color:var(--tos-ink)!important;color:#fff!important;
  font-weight:800;transition:transform .2s var(--tos-ease),box-shadow .2s var(--tos-ease);
}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-load-more:hover{transform:translateY(-1px);box-shadow:0 14px 28px -12px rgba(13,6,37,.55)!important}

/* ---- Details dialog (lives on <body>, carries the same preset class) ------------ */
.tos-details-modal.tos-p-tarifly .tos-details-modal__backdrop{background:rgba(13,6,37,.58);backdrop-filter:blur(3px);animation:tos-fade .25s ease both}
.tos-details-modal.tos-p-tarifly .tos-details-modal__dialog{
  border-radius:22px;box-shadow:0 32px 80px -24px rgba(13,6,37,.5);animation:tos-pop .32s var(--tos-ease) both;
}
.tos-details-modal.tos-p-tarifly h4,.tos-details-modal.tos-p-tarifly h5{font-family:var(--tos-heading-font,"Montserrat","Open Sans",sans-serif)!important;color:var(--tos-ink)}

/* ---- Motion (light) --------------------------------------------------------- */
@keyframes tos-rise{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
@keyframes tos-fade{from{opacity:0}to{opacity:1}}
@keyframes tos-pop{from{opacity:0;translate:0 14px;scale:.985}to{opacity:1;translate:0 0;scale:1}}
@keyframes tos-price-pop{0%{opacity:.25;translate:0 6px}100%{opacity:1;translate:0 0}}

/* Cards rise in with a short stagger; new cards from "load more" animate the same way. */
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-v2-card{animation:tos-rise .55s var(--tos-ease) both}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-grid>.tos-v2-card:nth-child(2){animation-delay:.06s}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-grid>.tos-v2-card:nth-child(3){animation-delay:.12s}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-grid>.tos-v2-card:nth-child(4){animation-delay:.18s}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-grid>.tos-v2-card:nth-child(n+5){animation-delay:.24s}
/* Deliberately time-based, not scroll-driven: content can never be left invisible inside a theme's custom scroll container. */
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-fact{animation:tos-fade .5s ease .12s both}
.tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-flash{animation:tos-price-pop .4s var(--tos-ease) both}

@media print{
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-v2-card,
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-fact{animation:none!important}
}

@media (prefers-reduced-motion:reduce){
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-v2-card,
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-fact,
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-flash,
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta],
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta]::before,
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-load-more,
  .tos-details-modal.tos-p-tarifly .tos-details-modal__backdrop,
  .tos-details-modal.tos-p-tarifly .tos-details-modal__dialog{animation:none!important;transition:none!important}
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly .tos-v2-card:hover,
  .tos-offers-shell.tos-ui-v2.tos-p-tarifly [data-tos-cta]:hover{transform:none}
}
