@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--deep:#092f39;--text:#163b44;--paper:#f9f8f4;--cream:#f1f2ed;--line:#cbd5d2;--accent:#8acbbd;--white:#fff;--soft:#597078}
*{box-sizing:border-box}
html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}p{line-height:1.72}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:700;line-height:1.03;letter-spacing:-.018em}h1{font-size:clamp(3.1rem,5.9vw,6.6rem)}h2{font-size:clamp(2.6rem,4.5vw,4.7rem)}h3{font-size:clamp(2.1rem,3vw,3.4rem)}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}
.site-header{position:sticky;top:0;background:rgba(249,248,244,.98);z-index:100;box-shadow:0 1px 0 rgba(9,47,57,.1)}.header-inner{height:82px;display:flex;align-items:center;gap:30px}.site-brand{display:flex;align-items:center;width:180px;flex-shrink:0}.site-brand img{height:64px;object-fit:contain}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:28px}.desktop-nav a{font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:11px 0;border-bottom:2px solid transparent}.desktop-nav a:hover,.desktop-nav a[aria-current]{border-color:var(--deep)}.header-contact{white-space:nowrap;border:1px solid var(--deep);padding:12px 15px;font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:700}.header-contact span{margin-left:9px}#menu-toggle{display:none;border:0;background:transparent;color:var(--deep);font-size:15px;font-weight:700;cursor:pointer}.mobile-nav{display:none}
.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:17px 21px;min-height:58px;font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-weight:700;letter-spacing:.025em;font-size:19px;transition:background .16s,transform .16s;cursor:pointer}.primary-button{background:var(--deep);color:#fff;border:1px solid var(--deep)}.secondary-button{background:transparent;color:var(--deep);border:1px solid var(--deep)}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px)}.secondary-button:hover{background:var(--accent)}.text-link{font-family:'Barlow Condensed',sans-serif;display:inline-flex;align-items:center;gap:16px;font-weight:700;font-size:21px;border-bottom:1px solid currentColor;padding-bottom:6px}.text-link:hover{color:#27786c}.text-link span{font-size:19px}
.home-photo{height:min(72vh,720px);min-height:430px;overflow:hidden;background:var(--deep)}.home-photo img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.hero-intro{padding:30px 0 100px}.intro-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:65px}.positioning{font-size:16px;font-weight:700;margin:0;line-height:1.4}.intro-buttons{display:flex;gap:11px}.intro-body{display:grid;grid-template-columns:1.12fr .88fr;gap:6%;align-items:start}.intro-body h1{font-size:clamp(3.4rem,6.1vw,6.8rem);max-width:550px}.intro-body>p{font-size:clamp(1.1rem,1.65vw,1.42rem);line-height:1.75;max-width:740px;color:#2b474c;margin:6px 0 0}
.content-section{padding:110px 0}.events-section{background:var(--cream)}.section-title{margin-bottom:55px;max-width:800px}.section-title h2{margin-bottom:0}.event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:84px 42px}.event-item{min-width:0}.event-item-wide{grid-column:1/-1;display:grid;grid-template-columns:1.2fr .8fr;gap:42px;align-items:center}.event-photo{display:block;overflow:hidden;background:var(--deep);height:390px}.event-photo>img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.event-photo:hover>img:not(.invercargill-logo-only){transform:scale(1.035)}.event-item-wide .event-photo{height:440px}.event-info{padding-top:25px}.event-meta{font-size:13px;font-weight:700;color:#516a70;margin-bottom:12px}.event-meta span:before{content:'•';padding:0 13px}.event-logo{width:auto;max-width:230px;height:66px;object-fit:contain;object-position:left center;margin:15px 0}.event-info h3{margin:13px 0}.event-info p{font-size:16px;max-width:570px;line-height:1.7;margin-bottom:21px}.event-invercargill{background:#4ec7e0;display:flex;justify-content:center;align-items:center}.event-photo .invercargill-logo-only{width:88%;height:auto;max-height:90%;object-fit:contain;transition:none}.event-item-wide .event-info{padding:20px}.event-item-wide h3{font-size:4.1rem}
.manifesto{background:var(--deep);color:#f4f8f7;padding:125px 0}.manifesto-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:start}.manifesto h2{font-size:clamp(3.4rem,5.8vw,6.5rem);margin:0}.manifesto h2 em{font-style:normal;color:inherit}.manifesto p{font-size:clamp(1.1rem,1.6vw,1.5rem);line-height:1.68;max-width:500px;margin:3px 0 0}
.section-split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start;margin-bottom:52px}.section-split h2{margin-bottom:0}.section-split>p{font-size:19px;max-width:660px;margin:6px 0 0;line-height:1.75}.services-section{background:var(--paper)}.service-list{border-top:1px solid var(--line)}.service-row{border-bottom:1px solid var(--line);display:grid;grid-template-columns:.88fr 1.12fr 30px;align-items:center;gap:55px;padding:32px 6px 32px 0;transition:padding-left .2s,background .2s}.service-row:hover{padding-left:16px;background:#ecf3ef}.service-row h3{font-size:clamp(2rem,3.0vw,3.2rem);margin:0;font-weight:700}.service-row p{font-size:16px;max-width:660px;margin:0}.row-arrow{justify-self:end;font-size:22px}
.giving-section{display:grid;grid-template-columns:1fr 1fr;min-height:660px;background:#e3e9e4}.giving-image img{width:100%;height:100%;object-fit:cover}.giving-copy{display:flex;align-items:center;padding:75px clamp(36px,7vw,115px)}.giving-inner{max-width:660px}.giving-inner h2{margin-bottom:25px}.giving-inner p{font-size:18px;line-height:1.82;margin-bottom:28px}
.film-section{background:var(--paper)}.film-display{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}.film-still{position:relative;min-height:340px}.film-still>img{height:100%;min-height:365px;width:100%;object-fit:cover;filter:brightness(.85)}.film-still-caption{position:absolute;bottom:0;left:0;width:100%;padding:50px 25px 26px;background:linear-gradient(transparent,rgba(4,20,26,.85));color:white}.film-still-caption strong{display:block;font-family:'Barlow Condensed',sans-serif;font-size:35px}.film-still-caption span{font-size:14px}.film-video iframe{width:100%;aspect-ratio:16/9;border:0;background:#072d36}.film-video p{font-size:13px;font-weight:700;margin-top:12px}
.otago-section{background:var(--paper)}.otago-section-header{padding:95px 0 50px}.otago-section-header h2{margin:0}.otago-feature{position:relative;height:min(730px,80vh);min-height:550px;color:#fff;isolation:isolate;overflow:hidden;background:var(--deep)}.otago-feature>img{width:100%;height:100%;object-fit:cover;object-position:center}.otago-feature:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,22,29,.72),rgba(0,22,29,.08));z-index:0}.otago-feature-content{position:absolute;z-index:2;left:0;right:0;top:50%;transform:translateY(-50%)}.otago-feature-content h2{font-family:'DM Sans',sans-serif;font-weight:600;letter-spacing:0;font-size:clamp(18px,2vw,28px);margin-bottom:20px}.otago-feature-title{font-family:'Barlow Condensed',sans-serif;font-size:clamp(3.5rem,7vw,8rem);font-weight:700;line-height:1.04;max-width:760px;margin:0 0 30px}.photo-link{display:inline-flex;color:#fff;border-bottom:1px solid currentColor;padding-bottom:10px;font-weight:700;font-size:19px;gap:20px}.get-involved{background:#d6e6df}.get-involved h2{margin-bottom:40px}.get-involved-content{display:grid;grid-template-columns:1.06fr .94fr;gap:10%;align-items:start}.get-involved-content p{font-size:20px;line-height:1.78;margin-bottom:24px}.get-involved-content .founder-attribution{font-size:15px;font-weight:700}.get-involved-content .primary-button{margin-top:15px}
.site-footer{background:var(--deep);color:#edf5f3;padding:78px 0 24px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1.2fr 1.2fr;gap:60px;padding-bottom:65px}.footer-brand img{width:210px;max-height:120px;object-fit:contain;filter:brightness(0) invert(1)}.footer-brand p{max-width:280px;font-size:14px;margin-top:30px}.footer-grid h3{font-family:'DM Sans',sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#b3d9d0;margin:7px 0 18px}.footer-grid nav{display:flex;flex-direction:column;gap:12px}.footer-grid a{font-size:14px;color:#f0f3ef}.footer-grid a:hover{text-decoration:underline}.footer-low{border-top:1px solid #375660;display:flex;justify-content:space-between;gap:25px;padding-top:23px;font-size:11px;color:#b6cac7}
.interior-intro{padding:95px 0 75px;max-width:none}.interior-intro h1{margin-bottom:20px}.interior-intro p{font-size:clamp(18px,1.8vw,23px);max-width:900px;line-height:1.7}.detail-photo{height:min(65vh,620px);min-height:410px;background:#0c333e;overflow:hidden}.detail-photo img{width:100%;height:100%;object-fit:cover}.detail-invercargill{background:#4ec7e0;display:flex;align-items:center;justify-content:center}.detail-photo .invercargill-detail-image{height:auto;width:min(720px,80%);object-fit:contain}.detail-intro{padding:76px 0 90px;display:grid;grid-template-columns:1fr 1fr;gap:20px 9%;align-items:start}.detail-meta{grid-column:1/-1;color:var(--soft);font-size:14px;font-weight:700;margin:0}.detail-intro h1{grid-column:1;margin:0;font-size:clamp(4rem,7vw,7rem)}.detail-intro .detail-lead{grid-column:2;margin:9px 0 0;font-size:21px;line-height:1.75}.detail-buttons{grid-column:2;display:flex;gap:12px;flex-wrap:wrap;margin-top:15px}.detail-rows{padding:15px 0 75px;background:var(--cream)}.detail-row{display:grid;grid-template-columns:1fr 1fr;gap:30px 10%;padding:70px 0;border-bottom:1px solid var(--line)}.detail-row h2{font-size:clamp(2.8rem,4.4vw,5rem);max-width:550px;margin:0}.detail-row>div p{font-size:18px;max-width:730px}.detail-row>img{grid-column:2;width:100%;max-height:440px;object-fit:cover}.simple-cta{padding:90px 0;background:#d6e6df}.simple-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:50px}.simple-cta h2{margin:0;max-width:800px}.contact-area{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%;padding-bottom:100px}.contact-area>div p{font-size:20px}.contact-form{display:grid;gap:21px;max-width:720px}.contact-form label{font-weight:700;font-size:14px;display:grid;gap:8px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:13px;background:white;border:1px solid #adbdb7;font:inherit;color:var(--deep);border-radius:0}.contact-form button{justify-self:start}.form-status{font-size:13px;color:var(--soft)}
@media(max-width:1150px){.desktop-nav{gap:15px}.desktop-nav a{font-size:11px}.wrap{width:calc(100% - 64px)}.event-photo{height:330px}.intro-body{gap:7%}.footer-grid{gap:30px}}
@media(max-width:900px){.wrap{width:calc(100% - 46px)}.site-header .header-inner{height:73px}.site-brand{width:150px}.site-brand img{max-height:58px}.desktop-nav,.header-contact{display:none}#menu-toggle{display:block;margin-left:auto}.mobile-nav.is-open{display:flex;flex-direction:column;background:var(--paper);padding:10px 23px 25px;gap:0}.mobile-nav a{border-bottom:1px solid var(--line);padding:12px 0;font-weight:700}.home-photo{min-height:400px;height:52vh}.intro-top{align-items:flex-start;flex-direction:column;gap:24px}.intro-body{grid-template-columns:1fr;gap:18px}.intro-body h1{max-width:800px}.intro-body>p{max-width:780px}.hero-intro{padding-bottom:75px}.content-section{padding:82px 0}.event-list{gap:62px 25px}.event-photo{height:265px}.event-item-wide{grid-template-columns:1fr;gap:12px}.event-item-wide .event-photo{height:330px}.event-item-wide .event-info{padding:20px 0}.manifesto{padding:90px 0}.manifesto-inner{grid-template-columns:1fr;gap:34px}.manifesto p{max-width:760px}.section-split{gap:30px;grid-template-columns:1fr}.section-split p{max-width:850px}.giving-section{grid-template-columns:1fr}.giving-image{height:450px}.giving-copy{padding:65px 23px}.film-display{grid-template-columns:1fr}.get-involved-content{grid-template-columns:1fr;gap:20px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:45px}.detail-intro{grid-template-columns:1fr;gap:20px}.detail-intro h1,.detail-intro .detail-lead,.detail-buttons{grid-column:1}.detail-intro .detail-lead{max-width:800px}.detail-row{gap:20px;grid-template-columns:1fr}.detail-row>img{grid-column:1}.simple-cta .wrap{align-items:start;flex-direction:column;gap:25px}}
@media(max-width:600px){.wrap{width:calc(100% - 34px)}.home-photo{height:52vh;min-height:320px}.home-photo img{object-position:54% center}.intro-top{padding-bottom:45px}.positioning{font-size:15px}.intro-buttons{width:100%;flex-direction:column}.primary-button,.secondary-button{width:100%;font-size:19px}.intro-body h1{font-size:clamp(3.1rem,13vw,4.9rem)}.intro-body>p{font-size:17px}.hero-intro{padding:26px 0 63px}.content-section{padding:62px 0}.section-title{margin-bottom:35px}.section-title h2{font-size:3.2rem}.event-list{display:block}.event-item{margin-bottom:57px}.event-item:last-child{margin-bottom:0}.event-photo,.event-item-wide .event-photo{height:265px}.event-info{padding-top:20px}.event-info h3,.event-item-wide h3{font-size:2.9rem}.event-logo{height:55px;max-width:185px}.event-info p{font-size:15px}.manifesto{padding:75px 0}.manifesto h2{font-size:clamp(3.2rem,12vw,5rem)}.manifesto p{font-size:18px}.section-split{margin-bottom:28px}.section-split p{font-size:17px}.service-row{display:grid;grid-template-columns:1fr 30px;gap:8px;padding:22px 3px 27px}.service-row h3{grid-column:1;font-size:2.4rem}.service-row p{grid-column:1;font-size:15px}.service-row .row-arrow{grid-column:2;grid-row:1/3;align-self:center}.giving-image{height:330px}.giving-copy{padding:50px 17px}.giving-inner h2{font-size:3.2rem}.giving-inner p{font-size:17px}.film-still>img{min-height:285px}.film-video iframe{aspect-ratio:16/9}.otago-section{background:var(--paper)}.otago-section-header{padding:95px 0 50px}.otago-section-header h2{margin:0}.otago-section-header{padding:65px 0 27px}.otago-feature{min-height:480px;height:540px}.otago-feature-content h2{font-size:18px}.otago-feature-title{font-size:clamp(3.4rem,13vw,5.3rem)}.get-involved h2{font-size:3.4rem}.get-involved-content p{font-size:17px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-brand{grid-column:1/-1}.footer-brand img{width:180px}.footer-brand p{margin-top:10px}.footer-low{flex-direction:column}.interior-intro{padding:62px 0 55px}.interior-intro h1{font-size:4.4rem}.detail-photo{height:340px;min-height:0}.detail-intro{padding:52px 0 65px}.detail-intro h1{font-size:4.2rem}.detail-intro .detail-lead{font-size:17px}.detail-buttons .primary-button,.detail-buttons .secondary-button{width:100%}.detail-row{padding:48px 0}.detail-row h2{font-size:3.3rem}.detail-row>div p{font-size:17px}.simple-cta{padding:60px 0}.simple-cta h2{font-size:3.3rem}.contact-area{grid-template-columns:1fr;gap:20px}}

/* REVISION 03: Photography-led hero and centered introduction */
.home-photo{height:min(72vh,760px);min-height:460px;position:relative;isolation:isolate}
.home-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
html[data-hero="14"] .home-photo>img{object-position:center 58%}
.home-photo:after{content:"";position:absolute;inset:50% 45% 0 0;background:linear-gradient(0deg,rgba(2,22,29,.68),transparent);pointer-events:none}
.hero-brand{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-end;padding-bottom:36px;pointer-events:none}
.hero-brand img{width:clamp(190px,24vw,290px);height:auto;filter:brightness(0) invert(1);filter:brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.2))}
.hero-intro{padding:49px 0 109px;text-align:center}
.positioning{font-size:clamp(17px,1.7vw,23px);font-weight:600;margin:0 auto 28px;line-height:1.4;max-width:900px}
.intro-buttons{display:flex;justify-content:center;align-items:center;gap:14px;margin:0 0 70px}
.intro-buttons .primary-button{background:var(--deep);border:2px solid var(--deep)}
.intro-buttons .secondary-button{border:2px solid var(--deep);background:var(--paper)}
.intro-buttons .primary-button:hover{background:var(--paper);color:var(--deep);border-color:var(--deep)}
.intro-buttons .secondary-button:hover{background:var(--deep);color:var(--paper);border-color:var(--deep)}
.intro-body{display:block;max-width:1090px;margin-inline:auto}
.intro-body>p{font-size:clamp(19px,1.9vw,26px);line-height:1.75;color:var(--text);max-width:none;margin:0 auto;font-weight:400}
.section-title{max-width:none}
.event-info{padding-top:27px}
.event-logo{margin:0 0 16px;max-width:245px;height:72px}
.event-info h3{margin:0 0 9px}
.event-meta{font-size:15px;font-weight:600;margin:0 0 17px;color:#47616a;letter-spacing:0}
.event-info p{margin-bottom:20px}
.event-item-wide .event-info{padding:12px 5px}
.event-item-wide .event-photo>img{object-position:center 59%}
.manifesto{padding:124px 0 128px}
.manifesto-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:29px;text-align:center}
.manifesto h2{font-size:clamp(3.65rem,6.2vw,7rem);width:100%;max-width:1200px;line-height:1.05}
.manifesto p{font-size:clamp(18px,1.6vw,23px);max-width:880px;line-height:1.75;margin:0 auto}
.otago-feature>img{object-position:center 56%}
.otago-feature:after{background:linear-gradient(90deg,rgba(0,22,29,.75),rgba(0,22,29,.1) 75%)}
.social-links{display:flex;flex-direction:column;gap:11px}
.social-links a{display:flex;align-items:center;gap:12px;font-size:14px;min-height:29px}
.social-links svg{width:23px;height:23px;flex-shrink:0;transition:transform .15s}
.social-links a:hover svg{transform:scale(1.12)}
@media(max-width:900px){
.home-photo{height:59vh;min-height:390px}
.hero-intro{padding:43px 0 82px}
.intro-buttons{margin-bottom:48px;flex-direction:row}
.intro-body>p{font-size:20px}
.manifesto{padding:96px 0}.manifesto-inner{gap:27px}
}
@media(max-width:600px){
.home-photo{height:53vh;min-height:360px}
.home-photo>img{object-position:center 55%}
html[data-hero="14"] .home-photo>img{object-position:57% center}
.home-photo:after{inset:55% 20% 0 0}
.hero-brand{padding-bottom:20px}
.hero-brand img{width:187px}
.hero-intro{padding:34px 0 68px}
.positioning{font-size:17px;max-width:340px;margin-bottom:24px}
.intro-buttons{width:100%;margin:0 auto 43px;gap:10px;flex-direction:column}
.intro-buttons .primary-button,.intro-buttons .secondary-button{width:min(100%,340px);font-size:19px}
.intro-body>p{font-size:18px;line-height:1.75}
.event-info{padding-top:19px}
.event-logo{height:65px;margin-bottom:12px}
.event-info h3,.event-item-wide h3{margin-bottom:7px}
.event-meta{font-size:14px;margin-bottom:13px}
.manifesto{padding:78px 0}
.manifesto h2{font-size:clamp(3.1rem,11.5vw,5.6rem)}
.manifesto p{font-size:18px}
.social-links a{font-size:13px}
}
/* Keep the original Thymed colour logo intact over the photographs */
.hero-brand img{width:clamp(200px,23vw,282px);filter:none;background:rgba(249,248,244,.95);padding:15px 18px;box-shadow:0 12px 30px rgba(0,20,24,.14)}
@media(max-width:600px){.hero-brand img{width:205px;padding:10px 12px}}

/* Show the original brand mark, not a one-colour silhouette */
.footer-brand img{filter:none;background:var(--paper);padding:10px 12px;max-height:none}


/* REVISION 04: Hero #14, user-supplied transparent artwork and modest introduction */
.home-photo{height:min(76vh,790px);min-height:470px}
.home-photo:after{display:none}
.hero-brand{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding:clamp(20px,3.0vh,42px) 20px 0;pointer-events:none;z-index:2}
.hero-brand img,.hero-brand img:not(.x){width:clamp(260px,36vw,570px);height:auto;max-height:35%;object-fit:contain;filter:drop-shadow(0 1px 4px rgba(255,255,255,.5));background:transparent;padding:0;box-shadow:none}
.hero-intro{padding:76px 0 115px;text-align:center}
.home-title{font-size:clamp(3.3rem,5.1vw,5.4rem);font-weight:700;margin:0 auto 16px;line-height:1.0}
.positioning{font-size:clamp(18px,1.85vw,24px);font-weight:600;margin:0 auto 41px;max-width:none}
.intro-body{max-width:1080px}
.intro-body>p{font-size:clamp(18px,1.75vw,23px);line-height:1.85}
.manifesto-inner{gap:0}
.manifesto h2{margin-bottom:35px}
.manifesto-inner .manifesto-signoff{margin-top:52px;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:clamp(28px,3.15vw,42px);font-weight:700;line-height:1.15;color:#fff;letter-spacing:.005em}
.event-invercargill,.detail-invercargill{background:#303333}
.event-photo .invercargill-logo-only{width:96%;max-height:90%}
.detail-invercargill .invercargill-detail-image{object-fit:contain;width:min(94%,1000px);height:auto;max-height:86%;margin:auto}
.section-split .media-intro{max-width:680px;margin:6px 0 0}
.media-intro p{font-size:18px;line-height:1.75;margin-bottom:20px}
.media-intro .text-link{margin-top:8px;font-size:21px}
.otago-section-header{display:flex;align-items:baseline;justify-content:space-between;gap:40px}
.otago-section-header p{font-size:clamp(18px,2vw,26px);font-weight:600;margin:0}
@media(max-width:900px){.home-photo{min-height:410px;height:61vh}.hero-intro{padding:60px 0 86px}.hero-brand img,.hero-brand img:not(.x){width:min(54vw,460px);max-height:37%}.otago-section-header{display:block}.otago-section-header p{margin-top:20px}}
@media(max-width:600px){.home-photo{height:51vh;min-height:380px}.home-photo>img{object-position:56% 50%}.hero-brand{padding-top:22px}.hero-brand img,.hero-brand img:not(.x){width:min(80vw,350px);max-height:31%}.hero-intro{padding:50px 0 77px}.home-title{font-size:3.75rem;margin-bottom:12px}.positioning{font-size:18px;margin-bottom:30px}.intro-body>p{font-size:17px;line-height:1.78}.manifesto h2{margin-bottom:24px}.manifesto-inner .manifesto-signoff{margin-top:36px;font-size:32px}.media-intro p{font-size:17px}.otago-section-header{padding-top:66px}.otago-section-header p{font-size:18px;margin-top:14px}}
/* Final refinements */
.event-invercargill,.detail-invercargill{background:#363737}
.home-title{font-size:clamp(3rem,4.2vw,4.6rem)}
@media(max-width:600px){.home-title{font-size:clamp(2.5rem,12.2vw,3rem);letter-spacing:-.03em}}

/* REVISION 05 — restrained navy/white palette, page-specific photographs, direct event links */
:root{--deep:#092f39;--text:#163b44;--paper:#f9f8f4;--cream:#f1f2f2;--line:#d2d7d8;--accent:#254f75;--white:#fff;--soft:#5b6b74}
html{scroll-padding-top:86px}
body{background:var(--paper)}
.primary-button:hover{background:#214f80;border-color:#214f80;color:white}
.secondary-button:hover{background:var(--paper);color:var(--deep);border-color:var(--deep)}
.text-link:hover{color:#245985}
.service-row:hover{background:#ebf0f4}
.giving-section{background:#e9eef1}
.get-involved,.simple-cta{background:#e5edf3}
.footer-grid h3{color:#d8e7ef}
.site-footer .footer-soon{font-size:13px;color:#d3dfe1}

/* Public event cards link to their race websites, with confirmed social URLs only */
.event-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:12px}
.event-social{display:flex;align-items:center;gap:12px}
.event-social a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #c7cfd2;transition:background .2s,border-color .2s}
.event-social a:hover{background:#e3eaf1;border-color:#245985}
.event-social svg{height:20px;width:20px}
.coming-soon{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:7px 17px;font-weight:700;font-size:16px;font-family:'Barlow Condensed',sans-serif;letter-spacing:.02em;color:var(--deep);border:1px solid #9baeb7;background:#f3f5f5}
.event-info .event-logo{max-height:75px}
.event-item-wide .event-photo{height:440px}
.event-social a:focus-visible,.event-photo:focus-visible,.desktop-nav a:focus-visible{outline:3px solid #255889;outline-offset:3px}

/* Remove service/detail superfluous meta headings, show photo then useful content */
.detail-photo{height:min(60vh,620px);min-height:410px}
.detail-photo img{height:100%;width:100%;object-fit:cover}
.services-cover{height:min(68vh,690px)}
.services-cover img{object-position:center 42%}
.feature-race-timing img{object-position:center 48%}
.feature-event-consulting img{object-position:center 66%}
.feature-event-management img{object-position:center 47%}
.feature-thymed-design img{object-position:center 45%}
.feature-thymed-marketing img{object-position:center 49%}
.feature-event-expansion img{object-position:center 56%}
.feature-impact img{object-position:center 47%}
.feature-about img{object-position:center 47%}
.feature-partners img{object-position:center 60%}
.feature-volunteers img{object-position:center 48%}
.feature-join img{object-position:center 45%}
.detail-intro{display:flex;flex-direction:column;gap:0;padding:70px 0 75px}
.detail-intro h1{font-size:clamp(3.5rem,5.2vw,6rem);margin:0 0 22px;max-width:1000px}
.detail-intro .detail-lead{font-size:clamp(19px,1.7vw,24px);max-width:1000px;line-height:1.75;margin:0}
.detail-buttons{margin:31px 0 0;display:flex;align-items:flex-start}
.detail-buttons .primary-button{width:auto}
.detail-rows{background:var(--cream)}
.detail-row{grid-template-columns:.75fr 1.25fr;gap:7%;padding:70px 0}
.detail-row h2{font-size:clamp(2.6rem,3.5vw,4rem);line-height:1.1;max-width:510px}
.detail-row>div p{font-size:18px;line-height:1.8;margin-bottom:19px}
.services-intro{padding:65px 0 20px}
.services-intro h1{font-size:clamp(3.7rem,5vw,6rem);margin-bottom:24px}
.services-intro p{max-width:1020px;font-size:clamp(19px,1.8vw,24px);line-height:1.7}
.services-directory{padding-top:47px}
.photo-coming-soon{display:inline-flex;border:1px solid rgba(255,255,255,.85);font-size:22px;color:white;padding:8px 20px;background:rgba(0,22,29,.45);font-family:'Barlow Condensed',sans-serif;font-weight:700}
.social-links svg{color:#eff5f7}
.social-links a{font-size:13px}
@media(max-width:900px){
 .detail-row{grid-template-columns:1fr;gap:22px}
 .feature-about img{object-position:53% 50%}
 .services-cover{height:47vh;min-height:310px}
 .detail-photo{height:45vh;min-height:300px}
 .detail-intro{padding:54px 0 60px}
}
@media(max-width:600px){
 html{scroll-padding-top:75px}
 .event-actions{gap:14px}
 .event-social a{width:38px;height:38px}
 .services-cover{height:39vh;min-height:280px}
 .services-cover img{object-position:center center}
 .detail-photo{height:38vh;min-height:265px}
 .feature-about img{object-position:53% center}
 .feature-event-consulting img{object-position:48% center}
 .feature-partners img{object-position:center 60%}
 .detail-intro{padding:45px 0 57px}
 .detail-intro h1{font-size:clamp(3.2rem,12vw,4.3rem)}
 .detail-intro .detail-lead{font-size:17px}
 .detail-buttons .primary-button{width:100%}
 .detail-row{padding:46px 0}
 .detail-row h2{font-size:clamp(2.5rem,10vw,3.4rem)}
 .detail-row>div p{font-size:16px}
 .services-intro{padding:47px 0 12px}
 .services-directory{padding-top:35px}
 .photo-coming-soon{font-size:19px}
}
/* Keep the whole event arch and the Race Director's face in view */
.services-cover img{object-position:center 9%}
.feature-about img{object-position:center 9%}
@media(max-width:900px){.services-cover img{object-position:center 9%}.feature-about img{object-position:center 11%}}
@media(max-width:600px){.services-cover img{object-position:center 8%}.feature-about img{object-position:center 15%}}

/* REVISION 07 | Photographs deserve their full frame, service navigation, and a proper film gallery */
:root{--deep:#092f39;--text:#163b44;--paper:#f9f8f4;--cream:#f1f2f2;--line:#d2d7d8;--accent:#254f75}

/* The photo is no longer constrained to a shallow banner.  Show the complete original. */
.detail-photo,
.services-cover,
.feature-photo{
  min-height:0;
  height:auto;
  max-height:none;
  width:100%;
  padding:28px 32px 0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
  background:var(--paper);
}
.detail-photo>img,
.services-cover>img,
.feature-photo>img{
  display:block;
  width:auto;
  height:auto;
  max-width:min(100%,1320px);
  max-height:min(77vh,810px);
  object-fit:contain;
  object-position:center center;
  margin:0 auto;
}
/* Full frame for secondary pages too: portraits, the finish gantry, mountain skyline, sponsor marquee. */
.feature-about>img{max-height:min(80vh,840px)}
.services-cover>img{max-height:min(77vh,810px)}
.detail-intro{padding-top:63px}
.services-intro{padding-top:63px}
/* A photograph should be seen, not zoomed in and clipped in the event tiles. */
.event-item:not(.event-item-wide) .event-photo>img:not(.invercargill-logo-only){object-position:center 48%}
.event-item-wide .event-photo>img{object-position:center 43%}
.event-item .event-photo>img.invercargill-logo-only{object-fit:contain;object-position:center}

/* Services menu is accessible via hover, keyboard focus, or its explicit toggle button */
.nav-service{position:relative;display:flex;align-items:center;gap:2px}
.desktop-nav .nav-service .services-main-link{padding-right:0}
.nav-service .services-drop-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  padding:8px 5px;margin:0 0 0 0;border:0;background:transparent;
  cursor:pointer;color:var(--deep);height:37px;width:22px;
}
.services-drop-toggle svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.nav-service:hover .services-drop-toggle svg,
.nav-service:focus-within .services-drop-toggle svg,
.nav-service.menu-open .services-drop-toggle svg{transform:rotate(180deg)}
.nav-service.nav-active>.services-main-link{border-color:var(--deep)}
.services-dropdown{
  display:none;position:absolute;top:calc(100% + 12px);left:-26px;z-index:200;
  width:292px;padding:9px 0;background:var(--paper);border:1px solid var(--line);
  box-shadow:0 17px 36px rgba(7,35,47,.16);
}
.services-dropdown:before{content:"";position:absolute;left:0;right:0;height:16px;top:-16px}
.nav-service:hover .services-dropdown,
.nav-service:focus-within .services-dropdown,
.nav-service.menu-open .services-dropdown{display:block}
.desktop-nav .services-dropdown a{
  display:block;font-family:'DM Sans',Arial,sans-serif;text-transform:none;
  letter-spacing:0;font-weight:600;font-size:13px;line-height:1.32;
  border:0;padding:12px 19px;color:var(--text)
}
.desktop-nav .services-dropdown a:first-child{font-weight:700;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:3px}
.desktop-nav .services-dropdown a:hover,.desktop-nav .services-dropdown a:focus-visible{background:#e6edf2;color:#0d3651;outline:none}
.services-drop-toggle:focus-visible,.mobile-services summary:focus-visible{outline:2px solid #255889;outline-offset:3px}

/* Discreet service-to-service navigation at the end of each service */
.service-pagination{display:flex;justify-content:space-between;align-items:center;gap:35px;padding-top:55px;padding-bottom:55px}
.service-pagination a{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:23px;font-weight:700;transition:color .18s;color:var(--deep)}
.service-pagination a:hover{color:#285c91}
.service-pagination .services-next{display:flex;align-items:flex-end;flex-direction:column;gap:7px;text-align:right}
.services-next span{font-family:'DM Sans',Arial,sans-serif;font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#65777a}
.services-next strong{font-weight:700;font-size:24px}

/* Video stories: documentary as lead, with both event highlights following */
.film-gallery{margin-top:46px;max-width:1120px;margin-inline:auto}
.video-card{min-width:0}
.video-visual{position:relative;aspect-ratio:16/9;overflow:hidden;background:#102f39}
.video-visual iframe{display:block;width:100%;height:100%;border:0}
.video-poster{width:100%;height:100%;padding:0;border:0;background:#102f39;cursor:pointer;display:block;position:relative;overflow:hidden}
.video-poster img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease;filter:brightness(.85)}
.video-poster:hover img{transform:scale(1.025);filter:brightness(.72)}
.video-poster:focus-visible{outline:3px solid #fff;outline-offset:-8px}
.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;padding-left:4px;width:78px;height:78px;background:rgba(249,248,244,.93);border:2px solid var(--deep);color:var(--deep);font-size:25px;border-radius:50%;box-shadow:0 4px 24px rgba(0,0,0,.2)}
.video-caption{padding:18px 0 24px;display:flex;gap:16px;justify-content:space-between;align-items:flex-end;border-bottom:1px solid var(--line)}
.video-caption h3{font-size:clamp(24px,2.7vw,37px);margin-bottom:3px}
.video-caption p{font-size:15px;margin:0;color:#52676b}
.video-caption a{font-size:14px;font-weight:700;white-space:nowrap;border-bottom:1px solid currentColor;padding-bottom:3px}
.video-caption a:hover{color:#245985}
.film-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:43px}
.film-highlights .video-play{width:62px;height:62px;font-size:19px}
.film-highlights .video-caption h3{font-size:30px}
.film-highlights .video-caption{flex-wrap:wrap}

.contact-area .contact-email{font-weight:700;color:#20577e;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.contact-form .honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.site-footer .footer-email{color:#dbe9f0;font-weight:600}

@media(max-width:1150px){
 .desktop-nav{gap:13px}
 .desktop-nav a{font-size:11px}
 .site-brand{width:166px}
}
@media(max-width:900px){
 .detail-photo,.services-cover,.feature-photo{padding:18px 22px 0;height:auto;min-height:0;max-height:none}
 .detail-photo>img,.services-cover>img,.feature-photo>img{width:auto;height:auto;max-width:100%;max-height:72vh;object-fit:contain;object-position:center}
 .mobile-nav.is-open{display:flex;max-height:calc(100vh - 75px);overflow-y:auto}
 .mobile-services{border-bottom:1px solid var(--line)}
 .mobile-services summary{padding:13px 0;cursor:pointer;font-weight:700;list-style:none;display:flex;align-items:center;justify-content:space-between}
 .mobile-services summary::-webkit-details-marker{display:none}
 .mobile-services summary:after{content:'⌄';font-size:20px;font-weight:500;margin-right:7px}
 .mobile-services[open] summary:after{content:'⌃'}
 .mobile-service-list{display:flex;flex-direction:column;padding:3px 0 13px 14px;border-left:2px solid #b8cad2;margin-bottom:11px}
 .mobile-nav .mobile-service-list a{font-size:14px;font-weight:500;padding:10px 9px;border-bottom:none}
 .mobile-nav .mobile-service-list a:hover,.mobile-nav .mobile-service-list a:focus-visible{background:#e7edf0}
}
@media(max-width:600px){
 .detail-photo,.services-cover,.feature-photo{padding:10px 0 0;height:auto;min-height:0;max-height:none}
 .detail-photo>img,.services-cover>img,.feature-photo>img{width:100%;max-height:none;height:auto;max-width:100%;object-fit:contain;object-position:center}
 .detail-intro{padding-top:38px}
 .services-intro{padding-top:42px}
 .service-pagination{gap:16px;padding-top:38px;padding-bottom:40px;align-items:center}
 .service-pagination a{font-size:19px}
 .services-next strong{font-size:19px}
 .film-highlights{grid-template-columns:1fr;gap:24px;margin-top:34px}
 .film-gallery{margin-top:33px}
 .video-caption{gap:12px;flex-wrap:wrap}
 .video-caption a{font-size:13px}
 .video-play{width:64px;height:64px;font-size:21px}
}


/* REVISION 09 — a linked event name followed immediately by its two social icons */
.site-footer .footer-grid{
  grid-template-columns:minmax(180px,1.05fr) minmax(160px,.85fr) minmax(345px,1.65fr);
  column-gap:clamp(36px,5vw,100px);
}
.site-footer .footer-events nav{display:block}
.footer-event-row{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
  min-height:36px;
  margin-bottom:11px;
}
.footer-event-name{min-width:0;flex:0 1 auto}
.site-footer .footer-event-name>a{
  display:inline;
  color:#f0f3ef;
  font-size:15px;
  line-height:1.4;
  font-weight:600;
  text-decoration:underline;
  text-decoration-color:#83a6af;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}
.site-footer .footer-event-name>a:hover{text-decoration-color:#f0f3ef}
.site-footer .footer-event-name .footer-soon{font-size:14px;line-height:1.4}
.footer-event-social{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  flex:0 0 auto;
}
.footer-event-social[aria-hidden="true"]{display:none}
.site-footer .footer-event-social>a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:29px;
  color:#eff5f7;
  transition:color .18s ease, transform .18s ease;
}
.footer-event-social svg{display:block;width:22px;height:22px}
.site-footer .footer-event-social>a:hover{color:#a7cce8;transform:translateY(-2px)}
.site-footer .footer-event-social>a:focus-visible,
.site-footer .footer-event-name>a:focus-visible{outline:2px solid #d6edf9;outline-offset:4px}
@media(max-width:900px){
  .site-footer .footer-grid{grid-template-columns:1fr 1.2fr;gap:42px 35px}
  .site-footer .footer-events{grid-column:1/-1;max-width:580px}
}
@media(max-width:600px){
  .site-footer .footer-grid{grid-template-columns:1fr;gap:35px}
  .site-footer .footer-brand,.site-footer .footer-events{grid-column:auto;max-width:none}
  .footer-event-row{gap:12px}
  .site-footer .footer-event-name>a{font-size:14px}
  .footer-event-social{gap:9px}
  .site-footer .footer-event-social>a{width:24px;height:30px}
}
