:root{--ink:#183d35;--cream:#f5f1e8;--paper:#fcfaf5;--gold:#b39561;--muted:#59645c;--line:#d7d9cc;--sans:'DM Sans',Arial,sans-serif;--serif:'Cormorant Garamond',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:22px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}h1,h2,h3,p,figure,dl{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.01;letter-spacing:-.035em}h1 em,h2 em,h3 em{font-weight:500}h2{font-size:clamp(2.9rem,4.8vw,5rem)}h3{font-size:2.35rem}a{color:inherit}img{display:block;width:100%;height:auto}button{font:inherit;cursor:pointer;color:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #bc6b28;outline-offset:5px}[hidden]{display:none!important}.skip{position:absolute;top:-70px;left:20px;z-index:30;background:white;padding:12px}.skip:focus{top:10px}.announcement{display:flex;justify-content:center;align-items:center;gap:26px;background:var(--ink);color:var(--cream);padding:9px 20px;font-size:.68rem;letter-spacing:.15em}.announcement a{text-decoration:none;letter-spacing:.04em;color:#e9d5ac}.header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 5vw;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;line-height:1}.brand>span{font:600 1.75rem/.9 var(--serif);letter-spacing:.12em}.brand small{font-size:.6rem;letter-spacing:.5em;padding-left:.5em;margin-top:10px}.header nav{display:flex;align-items:center;gap:26px}.header nav a{text-decoration:none;font-size:.78rem}.header nav a:hover,.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}.header-call{display:flex;flex-direction:column;font-size:.7rem;text-decoration:none;border-left:1px solid var(--line);padding-left:23px;line-height:1.5}.header-call strong{font-weight:500;font-size:.95rem}.menu-toggle{display:none}.mobile-nav{padding:10px 6vw 20px;background:var(--cream)}.mobile-nav a{display:block;padding:10px 0;text-decoration:none}.hero{display:grid;grid-template-columns:1fr 1.13fr;min-height:630px}.hero-copy{display:flex;align-items:flex-start;flex-direction:column;padding:67px 4vw 31px 5vw;background:var(--cream)}.eyebrow{font-size:.65rem;letter-spacing:.17em;font-weight:600;margin-bottom:21px;line-height:1.6}.hero h1{font-size:clamp(4.6rem,7.3vw,7.5rem);line-height:.92;margin:4px 0 29px}.hero h1 em{color:#587254}.hero-intro{font-size:.95rem;color:var(--muted);max-width:420px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:31px}.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;padding:15px 24px;min-height:50px;text-decoration:none;font-size:.78rem;font-weight:500;border:1px solid transparent;line-height:1.4}.primary{background:var(--ink);color:var(--paper)}.primary:hover{background:#2e5448}.light{background:var(--cream);color:var(--ink)}.light:hover{background:white}.text-link{font-size:.8rem;font-weight:500;text-decoration:underline;text-underline-offset:6px}.hero-foot{display:flex;justify-content:space-between;gap:15px;width:100%;margin-top:auto;padding-top:44px;font-size:.6rem;letter-spacing:.09em}.hero-image{position:relative;min-width:0;overflow:hidden;background:#ced0c5}.hero-image img{height:100%;object-fit:cover;object-position:center}.hero-image figcaption,.image-caption{position:absolute;bottom:16px;left:18px;max-width:calc(100% - 36px);padding:5px 9px;font-size:.6rem;color:white;background:rgba(24,61,53,.86);line-height:1.5}.intro-strip{display:flex;justify-content:space-between;gap:20px;padding:26px 5vw;border-bottom:1px solid var(--line);font-size:.73rem}.intro-strip span:not(:first-child){border-left:1px solid var(--line);padding-left:26px}.section{padding:82px 5vw;max-width:1650px;margin:auto}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:43px}.section-heading>p{max-width:350px;color:var(--muted);font-size:.9rem}.pool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.pool-card{min-width:0;background:var(--cream)}.pool-card-image{position:relative;display:block;overflow:hidden}.pool-card-image img{aspect-ratio:1.48;object-fit:cover;transition:transform .4s}.pool-card-image:hover img{transform:scale(1.02)}.pool-number{position:absolute;top:18px;left:20px;color:white;text-shadow:0 1px 14px #183d35;font:500 3.3rem/1 var(--serif)}.pool-number small{font:.65rem var(--sans);margin-left:4px;letter-spacing:.1em}.pool-body{padding:28px 27px}.pool-body .eyebrow{margin-bottom:12px;font-size:.57rem}.pool-body h3{font-size:2.3rem;min-height:74px;margin-bottom:18px}.pool-body>p:not(.eyebrow){font-size:.83rem;color:var(--muted);min-height:82px}.pool-specs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;gap:10px;margin:21px 0}.pool-specs dt{font-size:.6rem;color:var(--muted)}.pool-specs dd{margin:4px 0 0;font-size:.95rem;white-space:nowrap}.pool-price{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.pool-price small{display:block;font-size:.6rem;color:var(--muted)}.pool-price strong{font:500 2rem/1.3 var(--serif)}.pool-price a{font-size:.68rem;white-space:nowrap;text-underline-offset:5px}.price-note,.small-note{font-size:.72rem;color:var(--muted);margin-top:25px;max-width:1050px}.spring-sale{display:grid;grid-template-columns:.7fr 1.3fr;background:var(--ink);color:var(--cream);padding:57px 7vw;gap:70px}.sale-season{border-right:1px solid #496157;display:flex;flex-direction:column;justify-content:center;gap:22px}.sale-season>span{font-size:.6rem;letter-spacing:.16em}.sale-season strong{font:500 clamp(4.3rem,6vw,6rem)/.88 var(--serif);color:#e8d4ac}.spring-sale h2{font-size:clamp(2.9rem,4vw,4.3rem)}.spring-sale>div>p:not(.eyebrow){color:#c7d0c5;max-width:530px;font-size:.88rem;margin:23px 0}.spring-sale .button{margin-top:8px}.editorial{display:grid;grid-template-columns:1.15fr 1fr;gap:75px;align-items:center}.editorial-image{position:relative}.editorial-image img{aspect-ratio:1.1;object-fit:cover}.editorial>div>p:not(.eyebrow){color:var(--muted);font-size:.9rem;margin-top:23px;max-width:430px}.editorial .text-link{display:inline-block;margin-top:27px}.leadtime{border-top:1px solid var(--line)}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:29px;margin-top:40px}.timeline article{border-top:1px solid var(--line);padding-top:23px}.timeline span{display:block;color:#616544;font:.8rem var(--sans);margin-bottom:27px}.timeline strong{font-weight:500;font-size:.9rem}.timeline p{font-size:.8rem;color:var(--muted);margin-top:13px}.timeline b{font-weight:600}.leadtime>.text-link{display:inline-block;margin-top:21px}.upgrades{background:#e8ebdf;max-width:none}.upgrade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.upgrade-grid article{border-top:1px solid #bfc8b4;padding-top:25px}.upgrade-mark{font:500 3.4rem/1 var(--serif);color:#708567;display:block;margin-bottom:22px}.upgrade-grid .eyebrow{font-size:.6rem;margin-bottom:17px}.upgrade-grid h3{font-size:2.5rem;line-height:1.07}.upgrade-grid p:not(.eyebrow){font-size:.84rem;color:#53614f;max-width:355px;margin-top:23px;min-height:120px}.upgrade-grid a{display:inline-block;margin-top:23px}.gallery-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.filters{display:flex;gap:8px}.filters button{background:transparent;border:1px solid var(--line);padding:9px 21px;font-size:.73rem;min-height:40px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.gallery-count{font-size:.7rem;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:29px 23px}.gallery-item{display:block;border:0;background:transparent;padding:0;text-align:left;min-width:0}.gallery-image{display:block;position:relative;overflow:hidden}.gallery-image img{aspect-ratio:1.5;object-fit:cover;transition:transform .3s}.gallery-item:hover img{transform:scale(1.02)}.gallery-badge{position:absolute;top:10px;left:12px;padding:3px 8px;background:var(--paper);font-size:.6rem;letter-spacing:.07em}.gallery-caption{display:block;font-size:.78rem;margin-top:12px;line-height:1.4}.gallery-item small{font-size:.65rem;color:var(--muted)}.faq-section{display:grid;grid-template-columns:.85fr 1.3fr;gap:85px;border-top:1px solid var(--line)}.faq-section>div>p:not(.eyebrow){margin:23px 0;color:var(--muted);font-size:.9rem}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-size:.9rem;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:1.25rem;font-weight:400;line-height:1}.faq details[open] summary>span{transform:rotate(45deg)}.faq details p{font-size:.84rem;color:var(--muted);margin-top:18px;line-height:1.8}.contact-section{background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1.25fr 1fr;gap:95px;padding:66px 7vw}.contact-section .eyebrow{color:#d1bc93}.contact-section h2{font-size:clamp(3.6rem,5.5vw,5.8rem)}.contact-section>div>p:not(.eyebrow){color:#c5d0c5;font-size:.9rem;max-width:420px;margin-top:24px}.contact-person{border-left:1px solid #486052;padding-left:45px;align-self:center}.person-label{font-size:.6rem;letter-spacing:.15em;color:#d1bc93}.contact-person h3{font-size:3.5rem;margin:16px 0}.contact-phone{font-size:1.8rem;line-height:1.3;text-decoration:none;white-space:nowrap}.contact-person p{margin:20px 0!important;font-size:.8rem!important;max-width:330px!important}.contact-person .text-link{color:#e2cfaa}footer{display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:50px;padding:47px 5vw;font-size:.7rem;color:var(--muted)}footer .brand{color:var(--ink)}footer p{margin-top:21px}footer small{display:block;margin-top:15px;font-size:.65rem}.footer-links{display:flex;flex-direction:column;gap:13px}.footer-links a{text-decoration:none}.mobile-call{display:none}.breadcrumb{display:flex;gap:15px;font-size:.68rem;padding:22px 5vw;color:var(--muted)}.breadcrumb a{text-decoration:none}.product-hero{display:grid;grid-template-columns:1.1fr 1fr;background:var(--cream)}.product-hero>figure{position:relative;min-width:0}.product-hero>figure img{height:100%;object-fit:cover}.product-hero figcaption{position:absolute;bottom:20px;left:20px;color:white;background:rgba(24,61,53,.86);font-size:.65rem;padding:5px 10px}.product-hero>div{padding:42px 5vw 45px 4vw}.product-hero h1{font-size:clamp(3.2rem,5.3vw,5.5rem)}.product-intro{color:var(--muted);font-size:.9rem;margin:23px 0}.product-specs{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.product-specs dt{font-size:.65rem;color:var(--muted)}.product-specs dd{font-size:.95rem;margin:4px 0 0}.product-price{margin:24px 0}.product-price>span{font-size:.68rem;color:var(--muted)}.product-price strong{display:block;font:500 2.5rem/1.2 var(--serif);margin:7px 0}.product-price p{font-size:.7rem;color:var(--muted);max-width:430px}.product-hero .text-link{display:block;margin-top:17px}.model-details{display:grid;grid-template-columns:.8fr 1.3fr;gap:70px}.model-details>div>p:not(.eyebrow){color:var(--muted);font-size:.9rem;margin-top:25px;max-width:370px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 34px}.detail-grid article{border-top:1px solid var(--line);padding-top:19px}.detail-grid article>span{font-size:.6rem;letter-spacing:.1em}.detail-grid h3{font-size:2.3rem;margin:20px 0}.detail-grid p{font-size:.82rem;color:var(--muted)}.other-pools{padding-top:20px}.other-pools h2{font-size:3.2rem;margin-bottom:26px}.other-pools>div{display:grid;grid-template-columns:1fr 1fr;gap:35px}.other-pools a{display:flex;justify-content:space-between;gap:20px;text-decoration:none;border-top:1px solid var(--line);padding:22px 0}.other-pools a span:first-child{font:500 2rem var(--serif)}.other-pools a span:last-child{font-size:.75rem;align-self:center}.planning-hero{text-align:center;background:var(--cream);padding:75px 6vw}.planning-hero h1{font-size:clamp(3.6rem,6.4vw,6.5rem)}.planning-hero>p:not(.eyebrow){font-size:.95rem;color:var(--muted);max-width:560px;margin:27px auto}.planning-intro{max-width:700px;margin-top:28px;color:var(--muted);font-size:.95rem}.checklist{background:#e8ebdf;max-width:none;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.checklist>div>p:not(.eyebrow){max-width:330px;margin-top:25px;color:var(--muted);font-size:.9rem}.checklist ol{padding:0;margin:0;list-style:none;counter-reset:step}.checklist li{counter-increment:step;position:relative;padding:22px 0 24px 50px;border-top:1px solid #bfc8b4}.checklist li:before{content:'0'counter(step);position:absolute;left:0;top:26px;font-size:.8rem;color:#677458}.checklist h3{font-size:2rem;line-height:1.12}.checklist li p{font-size:.85rem;color:var(--muted);margin-top:15px}.table-wrap{overflow:auto;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:left}th{font-weight:500;background:var(--cream)}td,th{padding:20px;font-size:.8rem;border-bottom:1px solid var(--line)}tbody th{background:transparent}dialog{border:0;border-radius:0;background:var(--ink);color:white;width:min(1120px,94vw);max-height:94dvh;padding:20px;overflow:auto}dialog::backdrop{background:rgba(5,20,15,.9)}.dialog-top,.dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:.75rem}.dialog-top{margin-bottom:16px}.dialog-bottom{margin-top:15px}.dialog-bottom p{text-align:center;font-size:.75rem;max-width:660px}dialog button{background:transparent;color:white;border:1px solid #809085;padding:9px 13px;min-height:42px;font-size:.75rem}#photo-image{max-height:70dvh;object-fit:contain}.menu-toggle{background:transparent;border:0;min-height:44px;font-size:.8rem}
@media(min-width:1650px){.hero{min-height:720px}.hero-copy{padding-left:max(5vw,calc((100vw - 1485px)/2))}}
@media(max-width:1120px){.header nav{gap:18px}.header nav a{font-size:.7rem}.header-call{padding-left:14px}.hero{min-height:570px}.hero-copy{padding-top:55px}.hero h1{font-size:6.4rem}.hero-foot{font-size:.5rem}.pool-grid{gap:18px}.pool-body{padding:23px 20px}.pool-body h3{font-size:2rem}.pool-price{align-items:flex-start;flex-direction:column}.pool-body>p:not(.eyebrow){min-height:95px}.pool-specs dd{font-size:.8rem}.editorial{gap:45px}.contact-section{gap:50px}.contact-phone{font-size:1.4rem}.contact-person{padding-left:30px}.model-details,.faq-section{gap:45px}.product-hero>div{padding:32px 4vw}.product-hero h1{font-size:4rem}}
@media(max-width:800px){.announcement{font-size:.58rem;gap:15px}.header{padding:19px 6vw}.header nav,.header-call{display:none}.menu-toggle{display:block}.brand>span{font-size:1.6rem}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:43px 6vw 29px}.hero h1{font-size:clamp(4.7rem,16vw,6.5rem);margin:0 0 23px}.hero-intro{font-size:.91rem}.hero-actions{gap:24px;margin-top:25px}.hero-foot{padding-top:30px;font-size:.53rem}.hero-image{height:360px}.hero-image figcaption{left:16px;bottom:13px}.intro-strip{display:grid;grid-template-columns:1fr 1fr;padding:24px 6vw;gap:15px;font-size:.66rem}.intro-strip span:not(:first-child){border:0;padding:0}.section{padding:53px 6vw}.section-heading{display:block;margin-bottom:29px}.section-heading>p{max-width:100%;margin-top:22px;font-size:.88rem}h2{font-size:3.4rem}.eyebrow{font-size:.59rem;margin-bottom:17px}.pool-grid{grid-template-columns:1fr;gap:28px}.pool-body{padding:26px}.pool-body h3{font-size:2.7rem;min-height:0;margin-bottom:16px}.pool-body>p:not(.eyebrow){min-height:0;font-size:.88rem}.pool-specs dd{font-size:1rem}.pool-specs dt{font-size:.65rem}.pool-price{flex-direction:row;align-items:flex-end}.pool-price strong{font-size:2.4rem}.pool-price small{font-size:.6rem}.pool-price a{font-size:.72rem}.spring-sale{padding:43px 6vw;grid-template-columns:1fr;gap:34px}.sale-season{border-right:0;border-bottom:1px solid #496157;padding-bottom:30px;gap:15px}.sale-season strong{font-size:4.5rem}.sale-season strong br{display:none}.spring-sale h2{font-size:3.3rem}.editorial{grid-template-columns:1fr;gap:35px}.editorial-image img{aspect-ratio:1.25}.editorial h2{font-size:3.4rem}.timeline{grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.timeline span{margin-bottom:17px}.timeline p{font-size:.78rem}.timeline strong{font-size:.84rem}.upgrade-grid{grid-template-columns:1fr;gap:32px}.upgrade-grid article{display:block}.upgrade-mark{margin-bottom:18px;font-size:2.8rem}.upgrade-grid h3{font-size:2.9rem}.upgrade-grid p:not(.eyebrow){max-width:100%;min-height:0;margin-top:18px}.upgrade-grid a{margin-top:18px}.gallery-tools{align-items:flex-start;flex-direction:column;gap:13px}.filters{gap:7px}.filters button{padding:9px 15px}.gallery-grid{grid-template-columns:1fr 1fr;gap:23px 15px}.gallery-caption{font-size:.72rem}.gallery-item small{font-size:.6rem}.gallery-image img{aspect-ratio:1.15}.gallery-badge{left:8px;top:8px}.faq-section{grid-template-columns:1fr;gap:33px}.faq summary{font-size:.84rem}.faq details p{font-size:.82rem}.contact-section{grid-template-columns:1fr;gap:34px;padding:47px 6vw}.contact-section h2{font-size:3.4rem}.contact-person{padding:30px 0 0;border-left:0;border-top:1px solid #486052}.contact-person h3{font-size:3.1rem}.contact-phone{font-size:1.9rem}.contact-person>p{max-width:100%!important}.contact-section>div>p:not(.eyebrow){font-size:.85rem}footer{grid-template-columns:1fr 1fr;padding:36px 6vw 115px;gap:30px}footer>div:last-child{grid-column:1/-1}footer p{margin-top:15px}.mobile-call{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:12;justify-content:space-between;align-items:center;gap:15px;background:var(--cream);color:var(--ink);border-top:1px solid var(--line);padding:15px 6vw calc(15px + env(safe-area-inset-bottom));text-decoration:none;box-shadow:0 -4px 16px #183d3510;font-size:.67rem;min-height:64px}.mobile-call strong{font-size:.78rem;font-weight:600}.breadcrumb{padding:18px 6vw}.product-hero{grid-template-columns:1fr}.product-hero>figure{height:335px}.product-hero>div{padding:35px 6vw}.product-hero h1{font-size:3.5rem}.product-price strong{font-size:2.6rem}.product-hero .eyebrow{font-size:.57rem}.model-details{grid-template-columns:1fr;gap:36px}.detail-grid{gap:29px 25px}.detail-grid h3{font-size:2rem}.detail-grid p{font-size:.79rem}.other-pools>div{grid-template-columns:1fr;gap:12px}.other-pools h2{font-size:2.9rem}.planning-hero{padding:48px 6vw}.planning-hero h1{font-size:3.6rem}.planning-hero>p:not(.eyebrow){font-size:.9rem}.checklist{grid-template-columns:1fr;gap:35px}.checklist h3{font-size:1.8rem}.checklist li{padding-left:40px}.planning-intro{font-size:.88rem}.table-wrap th,.table-wrap td{padding:16px;font-size:.75rem}dialog{padding:12px}.dialog-bottom{flex-wrap:wrap}.dialog-bottom p{order:-1;width:100%;max-width:none}.dialog-top,.dialog-bottom button{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.factory-video{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.factory-video p:not(.eyebrow){max-width:420px;color:var(--muted);font-size:.85rem;margin-top:25px}.factory-video video{display:block;width:100%;max-height:570px;background:var(--ink)}@media(max-width:800px){.factory-video{grid-template-columns:1fr;gap:30px}.factory-video video{max-height:500px}}
.payment-strip{margin-top:45px;padding:30px;background:var(--cream);display:grid;grid-template-columns:1.25fr .7fr 1fr;gap:25px;align-items:start}.payment-strip .eyebrow{font-size:.55rem;margin-bottom:12px}.payment-strip h3{font-size:2rem}.payment-strip strong{font:500 2.4rem/1 var(--serif);display:block;margin-bottom:12px}.payment-strip span{font-size:.75rem;display:block;max-width:220px}.payment-strip>p{grid-column:1/-1;font-size:.7rem;color:var(--muted);margin-top:0}@media(max-width:800px){.payment-strip{padding:25px;grid-template-columns:1fr 1fr;gap:27px}.payment-strip>div:first-child{grid-column:1/-1}.payment-strip strong{font-size:2.3rem}.payment-strip span{font-size:.7rem}}

.fence-package{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:var(--cream);max-width:none}.fence-package>div>p:not(.eyebrow){font-size:1rem;max-width:510px;color:var(--muted);margin:20px 0 28px}.sale-season strong em{display:inline-block}.sale-season strong{font-size:clamp(3rem,5vw,5.5rem)}@media(max-width:800px){.fence-package{grid-template-columns:1fr;gap:20px}.sale-season strong{font-size:3.3rem}.sale-season strong br{display:block}.fence-package .button{font-size:.78rem}}

.contact-person .online-enquiry{display:inline-flex;margin:0 0 18px}.contact-person .online-enquiry+.text-link{display:block;width:max-content}

/* Campaign polish: clearer enquiries, readable copy and complete product views. */
.secondary{background:transparent;border-color:var(--ink);color:var(--ink)}
.secondary:hover{background:var(--paper)}
.hero-actions,.product-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.hero-explore{margin-top:20px;min-height:44px;display:inline-flex;align-items:center}
.button,.text-link,.header nav a,.menu-toggle{font-size:.875rem}
.header nav{gap:20px}.header nav a{min-height:44px;display:inline-flex;align-items:center}
.header .nav-enquiry{font-weight:600;text-decoration:underline;text-underline-offset:5px}
.hero-intro,.product-intro,.section-heading>p,.pool-body>p:not(.eyebrow),.editorial>div>p:not(.eyebrow),.timeline p,.timeline strong,.upgrade-grid p:not(.eyebrow),.faq summary,.faq details p,.contact-section>div>p:not(.eyebrow),.detail-grid p,.model-details>div>p:not(.eyebrow),.planning-intro,.planning-hero>p:not(.eyebrow),.checklist li p,.checklist>div>p:not(.eyebrow),.factory-video p:not(.eyebrow){font-size:1rem}
.contact-person p{font-size:1rem!important;max-width:410px!important}
.pool-specs dt,.product-specs dt,.pool-price small,.pool-price a,.product-price>span,.product-price p,.price-note,.small-note,.payment-strip span,.payment-strip>p,.gallery-caption,.gallery-count,.footer-links a,footer p,td,th,.other-pools a span:last-child,.breadcrumb{font-size:.875rem}
.pool-specs dd{font-size:1rem}
.eyebrow,.hero-foot,.intro-strip,.image-caption,.hero-image figcaption,.gallery-item small,.gallery-badge,.product-hero figcaption,.person-label,footer small{font-size:.75rem}
.filters{flex-wrap:wrap}.filters button,dialog button{font-size:.875rem;min-height:44px;min-width:44px}
.gallery-caption{line-height:1.5}.gallery-item small{display:block;margin-top:4px}
.faq summary{min-height:44px;align-items:center}.faq details{padding:16px 0}
.payment-strip{grid-template-columns:1.2fr .8fr 1fr}
.mobile-contact{display:none}
.pool-card-panorama{background:var(--cream)}
.pool-card-panorama img{object-fit:contain!important;object-position:center}
.product-panorama{background:var(--cream)}
.product-panorama img{object-fit:contain!important;object-position:center}
.gallery-panorama .gallery-image{background:var(--cream)}
.gallery-panorama .gallery-image img{object-fit:contain}
.model-name{display:block;font:600 1.1rem/1.5 var(--sans);letter-spacing:0;margin-bottom:12px}
.compare-link{display:inline-flex;align-items:center;min-height:44px;margin-top:22px}
.card-price-scope{font-size:.875rem;color:var(--muted);line-height:1.5;margin-top:8px;max-width:245px}
.pool-price{align-items:flex-start;gap:18px}.pool-price>a{flex-shrink:0;align-self:flex-end;min-height:44px;display:inline-flex;align-items:center}
.checklist li:before{color:#536047}
.mobile-nav a{font-size:1rem}
@media(max-width:1050px){.header nav,.header-call{display:none}.menu-toggle{display:block}.header{padding:20px 6vw}.mobile-nav a{min-height:44px}.payment-strip{gap:22px}}
@media(max-width:800px){
  html{scroll-padding-bottom:100px}
  .announcement{font-size:.6875rem;letter-spacing:.07em;gap:14px;padding:9px 14px;flex-wrap:wrap}
  .hero-copy{padding:30px 6vw 26px}
  .hero h1{font-size:clamp(3.6rem,13.5vw,5.1rem);line-height:.98;margin:0 0 18px}
  .hero-intro{font-size:1rem;line-height:1.6}
  .hero-actions{width:100%;gap:10px;margin-top:22px}
  .hero-actions .button{flex:1;padding:13px 12px;font-size:.875rem}
  .hero-explore{margin-top:10px;min-height:38px}
  .hero-foot{padding-top:18px;font-size:.75rem;letter-spacing:.035em;flex-wrap:wrap;gap:8px}
  .hero-image{height:310px}
  .eyebrow{font-size:.75rem;letter-spacing:.12em;margin-bottom:14px}
  .intro-strip{font-size:.875rem;gap:14px}
  .pool-price{gap:18px}.pool-price small,.pool-price a{font-size:.875rem}
  .pool-price strong{font-size:2.35rem}
  .gallery-caption{font-size:.875rem}.gallery-item small{font-size:.75rem}
  .payment-strip{grid-template-columns:1fr 1fr;padding:24px;gap:25px}
  .payment-strip span,.payment-strip>p{font-size:.875rem}
  .product-actions{gap:12px}.product-actions .button{flex:1;padding:13px 12px}
  .product-hero .eyebrow{font-size:.75rem}
  .product-hero .text-link{font-size:.875rem}
  .table-wrap th,.table-wrap td{font-size:.875rem}
  .mobile-contact{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:12;gap:10px;background:var(--paper);border-top:1px solid var(--line);padding:10px 6vw calc(10px + env(safe-area-inset-bottom));box-shadow:0 -4px 16px #183d3510}
  .mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:12px 10px;text-decoration:none;font-size:.875rem;font-weight:600}
  .mobile-quote{border:1px solid var(--ink);color:var(--ink)}
  .mobile-dial{background:var(--ink);color:var(--paper);border:1px solid var(--ink)}
  footer{padding-bottom:120px}
  .dialog-bottom p,.dialog-top{font-size:.875rem}
}

@media(max-width:360px){.hero-actions .button{font-size:.875rem;padding-inline:12px;white-space:nowrap}.mobile-contact a{white-space:nowrap;font-size:.875rem;padding-inline:6px}}

/* Lustre Cove wordmark spacing */
.brand>span{white-space:nowrap}
@media(max-width:1150px){.header nav,.header-call{display:none}.menu-toggle{display:block}}
@media(max-width:650px){.brand>span{font-size:1.35rem;letter-spacing:.1em}.header{gap:18px}}
@media(max-width:360px){.brand>span{font-size:1.25rem;letter-spacing:.09em}}

/* Buyer clarity round two */
.hero-shortcuts{display:flex;flex-wrap:wrap;gap:0 22px}
.factory-proof{margin:0;background:#e8ebdf;padding:24px;display:flex;flex-direction:column;align-items:center;gap:16px}
.factory-proof video{display:block;width:min(100%,280px);aspect-ratio:9/16;object-fit:contain;background:var(--ink)}
.factory-proof figcaption{font-size:.875rem;line-height:1.5;color:var(--muted);text-align:center}
.quote-starter{margin-top:28px;border-top:1px solid #486052;padding-top:22px;max-width:450px}
.quote-starter h3{font:500 1rem/1.5 var(--sans);letter-spacing:0;color:var(--cream)}
.quote-starter ul{margin:14px 0;padding-left:20px;color:#c5d0c5;font-size:1rem;line-height:1.6}
.quote-starter li{margin:7px 0}
.quote-starter p{font-size:.875rem;color:#c5d0c5}
.quote-scope{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;border-top:1px solid var(--line)}
.quote-scope>div>p:not(.eyebrow){margin:25px 0;color:var(--muted);font-size:1rem;max-width:440px}
.quote-scope dl>div{display:grid;grid-template-columns:.65fr 1.35fr;gap:25px;border-top:1px solid var(--line);padding:24px 0}
.quote-scope dl>div:last-child{border-bottom:1px solid var(--line)}
.quote-scope dt{font-weight:600;font-size:1rem;line-height:1.5}
.quote-scope dd{margin:0;color:var(--muted);font-size:1rem}
.dimension-note{margin-top:22px;max-width:980px;color:var(--muted);font-size:1rem}
@media(max-width:800px){.factory-proof{padding:20px}.quote-scope{grid-template-columns:1fr;gap:24px}.quote-scope dl>div{grid-template-columns:1fr;gap:10px;padding:20px 0}.hero-shortcuts{gap:0 16px}.hero-shortcuts .hero-explore{margin-top:12px}.quote-starter{max-width:100%}}

/* Visual selection: show complete pools, with a quieter first gallery view. */
.hero{background:var(--cream)}
.hero-image{height:auto;background:var(--cream);align-self:center;margin:30px 24px 30px 0;overflow:visible}
.hero-image img{height:auto;aspect-ratio:4/3;object-fit:contain}
.hero-image figcaption{position:static;max-width:none;background:transparent;color:var(--muted);padding:0;margin-top:12px;line-height:1.5;font-size:.8125rem}
.hero h1{font-size:clamp(4.5rem,7vw,7rem)}
.gallery-expand{margin-top:32px;min-height:50px}
.pool-card-panorama .image-caption{bottom:12px}
.product-panorama img{height:100%;object-fit:contain}
@media(max-width:800px){
 .hero-image{order:-1;margin:0;overflow:hidden}
 .hero-image img{height:auto;aspect-ratio:4/3;object-fit:contain}
 .hero-image figcaption{margin:0;padding:10px 6vw;font-size:.75rem;border-bottom:1px solid var(--line)}
 .hero-copy{padding-top:28px}
 .hero h1{font-size:clamp(3.6rem,13.5vw,5.1rem)}
 .product-panorama{height:auto!important;aspect-ratio:4/3}
 .product-panorama img{height:100%;object-fit:contain}
 .gallery-expand{width:100%}
}

/* A labelled design example follows the original pool photography. */
.design-example{grid-template-columns:1.1fr 1fr;align-items:center;gap:55px}
.concept-example{min-width:0}
.concept-example img{width:100%;height:auto;object-fit:contain}
.concept-example figcaption{font-size:.75rem;line-height:1.5;color:#d9dfd3;margin-top:12px}
@media(max-width:800px){.design-example{grid-template-columns:1fr;gap:30px}.concept-example figcaption{font-size:.72rem}}

/* A taller mobile frame makes the 30ft end view legible without stretching it. */
@media(max-width:800px){.product-portrait{aspect-ratio:4/5}}

/* Focus the portrait on the complete pool, cropping spare factory roof only. */
.pool-card-portrait{aspect-ratio:1.48}
.pool-card-portrait img,.product-hero .product-portrait img{position:absolute;width:auto;height:140%;max-width:100%;left:50%;bottom:0;aspect-ratio:auto;object-fit:contain!important;transform:translateX(-50%)!important}
.pool-card-portrait .pool-number{color:var(--ink);text-shadow:none}
.product-portrait{overflow:hidden}
