:root { --atw-focus: var(--primary); }
h1,h2,h3,h4 { letter-spacing: 0; }
.atw-skip { position: fixed; z-index: 100; top: -100px; left: 16px; padding: 12px; background: var(--card); color: var(--primary); }
.atw-skip:focus { top: 12px; }
body.admin-bar header { top: 32px; }
.atw-mobile-menu { position: fixed; top: 64px; left: 0; right: 0; z-index: 45; max-height: calc(100dvh - 140px); overflow: auto; background: var(--background); border-bottom: 1px solid var(--border); padding: 12px 20px; }
.atw-mobile-menu[hidden] { display: none; }
.atw-mobile-menu a { display:block; padding: 12px 0; border-bottom: 1px solid var(--border); font-weight: 500; }
.atw-form input:not([type=submit]):not([type=checkbox]):not([type=radio]), .atw-form textarea, .atw-form select { width:100%; border:1px solid var(--input); border-radius:4px; background:var(--card); color:var(--foreground); padding:10px 14px; }
.atw-form input[type=submit], .atw-form button[type=submit] { background: var(--primary); color:var(--primary-foreground); padding:12px 20px; border-radius:4px; cursor:pointer; }
.atw-form p { margin-bottom:16px; }
:focus-visible { outline:2px solid var(--atw-focus); outline-offset:3px; }
@media(min-width:1280px) { .atw-mobile-menu { display:none; } }
@media(max-width:782px) { body.admin-bar header { top:46px; } body.admin-bar .atw-mobile-menu { top:110px; } }
@media(max-width:767px) { .fixed.grid-cols-2 .btn-primary { font-size:12px; padding-left:8px; padding-right:8px; } h1 { overflow-wrap:break-word; } }
/* v1.0.2 — logo size set from Apparence -> AT Wellness — Installation */
.atw-logo { height: var(--atw-logo-h, 44px); width: auto; max-width: 45vw; }
@media (max-width: 640px) { .atw-logo { height: min(var(--atw-logo-h, 44px), 34px); } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none !important; animation:none !important; } }

/* v1.0.1 — header: prevent phone button overlapping the menu (Mac/Brave, zoom, wider fonts) */
header.sticky > div > div:last-child { flex-shrink: 0; }
header.sticky nav[aria-label="Navigation principale"] { overflow: hidden; flex: 1 1 auto; justify-content: center; }
@media (max-width: 1439.98px) {
  header.sticky nav[aria-label="Navigation principale"] { display: none !important; }
  header.sticky button[aria-label="Ouvrir le menu"], header.sticky button[aria-expanded] { display: grid !important; }
}
@media (min-width: 1440px) {
  header.sticky button[aria-expanded] { display: none !important; }
  header.sticky > div > a > span.font-display { display: none !important; }
}

/* v1.0.7 */
.bg-turquoise{background-color:var(--turquoise)}.bg-night-foreground\/10{background-color:color-mix(in oklab,var(--night-foreground) 10%,transparent)}.border-night-foreground\/30{border-color:color-mix(in oklab,var(--night-foreground) 30%,transparent)}.gap-6{gap:calc(var(--spacing)*6)}@media (width>=40rem){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=48rem){.md\:items-center{align-items:center}.md\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}}@media (width>=64rem){.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}

.my-8{margin-block:calc(var(--spacing)*8)}
