/* =============================================
   allstyle_matejV7.css
   Davona — custom CSS override (V7)
   Aktualizovat přes FTP: /user/documents/allstyle_matej.css

   Struktura:
     1) DESIGN TOKENS (referenční komentář)
     2) UTILITY / SDÍLENÉ KOMPONENTY  (.dav-*)
     3) PAGE LAYOUTS                  (.dav-<slug>-*)
     4) SHOPTET PAGE OVERRIDES        (.in-<slug>-*)

   Konvence: vše custom patří do tohoto souboru.
   Žádné solo CSS soubory per stránka.
   Existující prefixy (.dav-onas-*, .dav-tracking-*, .dav-faq-*) jsou
   v sekci 2) aliasované comma-selektorem na nové sdílené názvy
   (.dav-btn, .dav-cta-block, .dav-step, …), takže nasazené fragmenty
   v Shoptetu fungují beze změny.
   ============================================= */

/* =============================================
   1) DESIGN TOKENS  (jen reference, ne CSS proměnné — Shoptet je nepodporuje konzistentně)
   ---------------------------------------------
   Barvy:
     #CC3D8C primary pink    |  #b13478 hover pink
     #353535 text primární   |  #5A5C5D text sekundární
     #F7F7F7 bg šedé         |  #F9F0F5 bg světle růžové
     #FDF4F9 bg ještě světlejší růžové
     #E8E8E8 border          |  #F1E6EE border světle růžová
   Font: Outfit (400/500/600/700/800)
   Radius: 8–14 px (12 px default pro karty, 14 px pro velké boxy)
   Max-width dokumentových stránek: 920 px
   ============================================= */

/* =============================================
   2) UTILITY / SDÍLENÉ KOMPONENTY
   ============================================= */

/* --- Section title + sub (centrovaný) --- */
.dav-section-title {
    font-size: 23px;
    font-weight: 700;
    text-align: center;
    margin: 0 0 8px;
    color: #353535;
}
.dav-section-sub {
    text-align: center;
    color: #5a5c5d;
    font-size: 16px;
    margin: 0 0 32px;
}

/* --- Tlačítka (.dav-btn) — alias starých prefixů pro back-compat --- */
.dav-btn,
.dav-onas-cta-btn,
.dav-tracking-cta-btn {
    display: inline-block;
    padding: 12px 24px;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    font-family: "Outfit", sans-serif;
    transition:
        background 0.15s ease,
        color 0.15s ease,
        box-shadow 0.15s ease;
}
.dav-btn.primary,
.dav-onas-cta-btn.primary,
.dav-tracking-cta-btn.primary {
    background: #cc3d8c;
    color: #fff;
}
.dav-btn.primary:hover,
.dav-onas-cta-btn.primary:hover,
.dav-tracking-cta-btn.primary:hover {
    background: #b13478;
    color: #fff;
    text-decoration: none;
}
.dav-btn.secondary,
.dav-onas-cta-btn.secondary,
.dav-tracking-cta-btn.secondary {
    background: #fff;
    color: #cc3d8c;
    border: 1.5px solid #cc3d8c;
}
.dav-btn.secondary:hover,
.dav-onas-cta-btn.secondary:hover,
.dav-tracking-cta-btn.secondary:hover {
    background: #cc3d8c;
    color: #fff;
    text-decoration: none;
}

