:root{--ink:#102f23;--green:#5bb80d;--dark:#153e2c;--cream:#faf8f2;--muted:#56655b;--orange:#f47c16}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.topbar{background:var(--dark);color:white;text-align:center;font-size:12px;padding:11px 5%}.topbar span{float:right;letter-spacing:2px;font-size:10px}header{height:100px;display:flex;align-items:center;gap:30px;padding:0 5%;background:var(--cream);position:sticky;top:0;z-index:20;border-bottom:1px solid #e5e7dd}.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:25px;line-height:.94;letter-spacing:-1.2px;white-space:nowrap}.brand small{display:block;font-size:20px}.brand-icon{font-size:48px;color:#66b811;display:inline-flex;align-items:center;justify-content:center;transform:rotate(-15deg);font-weight:900}nav{display:flex;gap:26px;margin-left:auto;font-size:13px}nav a:hover{color:#489900}.phone{font-size:15px;font-weight:bold;white-space:nowrap}.btn{display:inline-flex;gap:25px;align-items:center;justify-content:center;border:0;border-radius:50px;background:var(--green);color:var(--ink);padding:18px 25px;font-weight:700;font-size:14px;transition:transform .2s,background .2s;line-height:1.1}.btn:hover{background:#70ce20;transform:translateY(-2px)}.btn b{font-size:19px;font-weight:400}.secondary{border:1px solid #bdc7b8;background:#fff9}.secondary:hover{background:#fff}.menu{display:none}.hero{position:relative;min-height:655px;overflow:hidden;background:#f0eadc}.hero-image{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#faf8f2 0%,#faf8f2f5 24%,#faf8f2b0 40%,transparent 62%)}.hero-copy{position:relative;width:58%;padding:60px 0 46px 5%;z-index:1}.eyebrow{font-size:10px;font-weight:700;letter-spacing:3px;line-height:1.6;margin:0 0 23px}.hero .eyebrow:after{content:'';display:block;background:var(--orange);width:35px;height:3px;margin-top:14px}h1{font-size:clamp(55px,5.8vw,87px);letter-spacing:-4.5px;line-height:.99;margin:0 0 25px;font-weight:800}em{font-style:normal;color:#509f0e}.intro{max-width:420px;font-size:17px;line-height:1.65;margin:0 0 27px}.actions{display:flex;gap:12px;flex-wrap:wrap}.micro{font-size:12px;margin-top:23px}.micro i{font-style:normal;color:#53a612;margin:0 15px}.price{position:absolute;right:5%;top:35px;background:#fffdf1;padding:21px 27px;border-radius:15px;display:flex;flex-direction:column;font-weight:700;box-shadow:0 10px 25px #20371c10;transform:rotate(3deg)}.price strong{font-size:61px;letter-spacing:-4px;line-height:1.1}.price>span{text-align:center;font-size:13px}.price small{background:var(--orange);color:#fff;border-radius:50px;text-align:center;padding:6px;margin-top:9px;font-size:12px}.hero-note{position:absolute;bottom:22px;right:5%;font-size:11px;letter-spacing:1px;color:#fff;background:#153e2caa;border-radius:25px;padding:9px 14px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 5%;border-bottom:1px solid #e5e7dd;gap:25px}.benefits>div{display:flex;align-items:center;gap:20px;padding-right:25px;border-right:1px solid #d9ded1}.benefits>div:last-child{border:0}.benefits span{font-size:40px;color:#327b23}.benefits>div:nth-child(even) span{color:var(--orange)}.benefits p{font-size:13px;line-height:1.5;font-weight:700;margin:0}.section{padding:85px 5%;max-width:1550px;margin:auto}h2{font-size:clamp(34px,3.7vw,54px);letter-spacing:-2.3px;line-height:1.07;margin:0 0 24px;font-weight:800}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:24px}.section-top>p{font-size:14px;line-height:1.7;color:var(--muted);padding-bottom:10px}.filters{display:flex;gap:10px;margin:0 0 27px;flex-wrap:wrap}.filters button{background:transparent;border:1px solid #d7ddcf;border-radius:40px;padding:10px 20px;color:var(--ink);font-size:12px}.filters button.active{background:var(--dark);color:#fff;border-color:var(--dark)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.cards article{border:1px solid #e1e5d8;border-radius:13px;overflow:hidden;background:#fff;transition:transform .25s}.cards article:hover{transform:translateY(-5px)}.card-img{height:255px;position:relative;overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.cards article:hover img{transform:scale(1.035)}.card-img>span{position:absolute;bottom:15px;left:17px;background:#ffffffe8;border-radius:30px;font-size:8px;font-weight:700;letter-spacing:1.3px;padding:9px 13px}.card-copy{padding:25px}h3{font-size:23px;letter-spacing:-.6px;margin:0 0 12px}.card-copy p{font-size:14px;line-height:1.65;color:var(--muted);max-width:290px;min-height:68px}.text-link{display:inline-flex;align-items:center;gap:25px;font-weight:700;font-size:13px;padding:0;border:0;background:none;color:var(--ink)}.text-link span{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#e2f0d0;width:35px;height:35px;font-size:20px}.image-note{font-size:10px;color:var(--muted);margin-top:20px}.how{background:#edf2e6;position:relative;overflow:hidden}.how:after{content:'◎';position:absolute;right:-55px;top:0;font-size:440px;color:#dfe9d4;line-height:1;pointer-events:none}.how>.section{position:relative;z-index:1}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin:40px 0}.steps>div{padding-right:35px;border-right:1px solid #d0d9c8}.steps>div:last-child{border:0}.steps span{font-size:15px;display:inline-flex;width:45px;height:45px;border-radius:50%;align-items:center;justify-content:center;background:#d9edbd;margin-bottom:23px;font-weight:bold}.steps h3{font-size:20px}.steps p{font-size:14px;line-height:1.75;color:#4e5c50;max-width:300px}.areas{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.areas>div>p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted);max-width:440px}.area-card{background:#f0ede2;border-radius:18px;padding:45px;position:relative;overflow:hidden}.area-card h3{font-size:35px;margin-top:25px;line-height:1.15}.area-card p{font-size:15px;line-height:1.7}.towns{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 40px}.towns span{border:1px solid #cbd0bf;border-radius:30px;padding:8px 13px;font-size:12px}.area-card a{font-size:12px}.area-card strong{display:block;font-size:25px;margin-top:9px;letter-spacing:-1px}label{font-size:12px;font-weight:700;display:block;margin:20px 0 8px}input,select,textarea{width:100%;border:1px solid #cbd2c1;border-radius:8px;background:#fff;padding:14px;color:var(--ink);margin-top:9px;font-size:15px}textarea{resize:vertical}.postcode-input{display:flex;align-items:center;gap:10px}.postcode-input input{margin:0;max-width:230px;text-transform:uppercase}.postcode-input .btn{white-space:nowrap}.areas #coverage-result{font-size:12px;min-height:35px;margin:12px 0}.faq{border-top:1px solid #e0e5d7;display:grid;grid-template-columns:1fr 1.5fr;gap:90px}details{border-bottom:1px solid #dce2d3;padding:21px 0}summary{font-size:16px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';font-weight:400;color:#509f0e;font-size:25px;line-height:18px}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);line-height:1.8;padding-right:15px}.cta{background:var(--dark);color:var(--cream);padding:55px 8%;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:64px;margin-bottom:13px}.cta em{color:#a3df63}.cta p{font-size:14px}.cta .eyebrow{font-size:9px;color:#bbd2ad}.cta .btn{padding:22px 30px}footer{padding:50px 5% 20px;display:grid;grid-template-columns:1fr 1fr;gap:30px}footer>div:not(.footer-bottom){display:flex;flex-direction:column;align-items:flex-end;gap:14px;font-size:13px}footer>p{font-size:11px;line-height:1.8;max-width:600px;color:var(--muted)}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #dde2d5;padding-top:20px;font-size:10px;color:var(--muted)}dialog{border:0;border-radius:18px;padding:40px;max-width:550px;width:calc(100% - 30px);max-height:90vh;color:var(--ink);background:var(--cream);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#0c231bd9;backdrop-filter:blur(5px)}dialog h2{font-size:40px}dialog p{font-size:14px;line-height:1.65}dialog .eyebrow{font-size:9px}.close{position:absolute;right:18px;top:14px;font-size:30px;border:0;background:none;color:var(--ink);width:35px;height:35px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}label span{font-weight:400;color:var(--muted)}form small{display:block;font-size:10px;line-height:1.6;margin-top:13px;color:var(--muted)}#enquiry>.btn{margin-top:15px;width:100%}#prepared>.btn{margin:15px 4px 0 0}.prepared-heading{font-weight:bold}body:has(dialog[open]){overflow:hidden}[hidden]{display:none!important}@media(min-width:1600px){.hero-copy{padding-left:max(5%,calc((100% - 1390px)/2))}.hero{min-height:720px}}@media(max-width:1150px){header{gap:18px;padding:0 4%}.header-book{display:none}nav{gap:22px}.hero-copy{width:62%}.hero .btn{font-size:12px;padding:16px 19px;gap:12px}.hero{min-height:620px}h1{font-size:70px}.areas{gap:45px}.card-img{height:215px}.brand{font-size:23px}.brand small{font-size:18px}}@media(max-width:760px){.topbar{font-size:10px}.topbar span{display:none}header{height:78px;padding:0 5%;gap:15px}.brand{font-size:21px}.brand small{font-size:17px}.brand-icon{font-size:38px}.menu{display:block;margin-left:auto;background:transparent;border:1px solid #d4dccc;border-radius:30px;font-size:12px;padding:10px 13px;color:var(--ink)}nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--cream);padding:25px 5%;border-bottom:1px solid #d7dfcf;flex-direction:column;font-size:15px}nav.open{display:flex}.phone{font-size:21px}.phone span{display:none}.hero{min-height:850px}.hero-image{top:auto;bottom:0;height:54%;object-position:65% center}.hero-shade{background:linear-gradient(180deg,#faf8f2 0%,#faf8f2 44%,#faf8f2dd 49%,transparent 64%)}.hero-copy{width:100%;padding:35px 6% 0}.eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:20px}h1{font-size:59px;letter-spacing:-3px}.intro{font-size:14px;line-height:1.6;max-width:350px;margin-bottom:20px}.actions{gap:9px}.hero .btn{font-size:11px;padding:15px 18px}.micro{font-size:11px;margin-top:17px}.price{top:auto;bottom:260px;right:6%;padding:12px 17px}.price strong{font-size:40px;letter-spacing:-2px}.price>span{font-size:11px}.price small{font-size:10px;padding:4px}.hero-note{font-size:9px}.benefits{grid-template-columns:1fr 1fr;gap:20px;padding:25px 6%}.benefits>div{gap:15px;border:0;padding:0}.benefits span{font-size:31px}.benefits p{font-size:11px}.section{padding:55px 6%}h2{font-size:37px;letter-spacing:-1.6px}.section-top{display:block}.section-top>p{font-size:13px}.section-top>p br{display:none}.filters{gap:7px}.filters button{padding:9px 15px;font-size:11px}.cards{grid-template-columns:1fr;gap:22px}.card-img{height:250px}.card-copy{padding:23px}.card-copy p{min-height:0;max-width:100%}.steps{grid-template-columns:1fr;gap:15px;margin-top:30px}.steps>div{border:0;position:relative;padding-left:65px;padding-right:0}.steps span{position:absolute;left:0;top:0}.steps h3{font-size:19px;margin-top:6px}.steps p{max-width:100%;font-size:13px}.how:after{font-size:300px;right:-130px;top:auto;bottom:-30px}.areas{grid-template-columns:1fr;gap:30px}.area-card{padding:30px}.area-card h3{font-size:30px}.postcode-input .btn{padding:17px 18px;font-size:12px;gap:10px}.faq{grid-template-columns:1fr;gap:0}.faq h2 br{display:none}summary{font-size:14px}.cta{display:block;padding:45px 6%}.cta h2{font-size:55px}.cta .btn{margin-top:15px;padding:19px 25px}footer{padding:35px 6% 20px;grid-template-columns:1fr;gap:22px}footer>div:not(.footer-bottom){align-items:flex-start;font-size:12px}.footer-bottom{gap:20px;line-height:1.6}dialog{padding:30px 23px}dialog h2{font-size:36px}.form-row{gap:10px}#prepared>.btn{font-size:12px;padding:15px 18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:760px){.hero{min-height:800px}.hero-image{height:auto;aspect-ratio:3/2;object-fit:contain}.hero-shade{background:linear-gradient(180deg,#faf8f2 0%,#faf8f2 55%,#faf8f200 70%)}.price{bottom:200px}.hero-note{bottom:10px}}@media(max-width:420px){.hero{min-height:790px}.price{bottom:175px}.hero-note{font-size:8px}}
.brand-mascot{width:72px;height:54px;object-fit:contain}.brand{gap:9px}@media(max-width:760px){.brand-mascot{width:55px;height:44px}.brand{font-size:19px}.brand small{font-size:16px}}
/* SEO and mobile usability refinements */
.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:var(--dark);color:white;padding:14px 20px;border-radius:8px}.skip-link:focus{top:10px}.service-heading{font-size:14px;font-weight:700;line-height:1.5;margin:0 0 16px}.contact-options{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0 20px}.contact-options .btn{font-size:13px;padding:16px 20px}input,select,textarea{font-size:16px}.menu,.close{min-width:44px;min-height:44px}.phone{display:inline-flex;align-items:center;min-height:44px;min-width:44px;justify-content:center}.filters button{min-height:44px}.text-link{min-height:44px}summary{min-height:44px;align-items:center}.image-note{font-size:12px;line-height:1.6}form small,footer>p{font-size:12px}.footer-bottom{font-size:12px}.card-img>span{font-size:10px}.product-page{max-width:1050px}.product-page h1{font-size:clamp(39px,5vw,68px);letter-spacing:-2px;line-height:1.08;margin-top:25px}.product-page .eyebrow{margin-top:35px}.product-page .intro{max-width:780px}.product-image{width:100%;height:auto;max-height:450px;object-fit:cover;border-radius:15px}.product-page section{margin-top:45px}.product-page h2{font-size:30px}.product-page p{line-height:1.8;max-width:800px}.product-page>p{font-size:16px}
@media(max-width:760px){.hero{min-height:0;display:flex;flex-direction:column;padding-bottom:0}.hero-copy{padding:30px 6% 20px;width:100%;order:0}.hero-image{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;order:1}.hero-shade{display:none}.price{top:auto;bottom:40px;right:5%;padding:10px 14px;z-index:2}.price strong{font-size:35px}.hero-note{display:none}.hero h1{font-size:clamp(44px,12vw,59px)}.service-heading{font-size:13px;max-width:300px}.hero .intro{font-size:16px}.hero .btn{font-size:13px;min-height:48px;padding:15px 18px}.hero .eyebrow{font-size:10px;letter-spacing:1.8px}.hero .micro{font-size:12px}.benefits p{font-size:13px}.filters button{font-size:13px}.section-top>p,.steps p{font-size:15px}.menu{padding:10px 13px}.topbar{font-size:12px}.form-row{grid-template-columns:1fr}.contact-options{flex-direction:column}.contact-options .btn{width:100%}.postcode-input input{min-width:0;flex:1}.postcode-input .btn{min-height:48px}.card-copy p{font-size:16px}.brand{flex-shrink:1}.brand-mascot{width:48px}header{gap:8px}.footer-bottom{flex-wrap:wrap}dialog p{font-size:15px}dialog label{font-size:14px}}
@media(max-width:360px){.brand{font-size:17px}.brand small{font-size:14px}.brand-mascot{width:38px}.menu{font-size:11px}.hero .actions{flex-direction:column}.hero .actions .btn{width:100%}.postcode-input{flex-direction:column;align-items:stretch}.postcode-input input{max-width:none}.price{bottom:15px}}
.gallery-intro{padding-bottom:40px}.gallery-intro h1{font-size:clamp(43px,5.5vw,78px);line-height:1.05;letter-spacing:-3px;margin-top:25px}.gallery-intro .eyebrow{margin-top:30px}.gallery-intro .intro{max-width:740px;font-size:18px}.gallery-tags{display:flex;gap:10px;flex-wrap:wrap}.gallery-tags span{font-size:12px;padding:10px 15px;background:#e7efdc;border-radius:30px}.room-section{padding-top:30px;padding-bottom:35px}.room-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.room-tile{position:relative;display:block;border-radius:14px;overflow:hidden;background:#e5e7dd}.room-tile>img{height:300px;width:100%;object-fit:cover;transition:transform .3s}.room-tile:hover>img{transform:scale(1.03)}.room-tile>span{position:absolute;bottom:0;left:0;right:0;padding:40px 15px 18px;background:linear-gradient(transparent,#102f23ed);color:white;font-weight:bold;font-size:17px}.room-tile small{display:block;font-size:12px;font-weight:normal;margin-top:7px}.gallery-section{padding-top:35px}.gallery-controls{display:grid;grid-template-columns:1fr 1fr 1.5fr auto;gap:16px;align-items:end;padding:25px;background:#eef2e6;border-radius:14px}.gallery-controls label{margin:0;font-size:13px}.gallery-controls input,.gallery-controls select{height:49px;min-width:0}.gallery-controls .btn{height:49px}.laminate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.laminate-card{background:white;border:1px solid #dde3d3;border-radius:13px;overflow:hidden;scroll-margin-top:120px}.swatch-button{padding:0;border:0;background:#eee;display:block;position:relative;width:100%;min-height:150px;color:var(--ink)}.swatch-button img{width:100%;height:150px;object-fit:cover;display:block}.swatch-button>span{position:absolute;bottom:12px;right:12px;font-size:12px;border-radius:30px;padding:8px 12px;background:#fffffff0}.laminate-copy{padding:23px}.laminate-copy .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:10px}.laminate-copy h3{font-size:23px}.laminate-copy>p:not(.eyebrow){font-size:14px;line-height:1.7}.product-code{display:flex;justify-content:space-between;align-items:center;font-weight:bold}.product-code span{font-size:12px;background:#edf2e6;padding:3px 9px;border-radius:20px}.order-note{color:#427d21}.gallery-help{background:#edf2e6;max-width:none}.gallery-help>p{max-width:700px;line-height:1.8}#result-count{font-size:13px;margin:22px 0}#finish-dialog{max-width:760px}#finish-image{width:100%;height:180px;object-fit:cover;border-radius:8px;margin:15px 0 25px}#finish-room{width:100%;max-height:420px;object-fit:contain;border-radius:8px;margin:15px 0}#finish-dialog h2{font-size:36px}#finish-dialog .actions{margin-top:15px}#finish-spec{background:#e9efdf;padding:14px;border-radius:8px;font-size:14px}
@media(max-width:950px){.room-grid{grid-template-columns:1fr 1fr}.laminate-grid{grid-template-columns:1fr 1fr}.gallery-controls{grid-template-columns:1fr 1fr}.room-tile>img{height:280px}}
@media(max-width:540px){.gallery-intro h1{letter-spacing:-2px}.gallery-intro .intro{font-size:16px}.gallery-tags{gap:7px}.gallery-tags span{font-size:11px;padding:9px 12px}.room-grid{gap:12px}.room-tile>img{height:220px}.room-tile>span{font-size:14px;padding:35px 12px 14px}.room-tile small{font-size:11px}.gallery-controls{grid-template-columns:1fr;padding:20px}.gallery-controls label{font-size:14px}.gallery-controls .btn{width:100%}.laminate-grid{grid-template-columns:1fr}.swatch-button img{height:170px}.laminate-copy{padding:22px}.laminate-copy>p:not(.eyebrow){font-size:15px}#finish-dialog h2{font-size:29px}#finish-image{height:140px}.room-section .image-note{font-size:12px}}
