
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
/* Grid/flex children default to min-width:auto and refuse to shrink below their
   content, which is the usual cause of mobile horizontal overflow. */
main *,footer *,header *{min-width:0}
h1,h2,h3,h4,p,li,blockquote,figcaption,dd,dt,summary{overflow-wrap:break-word}
.skip{position:absolute;left:-9999px;top:0;z-index:100;padding:.75rem 1.25rem;background:#000;color:#fff;text-decoration:none}
.skip:focus{left:0}
:focus-visible{outline:3px solid currentColor;outline-offset:2px}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
details>summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
details>summary::-webkit-details-marker{display:none}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

:root{
  --mid:#0E2340;--teal:#0F555C;--aur:#6CC5A5;
  --aurtext:#30795F;
  --ice:#E9F3F4;--wht:#FFFFFF;
}
body{background:var(--mid);color:#12202f;
  font-family:"Noto Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px;line-height:1.6}
h1,h2,h3,h4,.au-brand-k,.au-reg,.au-btn,.au-ev-n{
  font-family:"Schibsted Grotesk","Noto Sans",system-ui,sans-serif}
h1,h2,h3,h4{line-height:1.12;letter-spacing:-.015em;margin:0 0 .55em;font-weight:700}
p{margin:0 0 1em}

/* ---------- solid midnight navigation bar ---------- */
.au-bar{background:var(--mid);border-bottom:1px solid rgba(108,197,165,.28)}
.au-bar-in{max-width:1280px;margin:0 auto;padding:12px 26px;display:flex;
  align-items:center;gap:26px;flex-wrap:wrap}
.au-brand{margin:0;display:flex;flex-direction:column;line-height:1.25}
.au-brand-k{color:var(--wht);font-weight:700;font-size:15px;letter-spacing:-.01em}
.au-brand-e{color:var(--aur);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase}
.au-nav{margin-left:auto}
.au-nav ul{list-style:none;display:flex;gap:24px;margin:0;padding:0;flex-wrap:wrap}
.au-nav a{color:var(--wht);text-decoration:none;font-size:14.5px;font-weight:500;
  display:inline-flex;align-items:center;min-height:44px;border-bottom:2px solid transparent}
.au-nav a:hover{border-bottom-color:var(--aur);color:var(--aur)}
.au-reg{background:var(--ice);color:var(--mid);text-decoration:none;font-weight:700;
  font-size:14.5px;padding:0 22px;border-radius:2px;display:inline-flex;
  align-items:center;min-height:44px}
.au-reg:hover{background:var(--aur);color:#06131f}

/* ---------- opening: aurora band + solid title block + pale rail ---------- */
.au-open{position:relative;background:var(--mid);overflow:hidden;padding:0 0 0}
.au-aurora{position:absolute;top:0;right:0;width:76%;height:330px;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(14,35,64,0) 0%,rgba(15,85,92,.85) 38%,rgba(108,197,165,.62) 72%,rgba(14,35,64,0) 100%);
  filter:none;opacity:1;animation:au-settle 2.2s ease-out 1 both}
.au-aurora::after{content:"";position:absolute;left:0;right:0;top:56px;height:70px;
  background:linear-gradient(90deg,rgba(14,35,64,0),rgba(233,243,244,.34) 60%,rgba(14,35,64,0))}
@keyframes au-settle{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.au-aurora{animation:none;opacity:1}}
.au-open-in{position:relative;z-index:1;max-width:1280px;margin:0 auto;
  padding:132px 26px 48px;display:grid;grid-template-columns:minmax(0,1.5fr) 352px;
  gap:40px;align-items:end}
.au-title{background:var(--mid);padding:34px 38px 30px;border-left:4px solid var(--aur);
  box-shadow:0 0 0 1px rgba(233,243,244,.1)}
.au-kicker{color:var(--aur);text-transform:uppercase;letter-spacing:.16em;
  font-size:12px;font-weight:700;margin:0 0 14px}
.au-title h1{color:var(--wht);font-size:clamp(38px,5.1vw,74px);font-weight:800;
  margin:0 0 18px;max-width:16ch}
.au-lede{color:#cfe0e2;font-size:17px;max-width:62ch;margin:0}
.au-rail{background:var(--ice);padding:28px 26px 26px;color:#12202f}
.au-rail-h{font-size:12.5px;text-transform:uppercase;letter-spacing:.14em;
  color:var(--teal);margin:0 0 14px;font-weight:700}
.au-rail-dl{margin:0 0 22px;border-top:2px solid var(--mid)}
.au-rail-row{padding:11px 0;border-bottom:1px solid rgba(14,35,64,.16)}
.au-rail-row dt{font-size:11.5px;text-transform:uppercase;letter-spacing:.1em;
  color:var(--teal);font-weight:700;margin-bottom:3px}
.au-rail-row dd{margin:0;font-weight:600;font-size:15.5px}
.au-rail-acts{display:grid;gap:9px}
.au-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;
  padding:0 20px;text-decoration:none;font-weight:700;font-size:15px;
  border:2px solid var(--mid);color:var(--mid);background:transparent;border-radius:2px}
.au-btn--solid{background:var(--mid);color:var(--wht)}
.au-btn:hover{background:var(--teal);border-color:var(--teal);color:var(--wht)}
.au-rail-fine{font-size:12.5px;color:#41545f;margin:16px 0 0}
.au-strip{margin:0;position:relative;z-index:1}
.au-strip img{width:100%;height:clamp(230px,30vw,400px);object-fit:cover}
.au-strip figcaption{max-width:1280px;margin:0 auto;padding:10px 26px 30px;
  color:#9fb6bb;font-size:12.5px;background:var(--mid)}

/* ---------- generic pale sections ---------- */
.au-sec{background:var(--ice);border-top:3px solid var(--aur)}
.au-in{max-width:1280px;margin:0 auto;padding:62px 26px}
.au-sec h2{font-size:clamp(26px,3vw,42px);color:var(--mid)}
.au-sub{color:#43565f;max-width:70ch}
.au-lnk{color:var(--teal);font-weight:700}
.au-more{margin-top:26px}
.au-fine{font-size:13.5px;color:#43565f;max-width:78ch}

/* proposition */
.au-sec--prop .au-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px}
.au-prop-lede{font-size:18.5px;color:#2c3f4b}
.au-prop-themes h3{font-size:13px;text-transform:uppercase;letter-spacing:.12em;
  color:var(--teal);margin-bottom:14px}
.au-themes{list-style:none;margin:0;padding:0}
.au-themes li{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:11px 0;
  border-bottom:1px solid rgba(14,35,64,.14);font-size:15.5px}
.au-th-n{color:var(--aurtext);font-weight:800;font-family:"Schibsted Grotesk",sans-serif}

/* ---------- day sections: broad pale field + dark statement panel ---------- */
.au-day{background:var(--wht)}
.au-day-stmt{background:var(--mid);color:var(--ice);padding:30px 34px;
  margin-bottom:34px;border-left:6px solid var(--aur)}
.au-day-lab{margin:0 0 6px;text-transform:uppercase;letter-spacing:.16em;
  font-size:12px;font-weight:700;color:var(--aur)}
.au-day-stmt h2{color:var(--wht);margin:0 0 12px;font-size:clamp(26px,3.2vw,44px)}
.au-day-line{margin:0 0 10px;color:#c9dee1;max-width:60ch}
.au-day-link{margin:0}
.au-day-link a{color:var(--aur);font-weight:700}
.au-day-h3{font-size:12.5px;text-transform:uppercase;letter-spacing:.14em;
  color:var(--teal);margin-bottom:12px}
.au-ses-list{list-style:none;margin:0;padding:0;columns:2;column-gap:44px}
.au-ses{break-inside:avoid;display:grid;grid-template-columns:66px 1fr;gap:14px;
  padding:13px 0;border-top:1px solid rgba(14,35,64,.15)}
.au-ses-t{margin:0;font-weight:700;color:var(--teal);font-size:14.5px}
.au-ses-b h4{margin:0 0 3px;font-size:16.5px;font-weight:600;color:var(--mid)}
.au-ses-sp{margin:0;font-size:14px;color:#44575f}
.au-ses-r{color:#606f77}

/* evidence */
.au-sec--ev{background:var(--teal);border-top-color:var(--mid)}
.au-sec--ev h2{color:var(--wht)}
.au-ev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:8px}
.au-ev{background:var(--ice);padding:24px 22px}
.au-ev-n{font-size:46px;font-weight:800;line-height:1;margin:0 0 6px;color:var(--teal)}
.au-ev h3{font-size:17px;margin:0 0 10px;color:var(--mid)}
.au-ev p{font-size:14.5px;color:#3c4f58;margin:0 0 10px}

/* speakers */
.au-sp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:26px}
.au-sp{background:var(--wht);padding:0 0 20px;border-bottom:3px solid var(--aur)}
.au-sp img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;margin-bottom:16px}
.au-sp h3{font-size:19px;margin:0 18px 4px;color:var(--mid)}
.au-sp-role{margin:0 18px 10px;font-size:14px;color:var(--teal);font-weight:600}
.au-sp-ses{margin:0 18px;font-size:13.5px;color:#4a5c64}
.au-sp-ses span{display:block;text-transform:uppercase;letter-spacing:.11em;
  font-size:11px;font-weight:700;color:#5f6f77;margin-bottom:2px}

/* attendance */
.au-sec--att{background:var(--wht)}
.au-att-lede{font-size:18.5px;color:#2c3f4b;max-width:72ch}
.au-pass-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(224px,1fr));
  gap:20px;margin:26px 0}
.au-pass{border:1px solid rgba(14,35,64,.2);border-top:4px solid var(--teal);
  padding:20px 18px}
.au-pass h3{font-size:16px;margin:0 0 12px;color:var(--mid)}
.au-pass ul{margin:0 0 14px;padding-left:18px;font-size:14px;color:#44575f}
.au-pass li{margin:4px 0}

/* gallery: alternating wide and narrow rectangles */
.au-gal{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;margin-top:8px}
.au-g{margin:0}
.au-g--wide{grid-column:span 4}
.au-g--narrow{grid-column:span 2}
.au-g img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/9}
.au-g--narrow img{aspect-ratio:3/4}
.au-g figcaption{font-size:12.5px;color:#4d616a;margin-top:9px}

/* venue */
.au-sec--venue{background:var(--mid);border-top-color:var(--teal)}
.au-sec--venue h2{color:var(--wht)}
.au-venue{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:46px}
.au-venue-p{color:#c5d8db;max-width:56ch}
.au-sec--venue .au-lnk{color:var(--aur)}
.au-venue-dl{margin:0;background:var(--ice);padding:22px 24px}
.au-venue-dl>div{padding:10px 0;border-bottom:1px solid rgba(14,35,64,.15)}
.au-venue-dl dt{font-size:11.5px;text-transform:uppercase;letter-spacing:.11em;
  color:var(--teal);font-weight:700}
.au-venue-dl dd{margin:2px 0 0;font-weight:600}

/* faq */
.au-faq details{background:var(--wht);border-left:4px solid var(--teal);
  margin-bottom:10px}
.au-faq summary{padding:14px 20px;font-weight:700;font-size:16.5px;color:var(--mid)}
.au-faq summary:hover{color:var(--teal)}
.au-faq-a{padding:0 20px 16px}
.au-faq-a p{margin:0;color:#44575f;max-width:76ch}

/* organiser */
.au-sec--org{background:var(--wht)}
.au-org{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:46px}
.au-org-hq{color:var(--teal);font-weight:700;margin-top:-6px}
.au-org p{color:#3c4f58}
.au-org-side h3{font-size:12.5px;text-transform:uppercase;letter-spacing:.13em;
  color:var(--teal);margin-top:26px}
.au-org-side h3:first-child{margin-top:0}
.au-values{list-style:none;margin:0 0 4px;padding:0}
.au-values li{padding:8px 0;border-bottom:1px solid rgba(14,35,64,.14);font-weight:600}

/* footer */
.ft{background:var(--mid);color:#cfe0e2;padding:52px 0 32px}
.ft-in{max-width:1280px;margin:0 auto;padding:0 26px}
.ft-org strong{color:var(--wht)}
.ft-links{list-style:none;display:flex;flex-wrap:wrap;gap:4px 28px;padding:0;margin:0 0 20px}
.ft-links a{color:var(--ice);font-size:14.5px;min-height:44px;display:inline-flex;
  align-items:center}
.ft-links a:hover{color:var(--aur)}
.ft-note{font-size:13px;color:#93aab0;max-width:80ch;margin:0 0 10px}
.ft-c{font-size:12.5px;color:#7e959b;margin:22px 0 0;
  border-top:1px solid rgba(233,243,244,.15);padding-top:18px}

/* ---------- tablet ---------- */
@media (max-width:1040px){
  .au-open-in{grid-template-columns:1fr;padding-top:96px}
  .au-rail{max-width:none}
  .au-sec--prop .au-in,.au-venue,.au-org{grid-template-columns:1fr;gap:32px}
  .au-ev-grid{grid-template-columns:1fr}
  .au-sp-grid{grid-template-columns:repeat(2,1fr)}
  .au-ses-list{columns:1}
  .au-gal{grid-template-columns:repeat(2,1fr)}
  .au-g--wide,.au-g--narrow{grid-column:span 1}
}
/* ---------- mobile: stacked title block, pale rail, full-width image ------- */
@media (max-width:640px){
  body{font-size:16px}
  .au-bar-in{padding:10px 18px;gap:12px}
  .au-nav{margin-left:0;order:3;width:100%}
  .au-nav ul{gap:16px}
  .au-nav a{font-size:13.5px;min-height:40px}
  .au-reg{margin-left:auto;padding:0 16px}
  .au-aurora{height:150px;width:100%;opacity:.8}
  .au-aurora::after{top:30px;height:38px}
  .au-open-in{padding:58px 18px 26px;gap:22px}
  .au-title{padding:24px 20px 22px}
  .au-title h1{font-size:clamp(34px,10vw,44px)}
  .au-lede{font-size:15.5px}
  .au-rail{padding:22px 18px}
  .au-strip img{height:220px}
  .au-strip figcaption{padding:10px 18px 24px}
  .au-in{padding:42px 18px}
  .au-day-stmt{padding:22px 18px}
  .au-ses{grid-template-columns:58px 1fr;gap:10px}
  .au-sp-grid{grid-template-columns:1fr}
  .au-gal{grid-template-columns:1fr}
  .au-g img,.au-g--narrow img{aspect-ratio:4/3}
  .au-ft-links{flex-direction:column}
  .ft-links{flex-direction:column;gap:0}
}