/* --- Řada tlačítek (centrovaná, gap, wrap) --- */
.dav-cta-buttons,
.dav-onas-cta-buttons,
.dav-tracking-cta-buttons {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

/* --- CTA gradient blok (pink gradient, centrovaný) --- */
.dav-cta-block,
.dav-onas-cta,
.dav-tracking-cta {
    background: linear-gradient(135deg, #fdf4f9 0%, #f9f0f5 100%);
    border-radius: 14px;
    padding: 40px 32px;
    text-align: center;
    margin: 56px 0 24px;
}
.dav-cta-block h2,
.dav-onas-cta h2,
.dav-tracking-cta h2 {
    font-size: 26px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 10px;
}
.dav-cta-block p,
.dav-onas-cta p,
.dav-tracking-cta p {
    font-size: 16px;
    color: #5a5c5d;
    margin: 0 0 24px;
}

/* --- Tip / callout (pink left-border) — sdílené vizuálně, marginy per kontext --- */
.dav-tip,
.dav-faq-note,
.dav-tracker__error {
    background: #fdf4f9;
    border-left: 4px solid #cc3d8c;
    border-radius: 0 8px 8px 0;
    padding: 14px 18px;
    color: #353535;
    line-height: 1.6;
}
/* Marginy + drobnosti per kontext jsou v jejich page-layout sekcích níže. */

/* --- Číslovaná step karta + grid --- */
.dav-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
@media (max-width: 600px) {
    .dav-steps {
        grid-template-columns: 1fr;
    }
}

.dav-step,
.dav-tracking-step {
    background: #fff;
    border-radius: 10px;
    padding: 22px 18px;
    text-align: center;
    border: 1px solid #e8e8e8;
}
.dav-step-num,
.dav-tracking-step-num {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #cc3d8c;
    color: #fff;
    font-size: 17px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 14px;
}
.dav-step-title,
.dav-tracking-step-title {
    font-size: 15px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 6px;
}
.dav-step-desc,
.dav-tracking-step-desc {
    font-size: 14px;
    color: #5a5c5d;
    line-height: 1.55;
    margin: 0;
}

/* --- Generic karta s border (white bg, light border, radius) --- */
.dav-card {
    background: #fff;
    border: 1.5px solid #e8e8e8;
    border-radius: 10px;
    padding: 22px 20px;
}

/* --- Velké pink stat číslo (base 38 px) + modifier (--lg 56 px) --- */
.dav-stat-num,
.dav-onas-stat-num {
    font-size: 38px;
    font-weight: 700;
    color: #cc3d8c;
    line-height: 1.1;
    margin: 0 0 6px;
}
.dav-stat-num--lg {
    font-size: 56px;
    font-weight: 800;
    line-height: 1;
    margin: 0 0 8px;
}
@media (max-width: 900px) {
    .dav-stat-num,
    .dav-onas-stat-num {
        font-size: 32px;
    }
}

/* --- Certifikáty card (badge + text) --- */
.dav-certs-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}
@media (max-width: 700px) {
    .dav-certs-row {
        grid-template-columns: 1fr;
    }
}
.dav-cert {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    padding: 14px 16px;
}
.dav-cert-badge {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    border-radius: 10px;
    background: #cc3d8c;
    color: #fff;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    letter-spacing: 0.02em;
    text-align: center;
    padding: 4px;
}
.dav-cert-text {
    display: flex;
    flex-direction: column;
}
.dav-cert-text b {
    font-size: 15px;
    color: #353535;
}
.dav-cert-text span {
    font-size: 13px;
    color: #5a5c5d;
}

/* --- Accordion (<details> + růžový +/− buton) --- */
.dav-accordion-item,
.dav-faq-item,
.dav-tracking-faq-item {
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    margin: 0 0 10px;
    background: #fff;
    overflow: hidden;
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease;
}
.dav-accordion-item[open],
.dav-faq-item[open],
.dav-tracking-faq-item[open] {
    border-color: #cc3d8c;
    box-shadow: 0 2px 8px rgba(204, 61, 140, 0.08);
}
.dav-accordion-item summary,
.dav-faq-item summary,
.dav-tracking-faq-item summary {
    list-style: none;
    cursor: pointer;
    padding: 16px 48px 16px 20px;
    font-size: 16px;
    font-weight: 600;
    color: #353535;
    position: relative;
    line-height: 1.4;
}
.dav-accordion-item summary::-webkit-details-marker,
.dav-faq-item summary::-webkit-details-marker,
.dav-tracking-faq-item summary::-webkit-details-marker {
    display: none;
}
.dav-accordion-item summary:hover,
.dav-faq-item summary:hover,
.dav-tracking-faq-item summary:hover {
    color: #cc3d8c;
}
.dav-accordion-item summary:after,
.dav-faq-item summary:after,
.dav-tracking-faq-item summary:after {
    content: "+";
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #f9f0f5;
    color: #cc3d8c;
    font-size: 20px;
    font-weight: 700;
    line-height: 22px;
    text-align: center;
    transition: background 0.2s ease;
}
.dav-accordion-item[open] summary:after,
.dav-faq-item[open] summary:after,
.dav-tracking-faq-item[open] summary:after {
    content: "\2212"; /* − */
    background: #cc3d8c;
    color: #fff;
}

/* --- Info panel (border karta s pink h4 a "-" prefixy v ul) --- */
.dav-info-panel {
    border: 1.5px solid #e8e8e8;
    border-radius: 10px;
    padding: 18px 20px;
}
.dav-info-panel h4 {
    font-size: 16px;
    font-weight: 700;
    color: #cc3d8c;
    margin: 0 0 10px;
}
.dav-info-panel ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.dav-info-panel ul li {
    font-size: 16px;
    line-height: 1.55;
    color: #5a5c5d;
    padding-left: 14px;
    position: relative;
}
.dav-info-panel ul li:before {
    content: "–";
    position: absolute;
    left: 0;
    color: #cc3d8c;
}
.dav-info-panel ul li a {
    color: #cc3d8c;
    text-decoration: underline;
}
.dav-info-panel ul li a:hover {
    text-decoration: none;
}

/* --- Link s šipkou (Read more ›) --- */
.dav-link-arrow {
    display: inline-block;
    color: #cc3d8c;
    font-weight: 600;
    text-decoration: underline;
}
.dav-link-arrow:hover {
    text-decoration: none;
}

/* --- Davona logo (inline) --- */
.dav-logo-inline {
    display: block;
    width: 140px;
    max-width: 100%;
    height: auto;
    margin: 0 auto 16px;
}
.dav-logo-inline--sm {
    width: 100px;
    margin-bottom: 12px;
}
.dav-logo-inline--lg {
    width: 180px;
    margin-bottom: 20px;
}

/* =============================================
   3) PAGE LAYOUTS
   ============================================= */

/* =============================================
   3.1) Prodejna a osobní odběr
   ============================================= */

/* Přehledové karty — dvě prodejny nahoře.
   Generic .customHeader, .note (a jejich grid/box/barvy) přebíráme z Allstyle.css (koderská vrstva).
   V8 přidává jen vlastní rozšíření a odchylky — žádné duplikáty.
   Cleanup 2026-06-09 (záloha: Zalohy/allstyle_matejV8-pre-prodejna-cleanup-2026-06-09.css). */

/* .customHeader p.main — Allstyle má grid-column/grid-row/margin/max-width, V8 přidává jen typografii */
.dav-stores-wrapper .customHeader p.main {
    color: #2f2f2f;
    font-size: 18px;
    line-height: 25px;
}

/* .wrapper karet — vlastní grid (Allstyle generic .wrapper nemá pravidlo, jen .wrapper.first / .customWrapper .wrapper) */
.dav-stores-wrapper .wrapper {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    margin: 25px 0;
}
@media (min-width: 768px) {
    .dav-stores-wrapper .wrapper {
        gap: 20px;
    }
}
@media (min-width: 992px) {
    .dav-stores-wrapper .wrapper {
        gap: 40px;
        margin: 45px 0;
    }
}

/* .item — karta prodejny. Allstyle generic .item má rozdílné values (align-items center, padding 10 5, width 33 %), V8 overrides scopovaně */
.dav-stores-wrapper .wrapper > .item {
    border: 1px solid #e2e2e2;
    border-radius: 10px;
    column-gap: 15px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    padding: 20px;
}
@media (min-width: 1200px) {
    .dav-stores-wrapper .wrapper > .item {
        flex-direction: row;
    }
}
@media (min-width: 1440px) {
    .dav-stores-wrapper .wrapper > .item {
        column-gap: 25px;
    }
}
.dav-stores-wrapper .wrapper > .item a.h4 {
    display: block;
    font-size: 26px;
    font-weight: 500;
    margin: 0 0 20px;
    text-decoration: underline;
    color: #000;
}
.dav-stores-wrapper .wrapper > .item a.h4:hover {
    color: #cc3d8c;
    text-decoration: none;
}

/* .left / .text uvnitř .item — Allstyle generic .left/.text mají defaulty, V8 overrides scopovaně */
.dav-stores-wrapper .wrapper > .item .left {
    height: 253px;
}
@media (min-width: 1200px) {
    .dav-stores-wrapper .wrapper > .item .left {
        flex: 1;
    }
}
.dav-stores-wrapper .wrapper > .item .left img {
    border-radius: 10px;
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.dav-stores-wrapper .wrapper > .item .text {
    flex: 1;
    margin: 15px 0 0;
}
@media (min-width: 1200px) {
    .dav-stores-wrapper .wrapper > .item .text {
        margin: 0;
        max-width: 250px;
    }
}
.dav-stores-wrapper .wrapper > .item .text p {
    font-size: 16px;
    line-height: 26px;
    margin: 0 0 15px;
    color: #2f2f2f;
}
.dav-stores-wrapper .wrapper > .item .text > a {
    color: #cc3d8c;
    font-size: 16px;
    font-weight: 600;
    line-height: 26px;
    text-decoration: underline;
}
.dav-stores-wrapper .wrapper > .item .text > a:hover {
    text-decoration: none;
}
.dav-stores-wrapper .wrapper > .item .text a {
    color: #cc3d8c;
}

/* .note — Allstyle dává align-items/bg/border-radius/display/gap/margin/padding generic.
   V8 chce odchylky: font-size 16 px (Allstyle 15) a line-height 24 px (Allstyle 18).
   !important kvůli Allstyle media query overrides (.note v 16 px / line-height 25 px na vyšších breakpointech). */
.dav-stores-wrapper .note {
    font-size: 16px !important;
    line-height: 24px !important;
}
.dav-stores-wrapper .note p {
    font-size: 16px !important;
    line-height: 24px !important;
}

/* Sekce "Jak funguje osobní odběr" — wrapper (steps + grid jsou sdílené) */
.dav-how {
    background: #f7f7f7;
    border-radius: 12px;
    padding: 40px 32px;
    margin: 32px 0;
}

/* Tip kontext: Prodejna používá .dav-tip jako kratší note (16 px) s margin-top */
.dav-tip {
    margin-top: 24px;
    font-size: 16px;
}

/* Detail Prodejny */
.dav-prodejna {
    font-family: "Outfit", sans-serif;
    color: #353535;
    font-size: 16px;
    line-height: 1.6;
    margin-top: 48px;
}
.dav-prodejna .dav-intro {
    margin: 0 0 32px;
}
.dav-prodejna .dav-intro h2 {
    font-size: 26px;
    font-weight: 700;
    margin: 0 0 12px;
    color: #353535;
}
.dav-prodejna .dav-intro p {
    font-size: 16px;
    color: #5a5c5d;
    margin: 0;
}
.dav-prodejna-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    margin: 0 0 40px;
    align-items: start;
}
@media (max-width: 767px) {
    .dav-prodejna-layout {
        grid-template-columns: 1fr;
    }
}

/* Proč přijít — checklist */
.dav-why {
    background: #f9f0f5;
    border-radius: 12px;
    padding: 32px;
}
.dav-why h3 {
    font-size: 22px;
    font-weight: 700;
    margin: 0 0 20px;
    color: #353535;
}
.dav-why ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.dav-why ul li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 16px;
    line-height: 1.5;
    color: #353535;
}
.dav-why ul li:before {
    content: "";
    display: block;
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    background-color: #cc3d8c;
    border-radius: 50%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='white'%3E%3Cpath fill-rule='evenodd' d='M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z' clip-rule='evenodd'/%3E%3C/svg%3E");
    background-size: 14px;
    background-position: center;
    background-repeat: no-repeat;
}

/* Carousel — thumbnail grid */
.dav-carousel {
    margin: 0;
}
.dav-carousel-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}
@media (max-width: 767px) {
    .dav-carousel-grid {
        display: flex;
        overflow: hidden;
        gap: 0;
    }
    .dav-carousel-mobile-wrap {
        display: flex;
        transition: transform 0.4s ease;
        width: 100%;
    }
    .dav-carousel-thumb {
        min-width: calc(50% - 4px);
        margin-right: 8px;
    }
    .dav-carousel-mobile-nav {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 16px;
        margin-top: 10px;
    }
    .dav-carousel-mobile-btn {
        width: 36px;
        height: 36px;
        border-radius: 50%;
        background: #fff;
        border: 1px solid #e2e2e2;
        cursor: pointer;
        font-size: 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #353535;
    }
    .dav-carousel-mobile-btn:hover {
        background: #cc3d8c;
        color: #fff;
        border-color: #cc3d8c;
    }
    .dav-carousel-mobile-dots {
        display: flex;
        gap: 6px;
    }
    .dav-carousel-mobile-dots span {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #e2e2e2;
        cursor: pointer;
        display: block;
    }
    .dav-carousel-mobile-dots span.active {
        background: #cc3d8c;
    }
}
@media (min-width: 768px) {
    .dav-carousel-mobile-nav {
        display: none;
    }
    .dav-carousel-mobile-wrap {
        display: contents;
    }
}
.dav-carousel-thumb {
    aspect-ratio: 9/16;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
}
.dav-carousel-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.dav-carousel-thumb:hover img {
    transform: scale(1.05);
}
.dav-carousel-thumb:hover:after {
    content: "🔍";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    background: rgba(0, 0, 0, 0.25);
    border-radius: 10px;
}

