
/* Stable navigation, including when WordPress displays its administrator toolbar. */
.sf-navbar{position:fixed;top:var(--sf-toolbar-offset,0px);left:0;right:0;z-index:50;background:rgba(255,255,255,.98);border-bottom:1px solid #e2e8f0;padding:14px 0;transition:box-shadow .2s}
.sf-navbar-scrolled{box-shadow:0 5px 20px #0f172a0a}
body.admin-bar{--sf-toolbar-offset:32px}
html{scroll-padding-top:110px}
#booking-card,#contact,#boutique-pro{scroll-margin-top:110px}
.sf-color-dialog{border:0;padding:0;width:min(560px,100%);max-height:92dvh;margin:auto 0 auto auto;border-radius:28px 0 0 28px;color:#0f172a;box-shadow:0 20px 70px #0003;overscroll-behavior:contain}
.sf-color-dialog::backdrop{background:#0f172a88;backdrop-filter:blur(3px)}
.sf-color-body{padding:28px}
.sf-color-photo{position:relative;margin:24px 0 12px;background:white}
.sf-color-photo img{display:block;width:100%;height:auto}
.sf-photo-choice{position:absolute;top:0;bottom:0;border:0;background:transparent;cursor:pointer}
.sf-photo-choice:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
.sf-photo-marker{position:absolute;top:0;bottom:0;border:3px solid #2563eb;border-radius:14px;pointer-events:none;box-shadow:0 0 0 999px #ffffff00}
.sf-photo-marker svg{position:absolute;bottom:5px;left:calc(50% - 12px);background:#2563eb;color:white;border-radius:50%;padding:3px;width:24px;height:24px}
@media(max-width:782px){body.admin-bar{--sf-toolbar-offset:46px}#wpadminbar{position:fixed!important}}
@media(max-width:600px){.sf-color-dialog{width:100%;margin:auto 0 0;border-radius:24px 24px 0 0;max-height:90dvh}.sf-color-body{padding:22px}.sf-navbar{padding:12px 0}}
@media(prefers-reduced-motion:reduce){.sf-navbar{transition:none}}

/* Visual repair comparison: prices remain readable on narrow screens. */
.sf-compare{background:#fff;border:1px solid #e2e8f0;border-radius:28px;padding:24px;box-shadow:0 20px 60px #0f172a0c;color:#0f172a}
.sf-compare-eyebrow{font-size:10px;letter-spacing:.12em;font-weight:800;color:#2563eb}
.sf-compare h3{font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.03em;margin:6px 0 20px;line-height:1.15}
.sf-compare-model{display:flex;gap:18px;align-items:center;margin-bottom:18px}.sf-compare-model img{width:88px;height:86px;object-fit:contain}.sf-compare-model>div{flex:1;min-width:0}.sf-compare-model label{display:block;font-size:12px;font-weight:600;color:#64748b;margin-bottom:5px}.sf-compare-model select{width:100%;background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;padding:12px 8px;font-weight:700;font-size:14px}
.sf-compare-switch{display:flex;background:#f1f5f9;border-radius:12px;padding:4px;gap:4px;margin:0 0 18px;border:0}.sf-compare-switch button{flex:1;padding:10px 4px;border-radius:9px;font-size:13px;font-weight:700;color:#475569}.sf-compare-switch button[aria-pressed=true]{background:#2563eb;color:white;box-shadow:0 3px 8px #2563eb20}.sf-compare button:focus-visible,.sf-compare select:focus-visible,.sf-compare summary:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}
.sf-compare-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sf-compare-price{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:16px 12px;min-width:0}.sf-compare-price>svg{color:#64748b;margin-bottom:8px}.sf-compare-price h4{font-weight:800;font-size:17px}.sf-compare-method{font-size:11px;line-height:1.4;min-height:32px;color:#475569;margin-top:3px}.sf-compare-prefix{display:block;font-size:11px;color:#64748b;margin-top:14px;min-height:16px}.sf-compare-price strong{font-size:clamp(20px,3vw,32px);font-weight:800;letter-spacing:-.04em;display:block;line-height:1.3;overflow-wrap:anywhere}.sf-compare-screenfix{background:#eff6ff;border-color:#93c5fd}.sf-compare-screenfix h4,.sf-compare-screenfix strong,.sf-compare-screenfix>svg{color:#1d4ed8}.sf-compare-bar{height:6px;background:#e2e8f0;border-radius:8px;margin-top:14px;overflow:hidden}.sf-compare-bar span{height:100%;background:#94a3b8;display:block;transition:width .25s}.sf-compare-screenfix .sf-compare-bar span{background:#2563eb}
.sf-compare-saving{display:flex;align-items:center;gap:10px;background:#0f172a;color:#fff;border-radius:18px;padding:16px;margin-top:12px;min-height:86px}.sf-compare-saving>svg{color:#86efac;flex-shrink:0}.sf-compare-saving p{font-size:12px;color:#e2e8f0}.sf-compare-saving strong{font-size:32px;font-weight:800;letter-spacing:-.04em;line-height:1.2}.sf-compare-percent{margin-left:auto;background:#bbf7d0;color:#14532d;font-size:17px;font-weight:800;padding:8px;border-radius:10px;white-space:nowrap}.sf-compare-footnote{font-size:11px;line-height:1.5;color:#64748b;margin-top:12px}.sf-compare-details{border-top:1px solid #e2e8f0;margin-top:16px;padding-top:12px;font-size:12px;color:#475569}.sf-compare-details summary{cursor:pointer;font-weight:600}.sf-compare-details p{margin-top:10px;line-height:1.6}.sf-compare-details a{color:#1d4ed8;text-decoration:underline}
@media(max-width:380px){.sf-compare{padding:16px}.sf-compare-model img{width:65px;height:70px}.sf-compare-saving{padding:12px;gap:6px}.sf-compare-saving>svg{display:none}.sf-compare-percent{font-size:14px}.sf-compare-price{padding:12px 8px}}
@media(max-width:640px){.sf-compare-model select{font-size:16px;min-height:44px}.sf-compare-switch button{min-height:44px}.sf-compare-details summary{min-height:44px;padding:8px 42px 8px 0}}

.sf-compare-benefits{margin-top:20px}.sf-compare-benefits h4{font-size:16px;font-weight:800;margin-bottom:10px}.sf-compare-benefits table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.45}.sf-compare-benefits th,.sf-compare-benefits td{padding:11px 8px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}.sf-compare-benefits th{width:44%;font-weight:700;color:#0f172a}.sf-compare-benefits th svg{display:inline-block;vertical-align:middle;color:#15803d;margin-right:5px}.sf-compare-benefits td{color:#475569}.sf-compare-benefits tr:nth-child(odd){background:#f8fafc}@media(max-width:380px){.sf-compare-benefits th,.sf-compare-benefits td{padding:10px 5px}.sf-compare-benefits th{width:43%}}

.sf-article-content{line-height:1.8;color:#475569}.sf-article-content h2,.sf-article-content h3{font-weight:700;color:#0f172a;margin:24px 0 12px;font-size:24px}.sf-article-content p{margin:14px 0}.sf-article-content img{max-width:100%;height:auto}.sf-article-content a{color:#2563eb;text-decoration:underline}.sf-article-content ul,.sf-article-content ol{padding-left:24px;list-style:revert}

.sf-native-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;max-width:1200px;margin:auto}.sf-native-header>a{font-size:28px;font-weight:800;text-decoration:none;color:#0f172a}.sf-native-header>a span{color:#2563eb}.sf-native-header nav{display:flex;gap:18px;flex-wrap:wrap}.sf-native-header nav a{color:#334155;text-decoration:none}.sf-native-main{max-width:1120px;margin:30px auto;padding:24px;min-height:60vh}.sf-native-main h1{font-size:32px;line-height:1.2}.sf-native-preview{padding:10px;background:#fef3c7;text-align:center;color:#713f12}.sf-native-footer{padding:32px;text-align:center;border-top:1px solid #e2e8f0;font-size:14px}body.woocommerce,body.page{font-family:system-ui,sans-serif;color:#0f172a;background:#fff}.woocommerce ul.products li.product{border:1px solid #e2e8f0;border-radius:20px;padding:16px;box-sizing:border-box}.woocommerce a.button,.woocommerce button.button.alt{background:#2563eb;color:#fff;border-radius:24px}.woocommerce img{max-width:100%;height:auto}@media(max-width:600px){.sf-native-header{align-items:flex-start;flex-direction:column;padding:18px}.sf-native-main{padding:16px}.woocommerce ul.products li.product{width:100%!important;margin-right:0!important}}

/* Collapse navigation before links compete with the logo, including browser zoom. */
.sf-nav-row{gap:24px;min-width:0}.sf-nav-logo{flex-shrink:0;white-space:nowrap}.sf-nav-desktop{display:none;white-space:nowrap;flex-shrink:0}.sf-nav-toggle{display:block;flex-shrink:0}.sf-nav-mobile{display:flex;max-height:calc(100dvh - 80px);overflow-y:auto}.sf-nav-desktop>a{flex-shrink:0;white-space:nowrap}
@media(min-width:1280px){.sf-nav-desktop{display:flex}.sf-nav-toggle,.sf-nav-mobile{display:none}}

/* Visible selection total on phones and desktops, outside transformed cards. */
.sf-price-dock{position:fixed;bottom:0;left:0;right:0;z-index:90;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px max(16px,calc((100vw - 1000px)/2)) calc(14px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dbe3ee;box-shadow:0 -8px 30px #0f172a16;color:#0f172a;font-family:Inter,system-ui}
.sf-price-dock strong{display:block;font-size:clamp(19px,3vw,26px);line-height:1.3}.sf-price-dock-label{display:block;font-size:12px;color:#475569}.sf-price-dock button{display:flex;align-items:center;gap:6px;background:#2563eb;color:white;border-radius:30px;padding:14px 20px;font-weight:700;flex-shrink:0}.sf-price-dock button:disabled{opacity:.45}.sf-booking-summary-visible{padding-bottom:140px}.sf-booking-summary-visible a[aria-label="Contactez-nous sur WhatsApp"]{bottom:calc(140px + env(safe-area-inset-bottom))!important}
@media(max-width:380px){.sf-price-dock{gap:8px}.sf-price-dock button{padding:12px}.sf-price-dock-label{font-size:11px}}
