/* V5.3: explicit logo bounds; photographic entrance with a keyhole transition. */
.ac-header .ac-nav{height:88px;min-height:88px;gap:24px;align-items:center}
.ac-header .ac-brand{width:204px!important;max-width:204px;flex:0 0 204px;height:68px!important}
.ac-header .ac-brand img.ac-brand-logo{display:block;width:100%!important;max-width:204px!important;height:68px!important;max-height:68px;object-fit:contain}
.ac-footer .ac-footer-links a{color:#f2f1e6!important}
.ac-footer .ac-footer-links a:hover{color:#f15a22!important}
.ac-footer{padding-bottom:30px!important}
.ac-footer-top{grid-template-columns:240px minmax(0,1fr) 210px!important}
.ac-footer .ac-brand{max-width:240px}
.ac-footer-bottom{white-space:normal;margin-top:32px!important}
.ac-cta .ac-button:hover{outline:1px solid #f2f1e6;outline-offset:4px}
.ac-whatsapp:hover .ac-whatsapp-icon{color:#f2f1e6!important;border-color:#f2f1e6!important}
.ac-hero{background:var(--ac-burgundy)!important}
.ac-hero>.ac-photo{filter:brightness(.66) saturate(.84) contrast(1.04);object-position:center}
.ac-hero:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#411a1af5 0%,#411a1ae8 26%,#411a1a9c 54%,#411a1a45 78%,#411a1a26 100%),linear-gradient(180deg,#21161445 0%,transparent 45%,#21161450 100%)}
.ac-hero-copy,.ac-hero-aside{z-index:1}
.ac-hero-copy .ac-eyebrow,.ac-hero h1{color:var(--ac-cream)!important}
.ac-hero-copy p,.ac-hero-aside{color:#f2f1e6d9!important}
.ac-hero-copy .ac-rule{border-color:var(--ac-orange)!important}
.ac-keyhole-journey{background:var(--ac-orange)!important}
#ac-entrance{background:#211614!important;isolation:isolate}
#ac-entrance:after{display:none}
#ac-entrance .ac-entrance-top{top:24px;left:6vw;right:6vw}
#ac-entrance .ac-entrance-brand{width:220px!important}
#ac-entrance .ac-entrance-brand img{width:220px!important;height:75px;object-fit:contain}
#ac-entrance .ac-entrance-top button{color:#f2f1e6;border-color:#f2f1e64d;letter-spacing:.1em}
.ac-cinema{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#211614 0%,#211614f0 30%,#21161465 55%,#21161405 85%),url('../images/porte-securisee-invisible-1280.webp') right center / auto 100% no-repeat;transform-origin:76% 51%;transition:transform 1.65s cubic-bezier(.5,0,.2,1),filter 1.65s}
.ac-cinema-copy{position:absolute;z-index:2;left:8vw;top:50%;width:48vw;max-width:640px;transform:translateY(-38%);transition:opacity .4s,transform .7s}
#ac-entrance .ac-cinema-copy h2{font-size:clamp(38px,4.8vw,72px)!important;line-height:1.12!important;letter-spacing:-.035em;font-weight:400!important;margin:20px 0 26px;color:#f2f1e6!important}
#ac-entrance .ac-cinema-copy h2 em{font-style:normal;font-weight:400;color:#f2f1e6!important}
#ac-entrance .ac-cinema-copy>p:not(.ac-entrance-kicker){font-size:15px;line-height:1.9;color:#f2f1e6ba}
#ac-entrance .ac-entrance-kicker{font-size:10px;color:#f2f1e6b0!important;letter-spacing:.22em}
#ac-entrance .ac-cinema-enter{display:flex;align-items:center;gap:22px;margin:32px 0 38px;padding:0;min-height:64px;color:#f2f1e6;border:0;background:none;cursor:pointer}
.ac-cinema-enter svg{width:26px;height:40px;fill:#f15a22;flex-shrink:0;transition:transform .3s}
.ac-cinema-enter>span{padding:16px 0;border-bottom:1px solid #f2f1e65c;font-size:11px;letter-spacing:.13em;text-transform:uppercase}
.ac-cinema-enter>span>span{display:inline-block;margin-left:28px;font-size:18px}
.ac-cinema-enter:hover svg{transform:scale(1.1)}
.ac-cinema-caption{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#f2f1e67d}
.ac-entrance-transition{position:absolute;inset:-4%;z-index:3;pointer-events:none;opacity:0;background-color:#211614;background-image:linear-gradient(90deg,#211614f5 0%,#211614c9 54%,#21161455 100%),url('../images/porte-secrete-bibliotheque-1280.webp');background-position:center;background-size:cover;transform:scale(1.08);filter:brightness(.9);transition:opacity 1.05s cubic-bezier(.22,.8,.18,1),transform 1.7s cubic-bezier(.22,.8,.18,1),filter 1.7s ease;will-change:opacity,transform,filter}
.ac-entrance[data-stage='opening'] .ac-entrance-transition{opacity:1;transform:scale(1);filter:brightness(1)}
.ac-entrance[data-stage='manifesto'] .ac-entrance-transition{opacity:0;transform:scale(1);transition-delay:.18s}
#ac-entrance .ac-entrance-manifesto{opacity:0;visibility:hidden;animation:none;transition:opacity 1.1s cubic-bezier(.22,.8,.18,1),visibility 0s linear 1.1s}
#ac-entrance[data-stage='manifesto'] .ac-entrance-manifesto{opacity:1;visibility:visible;animation:ac-manifesto-in 1.25s cubic-bezier(.22,.8,.18,1) both;transition-delay:.1s}
.ac-keyhole-journey{position:absolute;left:76%;top:51%;width:48px;height:74px;margin:-37px 0 0 -24px;z-index:3;pointer-events:none;opacity:0;background:#f2f1e6;clip-path:polygon(50% 0,70% 5%,85% 15%,92% 30%,90% 39%,76% 52%,94% 100%,6% 100%,24% 52%,10% 39%,8% 30%,15% 15%,30% 5%);transform:scale(.25);transition:transform 1.65s cubic-bezier(.65,0,.3,1),opacity .2s}
#ac-entrance[data-stage='opening'] .ac-keyhole-journey{opacity:1;transform:scale(100)}
#ac-entrance[data-stage='opening'] .ac-cinema{transform:scale(1.24);filter:brightness(1.3)}
#ac-entrance[data-stage='opening'] .ac-cinema-copy{opacity:0;transform:translateY(-38%) translateX(-24px)}
#ac-entrance[data-stage='manifesto'] .ac-cinema-copy,#ac-entrance[data-stage='manifesto'] .ac-keyhole-journey{display:none}
#ac-entrance .ac-entrance-manifesto{z-index:4;background:linear-gradient(90deg,#211614f5,#211614b0 55%,#21161444),url('../images/porte-secrete-bibliotheque-1280.webp') center/cover;padding:135px 8vw 100px}
#ac-entrance .ac-entrance-manifesto h2{font-size:clamp(32px,4.5vw,64px)!important;font-weight:400!important;line-height:1.16;max-width:800px}
#ac-entrance .ac-entrance-manifesto h2 em{font-style:normal;color:#f2f1e6!important}
#ac-entrance .ac-entrance-description{color:#f2f1e6c0;font-size:15px}
#ac-entrance .ac-entrance-bottom{left:6vw;right:6vw;color:#f2f1e690}
@media(max-width:1100px){.ac-footer-top{grid-template-columns:220px minmax(0,1fr)!important}.ac-footer-tag{display:block;grid-column:1/-1}.ac-footer-bottom{display:flex!important;flex-wrap:wrap;gap:20px}.ac-header .ac-nav{gap:16px}}
@media(max-width:820px){.ac-header .ac-nav{height:76px;min-height:76px}.ac-header .ac-brand{width:174px!important;flex-basis:174px;height:58px!important}.ac-header .ac-brand img.ac-brand-logo{height:58px!important;max-height:58px;max-width:174px!important}.ac-navigation{top:76px}.ac-cinema-copy{width:70vw}.ac-cinema{background-image:linear-gradient(90deg,#211614fa,#211614bc 44%,#21161444),url('../images/porte-securisee-invisible-1280.webp')}#ac-entrance .ac-entrance-brand,#ac-entrance .ac-entrance-brand img{width:180px!important}#ac-entrance .ac-entrance-brand img{height:61px}}
@media(max-width:520px){.ac-footer-top{display:flex!important;flex-direction:column}.ac-footer-bottom>nav{flex-wrap:wrap;white-space:normal}.ac-footer-credit{margin-left:0!important}.ac-cinema-copy{left:7vw;width:86vw;top:47%;transform:translateY(-30%)}#ac-entrance .ac-cinema-copy h2{font-size:40px!important}#ac-entrance .ac-entrance-top{top:14px}#ac-entrance .ac-entrance-top button{font-size:8px}#ac-entrance .ac-entrance-brand,#ac-entrance .ac-entrance-brand img{width:155px!important}#ac-entrance .ac-entrance-brand img{height:53px}.ac-cinema-caption{font-size:8px}.ac-cinema{background-position:70% center;background-size:auto 100%}.ac-keyhole-journey{left:65%}#ac-entrance .ac-entrance-manifesto{padding:115px 7vw 90px}}
@media(max-height:650px){.ac-cinema-copy{top:125px;transform:none}.ac-cinema-caption{display:none}#ac-entrance .ac-cinema-copy h2{font-size:34px!important;margin:12px 0}#ac-entrance .ac-cinema-enter{margin:12px 0}#ac-entrance .ac-cinema-copy>p{margin-bottom:12px}.ac-cinema-copy .ac-entrance-kicker{margin:0}}
@media(prefers-reduced-motion:reduce){.ac-keyhole-journey{display:none}.ac-cinema,.ac-cinema-copy,.ac-entrance-transition,.ac-entrance-manifesto{transition:none!important;animation:none!important}.ac-entrance[data-stage='manifesto'] .ac-entrance-manifesto{opacity:1;visibility:visible}}
