/* Le bleu nuit existant reste la base ; l'or guide les actions et les étapes. */
header.site{position:sticky;top:0;z-index:25;background:rgba(22,24,43,.97);border-bottom:1px solid rgba(212,173,98,.17);backdrop-filter:blur(12px)}
header.site .wrap{padding-block:18px}.s3 .logo{font-size:23px;letter-spacing:.035em}header.site .nav-book{color:var(--bg);background:var(--accent);padding:10px 18px;border-radius:3px;letter-spacing:.04em}
section{scroll-margin-top:100px}.hero{position:relative}.s3 .hero .wrap{padding-block:68px 82px;gap:60px}.s3 .hero h1{line-height:1.14}.hero p.lead{font-size:18px;line-height:1.8;max-width:48ch}.hero .roles{font-size:27px}.hero .publics{margin-top:24px}.hero .hero-note{margin:18px 0 0;font-size:13px;color:var(--soft)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px}.section-heading h2{text-align:left!important;max-width:560px;margin:0}.section-heading p{max-width:330px;margin:0;color:var(--soft)}
.s3 .services{padding-block:88px}.s3 .svc{border-radius:10px;border-color:#34384f;background:#1c1f35}.s3 .svc::before{display:none}.s3 .svc:hover{transform:none;border-color:var(--accent)}.s3 .svc h3{font-size:20px}.svc p{font-size:15px}.svc .ic::before{opacity:.1}.service-contact{padding-block:9px}
.booking{background:#eeeadf;color:#25283b}.booking .eyebrow{color:#73521c}.booking .wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:start}.s3 .booking h2{text-align:left;font-size:clamp(34px,4vw,49px)}.booking-intro>p{color:#53566a;max-width:37ch;font-size:17px}.booking-steps{list-style:none;padding:0;margin:32px 0;counter-reset:booking}.booking-steps li{counter-increment:booking;display:flex;align-items:center;gap:15px;padding:13px 0;color:#45485b}.booking-steps li::before{content:counter(booking);width:34px;height:34px;border:1px solid #b9a478;border-radius:50%;display:grid;place-items:center;flex:none;color:#73521c;font-family:var(--f-head)}.booking-steps strong{display:block;color:#25283b;font-weight:500}.booking-steps span{font-size:14px}
.booking-panel{padding:32px;background:#fffdf7;border:1px solid #d9d2c1;border-radius:14px;box-shadow:0 16px 45px #25283b08;min-width:0}.booking-panel h3{font-family:var(--f-head);font-size:26px;font-weight:400;margin:0 0 20px}.booking-panel p{color:#555769}.booking-panel form{display:block}.booking-panel label{display:block;font-size:15px;font-weight:500;color:#383c51;margin-bottom:18px;letter-spacing:0}.booking-panel input,.booking-panel select{display:block;width:100%;margin-top:7px;padding:13px 14px;background:white;border:1px solid #9b9da7;border-radius:6px;color:#25283b;font:inherit;font-size:16px;min-height:48px;color-scheme:light}.booking-panel input:focus-visible,.booking-panel select:focus-visible{outline:2px solid #73521c;outline-offset:3px}.booking-panel .btn{color:#fffdf7;background:#373d57;font:500 15px/1.4 var(--f-body);text-transform:none;letter-spacing:0;border-radius:5px;min-height:48px;padding:13px 20px;width:100%}.booking-panel button:disabled{opacity:.5;cursor:not-allowed}.booking-panel a{color:#594219}.booking-panel .consent{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14px;line-height:1.6}.consent input{width:18px;min-height:18px;height:18px;flex:none;margin-top:3px;accent-color:#373d57}.booking-panel .fine-print{font-size:13px;line-height:1.7;color:#666977;margin-bottom:0}.booking-message{padding:14px 16px;border:1px solid #d9d2c1;border-radius:6px;margin:0 0 20px;line-height:1.6}.booking-message:empty{display:none}.booking-message.error{color:#8a2c25;background:#fff4ee;border-color:#dcb6a9}.booking-panel .text-button{color:#43485d;background:none;border:0;text-decoration:underline;text-underline-offset:4px;padding:10px;cursor:pointer;font:inherit;margin-top:12px}.booking-panel .summary{padding:16px;background:#f3f0e6;border-radius:6px;color:#373d57}.confirmation-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#e4ecdf;color:#355137;font-size:26px;margin-bottom:18px}.booking-panel input[autocomplete=one-time-code]{letter-spacing:.35em;font-size:24px}.privacy-note{border-top:1px solid #d9d2c1;padding-top:16px}.booking-panel :focus-visible{outline-color:#73521c}.booking-panel .retry{display:inline-block;padding:10px 0;border:0;background:none;color:#594219;font:inherit;text-decoration:underline;cursor:pointer}
.s3 .contact h2{font-size:38px}.contact .wrap{align-items:center}.site-end{margin-top:30px;color:var(--soft);font-size:14px}.site-end a{color:var(--accent)}
@media(max-width:1000px){.booking .wrap{gap:36px;grid-template-columns:1fr 1.3fr}.s3 .hero .wrap{gap:24px}.s3 .logo{font-size:20px}.s3 nav ul{gap:12px}}
@media(max-width:860px){.booking .wrap{grid-template-columns:1fr;gap:20px}.booking-intro>p{max-width:60ch}.booking-steps{display:flex;gap:15px;flex-wrap:wrap;margin:18px 0}.booking-steps li{flex:1;min-width:145px}.section-heading{display:block}.section-heading p{max-width:60ch;margin-top:20px}.s3 .hero .wrap{grid-template-columns:1fr;padding-block:44px}.s3 .visual{max-width:320px}.s3 .hero h1{font-size:56px}}
@media(max-width:480px){header.site .wrap{padding-block:15px;gap:8px}.s3 .logo{font-size:22px}.s3 nav ul{gap:10px!important;font-size:10px}.s3 header.site .nav-book{padding:9px 10px}.hero .roles{font-size:22px}.hero p.lead{font-size:16px}.s3 .hero h1{font-size:40px}.s3 .hero .wrap{padding-block:32px 40px}.s3 .services{padding-block:50px}.s3 .svc h3{font-size:17px}.svc p{font-size:14px}.booking-panel{padding:22px 18px}.booking-steps{display:block;margin-bottom:8px}.booking-steps li{padding-block:8px}.booking-steps li span{font-size:13px}.booking-panel h3{font-size:24px}.booking .wrap{gap:16px}.hero .hero-note{text-align:center;font-size:12px}.s3 .contact h2{font-size:30px}}
