:root{--paper:#f8f5ee;--ink:#353631;--berry:#793e49;--petal:#eee3dd;--garden:#e6e8dc;--line:#c9c6bb;--muted:#62645a;--serif:'Bitter',Georgia,serif;--sans:'Hanken Grotesk',Arial,sans-serif;--gutter:clamp(22px,5.55vw,110px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
button,input,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}
button{color:inherit;cursor:pointer}
button:disabled{cursor:default}
button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
input:focus-visible,textarea:focus-visible{outline:2px solid var(--paper);outline-offset:4px}
img{display:block;width:100%;height:auto}
figure,p,h1,h2,h3,dl,dd{margin:0}
h1,h2,h3{font-weight:400}
h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.15}
h2{font-size:clamp(35px,3.5vw,62px)}
h3{font-size:19px;line-height:1.35;font-weight:500}
p{max-width:62ch}
.wrap{width:calc(100% - var(--gutter)*2);max-width:1680px;margin-inline:auto}
.eyebrow{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.13em;line-height:1.5}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:40px;border:0;border-bottom:1px solid currentColor;background:none;padding:4px 0;text-decoration:none;font-size:15px;font-weight:500;line-height:1.4}
.text-link span,.button span{font-size:20px}
.text-link:hover{color:var(--berry)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:52px;padding:12px 24px;background:var(--berry);border:1px solid var(--berry);color:var(--paper);text-decoration:none;font-size:16px;font-weight:500;line-height:1.5;transition:background .2s}
.button:hover{background:#5c2833}
.skip-link{position:absolute;top:-80px;left:20px;z-index:9;padding:12px 20px;background:var(--paper)}
.skip-link:focus{top:15px}
.site-header{display:flex;justify-content:space-between;align-items:center;padding-block:18px;gap:24px}
.brand{display:flex;align-items:center;gap:18px}
.brand img{width:64px;height:64px}
.brand span{font-size:15px;font-weight:500}
.site-header nav{display:flex;align-items:center;gap:35px}
.site-header nav a{padding-block:8px;font-size:15px;text-decoration:none}
.site-header nav a:hover{text-decoration:underline}
.site-header nav a:last-child{color:var(--berry)}
.site-header nav span{margin-left:15px}
.masthead{display:grid;grid-template-columns:1fr auto;align-items:end;padding-top:19px;padding-bottom:29px;gap:10px 30px}
.masthead .eyebrow{grid-column:1/-1;display:flex;align-items:center;gap:14px;color:var(--muted)}
.small-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--berry)}
.masthead h1{font-size:clamp(46px,6.5vw,112px);color:var(--berry)}
.opening-note{font-family:var(--serif);font-size:21px;letter-spacing:-.025em;padding-bottom:13px}
.cover{position:relative;width:100%;aspect-ratio:2.65;max-height:620px;overflow:hidden}
.cover>img{height:100%;object-fit:cover;object-position:center 48%}
.photo-invite{position:absolute;right:var(--gutter);bottom:28px;display:flex;align-items:center;gap:20px;background:var(--paper);border:0;padding:13px 19px;font-size:15px;line-height:1.4}
.image-icon{font-size:24px;line-height:1}
.price-band{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:28px;border-bottom:1px solid var(--line)}
.price-band .eyebrow{font-size:11px;color:var(--muted);margin-bottom:4px}
.price{font-size:30px;line-height:1.3;font-weight:500;letter-spacing:-.03em;white-space:nowrap}
.price-links{display:flex;align-items:center;gap:42px}
.welcome{display:grid;grid-template-columns:1.3fr .85fr;gap:10%;align-items:center;padding-block:88px 95px}
.section-label{color:var(--berry);margin-bottom:21px}
.welcome h2{margin-bottom:25px}
.welcome-copy>p:not(.eyebrow){max-width:49ch;margin-bottom:23px}
.porch-photo{padding-top:18px}
.photo-button{position:relative;display:block;width:100%;border:0;padding:0;background:transparent;text-align:left;overflow:hidden}
.photo-button img{aspect-ratio:1.5;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.3,1)}
.photo-button:hover img{transform:scale(1.025)}
.expand{position:absolute;right:13px;bottom:13px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:var(--paper);color:var(--berry);font-size:23px;line-height:1}
figcaption{padding-top:12px;font-size:13px;line-height:1.5;color:var(--muted)}
.interiors{padding-block:58px 72px;background:var(--petal)}
.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px;gap:24px}
.section-heading .eyebrow{color:var(--berry)}
.interior-story{display:grid;grid-template-columns:1.2fr 1fr;gap:30px 6%}
.interior-left,.interior-right{min-width:0}
.inside-copy{padding-top:24px}
.inside-copy h2{margin-bottom:26px;color:var(--berry)}
.inside-copy p{max-width:44ch}
.kitchen-photo{margin-top:48px}
.interior-note{padding:42px 13% 0;max-width:500px}
.interior-note p{font-family:var(--serif);font-size:20px;line-height:1.6;letter-spacing:-.015em}
.note-line{display:block;width:36px;border-top:2px solid var(--berry);margin-bottom:22px}
.quiet-rooms{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:64px}
.quiet-rooms .photo-button img{aspect-ratio:1.7}
.garden{background:var(--garden)}
.garden-heading{display:grid;grid-template-columns:1fr .75fr;gap:10%;align-items:end;padding-block:73px 50px}
.garden-heading .eyebrow{color:var(--muted);margin-bottom:20px}
.garden-heading>p{max-width:46ch;padding-bottom:5px}
.garden-wide .photo-button img{aspect-ratio:2.6;object-position:50% 63%;max-height:690px}
.garden-wide .expand{right:var(--gutter);bottom:25px}
.garden-foot{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:20px 26px}
.garden-foot>p{font-family:var(--serif);font-size:19px;letter-spacing:-.02em}
.practical{padding-block:80px 0}
.plan-intro .eyebrow{margin-bottom:18px;color:var(--berry)}
.plan-intro{margin-bottom:48px}
.plan-layout{display:grid;grid-template-columns:.7fr 1.35fr;align-items:start;gap:6%}
.plan-layout>*{min-width:0}
.feature-notes h3{padding-bottom:22px}
.feature-notes dl{border-top:1px solid var(--line)}
.feature-notes dl>div{display:grid;grid-template-columns:77px 1fr;gap:12px;padding-block:13px;border-bottom:1px solid var(--line);font-size:15px;line-height:1.5}
.feature-notes dt{font-weight:600}
.feature-notes dd{color:var(--muted)}
.plan-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}
.plan-top h3{font-size:17px}
.plan-top .text-link{font-size:14px}
.plan-controls{display:flex;align-items:center;gap:22px}
.plan-controls .text-link{gap:12px;white-space:nowrap}
[hidden]{display:none!important}
.plan-frame{width:100%;overflow:auto;scroll-behavior:auto}
.plan-frame:focus-visible{outline:2px solid var(--berry);outline-offset:4px}
.plan-frame.is-zoomed{height:440px;max-height:65vh}
.plan-frame.is-zoomed .plan-image{width:1600px;max-width:none;pointer-events:none}
.plan-image{display:block}
.plan-image img{aspect-ratio:1600/1066;object-fit:contain;background:#ffe916}
.plan-figure figcaption{font-size:12px}
.location-line{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);padding-block:30px;margin-top:65px}
.location-line .eyebrow{font-size:11px;color:var(--muted);margin-bottom:4px}
.location-line>div>p:last-child{font-size:21px}
.enquiry{background:var(--berry);color:var(--paper);padding-block:76px}
.enquiry-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:12%}
.contact-copy>.eyebrow{margin-bottom:23px}
.contact-copy h2{margin-bottom:24px}
.contact-copy>p:not(.eyebrow){max-width:42ch}
.agent{margin-top:38px}
.agent h3{font-family:var(--serif);font-size:27px;letter-spacing:-.025em;font-weight:400}
.agent>p{font-size:13px;margin-top:5px;margin-bottom:16px}
.agent a{display:table;max-width:100%}
.agent-phone{font-size:23px;text-decoration:none;font-weight:500;line-height:1.7}
.agent-email{font-size:16px;overflow-wrap:anywhere}
form{padding-top:8px}
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:20px;min-width:0}
.field label{font-size:14px;font-weight:500;line-height:1.5}
.field input,.field textarea{width:100%;min-width:0;background:var(--paper);border:1px solid var(--paper);border-radius:0;color:var(--ink);padding:12px 14px;font-size:16px;line-height:1.5}
.field input{height:50px}
.field textarea{min-height:132px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#74736e;opacity:1}
.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.button-light{background:var(--paper);border-color:var(--paper);color:var(--berry);min-width:210px}
.button-light:hover{background:var(--petal)}
.form-status{font-size:14px;line-height:1.5;margin-top:15px}
.form-status:empty{display:none}
.site-footer{padding-block:36px 0;font-size:13px}
.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:26px}
.footer-agency{font-size:17px;font-weight:600;margin-bottom:7px}
.footer-top .text-link{font-size:13px}
.footer-top>div>a{display:inline-block;min-height:30px;margin-top:5px}
.disclaimer{font-size:12px;color:var(--muted);max-width:100ch;line-height:1.65}
.notice{padding-block:18px 24px;font-size:12px}
.notice a{display:inline-block;min-height:25px}
/* A quiet full-screen photographic viewer. */
#photo-viewer{border:0;padding:0;width:100%;max-width:100%;height:100%;max-height:100%;background:#242622;color:var(--paper);overflow:hidden}
#photo-viewer[open]{display:flex;flex-direction:column}
#photo-viewer::backdrop{background:#242622}
.viewer-top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 32px 8px;flex:none;font-size:17px}
.viewer-close{display:flex;align-items:center;gap:18px;padding:7px 0 7px 12px;border:0;background:none;font-size:14px}
.viewer-close span{font-size:32px;line-height:1}
.viewer-categories{display:flex;justify-content:center;gap:26px;padding:4px 20px 16px;flex:none}
.viewer-categories button{border:0;border-bottom:1px solid transparent;background:none;font-size:13px;min-height:36px;padding:4px 0;color:#d5d6ce}
.viewer-categories button[aria-pressed="true"]{border-bottom-color:var(--paper);color:var(--paper)}
.viewer-stage{display:flex;flex:1;min-height:0;align-items:center;justify-content:center;padding:0 32px;touch-action:pan-y}
.viewer-stage img{width:100%;height:100%;object-fit:contain}
.viewer-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:16px 32px 22px;flex:none}
.viewer-caption{font-family:var(--serif);font-size:19px;line-height:1.45}
.viewer-count{font-size:12px;color:#d5d6ce}
.viewer-arrows{display:flex;gap:12px}
.viewer-arrows button{width:50px;height:46px;background:none;border:1px solid #73776d;font-size:23px}
.viewer-arrows button:hover{background:#3b3f36}
body.gallery-active{overflow:hidden}
@media(min-width:1700px){.welcome{padding-block:100px 110px}.interiors{padding-block:64px 88px}.inside-copy{padding-top:40px}.garden-heading{padding-block:85px 60px}.practical{padding-top:96px}}
@media(max-width:1100px){.brand span{display:none}.masthead h1{font-size:6.5vw}.opening-note{font-size:17px;padding-bottom:5px}.price-links{gap:25px}.price-links .text-link{font-size:13px}.price{font-size:26px}.welcome{gap:7%;grid-template-columns:1.1fr .9fr}.inside-copy{padding-top:3px}.inside-copy h2{font-size:34px}.inside-copy p{font-size:16px}.kitchen-photo{margin-top:32px}.interior-note{padding:30px 7% 0}.interior-note p{font-size:18px}.plan-layout{grid-template-columns:.8fr 1.2fr;gap:5%}.feature-notes dl>div{grid-template-columns:65px 1fr;font-size:14px}.enquiry-layout{gap:7%}.field-pair{grid-template-columns:1fr;gap:0}}
@media(max-width:799px){:root{--gutter:26px}body{font-size:16px}.site-header{padding-block:15px}.brand img{width:56px;height:56px}.site-header nav{gap:27px}.masthead{padding-top:22px;padding-bottom:28px;gap:9px 20px}.masthead h1{font-size:clamp(43px,7.9vw,64px)}.opening-note{grid-column:1/-1;padding-bottom:0;font-size:18px}.cover{aspect-ratio:1.9;max-height:none}.cover>img{object-position:58% 55%}.photo-invite{bottom:20px;padding:11px 15px;font-size:13px;gap:14px}.price-band{padding-block:22px;gap:20px}.price{font-size:26px}.price-links .text-link{display:none}.price-links .button{padding:10px 17px;gap:20px;font-size:14px;min-height:47px}.welcome{padding-block:57px 62px;gap:45px;grid-template-columns:1.15fr .85fr}.welcome h2{font-size:33px}.welcome-copy>p:not(.eyebrow){font-size:15px}.welcome-copy .text-link{font-size:14px}.desktop-break{display:none}.section-label{margin-bottom:17px}.porch-photo .photo-button img{aspect-ratio:.95}.interiors{padding-block:38px 48px}.interior-story{gap:25px 5%;grid-template-columns:1fr 1fr}.inside-copy h2{font-size:29px;margin-bottom:18px}.inside-copy p{font-size:15px}.living-photo .photo-button img{aspect-ratio:1}.kitchen-photo{margin-top:28px}.interior-note{padding:26px 10px 0}.interior-note p{font-size:16px}.note-line{margin-bottom:16px}.quiet-rooms{gap:20px;margin-top:38px}.quiet-rooms .photo-button img{aspect-ratio:1.25}.garden-heading{padding-block:48px 34px;gap:7%;grid-template-columns:1fr 1fr}.garden-heading h2{font-size:34px}.garden-heading>p{font-size:15px}.garden-wide .photo-button img{aspect-ratio:2}.garden-foot{padding-block:18px 22px;gap:30px}.garden-foot>p{font-size:16px}.garden-foot .text-link{font-size:13px;gap:14px}.practical{padding-top:55px}.plan-intro{margin-bottom:35px}.plan-layout{grid-template-columns:1fr;gap:36px}.feature-notes dl{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.feature-notes dl>div{grid-template-columns:70px 1fr;font-size:15px}.feature-notes h3{padding-bottom:16px}.plan-figure{grid-row:1}.plan-image img{width:100%}.plan-top{margin-bottom:15px}.location-line{margin-top:35px;padding-block:25px}.location-line>div>p:last-child{font-size:18px}.location-line .text-link{font-size:13px}.enquiry{padding-block:55px}.enquiry-layout{gap:6%;grid-template-columns:1fr 1fr}.contact-copy h2{font-size:36px}.contact-copy>p:not(.eyebrow){font-size:15px}.agent h3{font-size:25px}.agent-email{font-size:15px}.field{margin-bottom:15px}.field label{font-size:13px}.field input,.field textarea{padding-inline:11px}.site-footer{padding-top:28px}.viewer-top{padding-inline:22px}.viewer-stage{padding-inline:22px}.viewer-bottom{padding-inline:22px}}
@media(max-width:599px){:root{--gutter:22px}.site-header{gap:16px;padding-block:13px}.site-header nav{gap:21px}.site-header nav a{font-size:12px}.site-header nav span{margin-left:3px}.masthead{padding-top:19px;padding-bottom:24px;gap:8px}.masthead .eyebrow{font-size:11px}.masthead h1{font-size:clamp(37px,10.4vw,58px)}.opening-note{font-size:17px;margin-top:2px}.cover{aspect-ratio:1.25}.cover>img{object-position:60% 54%}.photo-invite{right:17px;bottom:17px;font-size:12px;padding:10px 13px;gap:13px}.photo-invite .image-icon{font-size:21px}.price-band{align-items:flex-start;flex-direction:column;padding-block:21px 25px;gap:15px}.price{font-size:28px;letter-spacing:-.035em}.price-band .eyebrow{font-size:10px}.price-links{width:100%;justify-content:space-between;gap:15px}.price-links .text-link{display:inline-flex;font-size:12px;gap:12px;min-height:37px}.price-links .button{font-size:12px;min-height:41px;gap:16px;padding:8px 13px}.welcome{grid-template-columns:1fr;gap:29px;padding-block:47px 44px}.welcome h2{font-size:35px;max-width:17ch;margin-bottom:21px}.welcome-copy>p:not(.eyebrow){font-size:16px;margin-bottom:17px}.porch-photo{padding-top:0;width:87%;margin-left:auto}.porch-photo .photo-button img{aspect-ratio:1.4}.section-label{margin-bottom:16px}.text-link{font-size:14px;gap:20px}.interiors{padding-block:30px 39px}.section-heading{align-items:center;gap:15px;margin-bottom:26px}.section-heading .eyebrow{font-size:10px}.section-heading .text-link{font-size:12px;gap:10px;min-height:35px}.interior-story{display:flex;flex-direction:column;gap:27px}.interior-left,.interior-right{display:contents}.inside-copy{order:-1;padding:0}.inside-copy h2{font-size:35px;margin-bottom:19px}.inside-copy p{font-size:16px}.living-photo .photo-button img{aspect-ratio:1.4}.kitchen-photo{margin-top:0;width:90%;margin-left:auto}.kitchen-photo .photo-button img{aspect-ratio:1.3}.interior-note{display:none}figcaption{font-size:12px;padding-top:10px}.expand{width:30px;height:30px;font-size:21px;right:10px;bottom:10px}.quiet-rooms{margin-top:30px;grid-template-columns:1fr;gap:26px}.quiet-rooms .photo-button img{aspect-ratio:1.5}.garden-heading{grid-template-columns:1fr;gap:22px;padding-block:43px 30px}.garden-heading .eyebrow{margin-bottom:16px}.garden-heading h2{font-size:35px}.garden-heading>p{font-size:16px;padding:0}.garden-wide .photo-button img{aspect-ratio:1.4;object-position:50% 60%}.garden-wide .expand{right:17px;bottom:17px}.garden-foot{flex-direction:column;align-items:flex-start;gap:13px;padding-block:21px 29px}.garden-foot>p{font-size:17px}.garden-foot .text-link{font-size:13px}.practical{padding-top:45px}.plan-intro h2{font-size:34px}.plan-intro{margin-bottom:27px}.plan-intro .eyebrow{margin-bottom:15px}.plan-top h3{font-size:14px}.plan-controls{gap:15px}.plan-top .text-link{font-size:11px;gap:8px}.plan-figure figcaption{font-size:11px}.feature-notes dl{grid-template-columns:1fr;gap:0}.feature-notes dl>div{grid-template-columns:72px 1fr;font-size:14px;padding-block:12px}.feature-notes h3{font-size:18px}.plan-layout{gap:30px}.location-line{flex-direction:column;align-items:flex-start;gap:13px;margin-top:29px;padding-block:23px 29px}.location-line>div>p:last-child{font-size:19px}.enquiry{padding-block:43px 42px}.enquiry-layout{grid-template-columns:1fr;gap:36px}.contact-copy>.eyebrow{margin-bottom:18px}.contact-copy h2{font-size:37px;margin-bottom:21px}.contact-copy>p:not(.eyebrow){font-size:16px}.agent{margin-top:29px}.agent h3{font-size:26px}.agent>p{font-size:12px;margin-bottom:13px}.agent-phone{font-size:22px}.agent-email{font-size:15px}.field-pair{grid-template-columns:1fr}.field{margin-bottom:18px}.field label{font-size:14px}.field textarea{min-height:135px}form{border-top:1px solid #b27e88;padding-top:28px}.button-light{width:100%;font-size:15px}.footer-top{gap:15px;margin-bottom:22px}.footer-agency{font-size:16px}.footer-top>div{font-size:12px}.footer-top .text-link{font-size:11px;gap:9px;min-height:32px}.disclaimer{font-size:11px}.notice{font-size:11px;padding-block:17px 22px}.viewer-top{padding:13px 18px 8px;font-size:15px}.viewer-suburb{display:none}.viewer-close{gap:12px;font-size:12px}.viewer-categories{display:grid;grid-template-columns:1fr 1fr;column-gap:20px;row-gap:0;padding:0 18px 12px}.viewer-categories button{font-size:12px;min-height:33px;text-align:left;justify-self:start}.viewer-stage{padding:0 10px}.viewer-bottom{padding:16px 18px 20px;gap:15px}.viewer-caption{font-size:16px;max-width:22ch}.viewer-count{font-size:11px}.viewer-arrows{gap:8px}.viewer-arrows button{width:40px;height:42px}}
.photo-button{cursor:zoom-in}
.photo-button .expand{font-size:0}
.expand::before{content:'+';font-family:var(--sans);font-size:25px;font-weight:400}
.interior-note .eyebrow{font-family:var(--sans);font-size:11px;letter-spacing:.13em;color:var(--berry);margin-bottom:10px}
.interior-note .text-link{width:100%;font-size:14px;margin-top:8px}
.garden-foot{padding-block:28px}
.garden-detail{display:flex;align-items:center;gap:30px}
.garden-detail .photo-button{width:260px;flex:none}
.garden-detail .photo-button img{aspect-ratio:1.7}
.garden-detail figcaption{font-family:var(--serif);font-size:19px;letter-spacing:-.02em;line-height:1.5;color:var(--ink);padding:0}
@media(max-width:799px){.garden-detail{gap:20px}.garden-detail .photo-button{width:190px}.garden-detail figcaption{font-size:16px}.garden-foot{gap:20px}.garden-foot>.text-link{max-width:215px}}
@media(max-width:599px){.garden-detail .photo-button{width:145px}.garden-detail figcaption{font-size:16px}.garden-foot{gap:18px;padding-block:23px 27px}.garden-foot>.text-link{max-width:none}.plan-top{display:block;margin-bottom:17px}.plan-top h3{font-size:17px}.plan-controls{margin-top:10px;gap:27px}.plan-top .text-link{font-size:13px;gap:16px;min-height:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.photo-button:hover img{transform:none}}
