/* Shared across every page: spacing scale, footer and the first-visit Acknowledgement of Country. */

/* Spacing scale for every page. Use these instead of one-off numbers. */
:root{
  --s-section:clamp(72px,9vw,112px); /* vertical padding of a section */
  --s-head:clamp(32px,4vw,48px);     /* section heading to its content */
  --s-gap:20px;                      /* between cards in a grid */
  --s-card:28px;                     /* inside a card */
  --s-stack:12px;                    /* between items inside a card */
  --s-tight:8px;                     /* a label to its field, pill to pill */
}


/* Footer: light, centred, lots of air */
.site-foot{background:var(--white);border-top:1px solid var(--line);color:var(--muted);padding-block:72px 40px;font-size:.92rem}
.site-foot .wrap{display:grid;justify-items:center;text-align:center;gap:22px}
.foot-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.foot-brand img{width:38px;height:38px}
.foot-brand b{display:block;font-family:var(--display);font-weight:700;font-size:1.15rem;line-height:1;text-align:left}
.foot-brand small{display:block;margin-top:3px;font-weight:700;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cobalt)}
.foot-links,.foot-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;margin:0}
.site-foot a{color:var(--ink);font-weight:600;text-decoration:none}
.site-foot a:hover{color:var(--cobalt)}
.foot-soon{color:var(--muted)}
.foot-soon em{font-style:normal;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cobalt);margin-left:6px}
.foot-rule{width:min(100%,560px);height:1px;background:var(--line);border:0;margin:10px 0}
.foot-ack{display:grid;justify-items:center;gap:12px;max-width:58ch;margin:0;font-size:.86rem;line-height:1.65;text-wrap:balance}
.foot-ack img{width:44px;height:auto}
.foot-copy{margin:0;font-size:.78rem;color:var(--muted);opacity:.85;text-wrap:balance}
@media (max-width:480px){.foot-links,.foot-contact{flex-direction:column;align-items:center;gap:10px}.site-foot{padding-block:56px 36px}}

/* Acknowledgement of Country pop-up */
.ack{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%;margin:0;display:none;place-items:center;overflow:auto}
.ack[open]{display:grid}
.ack::backdrop{background:rgba(20,22,58,.55)}
.ack-card{position:relative;box-sizing:border-box;width:min(440px,calc(100% - 32px));margin:16px;background:var(--white);border-radius:28px;padding:30px 28px 26px;text-align:center;display:grid;justify-items:center;gap:12px;box-shadow:0 24px 60px rgba(20,22,58,.28);animation:ack-in .28s cubic-bezier(.2,.8,.2,1)}
.ack-art{width:132px;height:auto;margin-top:-4px;transform:rotate(-4deg)}
.ack-eyebrow{font-weight:700;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cobalt)}
.ack-card h2{font-family:var(--display);font-weight:600;font-size:1.6rem;line-height:1.15;margin:0;color:var(--ink);text-wrap:balance}
.ack-card p{margin:0;color:var(--muted);font-size:.98rem;line-height:1.6;text-wrap:pretty}
.ack-go{margin-top:8px;font-family:var(--display);font-weight:600;font-size:1.05rem;border:0;cursor:pointer;background:var(--sun);color:var(--ink);padding:13px 28px;border-radius:999px;box-shadow:0 4px 0 #c9a21e}
.ack-go:active{transform:translateY(2px);box-shadow:0 2px 0 #c9a21e}
@keyframes ack-in{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
@media (max-width:420px){.ack-card{padding:26px 20px 22px;border-radius:24px}.ack-art{width:112px}.ack-card h2{font-size:1.4rem}}
@media (prefers-reduced-motion:reduce){.ack-card{animation:none}}

/* Australia sticker beside the header logo */
.has-aus{display:inline-flex;align-items:center}
header.top img.aus{width:40px;height:auto;margin-left:12px;transform:rotate(8deg);flex:none}
header.top nav a{white-space:nowrap}
@media (max-width:1024px){header.top img.aus{display:none}}

/* Dropdowns (assets/select.js): button plus pop-up list, styled like the text fields. */
.pick{position:relative}
.pick-native{position:absolute;inset:0;opacity:0;pointer-events:none}
.pick-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;font:inherit;font-weight:500;font-size:1rem;text-align:left;padding:13px 16px;border:1.5px solid transparent;border-radius:14px;background:var(--paper,#EEF0FB);color:var(--ink);cursor:pointer;transition:border-color .15s,background-color .15s}
.pick-btn:hover{background:var(--tint,#E6EAFF)}
.pick-btn:focus{outline:none}
.pick-btn:focus-visible,.pick.is-open .pick-btn{border-color:var(--ink);background:var(--white)}
.pick-btn.is-empty .pick-val{color:var(--placeholder,#8A8EAB)}
.pick-val{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pick-btn svg{width:20px;height:20px;flex:none;color:var(--muted);transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.pick.is-open .pick-btn svg{transform:rotate(180deg)}
.pick-list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;max-height:min(320px,60vh);overflow-y:auto;overscroll-behavior:contain;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:6px;box-shadow:0 12px 32px rgba(20,22,58,.12);transform-origin:top center;animation:pick-in .16s cubic-bezier(.2,.8,.2,1)}
.pick.is-up .pick-list{top:auto;bottom:calc(100% + 6px);transform-origin:bottom center;animation-name:pick-in-up}
@keyframes pick-in{from{opacity:0;transform:scale(.97) translateY(-4px)}}
@keyframes pick-in-up{from{opacity:0;transform:scale(.97) translateY(4px)}}
.pick-head{padding:12px 12px 4px;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pick-group:first-child .pick-head{padding-top:6px}
.pick-opt{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;font-weight:500;font-size:1rem;cursor:pointer}
.pick-opt svg{width:18px;height:18px;flex:none;color:var(--cobalt);opacity:0}
.pick-opt.is-active{background:var(--tint,#E6EAFF)}
.pick-opt[aria-selected=true]{color:var(--cobalt);font-weight:600}
.pick-opt[aria-selected=true] svg{opacity:1}
@media (prefers-reduced-motion:reduce){.pick-list{animation:none}.pick-btn svg{transition:none}}
