.landing-header{min-height:92px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--esp-5);border-bottom:1px solid var(--bordure)}
.landing-brand{width:fit-content;min-height:44px;display:inline-flex;align-items:center;gap:var(--esp-3);color:var(--texte);font:700 1rem/1.15 var(--police-titres);text-decoration:none}.landing-brand img,.landing-footer img{display:none}.landing-brand::before,.landing-footer>div::before{content:'';width:38px;height:34px;flex:0 0 auto;background:var(--accent);mask:url('/hotel-gestion/assets/generes/logo-principal.svg') center/contain no-repeat}.landing-brand small{display:block;margin-top:var(--esp-1);color:var(--texte-attenue);font:600 .75rem/1 var(--police-corps)}
.landing-nav,.landing-footer nav{display:flex;align-items:center;gap:var(--esp-6)}.landing-nav a,.landing-footer a,.landing-header__cta{min-height:44px;display:inline-flex;align-items:center;color:var(--texte);font-weight:600;text-decoration:none}.landing-nav a:hover,.landing-footer a:hover,.landing-header__cta:hover{text-decoration:underline}.landing-header__cta{justify-self:end;gap:var(--esp-5);border-bottom:1px solid var(--texte)}.landing-menu{display:none}
.landing-hero{padding-block:var(--esp-8) var(--esp-9)}.landing-hero__intro{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(18rem,.75fr);gap:var(--esp-8);align-items:end;margin-bottom:var(--esp-7)}
.landing-eyebrow{display:flex;align-items:center;gap:var(--esp-3);margin-bottom:var(--esp-5);color:var(--accent);font-size:.78rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.landing-eyebrow>span{width:var(--esp-2);height:var(--esp-2);border-radius:50%;background:var(--corail)}
.landing-hero h1{max-width:11ch;color:var(--texte);font-size:var(--t-5);font-weight:500;letter-spacing:-.055em}.landing-hero h1 em{color:var(--accent);font-style:normal}.landing-hero__copy{display:flex;flex-direction:column;gap:var(--esp-5);padding-bottom:var(--esp-2)}.landing-hero__copy>p{color:var(--texte-attenue);font-size:var(--t-1)}
.landing-actions{display:flex;align-items:center;gap:var(--esp-5);flex-wrap:wrap}.landing-button{min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:var(--esp-6);padding:var(--esp-3) var(--esp-5);border:1px solid var(--accent);border-radius:var(--radius-bouton);background:var(--accent);color:var(--accent-contraste);font-weight:700;text-decoration:none;transition:filter var(--duree-micro) var(--courbe)}.landing-button:hover{text-decoration:underline}.landing-text-link{min-height:44px;width:fit-content;display:inline-flex;align-items:center;gap:var(--esp-4);color:var(--accent);font-weight:700;text-underline-offset:.3em}
.landing-hero__panorama{min-height:38rem;position:relative;overflow:hidden;margin:0;border-radius:var(--radius-modale);background:var(--surface-2)}.landing-hero__panorama>img{width:100%;height:100%;min-height:38rem;position:absolute;inset:0;object-fit:cover}.landing-hero__panorama::after{content:'';position:absolute;inset:0;background:color-mix(in srgb,var(--encre) 18%,transparent);pointer-events:none}.landing-hero__panorama figcaption{position:absolute;z-index:2;inset:auto auto var(--esp-5) var(--esp-5);max-width:31rem;padding:var(--esp-2) var(--esp-3);border-radius:var(--radius-champ);background:color-mix(in srgb,var(--encre) 86%,transparent);color:var(--teal-contraste);font-size:.9rem}
.landing-hero__journey{width:min(29rem,calc(100% - 2 * var(--esp-6)));position:absolute;z-index:3;inset:var(--esp-6) var(--esp-6) auto auto;padding:var(--esp-5);border-radius:var(--radius-carte);background:var(--surface);color:var(--texte);box-shadow:var(--ombre-modale)}.landing-hero__journey-head{display:flex;justify-content:space-between;gap:var(--esp-3);padding-bottom:var(--esp-4);border-bottom:1px solid var(--bordure);color:var(--texte-attenue);font-size:.75rem;font-weight:700;letter-spacing:.08em}.landing-live{color:var(--texte)}.landing-live i{width:var(--esp-2);height:var(--esp-2);display:inline-block;margin-right:var(--esp-2);border-radius:50%;background:var(--succes)}
.landing-hero__calendar{width:56px;height:56px;display:grid;place-items:center;margin-block:var(--esp-5) var(--esp-3);border-radius:50%;background:var(--surface-2)}.landing-hero__calendar img{width:34px;height:34px}.landing-hero__journey h2{font-size:var(--t-2)}.landing-hero__journey ol{list-style:none;margin:var(--esp-5) 0;padding:0;border-top:1px solid var(--bordure)}.landing-hero__journey li{display:grid;grid-template-columns:2rem 1fr;gap:var(--esp-3);padding-block:var(--esp-3);border-bottom:1px solid var(--bordure)}.landing-hero__journey li span{color:var(--accent);font:700 .75rem var(--police-mono)}.landing-hero__journey>a{min-height:44px;display:flex;align-items:center;justify-content:space-between;font-weight:700}
.landing-demo{display:grid;grid-template-columns:auto 1fr;gap:var(--esp-5);align-items:start;margin-top:var(--esp-4);padding:var(--esp-4) var(--esp-5);border-inline-start:4px solid var(--corail);border-radius:var(--radius-champ);background:var(--surface-2)}.landing-demo strong,.landing-demo p{color:var(--texte)}.landing-demo p{max-width:none}
.landing-section{display:grid;grid-template-columns:minmax(17rem,.72fr) minmax(0,1.28fr);gap:var(--esp-8);align-items:start;padding-block:var(--esp-9)}.landing-section__heading{position:sticky;top:var(--esp-5)}.landing-section__heading h2,.landing-access h2{margin-bottom:var(--esp-5);font-size:var(--t-4);font-weight:500;letter-spacing:-.04em}.landing-section__heading>p:last-child{color:var(--texte-attenue);font-size:var(--t-1)}
.landing-map{padding:var(--esp-6);border:1px solid var(--bordure);border-radius:var(--radius-modale);background:var(--surface);box-shadow:var(--ombre-carte)}.landing-map__head{display:flex;align-items:center;gap:var(--esp-4)}.landing-map__head picture{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--surface-2)}.landing-map__head img{width:30px;height:30px}.landing-map__head span{color:var(--texte-attenue);font-size:.7rem;font-weight:700;letter-spacing:.1em}.landing-map__head h3{margin-top:var(--esp-1);font-size:var(--t-1)}.landing-map__legend{display:flex;gap:var(--esp-5);flex-wrap:wrap;margin-block:var(--esp-6) var(--esp-4);color:var(--texte-attenue);font-size:.85rem}.landing-map__legend span{display:inline-flex;align-items:center;gap:var(--esp-2)}.landing-map__legend i{width:10px;height:10px;border-radius:50%}.landing-map .is-available{background:var(--surface-2)}.landing-map .is-held{background:color-mix(in srgb,var(--accent) 18%,var(--surface))}.landing-map .is-pending{background:color-mix(in srgb,var(--corail) 18%,var(--surface))}
.landing-map__rooms{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--esp-2)}.landing-map__room{aspect-ratio:1/1.18;position:relative;display:flex;align-items:end;justify-content:center;padding:var(--esp-2);border:1px solid var(--bordure);border-radius:var(--radius-champ);font:700 .78rem var(--police-mono)}.landing-map__room i{width:33%;height:47%;position:absolute;inset:18% auto auto;border:1px solid currentColor;border-radius:var(--radius-champ) var(--radius-champ) 0 0}.landing-map__room i::after{content:'';width:3px;height:3px;position:absolute;inset:50% var(--esp-1) auto auto;border-radius:50%;background:currentColor}.landing-map__foot{display:flex;justify-content:space-between;gap:var(--esp-5);align-items:center;margin-top:var(--esp-5);padding-top:var(--esp-4);border-top:1px solid var(--bordure)}.landing-map__foot p{color:var(--texte-attenue);font-size:.85rem}.landing-map__foot a{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;gap:var(--esp-3);font-weight:700}
.landing-services{padding-block:var(--esp-9);background:var(--accent);color:var(--accent-contraste)}.landing-services__layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:var(--esp-8);align-items:center}.landing-services__visual img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius-modale)}.landing-services__visual p{margin-top:var(--esp-3);color:var(--accent-contraste);font-size:.85rem}.landing-services__content{min-width:0}.landing-services .landing-eyebrow,.landing-services .landing-section__heading>p:last-child,.landing-services .landing-text-link{color:var(--accent-contraste)}.landing-section__heading--compact{position:static}.landing-services__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--esp-3);margin-block:var(--esp-6)}.landing-service-card{min-height:15rem;display:flex;flex-direction:column;gap:var(--esp-3);padding:var(--esp-5);border:1px solid color-mix(in srgb,var(--accent-contraste) 36%,transparent);border-radius:var(--radius-carte)}.landing-service-card picture{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--accent-contraste)}.landing-service-card img{width:29px;height:29px}.landing-service-card h3{margin-top:auto;font-size:var(--t-1)}.landing-service-card p{color:var(--accent-contraste)}
.landing-section--flow{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.landing-flow{display:grid;gap:var(--esp-3)}.landing-flow article{min-height:10rem;display:grid;grid-template-columns:2.5rem 4rem 1fr;grid-template-rows:auto auto;gap:var(--esp-3) var(--esp-4);align-items:center;padding:var(--esp-5);border:1px solid var(--bordure);border-radius:var(--radius-carte);background:var(--surface)}.landing-flow__number{grid-column:1;grid-row:1/span 2;align-self:start;color:var(--accent);font:700 .75rem var(--police-mono)}.landing-flow picture{width:58px;height:58px;display:grid;grid-column:2;grid-row:1/span 2;place-items:center;border-radius:50%;background:var(--surface-2)}.landing-flow img{width:31px;height:31px}.landing-flow h3{grid-column:3;grid-row:1;align-self:end;font-size:var(--t-1)}.landing-flow p{grid-column:3;grid-row:2;align-self:start;color:var(--texte-attenue)}
.landing-access{min-height:30rem;display:grid;grid-template-columns:.55fr 1.45fr;margin-bottom:var(--esp-9);overflow:hidden;border-radius:var(--radius-modale);background:var(--surface-2)}.landing-access__mark{display:grid;place-items:center;padding:var(--esp-7);background:var(--accent)}.landing-access__mark img{display:none}.landing-access__mark::before{content:'';width:min(16rem,100%);aspect-ratio:1;background:var(--accent-contraste);mask:url('/hotel-gestion/assets/generes/logo-principal.svg') center/contain no-repeat}.landing-access__body{padding:var(--esp-7)}.landing-access__links{border-top:1px solid var(--bordure)}.landing-access__links a{min-height:74px;display:grid;grid-template-columns:11rem 1fr auto;gap:var(--esp-4);align-items:center;padding-block:var(--esp-4);border-bottom:1px solid var(--bordure);color:var(--texte);text-decoration:none}.landing-access__links a:hover strong{text-decoration:underline}.landing-access__links span{color:var(--texte-attenue)}.landing-access__links i{color:var(--accent);font-style:normal;font-size:var(--t-1)}
.landing-footer{min-height:12rem;display:flex;justify-content:space-between;gap:var(--esp-7);align-items:start;padding-block:var(--esp-7);border-top:1px solid var(--bordure)}.landing-footer>div{display:flex;gap:var(--esp-4)}.landing-footer p{color:var(--texte-attenue)}.landing-footer strong{color:var(--texte)}.landing-noscript{max-width:none;padding:var(--esp-4) var(--gouttiere);background:var(--surface-2);text-align:center}
@media(max-width:960px){.landing-header{grid-template-columns:1fr auto}.landing-nav{display:none}.landing-hero__intro,.landing-section,.landing-section--flow,.landing-services__layout{grid-template-columns:1fr}.landing-section__heading{position:static}.landing-services__visual{display:grid;grid-template-columns:1fr auto;gap:var(--esp-3);align-items:end}.landing-services__visual p{writing-mode:vertical-rl}.landing-services__visual img{max-height:32rem;aspect-ratio:16/10}.landing-map__rooms{grid-template-columns:repeat(5,minmax(0,1fr))}.landing-access{grid-template-columns:.45fr 1.55fr}}
@media(max-width:680px){.landing-header{min-height:76px}.landing-brand small,.landing-header__cta{display:none}.landing-menu{display:block;position:relative}.landing-menu summary{width:44px;height:44px;display:grid;place-content:center;gap:7px;cursor:pointer;list-style:none}.landing-menu summary::-webkit-details-marker{display:none}.landing-menu summary span{width:24px;height:1px;display:block;background:var(--texte)}.landing-menu nav{width:min(18rem,calc(100vw - 2 * var(--gouttiere)));position:absolute;z-index:20;inset:calc(100% + var(--esp-2)) 0 auto auto;display:flex;flex-direction:column;padding:var(--esp-3);border:1px solid var(--bordure);border-radius:var(--radius-carte);background:var(--surface);box-shadow:var(--ombre-carte)}.landing-menu nav a{min-height:44px;display:flex;align-items:center;padding-inline:var(--esp-3);color:var(--texte);font-weight:600;text-decoration:none}.landing-hero{padding-block:var(--esp-7) var(--esp-8)}.landing-hero__intro{gap:var(--esp-5);margin-bottom:var(--esp-5)}.landing-hero h1{font-size:var(--t-4)}.landing-hero__copy>p{font-size:1rem}.landing-actions{align-items:stretch;flex-direction:column}.landing-button,.landing-text-link{width:100%}.landing-hero__panorama,.landing-hero__panorama>img{min-height:39rem}.landing-hero__panorama>img{height:14rem;min-height:0}.landing-hero__panorama::after{height:14rem;bottom:auto}.landing-hero__journey{width:calc(100% - 2 * var(--esp-4));inset:11rem var(--esp-4) auto;padding:var(--esp-4)}.landing-hero__panorama figcaption{inset:var(--esp-3) var(--esp-3) auto;font-size:.78rem}.landing-demo{grid-template-columns:1fr;gap:var(--esp-2)}.landing-section,.landing-services{padding-block:var(--esp-8);gap:var(--esp-6)}.landing-section__heading h2,.landing-access h2{font-size:var(--t-3)}.landing-map{padding:var(--esp-4)}.landing-map__legend{gap:var(--esp-3)}.landing-map__rooms{grid-template-columns:repeat(4,minmax(0,1fr))}.landing-map__foot{align-items:flex-start;flex-direction:column}.landing-services__visual{display:block}.landing-services__visual p{writing-mode:horizontal-tb}.landing-services__visual img{aspect-ratio:4/3}.landing-services__grid{grid-template-columns:1fr}.landing-service-card{min-height:13rem}.landing-flow article{grid-template-columns:2rem 3.5rem 1fr;padding:var(--esp-4)}.landing-access{grid-template-columns:1fr;margin-bottom:var(--esp-8)}.landing-access__mark{min-height:13rem}.landing-access__mark::before{width:8rem}.landing-access__body{padding:var(--esp-5)}.landing-access__links a{grid-template-columns:1fr auto}.landing-access__links span{grid-column:1/-1;grid-row:2}.landing-footer{flex-direction:column}.landing-footer nav{width:100%;align-items:flex-start;flex-direction:column;gap:var(--esp-2)}.landing-footer nav a{min-height:44px;display:flex;align-items:center}}
@media(max-width:390px){.landing-map__rooms{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-flow article{grid-template-columns:1.8rem 3rem 1fr;gap:var(--esp-3)}.landing-flow picture{width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){.landing-button{transition:none}}
