:root{--gap:1rem;--max:1200px;--bg:#fff;--text:#111;--muted:#666}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
.container{max-width:var(--max);margin:0 auto;padding:0 1rem}
.site-header,.site-footer{border-bottom:1px solid #eee}
.site-footer{border-top:1px solid #eee}
.site-logo{font-weight:700;text-decoration:none;color:inherit}
.stack>*{margin-block:1.25rem}
.hero{padding:3rem 0 1rem}
.hero-title{font-size:clamp(2rem,5vw,3rem);margin:0}
.hero-subtitle{color:var(--muted)}
.section-title{margin:0 0 1rem 0}
.card{padding:1rem;border:1px solid #eee;border-radius:12px;transition:box-shadow .2s}
.card:hover{box-shadow:0 8px 24px rgba(0,0,0,.06)}
.post-title{margin:.5rem 0 0}
.featured-media img{width:100%;height:auto;border-radius:12px}
.toolbar{display:flex;gap:.5rem;margin:0 0 1rem}
.btn{padding:.5rem .75rem;border:1px solid #ddd;background:#fafafa;border-radius:8px;cursor:pointer}
.btn:hover{background:#f0f0f0}
.grid{display:grid;gap:var(--gap)}
.grid.masonry{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.grid.masonry .grid-item img{width:100%;height:auto;display:block;border-radius:10px}
.grid.justified{grid-auto-flow:dense;grid-auto-rows:8px}
.grid.justified .grid-item img{width:100%;height:auto;border-radius:10px}
.pwc-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);display:none;align-items:center;justify-content:center;z-index:9999}
.pwc-lightbox.open{display:flex}
.pwc-lightbox img{max-width:90vw;max-height:90vh;border-radius:12px}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;background:#000;color:#fff;padding:.5rem .75rem;border-radius:8px;z-index:9999}
.navigation .nav-links, .pagination{display:flex;gap:.5rem;align-items:center;justify-content:center;margin-top:1rem}
.page-numbers{display:inline-block;padding:.45rem .75rem;border:1px solid rgba(0,0,0,.12);border-radius:10px;text-decoration:none}
.page-numbers.current{background:#111;color:#fff;border-color:#111}
.pwc-search{display:flex;gap:.5rem;justify-content:center;margin-top:1rem}
.pwc-search .pwc-input{min-width:240px;padding:.5rem .65rem;border:1px solid rgba(0,0,0,.15);border-radius:10px}

/* PWC Studio Premium */
:root{--bg:#ffffff;--text:#111111;--muted:#666666;--accent:#0a66ff;--accent-2:#111111;--radius:14px;--gap:1.25rem;--shadow:0 10px 30px rgba(0,0,0,.08);--elev:0 18px 50px rgba(0,0,0,.12);--speed-fast:.18s;--speed:.28s;--speed-slow:.6s;--bezier:cubic-bezier(.22,.61,.36,1);--glass:rgba(255,255,255,.6);scroll-behavior:smooth}
@media (prefers-color-scheme: dark){:root{--bg:#0b0b0c;--text:#f2f2f2;--muted:#9aa0a6;--accent:#6aa4ff;--accent-2:#f2f2f2;--glass:rgba(20,20,22,.55);--shadow:0 14px 40px rgba(0,0,0,.35);--elev:0 24px 60px rgba(0,0,0,.45)}}
.dark :root,.dark{--bg:#0b0b0c;--text:#f2f2f2;--muted:#9aa0a6;--accent:#6aa4ff;--accent-2:#f2f2f2;--glass:rgba(20,20,22,.55);--shadow:0 14px 40px rgba(0,0,0,.35);--elev:0 24px 60px rgba(0,0,0,.45)}
img{border-radius:12px}
.site-header{position:sticky;top:0;z-index:50;backdrop-filter:saturate(1.1) blur(8px);background:transparent;border-bottom:none;transition:background var(--speed),box-shadow var(--speed),border-color var(--speed)}
.dark .site-header{background:transparent}
.is-scrolled .site-header{background:rgba(255,255,255,.85);border-bottom:1px solid rgba(0,0,0,.06)}
.dark.is-scrolled .site-header{background:rgba(20,20,22,.85)}
.hero-title{letter-spacing:.3px;line-height:1.06}
.section-title{font-weight:700;letter-spacing:.2px}
.btn,.button,.wp-block-button__link{--btn-bg:var(--accent);--btn-fg:#fff;display:inline-flex;align-items:center;gap:.5rem;background:var(--btn-bg);color:var(--btn-fg);padding:.7rem 1.1rem;border-radius:12px;text-decoration:none;border:1px solid rgba(0,0,0,.08);box-shadow:0 6px 18px rgba(10,102,255,.3);transition:transform var(--speed-fast) var(--bezier),box-shadow var(--speed-fast),background var(--speed),color var(--speed)}
.btn:hover,.button:hover,.wp-block-button__link:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(10,102,255,.35)}
.btn--ghost{--btn-bg:transparent;--btn-fg:var(--text);border-color:rgba(0,0,0,.15);box-shadow:none}
.dark .btn--ghost{--btn-fg:#e9e9ea}
.card{border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform var(--speed-fast) var(--bezier),box-shadow var(--speed-fast),border-color var(--speed)}
.card:hover{transform:translateY(-2px);box-shadow:var(--elev)}
.hero{position:relative;padding:5rem 0 2rem}
.hero::after{content:'';position:absolute;inset:auto 0 0 0;height:120px;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.92));pointer-events:none}
.dark .hero::after{background:linear-gradient(to bottom,transparent,rgba(0,0,0,.92))}
.grid{gap:clamp(14px,1.4vw,22px)}
.grid .grid-item{position:relative;overflow:hidden;border-radius:14px}
.grid .grid-item img{transform:translateZ(0) scale(1.001);transition:transform var(--speed-slow) var(--bezier),filter var(--speed);will-change:transform}
.grid .grid-item .grid-caption{position:absolute;left:12px;bottom:10px;background:var(--glass);color:#fff;backdrop-filter:blur(8px) saturate(1.2);padding:.35rem .6rem;border-radius:10px;font-size:.85rem;letter-spacing:.15px;transform:translateY(6px);opacity:0;transition:all var(--speed) var(--bezier)}
.grid .grid-item:hover img{transform:scale(1.03)}
.grid .grid-item:hover .grid-caption{transform:translateY(0);opacity:1}
.pwc-lightbox{background:rgba(0,0,0,.92);transition:opacity var(--speed-slow) var(--bezier)}
.pwc-lightbox img{border-radius:16px;box-shadow:0 40px 120px rgba(0,0,0,.55)}
.container{max-width:1280px}
.stack>*{margin-block:clamp(1rem,2.5vh,1.75rem)}
.featured-media img{border-radius:16px}
.download-cta{margin-top:1.25rem}
.download-cta .button{--btn-bg:var(--accent-2);--btn-fg:#fff}
.reveal{opacity:0;transform:translateY(14px);transition:opacity var(--speed-slow) var(--bezier),transform var(--speed-slow) var(--bezier)}
.reveal.is-in{opacity:1;transform:none}
.hero-parallax{position:relative;overflow:hidden}
.hero-parallax .parallax-bg{position:absolute;inset:-10% -10% auto -10%;height:120%;object-fit:cover;filter:saturate(1.02) contrast(1.02);transform:translateY(var(--p,0));transition:transform .06s linear;will-change:transform}
.site-nav a{color:inherit;text-decoration:none;position:relative;padding:.2rem .1rem}
.site-nav a::after{content:'';position:absolute;left:0;right:0;bottom:-2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:center;transition:transform .18s cubic-bezier(.22,.61,.36,1);opacity:.55;margin-top:6px}
.site-nav a:hover::after,.site-nav a:focus::after,.site-nav .current-menu-item>a::after{transform:scaleX(1)}
.site-header,.site-footer{border-color:rgba(0,0,0,.16)!important}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.dark body{background:var(--bg);color:var(--text)}

/* Alys-like + centré + dropdown gauche + espacement */
.site-header .container{grid-template-columns:1fr auto 1fr;display:grid;align-items:center}
.site-logo{justify-self:start}
.site-nav{justify-self:center}
#pwc-theme-toggle,.menu-toggle{justify-self:end}

.site-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:clamp(24px,3vw,40px);align-items:center}
.site-nav li{position:relative}
.site-nav > div > ul > li > a{padding:1rem 0}

.site-nav .sub-menu{
  position:absolute; left:0; top:100%; transform:translate(0, 8px);
  min-width:220px; padding:.5rem; margin:0; display:none; flex-direction:column; gap:2px;
  background:var(--bg); border:1px solid rgba(0,0,0,.08);
  border-radius:12px; box-shadow:0 18px 50px rgba(0,0,0,.12); z-index:60;
}
.site-nav li:hover>.sub-menu, .site-nav li:focus-within>.sub-menu{ display:flex }
.site-nav .sub-menu a{padding:.55rem .75rem; border-radius:8px; white-space:nowrap}
.site-nav .sub-menu a:hover{background:rgba(0,0,0,.04)}

.site-nav .menu-item-has-children> a::after{content:"▾"; font-size:.8em; margin-left:.35rem; opacity:.75}

/* Mega-menu (ajouter la classe "mega" sur l’élément de menu) */
.site-nav .mega>.sub-menu{
  left:50%; transform:translate(-50%, 12px);
  width:min(920px, 88vw); display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  gap:.5rem; padding:.8rem; row-gap:.65rem;
}
.site-nav .mega>.sub-menu>li>a{font-weight:600}

/* Mobile */
.menu-toggle{display:none}
@media (max-width: 880px){
  .menu-toggle{display:inline-flex; align-items:center; gap:.5rem}
  .site-nav{position:fixed; inset:0 0 0 auto; width:min(82vw,360px); transform:translateX(100%);
    transition:transform .3s ease; background:var(--bg); box-shadow:-30px 0 60px rgba(0,0,0,.25); padding:1.2rem}
  .site-nav.open{transform:none}
  .site-nav > div > ul{flex-direction:column; align-items:flex-start; gap:.6rem}
  .site-nav .sub-menu{position:static; transform:none; display:none; box-shadow:none; border:0; padding:.25rem 0; background:transparent}
  .site-nav .menu-item-has-children.open>.sub-menu{display:flex}
  .site-nav a::after{display:none}
}

.burger{width:26px;height:18px;position:relative}
.burger span{position:absolute;left:0;right:0;height:2px;background:currentColor;transition:transform .25s ease, opacity .25s ease}
.burger span:nth-child(1){top:0}
.burger span:nth-child(2){top:8px}
.burger span:nth-child(3){top:16px}
.is-open .burger span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.is-open .burger span:nth-child(2){opacity:0}
.is-open .burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* v1.0.4 hero text visibility */
.hero.hero-parallax { position: relative; }
.hero.hero-parallax .container { position: relative; z-index: 2; }
.hero.hero-parallax .parallax-bg { z-index: 1; }
.hero.hero-parallax::before{ content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(to bottom, rgba(0,0,0,.25), rgba(0,0,0,.10)); pointer-events:none; }
.hero-title { color:#fff; }
.hero-subtitle { color:rgba(255,255,255,.9); }
.dark .hero.hero-parallax::before{ background:linear-gradient(to bottom, rgba(0,0,0,.18), rgba(0,0,0,.06)); }


/* Pattern: Intro Sculptrice */
.pwc-intro.alignwide{max-width:1280px}
.pwc-intro__image img{border-radius:16px; display:block}
.pwc-intro__title{margin:0 0 .5rem 0; font-size:clamp(1.8rem,3.2vw,2.4rem); line-height:1.1}
.pwc-intro__lead{color:var(--muted,#666); font-size:clamp(1rem,1.2vw,1.125rem)}
.pwc-intro__actions{gap:.6rem; margin-top:1rem}
@media (max-width:900px){
  .pwc-intro .wp-block-columns{gap:1rem}
}


/* === Intro Sculptrice v1.0.9 === */
.pwc-intro.alignwide{max-width:1280px;margin-inline:auto}
.pwc-intro__wrap{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(18px,3.2vw,40px)}
.pwc-intro--image-right .pwc-intro__wrap{grid-template-columns:1fr 1.05fr}
.pwc-intro--image-right .pwc-intro__figure{order:2}
.pwc-intro--image-right .pwc-intro__content{order:1}

.pwc-intro__figure{margin:0; border-radius:18px; overflow:hidden; box-shadow:0 18px 50px rgba(0,0,0,.10); background:linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.02))}
.pwc-intro__media{width:100%;height:100%;position:relative}
.pwc-intro__media img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;}

.pwc-intro__title{margin:0 0 .6rem 0; font-weight:800; letter-spacing:.2px; font-size:clamp(28px,3.2vw,40px); line-height:1.12}
.pwc-intro__lead{color:var(--muted,#666); font-size:clamp(16px,1.2vw,18px); max-width:60ch}
.pwc-intro__actions{display:flex; gap:.7rem; margin-top:1rem}

.button{--btn-bg:var(--accent,#111); --btn-fg:#fff; display:inline-flex; align-items:center; padding:.72rem 1.1rem; border-radius:12px; background:var(--btn-bg); color:var(--btn-fg); text-decoration:none; box-shadow:0 8px 22px rgba(0,0,0,.12); border:1px solid rgba(0,0,0,.06); transition:transform .18s cubic-bezier(.22,.61,.36,1), box-shadow .18s}
.button:hover{transform:translateY(-1px); box-shadow:0 14px 30px rgba(0,0,0,.16)}
.btn--ghost{--btn-bg:transparent; --btn-fg:inherit; border-color:rgba(0,0,0,.16); box-shadow:none}

@media (max-width: 980px){
  .pwc-intro__wrap{grid-template-columns:1fr; gap:clamp(14px,2vw,18px)}
  .pwc-intro--image-right .pwc-intro__figure{order:1}
  .pwc-intro--image-right .pwc-intro__content{order:2}
}

/* Aspect ratios */
.pwc-intro__figure.ratio-4x5{aspect-ratio:4/5}
.pwc-intro__figure.ratio-1x1{aspect-ratio:1/1}
.pwc-intro__figure.ratio-3x2{aspect-ratio:3/2}

.dark .pwc-intro__figure{box-shadow:0 24px 60px rgba(0,0,0,.45)}


/* v1.0.9.1: make sure page content is not truncated */
.content p, .content li { display: block; overflow: visible; text-overflow: initial; -webkit-line-clamp: unset; }
