/* HÔTEL SÉLÈNE — multi-page mockup */
:root{
  --navy:#15273d;
  --ink:#17212d;
  --coral:#ee7864;
  --ice:#b9d5de;
  --cream:#f4ede1;
  --white:#fffaf2;
  --sand:#d6c3a7;
  --line:rgba(23,33,45,.18);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;background:var(--cream)}
body{margin:0;overflow-x:hidden;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}
body.menu-open{overflow:hidden} img{display:block;width:100%} a{text-decoration:none;color:inherit} button,input,select,textarea{font:inherit}
::selection{background:var(--coral);color:var(--white)}
.eyebrow,.section-index{margin:0 0 18px;font-family:"Archivo Narrow",sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.section-pad{padding:130px 5vw}
.loader{position:fixed;inset:0;z-index:9999;display:grid;place-content:center;background:var(--navy);color:var(--cream)}
.loader span{font-family:"Cormorant Garamond",serif;font-size:clamp(4rem,12vw,11rem);letter-spacing:.03em}
.loader i{width:0;height:1px;margin:20px auto 0;background:var(--coral)}
.site-header{position:fixed;z-index:1000;top:16px;left:2vw;right:2vw;min-height:68px;padding:0 22px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-radius:999px;color:var(--cream);transition:.35s}
.site-header.is-scrolled,.site-header.on-light{background:rgba(244,237,225,.86);color:var(--ink);backdrop-filter:blur(18px);box-shadow:0 18px 45px rgba(21,39,61,.1)}
.brand{display:grid;width:max-content;line-height:.8}.brand span{font-family:"Archivo Narrow";font-size:.58rem;letter-spacing:.25em}.brand strong{font-family:"Cormorant Garamond";font-size:1.55rem;font-weight:500}
.desktop-nav{display:flex;gap:34px;font-family:"Archivo Narrow";font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:1px;background:currentColor;transition:right .3s}.desktop-nav a:hover:after{right:0}
.booking-link{justify-self:end;padding:13px 20px;border-radius:999px;background:var(--coral);color:var(--white);font-size:.78rem}
.menu-toggle,.mobile-menu{display:none}
.page-transition{position:fixed;inset:0;z-index:9000;background:var(--navy);transform:scaleY(0);transform-origin:bottom;pointer-events:none}
.cursor{position:fixed;z-index:9998;width:80px;height:80px;border-radius:50%;display:grid;place-items:center;pointer-events:none;transform:translate(-50%,-50%) scale(0);background:var(--coral);color:white;font-size:.65rem;transition:transform .2s}.cursor.is-visible{transform:translate(-50%,-50%) scale(1)}
.home-hero{min-height:100svh;position:relative;overflow:hidden;background:var(--navy);color:var(--cream)}
.home-hero__image{position:absolute;inset:0 0 0 46%}.home-hero__image img{height:100%;object-fit:cover}
.home-hero__image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,rgba(21,39,61,.05) 44%)}
.home-hero__copy{position:relative;z-index:2;width:min(900px,70vw);padding:175px 5vw 80px}
.home-hero h1,.page-hero h1,.restaurant-hero h1,.journal-hero h1,.contact-page h1{margin:0;font-family:"Cormorant Garamond";font-weight:400;font-size:clamp(5rem,11vw,12rem);line-height:.72;letter-spacing:-.04em}
.home-hero h1 span,.home-hero h1 em,.page-hero h1 span,.page-hero h1 em,.restaurant-hero h1 span,.restaurant-hero h1 em,.journal-hero h1 span,.journal-hero h1 em,.contact-page h1 span,.contact-page h1 em{display:block;overflow:hidden}
.home-hero h1 em,.page-hero h1 em,.restaurant-hero h1 em,.journal-hero h1 em,.contact-page h1 em{font-weight:400;color:var(--coral)}
.hero-text{max-width:420px;margin:30px 0;line-height:1.75;color:rgba(244,237,225,.8)}
.circle-link{width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--coral);color:white;font-family:"Archivo Narrow";text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;position:relative}.circle-link b{position:absolute;right:28px;top:25px;font-size:1rem}
.vertical-note{position:absolute;z-index:2;right:18px;top:50%;writing-mode:vertical-rl;font-family:"Archivo Narrow";font-size:.62rem;letter-spacing:.2em}
.intro-split{padding:140px 5vw;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;background:var(--cream)}
.intro-split h2,.section-head h2,.home-table h2,.detail-intro h2,.chef-note h2,.breakfast h2{margin:0;font-family:"Cormorant Garamond";font-weight:400;font-size:clamp(3.5rem,7vw,8rem);line-height:.9}
.intro-split__right{display:grid;grid-template-columns:1fr .55fr;gap:25px;align-items:end}.intro-split__right img{aspect-ratio:.9;object-fit:cover}.intro-split__right p{line-height:1.8}
.marquee{overflow:hidden;background:var(--coral);color:white;padding:18px 0}.marquee>div{width:max-content;display:flex;gap:28px;align-items:center;animation:marquee 24s linear infinite;font-family:"Archivo Narrow";font-size:1.2rem;letter-spacing:.12em}.marquee i{font-style:normal}@keyframes marquee{to{transform:translateX(-50%)}}
.home-suites{background:var(--white)}.section-head{display:grid;grid-template-columns:180px 1fr auto;gap:40px;align-items:end;margin-bottom:70px}.line-link{padding-bottom:6px;border-bottom:1px solid currentColor;font-size:.8rem}
.suite-showcase{display:grid;grid-template-columns:1.1fr .9fr;gap:30px}.suite-card--offset{margin-top:130px}.suite-card__image{overflow:hidden}.suite-card__image img{aspect-ratio:.86;object-fit:cover;transition:transform .9s}.suite-card:hover img{transform:scale(1.035)}
.suite-card__meta{display:grid;grid-template-columns:45px 1fr auto;align-items:end;padding-top:18px}.suite-card__meta span{font-family:"Archivo Narrow";font-size:.7rem}.suite-card__meta h3{margin:0;font-family:"Cormorant Garamond";font-size:clamp(2.5rem,4vw,4.8rem);font-weight:400}.suite-card__meta p{margin:0;font-size:.72rem}
.home-table{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:var(--ice)}.home-table__image img{height:100%;object-fit:cover}.home-table__copy{padding:100px 7vw;display:grid;align-content:center}.home-table h2 em{color:var(--coral);font-weight:400}.home-table__copy>p:not(.section-index){max-width:480px;line-height:1.8;margin:28px 0}
.section-head--center{grid-template-columns:1fr;text-align:center}.experience{background:var(--cream)}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.experience-grid article{position:relative}.experience-grid span{position:absolute;z-index:2;top:15px;left:15px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--cream);font-size:.68rem}.experience-grid img{aspect-ratio:.82;object-fit:cover}.experience-grid h3{margin:15px 0 0;font-family:"Cormorant Garamond";font-size:2.4rem;font-weight:400}
.quote-block{padding:140px 7vw;background:var(--navy);color:var(--cream);text-align:center}.quote-block p{max-width:1100px;margin:auto;font-family:"Cormorant Garamond";font-size:clamp(3rem,6vw,7rem);line-height:1}
.final-cta{min-height:86vh;position:relative}.final-cta img{height:86vh;object-fit:cover}.final-cta:after{content:"";position:absolute;inset:0;background:rgba(21,39,61,.35)}.final-cta>div{position:absolute;z-index:2;inset:0;padding:60px 5vw;display:flex;justify-content:space-between;align-items:end;color:white}.final-cta p{font-family:"Cormorant Garamond";font-size:clamp(3rem,7vw,7rem);margin:0}.circle-link--light{background:var(--cream);color:var(--navy)}
.page-hero{min-height:74vh;padding:170px 5vw 80px;display:grid;grid-template-columns:1fr .5fr;align-items:end;background:var(--navy);color:var(--cream)}.page-hero__intro{max-width:430px;line-height:1.8}.suite-list{background:var(--cream)}
.suite-row{display:grid;grid-template-columns:60px 300px 1fr 130px;gap:28px;align-items:center;padding:32px 0;border-top:1px solid var(--line)}.suite-row:last-child{border-bottom:1px solid var(--line)}.suite-row__number{font-family:"Archivo Narrow";font-size:.7rem}.suite-row__image{overflow:hidden}.suite-row__image img{aspect-ratio:1.2;object-fit:cover;transition:transform .7s}.suite-row:hover img{transform:scale(1.04)}.suite-row__copy p{font-family:"Archivo Narrow";font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}.suite-row__copy h2{margin:0 0 10px;font-family:"Cormorant Garamond";font-size:3.5rem;font-weight:400}.suite-row__copy span{font-size:.82rem;line-height:1.6}.suite-row__price{text-align:right;font-size:.7rem}.suite-row__price strong{font-family:"Cormorant Garamond";font-size:2rem}
.inclusions{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ice)}.inclusions>div{min-height:300px;padding:38px;border-right:1px solid rgba(21,39,61,.16);display:grid;align-content:end}.inclusions span{font-size:.65rem}.inclusions h3{font-family:"Cormorant Garamond";font-size:2rem;font-weight:400;margin:15px 0 7px}.inclusions p{margin:0;line-height:1.6;font-size:.82rem}
.detail-hero{height:100svh;position:relative;color:white}.detail-hero img{height:100%;object-fit:cover}.detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(21,39,61,.7),transparent 55%)}.detail-hero__copy{position:absolute;z-index:2;left:5vw;bottom:45px}.detail-hero__copy p{font-family:"Archivo Narrow";letter-spacing:.16em;text-transform:uppercase}.detail-hero__copy h1{margin:0;font-family:"Cormorant Garamond";font-size:clamp(6rem,14vw,15rem);font-weight:400;line-height:.7}.detail-hero__copy span{font-size:.78rem}
.detail-intro{display:grid;grid-template-columns:1fr .7fr;gap:8vw;background:var(--cream)}.detail-intro>div:last-child{align-self:end}.detail-intro p{line-height:1.8}.booking-pill{display:inline-block;margin-top:20px;padding:15px 22px;border-radius:999px;background:var(--navy);color:white;font-size:.78rem}
.detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 16px}.detail-gallery img{height:760px;object-fit:cover}.detail-gallery img:last-child{margin-top:120px}
.amenities{background:var(--white)}.amenities-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:50px}.amenities-grid span{padding:24px 0;border-top:1px solid var(--line);font-family:"Cormorant Garamond";font-size:1.8rem}
.next-suite{padding:100px 5vw;background:var(--coral);color:white}.next-suite p{font-family:"Archivo Narrow";text-transform:uppercase;letter-spacing:.15em}.next-suite a{display:flex;justify-content:space-between;align-items:center}.next-suite a span{font-family:"Cormorant Garamond";font-size:clamp(5rem,13vw,13rem)}.next-suite a b{font-size:3rem}
.restaurant-hero{min-height:100svh;display:grid;grid-template-columns:.8fr 1.2fr;background:var(--coral);color:white}.restaurant-hero__copy{padding:180px 5vw 80px;display:grid;align-content:end}.restaurant-hero img{height:100%;object-fit:cover}.restaurant-hero h1 em{color:var(--navy)}
.chef-note{display:grid;grid-template-columns:1fr .75fr;gap:8vw;background:var(--cream)}.chef-note>div:last-child{align-self:end}.chef-note p{line-height:1.8}.signature{font-family:"Cormorant Garamond";font-size:1.6rem}
.menu-preview{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:var(--cream)}.menu-preview__image img{height:100%;object-fit:cover}.menu-preview__list{padding:90px 7vw}.menu-preview__list>div{padding:24px 0;border-bottom:1px solid rgba(244,237,225,.18)}.menu-preview h3{margin:0 0 6px;font-family:"Cormorant Garamond";font-size:2.4rem;font-weight:400}.menu-preview span{font-size:.78rem;color:rgba(244,237,225,.65)}.menu-price{margin-top:35px}
.breakfast{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}.breakfast img{aspect-ratio:1.2;object-fit:cover}.breakfast p{line-height:1.8}.reservation-strip{padding:28px 5vw;display:flex;justify-content:space-between;align-items:center;background:var(--ice)}.reservation-strip a{padding-bottom:4px;border-bottom:1px solid}
.journal-hero{padding:180px 5vw 90px;background:var(--navy);color:var(--cream)}.journal-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:6vw;align-items:end}.journal-feature__image img{aspect-ratio:1.3;object-fit:cover}.journal-feature__copy h2{margin:12px 0 20px;font-family:"Cormorant Garamond";font-size:clamp(3rem,5vw,6rem);font-weight:400;line-height:.95}.journal-feature__copy span{display:block;line-height:1.7;margin-bottom:28px}.journal-feature__copy>p,.journal-list p{font-family:"Archivo Narrow";font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}
.journal-list{display:grid;grid-template-columns:1fr 1fr;gap:70px 28px;background:var(--white)}.journal-list article:nth-child(even){margin-top:110px}.journal-list img{aspect-ratio:1.05;object-fit:cover}.journal-list h3{margin:8px 0 0;font-family:"Cormorant Garamond";font-size:2.8rem;font-weight:400;line-height:1}
.contact-page{min-height:100svh;padding:170px 5vw 100px;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;background:var(--cream)}.contact-page__intro>p:last-child{max-width:420px;line-height:1.7}.booking-form{display:grid;gap:25px;padding:40px;background:var(--white)}.booking-form label{display:grid;gap:9px}.booking-form label span{font-family:"Archivo Narrow";font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}.booking-form input,.booking-form select,.booking-form textarea{width:100%;padding:14px 0;border:0;border-bottom:1px solid var(--line);outline:0;background:transparent;color:var(--ink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.submit-booking{padding:16px;border:0;border-radius:999px;background:var(--coral);color:white}.form-status{min-height:20px;margin:0;font-size:.78rem}
.contact-details{display:grid;grid-template-columns:repeat(4,1fr);background:var(--navy);color:var(--cream)}.contact-details>div{min-height:230px;padding:34px;border-right:1px solid rgba(244,237,225,.16);display:grid;align-content:end}.contact-details p{font-family:"Archivo Narrow";font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(244,237,225,.55)}.contact-details span{line-height:1.6}
.footer{padding:80px 5vw 28px;background:#0f1d2c;color:var(--cream)}.footer-top{display:flex;justify-content:space-between;align-items:end}.footer-brand{display:grid;line-height:.8}.footer-brand span{font-family:"Archivo Narrow";font-size:.65rem;letter-spacing:.22em}.footer-brand strong{font-family:"Cormorant Garamond";font-size:clamp(4rem,9vw,9rem);font-weight:400}.footer-top p{max-width:320px;line-height:1.6;color:rgba(244,237,225,.6)}.footer-links{display:flex;gap:28px;margin:55px 0 70px;font-family:"Archivo Narrow";text-transform:uppercase;font-size:.72rem;letter-spacing:.1em}.footer-meta{padding-top:20px;border-top:1px solid rgba(244,237,225,.14);display:flex;justify-content:space-between;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(244,237,225,.45)}
@media(max-width:980px){.desktop-nav,.booking-link{display:none}.site-header{grid-template-columns:1fr auto}.menu-toggle{display:grid;place-content:center;gap:6px;width:44px;height:44px;border:0;background:transparent;color:inherit}.menu-toggle span{width:22px;height:1px;background:currentColor}.mobile-menu{position:fixed;inset:0;z-index:900;display:grid;align-content:center;padding:110px 7vw;background:var(--navy);color:var(--cream);transform:translateY(-100%);transition:.5s}.menu-open .mobile-menu{transform:translateY(0)}.mobile-menu a{font-family:"Cormorant Garamond";font-size:clamp(3.5rem,12vw,7rem);line-height:1}
.home-hero__image{left:38%}.home-hero__copy{width:80vw}.intro-split,.home-table,.restaurant-hero,.detail-intro,.chef-note,.breakfast,.journal-feature,.contact-page{grid-template-columns:1fr}.home-table__image img,.restaurant-hero img{height:70vh}.suite-row{grid-template-columns:45px 220px 1fr}.suite-row__price{display:none}.materials{}}
@media(max-width:700px){.section-pad{padding:90px 20px}.site-header{top:10px;left:10px;right:10px;padding:0 14px}.home-hero__image{inset:0}.home-hero__image:after{background:linear-gradient(0deg,rgba(21,39,61,.88),rgba(21,39,61,.12))}.home-hero__copy{width:100%;padding:170px 20px 60px;display:grid;align-content:end;min-height:100svh}.home-hero h1,.page-hero h1,.restaurant-hero h1,.journal-hero h1,.contact-page h1{font-size:clamp(4.8rem,22vw,8rem)}.vertical-note{display:none}.circle-link{width:125px;height:125px}.intro-split{padding:90px 20px}.intro-split__right{grid-template-columns:1fr}.section-head{grid-template-columns:1fr;gap:15px}.suite-showcase{grid-template-columns:1fr}.suite-card--offset{margin-top:30px}.home-table{grid-template-columns:1fr}.home-table__copy{padding:80px 20px}.experience-grid{grid-template-columns:1fr}.final-cta>div{padding:35px 20px;display:grid;align-content:end;gap:25px}
.page-hero{padding:150px 20px 70px;grid-template-columns:1fr}.suite-row{grid-template-columns:35px 1fr;gap:15px}.suite-row__image{grid-column:2}.suite-row__copy{grid-column:2}.suite-row__copy h2{font-size:2.8rem}.inclusions{grid-template-columns:1fr 1fr}.inclusions>div{min-height:220px}.detail-gallery{grid-template-columns:1fr}.detail-gallery img{height:520px}.detail-gallery img:last-child{margin-top:0}.amenities-grid{grid-template-columns:1fr 1fr}.restaurant-hero__copy{padding:160px 20px 70px}.menu-preview{grid-template-columns:1fr}.menu-preview__image img{height:65vh}.menu-preview__list{padding:70px 20px}.breakfast{grid-template-columns:1fr}.reservation-strip{padding:25px 20px;display:grid;gap:15px}.journal-hero{padding:160px 20px 70px}.journal-feature{grid-template-columns:1fr}.journal-list{grid-template-columns:1fr}.journal-list article:nth-child(even){margin-top:0}.contact-page{padding:150px 20px 80px}.booking-form{padding:24px}.form-row{grid-template-columns:1fr}.contact-details{grid-template-columns:1fr 1fr}.contact-details>div{min-height:180px}.footer{padding:60px 20px 25px}.footer-top{display:grid}.footer-links{flex-wrap:wrap}.footer-meta{gap:20px}}
@media(pointer:coarse){.cursor{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
