/* ScèneDeVie — site statique */
@font-face{font-family:"Maven Pro";src:url(../fonts/MavenPro.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Allura";src:url(../fonts/Allura-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"icomoon";src:url(../fonts/icomoon.woff) format("woff"),url(../fonts/icomoon.ttf) format("truetype");font-weight:normal;font-style:normal;font-display:block}

:root{
  --blue:#007aa6;
  --ink:#000;
  --text:#211f1e;
  --muted:#666;
  --grey:#ecebeb;
  --sand:#e8ddd6;
  --dark:#211f1e;
  --white:#fff;
  --max:1170px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:"Maven Pro",Arial,sans-serif;font-size:15px;line-height:1.55;color:var(--text);background:var(--white)}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-decoration:none}
a:hover,a:focus-visible{text-decoration:underline}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
p{margin:0 0 1em}
.container{max-width:var(--max);margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-9999px;top:0;background:#fff;color:#000;padding:8px 12px;z-index:100}
.skip:focus{left:8px;top:8px}

/* Titles */
.section{padding:80px 0;scroll-margin-top:70px}
.section .title{font-size:2.6em;font-weight:500;text-transform:uppercase;letter-spacing:.2em;text-align:center;margin:0 0 60px;color:var(--ink)}
.bg-grey{background:var(--grey)}
.bg-sand{background:var(--sand)}

/* Icons (icomoon from the original theme) */
.icon{font-family:"icomoon"!important;speak:never;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased}
.icon-conseil::before{content:"\e90b"}
.icon-boutique2::before{content:"\e90d"}
.icon-coaching::before{content:"\e90e"}
.icon-shopper::before{content:"\e90f"}
.icon-decoration::before{content:"\e906"}
.icon-boutique::before{content:"\e907"}
.icon-architecture::before{content:"\e908"}
.icon-down::before{content:"\f107"}

/* Buttons */
.btn{display:inline-block;border:1px solid var(--blue);color:var(--blue);background:transparent;padding:8px 22px;font:inherit;font-size:.85em;font-weight:700;text-transform:uppercase;letter-spacing:.03em;cursor:pointer}
.btn:hover,.btn:focus-visible{background:var(--blue);color:#fff;text-decoration:none}
.center{text-align:center}
.toggle-row{margin-top:45px}
.logo-wrap{margin:0}

/* ---------- Navigation ---------- */
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;list-style:none;margin:0;padding:0}
.nav a{font-size:.8em;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.nav a.newsletter{font-family:"Allura",cursive;font-size:1.7em;font-weight:400;text-transform:none;letter-spacing:0}
.menu-toggle{display:none}

/* ---------- Hero slideshow ---------- */
.slides{position:absolute;inset:0;overflow:hidden;background:#111}
.slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .75s ease}
.slides img.on{opacity:1}

/* ---------- Home ---------- */
.home-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;color:#fff}
.home-hero::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.25);pointer-events:none}
.home-hero > *:not(.slides){position:relative;z-index:1}
.home-hero header{padding:22px 0}
.home-hero .nav{justify-content:flex-end}
.home-hero .nav a{color:#fff}
.home-hero .nav a[aria-current]{color:var(--blue)}
.choices{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px 16px 90px}
.choices .logo{width:min(440px,80vw)}
.choices ul{list-style:none;margin:6vh 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:28px 80px;max-width:820px}
.choices li a{display:block;width:300px;max-width:80vw;padding:14px;background:#fff;color:#000;font-size:1.65em;text-transform:uppercase;letter-spacing:.02em}
.choices li a:hover,.choices li a:focus-visible{color:var(--blue);text-decoration:none}
.scroll-down{position:absolute!important;left:50%;bottom:22px;transform:translateX(-50%);color:#fff;font-size:44px}
.scroll-down:hover{text-decoration:none;color:var(--blue)}

.services3{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}
.svc .icon{display:inline-flex;align-items:center;justify-content:center;width:110px;height:110px;border:2px solid #000;border-radius:50%;font-size:64px;color:#000;margin-bottom:22px}
.svc h3{color:var(--blue);font-weight:500;font-size:1.15em;text-transform:uppercase;margin:0 0 10px}
.svc p{font-weight:700;font-size:.95em;max-width:260px;margin:0 auto}
.more{margin-top:40px;text-align:center}
.more summary{list-style:none;display:inline-block}
.more summary::-webkit-details-marker{display:none}
.more[open] summary{margin-bottom:30px}
.more .body{max-width:760px;margin:0 auto;font-size:1.05em}

.team{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:40px 30px;text-align:center}
.team img{aspect-ratio:387/500;object-fit:cover;width:100%;margin-bottom:14px}
.team h3{color:var(--blue);font-weight:500;text-transform:uppercase;font-size:1.05em;margin:0;line-height:1.3}
.team p{margin:4px 0 0;font-size:.95em}

/* ---------- Boutique ---------- */
.site-header{position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.06)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:12px;padding-bottom:12px}
.site-header .logo img{width:180px}
.site-header .right{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.site-header .site-name{color:var(--blue);font-weight:700;text-transform:uppercase;font-size:1.05em;letter-spacing:.03em}
.site-header .nav a{color:#000}
.site-header .nav a:hover{color:var(--blue)}
.boutique-hero{position:relative;height:72vh;min-height:360px}

.services4{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;align-items:start}
.services4 details{text-align:center}
.services4 summary{list-style:none;cursor:pointer;color:var(--blue);font-weight:500;text-transform:uppercase;font-size:1.05em;line-height:1.35}
.services4 summary::-webkit-details-marker{display:none}
.services4 summary .icon{display:flex;align-items:center;justify-content:center;width:110px;height:110px;margin:0 auto 22px;border:2px solid #000;border-radius:50%;font-size:64px;color:#000}
.services4 summary .plus{display:block;font-size:1.3em;line-height:1}
.services4 details[open] .plus{transform:rotate(45deg)}
.services4 details p{text-align:left;margin-top:18px}

.mag{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:50px 60px}
.mag li{display:grid;grid-template-columns:160px 1fr;gap:24px;align-items:start}
.mag img{width:160px;aspect-ratio:1;object-fit:cover}
.mag h3{font-size:1.1em;text-transform:uppercase;margin:0 0 6px;color:#000}
.mag h4{font-size:1em;font-weight:500;margin:0 0 8px;color:var(--muted)}
.mag p{font-size:.95em}
.js .mag li.extra,.js .brands .extra{display:none}
.js .show-all li.extra,.js .show-all .extra{display:revert}

.brands h3{color:var(--blue);font-weight:500;text-transform:uppercase;text-align:center;margin:50px 0 24px;font-size:1.1em}
.brands h3:first-child{margin-top:0}
.logos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:22px;align-items:center}
.logos li{display:flex;align-items:center;justify-content:center;height:90px;padding:6px}
.logos img{max-height:78px;width:auto;object-fit:contain;transition:opacity .2s}
.logos a:hover img,.logos a:focus-visible img{opacity:.7}

/* ---------- Common blocks ---------- */
.social{text-align:center;color:var(--muted)}
.social .icons{display:flex;justify-content:center;gap:12px;margin-top:12px}
.social .icons img{width:44px;height:44px}

.map{display:block;width:100%;height:420px;border:0;background:var(--grey)}
.map-links{text-align:center;padding:14px 16px 0;font-size:.9em}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 60px}
.contact-grid h3{color:var(--blue);text-transform:uppercase;font-weight:500;font-size:1.15em;margin:0 0 16px}
.contact-grid h4{margin:0 0 6px;font-size:1em}
.contact-grid address{font-style:normal;margin-bottom:1em}
.contact-card{background:var(--grey);padding:30px}
.contact-card .btn{margin:6px 8px 6px 0}
.hours{border-collapse:collapse;margin-bottom:1em}
.hours th{text-align:left;font-weight:400;padding:1px 18px 1px 0}
.hours td{padding:1px 0}

footer.site-footer{background:url(../theme/images/bkg-footer.png) var(--dark) center top repeat;color:#fff;padding:55px 0;font-size:1.05em;font-weight:300}
.site-footer .container{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px}
.site-footer h3{text-transform:uppercase;font-weight:500;font-size:1.1em;margin:0 0 14px}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li a,.site-footer a{color:#fff}
.site-footer li a{text-transform:uppercase;display:block;margin:5px 0;font-size:.9em}
.site-footer a:hover{color:var(--blue);text-decoration:none}
.site-footer .end{text-align:right}
.site-footer .end .icons{display:flex;justify-content:flex-end;gap:10px;margin-bottom:16px}
.site-footer .end .icons img{width:28px;height:28px}

/* Legal page */
.legal{max-width:820px;margin:0 auto;padding:60px 16px}
.legal h1{font-weight:500;text-transform:uppercase;letter-spacing:.15em;font-size:2em}
.legal h2{color:var(--blue);font-weight:500;font-size:1.15em;text-transform:uppercase;margin-top:2em}

/* ---------- Responsive ---------- */
@media (max-width:991px){
  .services4{grid-template-columns:1fr 1fr}
  .logos{grid-template-columns:repeat(4,1fr)}
  .team{grid-template-columns:repeat(3,1fr)}
  .mag{grid-template-columns:1fr}
}
@media (max-width:767px){
  body{font-size:14px}
  .section{padding:56px 0}
  .section .title{font-size:1.9em;margin-bottom:40px;letter-spacing:.15em}
  .home-hero .nav{display:none}
  .choices ul{gap:16px}
  .choices li a{width:260px;font-size:1.3em}
  .services3{grid-template-columns:1fr}
  .team{grid-template-columns:1fr 1fr;gap:30px 16px}
  .services4{grid-template-columns:1fr}
  .mag li{grid-template-columns:1fr}
  .mag img{width:100%;max-width:320px}
  .logos{grid-template-columns:repeat(3,1fr);gap:12px}
  .logos li{height:70px}
  .logos img{max-height:60px}
  .contact-grid{grid-template-columns:1fr}
  .site-header .logo img{width:140px}
  .site-header .nav{display:none}
  .site-header .nav.open{display:flex;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;align-items:flex-start;padding:12px 16px 18px;box-shadow:0 8px 16px rgba(0,0,0,.08)}
  .js .menu-toggle{display:inline-block;background:none;border:1px solid #000;padding:6px 12px;font:inherit;font-size:.8em;font-weight:700;text-transform:uppercase;cursor:pointer}
  .no-js .site-header .nav{display:flex;justify-content:flex-end}
  .site-footer .container{grid-template-columns:1fr;text-align:center}
  .site-footer .end{text-align:center}
  .site-footer .end .icons{justify-content:center}
  .boutique-hero{height:50vh}
}
