/*
Theme Name: Harvest Pools NZ
Author: Harvest Pools NZ
Description: Custom, responsive Harvest Pools New Zealand website with editable pages and quote enquiries.
Version: 1.1.1
Requires at least: 6.5
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: harvest-pools-nz
*/
:root{--navy:#092e49;--blue:#005e92;--aqua:#d6f1f4;--ink:#143549;--muted:#526876;--line:#d8e3e8;--paper:#f2f7f8;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font:17px/1.65 Arial,Helvetica,sans-serif;background:white}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,5.4vw,5.6rem)}h2{font-size:clamp(2.2rem,3.7vw,3.7rem)}h3{font-size:1.8rem}p{margin-bottom:1.3rem}.wrap{width:min(1280px,88%);margin:auto}.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin-bottom:22px}.topbar{background:var(--navy);color:white;text-align:center;padding:9px 20px;font-size:13px;letter-spacing:.055em}.site-header{background:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:104px}.brand{text-decoration:none;line-height:1.05;display:inline-flex;flex-direction:column;color:var(--navy);flex-shrink:0}.brand strong{font-size:28px;letter-spacing:-.04em;font-weight:800}.brand span{font-size:11px;letter-spacing:.35em;margin-top:8px}.site-nav{display:flex;gap:28px;align-items:center;font-size:15px}.site-nav a{text-decoration:none}.site-nav a:hover{text-decoration:underline}.button,button[type=submit]{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;background:var(--navy);color:white;text-decoration:none;border:1px solid var(--navy);font:600 14px/1.3 Arial,sans-serif;cursor:pointer;min-height:50px}.button.light{background:white;border-color:white;color:var(--navy)}.button.outline{background:transparent;border-color:currentColor;color:inherit}.button:hover,button[type=submit]:hover{background:var(--blue);border-color:var(--blue);color:white}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:10px;font:inherit}.hero{position:relative;min-height:650px;background:var(--navy);color:white;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,28,44,.88),rgba(1,28,44,.53) 45%,rgba(1,28,44,.04) 80%)}.hero .wrap{z-index:1;position:relative;padding:80px 0}.hero h1{max-width:670px;margin-bottom:25px}.hero p:not(.eyebrow){max-width:455px;font-size:19px}.actions{display:flex;gap:14px;flex-wrap:wrap}.hero .caption{position:absolute;bottom:16px;right:24px;font-size:12px;z-index:2;color:white;background:#092e49bb;padding:3px 8px}.fact-strip{background:var(--aqua);padding:24px 0}.facts{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px}.facts div+div{border-left:1px solid #a5ccd2;padding-left:32px}.facts strong{display:block;font-size:19px;font-weight:500}.facts small{font-size:13px;display:block}.section{padding:95px 0}.section.soft{background:var(--paper)}.section.navy{background:var(--navy);color:white}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}.section-heading h2{max-width:670px;margin-bottom:0}.section-heading p{max-width:370px;color:var(--muted);margin-bottom:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.pool-card{border-bottom:1px solid var(--line);padding-bottom:25px}.pool-card img{width:100%;height:280px;object-fit:cover}.pool-card .tag{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:23px 0 10px;color:var(--muted)}.pool-card h3{margin-bottom:14px}.pool-card p{font-size:15px}.pool-card a.more{font-size:14px;font-weight:700}.fine{font-size:13px;color:var(--muted);margin-top:24px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split>img{width:100%;height:500px;object-fit:cover}.split h2{max-width:550px}.steps{counter-reset:steps}.step{padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:40px 1fr;gap:20px}.step:before{counter-increment:steps;content:'0' counter(steps);font-size:13px;color:var(--blue);padding-top:3px}.step h3{font-size:22px;margin-bottom:10px;letter-spacing:-.02em}.step p{font-size:15px;margin-bottom:0}.cta{display:flex;justify-content:space-between;align-items:center;gap:45px}.cta h2{max-width:650px;margin-bottom:20px}.cta p{max-width:620px;color:#c5d8e2}.site-footer{background:#062238;color:white;padding:55px 0 25px}.footer-top{display:flex;justify-content:space-between;gap:30px;margin-bottom:40px}.site-footer .brand{color:white}.footer-links{display:flex;gap:25px;flex-wrap:wrap;font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #355369;padding-top:22px;font-size:12px;color:#bed0dc}.page-intro{padding:75px 0;background:var(--paper)}.page-intro h1{max-width:960px;font-size:clamp(2.8rem,5vw,4.8rem);margin-bottom:22px}.page-intro p:last-child{max-width:720px;margin-bottom:0}.copy{max-width:850px}.copy h2{font-size:2.3rem;margin-top:45px}.copy h3{font-size:1.6rem;margin-top:30px}.model-photo{width:100%;height:500px;object-fit:cover}.model-top{display:grid;grid-template-columns:1.35fr 1fr;gap:60px;align-items:center}.model-top h2{font-size:2.8rem}.spec-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;margin:25px 0;font-size:15px}th,td{text-align:left;padding:16px;border-bottom:1px solid var(--line)}th{background:var(--paper);font-weight:600}details{border-bottom:1px solid var(--line);padding:23px 0}summary{cursor:pointer;font-size:20px;line-height:1.4}details p{margin:18px 0 0;color:var(--muted)}.quote-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.quote-form{padding:35px;background:var(--paper)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}input,select,textarea{border:1px solid #a8bcc7;background:white;border-radius:0;padding:12px;width:100%;font:16px/1.4 Arial,sans-serif;color:var(--ink)}textarea{min-height:125px;resize:vertical}.field{margin-bottom:21px}.consent{display:flex;align-items:start;gap:12px;font-weight:400;line-height:1.6}.consent input{width:19px;height:19px;flex-shrink:0;margin-top:3px}.notice{padding:16px;border:1px solid var(--blue);background:#eaf5f7;margin-bottom:20px}.honey{position:absolute;left:-9999px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:15px;z-index:10;padding:12px;background:white;color:var(--navy)}:focus-visible{outline:3px solid #eaa32a;outline-offset:4px}.empty{padding:90px 0}.wp-block-image img{height:auto}.content-body>.wp-block-html{margin:0}
@media(max-width:900px){.site-nav{gap:15px}.header-inner{gap:15px}.site-nav a{font-size:13px}.site-nav .button{padding:12px}.split,.model-top{gap:35px}.quote-layout{gap:35px}.pool-card img{height:210px}.hero{min-height:570px}}@media(max-width:700px){.wrap{width:88%}.header-inner{min-height:85px;flex-wrap:wrap;padding:16px 0}.brand strong{font-size:24px}.menu-toggle{display:block}.site-nav{width:100%;display:none;flex-direction:column;align-items:stretch;padding:15px 0}.site-nav.is-open{display:flex}.site-nav a{padding:10px 0;font-size:16px}.hero{min-height:640px}.hero .wrap{padding:65px 0 85px}.hero:after{background:linear-gradient(90deg,rgba(1,28,44,.83),rgba(1,28,44,.28))}.hero h1{font-size:3.2rem;max-width:340px}.hero p:not(.eyebrow){font-size:17px;max-width:310px}.facts{grid-template-columns:1fr;gap:16px}.facts div+div{padding:16px 0 0;border-left:0;border-top:1px solid #a5ccd2}.facts strong{font-size:18px}.section{padding:60px 0}.section-heading,.cta{display:block}.section-heading h2{margin-bottom:25px}.grid,.split,.model-top,.quote-layout{grid-template-columns:1fr;gap:40px}.pool-card img{height:300px}.split>img,.model-photo{height:340px}.footer-top,.footer-bottom{flex-direction:column}.field-grid{grid-template-columns:1fr;gap:0}.quote-form{padding:23px}.page-intro{padding:50px 0}.cta .button{margin-top:10px}.footer-top a{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Pool colours */
.hp-colour-intro{padding-top:70px;padding-bottom:38px}.hp-colour-intro>p{max-width:760px}.hp-colour-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.hp-colour-card{border:1px solid var(--line);background:white;overflow:hidden}.hp-colour-pool{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.hp-colour-info{display:flex;gap:18px;align-items:center;padding:22px}.hp-colour-swatch{width:72px;height:72px;object-fit:cover;border-radius:50%;border:1px solid var(--line);flex-shrink:0}.hp-colour-info h2{font-size:1.25rem;letter-spacing:-.02em;margin:0 0 10px}.hp-colour-info a{font-size:.9rem;font-weight:700}.hp-colour-note{padding-top:30px;padding-bottom:70px}.hp-model-colours{padding-top:50px;padding-bottom:60px;border-top:1px solid var(--line)}
@media(max-width:1100px){.site-nav{gap:16px}.hp-colour-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.hp-colour-grid{grid-template-columns:1fr;gap:22px}.hp-colour-intro{padding-top:45px}.hp-colour-info{padding:18px}}

/* Manufacturer pool schematics: retain the complete plan and side profile. */
.hp-pool-schematic{margin:24px 0;padding:14px;border:1px solid var(--line);background:#fff}.pool-card .hp-pool-schematic img{display:block;width:100%;height:auto;aspect-ratio:904/761;object-fit:contain}.hp-pool-schematic a{display:block}.hp-pool-schematic figcaption{padding-top:12px;font-size:12px;line-height:1.6;color:var(--muted)}.hp-pool-schematic figcaption span{display:block;color:var(--blue)}
