*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17352d;line-height:1.6;background:#fff}a{color:inherit;text-decoration:none}.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;background:rgba(255,255,255,.97);z-index:20;box-shadow:0 2px 15px rgba(0,0,0,.06)}.logo{font-family:Georgia,serif;font-size:24px;font-weight:700;line-height:1}.logo span{font-weight:400}.logo small{display:block;font:9px system-ui;letter-spacing:2px;margin-top:6px;color:#6b806f}nav{display:flex;gap:25px;align-items:center;font-size:14px}nav a:hover{color:#9a6b32}.nav-cta,.btn{padding:12px 20px;border-radius:4px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;font-size:12px}.nav-cta,.primary{background:#17352d;color:#fff}.menu-toggle{display:none;border:0;background:none;font-size:25px}.hero{min-height:680px;display:flex;align-items:center;position:relative;background:linear-gradient(135deg,#486d61,#88a99a);color:#fff}.hero:before{content:"PLACEHOLDER — RIVERFRONT HERO PHOTO";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:14px;letter-spacing:2px;opacity:.3}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,35,29,.75),rgba(10,35,29,.15))}.hero-content{position:relative;max-width:900px;padding:90px 7%;z-index:1}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:800;color:#a4753a;margin:0 0 12px}.hero .eyebrow{color:#e9d3a8}.hero h1{font:clamp(42px,6vw,76px)/1.05 Georgia,serif;max-width:850px;margin:0 0 25px}.hero p{font-size:19px;max-width:680px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.btn{display:inline-block;border:1px solid transparent}.light{background:#fff;color:#17352d}.outline-light{border-color:#fff;color:#fff}.hero-facts{margin-top:28px;font-size:12px;letter-spacing:1px;text-transform:uppercase}.section{padding:90px 7%;max-width:1400px;margin:auto}.alt{background:#f3f0e8;max-width:none}.section-heading{text-align:center;max-width:800px;margin:0 auto 48px}.section h2{font:clamp(34px,4vw,52px)/1.1 Georgia,serif;margin:0 0 16px}.section-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.reverse{grid-template-columns:1fr 1fr}.photo,.placeholder-photo{min-height:430px;background:linear-gradient(145deg,#6c9181,#d6c39e);display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;font-weight:800;letter-spacing:2px}.placeholder-photo span{font-size:12px;letter-spacing:1px}.cards{display:grid;gap:20px}.six{grid-template-columns:repeat(3,1fr);max-width:1200px;margin:auto}.cards article{background:#fff;padding:28px;border-radius:5px;box-shadow:0 8px 30px rgba(23,53,45,.07)}.icon{font-size:30px}.cards h3{font:24px Georgia,serif;margin:10px 0}.rooms{grid-template-columns:repeat(3,1fr);max-width:1200px;margin:auto}.room{padding:0!important;overflow:hidden}.room-photo,.experience-photo{min-height:220px;background:linear-gradient(145deg,#789b8b,#cdb78f);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;letter-spacing:1.5px}.room-body{padding:24px}.room-body strong{display:block;margin:18px 0;color:#9a6b32}.room-body a,.experience-grid a,.text-link{color:#9a6b32;font-weight:800}.features{font-size:13px;color:#64736d}.notice{font-size:12px;color:#6c7771;display:block;text-align:center;margin-top:25px}.dark{background:#17352d;color:#fff;max-width:none}.dark .eyebrow{color:#d9b67a}.experience-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;max-width:1200px;margin:auto}.experience-grid article{background:#24483e;overflow:hidden}.experience-grid article>div:last-child{padding:28px}.experience-grid h3{font:30px Georgia,serif;margin:0 0 10px}.food-list{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.food-list span{background:#f3f0e8;padding:7px 12px;font-size:12px}.dark-btn{background:#17352d;color:#fff}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:210px;gap:12px;max-width:1200px;margin:auto}.gallery div{background:linear-gradient(145deg,#75998a,#cdb68c);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:12px;letter-spacing:1px}.gallery div:first-child{grid-row:span 2}.gallery div:nth-child(4){grid-column:span 2}.map-placeholder{min-height:430px;background:#e9e5d9;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;letter-spacing:2px}.map-placeholder small{display:block;letter-spacing:0;font-weight:400}.narrow{max-width:850px;margin:auto}.quote{font:italic 30px Georgia,serif;color:#dfc18f;margin-top:35px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:auto}.review-grid blockquote{margin:0;background:#f3f0e8;padding:30px;font:italic 19px Georgia,serif}.review-grid cite{display:block;font:12px system-ui;margin-top:20px;color:#6d7a73}.center{text-align:center}.booking{background:#faf9f5;max-width:none}.booking form{max-width:900px;margin:auto;background:#fff;padding:40px;box-shadow:0 10px 35px rgba(0,0,0,.06)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{font-size:13px;font-weight:700;display:block}input,select,textarea{width:100%;margin-top:7px;padding:13px;border:1px solid #d5d9d4;border-radius:3px;font:inherit;background:#fff}fieldset{border:1px solid #d5d9d4;margin:25px 0;padding:20px;display:flex;gap:18px;flex-wrap:wrap}.check{font-weight:500}.check input{width:auto}.form-message{font-weight:700;color:#9a6b32}.contact-cta{background:#9a6b32;color:#fff;padding:70px 7%;display:flex;justify-content:space-between;align-items:center;gap:40px}.contact-cta .eyebrow{color:#f1dfbe}.contact-cta h2{font:46px Georgia,serif;margin:0}.contact-cta p{max-width:650px}footer{background:#102a24;color:#d9e1dc;padding:55px 7%;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;position:relative}footer .logo{color:#fff}footer a:hover{color:#e4c690}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:12px;color:#91a39a}@media(max-width:900px){nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;align-items:stretch;box-shadow:0 10px 20px rgba(0,0,0,.1)}nav.open{display:flex}.menu-toggle{display:block}.section-grid,.reverse{grid-template-columns:1fr}.six,.rooms{grid-template-columns:1fr 1fr}.experience-grid,.review-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery div:first-child{grid-row:auto}.gallery div:nth-child(4){grid-column:auto}.contact-cta{flex-direction:column;align-items:flex-start}}@media(max-width:600px){.site-header{padding:0 5%;height:70px}.logo{font-size:20px}.hero{min-height:650px}.hero-content{padding:80px 6%}.hero h1{font-size:43px}.hero p{font-size:17px}.section{padding:65px 6%}.six,.rooms,.form-grid{grid-template-columns:1fr}.photo,.placeholder-photo,.map-placeholder{min-height:300px}.gallery{grid-template-columns:1fr;grid-auto-rows:190px}.contact-cta{padding:55px 6%}.contact-cta h2{font-size:38px}footer{grid-template-columns:1fr;padding:45px 6%}.copyright{grid-column:auto}.booking form{padding:25px}.hero-facts{line-height:2}.buttons .btn{width:100%;text-align:center}}
/* Photo repository */
.photo img,.room-photo img,.experience-photo img,.gallery img{width:100%;height:100%;object-fit:cover;display:block}.photo,.room-photo,.experience-photo,.gallery>div{overflow:hidden}.hero{background-size:cover;background-position:center}.hero:before{display:none}
