/* Composition et mouvement uniquement. Couleurs et logo AKG conservés. */
.signature-header { padding-block:12px; }
.signature-header .site-header__inner { display:grid; grid-template-columns:auto 1fr auto; min-height:72px; gap:28px; position:relative; }
.header-brand { display:flex; align-items:center; gap:22px; }
.signature-header .site-logo { --logo-h:66px; }
.header-brand__text { display:none; font-size:12px; line-height:1.5; font-weight:700; }
.header-brand__text span { color:var(--mute); font-weight:400; }
.signature-header .site-nav { display:block; justify-self:center; }
.signature-header .site-nav ul { gap:32px; }
.signature-header .site-nav>ul>li>a,.signature-header .site-nav__trigger { font-size:14px; font-weight:400; text-transform:none; letter-spacing:0; min-height:44px; display:flex; align-items:center; color:var(--paper); opacity:1; }
.signature-header .site-nav>ul>li>a:hover,.signature-header .site-nav__trigger:hover { color:var(--brand); }
.signature-header .site-nav a[aria-current="page"]::after { bottom:3px; height:2px; background:var(--brand); }
.signature-header .site-nav__item--has-dropdown { position:static; }
.signature-header .site-nav__item--has-dropdown.is-current>.site-nav__trigger { color:var(--brand); }
.signature-header .site-nav__dropdown { display:grid; grid-template-columns:1fr 1fr; width:min(620px,calc(100vw - 44px)); left:50%; top:calc(100% + 12px); border:1px solid var(--line); border-radius:0; gap:6px; padding:18px; }
.signature-header .site-nav__dropdown a { padding:16px; border:1px solid transparent; border-radius:0; font-size:16px; font-weight:700; line-height:1.2; color:var(--ink); }
.signature-header .site-nav__dropdown a:hover { border-color:var(--line); }
.signature-header .site-nav__dropdown a small { font-size:12px; text-transform:none; line-height:1.5; font-weight:400; letter-spacing:0; margin-top:7px; }
.signature-header .site-nav__dropdown .header-dropdown__project { background:var(--brand); display:grid; grid-template-columns:1fr auto; align-content:center; }
.header-dropdown__project small { grid-column:1/-1; color:var(--ink); }
.signature-header .site-header__cluster { gap:20px; }
.header-phone { display:none; font-size:12px; white-space:nowrap; color:var(--paper); }
.signature-header .site-header__cta { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:50px; padding:14px 18px; font-size:13px; text-transform:none; letter-spacing:0; }
.signature-header .site-header__cta:hover { padding:14px 18px; }
.header-label-short { display:none; }
.header-arrow { font-size:20px; transition:transform 200ms var(--ease); }
.site-header__cta:hover .header-arrow { transform:translate(3px,-3px); }
.signature-header .menu-toggle { display:none; }
.mobile-nav__link,.mobile-nav__section-toggle { letter-spacing:-.035em; }
.mobile-nav__body>ul>li { border-color:var(--exp-rule); }
.cinema-hero { padding-top:var(--header-h); color:var(--paper); background:var(--ink); }
.cinema-hero__stage { position:relative; overflow:hidden; min-height:clamp(680px,calc(100svh - var(--header-h)),920px); isolation:isolate; }
.cinema-hero__photography,.cinema-pane,.cinema-hero__shade { position:absolute; inset:0; }
.cinema-hero__photography { z-index:-3; }
.cinema-pane .photo-window { width:100%; height:100%; }
.cinema-hero__shade { z-index:-2; background:linear-gradient(90deg,var(--ink) -20%,transparent 90%),linear-gradient(0deg,var(--ink) 0%,transparent 84%); pointer-events:none; }
.cinema-hero__copy { padding:100px var(--pad-x) 156px; min-height:inherit; display:flex; flex-direction:column; justify-content:flex-end; position:relative; z-index:1; pointer-events:auto; }
.cinema-hero__copy a { pointer-events:auto; }
.cinema-hero__kicker { font-size:12px; font-weight:700; letter-spacing:.03em; margin-bottom:24px; }
.cinema-hero h1 { font-size:clamp(70px,9.8vw,158px); line-height:.94; letter-spacing:-.06em; font-weight:700; text-wrap:nowrap; }
.cinema-hero__line { display:block; }
.cinema-hero__line--accent { color:var(--brand); }
.cinema-hero__bottom { display:flex; justify-content:space-between; align-items:end; gap:35px; margin-top:32px; }
.cinema-hero__bottom>p { font-size:15px; max-width:47ch; color:var(--paper); line-height:1.6; }
.cinema-hero__bottom .button-row { justify-content:flex-end; gap:16px; }
.cinema-hero .btn { min-height:56px; font-size:14px; gap:26px; padding:16px 24px; }
.cinema-hero .btn:hover { padding:16px 24px; }
.cinema-secondary { display:flex; align-items:center; gap:12px; font-size:12px; min-height:48px; }
.cinema-secondary>span { width:42px; height:42px; border:1px solid var(--exp-rule); border-radius:50%; display:grid; place-items:center; font-size:20px; transition:transform 200ms var(--ease); }
.cinema-secondary:hover>span { transform:translateY(4px); }
.cinema-hero__location { position:absolute; top:30px; left:var(--pad-x); display:flex; gap:10px; align-items:center; font-size:11px; z-index:2; }
.cinema-hero__location>span { width:7px; height:7px; border-radius:50%; background:var(--brand); }
.cinema-hero__current { position:absolute; top:26px; right:var(--pad-x); display:grid; grid-template-columns:1fr auto; gap:3px 16px; z-index:2; font-size:12px; background:var(--ink); padding:10px 14px; }
.cinema-hero__current small { grid-column:1/-1; font-size:10px; opacity:.8; }
.hero-rail { position:absolute; inset:auto var(--pad-x) 0; z-index:2; border-top:1px solid var(--exp-rule); display:grid; grid-template-columns:.75fr 2fr auto; gap:30px; align-items:center; min-height:112px; }
.hero-rail>p { font-size:12px; font-weight:700; line-height:1.5; }
.hero-rail>p span { font-size:11px; font-weight:400; color:var(--mute); }
.hero-chapters { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.hero-chapter { display:flex; align-items:center; gap:13px; text-align:left; color:var(--paper); min-width:0; padding:12px 0; border-top:2px solid transparent; }
.hero-chapter[aria-pressed="true"] { border-color:var(--brand); }
.hero-chapter__thumb { width:72px; height:48px; flex-shrink:0; overflow:hidden; }
.hero-chapter small { display:block; font-size:10px; color:var(--mute); line-height:1.3; }
.hero-chapter strong { display:block; font-weight:400; font-size:12px; line-height:1.35; margin-top:5px; }
.hero-chapter[aria-pressed="true"] strong { color:var(--brand); }
.hero-chapter__arrow { display:none; }
.hero-scroll { width:44px; height:44px; border:1px solid var(--exp-rule); border-radius:50%; display:grid; place-items:center; font-size:22px; }
.project-hero h1 { font-size:clamp(46px,6.6vw,100px); line-height:1; letter-spacing:-.05em; max-width:14ch; }
.project-hero__head { grid-template-columns:1.2fr .8fr; }
.project-hero__visual { margin-top:52px; }
.project-hero__top { font-size:12px; }
.gallery-intro h1 { font-size:clamp(48px,8.2vw,120px); line-height:.98; letter-spacing:-.055em; max-width:17ch; }
.atelier-hero { padding-block:48px 70px; }
.atelier-hero__grid { display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(40px,7vw,110px); align-items:center; }
.atelier-hero h1 { font-size:clamp(50px,6.5vw,96px); font-weight:700; line-height:1.01; letter-spacing:-.05em; max-width:13ch; margin-top:24px; }
.atelier-hero__copy>p:not(.eyebrow) { font-size:17px; color:var(--mute-soft); max-width:43ch; margin-block:28px; }
.atelier-hero__portrait { margin:0; }
.atelier-hero__portrait img { width:100%; height:570px; object-fit:cover; object-position:center 30%; }
.atelier-hero__portrait figcaption { margin-top:14px; font-size:12px; color:var(--mute-soft); }
.atelier-hero__facts { margin-top:32px; display:flex; flex-wrap:wrap; gap:14px 22px; font-size:12px; color:var(--mute-soft); }
.project-hero__visual .compare-scene,.project-hero__visual .project-phase__photo { aspect-ratio:1.9; }
.page-hero { min-height:620px; }
.page-hero__media { inset:0; }
.page-hero__overlay { background:linear-gradient(90deg,var(--ink) 4%,transparent 94%),linear-gradient(0deg,var(--ink),transparent 90%); }
.page-hero__inner { min-height:620px; padding-block:64px; justify-content:flex-end; }
.page-hero__title { font-size:clamp(46px,6.5vw,98px); line-height:1; letter-spacing:-.05em; max-width:15ch; }
.page-hero__sub { font-size:16px; max-width:45ch; color:var(--paper); }
.page-hero__inner .button-row { margin-top:20px; }
.page-hero--text,.page-hero--text .page-hero__inner { min-height:0; }
@media(min-width:1280px) { .header-brand__text { display:block; } }
@media(min-width:1500px) { .header-phone { display:block; } }
@media(max-width:1199px) {
  .signature-header .site-nav ul { gap:24px; }
  .signature-header .site-header__inner { gap:22px; }
  .cinema-hero__bottom { flex-direction:column; align-items:flex-start; gap:24px; margin-top:26px; }
  .cinema-hero__bottom .button-row { justify-content:flex-start; }
  .cinema-hero__copy { padding-bottom:150px; }
  .hero-rail { grid-template-columns:1fr auto; gap:20px; }
  .hero-rail>p { display:none; }
  .hero-chapters { gap:20px; }
}
@media(max-width:819px) {
  .signature-header .site-nav { display:none; }
  .signature-header .menu-toggle { display:flex; }
  .signature-header .site-header__inner { grid-template-columns:auto 1fr; }
  .signature-header .site-header__cluster { gap:12px; }
  .signature-header .site-header__cta { gap:14px; }
}
@media(max-width:767px) {
  :root { --header-h:82px; }
  .signature-header { padding:11px 22px; }
  .signature-header .site-header__inner { min-height:60px; gap:12px; }
  .signature-header .site-logo { --logo-h:60px; }
  .signature-header .site-header__cta { min-height:44px; padding:12px 14px; gap:10px; font-size:11px; }
  .signature-header .site-header__cta:hover { padding:12px 14px; }
  .header-label-long { display:none; }
  .header-label-short { display:block; }
  .header-arrow { font-size:17px; }
  .cinema-hero__stage { min-height:calc(100svh - var(--header-h)); }
  .cinema-hero__copy { min-height:calc(100svh - var(--header-h)); padding:172px 22px 190px; justify-content:flex-end; }
  .cinema-hero__shade { background:linear-gradient(0deg,var(--ink) 4%,transparent 100%),linear-gradient(90deg,var(--ink) -100%,transparent 100%); }
  .cinema-hero h1 { font-size:clamp(43px,11.4vw,74px); line-height:.99; letter-spacing:-.055em; }
  .cinema-hero__kicker { font-size:10px; margin-bottom:18px; }
  .cinema-hero__bottom { gap:20px; margin-top:22px; }
  .cinema-hero__bottom>p { font-size:14px; max-width:39ch; line-height:1.55; }
  .cinema-hero .btn { min-height:50px; padding:14px 18px; font-size:13px; }
  .cinema-hero .btn:hover { padding:14px 18px; }
  .cinema-secondary { display:none; }
  .cinema-hero__location { top:22px; left:22px; font-size:10px; }
  .cinema-hero__current { top:50px; left:22px; right:auto; font-size:11px; }
  .hero-rail { inset:auto 22px 74px; min-height:82px; grid-template-columns:1fr; gap:0; }
  .hero-scroll { display:none; }
  .hero-chapters { gap:10px; }
  .hero-chapter { gap:8px; padding-block:12px; align-items:center; }
  .hero-chapter__thumb { width:40px; height:38px; }
  .hero-chapter strong { font-size:10px; margin-top:3px; }
  .hero-chapter small { font-size:9px; }
  .project-hero h1 { font-size:clamp(43px,10.8vw,65px); max-width:15ch; }
  .project-hero__head { grid-template-columns:1fr; }
  .project-hero__visual { margin-top:30px; }
  .project-hero__visual .compare-scene,.project-hero__visual .project-phase__photo { aspect-ratio:1.2; }
  .gallery-intro h1 { font-size:clamp(44px,10.8vw,70px); }
  .atelier-hero { padding-block:30px 50px; }
  .atelier-hero__grid { grid-template-columns:1fr; gap:34px; }
  .atelier-hero h1 { font-size:clamp(46px,11.4vw,72px); }
  .atelier-hero__copy>p:not(.eyebrow) { font-size:16px; margin-block:22px; }
  .atelier-hero__portrait img { height:420px; }
  .page-hero { min-height:650px; padding:0; }
  .page-hero__media { inset:0; height:100%; }
  .page-hero__overlay { inset:0; height:100%; background:linear-gradient(0deg,var(--ink) 4%,transparent 100%); }
  .page-hero__inner { min-height:650px; padding-block:245px 40px; justify-content:flex-end; }
  .page-hero__title { font-size:clamp(40px,10.8vw,65px); max-width:17ch; }
  .page-hero__sub { font-size:15px; }
  .page-hero--text,.page-hero--text .page-hero__inner { min-height:0; padding-top:0; }
}
@media(max-width:360px) {
  .signature-header { padding-inline:18px; }
  .signature-header .site-logo { --logo-h:54px; }
  .signature-header .site-header__cta { font-size:10px; padding-inline:11px; }
  .signature-header .site-header__cta:hover { padding-inline:11px; }
  .signature-header .site-header__cluster { gap:8px; }
  .cinema-hero h1 { font-size:37px; }
  .cinema-hero__copy { padding-top:150px; padding-bottom:187px; }
  .hero-chapter__thumb { display:none; }
  .hero-chapter strong { font-size:11px; }
}
@media(prefers-reduced-motion:no-preference) {
  .cinema-pane.is-current .photo-window { animation:photo-reveal 500ms var(--ease) both; }
  .cinema-hero__line { animation:signature-enter 650ms var(--ease) both; }
  .cinema-hero__line--accent { animation-delay:100ms; }
  @keyframes photo-reveal { from { opacity:.4;transform:scale(1.025); } to { opacity:1;transform:scale(1); } }
  @keyframes signature-enter { from { opacity:0;transform:translateY(18px); } to { opacity:1;transform:none; } }
}
