:root{--village-dark:#713506;--village-accent:#9d623d;--village-bg:#fcf9f3;color-scheme:light}html{scroll-behavior:smooth;scroll-padding-top:130px}body{margin:0;background:#fcf9f3;color:#713506;font-family:Lato,sans-serif}*{box-sizing:border-box}img,video{max-width:100%}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid #9d623d;outline-offset:5px}button[hidden],[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;z-index:1000;background:#fff;padding:15px}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:100;background:rgba(252,249,243,.97);border-bottom:1px solid rgba(113,53,6,.07)}.header-inner{width:100%;max-width:1800px;margin:auto;min-height:145px;padding:10px 4%;display:grid;grid-template-columns:1fr 150px 1fr;align-items:center;gap:25px}.brand{display:block;width:150px}.brand img{width:150px;height:125px;object-fit:contain}#site-nav{display:flex;align-items:center;gap:clamp(16px,2vw,40px)}#site-nav>a{font-family:Poppins,sans-serif;font-size:12px;white-space:nowrap;line-height:1.6}#site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:20px}.social,.phone{font-weight:700;font-size:26px;line-height:1}.book-button{display:inline-flex;align-items:center;justify-content:center;background:#713506;color:#fff!important;border:1px solid #713506;border-radius:2px;padding:17px 28px;text-transform:uppercase;letter-spacing:.08em;font-family:Poppins,sans-serif;font-size:12px;text-decoration:none!important;transition:background .2s}.book-button:hover{background:#9d623d}.menu-toggle,.mobile-extra{display:none}.lv-block{width:100%;max-width:none;position:relative;isolation:isolate}.lv-block>section,.lv-block>div{max-width:100%}.h1-location{display:block;font-family:Lato,sans-serif;font-size:clamp(12px,1.3vw,18px);line-height:1.7;letter-spacing:.15em;text-transform:uppercase;margin-top:18px}.footer-extra{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;padding:20px 20px 35px;font-size:12px;color:#9d623d}.footer-extra a:hover,.footer-extra button:hover{text-decoration:underline}.native-section{max-width:1300px;margin:auto;padding:75px 30px 100px}.native-section h1,.native-page-title{font-family:'Great Vibes',cursive;font-size:clamp(52px,6vw,95px);line-height:1.15;text-align:center;margin:15px 0 50px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.25em;text-align:center;color:#9d623d}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 30px}.article-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.article-grid h2{font:500 25px/1.35 'Playfair Display',serif;margin:20px 0 15px}.article-grid p{font-size:15px;line-height:1.7;margin-bottom:15px}.article-grid article>a:last-child{font-size:13px;border-bottom:1px solid #9d623d}.reservation-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.reservation-grid article{padding:45px;background:#fff;border:1px solid #e8dcd0;text-align:center}.reservation-grid h2{font:400 32px 'Playfair Display',serif;margin-bottom:20px}.reservation-grid p{line-height:1.8;margin:20px 0}.instagram-wall{padding:70px 4%;text-align:center}.instagram-wall h2{font:400 clamp(38px,4vw,60px)/1.3 'Great Vibes',cursive;margin:12px 0}.instagram-wall>p{margin-bottom:24px}.instagram-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:35px auto;max-width:1700px}.instagram-grid img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .3s}.instagram-grid a{overflow:hidden}.instagram-grid a:hover img{transform:scale(1.04)}.embed-notice{min-height:220px;background:#f5f0ea;display:flex;gap:18px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;font:15px/1.6 Lato,sans-serif;color:#713506}.embed-notice>a{text-decoration:underline;font-size:12px}.privacy-panel{position:fixed;bottom:20px;left:20px;right:20px;max-width:470px;background:#fff;padding:25px;z-index:300;box-shadow:0 5px 40px #0002;font-size:14px}.privacy-panel p{margin-bottom:18px}.privacy-panel button{padding:10px;border:1px solid #713506;margin:4px}.lv-block [id]{scroll-margin-top:145px}.lv-block iframe{width:100%}.lv-block .google-map-iframe{min-height:420px}@media(min-width:1800px){.lv-block .max-w-7xl{max-width:1600px}}@media(max-width:1100px){.header-inner{grid-template-columns:50px 1fr auto;min-height:95px;padding:8px 5%;gap:15px}.brand{width:110px;margin:auto}.brand img{width:110px;height:85px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:42px;height:42px}.menu-toggle span{height:2px;width:26px;background:#713506}.header-actions{gap:14px}.header-actions .social{display:none}#site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fcf9f3;border-top:1px solid #e8dcd0;padding:30px;max-height:calc(100dvh - 100px);overflow:auto;flex-direction:column;gap:24px}#site-nav.open{display:flex}#site-nav>a{font-size:16px}.mobile-extra{display:flex;flex-direction:column;text-align:center;gap:22px;font-size:15px}.article-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){html{scroll-padding-top:105px}.header-inner{grid-template-columns:35px 1fr auto;gap:8px;padding:5px 15px}.brand{width:100px}.brand img{width:100px;height:85px}.header-actions .phone{display:none}.header-actions .book-button{padding:12px 14px;font-size:10px}.native-section{padding:45px 20px 65px}.article-grid,.reservation-grid{grid-template-columns:1fr}.reservation-grid article{padding:30px 20px}.instagram-grid{grid-template-columns:repeat(2,1fr);gap:8px}.instagram-wall{padding:45px 20px}.lv-block [id]{scroll-margin-top:110px}.native-section h1{margin-bottom:35px}.footer-extra{gap:16px;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.lv-block{isolation:auto}.booking-dialog{border:0;border-radius:5px;background:#fcf9f3;color:#713506;width:min(800px,96vw);max-height:94dvh;padding:0;box-shadow:0 20px 100px #0005}.booking-dialog::backdrop{background:#271406aa}.booking-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 25px;border-bottom:1px solid #e8dcd0}.booking-dialog-top h2{font:400 24px 'Playfair Display',serif}.booking-dialog-top button{font-size:32px;line-height:1;width:40px;height:40px}.booking-dialog iframe{width:100%;height:65dvh;min-height:340px;border:0;background:#fff}.booking-help{padding:15px 25px;font:13px/1.6 Lato,sans-serif}.booking-help a,.booking-external{text-decoration:underline}.booking-external{display:block;text-align:center;font-size:12px;padding:15px}
/* Keep the hotel title readable throughout the changing hero video. */
section[aria-label="Hôtel Le Grimaldi au Haut-de-Cagnes"] h1,section[aria-label="Hôtel Le Grimaldi au Haut-de-Cagnes"] .relative.z-10 p{color:#fff;text-shadow:0 2px 20px rgba(35,20,10,.5)}