/* Lightbox */
.dav-lightbox {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.85);
    z-index: 99999;
    align-items: center;
    justify-content: center;
}
.dav-lightbox.open {
    display: flex;
}
.dav-lightbox-inner {
    position: relative;
    max-height: 90vh;
    max-width: 90vw;
}
.dav-lightbox-inner img {
    max-height: 90vh;
    max-width: 90vw;
    border-radius: 10px;
    display: block;
    object-fit: contain;
}
.dav-lightbox-close {
    position: absolute;
    top: -18px;
    right: -18px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #fff;
    border: none;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #353535;
}
.dav-lightbox-close:hover {
    background: #cc3d8c;
    color: #fff;
}
.dav-lightbox-prev,
.dav-lightbox-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff;
    border: none;
    cursor: pointer;
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #353535;
}
.dav-lightbox-prev:hover,
.dav-lightbox-next:hover {
    background: #cc3d8c;
    color: #fff;
}
.dav-lightbox-prev {
    left: -55px;
}
.dav-lightbox-next {
    right: -55px;
}
@media (max-width: 640px) {
    .dav-lightbox-prev {
        left: 10px;
    }
    .dav-lightbox-next {
        right: 10px;
    }
}

/* Mapa + info panely */
.dav-location {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin: 0 0 40px;
    align-items: start;
}
@media (max-width: 768px) {
    .dav-location {
        grid-template-columns: 1fr;
    }
}
.dav-map-wrap {
    border-radius: 12px;
    overflow: hidden;
    height: 340px;
}
.dav-map-wrap iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}
.dav-info-panels {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* =============================================
   3.2) O nás
   ============================================= */

.dav-onas {
    font-family: "Outfit", sans-serif;
    color: #353535;
    font-size: 16px;
    line-height: 1.65;
}
.dav-onas p {
    font-size: 16px;
    line-height: 1.65;
    color: #353535;
    margin: 0 0 14px;
}
.dav-onas p:last-child {
    margin-bottom: 0;
}
.dav-onas b,
.dav-onas strong {
    font-weight: 700;
    color: #353535;
}

/* Hero — asymetrický claim + fotka */
.dav-onas-hero {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 48px;
    align-items: center;
    margin: 24px 0 56px;
    position: relative;
}
@media (max-width: 900px) {
    .dav-onas-hero {
        grid-template-columns: 1fr;
        gap: 32px;
        margin: 16px 0 40px;
    }
}
.dav-onas-hero-claim h1 {
    font-size: 44px;
    line-height: 1.15;
    font-weight: 700;
    color: #353535;
    margin: 0 0 20px;
}
@media (max-width: 900px) {
    .dav-onas-hero-claim h1 {
        font-size: 32px;
    }
}
.dav-onas-hero-claim .lead {
    font-size: 18px;
    line-height: 1.6;
    color: #5a5c5d;
    margin: 0 0 14px;
}
.dav-onas-hero-claim .lead b {
    color: #353535;
}
.dav-onas-hero-image {
    aspect-ratio: 1 / 1;
    max-width: 480px;
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
    justify-self: end;
    position: relative;
}
@media (max-width: 900px) {
    .dav-onas-hero-image {
        justify-self: center;
        max-width: 360px;
    }
}
.dav-onas-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.dav-onas-hero-image:before {
    content: "";
    position: absolute;
    top: -22px;
    right: -22px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: #f9f0f5;
    z-index: -1;
}
.dav-onas-hero-image:after {
    content: "";
    position: absolute;
    bottom: -18px;
    left: -18px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(204, 61, 140, 0.18);
    z-index: -1;
}

/* Statistický pás (čísla používají sdílené .dav-stat-num / .dav-onas-stat-num) */
.dav-onas-stats {
    background: #f9f0f5;
    border-radius: 12px;
    padding: 32px 24px;
    margin: 0 0 56px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
@media (max-width: 900px) {
    .dav-onas-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
        padding: 28px 20px;
        margin-bottom: 40px;
    }
}
/* Stat položka — !important kvůli Shoptet Allstyle.css overridům na <a> */
.dav-onas-stats > .dav-onas-stat,
.dav-onas-stats > a.dav-onas-stat {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    color: inherit !important;
    text-decoration: none !important;
}
.dav-onas-stats > a.dav-onas-stat:hover .dav-onas-stat-num,
.dav-onas-stats > a.dav-onas-stat:hover .dav-onas-stat-label {
    text-decoration: underline;
}
.dav-onas-stats > .dav-onas-stat > .dav-onas-stat-num,
.dav-onas-stats > .dav-onas-stat > .dav-onas-stat-label {
    display: block !important;
    width: 100%;
}
.dav-onas-stat-label {
    font-size: 14px;
    color: #5a5c5d;
    line-height: 1.4;
}

/* Pull quote */
.dav-onas-quote {
    margin: 56px auto;
    max-width: 820px;
    padding: 0 24px;
    text-align: center;
    position: relative;
}
@media (max-width: 900px) {
    .dav-onas-quote {
        margin: 40px auto;
    }
}
.dav-onas-quote:before {
    content: "\201E";
    display: block;
    font-family: Georgia, serif;
    font-size: 96px;
    line-height: 0.6;
    color: #cc3d8c;
    margin: 0 0 16px;
}
.dav-onas-quote q {
    display: block;
    font-size: 26px;
    line-height: 1.45;
    font-weight: 500;
    color: #353535;
    font-style: italic;
    quotes: none;
    margin: 0 0 18px;
}
@media (max-width: 900px) {
    .dav-onas-quote q {
        font-size: 20px;
    }
}
.dav-onas-quote q:before,
.dav-onas-quote q:after {
    content: "";
}
.dav-onas-quote cite {
    display: block;
    font-style: normal;
    font-size: 15px;
    color: #5a5c5d;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}
.dav-onas-quote cite b {
    color: #cc3d8c;
    font-weight: 700;
}

/* Zig-zag řádky text + obrázek */
.dav-onas-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: center;
    margin: 0 0 56px;
}
@media (max-width: 900px) {
    .dav-onas-row {
        grid-template-columns: 1fr;
        gap: 28px;
        margin-bottom: 40px;
    }
}
.dav-onas-row.reverse .dav-onas-row-img {
    order: 2;
}
.dav-onas-row.reverse .dav-onas-row-text {
    order: 1;
}
@media (max-width: 900px) {
    .dav-onas-row.reverse .dav-onas-row-img,
    .dav-onas-row.reverse .dav-onas-row-text {
        order: initial;
    }
}
.dav-onas-row-img {
    aspect-ratio: 1 / 1;
    max-width: 460px;
    width: 100%;
    border-radius: 14px;
    overflow: hidden;
    justify-self: center;
}
.dav-onas-row-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.dav-onas-row-text h2 {
    font-size: 28px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 16px;
    line-height: 1.25;
    position: relative;
    padding-bottom: 14px;
}
.dav-onas-row-text h2:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 48px;
    height: 3px;
    background: #cc3d8c;
    border-radius: 2px;
}
@media (max-width: 900px) {
    .dav-onas-row-text h2 {
        font-size: 24px;
    }
}

/* Sekce Náš tým */
.dav-onas-team {
    margin: 56px 0;
}
.dav-onas-team-head {
    text-align: center;
    margin: 0 0 32px;
}
.dav-onas-team-head h2 {
    font-size: 28px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 8px;
}
.dav-onas-team-head p {
    color: #5a5c5d;
    font-size: 16px;
    margin: 0;
}
.dav-onas-team-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
@media (max-width: 900px) {
    .dav-onas-team-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}
