:root{--sage-50:#f3f6f1;--sage-100:#e7eee3;--sage-200:#d8e3d3;--sage-300:#c4d4bf;--sage-500:#82977f;--sage-700:#536956;--sage-900:#2f4335;--ink:#23312a;--muted:#667269;--cream:#fbfaf6;--white:#fff;--sand:#eee9df;--line:rgba(47,67,53,.14);--shadow:0 24px 70px rgba(45,64,50,.1);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.68;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}main{overflow:hidden}button,input,textarea,select{font:inherit}.site-header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:minmax(220px,310px) 1fr;align-items:center;gap:34px;padding:14px clamp(20px,4vw,66px);background:rgba(251,250,246,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(47,67,53,.08)}.brand{display:inline-block;width:min(255px,100%);text-decoration:none}.brand img{width:100%;height:auto;max-height:122px;object-fit:contain;object-position:left center}.main-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(16px,2.3vw,34px)}.main-nav>a:not(.button){position:relative;text-decoration:none;font-size:14px;font-weight:500;white-space:nowrap;padding:8px 0}.main-nav>a:not(.button)::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--sage-700);transition:right .22s ease}.main-nav>a:not(.button):hover::after,.main-nav>a.active::after{right:0}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:999px;padding:10px 16px;color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;text-decoration:none;background:var(--sage-500);color:#fff;border:1px solid var(--sage-500);border-radius:999px;padding:14px 24px;font-size:14px;font-weight:600;letter-spacing:.01em;transition:.22s ease;cursor:pointer}.button:hover{background:var(--sage-700);border-color:var(--sage-700);transform:translateY(-1px)}.button-outline{background:transparent;color:var(--sage-900);border-color:var(--sage-700)}.button-outline:hover{color:#fff}.button-small{padding:12px 22px}.text-link,.card-link{display:inline-flex;align-items:center;gap:8px;color:var(--sage-700);font-weight:700;text-decoration:none}.text-link:hover,.card-link:hover{text-decoration:underline}.eyebrow{text-transform:uppercase;letter-spacing:.28em;font-size:11px;font-weight:700;color:var(--sage-500);margin:0 0 20px}h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.05;color:var(--sage-900);margin-top:0}h1{font-size:clamp(52px,6.4vw,96px);letter-spacing:-.045em;margin-bottom:26px}h2{font-size:clamp(38px,4.8vw,72px);letter-spacing:-.035em;margin-bottom:24px}h3{font-size:clamp(24px,2.4vw,36px);letter-spacing:-.02em}.lead{font-size:clamp(17px,1.55vw,22px);line-height:1.65;color:#5c675f;max-width:720px}.hero-actions,.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.home-hero{display:grid;grid-template-columns:minmax(440px,.9fr) 1.35fr;min-height:680px;background:var(--cream)}.home-hero-copy{position:relative;z-index:2;display:flex;justify-content:center;flex-direction:column;padding:clamp(70px,8vw,120px) clamp(28px,6vw,94px);padding-right:clamp(45px,7vw,120px)}.home-hero-copy::after{content:"";position:absolute;z-index:-1;inset:0 -170px 0 0;background:linear-gradient(90deg,var(--cream) 0%,var(--cream) 68%,rgba(251,250,246,.94) 78%,rgba(251,250,246,.65) 90%,transparent 100%);pointer-events:none}.home-hero-media{min-height:680px;background:var(--sage-100);overflow:hidden}.home-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:28px clamp(24px,6vw,100px);background:#f8f8f3;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-item{display:flex;align-items:center;gap:20px;padding:12px clamp(14px,2vw,34px);border-right:1px solid var(--line)}.feature-item:last-child{border-right:0}.feature-item h3{font-size:23px;margin:0 0 3px}.feature-item p{margin:0;color:var(--muted);font-size:14px}.feature-icon{flex:0 0 58px;width:58px;height:58px;border-radius:50%;background:var(--sage-100);position:relative}.feature-icon::before,.feature-icon::after{content:"";position:absolute}.feature-icon.leaf::before{width:22px;height:34px;border:2px solid var(--sage-700);border-radius:100% 0 100% 0;transform:rotate(38deg);left:18px;top:10px}.feature-icon.leaf::after{width:1px;height:30px;background:var(--sage-700);transform:rotate(38deg);left:29px;top:16px}.feature-icon.lotus::before{width:27px;height:20px;border:2px solid var(--sage-700);border-radius:50% 50% 46% 46%;left:14px;top:20px;transform:rotate(45deg)}.feature-icon.lotus::after{width:27px;height:20px;border:2px solid var(--sage-700);border-radius:50% 50% 46% 46%;left:18px;top:20px;transform:rotate(-45deg)}.feature-icon.heart::before{content:"♡";font-size:38px;line-height:58px;inset:0;text-align:center;color:var(--sage-700)}.feature-icon.sun::before{width:22px;height:22px;border:2px solid var(--sage-700);border-radius:50%;left:18px;top:18px;box-shadow:0 -13px 0 -10px var(--sage-700),0 13px 0 -10px var(--sage-700),13px 0 0 -10px var(--sage-700),-13px 0 0 -10px var(--sage-700)}.section{padding:clamp(76px,9vw,132px) clamp(24px,6vw,100px)}.section-narrow{max-width:960px;margin:auto}.section-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(44px,7vw,120px);align-items:center}.media{overflow:hidden;border-radius:24px;background:var(--sage-100)}.media img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s ease}.media:hover img{transform:scale(1.02)}.intro-section{background:var(--white)}.intro-section .media img{aspect-ratio:5/4}.quote-section{padding-block:clamp(70px,8vw,110px);background:var(--sage-100)}.quote{font-family:Georgia,serif;font-size:clamp(34px,4.4vw,64px);line-height:1.18;max-width:1040px;margin:0 auto;text-align:center;color:var(--sage-900)}.cabin-section{background:var(--cream)}.cabin-media{border-radius:22px}.cabin-media img{aspect-ratio:1.35/1}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;max-width:1240px;margin:0 auto 46px}.section-heading .lead{margin:0 0 10px auto}.experiences-section{background:var(--white)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1400px;margin:auto}.card{background:var(--cream);border:1px solid rgba(47,67,53,.09);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;transition:.22s ease}.card:hover{transform:translateY(-4px);box-shadow:0 18px 48px rgba(47,67,53,.08)}.card img{aspect-ratio:4/3;width:100%;object-fit:cover;background:var(--sage-100)}.card-body{padding:26px;display:flex;flex-direction:column;flex:1}.card-body h3{font-size:29px;margin-bottom:12px}.card-body p{color:#657068;margin-top:0}.card-link{margin-top:auto;padding-top:10px;font-size:13px;text-transform:uppercase;letter-spacing:.12em}.seasonal-banner{display:grid;grid-template-columns:1fr 1fr;background:var(--sage-900);color:#f6f8f4;min-height:560px}.seasonal-banner>div{padding:clamp(58px,7vw,104px);display:flex;flex-direction:column;justify-content:center}.seasonal-banner h2,.seasonal-banner .eyebrow{color:#f6f8f4}.seasonal-banner .lead{color:#dce4dc}.seasonal-banner img{width:100%;height:100%;object-fit:cover;background:var(--sage-200)}.closing-section{text-align:center;background:var(--cream)}.closing-section .lead{margin-inline:auto}.closing-section .actions{justify-content:center}.page-hero{padding:clamp(84px,10vw,150px) clamp(24px,7vw,120px);background:linear-gradient(135deg,var(--sage-100),#f3f0e7)}.page-hero-inner{max-width:1050px}.page-hero h1{font-size:clamp(52px,7vw,96px)}.prose{max-width:820px}.prose p{font-size:18px;margin:0 0 22px;color:#536057}.experience-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,7vw,100px);align-items:start}.sticky-media{position:sticky;top:150px;border-radius:22px;overflow:hidden;background:var(--sage-100)}.sticky-media img{width:100%;aspect-ratio:4/5;object-fit:cover}.benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;list-style:none;margin:34px 0}.benefits li{padding:15px 18px;background:var(--sage-100);border-radius:14px}.ritual-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;list-style:none;padding:0;margin:40px 0}.ritual-list li{padding:24px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.55);font-family:Georgia,serif;font-size:22px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,7vw,100px)}.form-card{background:var(--white);border-radius:var(--radius);padding:clamp(28px,5vw,60px);box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}label{font-size:13px;font-weight:650;color:#47544b}input,textarea,select{width:100%;border:1px solid var(--line);background:#fff;padding:14px 15px;border-radius:12px;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus,select:focus{border-color:var(--sage-500);box-shadow:0 0 0 3px rgba(130,151,127,.12)}textarea{min-height:150px;resize:vertical}.notice{padding:14px 18px;border-radius:12px;background:var(--sage-100);margin-bottom:22px;border:1px solid rgba(83,105,86,.12)}.error-notice{background:#fff0ed;border-color:#e7b6ab;color:#843e32}.site-footer{display:grid;grid-template-columns:2fr 1fr 1fr;gap:56px;padding:72px clamp(24px,6vw,100px) 34px;background:#25372c;color:#e8eee9}.site-footer h3{color:#f3f6f2;font-size:21px}.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-brand img{width:min(300px,100%);filter:brightness(0) invert(1);opacity:.94;margin-bottom:18px}.footer-brand p{max-width:450px;color:#c8d2ca}.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:24px;margin-top:10px;font-size:12px;color:#aebcaf;letter-spacing:.04em}.reveal{opacity:0;transform:translateY(18px);transition:.7s ease}.reveal.revealed{opacity:1;transform:none}.admin-shell{background:#edf1eb;min-height:100vh;padding:30px}.admin-wrap{max-width:1440px;margin:auto}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.admin-top h1{font-size:38px;margin:0}.admin-top-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px;position:sticky;top:12px;z-index:10;padding:10px;border-radius:999px;background:rgba(237,241,235,.92);backdrop-filter:blur(12px)}.admin-nav a{text-decoration:none;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:13px}.admin-nav a.active{background:var(--sage-900);color:#fff}.admin-card{background:#fff;border-radius:20px;padding:30px;box-shadow:0 8px 30px rgba(0,0,0,.04);margin-bottom:24px}.admin-card h2{font-size:31px;margin-bottom:8px}.admin-card h3{font-size:23px;margin-bottom:12px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-grid .full{grid-column:1/-1}.admin-help{font-size:12px;color:#758078;font-weight:400}.admin-thumb{width:200px;max-height:145px;object-fit:cover;border-radius:12px;border:1px solid var(--line);margin:5px 0 8px;background:var(--sage-50)}.admin-thumb.wide{width:320px}.admin-logo-preview{width:230px;max-height:190px;object-fit:contain;object-position:left center;margin:6px 0 12px;padding:10px;background:var(--cream);border-radius:12px}.admin-login{max-width:520px;margin:6vh auto;background:#fff;padding:44px;border-radius:24px;box-shadow:var(--shadow)}.admin-login>img{width:250px;display:block;margin:0 auto 28px}.admin-login h1{font-size:44px}.admin-login .field{margin-bottom:16px}.admin-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-savebar{display:flex;justify-content:flex-end;padding-top:24px;margin-top:24px;border-top:1px solid var(--line)}.experience-editor{border-top:1px solid var(--line);padding-top:28px;margin-top:28px}.nav-editor{display:grid;gap:10px}.nav-editor>div{display:grid;grid-template-columns:1fr 1.5fr;gap:10px}.text-button{border:0;background:none;padding:8px;cursor:pointer;text-decoration:underline;color:var(--sage-700)}.text-button.danger{color:#9a4238}.enquiry-list{display:grid;gap:16px}.enquiry-card{border:1px solid var(--line);border-radius:16px;padding:20px;background:var(--cream)}.enquiry-card-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.enquiry-card-head>div{display:flex;flex-direction:column}.enquiry-card-head span,.enquiry-card time{font-size:12px;color:var(--muted)}.status-form{margin-top:16px}.status-form label{display:flex;align-items:center;gap:8px}.status-form select{width:auto;padding:8px 12px}.muted{color:#6f7a72;font-size:13px}.update-summary{display:flex;gap:14px;margin:24px 0}.update-summary>div{min-width:130px;background:var(--sage-50);border:1px solid var(--line);border-radius:15px;padding:18px;display:flex;flex-direction:column}.update-summary strong{font-family:Georgia,serif;font-size:34px;font-weight:400}.update-summary span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.14em}.update-list{padding:0;list-style:none;border-top:1px solid var(--line);margin:20px 0 28px}.update-list li{display:flex;gap:20px;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line)}.update-list span{color:var(--muted)}.migration-tags{display:flex;gap:8px;flex-wrap:wrap}.migration-tags span{padding:8px 11px;background:var(--sage-50);border-radius:999px;font-size:12px}.installer-shell{min-height:100vh;padding:40px 20px;background:linear-gradient(135deg,var(--sage-100),var(--cream));display:flex;align-items:center;justify-content:center}.installer-card{width:min(880px,100%);background:#fff;border-radius:28px;padding:clamp(30px,5vw,64px);box-shadow:var(--shadow)}.installer-logo{width:min(290px,70%);margin:0 auto 30px}.installer-card h1{font-size:clamp(42px,6vw,70px)}.check-field label{display:flex;align-items:flex-start;gap:10px}.check-field input{width:auto;margin-top:4px}@media(max-width:1050px){.site-header{grid-template-columns:210px 1fr;gap:20px}.main-nav{gap:16px}.home-hero{grid-template-columns:1fr 1.1fr}.feature-strip{grid-template-columns:repeat(2,1fr)}.feature-item:nth-child(2){border-right:0}.feature-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.cards{grid-template-columns:1fr 1fr}}@media(max-width:880px){.site-header{display:flex;justify-content:space-between;padding:12px 20px}.brand{width:190px}.main-nav{position:absolute;left:18px;right:18px;top:105px;background:var(--white);padding:20px;border-radius:20px;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.menu-toggle{display:block}.home-hero,.section-grid,.experience-layout,.contact-grid,.seasonal-banner{grid-template-columns:1fr}.home-hero{min-height:0}.home-hero-copy{padding:70px 26px 54px}.home-hero-copy::after{display:none}.home-hero-media{min-height:520px}.section-heading{grid-template-columns:1fr}.section-heading .lead{margin-left:0}.sticky-media{position:static}.site-footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{grid-column:1/-1}}@media(max-width:640px){.site-header{padding:10px 16px}.brand{width:155px}.main-nav{top:88px}h1{font-size:clamp(46px,15vw,68px)}h2{font-size:clamp(36px,12vw,54px)}.home-hero-media{min-height:390px}.feature-strip{grid-template-columns:1fr;padding:14px 22px}.feature-item{border-right:0!important;border-bottom:1px solid var(--line)!important;padding:16px 0}.feature-item:last-child{border-bottom:0!important}.section{padding:66px 22px}.cards,.ritual-list,.form-grid,.admin-grid{grid-template-columns:1fr}.field.full,.admin-grid .full{grid-column:auto}.site-footer{grid-template-columns:1fr;padding:56px 22px 26px}.footer-brand,.footer-bottom{grid-column:auto}.benefits{grid-template-columns:1fr}.admin-shell{padding:14px}.admin-card{padding:22px}.admin-top{align-items:flex-start;flex-direction:column}.admin-top-actions{justify-content:flex-start}.admin-nav{border-radius:18px;position:static}.nav-editor>div{grid-template-columns:1fr}.enquiry-card-head{flex-direction:column}.update-list li{flex-direction:column;gap:2px}}