/* Maison Ipek — maisonipek.com */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(/cormorant-garamond-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(/cormorant-garamond-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(/cormorant-garamond-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url(/montserrat-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url(/montserrat-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url(/montserrat-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{--navy:#0F1B2D;--ivory:#F5F1EA;--gold:#C8A75A;--muted:#4A5468;--serif:"Cormorant Garamond",Garamond,"Times New Roman",serif;--sans:"Montserrat",Helvetica,Arial,sans-serif;--pad:clamp(20px,5vw,64px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--navy);font-family:var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--navy)}
a:hover{color:#33415C}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;background:var(--navy);color:var(--ivory);padding:10px 16px;z-index:10}

.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px var(--pad);font-size:11px;letter-spacing:.24em;text-transform:uppercase;border-bottom:1px solid rgba(15,27,45,.12)}
.topbar a{text-decoration:none;border-bottom:1px solid var(--navy);padding:12px 0 2px}
.topbar .home{border:0;padding:12px 0}

.hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:36px;padding:clamp(56px,9vw,120px) 24px clamp(56px,8vw,104px)}
.hero h1{margin:0;width:min(380px,74%)}
.hero h1 img{width:100%;height:auto}
.slogan{margin:0;max-width:640px;font-family:var(--serif);font-style:italic;font-size:clamp(22px,2.6vw,30px);line-height:1.35}

.story{max-width:1200px;margin:0 auto;padding:0 var(--pad) clamp(72px,9vw,128px);display:flex;flex-wrap:wrap;align-items:center;gap:clamp(36px,5vw,80px)}
.story > img{flex:1 1 320px;min-width:0;width:100%;aspect-ratio:4/3;object-fit:cover;height:auto}
.story-text{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:22px}
.story h2{margin:0;font-family:var(--serif);font-weight:500;font-size:clamp(34px,3.6vw,48px);line-height:1.1;letter-spacing:.01em}
.story p{margin:0;font-family:var(--serif);font-size:clamp(20px,1.7vw,23px);line-height:1.6}
.story p.em{font-style:italic}
.rule{display:flex;align-items:center;gap:14px}
.rule span{display:block;width:56px;height:1px;background:currentColor;opacity:.5}
.rule svg{width:14px;height:14px}

.acces{background:var(--navy);color:var(--ivory);padding:clamp(72px,9vw,120px) var(--pad);display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;scroll-margin-top:0}
.acces .rose{width:72px;height:72px}
.acces h2{margin:0;max-width:680px;font-family:var(--serif);font-weight:500;font-size:clamp(30px,3.6vw,46px);line-height:1.15}
.acces .lead{margin:0;max-width:520px;font-size:15px;line-height:1.6;color:rgba(245,241,234,.85)}

/* Brevo form, restyled */
.sib-form{width:100%;max-width:540px;margin-top:8px;text-align:left}
#sib-form{display:flex;flex-direction:column;gap:18px}
.f-label{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(245,241,234,.8)}
.f-row{display:flex;flex-wrap:wrap;gap:12px}
#EMAIL{flex:1 1 240px;min-width:0;height:52px;padding:0 18px;background:transparent;border:1px solid rgba(245,241,234,.5);border-radius:0;color:var(--ivory);font-family:var(--sans);font-size:15px}
#EMAIL::placeholder{color:rgba(245,241,234,.55)}
#EMAIL:focus{border-color:var(--ivory);outline:none}
.f-btn{flex:0 0 auto;height:52px;padding:0 30px;background:var(--ivory);color:var(--navy);border:0;border-radius:0;font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;gap:10px}
.f-btn:hover{background:#fff}
.f-consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.55;color:rgba(245,241,234,.9);cursor:pointer}
.f-consent input{width:18px;height:18px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--gold)}
.f-note{margin:0;font-size:12px;line-height:1.6;color:rgba(245,241,234,.72)}
.f-note a{color:rgba(245,241,234,.92)}
.entry__error{display:block;font-size:12px;color:#FFD9D9}
.entry__error:empty{display:none}
.input--hidden{display:none!important}
.sib-hide-loader-icon{display:none}
.progress-indicator__icon{width:14px;height:14px;fill:currentColor;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.sib-form-message-panel{display:none;margin:0 0 18px;padding:14px 16px;font-size:14px;line-height:1.5;border:1px solid}
.sib-form-message-panel--active{display:block}
#success-message{background:rgba(245,241,234,.08);border-color:var(--gold);color:var(--ivory)}
#error-message{background:rgba(255,120,120,.12);border-color:#E9A0A0;color:#FFE3E3}
.sib-notification__icon{display:none}

.footer{padding:48px var(--pad);display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}
.footer .brand{margin:0;font-family:var(--serif);font-size:20px;letter-spacing:.2em;text-transform:uppercase}
.footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;font-size:12px;letter-spacing:.08em}
.footer nav a{padding:12px 0}
.footer .legal{margin:0;font-size:11px;line-height:1.7;color:var(--muted)}

/* Legal pages */
.doc{max-width:760px;margin:0 auto;padding:clamp(48px,7vw,96px) var(--pad) clamp(64px,8vw,112px)}
.doc h1{margin:0 0 8px;font-family:var(--serif);font-weight:500;font-size:clamp(36px,4vw,52px);line-height:1.1}
.doc .date{margin:0 0 40px;font-size:12px;letter-spacing:.08em;color:var(--muted)}
.doc h2{margin:40px 0 12px;font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.doc p{margin:0 0 12px;font-size:15px;line-height:1.75}
.f-label{display:block;margin-bottom:10px}
@media (max-width:480px){.f-btn{flex:1 1 100%;justify-content:center}}
/* Zone de protection du logo : au moins la hauteur du M (~88 px) */
.hero .slogan{margin-top:60px}
