/* Cohesive typography and controls across the public site. */
body{font-family:'Manrope',Arial,sans-serif;font-weight:400}h1,h2{font-family:'Libre Baskerville',Georgia,serif;letter-spacing:-1.5px;line-height:1.2}.hero h1{font-size:clamp(44px,4.5vw,68px);letter-spacing:-2.2px;line-height:1.15}.hero-tag>span+span,.category-copy h3,.product-card h3,.gallery-links>a>span,.prose h3,.contact-phone,.home-products-heading h3{font-family:'Libre Baskerville',Georgia,serif}.headrow nav{font-weight:500}.product-card h3{font-size:19px;line-height:1.6}.eyebrow{letter-spacing:1.6px}.collection-hero h1{font-size:clamp(40px,4.1vw,61px);line-height:1.2}.gallery-heading h1{font-size:70px}.gallery-heading h1>span{line-height:1.5}.product-image,.catalogue-layout .product-image{padding:0;height:auto;aspect-ratio:4/3;background:transparent}.product-image>img{object-fit:cover;mix-blend-mode:normal;height:100%;width:100%;position:absolute;inset:0}.main-photo{padding:0;background:transparent}.main-photo img{mix-blend-mode:normal}
.catalogue-filters{display:grid;grid-template-columns:minmax(240px,1fr) minmax(210px,280px) auto;align-items:end;gap:20px;padding:22px 24px;margin:28px 0 36px;background:#f2f6f4;border:1px solid #dce7e2;border-radius:5px}.catalogue-filters label,.catalogue-filters label:not(.search-field){display:flex;flex-direction:column;align-items:stretch;gap:8px;margin:0;min-width:0;font-size:14px;font-weight:600}.catalogue-filters label>span:first-child{line-height:1.4}.catalogue-filters .search-control{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #bacdca;border-radius:3px;padding:0 16px;min-height:56px;min-width:0}.search-control>svg{width:21px;height:21px;color:#447179}.catalogue-filters .search-control:focus-within{outline:2px solid #14778c;outline-offset:2px}.catalogue-filters input[type=search]{border:0;border-radius:0;background:transparent;padding:0;margin:0;width:100%;max-width:none;min-width:0;min-height:54px;outline:none;font-size:16px;font-weight:400}.catalogue-filters select{width:100%;max-width:none;min-height:56px;margin:0;padding:12px 36px 12px 15px;border:1px solid #bacdca;border-radius:3px;background:#fff;font-size:16px;font-weight:400}.catalogue-filters>.button{min-height:56px;margin:0;padding-inline:24px;font-size:16px}.enquiry-form{padding:28px;border:1px solid #dce6e1;border-radius:5px;background:#f8faf8}.enquiry-form label{font-size:15px;font-weight:600}.enquiry-form input:not([type=checkbox]):not([type=hidden]),.enquiry-form select,.enquiry-form textarea{font-size:16px;border-color:#b9ccc8;border-radius:3px;min-height:54px;background:#fff;padding:13px 15px;margin-top:9px}.enquiry-form textarea{min-height:170px;line-height:1.65}.enquiry-form .checkbox{font-size:14px;font-weight:400}.enquiry-form .button{min-height:54px}.contact-layout{gap:70px;align-items:start}.contact-layout>div:last-child>h2{font-size:30px;margin-bottom:25px}.contact-details p{font-size:17px;max-width:470px;line-height:1.8}.contact-socials{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0 30px}.contact-socials>a{display:flex;align-items:center;gap:13px;padding:18px;border:1px solid #ccdcd6;border-radius:4px;background:#f4f8f5;min-width:0}.contact-socials>a>svg{width:29px;height:29px;color:#187c60}.contact-socials>a.facebook{background:#f1f5fa;border-color:#d6dfec}.contact-socials>a.facebook>svg{color:#31639e}.contact-socials strong{display:block;font-size:15px;font-weight:600}.contact-socials small{display:block;font-size:13px;color:#5c7277;margin-top:2px}.contact-map-section{padding:15px 0 75px}.contact-map-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.contact-map-heading h2{font-size:36px;margin-bottom:14px}.contact-map-heading p{font-size:17px;color:#526b71;margin-bottom:0}.contact-map{display:block;width:100%;height:430px;border:0;background:#edf2ed;border-radius:4px}.contact-map-heading .button{flex-shrink:0}.about-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;align-items:center;padding:25px 0 65px}.about-hero h1{font-size:clamp(43px,4.2vw,64px);margin-bottom:25px}.about-hero-copy>p{font-size:19px;line-height:1.9;color:#526b71;max-width:550px}.about-hero-photo{position:relative}.about-hero-photo>img{width:100%;height:465px;object-fit:cover}.about-hero-photo>span{display:block;font-size:14px;color:#536d73;margin-top:15px}.about-story{background:#f1f5f1;padding:65px 0}.about-story>.wrap{display:grid;grid-template-columns:1fr 1.6fr;gap:70px}.about-story h2{font-size:39px}.about-story-copy{font-size:18px;color:#526b70;line-height:1.9}.about-visit{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-block:65px;align-items:center}.about-visit h2{font-size:39px}.about-visit p{font-size:17px;color:#526b70;line-height:1.9}.about-video{display:block;position:relative;color:#fff;background:#143640}.about-video>img{width:100%;height:390px;object-fit:cover;filter:brightness(.76)}.about-video>span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;font-size:18px;font-weight:600}.about-video svg{width:57px;height:57px;border:1px solid #ffffffa0;border-radius:50%;padding:15px}.about-gallery-section{padding:20px 0 70px}.about-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.about-photo-grid a{display:block;overflow:hidden;aspect-ratio:4/3}.about-photo-grid img{width:100%;height:100%;object-fit:cover}.about-location{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:0 0 65px}.about-location>div{background:#f0f6f4;padding:35px}.about-location h2{font-size:32px}.about-location p,.about-location address{font-size:17px;color:#526b70}.testimonial-heading{padding:35px 0 50px;display:grid;grid-template-columns:1.35fr 1fr;gap:50px;align-items:center}.testimonial-heading h1{font-size:clamp(42px,4.3vw,65px)}.testimonial-heading p{font-size:18px;color:#526b70;line-height:1.8;margin-bottom:0}.testimonial-heading-note{border-left:3px solid #2ca4bf;padding-left:28px}.testimonial-heading-note>span{color:#946629;letter-spacing:5px;font-size:22px;display:block;margin-bottom:16px}.testimonial-heading-note strong{font-family:'Libre Baskerville',Georgia,serif;font-size:24px;font-weight:400;display:block;line-height:1.5}.testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding-bottom:75px}.testimonial-card{padding:30px;background:#f7f9f6;border:1px solid #dfe8e0;border-radius:4px;margin:0;display:flex;flex-direction:column;min-width:0}.testimonial-card .stars{font-size:16px;letter-spacing:4px;margin-bottom:22px}.testimonial-card blockquote{margin:0 0 25px;font-size:16px;color:#4c656c;line-height:1.9;flex:1}.testimonial-card figcaption{display:flex;align-items:center;gap:14px;border-top:1px solid #dce5dd;padding-top:21px}.review-initials{display:grid;place-items:center;width:46px;height:46px;flex-shrink:0;border-radius:50%;background:#e4eeea;color:#256c78;font-size:15px;font-weight:600}.testimonial-card figcaption strong{display:block;font-size:15px;font-weight:600}.testimonial-card figcaption small{display:block;font-size:14px;color:#61767b;margin-top:3px}
@media(max-width:1050px){.catalogue-filters{grid-template-columns:minmax(220px,1fr) minmax(190px,230px) auto;gap:15px;padding:20px}.about-hero{gap:35px}.about-story>.wrap,.about-visit{gap:40px}.about-hero-photo>img{height:420px}.contact-layout{gap:35px}.contact-socials{grid-template-columns:1fr}.enquiry-form{padding:22px}.gallery-heading h1{font-size:60px}.about-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:750px){.catalogue-filters{grid-template-columns:minmax(0,1fr) auto}.catalogue-search{grid-column:1/-1}.about-hero,.about-story>.wrap,.about-visit,.about-location,.testimonial-heading{grid-template-columns:1fr;gap:28px}.about-hero h1{font-size:43px}.about-story h2,.about-visit h2{font-size:34px}.about-story,.about-visit{padding-block:40px}.about-visit .about-video{order:2}.about-hero-photo>img{height:360px}.about-hero{padding-bottom:40px}.contact-map-heading{display:block}.contact-map-heading .button{margin-top:22px}.testimonial-heading{padding-top:15px}.testimonial-heading-note{padding-left:23px}.testimonial-grid{gap:18px}.testimonial-card{padding:22px}.testimonial-card blockquote{font-size:16px}.contact-socials{grid-template-columns:1fr 1fr}.contact-map{height:350px}}
@media(max-width:600px){.hero h1{font-size:44px}.collection-hero h1{font-size:39px}.gallery-heading h1{font-size:50px}.gallery-heading h1>span{font-size:25px}.headrow nav{font-size:16px}.catalogue .section-top h1{font-size:34px;line-height:1.35}.catalogue-filters{padding:18px 14px;gap:16px 12px;margin-top:22px}.catalogue-filters label,.catalogue-filters label:not(.search-field){font-size:14px;gap:8px}.catalogue-filters select{font-size:15px;min-width:0;padding-left:12px}.catalogue-filters input[type=search]{font-size:16px}.catalogue-filters>.button{padding:14px 17px;font-size:15px;gap:10px}.catalogue-filters>.button svg{width:17px}.catalogue-filters .search-control{padding-inline:13px}.product-card h3{font-size:17px;line-height:1.6}.contact-socials{grid-template-columns:1fr}.contact-socials>a{padding:15px}.contact-layout>div:last-child>h2{font-size:28px}.enquiry-form{padding:20px 16px}.contact-map-section{padding-bottom:45px}.contact-map-heading h2{font-size:31px}.contact-map{height:330px}.about-hero h1{font-size:38px;line-height:1.3}.about-hero-copy>p{font-size:18px}.about-hero-photo>img{height:300px}.about-story-copy,.about-visit p{font-size:17px}.about-video>img{height:280px}.about-photo-grid{grid-template-columns:1fr 1fr;gap:12px}.about-gallery-section{padding-bottom:40px}.about-location{padding-bottom:40px}.about-location>div{padding:25px}.about-location h2{font-size:29px}.testimonial-heading h1{font-size:38px}.testimonial-heading p{font-size:17px}.testimonial-heading-note strong{font-size:22px}.testimonial-grid{grid-template-columns:1fr;padding-bottom:45px}.testimonial-card{padding:25px}.testimonial-card blockquote{font-size:16px}}
.facebook-updates{background:#eef4f6;padding:70px 0}.facebook-updates-layout{display:grid;grid-template-columns:1fr minmax(300px,500px);gap:90px;align-items:center}.facebook-updates h2{font-size:44px}.facebook-updates-copy>p{font-size:18px;color:#536b73;line-height:1.85;max-width:510px}.facebook-updates .eyebrow{display:flex;align-items:center;gap:10px}.facebook-updates .eyebrow svg{margin:0;width:22px;height:22px}.facebook-updates-copy>.facebook-feed-note{font-size:14px;margin:24px 0 0;max-width:430px}.facebook-feed{width:100%;max-width:500px;min-height:590px;background:#fff;border:1px solid #d9e3e8;border-radius:5px;overflow:hidden;justify-self:end}.facebook-placeholder{min-height:588px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 30px}.facebook-placeholder>svg{width:52px;height:52px;color:#31639e;margin-bottom:25px}.facebook-placeholder h3{font-family:'Libre Baskerville',Georgia,serif;font-size:25px;line-height:1.6}.facebook-placeholder p{font-size:16px;color:#536c75;line-height:1.8}.facebook-placeholder .under-link{font-size:14px;margin-top:24px}.main-photo{cursor:zoom-in;overflow:hidden}.main-photo img{transition:transform .25s ease}.photo-thumbs a{cursor:zoom-in}
@media(hover:hover){.main-photo:hover img{transform:scale(1.035)}}
@media(max-width:1000px){.facebook-updates-layout{gap:35px}.facebook-updates h2{font-size:35px}}
@media(max-width:750px){.facebook-updates{padding-block:40px}.facebook-updates-layout{grid-template-columns:1fr;gap:30px}.facebook-feed{justify-self:center}.facebook-updates h2{font-size:33px}.facebook-updates-copy>p{font-size:17px}.facebook-placeholder{padding:30px 22px}.facebook-placeholder h3{font-size:23px}.facebook-updates-copy>.facebook-feed-note{font-size:14px}}
.product-detail>*,.contact-layout>*,.form-grid>*,.catalogue-filters>*,.about-hero>*,.testimonial-heading>*,.facebook-updates-layout>*{min-width:0}.enquiry-form{max-width:100%;min-width:0}.enquiry-form select{width:100%;max-width:100%;min-width:0;text-overflow:ellipsis}.enquiry-form input,.enquiry-form textarea{min-width:0}.product-enquiry{min-width:0}.cf-turnstile{max-width:100%}.enquiry-form .checkbox span{min-width:0;overflow-wrap:anywhere}.product-summary,.product-info,.prose{overflow-wrap:anywhere}
@media(max-width:400px){.product-enquiry{padding:20px 12px}.product-enquiry .enquiry-form{padding:18px 12px}.enquiry-form select{font-size:15px}.contact-layout .enquiry-form{padding:18px 12px}.cookie-panel label{font-size:14px}.topbar{font-size:12px}.topbar .wrap{gap:6px}}
.facebook-public-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.facebook-public-photo{position:relative;display:block;overflow:hidden}.facebook-public-photo>img{width:100%;height:370px;object-fit:cover}.facebook-public-photo>span{position:absolute;bottom:0;left:0;right:0;padding:19px 22px;background:#fff;display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600}.facebook-public-photo>span>svg:last-child{margin-left:auto}.facebook-public-photo>span>svg:first-child{color:#31639e}
@media(max-width:750px){.facebook-public-layout{grid-template-columns:1fr;gap:30px}.facebook-public-photo>img{height:300px}.facebook-public-photo>span{padding:16px;font-size:14px}.facebook-public-photo>span svg{width:21px;height:21px}}

/* Product: overview, details and a full-width enquiry section. */
.product-detail{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:48px 60px;padding-bottom:70px}
.product-photos,.product-summary{min-width:0}.product-summary h1{font-size:clamp(32px,3vw,47px);line-height:1.3}.product-summary .price{margin:20px 0}.product-intro{font-size:18px;line-height:1.85;color:#526b71;margin:24px 0}.product-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.product-actions .button{margin:0;font-size:15px}.product-photos .main-photo img{height:auto;max-height:570px;width:100%;object-fit:contain}.product-photos .main-photo{display:block;overflow:hidden}.product-info{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:70px;border-top:1px solid #dce6e1;padding:45px 0 0}.product-description{min-width:0}.product-description h2,.product-practical h2{font-size:29px;margin-bottom:24px}.product-description p{font-size:17px;line-height:1.9}.product-practical{padding:28px;background:#f3f7f4;align-self:start;min-width:0}.product-practical details:last-child{margin-bottom:0}.product-enquiry{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);align-items:start;gap:50px;padding:38px;background:#eef4f1;border:1px solid #dce6e1}.product-enquiry-intro h2{font-size:38px;margin:15px 0 20px}.product-enquiry-intro p{font-size:17px;line-height:1.85;color:#526b71}.product-enquiry-intro .under-link{margin-top:20px}.product-enquiry .enquiry-form{padding:26px;margin:0;background:#fff}.product-enquiry .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.product-enquiry .enquiry-form textarea{min-height:140px}.product-enquiry-intro{min-width:0}
@media(max-width:1000px){.product-detail{gap:35px}.product-summary h1{font-size:34px}.product-info{gap:35px}.product-enquiry{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:28px;padding:28px}.product-enquiry .enquiry-form{padding:20px}}
@media(max-width:760px){.product-detail{grid-template-columns:minmax(0,1fr);gap:30px;padding-bottom:40px}.product-summary h1{font-size:34px}.product-info{grid-template-columns:minmax(0,1fr);gap:25px;padding-top:30px}.product-enquiry{grid-template-columns:minmax(0,1fr);padding:22px 18px;gap:25px}.product-enquiry .enquiry-form{padding:18px}.product-enquiry .form-grid{grid-template-columns:minmax(0,1fr);gap:0}.product-enquiry-intro h2{font-size:32px}.product-practical{padding:22px}.product-actions{flex-direction:column;align-items:stretch}.product-actions .button{justify-content:center}.product-intro{font-size:17px}}
/* Dated news archive, distinct from the product catalogue. */
.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.news-card{min-width:0;border:1px solid #dce6e1;background:#fff}.news-card-photo{display:block;aspect-ratio:16/10;overflow:hidden;background:#edf3ef}.news-card-photo img{display:block;width:100%;height:100%;object-fit:cover}.news-card-copy{padding:28px}.news-card time,.news-article time{display:block;font-size:14px;color:#5c747b;margin-bottom:15px}.news-card h3{font-family:'Libre Baskerville',Georgia,serif;font-size:25px;line-height:1.55;margin-bottom:20px}.news-card-copy p{font-size:16px;color:#526b71}.news-card .under-link{font-size:15px}.news-archive h1{font-size:clamp(36px,4vw,58px)}.news-archive-intro{max-width:720px;font-size:18px;color:#526b71;margin:24px 0 40px}.news-article{padding-block:25px 65px;max-width:1000px}.news-article h1{font-size:clamp(34px,4vw,55px);margin-block:20px}.news-archive-note{font-size:15px;color:#526b71;padding:16px 20px;border-left:3px solid #2ca4bf;background:#f2f6f3;margin-bottom:35px}.news-article .legacy img{object-fit:cover}.news-article>.under-link{margin-top:30px}@media(max-width:700px){.news-grid{grid-template-columns:minmax(0,1fr);gap:24px}.news-card-copy{padding:22px}.news-card h3{font-size:23px}.news-article .legacy img{max-width:100%;height:auto}}
