:root { --ps-dark:#101827; --ps-accent:#f2a000; --ps-ink:#141821; --ps-line:#e4e8ee; }
body.ps-brand-theme { color:var(--ps-ink); font-family:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif; }
body.ps-brand-theme h1,body.ps-brand-theme h2,body.ps-brand-theme h3,body.ps-brand-theme h4,body.ps-brand-theme .site-title { font-family:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif; font-weight:850; letter-spacing:-.025em; }

body.ps-brand-theme .header-main-inner { border-bottom:1px solid #edf0f4; background:#fff; box-shadow:0 8px 30px rgba(15,23,42,.05); }
body.ps-brand-theme .header-main-inner .container { max-width:1480px; }
body.ps-brand-theme .builder-item--primary-menu { padding:6px 8px; border-radius:14px; background:var(--ps-dark); box-shadow:0 12px 28px rgba(15,23,42,.14); }
body.ps-brand-theme .builder-item--primary-menu .nav-menu-primary,
body.ps-brand-theme .header-menu-sidebar .nav-menu-primary { gap:4px; }
body.ps-brand-theme .builder-item--primary-menu .nav-menu-primary > li > a,
body.ps-brand-theme .header-menu-sidebar .nav-menu-primary > li > a { min-height:46px; padding:0 13px; border-radius:9px; color:#edf1f7; font-family:"Noto Sans",system-ui,sans-serif; font-size:12px; font-weight:850; letter-spacing:.035em; text-transform:uppercase; transition:.2s ease; }
body.ps-brand-theme .builder-item--primary-menu .nav-menu-primary > li > a:hover,
body.ps-brand-theme .builder-item--primary-menu .nav-menu-primary > li.current-menu-item > a,
body.ps-brand-theme .builder-item--primary-menu .nav-menu-primary > li.current-menu-ancestor > a { background:var(--ps-accent); color:var(--ps-dark); }
body.ps-brand-theme .nav-menu-primary .sub-menu { padding:8px; border:0; border-radius:12px; background:var(--ps-dark); box-shadow:0 18px 50px rgba(15,23,42,.2); }
body.ps-brand-theme .nav-menu-primary .sub-menu a { padding:10px 13px; border-radius:7px; color:#e8edf5; font-size:12px; font-weight:750; }
body.ps-brand-theme .nav-menu-primary .sub-menu a:hover { background:rgba(255,255,255,.09); color:#fff; }

body.ps-brand-theme.ps-film-enabled .ps-film-layout { color:#252b35; font-family:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif; }
body.ps-brand-theme.ps-film-enabled .ps-sidebar { border:0; background:var(--ps-dark); color:#dce2eb; }
body.ps-brand-theme.ps-film-enabled .ps-sidebar-root { background:#080f1d; color:#fff; }
body.ps-brand-theme.ps-film-enabled .ps-nav-l2 { border-color:rgba(255,255,255,.09); }
body.ps-brand-theme.ps-film-enabled .ps-nav-l2__link,
body.ps-brand-theme.ps-film-enabled .ps-nav-l3__link,
body.ps-brand-theme.ps-film-enabled .ps-nav-products li a { color:#cbd2dd; }
body.ps-brand-theme.ps-film-enabled .ps-nav-l2__link:hover,
body.ps-brand-theme.ps-film-enabled .ps-nav-l3__link:hover,
body.ps-brand-theme.ps-film-enabled .ps-nav-products li a:hover { color:#fff; }
body.ps-brand-theme.ps-film-enabled .ps-nav-l3 { background:rgba(255,255,255,.045); }
body.ps-brand-theme.ps-film-enabled .ps-nav-l3__item { border-color:rgba(255,255,255,.07); }
body.ps-brand-theme.ps-film-enabled .ps-nav-products { background:rgba(0,0,0,.16); }
body.ps-brand-theme.ps-film-enabled .ps-nav-l2.ps-active > .ps-nav-l2__link { color:var(--ps-accent); background:#080f1d; box-shadow:inset 4px 0 0 var(--ps-accent); }
body.ps-brand-theme.ps-film-enabled .ps-nav-l3__item.ps-active > .ps-nav-l3__link { color:#fff; background:rgba(242,160,0,.13); box-shadow:inset 4px 0 0 rgba(242,160,0,.65); }
body.ps-brand-theme.ps-film-enabled .ps-nav-products li.ps-current a { color:var(--ps-dark); background:var(--ps-accent); }
body.ps-brand-theme.ps-film-enabled .ps-content--film { padding:clamp(24px,4vw,54px); }
body.ps-brand-theme.ps-film-enabled .ps-title { color:var(--ps-dark); font-size:clamp(28px,4vw,46px); font-weight:900; letter-spacing:-.035em; text-transform:none; }
body.ps-brand-theme.ps-film-enabled .ps-chain,.ps-intro__subtitle { color:#9a6500; }
body.ps-brand-theme .ps-btn-top,body.ps-brand-theme .ps-btn-devis,body.ps-brand-theme .ps-btn-panier { border-radius:999px; font-weight:850; }
.ps-film-directory-wrap { display:none; }
.ps-otp-trap { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.ps-otp-panel { grid-column:1/-1; margin-top:14px; padding:18px; border:1px solid #d9dee7; border-left:4px solid var(--ps-accent); border-radius:12px; background:#fff; }
.ps-otp-panel[hidden] { display:none!important; }.ps-otp-title { margin:0 0 4px; color:var(--ps-dark); font-weight:900; }.ps-otp-help { margin:0 0 12px; color:#5c6573; font-size:14px; }
.ps-otp-row { display:flex; gap:10px; align-items:stretch; }.ps-otp-row input { max-width:210px; letter-spacing:.2em; font-size:18px; font-weight:800; text-align:center; }
.ps-otp-resend { margin-top:10px; padding:0; border:0; background:transparent; color:#704a00; font-weight:700; text-decoration:underline; }.ps-otp-resend:disabled { color:#89909b; text-decoration:none; }
.ps-otp-status { min-height:1.4em; margin:10px 0 0; color:#176b3a; font-weight:700; }.ps-otp-status.is-error { color:#b42318; }

@media (max-width:960px) {
    body.ps-brand-theme .builder-item--primary-menu { padding:0; border-radius:0; background:transparent; box-shadow:none; }
    body.ps-brand-theme .header-menu-sidebar .nav-menu-primary { gap:2px; }
    body.ps-brand-theme .header-menu-sidebar .nav-menu-primary > li > a { min-height:44px; padding:0 12px; color:var(--ps-dark); }
    .ps-otp-row { align-items:stretch; flex-direction:column; }.ps-otp-row input { max-width:none; }
}

@media (max-width:767px) {
    .ps-film-directory-wrap { display:block; padding:14px 14px 0; background:#fff; }
    .ps-film-directory { display:flex; align-items:center; justify-content:space-between; width:100%; padding:14px 17px; border:0; border-radius:12px; background:var(--ps-dark); color:#fff; font-family:"Noto Sans",sans-serif; font-size:13px; font-weight:850; letter-spacing:.04em; text-transform:uppercase; }
    body.ps-brand-theme.ps-film-enabled .ps-sidebar { display:none; max-height:68vh; overflow:auto; }
    body.ps-brand-theme.ps-film-enabled .ps-sidebar.is-open { display:block; }
}
