:root{--green:#123d32;--deep:#0b2d25;--gold:#eac778;--cream:#f5f1e8;--ink:#243c32;--line:#d7dbd0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b4742d;outline-offset:6px}.draft{background:var(--deep);color:#d4dace;text-align:center;padding:10px 16px;font-size:10px;letter-spacing:1.7px}header{display:flex;align-items:center;justify-content:space-between;padding:24px 5%;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:18px;letter-spacing:2px;font-weight:700}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:5px}.brandmark{font-family:Georgia,serif;font-size:44px;line-height:1;position:relative}.brandmark span{position:absolute;top:-4px;right:-5px;font-size:13px;color:#a27f34}nav{display:flex;gap:28px;font-size:12px}.navcta{font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:7px}.hero{display:grid;grid-template-columns:1.2fr .8fr;min-height:640px;background:var(--green);color:var(--cream)}.herocopy{padding:65px 8% 28px 8%;display:flex;flex-direction:column}.eyebrow,.sectionlabel{font-size:10px;letter-spacing:2px;line-height:1.6;font-weight:600}.eyebrow{display:flex;align-items:center;gap:10px;color:#d4d9c7}.dot{height:6px;width:6px;border-radius:50%;background:var(--gold)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2px;line-height:1.03;margin:30px 0}h1{font-size:clamp(60px,6.8vw,108px)}h1 em,h2 em{font-weight:400;color:#a07935}h1 em{color:var(--gold)}.hero p{font-size:16px;line-height:1.8;color:#d6ded3}.actions{display:flex;align-items:center;gap:30px;margin:24px 0 50px}.button{padding:17px 22px;display:inline-flex;gap:35px;justify-content:space-between;align-items:center;font-size:12px;border:0}.gold{background:var(--gold);color:var(--deep)}.dark{background:var(--green);color:var(--cream)}.textlink{font-size:12px}.textlink span{margin-left:15px}.herobottom{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #547065;padding-top:22px;margin-top:auto;font-size:8px;letter-spacing:1.5px}.festivalposter{position:relative;overflow:hidden;background:#dfbf79;color:var(--green);padding:55px 12%;display:flex;flex-direction:column;border-left:1px solid #bc9c59}.posterstar{font-size:90px;line-height:1}.posterdate{position:absolute;right:10%;top:65px;font-size:10px;letter-spacing:2px;line-height:1.6}.posterdate b{font-size:24px;letter-spacing:-1px}.posterdate small{display:block;font-size:12px}.posterword{font-size:clamp(50px,6.3vw,96px);font-weight:800;letter-spacing:-5px;line-height:.92;margin-top:48px;z-index:1}.posterword em{font:italic 48px Georgia,serif;letter-spacing:-2px}.posterfooter{font-size:8px;letter-spacing:2px;margin-top:auto;padding-top:70px;z-index:1}.rivers{position:absolute;bottom:-120px;left:-150px;transform:rotate(-20deg);width:950px;height:300px;opacity:.25}.rivers i{display:block;border:18px solid var(--green);border-radius:50%;height:170px;width:950px;position:absolute}.rivers i:nth-child(2){top:55px}.rivers i:nth-child(3){top:110px}.ticker{display:flex;justify-content:space-around;align-items:center;gap:20px;background:#e7e8de;border-bottom:1px solid var(--line);padding:24px 5%;font-size:11px;letter-spacing:2px;flex-wrap:wrap}.section{padding:90px 7%;border-bottom:1px solid var(--line)}h2{font-size:clamp(38px,4.4vw,66px)}p{font-size:14px;line-height:1.85}.story{display:grid;grid-template-columns:1fr 3fr;gap:7%}.story h2{margin-top:0}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:40px}.underlink{font-size:11px;padding:9px 0;border:0;border-bottom:1px solid currentColor;background:transparent;display:inline-block}.programme{background:#fffdf7}.programmeintro{display:flex;justify-content:space-between;align-items:end;gap:40px}.programmeintro p{font-size:12px;max-width:340px}.programmeintro small{display:block;margin-top:14px;color:#6e776b;font-size:10px}.daytabs{display:grid;grid-template-columns:repeat(6,1fr);margin-top:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.daytabs button{border:0;border-right:1px solid var(--line);padding:22px 10px;background:transparent;color:var(--ink);text-align:center}.daytabs button:last-child{border-right:0}.daytabs button[aria-selected=true]{background:var(--green);color:var(--cream)}.daytabs b{font:32px Georgia,serif;display:block;margin-bottom:6px}.daytabs span{font-size:9px;letter-spacing:1px}#daypanel{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;padding:42px 0}#daypanel h3{font:36px Georgia,serif;line-height:1.1;margin:14px 0}#daypanel p{max-width:340px;font-size:13px}.daynumber{color:#9e7b36;letter-spacing:2px;font-size:10px}.timings{list-style:none;padding:0;margin:0}.timings li{display:grid;grid-template-columns:90px 1fr;border-bottom:1px solid var(--line);padding:15px 0;gap:20px}.timings time{font-size:11px;color:#757d70;padding-top:4px}.timings strong{font-size:14px;font-weight:500}.timings small{display:block;font-size:11px;line-height:1.7;color:#747a6e;margin-top:4px}.schedulefoot{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px;border-top:1px solid var(--line);padding-top:18px}.community{background:#e6e8dd}.sectionintro{max-width:470px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:50px}.benefits article{border-top:1px solid #aab5a4;padding-top:22px}.benefits span{font-size:11px;color:#68725e}.benefits h3{font:28px Georgia,serif;margin-bottom:12px}.benefits p{font-size:13px}.legacyline{display:flex;gap:60px;align-items:center;border-top:1px solid #b1baa9;margin-top:40px;padding-top:22px}.legacyline span{font-size:9px;letter-spacing:2px;white-space:nowrap}.legacyline p{font-size:12px;max-width:650px}.leadership{background:var(--deep);color:#e9ece0}.leadergrid{display:grid;grid-template-columns:1fr 1.25fr;gap:12%;margin-top:38px}.crest{font-size:56px;color:var(--gold)}.leadership h2 em{color:var(--gold)}.leadername{font:32px Georgia,serif;margin-bottom:8px;line-height:1.2}.leadertitle{font-size:9px;letter-spacing:2px;color:var(--gold)}.leadership p{font-size:13px;color:#d5ddd1}.achievements details{border-top:1px solid #466155;padding:18px 0}.achievements summary{display:flex;justify-content:space-between;font-size:13px;cursor:pointer;list-style:none}.achievements summary span{color:var(--gold)}.achievements details a{display:inline-block;font-size:10px;margin:5px 15px 5px 0;border-bottom:1px solid #839882}.sourcefoot{font-size:9px;line-height:1.6;display:block;color:#afc0ae;margin-top:18px}.visitgrid{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;margin-top:25px}.visit h2{margin-top:0}.mapnote{font-size:10px;line-height:1.7;display:block;max-width:380px;margin-top:18px;color:#687564}.visitnotes{display:grid;grid-template-columns:1fr 1fr;gap:30px}.visitnotes article{border-top:1px solid var(--line);padding-top:15px}.visitnotes h3{font-size:13px;font-weight:600}.visitnotes p{font-size:12px}.participate{background:#e7c982}.participate h2{max-width:850px}.participate h2 em{color:var(--green)}.participatelinks{display:grid;grid-template-columns:1fr 1fr;gap:0 50px;margin-top:45px}.participatelinks button{display:flex;align-items:center;justify-content:space-between;background:none;border:0;border-top:1px solid #a78e51;color:var(--deep);padding:22px 0;text-align:left;font-size:16px}.participatelinks span{font-size:24px}.applicationnote{font-size:10px;margin-top:25px}.faq{display:grid;grid-template-columns:1fr 2fr;gap:10%}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq summary{font-size:14px;cursor:pointer}.faq p{font-size:12px}footer{padding:45px 7%;display:flex;align-items:center;justify-content:space-between;gap:35px}footer p,footer div{font-size:11px;line-height:1.8}footer small{font-size:9px;line-height:1.6}dialog{border:0;max-width:540px;width:calc(100% - 40px);background:var(--cream);color:var(--ink);padding:44px}dialog::backdrop{background:#092b25bb}dialog h2{font-size:38px}dialog h3{font-size:14px}dialog li{font-size:13px;line-height:1.8}.close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:30px}.dialognotice{font-size:11px;border-top:1px solid var(--line);padding-top:15px}dialog .button{margin-top:12px}@media(max-width:800px){nav{display:none}.hero{grid-template-columns:1fr}.herocopy{padding:45px 7% 30px}.festivalposter{min-height:420px;padding:35px 7%}.posterword{font-size:80px;margin-top:10px}.posterdate{top:45px}.posterstar{font-size:48px}.posterfooter{padding-top:40px}.hero h1{font-size:72px}.section{padding:60px 7%}.story,.leadergrid,.visitgrid,.faq{grid-template-columns:1fr;gap:30px}.story h2{margin-top:20px}.programmeintro{display:block}.daytabs b{font-size:24px}.daytabs button{padding:18px 4px}#daypanel{grid-template-columns:1fr;gap:20px}.benefits{grid-template-columns:1fr;gap:20px}.benefits article{display:block}.legacyline{display:block}.legacyline p{margin-top:15px}.leadergrid{margin-top:20px}.leadership h2{margin-top:15px}.crest{display:none}.participatelinks{grid-template-columns:1fr}.twocol{grid-template-columns:1fr;gap:0}.schedulefoot{gap:20px;align-items:start}.visitnotes{gap:20px}footer{flex-wrap:wrap}.ticker{font-size:9px;letter-spacing:1px}.herobottom{font-size:7px}h2{letter-spacing:-1.5px}.navcta{font-size:10px}.draft{font-size:8px;letter-spacing:1px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Christmas homecoming hero */
.christmashero{position:relative;isolation:isolate;display:block;min-height:780px;overflow:hidden;background:#143a2c}
.christmashero .heroimage{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}
.christmashero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,29,20,.35),rgba(4,29,20,.38) 48%,rgba(4,29,20,.22) 75%,rgba(4,29,20,.67));z-index:-2}
.christmashero::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 35%,rgba(3,27,17,.44),transparent 68%);z-index:-1}
.christmashero .herocopy{padding:76px 6% 25px;min-height:780px;max-width:1400px;margin:auto;align-items:center;text-align:center}
.christmashero .eyebrow{justify-content:center;color:#fff1c9;font-size:11px;letter-spacing:3px}
.christmashero h1{font-size:clamp(64px,7.7vw,118px);line-height:1.02;letter-spacing:-3px;margin:35px 0 20px;color:#fff9ec;text-shadow:0 3px 28px #08221766}
.christmashero .homeword{position:relative;display:inline-block;color:#f1cd79}
.christmascap{position:absolute;width:100px;height:auto;right:-42px;top:-43px;transform:rotate(20deg);filter:drop-shadow(0 4px 4px #0003)}
.christmashero p{color:#fff9eb;font-size:16px;line-height:1.7;margin:10px 0 22px;text-shadow:0 2px 8px #0008}
.christmashero .herodates{font-size:10px;letter-spacing:2px}
.christmashero .actions{justify-content:center;margin:28px 0 110px;gap:32px}
.christmashero .gold{background:#eed08b;padding:19px 27px;box-shadow:0 5px 20px #08221733}
.christmashero .textlink{color:#fff9eb;border-bottom:1px solid #fff8;padding:10px 0}
.christmashero .herobottom{width:100%;border-color:#e4e7d64d;color:#fff5dc;letter-spacing:1.5px;font-size:8px}
@media(max-width:800px){.christmashero,.christmashero .herocopy{min-height:720px}.christmashero .herocopy{padding:60px 7% 24px}.christmashero h1{font-size:clamp(56px,10vw,80px);letter-spacing:-2px}.christmashero .heroimage{object-position:50% center}.christmascap{width:74px;right:-26px;top:-30px}.christmashero p{font-size:13px}.christmashero .eyebrow{font-size:9px;letter-spacing:2px}.christmashero .actions{gap:22px;margin-bottom:100px}.christmashero .herobottom{font-size:7px;letter-spacing:1px}}

/* Free attendance and Ayakoro waterways */
.freebadge{display:inline-flex;align-items:center;gap:13px;margin:18px 0 0;border:1px solid #edd19a88;background:#102e23b3;padding:11px 18px;color:#f3d18a;font-size:10px;font-weight:700;letter-spacing:2px}
.freebadge span{border-left:1px solid #edd19a66;padding-left:13px;font-size:11px;font-weight:400;letter-spacing:.2px;color:#fff9ec}
.christmashero .actions{margin-top:23px;margin-bottom:80px}
.canoemotif{width:180px;height:auto;display:block;color:#a5813c}
.storyaside .canoemotif{margin-top:42px;width:155px}
.motifcaption{display:block;font-size:8px;letter-spacing:1.5px;line-height:1.8;color:#71816d;margin-top:15px}
.programmewelcome{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0 0;padding:13px 0;border-top:1px solid var(--line)}
.programmewelcome>span{font:italic 21px Georgia,serif;color:var(--green)}
.programmewelcome .canoemotif{width:105px}
.programme .daytabs{margin-top:0}
.legacymark{min-width:165px}.legacymark .canoemotif{width:100px;margin-bottom:14px}
.heritagecanoe .canoemotif{width:95px;margin-top:20px}
@media(max-width:800px){.storyaside{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.storyaside .canoemotif{width:105px;margin:0}.storyaside .motifcaption{display:none}.programmewelcome>span{font-size:17px}.programmewelcome .canoemotif{width:80px}.freebadge{font-size:8px;letter-spacing:1.5px;padding:10px 12px;gap:10px}.freebadge span{font-size:10px}.christmashero .actions{margin-bottom:70px}.legacymark{display:flex;align-items:center;gap:20px}.legacymark .canoemotif{margin:0}}
