/* ==========================================================================
   Chatsifieds Australian culture theme  (v20261108-au1)
   Loaded LAST on every page so it can refine earlier stylesheets.

   1. Tokens   - single source of truth is --csf-*. The --home-* tokens in
                 home.css are aliases kept for compatibility.
   2. Register tags (Use it / Understand it / Careful)
   3. Culture Lens signature component
   4. Acknowledgement of Country (footer)
   5. Passport stamps
   6. "Say it in your state" guide + Listen button

   Colour roles, not decoration:
     green   = learning / brand        ochre  = Australian culture
     ocean   = listening               bark   = long-form warmth
     eucalypt= quiet UI                wattle = decoration only (1.7:1)
   Contrast on cream #FAFAF7: ochre 5.6, ocean 7.3, eucalypt 5.3, bark 7.6.
   Never put text on wattle unless it is --csf-ink or --csf-bark.
   Never combine ochre, wattle and black as bands or stripes: that evokes the
   Aboriginal flag, which has usage protocols.
   ========================================================================== */

:root{
  --csf-ochre:#A8481F;
  --csf-ochre-soft:#FFF3E8;
  --csf-ochre-line:#E8C9B8;
  --csf-ocean:#0B5A7A;
  --csf-ocean-soft:#E4F2F7;
  --csf-ocean-line:#A9D3E2;
  --csf-eucalypt:#4E6F63;
  --csf-eucalypt-soft:#EAF1EE;
  --csf-bark:#6B4A2E;
  --csf-wattle:#F2B705;
  --csf-wattle-soft:#FFF4CC;
  --csf-wattle-line:#E5B93C;
  --csf-forest:#064e3b;
  --csf-focus:#8A4B00;
}

