/* Bleu de Prusse — conseil informatique.
   Bleu profond, sérif posée pour les titres, filet acier, cartes calmes et
   bien ombrées : une carte qui inspire confiance avant de démontrer. */

body.wk {
    --t-steel: #4FA3C7;
    --t-line: #E3E8EF;
    --wk-tint: #E9EFF6;
    --wk-tint-strong: #D8E3EF;
    --wk-backdrop: #E6EBF2;
}
.wk ::selection { background: #D3E3F1; color: var(--wk-text); }

/* --- En-tête : papier à en-tête ---------------------------------------------- */

.wk[data-hero="split"] .wk-hero__cover { height: 178px; background: #123A5E; }
.wk[data-cover="photo"] .wk-hero__veil { background: linear-gradient(180deg, rgba(15,27,45,0) 50%, rgba(15,27,45,.28)); }
.wk-hero__veil { border-bottom: 3px solid var(--t-steel); }
.wk[data-hero="split"] .wk-avatar {
    width: 108px;
    height: 108px;
    margin-top: -54px;
    border: 4px solid var(--wk-bg);
    border-radius: 12px;
    box-shadow: 0 12px 26px rgba(15,27,45,.16);
}
.wk-avatar__initials { font-size: 38px; letter-spacing: -.01em; }

.wk[data-hero="split"] .wk-identity { margin-top: 18px; }
.wk-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: .16em;
    margin-bottom: 10px;
}
.wk-eyebrow::before { content: ""; width: 20px; height: 2px; background: var(--t-steel); flex-shrink: 0; }
.wk-name { font-size: clamp(29px, 8vw, 34px); letter-spacing: -.015em; line-height: 1.1; }
.wk-verified { font-size: .52em; vertical-align: .28em; margin-inline-start: .1em; }
.wk-role { margin-top: 8px; font-size: 15px; line-height: 1.45; }
.wk-role__company { font-weight: 600; }

.wk-socials { gap: 8px; margin-top: 20px; }
.wk-socials a {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--wk-surface);
    border: 1px solid var(--wk-border);
}
.wk-socials a:hover { background: var(--wk-primary); border-color: var(--wk-primary); color: #fff; transform: none; }
.wk-about { font-size: 15.5px; line-height: 1.7; }

/* --- Actions ---------------------------------------------------------------- */

.wk-actions { gap: 8px; padding-top: 24px; }
.wk .wk-action {
    min-height: 68px;
    border-radius: 10px;
    border-color: var(--t-line);
    box-shadow: 0 1px 2px rgba(15,27,45,.05);
    font-size: 12.5px;
    font-weight: 600;
}
.wk-action i, .wk-action svg { font-size: 17px; color: var(--wk-primary); }
.wk .wk-btn { border-radius: 8px; font-weight: 600; letter-spacing: .01em; }
.wk-save .wk-btn { min-height: 52px; box-shadow: 0 10px 22px rgba(18,58,94,.22); }

/* --- Titres : pictogramme carré, sérif, filet acier --------------------------- */

.wk-section { padding-top: 44px; }
.wk[data-heading="center"] .wk-heading { gap: 10px; margin-bottom: 20px; }
.wk[data-heading="center"] .wk-heading__icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--wk-primary);
    color: var(--wk-on-primary);
    font-size: 15px;
}
.wk-section-title { font-size: 24px; letter-spacing: -.012em; }
.wk[data-heading="center"] .wk-heading::after {
    content: "";
    width: 28px;
    height: 2px;
    margin-top: 2px;
    background: var(--t-steel);
}

/* --- Cartes ------------------------------------------------------------------- */

.wk[data-cards="elevated"] .wk-surface { border: 1px solid var(--t-line); }

/* Coordonnées */
.wk-contact { gap: 10px; }
.wk-contact__item { padding: 14px 16px; }
.wk-contact__icon { width: 42px; height: 42px; border-radius: 10px; }
.wk-contact__label { font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.wk-contact__value { font-size: 15px; }

/* Services : titres en sérif */
.wk-services { gap: 12px; }
.wk-service { padding: 18px; gap: 16px; }
.wk-service__icon { width: 46px; height: 46px; border-radius: 10px; font-size: 18px; }
.wk-service__media { border-radius: 10px; }
.wk-service__title { font-family: var(--wk-font-display); font-weight: 600; font-size: 18px; line-height: 1.25; letter-spacing: -.01em; }
.wk-service__text { margin-top: 6px; font-size: 14.5px; }

/* Liens */
.wk-link { border-radius: 10px; border: 1px solid var(--wk-border); box-shadow: 0 1px 2px rgba(15,27,45,.05); }
.wk-link:hover { border-color: var(--wk-primary); }
.wk-link i, .wk-link svg, .wk .wk-more { color: var(--wk-primary); }
.wk-link--button i, .wk-link--button svg { color: inherit; }

/* Avis : citations en italique */
.wk-quote { padding: 26px 24px 22px; }
.wk-quote::before {
    content: "\201C";
    top: 12px;
    inset-inline-end: 20px;
    font-family: var(--wk-font-display);
    font-size: 64px;
    color: var(--t-steel);
    opacity: .9;
}
.wk-quote__text {
    padding-inline-end: 34px;
    font-family: var(--wk-font-display);
    font-style: italic;
    font-weight: 400;
    font-size: 17px;
    line-height: 1.6;
}
.wk-quote__author { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--t-line); }
.wk-quote__avatar { width: 38px; height: 38px; border-radius: 10px; background: var(--wk-tint); }
.wk-quote__name { font-size: 14px; font-weight: 600; }

/* Horaires */
.wk-hours { padding: 6px 20px; }
.wk-hours__row { border-bottom: 1px solid var(--t-line); padding: 12px 0; font-size: 14.5px; }
.wk-hours__time { color: var(--wk-text); }
.wk-hours__row.is-closed .wk-hours__time { opacity: 1; color: var(--wk-muted); }
.wk-hours__row.is-today { margin: 0 -12px; padding-inline: 12px; border-radius: 8px; background: var(--wk-tint); }

/* Rendez-vous, formulaires */
.wk-booking__date { border-width: 1px; border-radius: 8px; background: var(--wk-surface); }
.wk .wk-slots .time-slot { border-width: 1px; border-radius: 8px; }
.wk .wk-input { border-width: 1px; border-radius: 8px; background: var(--wk-surface); }
.wk .wk-input:focus { box-shadow: 0 0 0 3px rgba(18,58,94,.12); }
.wk-upload { border-width: 1px; border-radius: 8px; }

/* Galerie, produits, articles */
.wk-gallery__item { border-radius: 12px; }
.wk-product__title, .wk-post__title { font-family: var(--wk-font-display); font-weight: 600; }
.wk-product__price { font-family: var(--wk-font-body); font-weight: 700; font-size: 17px; }

/* QR, paiement, onglets */
.wk-qr__code { border: 1px solid var(--t-line); }
.wk-qr__text h3 { font-family: var(--wk-font-display); font-size: 18px; font-weight: 600; }
.wk-paylink__icon { border-radius: 10px; }
.wk-tab { border-width: 1px; }

/* Pied et bouton flottant */
.wk-footer { font-size: 12.5px; }
.wk-dock__toggle { border-radius: 14px; box-shadow: 0 12px 26px rgba(18,58,94,.32); }
.wk-dock__btn { border-radius: 12px; border: 1px solid var(--t-line); }
