/* Sayo V7.5 — same navigation/footer on every public page. */
.site-head,.site-footer{--paper:#f7f5f0;--ink:#242624;--muted:#74736d;--line:#dbd9d1;--accent:#a98c82;--sans:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif;font-family:Arial,Helvetica,sans-serif}
.site-head{font:15px/1.55 Arial,Helvetica,sans-serif!important;height:84px!important;min-height:84px!important;z-index:75!important;position:sticky!important;top:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;background:#f7f5f0!important;border-bottom:1px solid #dbd9d1!important;padding:0 clamp(25px,5vw,86px)!important;gap:24px!important;backdrop-filter:none!important}
.site-head .desktop-nav{font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:1.55!important;gap:clamp(12px,1.8vw,32px)}
.site-head .head-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}
.site-head .signature{font-family:Arial,Helvetica,sans-serif}
.site-head a.signature .signature-mark{object-fit:contain;object-position:left center}
.site-head .icon-btn{font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:normal;border:0;background:transparent;cursor:pointer}
.site-head .cart-count{background:#242624;color:#f7f5f0}
.site-head .mobile-toggle{font-size:24px}
.site-head .language-switch{font-size:10px}
.site-head .language-switch a[aria-current=page]{color:#242624}
.site-head a.current-section{color:#9b7f76}
.site-footer{background:#262923!important;color:#f7f5f0!important;padding:70px clamp(25px,6vw,100px) 24px!important;border:0!important;display:block!important;font-size:12px!important}
.site-footer .footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:75px}
.site-footer .footer-top p{color:#c0c2b8;margin-top:12px;font-size:13px}
.site-footer .footer-top>div:not(:first-child){display:flex;flex-direction:column;gap:14px;font-size:12px}
.site-footer .footer-bottom{border-top:1px solid #ffffff35;padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:#b1b6a9;font-size:10px}
.site-footer .footer-credit a{font-size:inherit;cursor:pointer;border-bottom:1px dotted #c9c5be}
.site-footer .footer-credit a:hover{color:#fff}
/* Three perfectly equal photograph frames, accessible on hover, focus and touch */
.commission-card{grid-template-rows:clamp(225px,23.5vw,380px) 1fr!important}
.commission-card .commission-image-link{display:block;position:relative;height:100%;width:100%;overflow:hidden;background:#e9e3df;border:0;isolation:isolate}
.commission-card .commission-image-link>img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .55s ease;will-change:transform}
.commission-card:nth-child(1) .commission-image-link img{object-position:center 52%}
.commission-card .commission-image-link:focus-visible{outline:3px solid #9e817c;outline-offset:3px}
.commission-card .commission-image-link:hover img,.commission-card .commission-image-link:focus-visible img{transform:scale(1.065);filter:saturate(1.075) brightness(.94)}
.commission-card .commission-photo-arrow{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#fbf8f7e8;color:#322b29;font-size:25px;opacity:0;transform:translateY(8px);transition:opacity .35s,transform .35s}
.commission-card .commission-image-link:hover .commission-photo-arrow,.commission-card .commission-image-link:focus-visible .commission-photo-arrow{opacity:1;transform:translateY(0)}
.commission-card .commission-content{min-height:100%}
.commission-card .commission-content p{flex:1}
/* Detail page retains its own editorial typography, but navigation is identically positioned. */
body:has(.bespoke-category) .site-head a.signature{flex-shrink:0}
body:has(.bespoke-category) .site-head .desktop-nav a{white-space:nowrap}
body:has(.bespoke-category) .mobile-menu{font-family:Arial,Helvetica,sans-serif}
body:has(.bespoke-category) .site-footer .footer-top>div:not(:first-child){align-items:flex-start}
/* Do not pin paragraphs to a scroll position: each caption stays at the top of its own image group. */
.bespoke-category .section-intro{position:static!important;top:auto!important;align-self:start}
.bespoke-category{scroll-margin-top:95px}
.detail-tile .tile-button:hover img,.detail-tile .tile-button:focus-visible img{transform:scale(1.045)}
.bot-trap{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;left:-9999px!important;overflow:hidden!important}
.demo-form-status{grid-column:1/-1;font-size:12px;color:#6a5c54;min-height:0}
.form-credit{font-size:10px;grid-column:1/-1;opacity:.66;margin-top:0}
.form-credit a{text-decoration:underline}
/* Distinct, spacious video gallery; paused by default. */
.video-group{margin-top:46px}
.video-group h3{font:400 clamp(25px,2.7vw,38px)/1.23 Georgia,serif;letter-spacing:-.025em;margin:0 0 8px}
.video-group .video-group-intro{font-size:12px;color:#827674;margin:0 0 23px;max-width:640px}
.video-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.hover-video-wrap:focus-within{outline:2px solid #9e817c}
.hover-video-wrap video{background:#e3dad6}
.hover-video-wrap .play-indicator{transition:opacity .2s}
.hover-video-wrap.is-playing .play-indicator{opacity:0}
.video-grid figure{min-width:0}
.video-grid figcaption{line-height:1.25!important}
.video-grid figcaption small{display:block;margin:7px 0 0;font:400 11px Arial,sans-serif;color:#867c77}
/* Lightweight contact verification (client-side deterrent, not a substitute for server protections). */
.verify-shade{position:fixed;inset:0;z-index:300;background:#1e211dcc;display:grid;place-items:center;padding:18px}
.verify-shade[hidden]{display:none}
.verify-dialog{position:relative;width:min(410px,100%);background:#fbf8f7;color:#302b2c;padding:32px 30px 26px;box-shadow:0 20px 65px #0004;font:14px/1.65 Arial,sans-serif}
.verify-dialog h2{font:400 29px/1.1 Georgia,serif;letter-spacing:-.03em;margin:0 0 13px}
.verify-dialog p{font-size:12px;color:#615954;margin:10px 0}
.verify-dialog label{display:block;font-size:12px;margin:17px 0 7px}
.verify-dialog input{width:100%;padding:12px;border:1px solid #c8bbb4;background:white;font-size:16px}
.verify-dialog .verify-submit{margin-top:19px;background:#292a25;color:white;border:0;padding:11px 19px;font-size:12px}
.verify-dialog .verify-close{position:absolute;right:12px;top:7px;border:0;background:none;font-size:28px}
.verify-dialog .verify-status{min-height:18px;color:#983e34}
@media(min-width:651px){.site-head a.signature{display:flex!important;flex-direction:row!important;align-items:flex-end!important;min-width:240px!important;gap:8px!important}.site-head a.signature .signature-mark{width:90px!important;height:62px!important;margin:0!important}.site-head a.signature small{display:block!important;padding:0!important;margin:0 0 12px!important;font-size:8px!important;letter-spacing:.25em!important}}
@media(max-width:1100px){.site-head .desktop-nav{display:none!important}.site-head .mobile-toggle{display:inline-block!important}}
@media(max-width:650px){.site-head{padding:0 18px!important;gap:12px!important}.site-head a.signature{min-width:68px!important}.site-head a.signature .signature-mark{width:71px!important;height:49px!important}.site-head a.signature small{display:none!important}.commission-card{grid-template-rows:auto 1fr!important}.commission-card .commission-image-link{height:auto;aspect-ratio:1.42}.site-footer .footer-top{flex-wrap:wrap;gap:28px;padding-bottom:45px}.site-footer .footer-bottom{flex-direction:column;gap:10px}}
@media(max-width:820px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.video-grid{grid-template-columns:1fr}.site-footer .footer-top{display:grid;grid-template-columns:1fr 1fr}.site-footer .footer-top>div:first-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.commission-image-link img,.commission-photo-arrow,.tile-button img{transition:none!important;transform:none!important}}


/* V7.5.1 - Harmonisation exacte FR / EN selon la composition française V7.5.
   Même signature, même typographie, même interlettrage et mêmes repères de menu. */
@media (min-width:1101px){
  .site-head .desktop-nav{
    --sayo-nav-gap:clamp(12px,1.8vw,32px);
    display:grid!important;
    grid-template-columns:
      calc(44.62px + var(--sayo-nav-gap))
      calc(59.72px + var(--sayo-nav-gap))
      calc(46.16px + var(--sayo-nav-gap))
      calc(43.14px + var(--sayo-nav-gap))
      calc(51.68px + var(--sayo-nav-gap))
      calc(87.89px + var(--sayo-nav-gap))
      45.07px;
    gap:0!important;
    align-items:center;
    justify-content:start;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:12px!important;
    font-weight:400!important;
    letter-spacing:.045em!important;
  }
  .site-head .desktop-nav a{white-space:nowrap}
  /* Basket is 2px wider than Panier : preserve the French header action width. */
  html[lang="en"] .site-head .head-actions{gap:10px!important}
}
@media (min-width:651px){
  /* English baseline is shorter: prevent automatic centring shifting Sayo's signature. */
  html[lang="en"] .site-head a.signature{
    justify-content:flex-start!important;
    padding-left:3.76px!important;
  }
  .site-head a.signature small{
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:8px!important;
    font-weight:400!important;
    letter-spacing:.25em!important;
  }
}
@media (max-width:1100px){
  /* Includes the hamburger: align the right-hand group to the FR page. */
  html[lang="en"] .site-head .head-actions{gap:11px!important}
}
@media (max-width:650px){
  html[lang="en"] .site-head a.signature{
    justify-content:center!important;
    padding-left:0!important;
  }
}
