@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@400;700;900&family=Cormorant+Garamond:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root{--bg:#07090b;--panel:#101013;--panel2:#151417;--blood:#9e1d26;--blood-bright:#d13842;--bone:#eee5d7;--muted:#ada29a;--line:rgba(187,159,147,.22);--serif:'Cormorant Garamond',Georgia,serif;--display:'Cinzel Decorative',Georgia,serif;--sans:'Inter',system-ui,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--bone);font-family:var(--sans)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #e85b5d;outline-offset:4px}
body::after{content:'';position:fixed;inset:0;background-image:url('../img/grain-transparent.png');opacity:.28;mix-blend-mode:screen;pointer-events:none;z-index:50}
.site-header{position:absolute;top:0;left:0;right:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px clamp(20px,5vw,85px);background:linear-gradient(#060709eb,#06070990,transparent);border-bottom:1px solid #8f79743f}
.brand{display:inline-flex;align-items:center}.brand img{width:clamp(205px,23vw,305px);height:auto}.top-nav{display:flex;align-items:center;gap:clamp(12px,2vw,36px)}.top-nav a{font-family:var(--serif);font-size:20px;font-weight:600;transition:color .3s}.top-nav a:hover,.top-nav a.active{color:#e74751}
.hero{position:relative;isolation:isolate;min-height:810px;overflow:hidden;background:#06080a url('../img/hero-maison-desktop.webp') center center/cover no-repeat;display:flex;align-items:center}
.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#040607 0%,#040607a6 26%,transparent 75%),linear-gradient(0deg,#07090b 0%,transparent 33%,#0007 100%);z-index:-1}
.fog{position:absolute;bottom:-4%;left:-8%;width:90%;height:45%;background:url('../img/brume-transparente.png') center/100% 100% no-repeat;opacity:.48;filter:blur(13px);animation:fog-drift 24s ease-in-out infinite alternate;pointer-events:none;z-index:0}.fog.two{left:30%;bottom:7%;width:86%;animation-duration:31s;animation-direction:alternate-reverse;opacity:.26}
.hero-inner{position:relative;z-index:2;width:min(890px,95%);padding:130px 30px 95px clamp(22px,5.8vw,110px)}.eyebrow{font-family:var(--serif);text-transform:uppercase;letter-spacing:.34em;color:#b39b91;font-size:15px}.hero h1{font-family:var(--display);line-height:1.09;font-size:clamp(33px,4.6vw,82px);margin:18px 0 14px;text-shadow:0 8px 17px #000}.hero h1 .red{display:block;color:#b72330;text-shadow:0 0 28px #a2162352;animation:eerie-flicker 17s linear infinite}.tagline{font-family:var(--serif);font-size:clamp(21px,2vw,36px);letter-spacing:.12em;margin:10px 0 22px;color:#f0e6db}.story{font-family:var(--serif);font-size:clamp(19px,1.5vw,25px);line-height:1.5;color:#d7cbc4;max-width:645px}.warning{display:block;width:clamp(245px,29vw,380px);margin:26px 0 34px}.actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:54px;padding:15px 24px;font-family:var(--serif);font-size:20px;font-weight:700;letter-spacing:.035em;text-transform:uppercase;border:1px solid #8c77704d;background:#10101488;color:#f6eee4;transition:transform .2s,box-shadow .25s,background .2s;cursor:pointer}.btn:hover{transform:translateY(-2px);box-shadow:0 0 35px #b8212d5c}.btn.primary{border-color:#e03a41;background:linear-gradient(145deg,#8f111a,#52080e);box-shadow:inset 0 0 22px #d01a212b,0 2px 28px #8e13171a}.btn.secondary{border-color:#85808088;background:#06080a90}
.section{position:relative;padding:76px clamp(20px,6vw,100px);border-top:1px solid #6b4c4960}.section h2{font-family:var(--display);font-size:clamp(30px,3.2vw,50px);text-align:center;margin:0 0 18px}.section .lead{text-align:center;color:var(--muted);font-family:var(--serif);font-size:25px;margin:0 auto 40px;max-width:860px}.section .red{color:#d13a43}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.feature{padding:28px;min-height:210px;border:1px solid var(--line);background:linear-gradient(#101012b8,#090b0ecf),url('../img/carte-photos-1996.webp') center/cover;box-shadow:0 14px 40px #0007}.feature:nth-child(2){background-image:linear-gradient(#1010128a,#090b0ee0),url('../img/carte-maison-foret.webp')}.feature:nth-child(3){background-image:linear-gradient(#1010128a,#090b0ee0),url('../img/carte-parchemin.webp')}.feature:nth-child(4){background-image:linear-gradient(#1010128a,#090b0ee0),url('../img/carte-porte.webp')}.feature .num{color:#db4b50;font-size:21px}.feature h3{font-family:var(--serif);font-size:29px;letter-spacing:.07em;margin:27px 0 8px}.feature p{font-family:var(--serif);font-size:20px;color:#cbc0b6;margin:0}
.story-section{background:linear-gradient(180deg,#050607d9,#07080bea),url('../img/fond-histoire-couloir.webp') center/cover;min-height:360px}.story-section p{font:24px/1.6 var(--serif);max-width:850px;margin:0 auto;text-align:center}.booking-section{background:linear-gradient(180deg,#07090bec,#09090aeb),url('../img/fond-reservation-chambre.webp') center/cover}.booking-ui{max-width:960px;margin:35px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-card{border:1px solid var(--line);background:#0e1013e8;padding:25px;box-shadow:0 10px 50px #0006}.booking-card h3{font:700 27px var(--serif);margin:0 0 20px}.booking-card label{display:block;font-size:13px;color:#e2d4c9;margin:14px 0 7px}.booking-card input{background:#18191c;color:#f2eade;border:1px solid #61545a;border-radius:2px;width:100%;padding:12px;min-height:44px}.slots{display:flex;gap:10px;flex-wrap:wrap}.slot{background:#111318;color:#ddd;border:1px solid #4b4b50;padding:12px 18px;cursor:pointer}.slot.selected{border-color:#d23f48;background:#5f0b14}.slot:disabled{opacity:.35;cursor:not-allowed}.demo-note{margin:12px auto 0;color:#baaaa6;max-width:960px;font-size:13px}.footer{padding:42px 20px;text-align:center;border-top:1px solid var(--line);font:19px var(--serif);color:#aa9d9b}
@keyframes fog-drift{0%{transform:translateX(-8%) scale(1);opacity:.31}100%{transform:translateX(12%) scale(1.16);opacity:.53}}@keyframes eerie-flicker{0%,97%,99%,100%{opacity:1}97.2%,98.5%{opacity:.74}}@keyframes subtle-glitch{0%,98%,100%{text-shadow:0 0 26px #9e171e55;transform:translateX(0)}98.2%{text-shadow:2px 0 #a11,-2px 0 #0aa;transform:translateX(1px)}}
@media(max-width:860px){.site-header{position:relative;background:#07090b;flex-direction:column;padding:14px 16px}.top-nav{flex-wrap:wrap;justify-content:center;gap:13px}.top-nav a{font-size:17px}.hero{min-height:820px;background-image:url('../img/hero-maison-mobile.webp');background-position:center 5%;align-items:flex-end}.hero::before{background:linear-gradient(0deg,#07090b 0%,#07090bed 40%,transparent 95%)}.hero-inner{padding:320px 22px 56px;max-width:100%}.features{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-ui{grid-template-columns:1fr}.eyebrow{font-size:12px}.hero h1{font-size:clamp(30px,8vw,53px)}}
@media(max-width:550px){.features{grid-template-columns:1fr}.hero{min-height:880px}.hero-inner{padding-top:355px}.actions .btn{width:100%}.tagline{letter-spacing:.04em}.section{padding:55px 20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