@media (max-width: 540px) {
    .dav-onas-team-grid {
        grid-template-columns: 1fr;
    }
}
.dav-onas-team-card {
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 12px;
    padding: 20px;
    text-align: center;
}
.dav-onas-team-photo {
    aspect-ratio: 1 / 1;
    width: 100%;
    max-width: 200px;
    margin: 0 auto 16px;
    border-radius: 50%;
    overflow: hidden;
}
.dav-onas-team-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.dav-onas-team-card .name {
    font-size: 18px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 4px;
}
.dav-onas-team-card .role {
    font-size: 14px;
    color: #cc3d8c;
    font-weight: 600;
    margin: 0 0 8px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.dav-onas-team-card .desc {
    font-size: 14px;
    color: #5a5c5d;
    line-height: 1.55;
    margin: 0;
}

/* CTA O nás — vizuál je v utility .dav-cta-block. Tady jen page-specific h2 (větší) */

/* =============================================
   3.3) Obchodní podmínky + Zásady zpracování údajů  (sdílené .dav-podminky-*)
   ============================================= */

.dav-podminky {
    font-family: "Outfit", sans-serif;
    color: #353535;
    font-size: 16px;
    line-height: 1.7;
    max-width: 920px;
    margin: 0 auto;
}
.dav-podminky h1 {
    font-size: 36px;
    font-weight: 700;
    margin: 0 0 8px;
    line-height: 1.2;
    color: #353535;
}
@media (max-width: 768px) {
    .dav-podminky h1 {
        font-size: 28px;
    }
}
.dav-podminky-meta {
    font-size: 14px;
    color: #5a5c5d;
    margin: 0 0 32px;
}
.dav-podminky-meta b {
    color: #353535;
}

/* Úvodní firma blok */
.dav-podminky-intro {
    background: #f7f7f7;
    border-radius: 12px;
    padding: 24px 28px;
    margin: 0 0 32px;
}
.dav-podminky-intro p {
    margin: 0 0 10px;
    font-size: 15px;
    line-height: 1.6;
    color: #353535;
}
.dav-podminky-intro p:last-child {
    margin-bottom: 0;
}
.dav-podminky-intro .label {
    display: block;
    font-size: 12px;
    color: #5a5c5d;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin: 18px 0 4px;
}
.dav-podminky-intro .label:first-child {
    margin-top: 0;
}
.dav-podminky-intro a {
    color: #cc3d8c;
    text-decoration: underline;
}
.dav-podminky-intro a:hover {
    text-decoration: none;
}

/* TOC */
.dav-podminky-toc {
    border: 1.5px solid #e8e8e8;
    border-radius: 12px;
    padding: 20px 24px;
    margin: 0 0 40px;
}
.dav-podminky-toc-title {
    font-size: 13px;
    font-weight: 700;
    color: #cc3d8c;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin: 0 0 12px;
}
.dav-podminky-toc ol {
    list-style: none;
    margin: 0;
    padding: 0;
    columns: 2;
    column-gap: 36px;
}
@media (max-width: 600px) {
    .dav-podminky-toc ol {
        columns: 1;
    }
}
.dav-podminky-toc ol li {
    font-size: 15px;
    line-height: 1.85;
    break-inside: avoid;
}
.dav-podminky-toc ol li a {
    color: #353535;
    text-decoration: none;
}
.dav-podminky-toc ol li a:hover {
    color: #cc3d8c;
    text-decoration: underline;
}
.dav-podminky-toc .roman {
    color: #cc3d8c;
    font-weight: 700;
    margin-right: 8px;
    display: inline-block;
    min-width: 28px;
}

/* Sekce */
.dav-podminky section {
    scroll-margin-top: 24px;
    margin: 0 0 40px;
}
.dav-podminky h2 {
    font-size: 24px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f9f0f5;
    line-height: 1.3;
}
@media (max-width: 768px) {
    .dav-podminky h2 {
        font-size: 20px;
    }
}
.dav-podminky h2 .roman {
    color: #cc3d8c;
    margin-right: 10px;
}
.dav-podminky h3 {
    font-size: 17px;
    font-weight: 700;
    color: #cc3d8c;
    margin: 24px 0 12px;
}

.dav-podminky ol {
    padding-left: 24px;
    margin: 0 0 16px;
}
.dav-podminky > section > ol > li {
    margin: 0 0 12px;
    padding-left: 4px;
}
.dav-podminky > section > ol > li::marker {
    color: #cc3d8c;
    font-weight: 700;
}
.dav-podminky ul {
    padding-left: 22px;
    margin: 8px 0 16px;
}
.dav-podminky ul li {
    margin: 0 0 6px;
}
.dav-podminky ul li::marker {
    color: #cc3d8c;
}
.dav-podminky p {
    margin: 0 0 12px;
}
.dav-podminky a {
    color: #cc3d8c;
    text-decoration: underline;
    word-break: break-word;
}
.dav-podminky a:hover {
    text-decoration: none;
}

/* =============================================
   3.3b) Cookies  (doplňuje .dav-podminky-* typografii)
   ============================================= */

/* Wrapper Cookies = .dav-podminky + .dav-cookies. Sdílí typografii .dav-podminky,
   bez vlastních wrapper overrides — vlastní styly jsou na .dav-cookies-* níže. */

/* Seznam 5 typů cookies (technické, bezpečnostní, ...) — vizuálně klidný bullet list */
.dav-cookies-types {
    padding-left: 22px;
    margin: 8px 0 16px;
}
.dav-cookies-types li {
    margin: 0 0 10px;
    line-height: 1.6;
}
.dav-cookies-types li::marker {
    color: #cc3d8c;
}
.dav-cookies-types li b {
    color: #353535;
}

/* Grid odkazů na nastavení prohlížečů (Chrome, Firefox, ...) */
.dav-cookies-browsers {
    list-style: none;
    padding: 0;
    margin: 12px 0 16px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px 12px;
}
@media (max-width: 768px) {
    .dav-cookies-browsers {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 420px) {
    .dav-cookies-browsers {
        grid-template-columns: 1fr;
    }
}
.dav-cookies-browsers li {
    margin: 0;
    padding: 0;
}
.dav-cookies-browsers li::marker {
    content: none;
}
.dav-cookies-browsers li a {
    display: block;
    padding: 10px 14px;
    background: #f9f0f5;
    border: 1px solid #f1e6ee;
    border-radius: 8px;
    color: #cc3d8c;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    transition:
        background 0.15s,
        color 0.15s;
}
.dav-cookies-browsers li a:hover {
    background: #cc3d8c;
    color: #fff;
    text-decoration: none;
}

/* Tabulka konkrétních cookies — desktop = klasická tabulka, mobil = stack s data-label */
.dav-cookies-table-wrap {
    margin: 16px 0 8px;
}
.dav-cookies-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    line-height: 1.55;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 12px;
    overflow: hidden;
}
.dav-cookies-table thead th {
    background: #f9f0f5;
    color: #353535;
    font-weight: 700;
    text-align: left;
    padding: 12px 14px;
    border-bottom: 2px solid #f1e6ee;
    font-size: 13px;
    letter-spacing: 0.02em;
}
.dav-cookies-table tbody td {
    padding: 12px 14px;
    border-bottom: 1px solid #f1e6ee;
    vertical-align: top;
    color: #353535;
}
.dav-cookies-table tbody tr:last-child td {
    border-bottom: 0;
}
.dav-cookies-table tbody tr:nth-child(even) td {
    background: #fdf4f9;
}
.dav-cookies-table tbody td b {
    color: #cc3d8c;
    font-weight: 700;
}
.dav-cookies-table .dav-cookies-note {
    display: block;
    font-size: 12px;
    color: #5a5c5d;
    font-style: italic;
    margin-top: 2px;
}

/* Mobil: tabulka se rozpadá do stack karet */
@media (max-width: 768px) {
    .dav-cookies-table {
        border: 0;
        background: transparent;
        border-radius: 0;
    }
    .dav-cookies-table thead {
        position: absolute;
        left: -9999px;
    }
    .dav-cookies-table tbody tr {
        display: block;
        background: #fff;
        border: 1px solid #e8e8e8;
        border-radius: 10px;
        margin: 0 0 12px;
        padding: 12px 14px;
    }
    .dav-cookies-table tbody tr:nth-child(even) td {
        background: transparent;
    }
    .dav-cookies-table tbody td {
        display: grid;
        grid-template-columns: 130px 1fr;
        gap: 10px;
        padding: 6px 0;
        border-bottom: 1px dashed #f1e6ee;
        align-items: start;
    }
    .dav-cookies-table tbody td:last-child {
        border-bottom: 0;
    }
    .dav-cookies-table tbody td::before {
        content: attr(data-label);
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-weight: 700;
        color: #5a5c5d;
        padding-top: 2px;
    }
}

/* Tlačítko „Změnit cookies volbu" — BEM .dav-cookies__button (pink underline text button) */
.dav-cookies__reopen {
    margin: 20px 0 8px;
}
.dav-cookies__reopen--end {
    margin-top: 24px;
}
.dav-cookies__button {
    display: inline-block;
    background: transparent;
    border: 0;
    padding: 0;
    font-family: "Outfit", sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #cc3d8c;
    text-decoration: underline;
    cursor: pointer;
    line-height: 1.5;
    transition: color 0.15s;
}
.dav-cookies__button:hover {
    color: #b13478;
    text-decoration: none;
}
.dav-cookies__button:focus-visible {
    outline: 2px solid #cc3d8c;
    outline-offset: 3px;
    border-radius: 4px;
    text-decoration: none;
}
.dav-cookies__button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* =============================================
   3.4) Otázky a odpovědi (FAQ)
   ============================================= */

