:root{--ink:#193b43;--teal:#086778;--cream:#f5f4ed;--line:#d3d9d4;--muted:#586a6a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #dbab5d;outline-offset:5px}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:white;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;line-height:1.2;font-size:17px;font-weight:700;letter-spacing:1.7px}.brand img{width:66px;height:70px;object-fit:contain}.brand small{display:block;font-size:9px;letter-spacing:2.6px;margin-top:7px}nav{display:flex;align-items:center;gap:32px;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--teal);color:white;padding:17px 25px;font-size:14px;border:0;transition:background .2s}.button:hover{background:#154550}.button.small{padding:13px 19px}#menu{display:none}.hero{height:min(780px,calc(100vh - 100px));min-height:580px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:65% 54%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,33,36,.8),rgba(9,33,36,.45) 44%,rgba(9,33,36,.03) 78%)}.hero-copy{position:absolute;left:7%;top:15%;max-width:620px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.7px;margin:0 0 24px}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(60px,6.7vw,104px);line-height:1.04;letter-spacing:-3px;margin-bottom:26px}em{font-family:Georgia,serif;font-weight:400}h1 em{color:#cfe7df}.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.8}.actions{display:flex;gap:26px;align-items:center;margin-top:34px}.text-link{font-size:13px;border-bottom:1px solid #a2b4ae;padding:8px 0}.hero-caption{position:absolute;bottom:30px;right:5%;font-size:9px;letter-spacing:2px;text-align:right}.hero-caption span{display:block;font-size:13px;letter-spacing:.3px}.ribbon{padding:23px 5%;display:flex;justify-content:space-around;gap:20px;background:var(--cream);font-size:12px;letter-spacing:.5px}.ribbon i{color:#97aead}.wrap{max-width:1320px;margin:auto;padding:100px 6%}h2{font:400 clamp(38px,4vw,60px)/1.15 Georgia,serif;letter-spacing:-1.5px;margin-bottom:30px}h2 em{color:var(--teal)}h3{font:400 27px/1.3 Georgia,serif}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%}.intro>div+div{padding-top:35px}.intro p{color:var(--muted);font-size:15px}.intro .lead{font:24px/1.5 Georgia,serif;color:var(--ink)}.underlink{display:inline-block;border-bottom:1px solid var(--teal);font-size:13px;padding:10px 0}.services{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:40px}.section-heading>p{max-width:290px;font-size:14px;color:var(--muted)}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:28px;padding:24px 0;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary>span{font-size:11px;color:var(--teal)}summary h3{margin:0;font-size:27px}summary b{margin-left:auto;font-size:22px;font-weight:400}details[open] summary b{transform:rotate(45deg)}.detail{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:0 48px 24px;font-size:14px;color:var(--muted)}.detail ul{margin:0;padding-left:20px}.service-note{font-size:12px;color:var(--muted);margin:25px 0 0}.photo{padding:0;display:block;border:0;position:relative;text-align:left;overflow:hidden;background:var(--ink);color:white;width:100%}.photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.photo:hover img{transform:scale(1.025)}.photo span{position:absolute;bottom:0;left:0;right:0;padding:30px;background:linear-gradient(transparent,rgba(0,0,0,.7));font-size:13px}.photo span b{float:right;font-weight:400}.feature{height:520px}.project-story{display:grid;grid-template-columns:1fr 1.5fr;gap:70px;padding:45px 0}.project-story h3{font-size:35px}.project-story p{font-size:14px;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{border:1px solid var(--line);padding:5px 12px;font-size:10px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:350px 350px;gap:18px}.wide{grid-column:span 2}.tall img{object-position:center 50%}.process{background:var(--ink);color:white}.process h2{margin-bottom:50px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{border-top:1px solid #617a7e;padding-top:25px}.steps span{font-size:10px;letter-spacing:1.6px;color:#9fc7c8}.steps h3{margin:22px 0 15px}.steps p{font-size:14px;color:#d0dbdc}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%}.phone{font:30px Georgia,serif;display:block;margin:30px 0 10px}.email{color:var(--teal);text-decoration:underline}address{font-size:13px;font-style:normal;margin:25px 0}.team{border-top:1px solid var(--line);padding-top:20px}.team p{font-size:12px;margin-bottom:14px}.team a{color:var(--teal)}form{background:var(--cream);padding:35px;align-self:start}form h3{font-size:28px}form>p{font-size:13px;color:var(--muted)}label{display:block;font-size:12px;font-weight:bold;margin-bottom:18px}input,select,textarea{display:block;width:100%;padding:12px;background:#fff;border:1px solid #d2d8d2;border-radius:0;margin-top:6px;color:var(--ink);font-size:13px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}form .button{width:100%}form .fine{font-size:11px;margin:15px 0 0}footer{border-top:1px solid var(--line);padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}footer p{font-size:13px;margin:0}footer>a:not(.brand){font-size:12px}footer>small{flex-basis:100%;font-size:10px;color:var(--muted)}dialog{border:0;padding:25px;background:#10272d;color:white;width:min(1100px,95vw);max-height:95vh}dialog::backdrop{background:#07181bec}#large-photo{display:block;max-width:100%;height:70vh;object-fit:contain;margin:auto}#close-photo{display:block;margin:0 0 16px auto;background:transparent;color:white;border:1px solid #799297;padding:6px 14px}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:14px}.lightbox-bar p{margin:0;font-size:13px}.lightbox-bar button{border:1px solid #799297;background:none;color:white;font-size:23px;padding:0 16px}.skip{position:absolute;left:0;top:-100px;background:white;padding:10px;z-index:30}.skip:focus{top:0}@media(max-width:850px){header{height:80px}.brand{font-size:14px}.brand img{width:50px;height:55px}#menu{display:block;background:none;border:1px solid var(--line);padding:8px 12px;font-size:12px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:25px;flex-direction:column;gap:20px}nav.open{display:flex}.hero{min-height:610px;height:80vh}.hero-copy{top:16%;left:6%;right:6%}.hero-shade{background:linear-gradient(90deg,#092124d9,#09212455)}h1{font-size:70px}.hero>img{object-position:60%}.intro,.contact{grid-template-columns:1fr;gap:35px}.intro>div+div{padding:0}.wrap{padding:70px 6%}.ribbon{flex-wrap:wrap;gap:8px 20px}.ribbon i{display:none}.section-heading{display:block}.section-heading>p{max-width:100%}.feature{height:390px}.project-story{gap:30px}.steps{gap:25px}.detail{padding-left:38px;gap:25px}.gallery{grid-template-rows:300px 300px}.contact{gap:40px}}@media(max-width:550px){h1{font-size:61px}.hero-copy>p:not(.eyebrow){font-size:15px}.eyebrow{font-size:9px;letter-spacing:1.6px}.hero-caption{bottom:20px}.actions{align-items:start;flex-direction:column;gap:12px}.ribbon{font-size:10px;justify-content:center}.steps,.project-story,.detail{grid-template-columns:1fr}.detail{gap:5px}summary{gap:18px}summary h3{font-size:22px}.feature{height:280px}.photo span{padding:22px;font-size:11px}.photo span b{display:none}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:260px 340px 260px;gap:12px}.gallery .wide{grid-column:span 2}.gallery .tall{grid-column:span 1}.project-story{gap:0}.project-story h3{font-size:30px}.steps{gap:25px}form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}footer{align-items:start;flex-direction:column}#large-photo{height:65vh}.lightbox-bar p{font-size:11px}.phone{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.awards{background:var(--cream)}.award-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.award-grid article{border-top:1px solid #b6c4bd;padding-top:22px}.award-year{display:block;font:48px Georgia,serif;color:var(--teal);margin-bottom:16px}.award-grid h3{font-size:25px}.award-grid p{font-size:13px;color:var(--muted)}.award-photo{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin:45px 0 0}.award-photo img{width:100%;height:440px;object-fit:contain;background:#e7e8df}.award-photo p{font-size:14px}.project-page-title{padding-bottom:50px}.project-page-title h1{color:var(--ink);font-size:clamp(52px,7vw,90px)}.project-page-title h1 em{color:var(--teal)}.project-case{padding-top:55px;border-top:1px solid var(--line)}.award-label{font-size:12px;letter-spacing:.7px;color:var(--teal);margin-bottom:28px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-grid .photo{height:330px}.project-page-title .lead{max-width:600px;color:var(--muted)}@media(max-width:700px){.award-grid,.award-photo{grid-template-columns:1fr;gap:25px}.award-photo img{height:380px}.project-grid{grid-template-columns:1fr}.project-grid .photo{height:350px}.project-page-title h1{font-size:57px}}

.trophy{height:280px;background:white;margin-bottom:24px}.trophy img{object-fit:contain;padding:12px}.trophy span{font-size:10px;padding:18px}.award-presentations{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:50px}.award-presentations figure{margin:0}.award-portrait{height:560px;background:#e7e8df}.award-portrait img{object-fit:contain}.award-presentations figcaption{padding-top:24px}.award-presentations h3{margin-bottom:10px}.award-presentations p{font-size:14px;color:var(--muted)}@media(max-width:700px){.award-presentations{grid-template-columns:1fr}.award-portrait{height:480px}}

.trade-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 28px}.trade-grid article{border-top:1px solid var(--line);padding-top:22px}.service-number{font-size:11px;letter-spacing:2px;color:var(--teal)}.trade-grid h3{font-size:25px;margin:16px 0 12px}.trade-grid p{font-size:14px;color:var(--muted);margin:0}.service-enquiry{margin:35px 0 0}@media(min-width:851px) and (max-width:1100px){header{padding:0 3%}nav{gap:16px}.brand{font-size:14px}.button.small{padding:12px}}@media(max-width:1000px){.trade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.trade-grid{grid-template-columns:1fr;gap:25px}}

.rentals{background:#eaf0ec}.rental-listing{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:50px}.rental-details>h3{font-size:36px}.rental-details>p:not(.eyebrow){font-size:15px}.rental-contact{background:white;padding:32px;align-self:start}.rental-email{display:block;color:var(--teal);text-decoration:underline;overflow-wrap:anywhere;margin-bottom:25px;font-size:14px}.rental-contact .button{width:100%}.rental-note{font-size:12px!important;color:var(--muted);margin-top:22px}.rental-photo-note{border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-style:italic}nav{gap:22px}@media(min-width:851px) and (max-width:1200px){header{padding:0 2%}.brand{font-size:12px;gap:8px}.brand img{width:48px}nav{gap:13px;font-size:12px}.button.small{padding:12px 14px}}@media(max-width:1000px){header{height:80px}#menu{display:block;background:none;border:1px solid var(--line);padding:8px 12px;font-size:12px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:25px;flex-direction:column;gap:20px}nav.open{display:flex}}@media(max-width:700px){.rental-listing{grid-template-columns:1fr;gap:25px}.rental-contact{padding:25px}.rental-details>h3{font-size:30px}}

.project-page-title .actions{flex-wrap:wrap}.haven-case figure{margin:0}.haven-case figcaption{font-size:13px;color:var(--muted);padding:14px 0 8px}.haven-feature{height:540px}.haven-feature img{object-position:center 55%}.haven-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 20px}.haven-photo{height:420px}.haven-photo img{object-fit:contain}.haven-case>.lead{max-width:650px;color:var(--muted);margin-bottom:30px}@media(max-width:900px){.haven-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.haven-feature{height:420px}}@media(max-width:550px){.haven-gallery{grid-template-columns:1fr}.haven-feature{height:300px}.haven-photo{height:460px}}

.trade-grid .service-contact{font-style:normal;border-top:1px solid var(--line);padding-top:16px;margin:22px 0 0;font-size:13px}.service-contact strong{display:block;margin-bottom:6px}.service-contact a{display:block;color:var(--teal);text-decoration:underline;overflow-wrap:anywhere;padding:3px 0}

.cottage-feature{aspect-ratio:1881/836;height:auto}.cottage-feature img{width:100%;height:auto}.project-case>.lead{color:var(--muted);max-width:680px}

.winner-badge{display:flex;align-items:center;gap:22px;padding:24px 28px;margin:0 0 32px;border:1px solid #c5a35b;border-left:5px solid #b48a38;background:linear-gradient(120deg,#faf4e5,#fffdf7);box-shadow:0 8px 24px #193b430a}.winner-star{display:grid;place-items:center;flex-shrink:0;width:76px;height:76px;border:1px solid #c5a35b;border-radius:50%;background:#193b43;color:#e8c778;font-size:49px;line-height:1;text-shadow:0 2px 8px #0004;box-shadow:0 0 0 5px #ead9b04d}.winner-kicker{display:block;font-size:11px;font-weight:700;letter-spacing:2px;color:#765617}.winner-badge strong{display:block;font:400 26px/1.3 Georgia,serif;margin:5px 0 8px}.winner-organizer{display:block;font-size:12px;color:var(--muted)}@media(max-width:550px){.winner-badge{padding:22px 18px;gap:16px;align-items:flex-start}.winner-star{width:52px;height:52px;font-size:35px}.winner-badge strong{font-size:21px}.winner-kicker{font-size:9px;letter-spacing:1.3px}}

/* Keep the home and grounds in view while cropping excess sky. */
#waterfront-retreat > .feature{height:auto;aspect-ratio:2/1}
#waterfront-retreat > .feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom}

header nav .button.small,header nav .button.small:hover{background:#fff;color:var(--ink);font-weight:700}

.rental-carousel{margin-top:30px;min-width:0}.rental-slide{margin:0}.rental-slide[hidden]{display:none}.rental-slide .photo{height:440px;background:#dce5df;touch-action:pan-y}.rental-slide img{object-fit:contain}.rental-slide figcaption{font-size:14px;padding:14px 0 0}.rental-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px}.rental-controls button{background:white;border:1px solid var(--teal);color:var(--ink);width:48px;height:48px;font-size:24px}.rental-controls button:hover{background:#dce5df}.rental-controls p{margin:0;font-size:13px}.rental-help{font-size:12px;color:var(--muted);margin-top:12px}@media(max-width:550px){.rental-slide .photo{height:310px}}

.rental-facebook{display:flex;width:48px;height:48px;align-items:center;justify-content:center;margin:0 0 16px;border-radius:50%}.rental-facebook svg{display:block}.rental-facebook:hover{opacity:.85}

.meadow-testimonial{background:var(--cream);border-left:4px solid var(--teal);padding:36px 40px;margin:0 0 45px}.meadow-testimonial blockquote{margin:0}.meadow-testimonial blockquote p{font:20px/1.8 Georgia,serif}.meadow-testimonial blockquote footer{border:0;padding:0;font-size:14px;font-weight:bold}@media(max-width:550px){.meadow-testimonial{padding:25px}.meadow-testimonial blockquote p{font-size:18px}}
