
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#0b1e31;--navy2:#142e47;--gold:#c6a35a;--goldlight:#ebd4a2;--cream:#f7f5ef;--ink:#182738;--muted:#667483;--line:#e5e7e7}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}
.top{position:sticky;top:0;z-index:30;background:rgba(11,30,49,.97);backdrop-filter:blur(14px);border-bottom:1px solid #ffffff20}.topin{display:flex;align-items:center;gap:30px;min-height:88px}.brand{display:flex;align-items:center;gap:13px;color:white;min-width:285px}.brand img{height:64px;width:64px;object-fit:contain}.brand span{font:700 11px/1.45 'Manrope',sans-serif;letter-spacing:.1em}.brand strong{display:block;font-size:14px;color:var(--goldlight);letter-spacing:.05em}.nav{display:flex;align-items:center;gap:19px;margin-left:auto}.nav a{font-size:13px;color:#e2e9ed;font-weight:600;white-space:nowrap}.nav a:hover,.nav a[aria-current]{color:var(--goldlight)}.portal{border:1px solid #c6a35a77;color:var(--goldlight);padding:10px 13px;border-radius:7px;font-size:12px;white-space:nowrap}.menu{display:none;background:none;border:0;color:white;font-size:26px;cursor:pointer}
.hero{background:radial-gradient(ellipse at 85% 25%,#2c4860 0%,transparent 48%),linear-gradient(135deg,#081a2b,#102c46);color:white;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:auto -10% -150px 45%;height:360px;border:1px solid #c6a35a22;border-radius:50%;pointer-events:none}.heroin{min-height:600px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:70px;padding:75px 0}.eyebrow{display:block;color:#aa8237;font-size:12px;font-weight:800;letter-spacing:.19em;text-transform:uppercase;margin-bottom:19px}.hero .eyebrow,.dark .eyebrow{color:var(--goldlight)}h1,h2,h3{font-family:'Manrope',sans-serif;line-height:1.18;letter-spacing:-.04em}h1{font-size:clamp(44px,5.3vw,78px);margin:0 0 25px;font-weight:800}h1 em{font-style:normal;color:var(--goldlight)}h2{font-size:clamp(30px,3.4vw,49px);margin:0 0 21px}h3{font-size:21px;margin:0 0 12px}.hero p{font-size:18px;max-width:610px;color:#d4e0e8;line-height:1.85}.heroimage{position:relative;display:flex;justify-content:center;align-items:center}.heroimage:before{content:"";position:absolute;width:96%;aspect-ratio:1;border-radius:50%;border:1px solid #d2b16a55;box-shadow:0 0 0 30px #ffffff05,0 0 0 60px #ffffff04}.heroimage img{position:relative;max-height:400px;filter:drop-shadow(0 24px 45px #0006)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 23px;background:var(--gold);border:1px solid var(--gold);color:#12263a;border-radius:7px;font-weight:800;font-size:14px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px);background:#dfbd79}.btn.outline{background:transparent;color:#fff;border-color:#ffffff77}.btn.outline:hover{background:#ffffff17}.section{padding:95px 0}.section.alt{background:white}.section.dark{background:var(--navy);color:white}.section.dark p{color:#cfdae3}.lead{font-size:18px;color:#586a78;max-width:750px;line-height:1.9}.intro{max-width:790px;margin-bottom:35px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.card{background:white;border:1px solid var(--line);border-radius:13px;padding:32px;box-shadow:0 12px 35px #142e4709;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #142e4717}.card p{color:var(--muted);margin:0 0 22px}.card a{font-weight:800;color:#98702e;font-size:14px}.icon{font-size:27px;color:#b58b42;margin-bottom:23px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:75px}.medals{display:grid;grid-template-columns:1fr 1fr;gap:18px}.medal{text-align:center;border:1px solid #ffffff25;border-radius:13px;padding:22px;background:#ffffff0c}.medal img{width:100%;height:200px;object-fit:contain;margin:0 auto 17px}.medal h3{color:#f3db9f;margin:0 0 3px}.medal span{color:#cbd5dd;font-size:13px}.feature{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.feature-visual{background:#e9e3d6;border-radius:18px;padding:50px;min-height:330px;display:flex;justify-content:center}.feature-visual img{max-height:270px;object-fit:contain}.rule{width:65px;height:3px;background:var(--gold);margin:24px 0}.pagehero{padding:90px 0;background:linear-gradient(125deg,#091b2d,#193c58);color:white}.pagehero h1{font-size:clamp(40px,5vw,66px);max-width:900px}.pagehero p{max-width:720px;color:#d5e0e9;font-size:18px}.prose{max-width:850px}.prose p{color:#4e6070;font-size:17px}.callout{border-left:4px solid var(--gold);padding:25px 30px;background:#fff;border-radius:0 10px 10px 0;margin:30px 0}.callout p{margin:0}.pill{display:inline-block;padding:5px 12px;border-radius:20px;background:#efe6d4;color:#805e29;font-size:12px;font-weight:800;letter-spacing:.05em}.two{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.notice{background:#fff;border:1px solid var(--line);padding:28px;border-radius:12px}.notice p{color:var(--muted)}.footer{background:#071626;color:#d8e2e9;padding:45px 0}.footerin{display:flex;justify-content:space-between;gap:25px}.footer strong{color:white}.footer small{color:#99aab8}.footer a{color:#e4c585}.footnote{color:#6b7b88;font-size:13px}.divider{height:1px;background:var(--line);margin:28px 0}
@media(max-width:1100px){.topin{flex-wrap:wrap;padding:12px 0}.menu{display:block;margin-left:auto}.portal{order:2}.nav{display:none;order:3;width:100%;margin:0;flex-direction:column;align-items:stretch;padding:14px 0}.nav.open{display:flex}.nav a{padding:8px 0}.brand{min-width:0}.heroin{gap:30px}}
@media(max-width:720px){.wrap{width:min(100% - 32px,1200px)}.brand img{width:49px;height:49px}.brand span{font-size:9px}.brand strong{font-size:11px}.portal{display:none}.heroin{grid-template-columns:1fr;padding:66px 0 55px;min-height:0}.heroimage img{max-height:260px}.heroimage:before{width:240px}.section{padding:65px 0}.grid,.split,.feature,.two{grid-template-columns:1fr}.grid{gap:14px}.card{padding:25px}.split,.feature{gap:35px}.medal img{height:150px}.pagehero{padding:65px 0}.footerin{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* V3: photographic editorial homepage, closely following approved concept */
.hero{background:#081e31;isolation:isolate}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#071b2ef2 0%,#071b2edc 38%,#071b2e48 100%),url('medal-hero.jpg') center 46%/cover no-repeat;z-index:-1}
.hero:after{display:none}
.heroin{grid-template-columns:1fr;min-height:490px;padding:95px 0 90px}
.heroin>div:first-child{max-width:790px}
.hero h1{font-size:clamp(40px,5vw,69px);line-height:1.14}
.hero p{font-size:18px;max-width:590px}
.heroimage{display:none}
.quicklinks{background:white;padding:24px 0 28px}
.quickgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.quickitem{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 20px 23px;background:#f8f9fa;border:1px solid #f1f1f1;border-radius:12px;transition:.2s}
.quickitem:hover{transform:translateY(-4px);box-shadow:0 12px 30px #102d4916}
.quickitem .icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#f0d08b;color:#0b2743;font-size:24px;margin-bottom:16px}
.quickitem h3{font-size:17px;margin-bottom:7px}
.quickitem p{font-size:13px;line-height:1.55;color:#586777;margin:0 0 10px}
.quickitem .arrow{margin-top:auto;color:#0b2743}
.historyband{background:#08253e;color:white;display:grid;grid-template-columns:1fr 1fr;min-height:360px}
.historycopy{padding:55px max(32px,calc((100vw - 1200px)/2));padding-right:50px}
.historycopy h2{font-size:clamp(32px,3vw,45px)}
.historycopy p{color:#d4e1ea;max-width:530px}
.historyvisual{background:linear-gradient(135deg,#071e34aa,#071e3444),url('medal-hero.jpg') center/cover;min-height:340px;position:relative}
.historyvisual:after{content:"25 YEARS OF SERVICE";position:absolute;bottom:25px;right:30px;color:#f4e1ba;font:800 12px 'Manrope',sans-serif;letter-spacing:.18em}
.eventpanel{padding:65px 0;background:#fff}
.eventcards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}
.eventcard{background:#fafafa;border:1px solid #e8ebee;border-radius:12px;padding:25px;display:flex;gap:18px;align-items:center}
.eventbadge{background:#f5e8d0;color:#9b762d;padding:13px;border-radius:8px;font-size:28px;font-weight:800;line-height:1}
.eventcard p{font-size:14px;color:#667483;margin:5px 0 0}
.gallerystrip{background:#f5f4f1;padding:65px 0}
.galleryitems{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:26px}
.galleryitems img{width:100%;height:240px;object-fit:contain;background:white;border-radius:10px;padding:15px}
.galleryitems figure{margin:0}
.galleryitems figcaption{font-size:13px;margin-top:8px;color:#667483}
@media(max-width:720px){.heroin{min-height:490px;padding:72px 0}.hero:before{background:linear-gradient(90deg,#071b2ef0,#071b2ec2),url('medal-hero.jpg') 45% center/cover no-repeat}.quickgrid{grid-template-columns:repeat(2,1fr)}.quickitem{padding:20px 12px}.historyband{grid-template-columns:1fr}.historycopy{padding:48px 22px}.historyvisual{min-height:250px}.eventcards,.galleryitems{grid-template-columns:1fr}.galleryitems img{height:210px}}

/* V4 authorised historic photograph */
.hero:before{background:linear-gradient(90deg,#071b2ff5 0%,#071b2fe8 30%,#071b2f9a 58%,#071b2f22 100%),url("christchurch-central-1948.jpg") center 47%/cover no-repeat}
.historyvisual{background:linear-gradient(90deg,#071e3430,#071e3408),url("christchurch-central-1948.jpg") center/cover no-repeat}
.historyvisual:after{content:"CHRISTCHURCH CENTRAL · 1948"}
.historic-photo{margin:38px 0}.historic-photo img{width:100%;height:auto;border-radius:12px}.historic-photo figcaption{font-size:14px;color:#657483;line-height:1.6;margin-top:12px}
@media(max-width:720px){.hero:before{background:linear-gradient(90deg,#071b2ff0,#071b2fbd),url("christchurch-central-1948.jpg") 60% center/cover no-repeat}}

/* ==========================================================
   APPROVED HOMEPAGE HERO — SINGLE AUTHORITATIVE IMPLEMENTATION
   The historic photograph is right-aligned. The gradient is a
   separate full-width layer so the image can move independently.
   ========================================================== */
.hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: #071b2e;
}
.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image: url('christchurch-central-1948.jpg');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 73% auto;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    pointer-events: none;
}
.hero::after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    height: auto;
    width: auto;
    z-index: -1;
    background: linear-gradient(90deg,
        #071b2e 0%,
        #071b2e 20%,
        rgba(7,27,46,.97) 34%,
        rgba(7,27,46,.77) 48%,
        rgba(7,27,46,.27) 72%,
        rgba(7,27,46,.05) 100%);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    pointer-events: none;
}
.hero .heroin {
    position: relative;
    z-index: 1;
}
@media (min-width: 900px) {
    .hero .heroin { min-height: 540px; }
    .hero .heroin > div:first-child { max-width: 790px; }
    .hero h1 { font-size: clamp(40px, 5vw, 69px); }
}
@media (max-width: 899px) {
    .hero::before {
        background-position: 65% center;
        background-size: cover;
    }
    .hero::after {
        background: linear-gradient(90deg,
            rgba(7,27,46,.98),
            rgba(7,27,46,.87) 58%,
            rgba(7,27,46,.58));
    }
}
