/* Aotearoa visual direction — version 2. Original interface is retained in versions/v1. */
:root{--pine:#165248;--deep:#103e35;--muted:#64756e;--ink:#243f36;--line:#dce2d7;--canvas:#f6f4ed;--sage:#e4ece1;--orange:#c99b52;--white:#fffefb;--radius:12px;background:var(--canvas)}
body{background:var(--canvas)}
.layout{grid-template-columns:224px minmax(0,1fr)}
.sidebar{width:224px;background:var(--deep);color:#e9eee4;padding:34px 21px;border:0;isolation:isolate;overflow:hidden}
.sidebar:after{content:"";position:absolute;bottom:90px;left:14px;width:205px;height:340px;background:url(silver-fern.svg) center/contain no-repeat;opacity:.07;pointer-events:none;z-index:-1;transform:rotate(-18deg)}
.brand{gap:11px;margin:0 5px 51px}.brand img{width:46px;height:46px}.brand b{font-size:22px;letter-spacing:-1px;font-weight:600;color:#f7f7ed}.brand small{font-size:8px;letter-spacing:2.9px;color:#b4c9ba;margin-top:6px}
.nav-label{font-size:9px;letter-spacing:1.6px;color:#9ebbad;padding-left:14px;margin-bottom:18px}.navigation{gap:8px}.nav-item{color:#d0dfd3;font-size:13px;border-radius:8px;min-height:49px;padding:13px 14px}.nav-item.active{background:#e4ecdc;color:#153e32;font-weight:600}.nav-item:hover{background:#ffffff12;color:#fff}.nav-item.active:hover{background:#eff3e9;color:#153e32}.nav-count{background:#c8d9c5;color:#214f3d;font-size:10px}.side-note{border-color:#ffffff21;color:#b4cbbb;margin-top:35px;font-size:12px;line-height:2;padding:24px 11px}.side-note strong{font-size:13px;color:#e0e8ce}.side-bottom{color:#b4c8b6;font-size:10px;padding-left:7px;gap:7px}.side-bottom span:last-child{color:#acc6b2;border-color:#ffffff26;font-size:8px;letter-spacing:.8px}.side-bottom .icon{width:15px;height:15px}
.topbar{height:86px;background:#fffef8;border-bottom:1px solid var(--line);padding:0 42px}.top-caption{font-size:11px;letter-spacing:.3px;color:#64766b}.location-btn{font-size:12px;color:var(--pine);border:1px solid var(--line);border-radius:6px;padding:0 12px;gap:8px;background:#fffefb;min-height:38px}.location-btn:hover{background:#eaf0e7}.locale{border-radius:6px;background:#fffefb;min-height:38px}.locale select{font-size:11px}.locale-icon{font-size:13px;filter:saturate(.25)}.avatar{background:#cbd9c2;color:#1a4f40;font-size:10px;letter-spacing:.5px}.top-actions{gap:11px}
.main{max-width:1360px;padding:32px 42px 32px;min-height:calc(100vh - 86px)}
.hero{padding:42px;min-height:400px;display:flex;align-items:center;background:#153f36;border:0;border-radius:13px;isolation:isolate;overflow:hidden}
.hero-art{position:absolute;inset:0 0 0 auto;max-width:none;width:66%;height:100%;object-fit:cover;object-position:center;z-index:-2;pointer-events:none}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#153f36 0%,#153f36 29%,#153f36ee 38%,#153f3660 55%,#153f3600 72%);z-index:-1;pointer-events:none}
.hero-copy{position:relative;width:53%;max-width:500px;z-index:1}.hero .eyebrow{color:#c7d3bb;font-size:9px;letter-spacing:2px;line-height:1.7}.hero .dot{background:#e6bd70;box-shadow:0 0 0 4px #e6bd7016}.hero h1{font-size:40px;line-height:1.5;letter-spacing:-1.6px;color:#fffdf0;font-weight:550;margin:26px 0 20px}.hero p{font-size:13px;line-height:2.1;color:#d1dfd1;max-width:330px;margin:0}.hero-place{position:absolute;bottom:25px;right:28px;color:#edf3e5;font-size:9px;letter-spacing:2px;line-height:1.8;text-align:right;border-right:2px solid #d6bc75;padding-right:12px}.hero-place strong{display:block;font-weight:550;font-size:15px;letter-spacing:3px}
.overview{position:relative;margin:22px 0 40px;background:#fffefb;border:1px solid #d6dfd0;box-shadow:0 3px 12px #133e2a03;border-radius:10px;padding:22px 24px}.overview:before{content:"";height:28px;width:3px;background:#94aa79;position:absolute;left:-1px;border-radius:0 2px 2px 0}.overview h3{font-size:14px;font-weight:600;margin-bottom:7px}.overview p{font-size:11px;color:#70806c}.overview .text-link{font-size:11px}.ring{width:45px;height:45px;background:conic-gradient(#176252 var(--value),#e5ecdf 0)}.ring:before{background:#fffefb}.ring span{font-size:10px}
h2{font-size:23px;font-weight:550;letter-spacing:-.6px}.section-top{margin-bottom:23px;gap:24px}.section-sub{font-size:12px;color:#6b786e;margin-top:9px;line-height:1.8}.section-top .search{min-width:245px;max-width:320px}.search{border-radius:6px;background:#fffefb;border-color:#d4ded1}.search input{font-size:12px;min-height:43px}.filter-row{gap:6px;margin-bottom:23px}.filter{border:1px solid #d9e0d3;border-radius:5px;background:#fffefb;padding:8px 13px;font-size:11px;min-height:37px;color:#59705f}.filter.active{background:#1a5547;border-color:#1a5547;color:#fff}.filter:not(.active):hover{border-color:#7c9b77;background:#edf1e7}
.guide-grid{gap:19px;counter-reset:guide}.guide-card{padding:26px;border-radius:10px;border-color:#dbe1d4;background:#fffefb;position:relative;counter-increment:guide;overflow:hidden;box-shadow:0 3px 8px #143e2e02}.guide-card:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,#377c66,#b2c0a0);opacity:0;transition:opacity .2s}.guide-card:hover{border-color:#a1b59b;box-shadow:0 10px 26px #173d2c08;transform:translateY(-3px)}.guide-card:hover:before{opacity:1}.card-top{margin-bottom:23px}.topic-icon{background:#e6eddd;color:#2c644d;border-radius:9px;width:45px;height:45px}.topic-icon.orange{background:#f0e7d6;color:#947544}.topic-icon.blue{background:#dfeded;color:#397573}.topic-icon.rose{background:#f0e3da;color:#956b55}.pill{border-radius:3px;color:#71805f;background:#f0f2e7;padding:5px 8px;font-size:9px}.guide-card h3{font-size:19px;line-height:1.6;letter-spacing:-.25px;font-weight:550;color:#1e4837;margin-bottom:10px}.guide-card p{font-size:12px;line-height:1.95;color:#667568;margin-bottom:24px}.card-meta{color:#6d7f6b;font-size:10px;gap:14px}.card-bottom{border-top:1px solid #e4e8db;padding-top:15px;margin-top:19px}.mini-progress{color:#6c7f67}.mini-bar{background:#e6ecde}.mini-bar i{background:#608958}.open-guide{font-size:12px;color:#1c5a44;gap:12px}.open-guide .icon{background:#edf1e5;border-radius:50%;box-sizing:content-box;padding:6px;width:12px;height:12px}
.support-banner{margin-top:30px;padding:23px 26px;background:#e8eddf;border:1px solid #dce3d1;border-radius:8px;color:#5a7056;font-size:12px}.support-banner strong{color:#365b3e}.support-banner>.icon{color:#527d50}.footer{padding-top:28px;margin-top:5px;font-size:10px;color:#77856d;border-top:0}.footer:before{content:"";display:block;flex-basis:100%;height:1px;background:linear-gradient(90deg,#bacbb0,#dfe4d5 70%,transparent);margin-bottom:0}
.breadcrumb{font-size:12px;color:#687d65;margin-bottom:22px}.detail-heading{padding:18px 0 28px;margin-bottom:24px;border-bottom:1px solid #d6dfce}.detail-heading .eyebrow{color:#6b835d;letter-spacing:1.2px}.detail-heading h1{font-size:34px;font-weight:550;line-height:1.55;color:#204c39;letter-spacing:-.6px}.detail-heading p{font-size:13px;line-height:1.95;color:#65745f}.detail-heading .topic-icon{border-radius:12px;background:#e1e8d6}.detail-grid{gap:25px;grid-template-columns:minmax(0,1fr) 250px}.panel{padding:25px;background:#fffefb;border-color:#dbe1d3;border-radius:10px}.panel h2{font-size:18px;font-weight:550;line-height:1.7}.panel h3{font-size:14px;color:#345d41}.panel p,.panel li{font-size:12px;color:#65735f;line-height:2}.notice{border-radius:8px;font-size:12px;color:#775e31;background:#f8f0dc;border-color:#e7d9b5;line-height:1.95}.route-tabs button{font-size:12px;border-radius:6px}.route-tabs .active{background:#e6eddd;border-color:#93b082;color:#2b5e3c}.steps-title h2{font-size:19px}.steps-title span{font-size:11px;color:#7b876f}.step{border-radius:8px;background:#fffefb;border-color:#dce2d5;padding:21px 19px;gap:14px}.step.done{background:#edf2e4;border-color:#bdcfad}.step label{font-size:14px;color:#31563b;font-weight:550;line-height:1.75;padding-top:0}.step p{font-size:12px;color:#677660;line-height:2;margin-top:5px}.step a{font-size:11px;color:#3d6f42;min-height:36px}.step input[type=checkbox]{border-radius:5px;border-color:#a5b798}.step.done label{color:#57784a}.detail-aside .panel:first-child{background:#e9efdf;border-color:#d4dfc6}.large-progress{font-size:40px;font-weight:500;letter-spacing:-1.5px;color:#27543b}.progress-track{background:#d7e1ca}.progress-track i{background:#4e7c48}.source-link{font-size:12px;color:#40683f}.source-link small{font-size:10px;color:#7b8c70}.small-note{font-size:11px!important;color:#7c8a72!important}.reset-btn{font-size:11px;color:#71816a}.city-choice label{font-size:12px;color:#62765c}.city-choice select{font-size:12px;border-radius:6px;background:#fffefb}.bin-card,.service-card,.hub-card{background:#f5f6ed;border-color:#dce2d1;border-radius:8px}.bin-card h3{font-size:12px}.bin-card p{font-size:11px}.quick-items button{font-size:11px;border-radius:5px;background:#f1f3e9}.lookup h3{font-size:15px}.lookup-result{background:#e9efdf;border-color:#d4dfc4;border-radius:7px;font-size:12px}.lookup-result a{font-size:11px}.council-waste-link a{font-size:11px}.service-card h3{font-size:16px}.service-card>p{font-size:13px}.service-details{font-size:12px}.service-details dd{color:#63735c}.service-details dt{color:#3f6b3c}.service-links a{font-size:11px;color:#3f713e}.hub-location{color:#6f8367;font-size:11px}.hub-card p{font-size:12px}.fare-table{font-size:12px}.fare-table thead{background:#e7eddb;color:#45683a}.fare-table td a{font-size:11px}.fare-table td:nth-child(2){color:#2d5b40}.budget-total{background:#e7efdb;border-color:#cedcbd}.budget-total strong{font-size:34px}.budget-breakdown{font-size:12px}.budget-fields input{border-radius:6px;background:#fffefb}.budget-fields .field span{font-size:12px}.budget-sources a{font-size:11px}.guide-section>a{font-size:12px}.source-card{background:#fffefb;border-radius:10px;border-color:#dbe1d1}.source-card h3{font-size:17px;font-weight:550;color:#305a3c}.source-card p{font-size:12px;color:#6b7963}.source-card>a{font-size:12px}.dashboard-head h1{font-size:34px;font-weight:550;color:#214e36}.dashboard-head p{font-size:13px;color:#6c7c63}.group-header{background:#fffefb;border-color:#dbe1d1;border-radius:8px}.group-header h3{font-size:16px;font-weight:550;line-height:1.7}.group-header small{font-size:11px}.checklist-group .step:last-child{border-radius:0 0 8px 8px}.success-box{background:#e2ecd4;color:#355f31}.emergency-panel{background:#faf0e6;border-color:#e6d3c0}.emergency-panel h2{color:#8b5139}.emergency-panel .emergency-intro,.emergency-panel li,.emergency-panel>p{color:#805f4a}.emergency-dial{background:#985b3e}.emergency-panel .service-links a{color:#925c3e}dialog{background:#f9f8f0;border-radius:12px;border-color:#d2ddc8}dialog::backdrop{background:#123d356b}.dialog-head h2{font-weight:550;font-size:23px}.dialog-copy{font-size:12px}.field select{background:#fffefb;border-radius:6px}.btn{border-radius:6px;font-size:12px}.btn.outline{background:#fffefb;border-color:#cfdbc4}.toast{background:#194c3c;border-radius:7px}
@media(min-width:1600px){.hero{min-height:455px}.hero h1{font-size:46px}.main{padding-top:40px}}
@media(max-width:1180px){.layout{grid-template-columns:200px minmax(0,1fr)}.sidebar{width:200px;padding:30px 17px}.brand{gap:8px}.brand b{font-size:20px}.brand img{width:40px;height:40px}.main{padding:28px}.topbar{padding:0 28px}.hero{min-height:365px;padding:32px}.hero h1{font-size:34px}.hero p{font-size:12px}.detail-grid{grid-template-columns:minmax(0,1fr) 215px;gap:18px}.detail-aside .panel{padding:19px}.guide-card{padding:23px}.guide-card h3{font-size:18px}.detail-heading h1{font-size:30px}}
@media(max-width:900px){.layout{grid-template-columns:174px minmax(0,1fr)}.sidebar{width:174px;padding:28px 12px}.brand{margin-left:0;gap:7px}.brand b{font-size:18px}.brand img{width:35px;height:35px}.brand small{letter-spacing:1.8px;font-size:7px}.nav-item{padding:12px 10px;gap:8px;font-size:12px}.nav-label{padding-left:10px;font-size:8px}.side-note{padding:20px 9px;font-size:11px}.side-note strong{font-size:12px}.side-bottom{font-size:9px;gap:4px;padding-left:4px}.side-bottom span:last-child{font-size:7px;letter-spacing:0}.main{padding:24px}.topbar{padding:0 24px}.hero{min-height:340px;padding:26px}.hero-copy{width:60%}.hero h1{font-size:30px;letter-spacing:-1px}.hero .eyebrow{font-size:8px;letter-spacing:1px}.hero p{font-size:12px}.hero-art{width:71%;object-position:60% center}.hero:after{background:linear-gradient(90deg,#153f36,#153f36ed 30%,#153f3675 60%,transparent)}.hero-place{right:20px;bottom:19px;font-size:7px}.hero-place strong{font-size:12px}.section-top .search{max-width:none}.detail-grid{grid-template-columns:1fr}.detail-aside{position:static;grid-template-columns:1fr 1fr}.detail-aside .panel{padding:22px}.section-top{gap:16px}.guide-grid{gap:14px}.guide-card{padding:21px}.guide-card h3{font-size:17px}.guide-card p{font-size:12px}.card-meta{gap:10px}.overview{padding:20px}.overview h3{font-size:13px}}
@media(max-width:640px){.layout{display:block}.sidebar{display:none}.topbar{height:74px;padding:0 18px;gap:8px}.top-caption{color:#194b39;font-size:14px}.top-caption:before{width:30px;height:30px}.top-actions{gap:7px}.top-actions .location-btn{padding:0 7px;max-width:100px;font-size:10px;min-height:36px;gap:4px}.location-btn .icon{width:13px;height:13px}.locale{min-height:36px;padding:1px 3px}.locale select{min-height:32px;max-width:84px;font-size:10px;padding-right:0}.locale-icon{font-size:11px;padding-left:1px}.main{padding:20px 18px 100px}.hero{min-height:510px;padding:30px 25px;display:block;border-radius:10px}.hero-copy{width:100%;max-width:none}.hero .eyebrow{font-size:8px;letter-spacing:1.6px}.hero h1{font-size:32px;line-height:1.5;margin:20px 0 14px;max-width:100%;letter-spacing:-1px}.hero p{font-size:12px;line-height:2;max-width:285px}.hero-art{inset:auto 0 0;width:100%;height:68%;max-width:none;object-position:center 70%;z-index:-2}.hero:after{background:linear-gradient(180deg,#153f36 0%,#153f36 28%,#153f36d9 40%,#153f3650 57%,transparent 75%)}.hero-place{bottom:20px;right:22px;font-size:8px}.hero-place strong{font-size:13px}.overview{margin:18px 0 32px;padding:18px 16px;gap:12px;border-radius:8px}.overview-left{gap:12px}.overview h3{font-size:12px;line-height:1.7;margin-bottom:5px}.overview p{font-size:10px}.overview .text-link{font-size:10px}.ring{width:38px;height:38px}.section-top h2{font-size:22px}.section-sub{font-size:12px}.filter-row{gap:6px;margin-bottom:20px}.filter{font-size:11px;min-height:37px;padding:7px 11px}.guide-grid{grid-template-columns:1fr;gap:16px}.guide-card{padding:25px}.guide-card h3{font-size:19px}.guide-card p{font-size:13px;line-height:1.95}.card-top{margin-bottom:20px}.card-meta{font-size:11px;gap:15px}.card-bottom{margin-top:20px}.open-guide{font-size:12px}.mini-progress{font-size:11px}.support-banner{padding:20px 18px;font-size:12px}.footer{font-size:10px;padding-top:22px}.footer:before{margin-bottom:16px}.mobile-nav{background:#fffef9f5;border-top:1px solid #cfdcc2}.mobile-nav a{color:#73856b;font-size:10px}.mobile-nav a.active{color:#225d42}.mobile-nav a.active:before{background:#356e48;width:30px}.breadcrumb{font-size:11px}.detail-heading{padding:7px 0 24px;margin-bottom:23px;gap:12px}.detail-heading h1{font-size:28px;line-height:1.5;margin:12px 0}.detail-heading p{font-size:13px}.detail-heading .topic-icon{width:44px;height:44px;margin-top:15px}.detail-aside{grid-template-columns:1fr}.panel{padding:21px 18px;border-radius:8px}.panel h2{font-size:18px}.panel p,.panel li{font-size:13px;line-height:1.95}.notice{font-size:12px;padding:16px 14px}.step{padding:18px 15px;gap:12px}.step label{font-size:14px}.step p{font-size:13px;line-height:1.95}.step a{font-size:11px}.small-note{font-size:11px!important}.steps-title{align-items:flex-start}.steps-title h2{font-size:18px}.steps-title span{font-size:10px;max-width:140px;text-align:right}.source-list{grid-template-columns:1fr}.source-card{padding:23px}.source-card p{font-size:13px}.source-card>a{font-size:12px}.service-card{padding:18px}.service-card>p{font-size:13px}.service-card h3{font-size:16px}.service-details{font-size:12px}.service-details>div{grid-template-columns:62px minmax(0,1fr)}.hub-card{padding:18px 16px}.hub-heading h3{font-size:15px}.hub-card p{font-size:13px}.fare-table{min-width:390px;font-size:12px}.transport-panel>p{font-size:13px}.dashboard-head h1{font-size:29px}.dashboard-head p{font-size:13px}.group-header h3{font-size:14px}.group-header{padding:17px 12px}.group-header a{font-size:10px}.field select{font-size:14px}.dialog-copy{font-size:13px}.emergency-panel .emergency-intro,.emergency-panel li{font-size:13px}.bin-card h3{font-size:13px}.bin-card p{font-size:12px}.lookup .search input{font-size:13px}.lookup-result{font-size:13px}.quick-items button{font-size:11px;min-height:35px}}
@media(max-width:380px){.topbar{padding:0 12px;gap:5px}.top-caption{font-size:12px;gap:5px}.top-caption:before{width:26px;height:26px}.top-actions{gap:5px}.top-actions .location-btn{max-width:82px;font-size:9px;padding:0 6px}.locale-icon{display:none}.locale select{max-width:76px;font-size:10px}.main{padding-left:14px;padding-right:14px}.hero{padding:27px 23px;min-height:505px}.hero h1{font-size:29px}.guide-card{padding:22px}.overview{gap:7px}.overview .text-link .icon{display:none}.hero p{max-width:260px}}
