/* Shared public navigation and the Aotearoa studio identity. */
.im-header,.im-footer{background:#071e17;color:#faf2de;font-family:Arial,sans-serif}
.im-header{display:flex;align-items:center;justify-content:space-between;gap:3vw;position:relative;z-index:8;padding:12px max(4vw,calc((100vw - 1400px)/2));border-bottom:1px solid #806b45}
.im-header a,.im-footer a{text-decoration:none;color:inherit}
.im-brand{display:flex;align-items:center;gap:9px;color:inherit;font:clamp(1.65rem,2.6vw,2.25rem)/1 Georgia,serif;white-space:nowrap}
.im-brand img{width:48px;height:44px;object-fit:contain}.im-brand small{display:block;font:600 .51rem/1.3 Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;margin-top:5px;color:#dfcc9c}
.im-header .im-links{display:flex;position:static;background:transparent;border:0;box-shadow:none;padding:0;align-items:center;gap:clamp(14px,2.05vw,34px);list-style:none}
.im-header .im-links a,.im-menu{box-sizing:border-box;color:inherit;font:600 .87rem/1.3 Arial,sans-serif;white-space:nowrap}
.im-header .im-links a{display:inline-flex;align-items:center;min-height:44px}
.im-header .im-links a:is(:hover,[aria-current=page]){text-decoration:underline;text-decoration-color:#e9bd67;text-underline-offset:6px}
.im-header .im-contact,.im-menu{border:1px solid #c19d5c;border-radius:40px;padding:8px 18px}
.im-menu{display:none;background:transparent;cursor:pointer;min-height:42px}
.im-footer{padding:44px max(4vw,calc((100vw - 1400px)/2));display:grid;grid-template-columns:1.8fr 1fr 1fr 1.1fr;gap:30px;font-size:.88rem}
.im-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.im-footer strong{color:#e7c786}.im-footer p{margin:12px 0;line-height:1.55}.im-footer a:hover{text-decoration:underline}
.im-journeys{padding:46px max(4vw,calc((100vw - 1380px)/2));color:#173e30;background:#fff9ef}
.im-journeys h2{font:500 clamp(2rem,3vw,3.1rem)/1.1 Georgia,serif;margin:8px 0 22px}.im-journeys>div{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.im-journeys article{border-top:2px solid #be934f;padding:15px 0}.im-journeys article span{font:700 .7rem/1.4 Arial,sans-serif;letter-spacing:.13em;color:#74521c}
.im-journeys h3{font:500 1.5rem/1.2 Georgia,serif;margin:7px 0}.im-journeys p{margin:0 0 16px}.im-journeys article a{color:#184b37;text-decoration:underline;text-underline-offset:.2em;font-weight:650}
.hero{background:#09261c url('/assets/generated/brand-river.webp') left center/auto 115% no-repeat;color:#fff7e7}
.hero-content{min-height:clamp(420px,38vw,565px);padding-top:46px;padding-bottom:46px}
.hero-copy{width:min(50%,630px)}.hero h1{color:#fff7e7;font-size:clamp(3.2rem,4.95vw,5.4rem);line-height:1.03}
.hero::before{position:absolute;content:"";inset:0;background:linear-gradient(90deg,#031b13eb 3%,#062419da 42%,#062419 72%)}
.hero .eyebrow,.hero-proof b{color:#f2c77e}.hero-proof,.hero-lead{color:#faf1df}
.hero-visual{width:65%}.hero-visual img{object-position:58% center}.hero-visual::after{background:linear-gradient(90deg,#062419,transparent 48%)}
.hero .button,.closing .button,.package .button{border-radius:30px}.hero .primary,.closing .primary{background:#edbd64;border-color:#edbd64;color:#242019}
.hero .outline{color:#fff7e7;border-color:#e3ccb2}.hero .outline:hover{background:#173d2b}
.customise,.projects{color:#fff6df;background:#10392a}.customise h2,.customise .feature,.customise .feature strong,.customise .feature small{color:#fff6df}.customise .feature-icon{color:#e5c07d}
.showcase{background:#fbf4e8}.showcase-grid{display:block;padding-block:0}.template-side{padding:38px 0 26px}.sample-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.sample{width:auto}.sample-screen{height:auto;aspect-ratio:1.72}.im-cover{position:static;display:block;width:100%;height:100%;object-fit:cover;object-position:top center}.template-visual .im-cover{position:absolute;inset:0}
.package-side{background:#103729;color:#fff2db;border:0;margin-inline:calc(-1 * clamp(22px,4.05vw,67px));padding:28px clamp(22px,4.05vw,67px);display:grid;grid-template-columns:1fr 2.8fr;gap:12px 22px;align-items:center}.package-side .section-title-row p,.package-side .package-note{color:#e6ddca}.package{background:#102f24;border:1px solid #ac945e;color:#fff4df}.package.popular{background:#204330}.package .amount strong{color:#ffcd6e}.package .amount small,.package p{color:#f0e8d5}.package .outline{border-color:#cba861;color:#fff}.package .primary,.popular-label{background:#e6b759;color:#21281e}.package-note{grid-column:1/-1}.package-note a{color:#fff}
.projects{padding-block:28px}.projects .eyebrow{color:#e3bc79}.projects .project h3,.projects-copy .outline{color:#f1e6c9}.projects-copy .outline{border-color:#c7aa70}
@media(max-width:1000px){.sample-grid{grid-template-columns:repeat(3,1fr)}.package-side{display:block}.package-side .section-title-row{margin-bottom:20px}.package-note{margin-top:12px}}
@media(max-width:860px){.im-header{flex-wrap:wrap;gap:8px;padding:10px 4vw}.im-header .im-links{width:100%;flex-wrap:wrap}.im-js .im-header .im-menu{display:block}.im-js .im-header .im-links{display:none}.im-js .im-header .im-links.open{display:grid;position:absolute;inset:100% 0 auto;background:#0c2c21;padding:8px 4vw 18px;gap:0;max-height:75dvh;overflow:auto}.im-js .im-header .im-links a{padding:7px 12px}.im-footer{grid-template-columns:1.6fr 1fr}.im-journeys>div{grid-template-columns:1fr}.im-journeys article{padding:12px 0}.hero{background-size:auto 80%;background-position:left top}.hero-copy{width:min(100%,560px)}.hero-content{min-height:0;padding-top:34px;padding-bottom:225px}.hero-visual{bottom:0;top:auto;width:100%;height:215px}.hero-visual img{object-position:center 66%}.hero-visual::after{background:linear-gradient(#08281b,transparent 48%)}.hero::before{background:linear-gradient(0deg,#08281b 25%,#08281bef 70%,#08281bdc)}.hero h1{font-size:clamp(2.6rem,7vw,4.5rem)}}
@media(max-width:600px){.im-footer{grid-template-columns:1fr 1fr;gap:22px}.im-footer>div{grid-column:1/-1}.sample-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.sample-screen{height:auto}.sample-label{font-size:.75rem}.package-side{margin-inline:-19px;padding:24px 19px}.package .button{min-height:44px}.hero-content{padding-bottom:185px}.hero-visual{height:178px}.hero h1{font-size:clamp(2.5rem,10.6vw,3.5rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(min-width:861px){.hero-visual{mask-image:linear-gradient(90deg,transparent,#000 30%)}}
/* Each screenshot stays inside its own preview link at every screen size. */
.template-card.rich .template-visual{position:relative;height:auto;aspect-ratio:1.72;padding:0;overflow:hidden}
.im-industry-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 24px}
.im-industry-nav strong{margin-right:5px;color:#173e30}
.im-industry-nav a{display:inline-flex;align-items:center;min-height:42px;padding:6px 13px;border:1px solid #a29f8c;border-radius:28px;font-size:.9rem;color:#183f30;text-decoration:none}
.im-industry-nav a:hover{background:#e9ecdf}
.template-card[id]{scroll-margin-top:16px}
body:not(.studio-body) .case-features{color:#795724}
body:not(.studio-body) .btn.gold{background:#e1b663;border-color:#e1b663;color:#1d271e}
.im-footer nav a{min-height:28px}
.im-header a:focus-visible,.im-menu:focus-visible,.im-footer a:focus-visible{outline:3px solid #ffd478;outline-offset:2px}
@media(max-width:600px){.im-industry-nav strong{width:100%}}

/* November 2026: clearer reading and simpler navigation. */
body:not(.studio-body){font-size:18px;line-height:1.65}
body:not(.studio-body) p{line-height:1.65}
.im-header .im-links a,.im-menu{font-size:1rem;min-height:48px}
.im-brand small{font-size:.65rem;letter-spacing:.1em}
.im-menu{min-width:108px}
.im-js body:not(.im-home) .im-header .im-menu{display:block}
.im-js body:not(.im-home) .im-header .im-links{display:none}
.im-js body:not(.im-home) .im-header .im-links.open{display:grid;position:absolute;inset:100% 0 auto auto;min-width:min(340px,100%);max-height:75dvh;overflow:auto;background:#0c2c21;padding:12px 24px 20px;gap:0;border-bottom:1px solid #c19d5c;box-shadow:0 12px 25px #0003}
.im-js body:not(.im-home) .im-header .im-links.open a{padding:10px 12px}
.im-home h2{font-size:clamp(1.9rem,2.6vw,2.7rem);line-height:1.2}
.im-home .hero-content{padding-block:64px;min-height:540px}
.im-home .hero h1{font-size:clamp(2.8rem,4.5vw,4.7rem);max-width:650px}
.im-home .hero-lead{font-size:1.125rem;max-width:500px}
.im-home .hero-proof{font-size:.95rem;gap:4px;flex-wrap:wrap}
.im-home .button{font-size:1rem;min-height:50px;padding:12px 22px}
.im-home .section-title-row{align-items:start;margin-bottom:24px}
.im-home .section-title-row p,.im-home .projects-copy p:not(.eyebrow),.im-home .closing-copy p{font-size:1.05rem}
.im-home .template-side{padding-block:52px}
.im-home .sample-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.im-home .sample-label{font-size:1rem;line-height:1.5;margin-top:10px}
.im-home .sample-note,.im-home .package-note{font-size:.95rem;line-height:1.65;margin-top:22px}
.im-home .under-link{font-size:1rem;min-height:44px;display:inline-flex;align-items:center}
.im-home .package-side{display:block;padding-block:48px}
.im-home .package-grid{gap:20px}
.im-home .package{padding:28px 24px;min-height:290px}
.im-home .package h3{font-size:1.8rem}
.im-home .package p{font-size:1rem;line-height:1.6;margin-top:10px}
.im-home .amount{gap:7px;margin-block:24px}
.im-home .amount small{font-size:.95rem}
.im-home .amount strong{font-size:2.4rem}
.im-home .popular-label{font-size:.85rem;padding:5px 14px}
.im-home .projects{padding-block:52px}
.im-home .project h3{font-size:1.05rem;line-height:1.5;margin-top:12px}
.im-home .projects-copy p:not(.eyebrow){max-width:32rem}
.im-home .steps{padding-block:40px}
.im-home .step strong{font-size:1rem}
.im-home .step small{font-size:.95rem;line-height:1.5}
.im-home .eyebrow{font-size:.8rem;letter-spacing:.15em}
.im-home .closing-grid{padding-block:56px}
.im-footer{font-size:1rem}
.im-footer nav a,.im-footer>div>a:not(.im-brand){display:inline-flex;align-items:center;min-height:44px}
@media(max-width:1000px){.im-home .projects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.im-home .projects-copy{grid-column:1/-1}.im-home .steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.im-home .steps h2{grid-column:1/-1}}
@media(max-width:860px){.im-home .hero-content{padding-top:40px;padding-bottom:270px;min-height:0}.im-home .hero-copy{width:100%}.im-home .hero-visual{height:250px}.im-home .sample-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.im-home .package-grid{grid-template-columns:1fr}.im-home .package{min-height:0}.im-header .im-links a{font-size:1.05rem}}
@media(max-width:600px){.im-home .hero h1{font-size:clamp(2.55rem,10vw,3.5rem);line-height:1.12}.im-home .hero-actions{display:grid;grid-template-columns:1fr;gap:12px}.im-home .hero-actions .button{width:100%}.im-home .hero-proof span{padding:0 9px}.im-home .hero-proof span:first-child{padding-left:0}.im-home .hero-proof{font-size:.85rem}.im-home .sample-grid,.im-home .projects-grid{grid-template-columns:1fr}.im-home .sample-screen,.im-home .project-image{aspect-ratio:1.72}.im-home .section-title-row{display:block}.im-home .package{padding:26px 22px}.im-home .steps-grid{grid-template-columns:1fr}.im-home .step{flex-direction:row;gap:14px}.im-home .closing-photo{height:240px}.im-brand{font-size:1.7rem}.im-brand img{width:40px}.im-brand small{font-size:.58rem}}

/* Image QA: keep the original logo legible and the hero photo in normal flow. */
.im-header .im-brand img,.im-footer .im-brand img{width:66px;height:52px;flex:none;object-fit:contain;padding:6px;background:#fff8e9;border-radius:7px}
.im-home .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#08281b;isolation:isolate}
.im-home .hero::before{display:none}
.im-home .hero-visual{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;height:auto;min-height:440px;mask-image:none;z-index:0}
.im-home .hero-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:65% center}
.im-home .hero-visual::after{display:none}
.im-home .hero-content{grid-column:1;grid-row:1;width:100%;margin:0;min-height:520px;padding:48px clamp(22px,4.05vw,67px)}
.im-home .hero-copy{width:100%;max-width:650px}
.im-home .hero h1{font-size:clamp(2.6rem,4vw,4.4rem)}
@media(max-width:860px){
 .im-home .hero{grid-template-columns:minmax(0,1fr)}
 .im-home .hero-visual{grid-column:1;grid-row:1;min-height:0;height:clamp(185px,45vw,310px)}
 .im-home .hero-visual img{object-position:center center}
 .im-home .hero-content{grid-column:1;grid-row:2;min-height:0;padding:28px 22px 36px}
 .im-home .hero h1{font-size:clamp(2.25rem,8.8vw,3.5rem)}
 .im-header .im-brand img{width:55px;height:44px;padding:5px}
 .im-header .im-brand{font-size:1.45rem;gap:7px}
 .im-header .im-brand small{font-size:.52rem}
 .im-header .im-menu{min-width:92px;padding-inline:14px}
}
@media(max-width:355px){.im-header .im-brand{font-size:1.2rem}.im-header .im-brand img{width:48px;height:40px}.im-header .im-brand small{font-size:.45rem}.im-header .im-menu{min-width:82px;padding-inline:10px}}
