
/* ---- multi-page additions ---- */
.brand{background:#fff;border-radius:8px;padding:4px 8px}
.logo{display:block;height:44px;width:auto;max-width:100%}
@media (max-width:420px){.logo{height:36px}}
.notice{background:var(--line);color:var(--line-ink);font-weight:600;font-size:.92rem}
.notice .wrap{padding-block:8px;display:flex;flex-wrap:wrap;gap:4px 14px;justify-content:center;align-items:center;text-align:center}
.notice a{font-weight:700}
.mnav{display:none;margin-left:auto;position:relative}
.mnav summary{list-style:none;cursor:pointer;font-weight:700;border:2px solid rgba(255,255,255,.7);border-radius:999px;padding:8px 14px}
.mnav summary::-webkit-details-marker{display:none}
.mnav div{position:absolute;right:0;top:calc(100% + 8px);background:var(--card);color:var(--ink);border:1px solid var(--rule);border-radius:var(--r);padding:8px;display:grid;min-width:220px;box-shadow:0 10px 30px rgba(0,0,0,.25);z-index:40}
.mnav div a{padding:10px 12px;text-decoration:none;font-weight:600;border-radius:6px}
.mnav div a:hover{background:var(--paper)}
@media (max-width:980px){nav.main{display:none}.mnav{display:block}.hbar .btn{margin-left:0}}
@media (max-width:480px){.hbar .btn-wa .wa-label{display:none}}
nav.main{gap:18px}
nav.main a[aria-current="page"]{text-decoration:underline;text-underline-offset:5px;opacity:1}

/* hero with photo */
.hero-grid{grid-template-columns:1.25fr .75fr;align-items:center}
.hero h1{font-size:clamp(2.6rem,6.6vw,5rem)}
.hero-photo{position:relative;justify-self:end;width:100%;max-width:380px}
.hero-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:14px;display:block;border:4px solid var(--sign-ink)}
.hero-photo figcaption{position:absolute;left:14px;bottom:14px;background:var(--line);color:var(--line-ink);font-weight:700;font-size:.85rem;padding:6px 10px;border-radius:6px}
.facts{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px;padding-bottom:0}
.fact{flex-direction:column;align-items:flex-start;gap:4px}
.fact b{font-size:1.7rem}
.fact span{text-align:left;font-size:.88rem}
@media (max-width:820px){.hero-photo{justify-self:start;max-width:320px}}

/* page hero for licence pages */
.phero{background:var(--sign);color:var(--sign-ink);padding-block:44px 0;overflow:hidden}
.phero .hero-grid{align-items:end}
.phero h1{font-size:clamp(2.4rem,6vw,4.4rem);text-transform:uppercase;font-weight:800}
.phero .lede{color:rgba(255,255,255,.88);font-size:1.12rem;margin-top:16px}
.crumbs{font-size:.88rem;opacity:.85;margin-bottom:14px}
.crumbs a{color:inherit}
.phero .hero-photo{margin-bottom:40px}

/* static prices */
.pcard[hidden]{display:none!important}
.cbox-link{text-decoration:none;color:inherit;transition:border-color .15s}
.cbox-link:hover{border-color:var(--sign)}
.cbox-link .more{font-weight:700;color:var(--sign);font-size:.95rem}

/* prose blocks */
.prose{display:grid;gap:14px;max-width:70ch}
.prose p{color:var(--muted)}
.prose strong{color:var(--ink)}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.info{background:var(--card);border:1px solid var(--rule);border-radius:var(--r);padding:20px;display:grid;gap:8px;align-content:start}
.info p{color:var(--muted)}
.single-price{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px;align-items:start}
@media (max-width:820px){.single-price{grid-template-columns:1fr}}
.single-price .pcard{max-width:420px}

/* areas */
.suburbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.suburbs span{background:var(--paper);border:1px solid var(--rule);border-radius:999px;padding:6px 12px;font-size:.92rem}
.alt .suburbs span{background:var(--card)}

/* cta band */
.ctaband{background:var(--tar);color:#fff}
.ctaband .wrap{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;padding-block:36px}
.ctaband h2{font-size:clamp(1.8rem,4vw,2.6rem)}

/* footer links */
footer.site{padding-block:36px}
footer.site .fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;width:100%}
footer.site h3{font-family:var(--body);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#fff;margin-bottom:8px}
footer.site ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
footer.site a{color:#C9D3CE}
footer.site .legal{width:100%;border-top:1px solid #3a4440;padding-top:16px;font-size:.85rem}

/* standalone-site reset (the artifact preview adds these itself) */
:root{color-scheme:light}
html,body{margin:0}
img{max-width:100%}
[hidden]{display:none!important}
.hero h1{font-size:clamp(2.4rem,5.2vw,4.4rem)}
.hero-photo{max-width:340px}
.mnav{border:0;padding:0}
.mnav summary::after{content:none}
@media (max-width:820px){
  .hero-grid,.phero .hero-grid{grid-template-columns:1fr}
  .hero-photo{max-width:300px;justify-self:start}
  .phero .hero-photo{margin-bottom:28px}
}
@media (max-width:480px){.hero-photo{max-width:100%}.hero-photo img{aspect-ratio:4/3}}
.hero-photo img,.gallery img,.spec img{height:auto}

/* rotating banners */
.banners{background:var(--sign);padding-block:20px 0}
.slider{position:relative;max-width:min(900px,100%);margin-inline:auto}
.track{border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
.track::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;scroll-snap-align:start;display:block;position:relative;aspect-ratio:2/1;overflow:hidden;background:#111}
.slide img{position:absolute;inset:0;width:100%;height:100%;display:block}
.slide .bg{object-fit:cover;filter:blur(18px) brightness(.55);transform:scale(1.15)}
.slide .fg{object-fit:contain}
.dots{display:flex;justify-content:center;gap:10px;padding-top:12px;background:var(--sign)}
.dots button{width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:rgba(0,0,0,.35);padding:0;cursor:pointer}
.dots button[aria-pressed="true"]{background:#fff}
.banners + .hero{padding-top:40px}

/* area links */
.suburbs a{background:var(--paper);border:1px solid var(--rule);border-radius:999px;padding:6px 12px;font-size:.92rem;text-decoration:none;color:var(--ink)}
.suburbs a:hover{border-color:var(--sign);color:var(--sign)}
.alt .suburbs a{background:var(--card)}
.crumbs a{color:inherit}
@media (max-width:1120px){nav.main{display:none}.mnav{display:block}.hbar .btn{margin-left:0}}
