/* ABPF - L'Atelier des Boulangers Pâtissiers de France */

@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/jost-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/jost-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/jost-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/newsreader-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/newsreader-latin-400-italic.woff2') format('woff2')}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#F7F4EF;color:#1C1B1A;font-family:'Jost',system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
a{color:#1C1B1A;text-decoration:none;transition:color .15s ease,opacity .15s ease,transform .15s ease}
a:hover{color:#93652F}
a[style*="border-radius: 999px"]:hover,button:hover{opacity:.88}
a:focus-visible,button:focus-visible{outline:2px solid #93652F;outline-offset:3px}
input,select,textarea{outline:none !important;transition:border-color .15s ease,box-shadow .15s ease}
input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus,select:focus,textarea:focus{border-color:#93652F !important;box-shadow:0 0 0 3px rgba(147,101,47,0.15)}
input[type="checkbox"]:focus-visible{outline:2px solid #93652F !important;outline-offset:2px}
input[style*="rgba(255,255,255,0.06)"]:focus,textarea[style*="rgba(255,255,255,0.06)"]:focus,select[style*="#3A3530"]:focus{border-color:#E3C7A1 !important;box-shadow:0 0 0 3px rgba(227,199,161,0.2)}
.dropzone:focus-within{border-color:#E3C7A1 !important;border-style:solid !important}
[id]{scroll-margin-top:24px}

/* Accessibilité */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Zone de dépôt du CV */
.dropzone.is-dragover{background:rgba(227,199,161,0.16) !important;border-color:#E3C7A1 !important}
.file-name{display:none;font-size:13px;color:#EBCFA8}
.file-name.is-visible{display:block}

/* Messages de formulaire */
.form-msg{padding:16px 18px;border-radius:14px;font-size:15px;line-height:1.5}
.form-msg--ok{background:#E9F3E6;color:#24461D}
.form-msg--err{background:#F8E4E0;color:#6B1F12}

/* Mobile */
@media (max-width:720px){
  [style*="padding: 56px"]{padding:28px !important}
  [style*="padding: 64px 56px"]{padding:36px 24px !important}
  [style*="padding: 72px 56px"]{padding:40px 24px !important}
  [style*="padding: 48px"]{padding:28px !important}
  [style*="min-height: 680px"]{min-height:560px !important}
  [style*="grid-column: span 2"]{grid-column:auto !important}
  [style*="padding: 56px 16px 16px"]{padding-top:44px !important}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none !important}}

/* FAQ */
.faq summary::-webkit-details-marker{display:none}
.faq summary::marker{content:''}
.faq .faq-icon{transition:transform .2s ease}
.faq details[open] .faq-icon{transform:rotate(45deg)}
.faq summary:hover h3{color:#93652F}

/* Logo responsive */
@media (max-width:720px){
  .logo-seal{width:52px !important;height:52px !important}
  .logo-word{height:38px !important}
}

/* Menu mobile et tablette */
.menu-toggle{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:48px;height:48px;padding:0;border:0;border-radius:999px;background:#F7F4EF;cursor:pointer}
.menu-toggle span{display:block;width:20px;height:2px;border-radius:2px;background:#1C1B1A;transition:transform .2s ease,opacity .2s ease}
.site-head.is-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.site-head.is-open .menu-toggle span:nth-child(2){opacity:0}
.site-head.is-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:960px){
  .site-head{flex-wrap:wrap !important;border-radius:32px !important;padding:10px 10px 10px 16px !important;gap:0 !important}
  .menu-toggle{display:flex}
  .site-nav{display:none !important;width:100%;flex-direction:column;align-items:stretch !important;gap:0 !important;margin-top:10px;padding:4px 6px 6px;border-top:1px solid #EFE9E0}
  .site-head.is-open .site-nav{display:flex !important}
  .site-nav a{padding:15px 6px;font-size:17px;border-bottom:1px solid #F1ECE4}
  .site-nav a:last-child{margin-top:12px;border-bottom:0;text-align:center}
}
