:root{--ink:#20332b;--ink-soft:#52635b;--cream:#f5f2eb;--paper:#fbfaf6;--line:#dcd8ce;--gold:#c8a878;--rust:#a7654c;--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--shadow:0 18px 50px rgba(24,39,32,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:84px;padding:0 6.2%;display:flex;align-items:center;justify-content:space-between;background:rgba(251,250,246,.96);position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(32,51,43,.08);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:12px;letter-spacing:.1em}.brand-mark{width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:italic 27px var(--serif);letter-spacing:0;color:var(--rust)}.brand b{display:block;font-size:11px;letter-spacing:.16em;font-weight:700;line-height:1.5}.brand small{display:block;font-size:8px;letter-spacing:.18em;color:#879087;line-height:1.5}.main-nav{display:flex;align-items:center;gap:32px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.main-nav>a:not(.nav-book){color:#59675f;transition:color .2s}.main-nav>a:hover{color:var(--rust)}.nav-book{padding:12px 17px;background:var(--ink);color:white}.nav-book span{margin-left:14px;color:var(--gold)}.mobile-menu{display:none;border:0;background:none;color:var(--ink);font-size:22px}
.hero{min-height:690px;height:min(810px,84vh);position:relative;display:flex;align-items:center;overflow:hidden;color:white;background:#26382f}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background-image:url('../images/outside-main.jpeg');background-position:center 56%;background-size:cover;transform:scale(1.015);animation:heroIn 1.2s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(18,31,25,.68) 0%,rgba(18,31,25,.34) 43%,rgba(18,31,25,.04) 100%),linear-gradient(0deg,rgba(18,31,25,.25),transparent 35%)}.hero-content{position:relative;z-index:1;margin-left:12.2%;max-width:620px;padding:70px 20px 75px 0;animation:rise .9s .1s both}.eyebrow{font-size:9px;font-weight:700;letter-spacing:.23em;text-transform:uppercase;color:var(--rust);margin:0 0 19px}.eyebrow.light{color:#e7c99e}.hero h1{font:400 clamp(54px,7vw,92px)/1.04 var(--serif);letter-spacing:-.04em;margin:0 0 23px}.hero h1 em,.intro h2 em,.feature-copy h2 em,.section-heading h2 em,.location-copy h2 em,.final-cta h2 em{font-weight:400;color:#d8ba8e}.hero-copy{font-size:14px;color:rgba(255,255,255,.84);max-width:410px;line-height:1.9;margin:0 0 34px}.button{border:0;display:inline-flex;justify-content:center;align-items:center;gap:24px;padding:15px 22px;cursor:pointer;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-light{background:#f6f1e7;color:var(--ink)}.button-light span{color:var(--rust)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#344b3f}.hero-note{position:absolute;left:6.2%;bottom:44px;z-index:1;display:flex;align-items:center;gap:14px;font-size:8px;letter-spacing:.2em;color:rgba(255,255,255,.72)}.note-line{height:1px;width:42px;background:var(--gold)}.hero-count{position:absolute;right:6.2%;bottom:42px;display:flex;align-items:baseline;gap:9px;color:rgba(255,255,255,.74);font-size:8px;letter-spacing:.15em}.hero-count strong{font:30px var(--serif);color:white;font-weight:400}.hero-count i{height:25px;width:1px;background:rgba(255,255,255,.35);margin:0 10px}
.booking-strip{background:#eee9df;padding:54px 8.5%;display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.7fr);gap:55px;align-items:center}.booking-intro h2{font:400 32px var(--serif);margin:0 0 7px}.booking-intro p:not(.eyebrow){font-size:11px;color:var(--ink-soft);max-width:280px;margin:0}.booking-intro .eyebrow{margin-bottom:9px}.booking-fields{display:grid;grid-template-columns:1fr 1fr .75fr auto;gap:12px;align-items:end}.booking-fields label,.guest-fields-grid label,.form-stack label,.settings-form label{display:block;font-size:9px;font-weight:700;letter-spacing:.13em;color:#68776d}.booking-fields label span{display:block;margin-bottom:8px}.booking-fields input,.booking-fields select,.guest-fields input,.guest-fields textarea,.form-stack input,.settings-form input,.settings-form textarea{width:100%;border:1px solid #d9d4c9;background:#fbfaf6;padding:12px 11px;color:var(--ink);font-size:12px;outline:none;border-radius:0}.booking-fields input:focus,.booking-fields select:focus,.guest-fields input:focus,.guest-fields textarea:focus,.form-stack input:focus,.settings-form input:focus{border-color:var(--rust)}.booking-fields .button{white-space:nowrap;height:43px;padding:0 17px}.quote-result{margin-top:14px;min-height:23px;font-size:11px;color:#68776d}.quote-result strong{color:var(--ink);font-size:14px}.quote-result .quote-alert{color:#a14f3c}.guest-fields{border-top:1px solid #d7d1c5;padding-top:20px;margin-top:15px}.guest-fields-heading{display:flex;flex-direction:column;margin-bottom:15px}.guest-fields-heading b{font:21px var(--serif)}.guest-fields-heading span{font-size:10px;color:#778279}.guest-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.guest-fields-grid label small{font-weight:400;letter-spacing:0}.guest-fields-grid input,.guest-fields-grid textarea{margin-top:7px}.guest-fields .button{min-width:220px}
.section-pad{padding:115px 10%}.intro{display:grid;grid-template-columns:1.04fr .9fr;gap:11%;align-items:center}.intro-image-wrap{position:relative;padding:0 0 24px 24px}.intro-image-wrap:before{content:'';position:absolute;left:0;bottom:0;width:62%;height:66%;border:1px solid var(--gold);z-index:0}.intro-image-wrap img{position:relative;z-index:1;width:100%;height:475px;object-fit:cover}.image-caption{position:absolute;z-index:2;bottom:0;right:0;background:var(--ink);color:#e2c69d;font-size:8px;letter-spacing:.18em;padding:13px 18px}.intro-copy h2,.section-heading h2,.location-copy h2{font:400 clamp(37px,4.1vw,55px)/1.16 var(--serif);letter-spacing:-.025em;margin:0 0 25px}.intro-copy h2 em,.section-heading h2 em,.location-copy h2 em{color:var(--rust)}.intro-copy p:not(.eyebrow),.location-copy p:not(.eyebrow){font-size:12px;line-height:2;color:#69746c;margin:0 0 16px}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #b8aa94;padding:10px 0;margin-top:19px}.text-link span{color:var(--rust)}
.feature-band{background:var(--ink);display:grid;grid-template-columns:1fr 1fr;min-height:520px;color:white}.feature-photo{min-height:520px}.feature-photo img{width:100%;height:100%;object-fit:cover}.feature-copy{padding:85px 12% 70px 13%;align-self:center}.feature-copy h2{font:400 clamp(40px,4.5vw,58px)/1.12 var(--serif);margin:0 0 21px}.feature-copy p:not(.eyebrow){font-size:12px;color:#c2ccc4;line-height:2;max-width:400px}.feature-stats{display:flex;gap:37px;border-top:1px solid rgba(255,255,255,.2);margin-top:35px;padding-top:26px}.feature-stats div{display:flex;flex-direction:column}.feature-stats b{font:29px var(--serif);color:#e0bf91;font-weight:400}.feature-stats span{font-size:8px;letter-spacing:.15em;color:#aebcb2}
.rooms-section{background:#f0ede6}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:48px}.section-heading h2{margin-bottom:0}.section-heading>p,.gallery-heading>p{max-width:300px;font-size:11px;color:#69746c;line-height:2;margin:0 0 8px}.room-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;grid-template-rows:265px 265px;gap:14px}.room-card{position:relative;overflow:hidden;min-height:230px;background:#cfc8b9}.room-card.room-tall{grid-row:span 2}.room-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.room-card:hover img,.experience-card:hover img{transform:scale(1.045)}.room-card:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(0deg,rgba(12,22,17,.75),transparent)}.room-overlay{position:absolute;bottom:21px;left:24px;z-index:1;color:white}.room-overlay span{font-size:8px;letter-spacing:.18em;color:#e6c69b}.room-overlay h3{font:32px var(--serif);margin:3px 0}.room-overlay p{font-size:10px;color:rgba(255,255,255,.8);margin:0}
.experiences{background:var(--paper)}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.experience-card{background:#f1eee7}.experience-card img{width:100%;height:235px;object-fit:cover;transition:transform .7s}.experience-card{overflow:hidden}.experience-card>div{padding:23px 24px 27px;position:relative}.experience-card span{font-size:9px;letter-spacing:.15em;color:var(--rust)}.experience-card h3{font:24px var(--serif);margin:8px 0 5px}.experience-card p{font-size:10px;color:#6d786f;margin:0;line-height:1.8}
.gallery-section{background:#e9e5dc;padding:88px 0 100px}.gallery-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:37px}.gallery-heading h2{font:400 clamp(36px,4vw,51px) var(--serif);margin:0}.gallery-heading h2 em{color:var(--rust)}.gallery-heading .eyebrow{margin-bottom:9px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:8px;padding:0 3.2%}.gallery-item{border:0;padding:0;background:#d4d0c5;overflow:hidden;cursor:zoom-in}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.05)}.gallery-item.gallery-wide{grid-column:span 2;grid-row:span 2}.gallery-item:nth-child(4){grid-row:span 2}.location-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;align-items:center}.location-card{background:#e4e9df;box-shadow:var(--shadow)}.location-map-art{height:340px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 26% 23%,rgba(255,255,255,.9),transparent 38%),radial-gradient(ellipse at 77% 80%,rgba(182,199,177,.7),transparent 45%),#dfe6d9}.map-contour{position:absolute;border:1px solid rgba(89,126,96,.25);border-radius:48%;transform:rotate(-22deg)}.contour-one{width:90%;height:40%;top:18%;left:4%}.contour-two{width:75%;height:58%;top:27%;left:16%}.contour-three{width:65%;height:29%;top:55%;left:24%}.map-pin{position:absolute;z-index:2;top:40%;left:50%;width:42px;height:42px;display:grid;place-items:center;background:var(--ink);color:#e7c99e;border-radius:50% 50% 50% 0;transform:rotate(-45deg);font:italic 23px var(--serif);box-shadow:0 8px 24px rgba(0,0,0,.18)}.map-pin:first-letter{transform:rotate(45deg)}.map-label{position:absolute;top:58%;left:calc(50% + 35px);font-size:9px;letter-spacing:.17em;font-weight:700;color:var(--ink)}.map-label small{font-size:8px;font-weight:400;color:#748477}.location-card-bottom{padding:14px 20px;display:flex;justify-content:space-between;background:#f5f3ed;color:#718076;font-size:8px;letter-spacing:.16em}.final-cta{background:linear-gradient(90deg,rgba(24,42,33,.88),rgba(24,42,33,.58)),url('../images/outside-misty.jpeg') center 49%/cover;min-height:430px;display:flex;align-items:center;justify-content:center;text-align:center;color:white;padding:70px 20px}.final-cta h2{font:400 clamp(42px,5.5vw,68px)/1.14 var(--serif);margin:0 0 30px}.final-cta h2 em{color:#ddbd91}.site-footer{background:#1c2c25;color:white;padding:60px 8% 22px;display:grid;grid-template-columns:1.15fr 1fr 1fr 1.2fr;gap:30px;align-items:start}.brand-footer .brand-mark{color:#dfbf91}.brand-footer small{color:#9aa69c}.site-footer>p{font-size:11px;color:#aab6ad;margin:4px 0}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:10px;color:#b9c3bb}.footer-contact{font-size:10px;color:#dfbf91}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:18px;margin-top:24px;color:#849389;font-size:9px;letter-spacing:.05em}.lightbox{display:none;position:fixed;inset:0;background:rgba(9,16,12,.93);z-index:60;align-items:center;justify-content:center;padding:45px}.lightbox.open{display:flex}.lightbox img{max-height:90vh;max-width:92vw;object-fit:contain}.lightbox-close{position:absolute;top:19px;right:30px;border:0;background:none;color:white;font-size:38px;cursor:pointer}
/* Admin and installation */
.setup-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#e8e3d9,#f8f6ef);padding:25px}.setup-card{width:min(100%,560px);background:#fbfaf6;padding:48px;box-shadow:var(--shadow)}.setup-card h1{font:400 38px/1.15 var(--serif);margin:0 0 13px}.setup-card p{font-size:12px;color:#67756c;line-height:1.9}.setup-card .eyebrow{color:var(--rust)}.form-stack{display:grid;gap:15px;margin:25px 0}.form-stack label input{display:block;margin-top:7px}.form-stack .button{margin-top:5px}.fine-print{font-size:10px!important;color:#939c94!important;border-top:1px solid var(--line);padding-top:17px}.success-panel{background:#edf3eb;padding:23px}.success-panel h2{font:28px var(--serif);margin:0}.reference-code{background:#fff;padding:15px;letter-spacing:.08em}.reference-code strong{font-size:20px;color:var(--ink)}.alert{padding:12px 15px;font-size:11px;margin:14px 0}.alert-error{background:#f8e9e4;color:#923f2f}.alert-success{background:#e8f0e5;color:#3b6844}.admin-body{background:#f3f1eb;min-height:100vh;display:flex}.admin-sidebar{width:245px;background:var(--ink);min-height:100vh;padding:31px 23px;color:white;display:flex;flex-direction:column;flex-shrink:0}.admin-sidebar .brand{margin:2px 0 55px}.admin-sidebar .brand-mark{color:#dfbf91}.admin-sidebar .brand small{color:#9ba99e}.admin-sidebar nav{display:grid;gap:8px}.admin-sidebar nav a{font-size:11px;color:#c4cec6;padding:12px 13px;border-left:2px solid transparent;letter-spacing:.04em}.admin-sidebar nav a:hover{background:rgba(255,255,255,.07);border-left-color:var(--gold);color:white}.sidebar-foot{margin-top:auto;font-size:8px;letter-spacing:.17em;color:#829187}.admin-main{padding:38px 4.2%;width:calc(100% - 245px);max-width:1500px;margin:0 auto}.admin-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.admin-topbar .eyebrow{margin:0 0 6px}.admin-topbar h1{font:400 38px var(--serif);margin:0}.admin-view-site{font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--gold);padding:9px 0}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}.admin-stats article,.admin-panel{background:#fffefa;border:1px solid #e7e3da;padding:24px}.admin-stats article span{display:block;font-size:8px;letter-spacing:.15em;color:#758278;font-weight:700}.admin-stats article strong{display:block;font:39px var(--serif);margin:5px 0}.admin-stats article small{font-size:10px;color:#829087}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.panel-heading .eyebrow{margin-bottom:6px}.panel-heading h2{font:25px var(--serif);margin:0}.admin-panel{margin-bottom:20px}.admin-tip{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px;background:#e9eee7}.admin-tip b{font:20px var(--serif)}.admin-tip p{font-size:10px;color:#65746a;margin:4px 0 0;max-width:690px}.button-outline{border:1px solid #aeb8af;background:transparent;color:var(--ink)}.button-danger{border:1px solid #e3c9c1;background:#fff7f4;color:#9a4c3a}.button-small{padding:10px 12px;font-size:8px;gap:8px}.table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}.admin-table th{font-size:8px;letter-spacing:.13em;color:#89938a;padding:12px;border-bottom:1px solid #e5e1d8}.admin-table td{padding:15px 12px;border-bottom:1px solid #efede7;white-space:nowrap}.admin-table td small{display:block;color:#89938a;font-size:9px}.status{display:inline-block;border-radius:30px;padding:5px 9px;font-size:8px;letter-spacing:.05em;background:#eee;color:#47544d}.status-pending{background:#f6edda;color:#956f2e}.status-approved{background:#e4edf2;color:#456b7e}.status-confirmed{background:#e3efe3;color:#49724c}.status-rejected,.status-cancelled{background:#f5e7e4;color:#925146}.empty-state{padding:38px;text-align:center;background:#f8f7f2}.empty-state h3{font:23px var(--serif);margin:0}.empty-state p,.muted{font-size:11px;color:#7a867d}.filter-tabs{display:flex;gap:5px;flex-wrap:wrap}.filter-tabs a{font-size:9px;padding:7px 9px;background:#f0eee8;color:#657168}.filter-tabs a.active{background:var(--ink);color:white}.booking-list{display:grid;gap:14px}.booking-admin-card{border:1px solid #e7e3da;padding:21px}.booking-admin-top{display:flex;justify-content:space-between;align-items:flex-start}.booking-ref{font-size:8px;letter-spacing:.13em;color:var(--rust)}.booking-admin-top h3{font:23px var(--serif);margin:3px 0}.booking-admin-top p{font-size:10px;color:#7d887f;margin:0}.booking-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:18px 0;margin-top:17px;border-top:1px solid #eeeae1;border-bottom:1px solid #eeeae1}.booking-detail-grid span{display:block;font-size:8px;letter-spacing:.12em;color:#849087}.booking-detail-grid b{font-size:11px}.guest-message{font-size:10px;color:#68756d}.booking-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:15px}.booking-actions form{display:flex;gap:7px;flex-wrap:wrap}.booking-created{font-size:9px;color:#929b93;margin:12px 0 0}.admin-two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:20px}.admin-two-col .admin-panel{align-self:start}.form-stack select,.form-stack textarea{width:100%;padding:12px;border:1px solid var(--line);background:white}.simple-list>div{padding:12px 0;border-bottom:1px solid #eeebe3;display:grid;grid-template-columns:1fr auto;gap:2px}.simple-list b{font-size:11px}.simple-list span{font-size:10px;color:#69766d}.simple-list small{font-size:8px;color:#929a92;grid-column:1/-1}.settings-panel{max-width:900px}.settings-section{border-bottom:1px solid #e9e5dc;padding:5px 0 25px;margin-bottom:22px}.settings-section h3{font:22px var(--serif);margin:0}.settings-section .muted{max-width:690px;line-height:1.8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0}.settings-form label input,.settings-form label textarea{display:block;margin-top:7px;font-weight:400;letter-spacing:0}.settings-form>label{margin:14px 0}.settings-form .button{margin-top:10px}
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes heroIn{from{transform:scale(1.06);opacity:.7}to{transform:scale(1.015);opacity:1}}
@media(max-width:1050px){.main-nav{gap:16px;font-size:9px}.booking-strip{padding-left:5%;padding-right:5%;gap:25px}.booking-fields{grid-template-columns:1fr 1fr}.booking-fields .button{width:100%}.section-pad{padding:90px 7%}.room-grid{grid-template-rows:230px 230px}.feature-copy{padding:60px 9%}.site-footer{padding-left:6%;padding-right:6%}}
@media(max-width:720px){.site-header{height:70px;padding:0 5%}.mobile-menu{display:block}.main-nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:18px 6%;box-shadow:0 15px 25px rgba(0,0,0,.08);align-items:stretch;flex-direction:column;gap:0}.main-nav.open{display:flex}.main-nav a{padding:12px 0}.main-nav .nav-book{padding:12px 15px}.hero{height:680px;min-height:600px}.hero-content{margin-left:7%;padding-right:7%}.hero h1{font-size:60px}.hero-count{right:6%;bottom:30px}.hero-note{left:6%;bottom:36px}.booking-strip{grid-template-columns:1fr;padding:44px 6%;gap:22px}.booking-fields{grid-template-columns:1fr 1fr}.booking-fields label:nth-child(3){grid-column:1/2}.booking-fields .button{grid-column:2/3}.section-pad{padding:72px 6%}.intro{grid-template-columns:1fr;gap:45px}.intro-image-wrap img{height:360px}.intro-copy{max-width:600px}.feature-band{grid-template-columns:1fr}.feature-photo{min-height:320px;height:320px}.feature-copy{padding:55px 8% 60px}.section-heading,.gallery-heading{display:block}.section-heading>p,.gallery-heading>p{margin-top:22px}.room-grid{grid-template-columns:1fr 1fr;grid-template-rows:250px 220px 220px}.room-card.room-tall{grid-row:span 1;grid-column:span 2}.experience-grid{grid-template-columns:1fr;gap:14px}.experience-card img{height:260px}.gallery-section{padding:70px 0}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px;padding:0 4%;gap:6px}.gallery-item.gallery-wide{grid-column:span 2;grid-row:span 1}.gallery-item:nth-child(4){grid-row:span 1}.location-section{grid-template-columns:1fr;gap:36px}.location-map-art{height:270px}.final-cta{min-height:390px}.site-footer{grid-template-columns:1fr 1fr;gap:26px;padding:45px 6% 20px}.copyright{grid-column:1/-1}.footer-contact{align-self:center}.admin-body{display:block}.admin-sidebar{width:100%;min-height:0;padding:15px 5%;display:block}.admin-sidebar .brand{margin:0 0 12px}.admin-sidebar nav{display:flex;overflow:auto;gap:5px}.admin-sidebar nav a{white-space:nowrap;padding:8px;font-size:9px}.sidebar-foot{display:none}.admin-main{width:100%;padding:25px 4%}.admin-topbar h1{font-size:30px}.admin-stats{gap:8px}.admin-stats article{padding:13px}.admin-stats article strong{font-size:30px}.admin-stats article span{font-size:7px}.admin-stats article small{font-size:8px}.admin-tip,.booking-actions{display:block}.admin-tip .button{margin-top:15px}.booking-actions form{margin-top:10px}.booking-detail-grid{grid-template-columns:1fr 1fr}.panel-heading{display:block}.filter-tabs{margin-top:15px}.admin-two-col{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.setup-card{padding:30px 24px}.booking-fields .button{white-space:normal;padding:0 9px;font-size:8px}.guest-fields-grid{grid-template-columns:1fr}.guest-fields .button{width:100%}}
@media(max-width:420px){.hero h1{font-size:51px}.hero-copy{font-size:12px}.hero-count strong{font-size:25px}.booking-fields{grid-template-columns:1fr}.booking-fields label:nth-child(3),.booking-fields .button{grid-column:auto}.booking-fields .button{height:44px}.room-grid{grid-template-columns:1fr;grid-template-rows:repeat(4,245px)}.room-card.room-tall{grid-column:auto}.feature-stats{gap:20px}.feature-stats b{font-size:25px}.site-footer{grid-template-columns:1fr}.copyright{grid-column:auto}.footer-links{max-width:220px}.booking-admin-top{gap:10px}.booking-actions form button{flex:1}.booking-actions>a{display:inline-flex}}
.photo-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.photo-admin-card{display:grid;grid-template-columns:145px 1fr;gap:15px;border:1px solid #e8e4dc;padding:12px}.photo-admin-card>img{width:145px;height:125px;object-fit:cover}.photo-admin-card b{font:19px var(--serif)}.photo-admin-card p{font-size:9px;color:#7d897f;margin:3px 0 9px}.photo-upload-form{display:flex;flex-direction:column;gap:7px}.photo-upload-form input{font-size:9px;max-width:100%;color:#68756d}.photo-upload-form .button{align-self:flex-start}.photo-reset-form .text-link{border:0;background:none;font-size:8px;padding:5px 0;cursor:pointer}
@media(max-width:720px){.photo-admin-grid{grid-template-columns:1fr}.photo-admin-card{grid-template-columns:110px 1fr}.photo-admin-card>img{width:110px;height:115px}}
.quote-promo{color:#52744f;font-size:10px;font-weight:600;margin-left:7px}


/* Official Caroline Villa identity */
.brand-logo{display:block;width:176px;height:auto;max-height:76px;object-fit:contain}
.brand{gap:0}
.brand-footer .brand-logo{width:190px;max-height:88px}
.admin-brand{margin:2px 0 55px!important}
.admin-brand .brand-logo{width:185px;max-height:82px}
@media(max-width:900px){.brand-logo{width:154px;max-height:68px}.brand-footer .brand-logo{width:170px}.admin-brand .brand-logo{width:165px}}
@media(max-width:520px){.brand-logo{width:138px;max-height:60px}}
