@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');:root{--green:#284b3b;--deep:#19392e;--cream:#f7f5ef;--gold:#d9b77e;--ink:#26362d;--muted:#66746b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,22px);background:#fff;position:sticky;top:0;z-index:20;box-shadow:0 1px 9px #0000000c}.brand{display:flex;gap:12px;align-items:center;font-weight:700;letter-spacing:.09em;font-size:14px;line-height:1.1}.brand-mark{color:var(--green);font-size:36px}.brand small{display:block;font-size:9px;letter-spacing:.17em;margin-top:7px;color:#778179}.header nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:600}.header nav a:hover{color:#a0783f}.nav-cta{background:var(--green);color:white!important;padding:12px 18px;border-radius:3px}.menu{display:none;border:0;background:transparent;font-size:26px}.sr{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.hero{min-height:670px;height:76vh;max-height:850px;position:relative;display:flex;align-items:center;color:white;overflow:hidden}.hero-photo{position:absolute;inset:0;background:url('images/First_floor_living_area.webp') center 55%/cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,37,28,.88) 0%,rgba(14,37,28,.7) 42%,rgba(14,37,28,.18) 100%)}.hero-inner{position:relative;max-width:850px;padding:65px max(7vw,25px)}.eyebrow{font-size:11px;letter-spacing:.24em;font-weight:700;color:#9c8156;margin-bottom:24px}.eyebrow.light{color:#e5c899}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.15;font-weight:400}h1{font-size:clamp(46px,6vw,88px);margin:0 0 25px}h1 em,h2 em{font-weight:400}h2{font-size:clamp(39px,4.4vw,66px);margin:0 0 24px}h3{font-size:27px;margin:0 0 12px}.hero p{max-width:525px;font-size:17px;color:#f0f0e9}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:35px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;gap:24px;border:0;padding:15px 23px;font-weight:700;font-size:13px;border-radius:3px}.btn.gold{background:var(--gold);color:#23382c}.btn.dark{background:var(--green);color:white}.text-link{font-size:13px;border-bottom:1px solid #ffffff90;padding-bottom:4px}.hero-tag{position:absolute;right:5vw;bottom:35px;font-size:10px;letter-spacing:.22em}.section{padding:110px max(7vw,25px)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.intro p,.split-copy p,.approach p,.admissions p{color:var(--muted)}.lead{font-size:20px!important;line-height:1.7;color:#43584b!important}.inline-link{display:inline-block;margin-top:16px;color:var(--green);font-weight:700;border-bottom:1px solid var(--gold);padding-bottom:6px}.split{display:grid;grid-template-columns:1fr 1fr;background:var(--cream)}.split>img{width:100%;height:100%;min-height:680px;object-fit:cover}.split-copy{padding:90px min(7vw,90px)}.feature{display:flex;gap:25px;border-top:1px solid #d9ded5;padding-top:23px;margin-top:23px}.feature>span{font-family:Georgia,serif;color:#ae9467}.feature strong{font-size:16px}.feature p{margin:4px 0}.approach{text-align:center}.approach .narrow{max-width:730px;margin:0 auto 40px}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px;text-align:left}.approach-grid article{padding:40px;background:#f8f8f4}.symbol{font-size:35px;color:#9a7d52}.note{font-size:12px!important;color:#737e75!important;line-height:1.7}.approach>.note{margin-top:35px}.gallery-section{background:#f4f5f0}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;padding-bottom:35px}.gallery-heading p{color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:7px;max-width:550px;justify-content:flex-end}.filters button{border:1px solid #d8ded4;background:transparent;padding:9px 12px;font-size:12px;border-radius:3px}.filters button.active{background:var(--green);color:white}.photo-grid{padding:0 max(7vw,25px);display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.photo{border:0;background:#fff;padding:0;text-align:left;overflow:hidden}.photo img{width:100%;height:280px;object-fit:cover;display:block;transition:transform .35s}.photo:hover img{transform:scale(1.04)}.photo span{display:block;padding:12px 15px;font-size:13px;font-weight:700}.photo small{display:block;color:#788579;font-size:11px;font-weight:400}.gallery-foot{text-align:center;padding:28px 20px 60px;color:#7d887f;font-size:12px}.admissions{display:grid;grid-template-columns:1fr 1fr;gap:9vw;background:#fff}.admissions-card{background:var(--cream);padding:45px}.admissions-card ul{padding-left:20px;line-height:2;color:#4c5b51}.contact{background:var(--deep);color:white}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact p{color:#d2dfd6}.address{display:grid;gap:9px;margin-top:45px}.address a{color:var(--gold);font-size:13px}.contact-form{background:#fff;color:var(--ink);padding:35px;display:grid;gap:8px}.contact-form h3{margin:0}.contact-form label{font-size:12px;font-weight:700;margin-top:8px}.contact-form input,.contact-form select,.contact-form textarea{padding:12px;border:1px solid #cbd5cc;border-radius:2px;background:#fff;min-width:0}.contact-form .btn{margin-top:12px}.form-note{font-size:12px;color:#67766c!important;margin:4px 0 10px}footer{padding:45px max(7vw,25px);display:flex;justify-content:space-between;gap:25px;background:#10291f;color:#f2f4ed;font-size:13px}footer p{color:#a9b9ae}dialog{border:0;padding:15px;max-width:min(90vw,850px);max-height:90vh;background:#fff;box-shadow:0 10px 80px #0006}dialog::backdrop{background:#061a11d9}dialog img{display:block;max-width:100%;max-height:75vh;object-fit:contain;margin:auto}dialog button{position:absolute;right:15px;top:10px;border:0;background:#fff;font-size:30px}dialog p{text-align:center;margin:8px}.gallery-section,.contact,.admissions,.approach,.intro{scroll-margin-top:85px}@media(max-width:1000px){.header nav{gap:14px;font-size:12px}.photo-grid{grid-template-columns:repeat(3,1fr)}.split-copy{padding:55px 35px}}@media(max-width:740px){.header{height:70px}.brand{font-size:12px}.brand small{font-size:8px}.menu{display:block}.header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:25px;box-shadow:0 12px 15px #0002}.header nav.open{display:flex}.hero{min-height:590px;height:auto}.hero-shade{background:linear-gradient(90deg,#0c291ee6,#0c291e83)}.hero-inner{padding:80px 25px}.hero-tag{display:none}.section{padding:70px 25px}.intro,.split,.admissions,.contact-grid{grid-template-columns:1fr;gap:35px}.split>img{min-height:0;height:420px}.split-copy{padding:55px 25px}.approach-grid{grid-template-columns:1fr}.gallery-heading{display:block}.filters{justify-content:flex-start}.photo-grid{grid-template-columns:repeat(2,1fr);padding:0 15px;gap:10px}.photo img{height:210px}.contact-grid{gap:35px}.contact-form{padding:24px}footer{display:block}.admissions-card{padding:30px}}@media(max-width:420px){.photo-grid{grid-template-columns:1fr 1fr}.photo img{height:155px}.photo span{padding:10px;font-size:11px}.hero-actions{gap:20px}}