/* 2. Register tags ------------------------------------------------------- */
.csf-register{display:inline-flex;align-items:center;gap:.35rem;align-self:flex-start;width:fit-content;margin:.15rem 0 .6rem;border:1px solid var(--reg-line);border-radius:999px;background:var(--reg-bg);color:var(--reg-ink);padding:.28rem .7rem;font:800 .8rem/1.2 'Sora',system-ui,-apple-system,'Segoe UI',sans-serif;letter-spacing:.01em}
.csf-register__icon{flex:none;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
[data-register="use"]{--reg-bg:#E6F7F4;--reg-ink:#065F46;--reg-line:transparent}
[data-register="understand"],[data-register="careful"]{border-width:1.5px}
[data-register="understand"]{--reg-bg:var(--csf-ocean-soft);--reg-ink:var(--csf-ocean);--reg-line:var(--csf-ocean-line)}
[data-register="careful"]{--reg-bg:var(--csf-wattle-soft);--reg-ink:var(--csf-bark);--reg-line:var(--csf-wattle-line)}
.csf-register-note{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;margin:.6rem 0 1rem;color:inherit;line-height:1.5}
.csf-register-note .csf-register{margin:0}
.csf-register-legend{margin:1rem 0 0;border-left:4px solid var(--csf-eucalypt);border-radius:.4rem;background:var(--csf-eucalypt-soft);padding:.7rem 1rem;color:#26433b}
.csf-register-legend summary{cursor:pointer;padding:.65rem 0;font-weight:800}
.csf-register-legend ul{display:grid;gap:.55rem;margin:.75rem 0 .2rem;padding:0;list-style:none}
.csf-register-legend li{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .7rem;line-height:1.5}
.csf-register-legend .csf-register{margin:0}

/* 3. Culture Lens (static pages, JS-built panel and culture notes) ---------- */
.csf-culture-lens__card{border:1px solid var(--csf-ochre-line);border-left:8px solid var(--csf-ochre);background:linear-gradient(135deg,#FFFAF5,var(--csf-ochre-soft))}
.csf-culture-lens__try{background:var(--csf-ochre);color:#fff}
.csf-culture-lens__try span{color:#FFE9D6}
.csf-culture-lens__inner{border-color:var(--csf-ochre-line);border-left:8px solid var(--csf-ochre);background:linear-gradient(135deg,#FFFAF5,#fff)}
.csf-culture-lens__phrase{border-left-color:var(--csf-ochre);background:var(--csf-ochre-soft)}
.csf-culture-lens__phrase span{color:var(--csf-ochre)}
body .csf-culture-lens .csf-eyebrow,body .csf-culture-lens .csf-learning-framework__eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:var(--csf-ochre);font-size:.8rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
body .csf-culture-lens .csf-eyebrow::before,body .csf-culture-lens .csf-learning-framework__eyebrow::before{content:"";flex:none;width:1.15em;height:1.15em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 2C11 2 4 8 4 17c0 1.6.3 3 .9 4.3C5.6 15.8 9 10.600 15 7.500c-4.300 3.800-7.300 8.300-8.300 13.500C15 21 21 14 21 2z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 2C11 2 4 8 4 17c0 1.6.3 3 .9 4.3C5.6 15.8 9 10.600 15 7.500c-4.300 3.800-7.300 8.300-8.300 13.500C15 21 21 14 21 2z'/%3E%3C/svg%3E") center/contain no-repeat}
.csf-culture-note{border-left-color:var(--csf-ochre);border-color:var(--csf-ochre-line);background:linear-gradient(135deg,#FFFAF5,#fff)}
.csf-culture-note strong{color:var(--csf-ochre)}

/* 4. Acknowledgement of Country ------------------------------------------- */
.csf-footer-acknowledgement{max-width:80rem;margin:2rem auto 0;border-top:1px solid rgba(255,255,255,.15);padding-top:1.25rem;color:rgba(236,253,245,.92);font-size:.88rem;line-height:1.7}
.csf-footer-acknowledgement a{color:#fff;font-weight:700;text-underline-offset:3px}
.csf-footer-acknowledgement + .csf-footer-bottom{margin-top:1.25rem}
.pw-footer .csf-footer-acknowledgement{margin-top:1.25rem;text-align:center;color:#fff}
.csf-about-acknowledgement{margin:0;border-left:8px solid var(--csf-ochre);border-radius:1rem;background:var(--csf-ochre-soft);padding:1.4rem 1.6rem;color:#3b2a20;line-height:1.75}
.csf-about-acknowledgement h2{margin:0 0 .5rem;color:var(--csf-ochre)}
.csf-about-acknowledgement a{color:var(--csf-ochre);font-weight:800}

/* 5. Passport stamps ----------------------------------------------------- */
.csf-passport-stamps{gap:.7rem;align-items:center}
.csf-passport-stamps>span{position:relative;box-sizing:border-box;display:grid;place-items:center;width:100%;max-width:4.4rem;aspect-ratio:1;min-height:0;justify-self:center;border:2px dashed var(--csf-eucalypt);border-radius:50%;background:var(--csf-eucalypt-soft);color:var(--csf-eucalypt);font:800 .82rem/1 'Sora',system-ui,sans-serif;letter-spacing:.05em}
.csf-passport-stamps>span.is-stamped{border:2px solid var(--csf-ochre);background:var(--csf-wattle-soft);color:var(--csf-ochre);box-shadow:inset 0 0 0 3px var(--csf-wattle-soft),inset 0 0 0 5px var(--csf-ochre);transform:rotate(-7deg)}
.csf-passport-stamps>span.is-stamped:nth-child(even){transform:rotate(6deg)}
.csf-passport-stamps>span.is-current{outline:2px solid var(--csf-ocean);outline-offset:3px}
.csf-passport-stamps>span.is-home::after{content:"";position:absolute;top:2px;right:2px;width:.6rem;height:.6rem;border:2px solid #fff;border-radius:50%;background:var(--csf-ocean)}
.csf-passport-status strong{color:var(--csf-ochre)}
.csf-passport-status span{color:#4f625c}
.csf-passport-summary{display:grid;gap:1rem;border:1px solid var(--csf-ochre-line);border-radius:1.25rem;background:#fff;padding:1.25rem}
.csf-passport-summary h3{margin:0;color:var(--csf-ink,#17352f)}
.csf-passport-summary p{margin:.25rem 0 0;color:#4a625c;line-height:1.55}
.csf-passport-summary__link{display:inline-block;margin-top:.5rem;color:var(--csf-ochre);font-weight:800}
@media(max-width:640px){.csf-passport-stamps{grid-template-columns:repeat(4,minmax(0,1fr))!important}}

/* 6. "Say it in your state" + Listen button -------------------------------- */
.csf-state-guide{display:grid;gap:1rem}
.csf-state-chips{display:flex;flex-wrap:wrap;gap:.5rem}
.csf-state-chip{min-height:2.75rem;min-width:3.4rem;border:1px solid var(--csf-eucalypt);border-radius:999px;background:#fff;padding:.5rem 1rem;color:var(--csf-eucalypt);font:800 .9rem/1 'Sora',system-ui,sans-serif;cursor:pointer}
.csf-state-chip:hover{background:var(--csf-eucalypt-soft)}
.csf-state-chip.is-suggested{border:2px dashed var(--csf-ochre);color:var(--csf-ochre)}
.csf-state-chip[aria-pressed="true"]{border-color:var(--csf-ochre);background:var(--csf-ochre);color:#fff}
.csf-state-chip:focus-visible,.csf-listen-btn:focus-visible{outline:3px solid var(--csf-focus);outline-offset:3px}
.csf-state-card{position:relative;display:grid;gap:.9rem;border:1px solid var(--csf-ochre-line);border-radius:1.25rem;background:#fff;padding:1.3rem 1.4rem;box-shadow:0 14px 36px rgba(107,74,46,.08)}
.csf-state-card__top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem}
.csf-state-card h3{margin:0;color:var(--csf-ink,#17352f);font-size:1.15rem}
.csf-state-card__area{margin:.2rem 0 0;color:#4a625c;line-height:1.5}
.csf-state-card__stamp{border:2px dashed var(--csf-wattle-line);border-radius:.4rem;background:var(--csf-wattle-soft);padding:.45rem .85rem;color:var(--csf-bark);font:800 1rem/1.2 'Sora',system-ui,sans-serif;transform:rotate(2deg)}
.csf-state-card ul{display:grid;gap:.6rem;margin:0;padding:0;list-style:none}
.csf-state-card li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;border-left:4px solid var(--csf-ochre);background:var(--csf-ochre-soft);border-radius:.5rem;padding:.65rem .85rem;color:#2d2118;font-weight:700}
.csf-state-card__say{margin:.35rem 0 0;color:var(--csf-ocean);font-weight:800}
.csf-state-card__empty{margin:0;border:2px dashed var(--csf-ochre-line);border-radius:1rem;background:var(--csf-ochre-soft);padding:1rem 1.2rem;color:#3b2a20;line-height:1.6}
.csf-state-card__note{margin:0;color:#4a625c;font-size:.88rem;line-height:1.55}
.csf-listen-btn{align-self:flex-start;min-height:2.75rem;border:1px solid var(--csf-ocean-line);border-radius:999px;background:#fff;padding:.55rem 1rem;color:var(--csf-ocean);font:800 .85rem/1 'Sora',system-ui,sans-serif;cursor:pointer}
.csf-listen-btn:hover{background:var(--csf-ocean-soft)}
.csf-listen-btn.is-speaking{border-color:var(--csf-ocean);background:var(--csf-ocean);color:#fff}
.csf-pw-save-card .csf-listen-btn{margin:.1rem 1rem 1rem}

@media (forced-colors:active){
  .csf-register,.csf-state-chip,.csf-listen-btn{border:1px solid ButtonText}
  .csf-passport-stamps>span.is-stamped{border-style:solid}
}

/* ---- Sponsor card: clear label + inline register tags (business round) ---- */
.csf-sponsor-slot__sponsored{position:relative}
.csf-sponsor-slot__tag{position:absolute;top:.85rem;right:1rem;border:1px solid #f1cf93;border-radius:999px;background:#fff4df;color:#6b3a06;padding:.22rem .6rem;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.csf-sponsor-slot__phrase-chip .csf-register--inline{margin:0 0 0 .4rem;padding:.08rem .4rem;font-size:.66rem;vertical-align:middle}
.csf-biz-preview{background:#fff;color:#17352f;border-radius:1.2rem;padding:1.1rem;margin-top:1.2rem}
.csf-biz-preview__label{display:inline-block;margin:0 0 .6rem;border-radius:999px;background:#fff4df;border:1px solid #f1cf93;color:#6b3a06;padding:.2rem .6rem;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.csf-biz-preview__phrase{margin:0;font-family:'Playfair Display',Georgia,serif;font-size:1.5rem;font-weight:900;color:#073f35}
.csf-biz-preview__strip{margin-top:.8rem;border-top:1px dashed #cfe8e1;padding-top:.7rem;font-size:.86rem;font-weight:700;color:#52615d}
.csf-biz-preview__strip strong{color:#6b3a06}
.csf-biz-why .info-card h3{margin-top:0}
.csf-audience{border:1.5px solid #cfe8e1;border-radius:1.2rem;background:#f4fbf8;padding:1rem 1.2rem}
.csf-audience ul{margin:.4rem 0 0;padding-left:1.1rem}
.business-trust-strip{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}
.business-conversion-hero .hero-side .csf-biz-preview .csf-biz-preview__phrase{color:#073f35}
.business-conversion-hero .hero-side .csf-biz-preview .csf-biz-preview__strip{color:#3f4f4a}
.business-conversion-hero .hero-side .csf-biz-preview .csf-biz-preview__strip strong{color:#6b3a06}
.business-conversion-hero .hero-side .csf-biz-preview .csf-biz-preview__label{color:#6b3a06}

/* ---- Global audience review: stop grid children forcing mobile width ---- */
@media(max-width:1000px){.csf-home-hero__grid,.csf-home-practice__grid{grid-template-columns:minmax(0,1fr)}}
.csf-home-hero__grid>*,.csf-home-practice__grid>*{min-width:0}
.csf-home-hero__media img{max-width:100%;height:auto}

/* ---- First week in Australia page ---- */
.csf-fw{padding:2.2rem 1.25rem}.csf-fw__inner{width:min(1160px,100%);margin:0 auto}
.csf-fw h2{font-family:'Playfair Display',Georgia,serif;color:#073f35;font-size:clamp(1.5rem,3vw,2.1rem);margin:0 0 .6rem}
.csf-fw-lead{color:#3f4f4a;font-weight:600;max-width:46rem}
.csf-fw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1rem;margin-top:1rem}
.csf-fw-card{border:1.5px solid #cfe8e1;border-radius:1.2rem;background:#fff;padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}
.csf-fw-card h3{margin:0;color:#073f35;font-size:1.15rem}
.csf-fw-card p{margin:0;color:#3f4f4a;font-weight:600}
.csf-fw-list{list-style:none;margin:.3rem 0 0;padding:0;display:grid;gap:.7rem;width:100%}
.csf-fw-list li{border-left:3px solid #0B5A7A;padding-left:.7rem}
.csf-fw-say{display:block;font-weight:800;color:#17352f}
.csf-fw-list small{display:block;color:#52615d;font-size:.82rem;font-weight:600;margin-top:.15rem}
.csf-fw-alert{border:2px solid #A8481F;border-radius:1.2rem;background:#FFF3E8;padding:1.2rem 1.4rem}
.csf-fw-alert h2{color:#7a3213;margin-bottom:.4rem}
.csf-fw-alert ul{margin:.4rem 0;padding-left:1.2rem;color:#2b2b2b;font-weight:600;line-height:1.6}
.csf-fw-source{margin:.6rem 0 0;font-size:.82rem;color:#4a4a4a}.csf-fw-source a{color:#7a3213;font-weight:800}
@media print{header,footer,.csf-mobile-nav,.csf-trust-bar,.skip-link,.csf-page-actions,.csf-register-legend{display:none!important}.csf-fw-card,.csf-fw-alert{break-inside:avoid}body{background:#fff}}
.csf-hub-progress[hidden]{display:none!important}

.csf-who-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1rem;margin-top:1.2rem}
.csf-who-card{display:flex;flex-direction:column;gap:.35rem;border:1.5px solid #cfe8e1;border-radius:1.2rem;background:#fff;padding:1.1rem 1.2rem;text-decoration:none;color:#3f4f4a;font-weight:600;min-height:44px}
.csf-who-card strong{color:#073f35;font-size:1.1rem}
.csf-who-card:hover{border-color:#0B5A7A}.csf-who-card:focus-visible{outline:3px solid var(--csf-focus,#8A4B00);outline-offset:3px}
.csf-page-actions--show{display:flex;flex-wrap:wrap;gap:.6rem}.csf-page-actions--show .csf-shell-btn{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px}

/* ---- Contacts ---- */
.csf-ct-jump{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}
.csf-ct-jump a{display:inline-flex;align-items:center;min-height:44px;padding:.4rem .9rem;border:1.5px solid #cfe8e1;border-radius:999px;background:#fff;color:#073f35;font-weight:800;text-decoration:none}
.csf-ct-jump a:focus-visible,.csf-ct-num:focus-visible,.csf-ct-src:focus-visible{outline:3px solid var(--csf-focus,#8A4B00);outline-offset:3px}
.csf-fw--contacts{padding-top:1rem}.csf-fw--contacts h2{font-size:clamp(1.3rem,2.5vw,1.7rem)}
.csf-ct-list{list-style:none;margin:.6rem 0 0;padding:0;display:grid;gap:.7rem}
.csf-ct{display:flex;gap:1rem;justify-content:space-between;align-items:flex-start;border:1.5px solid #cfe8e1;border-radius:1rem;background:#fff;padding:.9rem 1.1rem}
.csf-ct strong{display:block;color:#073f35}.csf-ct span{display:block;color:#3f4f4a;font-weight:600;line-height:1.55;margin-top:.2rem}
.csf-ct-src{display:inline-block;margin-top:.3rem;font-size:.8rem;font-weight:700;color:#0B5A7A}
.csf-ct-nums{flex:0 0 auto;text-align:right;display:flex;flex-direction:column;gap:.3rem;align-items:flex-end}
.csf-ct-num{display:inline-flex;align-items:center;min-height:44px;padding:.3rem .9rem;border-radius:999px;background:#0B5A7A;color:#fff;font-weight:900;text-decoration:none;white-space:nowrap}
.csf-ct-or{font-size:.75rem;color:#52615d;font-weight:700}
@media(max-width:560px){.csf-ct{flex-direction:column}.csf-ct-nums{align-items:flex-start;text-align:left}}
@media print{.csf-ct-jump{display:none}.csf-ct{break-inside:avoid}.csf-ct-num{background:none;color:#000;padding:0}}
.csf-fw{scroll-margin-top:9rem}
