                                                                                                                                                                                                                                                                    @import url('https://fonts.googleapis.com/css2?family=Bona+Nova:ital,wght@0,400;0,700;1,400&family=Fragment+Mono&family=Mulish:wght@400..800&display=swap');
                                                                                                                                                                                                                                                                    .portrait{transition:transform .3s,box-shadow .3s}
                                                                                                                        .portrait:hover{transform:translateY(-5px);box-shadow:0 23px 48px color-mix(in srgb,var(--nuit) 16%,transparent)}
                                                                                                                        .note{transition:background .2s,transform .2s}
                                                                                                                        .note:hover{background:var(--bleu-pale);transform:translateY(-2px)}
                                                                                                                        .page-hero h1{transition:color .25s,letter-spacing .25s}
                                                                                                                        .page-hero:hover h1{color:var(--bleu);letter-spacing:-.035em}
                                                                                                                        .logo{transition:color .2s,letter-spacing .2s}
                                                                                                                        .logo:hover{color:var(--bleu);letter-spacing:.19em}
                                                                                                                        .tasse h3{transition:color .2s,transform .2s}
                                                                                                                        .tasse:hover h3{color:var(--bleu);transform:translateX(3px)}
                                                                                                                        .carte h3{transition:color .2s}
                                                                                                                        .carte:hover h3{color:var(--bleu)}
                                                                                                                        .menu-btn{transition:background .2s,color .2s}
                                                                                                                        .menu-btn:hover{background:var(--bleu);color:var(--blanc)}
                                                                                                                        
                                                                                                                                                                                                                                                                    :root{--ivoire:#F7F2E8;--bleu:#5871A5;--bleu-pale:#DCE4F2;--nuit:#17243D;--ambre:#B56A32;--encre:#1E2738;--blanc:#FFFCF6;--ligne:#C7C4BC;--sauge:#60766C;--titre:'Bona Nova',serif;--texte:'Mulish',sans-serif;--donnee:'Fragment Mono',monospace}
                                                                                                                        *{box-sizing:border-box}
                                                                                                                        html{scroll-behavior:smooth}
                                                                                                                        body{margin:0;background:var(--ivoire);color:var(--encre);font:16px/1.65 var(--texte)}
                                                                                                                        img{width:100%;height:100%;object-fit:cover;display:block}
                                                                                                                        a{color:inherit;text-decoration:none}
                                                                                                                        .env{width:min(100% - 48px,1320px);margin:auto}
                                                                                                                        .hd{border-bottom:1px solid var(--ligne);background:var(--ivoire)}
                                                                                                                        .hd .env{height:92px;display:flex;align-items:center;gap:26px}
                                                                                                                        .logo{margin-right:auto;font:700 24px var(--titre);letter-spacing:.16em}
                                                                                                                        .nav{display:flex;gap:22px;font-size:13px}
                                                                                                                        .nav a,.tel,.menu-btn{transition:color .2s,transform .2s}
                                                                                                                        .nav a:hover,.tel:hover{color:var(--bleu);transform:translateY(-2px)}
                                                                                                                        .tel{font:12px var(--donnee)}
                                                                                                                        .menu-btn{display:none;border:1px solid var(--nuit);background:transparent;padding:11px 15px}
                                                                                                                        .hero{padding:60px 0 70px}
                                                                                                                        .hero-grille{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:65px}
                                                                                                                        .hero h1{font:400 clamp(4.2rem,8vw,8.4rem)/.87 var(--titre);letter-spacing:-.055em;margin:10px 0 26px}
                                                                                                                        .hero p{font-size:20px;max-width:610px}
                                                                                                                        .hero-img{height:620px;border-radius:12px;overflow:hidden;box-shadow:0 18px 42px color-mix(in srgb,var(--nuit) 13%,transparent)}
                                                                                                                        .btn{display:inline-flex;min-height:48px;align-items:center;padding:13px 22px;border-radius:8px;background:var(--bleu);color:var(--blanc);font-size:12px;text-transform:uppercase;letter-spacing:.1em;transition:transform .2s,background .2s,box-shadow .2s}
                                                                                                                        .btn:hover{transform:translateY(-3px);background:var(--ambre);box-shadow:0 12px 25px color-mix(in srgb,var(--nuit) 18%,transparent)}
                                                                                                                        .essentiel{display:grid;grid-template-columns:repeat(4,1fr);background:var(--blanc);box-shadow:0 14px 28px color-mix(in srgb,var(--nuit) 7%,transparent)}
                                                                                                                        .essentiel>div{padding:22px;border-right:1px solid var(--ligne)}
                                                                                                                        .essentiel>div:last-child{border:0}
                                                                                                                        .essentiel span{display:block;font:11px var(--donnee);text-transform:uppercase;color:var(--bleu)}
                                                                                                                        .essentiel strong{font:700 19px var(--titre);display:block;transition:color .2s,transform .2s}
                                                                                                                        .essentiel>div:hover strong{color:var(--ambre);transform:translateY(-2px)}
                                                                                                                        .section{padding:90px 0}
                                                                                                                        .section h2,.page-hero h1{font:400 clamp(3rem,6vw,6.4rem)/.95 var(--titre);letter-spacing:-.045em;margin:8px 0 25px}
                                                                                                                        .section h3{font:700 24px var(--titre);margin:15px 0 8px}
                                                                                                                        .sur{font:11px var(--donnee);text-transform:uppercase;letter-spacing:.18em;color:var(--bleu)}
                                                                                                                        .intro{font:400 clamp(1.22rem,2vw,1.65rem)/1.45 var(--titre);max-width:820px}
                                                                                                                        .centrer{text-align:center}
                                                                                                                        .centrer .intro{margin-inline:auto}
                                                                                                                        .neg{background:var(--nuit);color:var(--blanc)}
                                                                                                                        .bleu{background:var(--bleu-pale)}
                                                                                                                        .grille4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
                                                                                                                        .grille3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
                                                                                                                        .duo{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px}
                                                                                                                        .carte{background:var(--blanc);padding:17px;border-radius:12px;box-shadow:0 10px 25px color-mix(in srgb,var(--nuit) 7%,transparent);transition:transform .3s,box-shadow .3s}
                                                                                                                        .carte:hover{transform:translateY(-6px);box-shadow:0 18px 36px color-mix(in srgb,var(--nuit) 12%,transparent)}
                                                                                                                        .carte img{height:260px;border-radius:8px}
                                                                                                                        .tasse{padding:25px;border-radius:12px;background:var(--blanc);box-shadow:0 10px 25px color-mix(in srgb,var(--nuit) 7%,transparent);transition:background .2s,transform .2s}
                                                                                                                        .tasse:hover{background:var(--bleu-pale);transform:translateY(-4px)}
                                                                                                                        .tasse small{font:11px/1.7 var(--donnee);color:var(--bleu)}
                                                                                                                        .portrait{height:620px;border-radius:12px;overflow:hidden;box-shadow:0 18px 40px color-mix(in srgb,var(--nuit) 12%,transparent)}
                                                                                                                        .menu-ligne{display:grid;grid-template-columns:1fr auto;gap:25px;padding:20px 0;border-bottom:1px solid var(--ligne);transition:padding-left .2s,background .2s}
                                                                                                                        .menu-ligne:hover{padding-left:12px;background:var(--blanc)}
                                                                                                                        .menu-ligne b{font:700 21px var(--titre)}
                                                                                                                        .note{padding:20px;border-radius:12px;background:var(--blanc);box-shadow:0 10px 24px color-mix(in srgb,var(--nuit) 6%,transparent)}
                                                                                                                        .etapes{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
                                                                                                                        .etape{padding:25px;border-radius:12px;background:var(--blanc);transition:background .2s,transform .2s}
                                                                                                                        .etape:hover{background:var(--bleu-pale);transform:translateY(-4px)}
                                                                                                                        .etape small{font:11px var(--donnee);color:var(--bleu)}
                                                                                                                        .appel{text-align:center;padding:85px 24px;background:var(--bleu-pale)}
                                                                                                                        .appel h2{font:400 clamp(2.7rem,5vw,5.2rem)/.96 var(--titre);max-width:880px;margin:10px auto 28px}
                                                                                                                        .pied{background:var(--nuit);color:var(--blanc);padding:70px 0 30px}
                                                                                                                        .pied-grille{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:55px}
                                                                                                                        .pied a{display:block;margin:7px 0;transition:color .2s,transform .2s}
                                                                                                                        .pied a:hover{color:var(--bleu-pale);transform:translateX(3px)}
                                                                                                                        .pied small{font-size:11px}
                                                                                                                        .page-hero{text-align:center;padding:85px 20px;border-bottom:1px solid var(--ligne)}
                                                                                                                        .page-hero p{font:400 22px var(--titre);max-width:850px;margin:auto}
                                                                                                                        .contenu{padding:85px 0;overflow:hidden}
                                                                                                                        .form{display:grid;gap:15px}
                                                                                                                        .form label{font:11px var(--donnee);text-transform:uppercase;color:var(--bleu)}
                                                                                                                        .form input,.form select,.form textarea{width:100%;padding:15px;border:1px solid var(--ligne);border-radius:8px;background:var(--blanc);transition:border-color .2s,box-shadow .2s}
                                                                                                                        .form input:focus,.form select:focus,.form textarea:focus{outline:0;border-color:var(--bleu);box-shadow:0 0 0 3px var(--bleu-pale)}
                                                                                                                        .rv{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}
                                                                                                                        .rv.visible{opacity:1;transform:none}
                                                                                                                        @keyframes entree{from{opacity:0;transform:translateY(22px)}
                                                                                                                        to{opacity:1;transform:none}
                                                                                                                        }
                                                                                                                        @keyframes vapeur{50%{transform:translateY(-6px)}
                                                                                                                        }
                                                                                                                        @keyframes teinte{50%{background:var(--bleu-pale)}
                                                                                                                        }
                                                                                                                        @keyframes eclat{50%{filter:brightness(1.06)}
                                                                                                                        }
                                                                                                                        @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
                                                                                                                        }
                                                                                                                        @media(max-width:900px){.env{width:min(100% - 28px,1320px)}
                                                                                                                        .hd .env{height:82px}
                                                                                                                        .nav{display:none;position:absolute;z-index:12;top:82px;left:0;right:0;background:var(--ivoire);padding:22px;flex-direction:column;border-bottom:1px solid var(--ligne)}
                                                                                                                        .nav.ouvert{display:flex}
                                                                                                                        .menu-btn{display:block}
                                                                                                                        .hd .tel{display:none}
                                                                                                                        .hero{padding:42px 0 55px}
                                                                                                                        .hero-grille{grid-template-columns:1fr;gap:38px}
                                                                                                                        .hero h1{font-size:clamp(3.6rem,16vw,6rem)}
                                                                                                                        .hero-img{height:460px}
                                                                                                                        .essentiel{grid-template-columns:1fr 1fr}
                                                                                                                        .essentiel>div{padding:18px 14px}
                                                                                                                        .essentiel>div:nth-child(2){border-right:0}
                                                                                                                        .essentiel>div:nth-child(-n+2){border-bottom:1px solid var(--ligne)}
                                                                                                                        .section{padding:70px 0}
                                                                                                                        .grille4,.grille3,.duo{grid-template-columns:1fr}
                                                                                                                        .carte img{height:380px}
                                                                                                                        .portrait{height:500px}
                                                                                                                        .etapes{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.etape{min-width:0;padding:18px}
                                                                                                                        .pied-grille{grid-template-columns:1fr}
                                                                                                                        .page-hero{padding:65px 20px}
                                                                                                                        .page-hero h1{overflow-wrap:anywhere}
                                                                                                                        }
                                                                                                                        
