/* Généré par l’atelier du site (atelier/design.mjs). Modifier dans l’atelier, pas à la main. */
@import url('assets/fonts/opensauce.css');
:root { color-scheme: only light; --paper: #faf9f6; --ink: #252523; --muted: #6e6b65; --line: #ddd9d1; --soft: #f0eee8; --champagne: #b4a389; --rule: #cdc8bf; --footer: #242422; --footer-ink: #efeee9; --footer-muted: #c3c1ba;
  --serif: 'Atelier Open Sauce Sans', sans-serif; --title-weight: 400;
  --font-accent: 'Atelier Open Sauce Sans', sans-serif; --accent-weight: 400;
  --sans: 'Atelier Open Sauce Sans', sans-serif; --text-weight: 400;
  --font-label: 'Atelier Open Sauce Sans', sans-serif; --label-weight: 500;
  --font-button: 'Atelier Open Sauce Sans', sans-serif; --button-weight: 400;
  --font-nav: 'Atelier Open Sauce Sans', sans-serif; --nav-weight: 400;
  --font-brand: 'Atelier Open Sauce Sans', sans-serif; --brand-weight: 500;
  --accent-style: normal;
  --k-titles: 1; --k-text: 1; --k-space: 1; }
.button, .main-nav .nav-contact, .field input, .field textarea, .profile-options label { border-radius: 6px; }
.hero-shade { opacity: 1; }
@media not all and (max-width: 960px) {
  .site-header .menu-toggle { display: inline-flex; align-items: center; gap: 12px; position: absolute; left: var(--safe-l); top: 0; bottom: 0; z-index: 2; font-size: calc(11px * var(--k-text, 1)); letter-spacing: .14em; text-transform: uppercase; }
  .main-nav:not(.open) .nav-left, .main-nav:not(.open) .nav-right > a:not(.nav-contact):not(.nav-app) { display: none; }
  .main-nav:not(.open) { justify-content: flex-end; }
  .main-nav.open { position: fixed; inset: 0 auto 0 0; width: min(440px, 100vw); flex-direction: column; justify-content: center; align-items: stretch; gap: 0; padding: 120px 56px 56px; background: var(--paper); color: var(--ink); box-shadow: 0 0 0 100vmax #0000004d; }
  .main-nav.open .nav-left, .main-nav.open .nav-right { flex-direction: column; align-items: flex-start; gap: 0; margin: 0; }
  .main-nav.open a { font-size: calc(22px * var(--k-text, 1)); padding: 12px 0; }
  .main-nav.open .nav-contact { margin-top: 24px; padding: 12px 20px; font-size: calc(13px * var(--k-text, 1)); }
}
h1, h2 { text-transform: uppercase; letter-spacing: .12em; line-height: 1.14; --k-titles: 0.6; }
.hero h1 { letter-spacing: .08em; line-height: 1.08; --k-titles: 0.62; }
.moment-photo, .residence-photo { border-radius: 14px; overflow: hidden; }
.contact-aside img { border-radius: 14px; }
@media screen and (prefers-reduced-motion: no-preference) {
  :root { --transition: empilement; }
  .motion-enabled .home-page main > section { position: sticky; top: var(--stick, 0px); isolation: isolate; transform-origin: 50% 0; transform: scale(calc(1 - .05 * var(--cover, 0))); }
  :where(.motion-enabled .home-page main > section) { background-color: var(--paper); }
  .motion-enabled .home-page main > section + section { border-radius: 28px 28px 0 0; box-shadow: 0 -28px 64px -30px #0000004d; }
  .motion-enabled .home-page main > section::after { content: ""; position: absolute; inset: 0; z-index: 10; border-radius: inherit; background: #0b0a0973; opacity: var(--cover, 0); pointer-events: none; }
  @media (max-width: 600px) { .motion-enabled .home-page main > section + section { border-radius: 20px 20px 0 0; } }
}
.partners { display: none !important; }
.service-card[data-service="soin-du-domicile"], .service-dialog[data-service="soin-du-domicile"] { --card-photo: url("assets/editorial/pexels-6466227-1000.webp"); --card-focus: 64% 68%; }
.service-card[data-service="soin-du-corps"], .service-dialog[data-service="soin-du-corps"] { --card-photo: url("assets/editorial/pexels-37229291-1000.webp"); --card-focus: 50% 50%; }
.service-card[data-service="soin-de-l-apparence"], .service-dialog[data-service="soin-de-l-apparence"] { --card-photo: url("assets/editorial/unsplash-Md_DhaFsnCQ-1000.webp"); --card-focus: 50% 50%; }
.service-card[data-service="coaching-prive"], .service-dialog[data-service="coaching-prive"] { --card-photo: url("assets/editorial/unsplash-5JQxj-zc5ng-1000.webp"); --card-focus: 46% 47%; }
.service-card[data-service="chef-prive-a-domicile"], .service-dialog[data-service="chef-prive-a-domicile"] { --card-photo: url("assets/editorial/chef.webp"); --card-focus: 50% 100%; }
.service-card[data-service="mixologie"], .service-dialog[data-service="mixologie"] { --card-photo: url("assets/editorial/unsplash-dmkmrNptMpw-1000.webp"); --card-focus: 87% 50%; }
.service-card[data-service="design-floral"], .service-dialog[data-service="design-floral"] { --card-photo: url("assets/editorial/unsplash-0rytdoaiV4Y-1000.webp"); --card-focus: 50% 50%; }
.service-card[data-service="chauffeur-prive"], .service-dialog[data-service="chauffeur-prive"] { --card-photo: url("assets/editorial/pexels-8425044-1000.webp"); --card-focus: 51% 50%; }
.service-card[data-service="soin-de-la-garde-robe"], .service-dialog[data-service="soin-de-la-garde-robe"] { --card-photo: url("assets/editorial/pexels-10558201-1000.webp"); --card-focus: 50% 50%; }
.service-card[data-service="personal-shopping"], .service-dialog[data-service="personal-shopping"] { --card-photo: url("assets/editorial/pexels-8485844-1000.webp"); --card-focus: 11% 50%; }
.service-card[data-service="soin-du-vehicule"], .service-dialog[data-service="soin-du-vehicule"] { --card-photo: url("assets/editorial/unsplash-CsZjHjFN3N8-1000.webp"); --card-focus: 48% 50%; }
.service-card[data-service="toilettage"], .service-dialog[data-service="toilettage"] { --card-photo: url("assets/editorial/pexels-19145879-1000.webp"); --card-focus: 50% 50%; }
.service-card[data-service="promenade"], .service-dialog[data-service="promenade"] { --card-photo: url("assets/editorial/pexels-14313679-1000.webp"); --card-focus: 50% 50%; }
.service-card[data-service="garde-a-domicile"], .service-dialog[data-service="garde-a-domicile"] { --card-photo: url("assets/editorial/unsplash-6SqFIc__5x4-1000.webp"); --card-focus: 50% 50%; }
.empty-universe[data-universe="restaurants"] { --card-photo: url("assets/editorial/unsplash-Ph7Y42lXzyw-1000.webp"); --card-focus: 50% 50%; }
.empty-universe[data-universe="surmesure"] { --card-photo: url("assets/editorial/pexels-8667538-1000.webp"); --card-focus: 50% 50%; }
.service-photo, .dialog-photo { display: block; overflow: hidden; background: var(--soft); }
.service-photo::before, .dialog-photo::before { content: ""; display: block; height: 100%; background: var(--card-photo) var(--card-focus, 50% 50%) / cover no-repeat; }
.service-dialog { padding-top: 0; }
.dialog-photo { margin: 0 -64px 40px; aspect-ratio: 16 / 9; }
.dialog-close { top: 16px; right: 16px; z-index: 1; border-radius: 50%; background: var(--paper); }
.empty-universe { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: clamp(32px, 5vw, 72px); align-items: center; max-width: none; }
.empty-universe .service-photo { aspect-ratio: 4 / 3; }
@media (max-width: 600px) { .dialog-photo { margin: 0 -28px 28px; } .empty-universe { display: block; } .empty-universe .service-photo { margin-bottom: 28px; } }
.service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.service-card { position: relative; isolation: isolate; overflow: hidden; aspect-ratio: 4 / 5; align-items: flex-end; padding: 28px; border: 0; color: #fff; }
.service-card .service-photo { position: absolute; inset: 0; z-index: -2; }
.service-card::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, #00000014, #0000004d 40%, #000000c2); }
.service-card .service-copy { text-shadow: 0 1px 12px #00000080; }
.service-card .service-short { color: #ffffffe6; }
.service-card:focus-visible { outline-color: var(--ink); }
@media (max-width: 960px) { .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .service-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; } .service-card { aspect-ratio: 4 / 3; padding: 22px; } }
.service-card { border-radius: 14px; } .empty-universe .service-photo { border-radius: 14px; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) { .service-photo::before { transition: transform 1.2s cubic-bezier(.16, 1, .3, 1); } .service-card:hover .service-photo::before { transform: scale(1.05); } }
.hero-photo img, .hero-photo video, .moment-photo img, .moment-photo video, .dinner-photo, .residence-photo img, .residence-photo video, .contact-aside img, .service-photo::before, .dialog-photo::before { filter: sepia(.14) saturate(1.12) contrast(1.03); }
.eyebrow::before { content: ""; display: block; width: 32px; height: 1px; margin: 0 0 18px; background: var(--champagne); }
.intro .eyebrow::before, .invitation .eyebrow::before, .dinner .eyebrow::before, .method .eyebrow::before, .partners .eyebrow::before, .contact-intro .eyebrow::before, .hero .eyebrow::before { margin-inline: auto; }
.hero .eyebrow::before, .dinner .eyebrow::before { background: currentColor; opacity: .8; }
.site-footer { --footer: var(--soft); --footer-ink: var(--ink); --footer-muted: var(--muted); border-top: 1px solid var(--line); }
.site-footer .monogram { filter: none; }
.footer-bottom { border-top-color: var(--line); }