.dav-faq {
    font-family: "Outfit", sans-serif;
    color: #353535;
    font-size: 16px;
    line-height: 1.65;
    max-width: 920px;
    margin: 0 auto;
    scroll-behavior: smooth;
}
.dav-faq-contact {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 2px solid #f9f0f5;
}
.dav-faq-contact > p {
    color: #5a5c5d;
    margin: 0 0 16px;
}
.dav-faq-contact-buttons {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 18px;
}

/* Hlavička — H1 stránky vykresluje Shoptet, fragment začíná meta */
.dav-faq-head {
    margin: 0 0 24px;
}
.dav-faq-head h1,
.dav-faq-meta {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.55;
    color: #5a5c5d;
    margin: 0;
    letter-spacing: 0;
}
.dav-faq-head h1 span,
.dav-faq-head h1 b,
.dav-faq-head h1 strong {
    font-family: "Outfit", sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    color: #5a5c5d !important;
    line-height: 1.55 !important;
}
.dav-faq-head h1 a,
.dav-faq-meta a {
    color: #cc3d8c;
    text-decoration: underline;
    font-weight: 600;
}
.dav-faq-head h1 a:hover,
.dav-faq-meta a:hover {
    text-decoration: none;
}

/* Rychlý kontakt panel */
.dav-faq-intro {
    background: #f7f7f7;
    border-radius: 12px;
    padding: 20px 24px;
    margin: 0 0 32px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.dav-faq-intro-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 15px;
    line-height: 1.5;
    color: #353535;
}
.dav-faq-intro-item .label {
    font-size: 12px;
    color: #5a5c5d;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
}
.dav-faq-intro-item .note {
    font-size: 13px;
    color: #5a5c5d;
}
.dav-faq-intro-item a {
    color: #cc3d8c;
    text-decoration: underline;
    font-weight: 600;
}
.dav-faq-intro-item a:hover {
    text-decoration: none;
}

/* TOC kategorií */
.dav-faq-toc {
    border: 1.5px solid #e8e8e8;
    border-radius: 12px;
    padding: 20px 24px;
    margin: 0 0 40px;
}
.dav-faq-toc-title {
    font-size: 13px;
    font-weight: 700;
    color: #cc3d8c;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin: 0 0 12px;
}
.dav-faq-toc ol {
    list-style: none;
    margin: 0;
    padding: 0;
    columns: 2;
    column-gap: 36px;
}
.dav-faq-toc ol li {
    font-size: 15px;
    line-height: 1.85;
    break-inside: avoid;
}
.dav-faq-toc ol li a {
    color: #353535;
    text-decoration: none;
}
.dav-faq-toc ol li a:hover {
    color: #cc3d8c;
    text-decoration: underline;
}

/* Sekce / kategorie */
.dav-faq-section {
    scroll-margin-top: 24px;
    margin: 0 0 32px;
}
.dav-faq-section h2 {
    font-size: 22px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f9f0f5;
    line-height: 1.3;
}

/* Tělo odpovědi (accordion item = sdílené v utility) */
.dav-faq-answer {
    padding: 0 20px 18px;
    color: #353535;
    font-size: 15px;
    line-height: 1.65;
    border-top: 1px solid #f1e6ee;
    padding-top: 14px;
}
.dav-faq-answer p {
    margin: 0 0 10px;
}
.dav-faq-answer p:last-child {
    margin-bottom: 0;
}
.dav-faq-answer ul,
.dav-faq-answer ol {
    padding-left: 22px;
    margin: 6px 0 12px;
}
.dav-faq-answer ul li,
.dav-faq-answer ol li {
    margin: 0 0 6px;
}
.dav-faq-answer ul li::marker,
.dav-faq-answer ol li::marker {
    color: #cc3d8c;
}
.dav-faq-answer ul ul,
.dav-faq-answer ol ul {
    margin: 6px 0 6px;
}
.dav-faq-answer a {
    color: #cc3d8c;
    text-decoration: underline;
    word-break: break-word;
}
.dav-faq-answer a:hover {
    text-decoration: none;
}
.dav-faq-answer b,
.dav-faq-answer strong {
    font-weight: 700;
    color: #353535;
}
.dav-faq-answer em {
    font-style: italic;
    color: #5a5c5d;
}

/* "Důležité" poznámka uvnitř FAQ odpovědi — kontextový margin pro sdílené .dav-faq-note */
.dav-faq-note {
    margin: 12px 0 !important;
    font-size: 15px;
}

/* Responsive */
@media (max-width: 768px) {
    .dav-faq-head h1 {
        font-size: 28px;
    }
    .dav-faq-intro {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 18px 18px;
    }
    .dav-faq-toc ol {
        columns: 1;
    }
    .dav-faq-item summary {
        font-size: 15px;
        padding: 14px 44px 14px 16px;
    }
    .dav-faq-answer {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* =============================================
   3.5) Sledování zásilky  (.dav-tracking-*, .dav-tracker__*)
   ============================================= */

.dav-tracking {
    font-family: "Outfit", sans-serif;
    color: #353535;
    font-size: 16px;
    line-height: 1.65;
    max-width: 920px;
    margin: 0 auto;
}
.dav-tracking p {
    font-size: 16px;
    line-height: 1.65;
    color: #353535;
    margin: 0 0 14px;
}
.dav-tracking p:last-child {
    margin-bottom: 0;
}
.dav-tracking b,
.dav-tracking strong {
    font-weight: 700;
    color: #353535;
}
.dav-tracking a {
    color: #cc3d8c;
    text-decoration: underline;
    word-break: break-word;
}
.dav-tracking a:hover {
    text-decoration: none;
}
.dav-tracking h2 {
    font-size: 26px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 8px;
    line-height: 1.25;
}
.dav-tracking h3 {
    font-size: 18px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 8px;
}

/* Intro box */
.dav-tracking-intro {
    background: #f7f7f7;
    border-radius: 12px;
    padding: 20px 24px;
    margin: 0 0 28px;
}
.dav-tracking-intro p {
    font-size: 15px;
    line-height: 1.6;
    color: #353535;
    margin: 0 0 10px;
}
.dav-tracking-intro p:last-child {
    margin-bottom: 0;
}
.dav-tracking-intro .label {
    display: block;
    font-size: 12px;
    color: #5a5c5d;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin: 0 0 6px;
}

/* Tracker form (BEM .dav-tracker__*) */
.dav-tracker {
    font-family: "Outfit", sans-serif;
    max-width: 720px;
    margin: 0 auto 48px;
    padding: 28px;
    background: #fff;
    border: 1.5px solid #f1e6ee;
    border-radius: 14px;
    box-shadow: 0 4px 16px rgba(204, 61, 140, 0.08);
    box-sizing: border-box;
}
.dav-tracker__title {
    font-size: 22px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 6px;
    padding-left: 44px;
    position: relative;
    line-height: 1.3;
}
.dav-tracker__title:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    background-color: #cc3d8c;
    border-radius: 8px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/><polyline points='3.27 6.96 12 12.01 20.73 6.96'/><line x1='12' y1='22.08' x2='12' y2='12'/></svg>");
    background-size: 20px;
    background-position: center;
    background-repeat: no-repeat;
}
.dav-tracker__lead {
    margin: 0 0 22px;
    padding-left: 44px;
    color: #5a5c5d;
    font-size: 15px;
    line-height: 1.55;
}
.dav-tracker__form {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
}
@media (min-width: 640px) {
    .dav-tracker__form {
        grid-template-columns: 1.3fr 0.8fr auto;
        align-items: end;
        gap: 12px;
    }
}
.dav-tracker__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.dav-tracker__field label {
    font-size: 13px;
    font-weight: 600;
    color: #5a5c5d;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.dav-tracker__field input,
.dav-tracker__field select {
    height: 46px;
    padding: 0 14px;
    border: 1.5px solid #e8e8e8;
    border-radius: 8px;
    font-size: 15px;
    font-family: "Outfit", sans-serif;
    color: #353535;
    background: #fff;
    box-sizing: border-box;
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease;
}
.dav-tracker__field input::placeholder {
    color: #9a9a9a;
}
.dav-tracker__field input:focus,
.dav-tracker__field select:focus {
    border-color: #cc3d8c;
    box-shadow: 0 0 0 4px rgba(204, 61, 140, 0.15);
    outline: none;
}
.dav-tracker__field select {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23CC3D8C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='1 1 6 6 11 1'/></svg>");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 12px;
    padding-right: 38px;
}
.dav-tracker__hint {
    margin: 4px 0 0;
    font-size: 13px;
    color: #5a5c5d;
    line-height: 1.5;
}
.dav-tracker__hint code {
    background: #fdf4f9;
    color: #cc3d8c;
    padding: 1px 6px;
    border-radius: 4px;
    font-size: 12.5px;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
}
.dav-tracker__actions {
    display: flex;
}
.dav-tracker__submit {
    height: 46px;
    padding: 0 22px;
    border: none;
    border-radius: 8px;
    background: #cc3d8c;
    color: #fff;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    font-size: 15px;
    cursor: pointer;
    width: 100%;
    transition:
        background 0.15s ease,
        box-shadow 0.15s ease,
        transform 0.05s ease;
}
@media (min-width: 640px) {
    .dav-tracker__submit {
        width: auto;
    }
}
.dav-tracker__submit:hover {
    background: #b13478;
    box-shadow: 0 6px 18px rgba(204, 61, 140, 0.25);
}
.dav-tracker__submit:active {
    transform: translateY(1px);
}
.dav-tracker__submit:focus-visible {
    outline: 3px solid rgba(204, 61, 140, 0.35);
    outline-offset: 2px;
}

/* Tracker error — visual ze sdíleného .dav-tracker__error (callout). Tady jen kontext-margin a font. */
.dav-tracker__error {
    margin: 14px 0 0;
    font-size: 14.5px;
}

/* Kroky jak balík cestuje */
.dav-tracking-steps-wrap {
    background: #f7f7f7;
    border-radius: 12px;
    padding: 36px 28px;
    margin: 0 0 48px;
}
.dav-tracking-steps-wrap h2 {
    font-size: 22px;
    text-align: center;
    margin: 0 0 8px;
}
.dav-tracking-sub {
    text-align: center;
    color: #5a5c5d;
    font-size: 15px;
    margin: 0 0 28px;
}
.dav-tracking-steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    position: relative;
}
@media (max-width: 900px) {
    .dav-tracking-steps {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }
}
@media (max-width: 480px) {
    .dav-tracking-steps {
        grid-template-columns: 1fr;
    }
}
/* .dav-tracking-step + -step-num + -step-title + -step-desc jsou sdílené ve utility */

