@font-face{font-family:Fraunces;font-style:italic;font-weight:400 560;font-display:swap;src:url(/assets/fonts/fraunces-italic-vietnamese.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:italic;font-weight:400 560;font-display:swap;src:url(/assets/fonts/fraunces-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:400 560;font-display:swap;src:url(/assets/fonts/fraunces-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:340 640;font-display:swap;src:url(/assets/fonts/fraunces-normal-vietnamese.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:340 640;font-display:swap;src:url(/assets/fonts/fraunces-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:340 640;font-display:swap;src:url(/assets/fonts/fraunces-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#11221e;--muted:#5b6864;--paper:#fbfcf7;--card:#ffffff;--line:#dbe8df;--soft:#eef8e9;--green:#137a63;--green-dark:#073c34;--leaf:#7f9f46;--accent:#2f7d32;--secondary:#6f8438;--secondary-light:#bfd47a;--teal:#1d7468;--sky:#e6f5f5;--blue:#1e4057;--coal:#172320;--radius:8px;--radius-lg:8px;--shadow:0 18px 44px rgb(18 42 36 / 12%)}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid rgb(47 125 50 / 34%);outline-offset:3px}main{min-height:100vh;overflow-x:hidden;background:linear-gradient(180deg,#fff 0,var(--paper) 720px)}.nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;width:calc(100% + (clamp(18px,4vw,64px) * 2));margin:0 calc(clamp(18px,4vw,64px) * -1);border-bottom:1px solid rgb(219 232 223 / 94%);border-radius:0;padding:13px clamp(18px,4vw,64px);background:#fff;color:var(--ink);box-shadow:0 10px 28px rgb(16 33 29 / 10%)}.brand{display:inline-flex;align-items:center;width:min(255px,32vw)}.brand-logo{width:100%;height:auto;max-height:50px;object-fit:contain;object-position:left center;filter:none}.nav nav{display:flex;gap:clamp(14px,2vw,26px);color:var(--green-dark);font-size:14px;font-weight:850}.nav-cta{justify-self:end;border:1px solid rgb(19 122 99 / 18%);border-radius:var(--radius);padding:12px 16px;background:var(--accent);color:#fff;font-size:14px;font-weight:900;box-shadow:0 8px 18px rgb(47 125 50 / 22%)}.eyebrow{margin:0 0 12px;color:var(--green);font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.eyebrow.light{color:var(--secondary-light)}h1,h2,h3,li,p{overflow-wrap:break-word}.primary-button,.secondary-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border-radius:var(--radius);padding:14px 18px;font-weight:900;line-height:1.15;text-align:center}.primary-button{border:0;background:var(--accent);color:#fff;box-shadow:0 10px 22px rgb(47 125 50 / 24%)}.secondary-button{border:1px solid rgb(255 255 255 / 42%);background:rgb(255 255 255 / 16%);color:#fff}.section,footer{width:min(1220px,calc(100% - 36px));margin-inline:auto}.section{padding:82px 0 30px}details{margin-top:18px;color:rgb(255 255 255 / 78%)}details ul{margin:14px 0 0;padding-left:18px;line-height:1.55}footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0 44px;color:var(--muted)}footer strong{display:block;color:var(--ink)}footer p{max-width:560px;margin:6px 0 0;line-height:1.5}footer a{color:var(--green);font-weight:900}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 18px}@media (max-width:1080px){.nav{grid-template-columns:1fr auto}.nav nav{display:none}footer{align-items:flex-start;flex-direction:column}}@media (max-width:720px){.nav{gap:10px;width:calc(100% + 36px);max-width:none;margin:0 -18px;padding:10px 18px}.brand{min-width:0;width:min(170px,45vw)}.nav-cta{padding:10px;font-size:13px}.primary-button,.secondary-button{width:100%}.section,footer{width:min(100% - 28px,1220px)}}.brand-page main{background:#f7faf1}.home-nav{position:relative;z-index:4;display:grid;grid-template-columns:minmax(170px,255px) 1fr auto;gap:22px;align-items:center;width:min(1220px,calc(100% - 36px));margin:0 auto;padding:18px 0}.home-nav nav{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;color:#f8fff6;font-size:14px;font-weight:850}.home-nav .brand-logo{filter:drop-shadow(0 8px 20px rgb(0 0 0 / 20%))}.page-nav{width:min(1220px,calc(100% - 36px));border-bottom:1px solid rgb(17 34 30 / 10%)}.page-nav nav{color:var(--green-dark)}.page-nav .brand-logo{filter:none}.brand-page .nav-cta{border-radius:8px}.brand-hero-copy h1{margin:0;font-family:Fraunces,ui-serif,Georgia,serif;font-size:72px;font-weight:560;line-height:1;letter-spacing:0}.brand-hero-copy p{max-width:680px;margin:24px 0 0;color:rgb(255 255 255 / 84%);font-size:21px;line-height:1.55}.home-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.home-hero-actions .secondary-button,.secondary-button.dark{border-color:rgb(17 34 30 / 16%);background:#fff;color:var(--green-dark)}.audience-grid span{color:#f3c15d;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.about-final,.brand-hero,.brand-section,.brand-statement,.origin-panel,.role-band{width:min(1220px,calc(100% - 36px));margin-inline:auto}.principles-grid span{display:block;color:var(--green);font-family:Fraunces,ui-serif,Georgia,serif;font-size:34px;line-height:1}.brand-statement p,.origin-panel p,.principles-grid p{color:var(--muted);line-height:1.65}.origin-panel{display:grid;grid-template-columns:minmax(0,0.78fr) minmax(0,1fr);gap:52px;align-items:start}.about-final h2,.brand-section-heading h2,.brand-statement h2,.origin-panel h2,.role-band h2{margin:0;font-family:Fraunces,ui-serif,Georgia,serif;font-size:50px;font-weight:560;line-height:1.05;letter-spacing:0}.role-band{display:grid;grid-template-columns:minmax(320px,0.92fr) minmax(0,1fr);gap:0;margin-block:70px 26px;overflow:hidden;border-radius:8px;background:var(--green-dark);color:#fff;box-shadow:var(--shadow)}.about-final>div,.role-band>div{padding:44px}.about-final p,.role-band p{color:rgb(255 255 255 / 78%);font-size:18px;line-height:1.65}.audience-grid,.principles-grid{display:grid;gap:16px}.audience-grid h3,.principles-grid h3{margin:12px 0 10px;font-family:Fraunces,ui-serif,Georgia,serif;font-size:28px;font-weight:560;line-height:1.12}.principles-grid article{border:1px solid var(--line);border-radius:8px;padding:24px;background:#fff}.about-final{position:relative;display:grid;grid-template-columns:minmax(320px,0.8fr) minmax(0,1fr);gap:0;align-items:stretch;overflow:hidden;margin-block:62px 34px;border-radius:8px;background:var(--green-dark);color:#fff;box-shadow:var(--shadow)}.about-final img{height:100%;min-height:360px;object-fit:cover}.brand-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,0.78fr);gap:0;align-items:stretch;min-height:610px;margin-top:28px;overflow:hidden;border-radius:8px;background:var(--green-dark);color:#fff;box-shadow:var(--shadow)}.about-brand-hero{position:relative;isolation:isolate;background:linear-gradient(90deg,rgb(4 20 17 / 94%) 0,rgb(4 20 17 / 80%) 45%,rgb(4 20 17 / 38%) 76%,rgb(4 20 17 / 22%) 100%),url('/assets/optimized/canterbury-roof-assessment-solar-1536.webp');background-position:center 44%;background-size:cover}.brand-hero-copy{display:grid;align-content:center;padding:56px}.about-brand-hero .brand-hero-copy{max-width:860px}.brand-hero-panel{align-self:end;margin:42px;border:1px solid rgb(255 255 255 / 24%);border-radius:8px;padding:28px;background:rgb(7 60 52 / 76%);backdrop-filter:blur(14px);box-shadow:0 24px 70px rgb(0 0 0 / 22%)}.brand-hero-panel span{color:#f3c15d;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.brand-hero-panel strong{display:block;margin-top:12px;font-family:Fraunces,ui-serif,Georgia,serif;font-size:30px;font-weight:560;line-height:1.1}.brand-hero-panel ul{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none}.brand-hero-panel li{border-top:1px solid rgb(255 255 255 / 18%);padding-top:10px;color:rgb(255 255 255 / 82%);line-height:1.45}.brand-statement{padding:68px 0 20px}.brand-statement h2{max-width:980px}.brand-statement p{max-width:790px;margin-top:18px;font-size:19px}.origin-panel{margin-block:52px 18px;border-radius:8px;padding:42px;background:#fff;box-shadow:var(--shadow)}.brand-section{padding:68px 0 18px}.brand-section-heading{max-width:820px;margin-bottom:28px}.audience-grid{grid-template-columns:repeat(3,1fr)}.audience-grid article{overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 14px 34px rgb(16 33 29 / 7%)}.audience-grid img{aspect-ratio:4/3;object-fit:cover}.audience-grid div{padding:22px}.audience-grid span{color:var(--green)}.audience-grid p{color:var(--muted);line-height:1.55}.principles-grid{grid-template-columns:repeat(4,1fr)}.role-band{grid-template-columns:repeat(2,1fr)}.role-band>div+div{border-left:1px solid rgb(255 255 255 / 16%)}@media (max-width:1100px){.home-nav{grid-template-columns:minmax(160px,220px) auto}.home-nav nav{display:none}.about-final,.brand-hero,.origin-panel{grid-template-columns:1fr}.brand-hero-panel{margin:0 42px 42px}.audience-grid{grid-template-columns:repeat(2,1fr)}.principles-grid{grid-template-columns:repeat(2,1fr)}.about-final img{min-height:340px}}@media (max-width:760px){.about-final,.brand-hero,.brand-section,.brand-statement,.home-nav,.origin-panel,.role-band{width:min(100% - 28px,1220px)}.brand-hero-copy h1{font-size:46px}.brand-hero-copy p{font-size:18px}.audience-grid,.principles-grid{grid-template-columns:1fr}.about-final>div,.brand-hero-copy,.brand-hero-panel,.role-band>div{padding:28px}.about-final h2,.brand-section-heading h2,.brand-statement h2,.origin-panel h2,.role-band h2{font-size:36px}}.brand-page main{background:linear-gradient(180deg,#fbfcf7 0,#f1f7ed 620px,#fbfcf7 100%)}.home-nav{display:grid;grid-template-columns:minmax(170px,230px) minmax(0,1fr) auto;gap:20px;align-items:center;width:min(1220px,calc(100% - 36px));margin:0 auto;border-bottom:1px solid rgb(17 34 30 / 10%);padding:16px 0;background:0 0;color:var(--green-dark);box-shadow:none}.home-nav nav{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:center;color:var(--green-dark);font-size:13px;font-weight:850}.footer-links a,.home-nav nav a,.nav-dropdown a{display:inline-flex;min-height:44px;align-items:center}.footer-links a[aria-current=page],.home-nav nav a[aria-current=page]{color:var(--green-dark);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}.nav-menu{position:relative;display:inline-flex;align-items:center;padding-block:10px}.nav-menu-trigger{display:inline-flex;align-items:center;gap:6px}.nav-menu-trigger::after{width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);content:""}.nav-dropdown{position:absolute;top:calc(100% - 2px);left:50%;z-index:20;display:grid;min-width:270px;padding:10px;border:1px solid rgb(17 34 30 / 10%);border-radius:8px;background:#fff;box-shadow:0 18px 42px rgb(16 33 29 / 14%);opacity:0;pointer-events:none;transform:translate(-50%,8px);transition:opacity 160ms ease,transform 160ms ease}.nav-menu:focus-within .nav-dropdown,.nav-menu:hover .nav-dropdown{opacity:1;pointer-events:auto;transform:translate(-50%,0)}.nav-dropdown a{border-radius:7px;padding:10px 12px;color:var(--ink);line-height:1.25;text-align:left}.nav-dropdown a:focus-visible,.nav-dropdown a:hover{background:var(--soft)}.nav-dropdown .nav-dropdown-all{margin-top:4px;border-top:1px solid var(--line);border-radius:0 0 7px 7px;color:var(--green)}.home-nav .brand{width:min(210px,40vw)}.home-nav .brand-logo{max-height:46px;filter:none}.brand-page .nav-cta{border-radius:8px;padding:12px 16px;background:var(--accent);color:#fff;white-space:nowrap}.audience-grid article,.origin-panel,.principles-grid article{border:1px solid rgb(17 34 30 / 9%);box-shadow:0 14px 34px rgb(16 33 29 / 7%)}.brand-hero{min-height:500px;margin-top:28px}.brand-hero-copy h1{font-size:60px;line-height:1.02}@media (max-width:1120px){.home-nav{grid-template-columns:minmax(150px,205px) auto}.home-nav nav{display:none}}@media (max-width:760px){.home-nav{width:min(100% - 28px,1220px);grid-template-columns:minmax(145px,1fr) auto}.brand-page .nav-cta{min-height:44px;padding:11px 14px;font-size:13px}.brand-hero-copy h1{font-size:42px;line-height:1.04}.brand-hero-copy p{font-size:17px}.brand-hero{min-height:0}.brand-hero-copy,.brand-hero-panel{padding:28px}.brand-hero-panel{margin:0 28px 28px}}.home-nav{grid-template-columns:minmax(255px,315px) minmax(0,1fr) auto;gap:42px;width:calc(100% - 56px);padding:24px 0}.home-nav nav{gap:12px 38px;font-size:17px;font-weight:850}.nav-menu{padding-block:12px}.nav-dropdown{min-width:310px;padding:12px}.nav-dropdown a{padding:12px 14px;font-size:15px}.home-nav .brand{width:min(285px,40vw)}.home-nav .brand-logo{max-height:64px}.brand-page .nav-cta{min-height:54px;padding:16px 28px;font-size:17px}@media (max-width:1120px){.home-nav{grid-template-columns:minmax(190px,245px) auto;gap:24px}.home-nav nav{display:none}}@media (max-width:760px){.home-nav{width:min(100% - 28px,1220px);grid-template-columns:minmax(150px,1fr) auto;gap:16px;padding:16px 0}.home-nav .brand{width:min(190px,48vw)}.home-nav .brand-logo{max-height:48px}.brand-page .nav-cta{min-height:44px;padding:11px 14px;font-size:13px}}.about-page .audience-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}.about-page .audience-grid article{display:grid;grid-template-rows:auto 1fr;overflow:hidden;min-height:0;border:1px solid rgb(17 34 30 / 9%);border-radius:8px;background:#fff;box-shadow:0 14px 34px rgb(16 33 29 / 7%)}.about-page .audience-grid img{display:block;width:100%;height:auto;height:auto;aspect-ratio:4/3;object-fit:cover}.about-page .audience-grid div{display:grid;align-content:start;padding:24px}.about-page .audience-grid h3{max-width:11em}@media (max-width:900px){.about-page .audience-grid{grid-template-columns:1fr}.about-page .audience-grid article{grid-template-columns:minmax(180px,0.9fr) minmax(0,1fr);grid-template-rows:auto}.about-page .audience-grid img{height:100%;aspect-ratio:auto}}@media (max-width:620px){.about-page .audience-grid article{grid-template-columns:1fr}.about-page .audience-grid img{height:auto;aspect-ratio:4/3}}.nav-cta,.primary-button,.secondary-button{cursor:pointer;transition:background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease,color 160ms ease,transform 160ms ease}.nav-cta:hover,.primary-button:hover{background:#236f2d;box-shadow:0 14px 30px rgb(47 125 50 / 26%);transform:translateY(-1px)}.secondary-button:hover{border-color:rgb(19 122 99 / 35%);background:#fff;color:var(--green-dark);box-shadow:0 10px 24px rgb(16 33 29 / 9%);transform:translateY(-1px)}.about-final,.audience-grid article,.origin-panel,.principles-grid article,.role-band{border-radius:var(--radius)}