/* Karty dopravců */
.dav-tracking-carriers-wrap {
    margin: 0 0 48px;
}
.dav-tracking-carriers-wrap > h2 {
    font-size: 22px;
    text-align: center;
    margin: 0 0 8px;
}
.dav-tracking-carriers {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}
@media (max-width: 900px) {
    .dav-tracking-carriers {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}
.dav-tracking-carrier {
    border: 1.5px solid #e8e8e8;
    border-radius: 12px;
    padding: 22px 22px 18px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease;
}
.dav-tracking-carrier:hover {
    border-color: #cc3d8c;
    box-shadow: 0 2px 12px rgba(204, 61, 140, 0.08);
}
.dav-tracking-carrier-logo {
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.dav-tracking-carrier-logo img {
    max-height: 28px;
    max-width: 120px;
}
.dav-tracking-carrier-logo .placeholder {
    font-size: 14px;
    font-weight: 700;
    color: #cc3d8c;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.dav-tracking-carrier h3 {
    font-size: 17px;
    font-weight: 700;
    color: #353535;
    margin: 0;
}
.dav-tracking-carrier p {
    font-size: 14px;
    color: #5a5c5d;
    margin: 0;
    line-height: 1.55;
}
.dav-tracking-carrier .format {
    background: #fdf4f9;
    border-radius: 6px;
    padding: 8px 12px;
    font-size: 13px;
    color: #353535;
    margin: 4px 0 0;
}
.dav-tracking-carrier .format b {
    color: #cc3d8c;
    font-weight: 700;
}
.dav-tracking-carrier .format code {
    font-family: "Outfit", sans-serif;
    background: transparent;
    padding: 0;
    font-weight: 600;
}
.dav-tracking-carrier-link {
    margin-top: auto;
    padding-top: 8px;
    font-size: 14px;
    font-weight: 600;
}
.dav-tracking-carrier-link a {
    color: #cc3d8c;
    text-decoration: underline;
}
.dav-tracking-carrier-link a:hover {
    text-decoration: none;
}

/* FAQ pro Sledování */
.dav-tracking-faq-wrap {
    margin: 0 0 48px;
}
.dav-tracking-faq-wrap > h2 {
    font-size: 22px;
    margin: 0 0 8px;
    text-align: center;
}
.dav-tracking-faq-answer {
    padding: 14px 20px 18px;
    color: #353535;
    font-size: 15px;
    line-height: 1.65;
    border-top: 1px solid #f1e6ee;
}
.dav-tracking-faq-answer p {
    margin: 0 0 10px;
}
.dav-tracking-faq-answer p:last-child {
    margin-bottom: 0;
}
.dav-tracking-faq-answer ul,
.dav-tracking-faq-answer ol {
    padding-left: 22px;
    margin: 6px 0 12px;
}
.dav-tracking-faq-answer ul li,
.dav-tracking-faq-answer ol li {
    margin: 0 0 6px;
}
.dav-tracking-faq-answer ul li::marker,
.dav-tracking-faq-answer ol li::marker {
    color: #cc3d8c;
}
.dav-tracking-faq-answer a {
    color: #cc3d8c;
    text-decoration: underline;
    word-break: break-word;
}
.dav-tracking-faq-answer a:hover {
    text-decoration: none;
}
.dav-tracking-faq-answer b,
.dav-tracking-faq-answer strong {
    font-weight: 700;
    color: #353535;
}

/* Responsive tweaks */
@media (max-width: 640px) {
    .dav-tracker {
        padding: 22px 20px;
    }
    .dav-tracker__title {
        font-size: 20px;
        padding-left: 40px;
    }
    .dav-tracker__title:before {
        width: 28px;
        height: 28px;
        background-size: 18px;
    }
    .dav-tracker__lead {
        padding-left: 40px;
    }
    .dav-tracking-steps-wrap {
        padding: 28px 20px;
    }
    .dav-tracking h2 {
        font-size: 20px;
    }
}

/* =============================================
   3.6) Testujeme, co prodáváme  (.dav-test-*)
   ============================================= */

.dav-test {
    font-family: "Outfit", sans-serif;
    color: #353535;
    font-size: 16px;
    line-height: 1.65;
    max-width: 920px;
    margin: 0 auto;
}
.dav-test h2 {
    font-size: 28px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 12px;
    line-height: 1.25;
}
@media (max-width: 700px) {
    .dav-test h2 {
        font-size: 22px;
    }
}
.dav-test-sub {
    color: #5a5c5d;
    font-size: 16px;
    margin: 0 0 24px;
}

/* Hero — left-pink-border lead */
.dav-test-hero {
    margin: 0 0 48px;
}
.dav-test-hero-lead {
    font-size: 22px;
    font-weight: 500;
    line-height: 1.5;
    color: #353535;
    max-width: 760px;
    margin: 0;
    padding: 0 0 0 24px;
    border-left: 4px solid #cc3d8c;
}
.dav-test-hero-lead b {
    color: #cc3d8c;
}
@media (max-width: 700px) {
    .dav-test-hero-lead {
        font-size: 18px;
        padding-left: 16px;
    }
}

/* Srovnávací tabulka — bez černých headerů, používá brand pink + light pink */
.dav-test-compare {
    margin: 0 0 56px;
}
.dav-test-compare h2 {
    text-align: center;
}
.dav-test-compare .dav-test-sub {
    text-align: center;
}

.dav-test-compare-table {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    background: #fff;
    border: 1.5px solid #e8e8e8;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(204, 61, 140, 0.06);
}
.dav-test-compare-row {
    display: contents;
}
.dav-test-compare-cell {
    padding: 18px 20px;
    border-top: 1px solid #f1e6ee;
    font-size: 15px;
    line-height: 1.5;
    color: #353535;
    display: flex;
    align-items: center;
    gap: 10px;
}
.dav-test-compare-row:first-child .dav-test-compare-cell {
    border-top: none;
}
.dav-test-compare-cell.label {
    font-weight: 600;
    color: #353535;
    background: #f7f7f7;
}
.dav-test-compare-cell.davona {
    background: #fdf4f9;
    color: #353535;
    font-weight: 500;
    border-left: 3px solid #cc3d8c;
}
.dav-test-compare-cell.them {
    background: #fff;
    color: #5a5c5d;
}

/* Header row — pink/light-pink (žádná černá) */
.dav-test-compare-head .dav-test-compare-cell {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 18px 20px;
}
.dav-test-compare-head .dav-test-compare-cell.label {
    background: #5a5c5d;
    color: #fff;
}
.dav-test-compare-head .dav-test-compare-cell.davona {
    background: #cc3d8c;
    color: #fff;
    border-left: none;
}
.dav-test-compare-head .dav-test-compare-cell.them {
    background: #5a5c5d;
    color: #fff;
}

.dav-test-check {
    color: #cc3d8c;
    font-weight: 800;
    flex-shrink: 0;
}
.dav-test-cross {
    color: #b0b0b0;
    font-weight: 800;
    flex-shrink: 0;
}

/* Mobile compare — stack row s prefix labely */
@media (max-width: 700px) {
    .dav-test-compare-table {
        grid-template-columns: 1fr;
    }
    .dav-test-compare-cell {
        padding: 12px 16px;
        border-top: 1px solid #f1e6ee;
    }
    .dav-test-compare-cell.label {
        font-size: 13px;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        background: #f7f7f7;
        color: #353535;
        padding: 10px 16px;
    }
    .dav-test-compare-cell.davona {
        border-left: none;
        border-top: none;
    }
    .dav-test-compare-cell.davona:before {
        content: "✓ Davona: ";
        font-weight: 700;
        color: #cc3d8c;
        margin-right: 6px;
    }
    .dav-test-compare-cell.them {
        border-top: none;
    }
    .dav-test-compare-cell.them:before {
        content: "✕ Levná tržiště: ";
        font-weight: 700;
        color: #5a5c5d;
        margin-right: 6px;
    }
    .dav-test-compare-head {
        display: none;
    }
}

/* Risks grid (6 karet, white card + pink left-border + ⚠ icon) */
.dav-test-risks {
    margin: 0 0 56px;
}
.dav-test-risks h2 {
    text-align: center;
}
.dav-test-risks .dav-test-sub {
    text-align: center;
}
.dav-test-risks-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
@media (max-width: 900px) {
    .dav-test-risks-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 540px) {
    .dav-test-risks-grid {
        grid-template-columns: 1fr;
    }
}
.dav-test-risk {
    background: #fff;
    border: 1.5px solid #e8e8e8;
    border-left: 4px solid #cc3d8c;
    border-radius: 10px;
    padding: 22px 20px;
}
.dav-test-risk-icon {
    font-size: 24px;
    color: #cc3d8c;
    line-height: 1;
    margin: 0 0 10px;
}
.dav-test-risk h3 {
    font-size: 16px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 8px;
}
.dav-test-risk p {
    font-size: 14px;
    color: #5a5c5d;
    line-height: 1.55;
    margin: 0;
}

/* Named callout (Temu/AliExpress/Shein zmínka) — používá sdílený .dav-tip,
   tady jen context-spacing */
.dav-test-named-callout {
    margin: 24px 0 0;
    font-size: 15px;
}
.dav-test-named-callout b {
    color: #cc3d8c;
}

/* Pivot — kompozice se sdíleným .dav-cta-block, jen jiný margin a padding */
.dav-test-pivot {
    margin: 0 0 56px;
    padding: 36px 32px;
}
.dav-test-pivot h2 {
    margin: 0 0 12px;
    font-size: 28px;
}
.dav-test-pivot p {
    font-size: 17px;
    color: #5a5c5d;
    max-width: 640px;
    margin: 0 auto;
}

/* Jak vybíráme — sekce wrap */
.dav-test-process {
    margin: 0 0 56px;
}
.dav-test-process h2 {
    text-align: center;
    margin: 0 0 28px;
}

/* Testujeme step grid — left-align, F7F7F7 bg (přepisuje sdílené white bg) */
.dav-test-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
@media (max-width: 700px) {
    .dav-test-steps {
        grid-template-columns: 1fr;
    }
}
.dav-test-step {
    background: #f7f7f7;
    border: none;
    border-radius: 12px;
    padding: 26px 22px;
    text-align: left;
}
.dav-test-step-num {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #cc3d8c;
    color: #fff;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 14px;
}
.dav-test-step h3 {
    font-size: 17px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 8px;
}
.dav-test-step p {
    font-size: 15px;
    color: #5a5c5d;
    line-height: 1.55;
    margin: 0;
}

/* Certifikáty section wrap (cert karty samy = sdílené .dav-cert / .dav-cert-badge / .dav-cert-text) */
.dav-test-certs {
    background: #f7f7f7;
    border-radius: 12px;
    padding: 32px 28px;
    margin: 0 0 56px;
}
.dav-test-certs h2 {
    text-align: center;
    margin: 0 0 8px;
}
.dav-test-certs .dav-test-sub {
    text-align: center;
}

/* Social proof — big 98 % blok (číslo je sdílené .dav-stat-num--lg) */
.dav-test-social {
    background: #f9f0f5;
    border-radius: 12px;
    padding: 36px 32px;
    margin: 0 0 56px;
    text-align: center;
}
.dav-test-social h2 {
    margin: 0 0 12px;
}
.dav-test-social p {
    color: #5a5c5d;
    max-width: 560px;
    margin: 0 auto 18px;
}

/* =============================================
   3.7) Velkoobchod  (.dav-velkoobchod-*)
   ============================================= */

.dav-velkoobchod {
    font-family: "Outfit", sans-serif;
    color: #353535;
    font-size: 16px;
    line-height: 1.65;
    max-width: 1080px;
    margin: 0 auto;
}

/* Lead / hero — pink left-border */
.dav-velkoobchod-lead {
    background: #fdf4f9;
    border-left: 4px solid #cc3d8c;
    border-radius: 0 10px 10px 0;
    padding: 22px 26px;
    margin: 0 0 40px;
}
.dav-velkoobchod-lead p {
    margin: 0;
    font-size: 18px;
    line-height: 1.55;
    color: #353535;
}
.dav-velkoobchod-lead b {
    color: #cc3d8c;
    font-weight: 700;
}
@media (max-width: 768px) {
    .dav-velkoobchod-lead {
        padding: 18px 20px;
    }
    .dav-velkoobchod-lead p {
        font-size: 16px;
    }
}

/* Generic section + h2 */
.dav-velkoobchod-section {
    margin: 0 0 48px;
    scroll-margin-top: 24px;
}
.dav-velkoobchod-section h2 {
    font-size: 24px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f9f0f5;
    line-height: 1.3;
}
@media (max-width: 768px) {
    .dav-velkoobchod-section h2 {
        font-size: 20px;
    }
}
.dav-velkoobchod-section-sub {
    margin: -6px 0 24px;
    color: #5a5c5d;
    font-size: 14px;
}

/* Steps (jak se stát) — sdílí utility .dav-step, jen grid wrapper */
.dav-velkoobchod-steps {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
@media (max-width: 700px) {
    .dav-velkoobchod-steps {
        grid-template-columns: 1fr;
    }
}
.dav-velkoobchod-steps .dav-step-desc a {
    color: #cc3d8c;
    text-decoration: underline;
    font-weight: 600;
}
.dav-velkoobchod-steps .dav-step-desc a:hover {
    text-decoration: none;
}

/* Prodej za velkoobchodní ceny je určen — 2 cílovky */
.dav-velkoobchod-targets {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
@media (max-width: 700px) {
    .dav-velkoobchod-targets {
        grid-template-columns: 1fr;
    }
}
.dav-velkoobchod-target {
    background: #f7f7f7;
    border: 1px solid #e8e8e8;
    border-radius: 12px;
    padding: 22px 24px;
}
.dav-velkoobchod-target__title {
    font-size: 17px;
    font-weight: 700;
    color: #cc3d8c;
    margin: 0 0 6px;
}
.dav-velkoobchod-target p {
    margin: 0;
    color: #353535;
    font-size: 15px;
}

/* Bullet seznam (Na co klademe důraz, Proč pracovat s námi) */
.dav-velkoobchod-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 10px;
}
.dav-velkoobchod-list li {
    position: relative;
    padding: 14px 18px 14px 48px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    line-height: 1.55;
}
.dav-velkoobchod-list li::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #cc3d8c;
}
/* Modifier --check: zelená/pinková fajfka místo puntíku */
.dav-velkoobchod-list--check li::before {
    content: "✓";
    background: transparent;
    color: #cc3d8c;
    font-weight: 800;
    font-size: 18px;
    width: auto;
    height: auto;
    line-height: 1;
}

/* Naše specializace — 2×2 grid kartiček s pink akcentem */
.dav-velkoobchod-specs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}
@media (max-width: 700px) {
    .dav-velkoobchod-specs {
        grid-template-columns: 1fr;
    }
}
.dav-velkoobchod-spec {
    background: #f9f0f5;
    border-radius: 12px;
    padding: 20px 22px;
    color: #353535;
    font-size: 15px;
    line-height: 1.55;
    border-top: 3px solid #cc3d8c;
}

/* USP blok (vyřezávací šablony s českým textem) — pink gradient */
.dav-velkoobchod-usp {
    background: linear-gradient(135deg, #fdf4f9 0%, #f9f0f5 100%);
    border-radius: 14px;
    padding: 28px 30px;
    border: 1px solid #f1e6ee;
}
.dav-velkoobchod-usp h2 {
    margin: 0 0 8px;
    padding-bottom: 0;
    border-bottom: 0;
    font-size: 22px;
    color: #cc3d8c;
}
.dav-velkoobchod-usp p {
    margin: 0;
    color: #353535;
    font-size: 16px;
    line-height: 1.6;
}

/* Sekce se značkami — větší margin pod nadpisem */
.dav-velkoobchod-section--brands {
    margin-bottom: 56px;
}

/* Brand cards grid */
.dav-velkoobchod-brands {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
@media (max-width: 900px) {
    .dav-velkoobchod-brands {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 560px) {
    .dav-velkoobchod-brands {
        grid-template-columns: 1fr;
    }
}

/* Brand card — <a> wrapper se <span> obsahem (Shoptet WYSIWYG quirk) */
.dav-velkoobchod-brands > .dav-velkoobchod-brand {
    display: flex !important;
    flex-direction: column !important;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 12px;
    padding: 22px 22px 20px;
    text-decoration: none !important;
    color: #353535 !important;
    transition:
        border-color 0.18s,
        transform 0.18s,
        box-shadow 0.18s;
    height: 100%;
}
.dav-velkoobchod-brands > .dav-velkoobchod-brand:hover {
    border-color: #cc3d8c;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(204, 61, 140, 0.12);
    text-decoration: none !important;
}
.dav-velkoobchod-brands > .dav-velkoobchod-brand:focus-visible {
    outline: 2px solid #cc3d8c;
    outline-offset: 3px;
}

.dav-velkoobchod-brand__logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 64px;
    margin: 0 0 14px;
}
.dav-velkoobchod-brand__logo img {
    max-height: 60px;
    max-width: 80%;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

.dav-velkoobchod-brand__name {
    display: block;
    font-size: 17px;
    font-weight: 700;
    color: #cc3d8c;
    margin: 0 0 8px;
    line-height: 1.3;
}

.dav-velkoobchod-brand__desc {
    display: block;
    font-size: 14px;
    line-height: 1.55;
    color: #5a5c5d;
    margin: 0;
}

/* CTA blok dole — sdílený .dav-cta-block + drobná úprava h2 fontu (sekce h2 ho přebije specificity-wise, vrátíme) */
.dav-velkoobchod .dav-cta-block h2 {
    padding-bottom: 0;
    border-bottom: 0;
    margin: 0 0 10px;
}

/* =============================================
   3.8) Věrnostní program  (.dav-vernost-*)
   ============================================= */

.dav-vernost {
    font-family: "Outfit", sans-serif;
    color: #353535;
    font-size: 16px;
    line-height: 1.65;
    max-width: 1080px;
    margin: 0 auto;
}

/* Lead / hero — pink left-border (sjednoceno s Velkoobchodem) */
.dav-vernost-lead {
    background: #fdf4f9;
    border-left: 4px solid #cc3d8c;
    border-radius: 0 10px 10px 0;
    padding: 22px 26px;
    margin: 0 0 40px;
}
.dav-vernost-lead p {
    margin: 0;
    font-size: 18px;
    line-height: 1.55;
    color: #353535;
}
.dav-vernost-lead b {
    color: #cc3d8c;
    font-weight: 700;
}
@media (max-width: 768px) {
    .dav-vernost-lead {
        padding: 18px 20px;
    }
    .dav-vernost-lead p {
        font-size: 16px;
    }
}

/* Generic section + h2 (border-bottom akcent jako Velkoobchod) */
.dav-vernost-section {
    margin: 0 0 48px;
    scroll-margin-top: 24px;
}
.dav-vernost-section h2 {
    font-size: 24px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f9f0f5;
    line-height: 1.3;
}
@media (max-width: 768px) {
    .dav-vernost-section h2 {
        font-size: 20px;
    }
}
.dav-vernost-section-sub {
    margin: -6px 0 24px;
    color: #5a5c5d;
    font-size: 14px;
}

/* Kroky "Jak to funguje" — 3 sloupce, sdílí utility .dav-step */
.dav-vernost-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
@media (max-width: 700px) {
    .dav-vernost-steps {
        grid-template-columns: 1fr;
    }
}
.dav-vernost-steps .dav-step-desc a {
    color: #cc3d8c;
    text-decoration: underline;
    font-weight: 600;
}
.dav-vernost-steps .dav-step-desc a:hover {
    text-decoration: none;
}

/* Slevové úrovně — 3 karty: velké % (sdílené .dav-stat-num--lg) + práh obratu */
.dav-vernost-levels {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    align-items: stretch;
}
@media (max-width: 800px) {
    .dav-vernost-levels {
        grid-template-columns: 1fr;
    }
}
.dav-vernost-level {
    background: #fff;
    border: 1.5px solid #e8e8e8;
    border-radius: 14px;
    padding: 30px 24px;
    text-align: center;
    transition:
        border-color 0.18s,
        transform 0.18s,
        box-shadow 0.18s;
}
/* Nejvyšší úroveň zvýrazněná pink gradientem */
.dav-vernost-level--top {
    background: linear-gradient(135deg, #fdf4f9 0%, #f9f0f5 100%);
    border-color: #f1e6ee;
}
.dav-vernost-level .dav-stat-num--lg {
    color: #cc3d8c;
    margin: 0 0 10px;
}
.dav-vernost-level__from {
    font-size: 15px;
    color: #5a5c5d;
    line-height: 1.5;
}
.dav-vernost-level__from b {
    display: block;
    color: #353535;
    font-weight: 700;
    font-size: 17px;
    margin-top: 2px;
}

/* Upozornění — seznam uvnitř sdíleného .dav-tip callouttu */
.dav-vernost-tip-list {
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.dav-vernost-tip-list li {
    position: relative;
    padding-left: 18px;
    line-height: 1.55;
}
.dav-vernost-tip-list li::before {
    content: "!";
    position: absolute;
    left: 0;
    top: 0;
    color: #cc3d8c;
    font-weight: 800;
}

/* CTA blok dole — sdílený .dav-cta-block; sjednocení h2 (sekce h2 by ho jinak přebila) */
.dav-vernost .dav-cta-block h2 {
    padding-bottom: 0;
    border-bottom: 0;
    margin: 0 0 10px;
}

/* =============================================
   4) SHOPTET PAGE OVERRIDES  (in-<slug>-*)
   ============================================= */

/* Prodejna a osobní odběr — H1 + kaňka dekorace */
.in-prodejna-a-osobni-odber .content-inner h1 {
    font-size: 30px;
    font-weight: 400;
    margin: 0 0 16px;
}
.in-prodejna-a-osobni-odber .content-inner .customHeader {
    position: relative;
}
.in-prodejna-a-osobni-odber .content-inner .customHeader:before {
    background-image: url(/user/documents/upload/sablona/kanka_extra.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    bottom: 6px;
    display: block;
    height: 267.5px;
    position: absolute;
    right: 0;
    width: 341px;
    z-index: -1;
    pointer-events: none;
}
@media (min-width: 992px) {
    .in-prodejna-a-osobni-odber .content-inner .customHeader:before {
        content: "";
    }
}
@media (min-width: 1440px) {
    .in-prodejna-a-osobni-odber .content-inner .customHeader:before {
        height: 535px;
        width: 682px;
    }
}
