/* ==========================================================================
   Ciarb Australia Pre Moot 2027 — WordPress stylesheet
   Generated from the Pre Moot design system. Enqueue this one file.
   Asset URLs assume media uploaded to /wp-content/uploads/premoot-2027/
   ========================================================================== */

@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700&display=swap");

:root{
  --pm-red:#BE0000;--pm-maroon:#77000C;--pm-terracotta:#DE7165;--pm-blush:#F7E7E5;
  --pm-linen:#F7F3F0;--pm-charcoal:#3C3C3B;--pm-white:#fff;
  --pm-hairline:#EBE5E2;--pm-rule:#D8D1CD;--pm-muted:#7C7774;--pm-placeholder:#ADA6A2;
  --pm-ink:#1C1B1B;--pm-red-900:#4A0008;
  --pm-font:"Poppins","Verdana",-apple-system,"Segoe UI",sans-serif;
  --pm-content:1180px;--pm-gutter:32px;--pm-gutter-lg:64px;
}

/* ---- scope: everything lives inside .pm ---- */
.pm{font-family:var(--pm-font);color:var(--pm-charcoal);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
.pm *,.pm *::before,.pm *::after{box-sizing:border-box}
.pm img{max-width:100%;height:auto;display:block}
.pm p{margin:0}
.pm a{color:var(--pm-red);text-decoration:none;transition:color 120ms cubic-bezier(.2,0,.2,1)}
.pm a:hover,.pm a:focus{color:var(--pm-maroon)}
.pm h1,.pm h2,.pm h3,.pm h4{margin:0;color:var(--pm-maroon);font-weight:700;line-height:1.18}
.pm h1{font-size:34px;letter-spacing:-.68px}
.pm h2{font-size:34px;letter-spacing:-.68px}
.pm h3{font-size:20px;font-weight:600;letter-spacing:0}
.pm h4{font-size:17px;font-weight:600;letter-spacing:0}

/* Component rules are written as `.pm .pm-*` where they override a base element
   rule above (.pm a, .pm h1-h4) — equal specificity, declared later, so they win. */

/* ---- layout ---- */
.pm-wrap{max-width:var(--pm-content);margin:0 auto;padding-left:var(--pm-gutter);padding-right:var(--pm-gutter)}
.pm-section{padding-top:76px;padding-bottom:76px}
.pm-section--sm{padding-top:56px;padding-bottom:56px}
.pm-band{background:var(--pm-linen)}
.pm-band--tint{background:var(--pm-blush)}
.pm-band--red{background:var(--pm-red);color:var(--pm-white);position:relative;overflow:hidden}
.pm-band--red h2,.pm-band--red h3{color:var(--pm-white)}
.pm-stack{display:flex;flex-direction:column;gap:30px}
.pm-stack--tight{display:flex;flex-direction:column;gap:16px}
.pm-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:76px;align-items:start}
.pm-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px}
.pm-grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px}
.pm-grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:40px}

/* ---- type roles ---- */
.pm-eyebrow{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1.92px;line-height:1.2;color:var(--pm-red)}
.pm-eyebrow--sm{font-size:11px;letter-spacing:1.76px}
.pm-eyebrow--muted{color:var(--pm-muted)}
.pm-eyebrow--light{color:var(--pm-white)}
.pm .pm-display{font-size:58px;font-weight:700;letter-spacing:-1.16px;line-height:1.04;color:var(--pm-maroon)}
.pm .pm-display--lg{font-size:42px;font-weight:700;letter-spacing:-.84px;line-height:1.04;color:var(--pm-maroon)}
.pm .pm-display--light{color:var(--pm-white)}
.pm-lead{font-size:18px;font-weight:300;max-width:46ch;text-wrap:pretty}
.pm-prose{max-width:66ch;text-wrap:pretty}
.pm-light{font-weight:300}
.pm-dateline{font-weight:300;letter-spacing:.32px}

/* ---- wordmark (live text) ---- */
.pm-wordmark{font-family:var(--pm-font);display:flex;flex-direction:column;gap:8px}
.pm-wordmark__title{font-size:42px;font-weight:700;letter-spacing:-.84px;line-height:1.04;color:var(--pm-maroon)}
.pm-wordmark__year{font-weight:400;color:var(--pm-red)}
.pm-wordmark--reversed .pm-wordmark__title,.pm-wordmark--reversed .pm-wordmark__year{color:var(--pm-white)}

/* ---- section heading ---- */
.pm-heading{border-top:2px solid var(--pm-red);padding-top:16px;display:flex;flex-direction:column;gap:12px}
.pm-heading--light{border-top-color:rgba(255,255,255,.55)}
.pm-heading--light h2{color:var(--pm-white)}

/* ---- buttons ---- */
.pm .pm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--pm-font);font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;padding:11px 20px;border-radius:2px;border:1px solid var(--pm-red);background:var(--pm-red);color:var(--pm-white);cursor:pointer;text-decoration:none;transition:background-color 120ms cubic-bezier(.2,0,.2,1),color 120ms cubic-bezier(.2,0,.2,1),border-color 120ms cubic-bezier(.2,0,.2,1)}
.pm .pm-btn:hover,.pm .pm-btn:focus{background:var(--pm-maroon);border-color:var(--pm-maroon);color:var(--pm-white)}
.pm .pm-btn:active{background:var(--pm-red-900);border-color:var(--pm-red-900)}
.pm .pm-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(190,0,0,.38)}
.pm .pm-btn--lg{font-size:16px;padding:15px 30px;letter-spacing:.4px}
.pm .pm-btn--sm{font-size:13px;padding:8px 14px}
.pm .pm-btn--secondary{background:transparent;color:var(--pm-maroon);border-color:var(--pm-maroon)}
.pm .pm-btn--secondary:hover,.pm .pm-btn--secondary:focus{background:var(--pm-maroon);color:var(--pm-white)}
.pm .pm-btn--reversed{background:var(--pm-white);color:var(--pm-maroon);border-color:var(--pm-white)}
.pm .pm-btn--reversed:hover,.pm .pm-btn--reversed:focus{background:var(--pm-blush);border-color:var(--pm-blush);color:var(--pm-maroon)}
.pm .pm-btn--outline-light{background:transparent;color:var(--pm-white);border-color:rgba(255,255,255,.55)}
.pm .pm-btn--outline-light:hover,.pm .pm-btn--outline-light:focus{background:rgba(255,255,255,.14);border-color:var(--pm-white);color:var(--pm-white)}
.pm .pm-btn[disabled],.pm .pm-btn--disabled{background:var(--pm-hairline);border-color:var(--pm-hairline);color:var(--pm-placeholder);cursor:not-allowed}
.pm-btn-row{display:flex;gap:12px;flex-wrap:wrap}

/* ---- badges ---- */
.pm-badge{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1.76px;padding:5px 10px;border-radius:2px;line-height:1.2;background:var(--pm-blush);color:var(--pm-maroon);border:1px solid var(--pm-blush)}
.pm-badge--accent{background:var(--pm-red);color:var(--pm-white);border-color:var(--pm-red)}
.pm-badge--deep{background:var(--pm-maroon);color:var(--pm-white);border-color:var(--pm-maroon)}
.pm-badge--outline{background:transparent;color:var(--pm-red);border-color:var(--pm-red)}
.pm-badge--neutral{background:var(--pm-linen);color:var(--pm-charcoal);border-color:var(--pm-hairline)}
.pm-badge--light{background:rgba(255,255,255,.16);color:var(--pm-white);border-color:rgba(255,255,255,.4)}

/* ---- cards ---- */
.pm-card{background:var(--pm-white);border:1px solid var(--pm-hairline);border-radius:2px;padding:30px;transition:box-shadow 180ms cubic-bezier(.2,0,.2,1),border-color 180ms cubic-bezier(.2,0,.2,1)}
.pm-card--accent{border-top:2px solid var(--pm-red)}
.pm-card--band{background:var(--pm-linen);border-color:transparent}
.pm-card--tint{background:var(--pm-blush);border-color:transparent}
.pm-card--deep{background:var(--pm-maroon);border-color:var(--pm-maroon);color:var(--pm-white)}
.pm-card--deep h3{color:var(--pm-white)}
.pm-card--link:hover{box-shadow:0 2px 10px rgba(60,60,59,.10);border-color:var(--pm-rule)}
.pm-card__body{margin-top:8px;font-weight:300}

/* ---- stats ---- */
.pm-stat{border-top:2px solid var(--pm-red);padding-top:12px;display:flex;flex-direction:column;gap:8px}
.pm .pm-stat__value{font-size:42px;font-weight:700;letter-spacing:-.84px;line-height:1;color:var(--pm-maroon)}
.pm-stat__label{font-size:13px;font-weight:300;color:var(--pm-charcoal)}
.pm-stat--light{border-top-color:rgba(255,255,255,.55)}
.pm-stat--light .pm-stat__value{color:var(--pm-white)}
.pm-stat--light .pm-stat__label{color:rgba(255,255,255,.72)}

/* ---- hero ---- */
.pm-hero{position:relative;overflow:hidden;background:var(--pm-ink);min-height:560px;display:flex;align-items:center}
.pm-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.02)}
.pm-hero__scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,27,27,.78) 0%,rgba(28,27,27,.62) 42%,rgba(28,27,27,.44) 100%)}
.pm-hero__geo{position:absolute;right:-6%;top:50%;transform:translateY(-50%);opacity:.42;pointer-events:none}
.pm-hero__inner{position:relative;max-width:var(--pm-content);width:100%;margin:0 auto;padding:56px var(--pm-gutter-lg);display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.pm-hero__kicker{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1.92px;color:var(--pm-white)}
.pm .pm-hero__title{font-size:58px;font-weight:700;letter-spacing:-1.16px;line-height:1.04;color:var(--pm-white);max-width:18ch;text-wrap:balance}
.pm-hero__rule{width:2px;height:64px;background:var(--pm-red)}
.pm-hero__lead{font-size:18px;font-weight:300;color:var(--pm-white);max-width:46ch;text-wrap:pretty}
.pm-hero--short{min-height:220px}
.pm-hero--short .pm-hero__inner{padding-top:40px;padding-bottom:40px}

/* ---- photo mosaic band ---- */
.pm-mosaic{position:relative;overflow:hidden;background:var(--pm-ink);height:320px}
.pm-mosaic img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.02)}
.pm-mosaic__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,27,27,0) 35%,rgba(28,27,27,.72) 100%)}
.pm-mosaic__scrim--ink{background:rgba(28,27,27,.62)}
.pm-mosaic__scrim--soft{background:rgba(28,27,27,.34)}
.pm-mosaic__caption{position:absolute;inset:0;display:flex;align-items:flex-end;padding:30px;color:var(--pm-white)}
.pm-mosaic__caption .pm-wrap{width:100%}
.pm-mosaic--tall{height:380px}
.pm-mosaic--short{height:220px}

/* ---- programme / schedule ---- */
.pm-tabs{display:flex;border-bottom:1px solid var(--pm-hairline);flex-wrap:wrap;align-items:flex-end}
.pm-tab{font-family:var(--pm-font);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1.76px;background:none;border:none;cursor:pointer;padding:12px 22px;margin-bottom:-1px;color:var(--pm-muted);border-bottom:2px solid transparent;transition:color 120ms cubic-bezier(.2,0,.2,1),border-color 120ms cubic-bezier(.2,0,.2,1)}
.pm-tab:hover{color:var(--pm-maroon)}
.pm-tab.is-active{color:var(--pm-red);border-bottom-color:var(--pm-red)}
.pm-tabs__meta{margin-left:auto;padding-bottom:8px}
.pm-day{display:none}
.pm-day.is-active{display:block}
.pm-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:22px;align-items:baseline;border-top:1px solid var(--pm-hairline);padding:16px 0}
.pm-row__time{font-size:15px;font-weight:600;color:var(--pm-red);font-variant-numeric:tabular-nums}
.pm .pm-row__title{font-size:17px;font-weight:600;color:var(--pm-maroon)}
.pm-row__detail{font-size:15px;font-weight:300;margin-top:4px}
.pm-row__venue{font-size:11px;letter-spacing:.4px;color:var(--pm-muted);margin-top:4px}

/* ---- people ---- */
.pm-person__photo{aspect-ratio:4 / 5;background:var(--pm-hairline);border-radius:2px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.pm-person__photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.02)}
.pm-person__initials{font-size:34px;font-weight:700;letter-spacing:-.68px;color:var(--pm-placeholder)}
.pm .pm-person__name{font-size:17px;font-weight:600;color:var(--pm-maroon);margin-top:12px}
.pm-person__role{font-size:13px;font-weight:300;margin-top:2px}
.pm-person__firm{font-size:11px;letter-spacing:.4px;text-transform:uppercase;font-weight:600;color:var(--pm-red);margin-top:2px}

/* ---- key dates list ---- */
.pm-dates{display:flex;flex-direction:column;gap:16px}
.pm-dates__row{display:flex;gap:16px;border-top:1px solid var(--pm-hairline);padding-top:12px;font-size:15px}
.pm-dates__when{font-weight:600;color:var(--pm-red);flex:0 0 120px}
.pm-dates__what{font-weight:300}

/* ---- forms (works with Gravity Forms / CF7 wrappers too) ---- */
.pm-form{display:flex;flex-direction:column;gap:22px}
.pm-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pm-field{display:flex;flex-direction:column;gap:8px}
.pm-field--wide{grid-column:span 2}
.pm-label{font-size:13px;font-weight:600;color:var(--pm-maroon)}
.pm input[type=text],.pm input[type=email],.pm input[type=tel],.pm select,.pm textarea,.pm .pm-input{font-family:var(--pm-font);font-size:15px;color:var(--pm-charcoal);padding:11px 14px;background:var(--pm-white);border:1px solid var(--pm-rule);border-radius:2px;outline:none;width:100%;transition:border-color 120ms cubic-bezier(.2,0,.2,1),box-shadow 120ms cubic-bezier(.2,0,.2,1)}
.pm textarea{min-height:110px;resize:vertical}
.pm input:focus,.pm select:focus,.pm textarea:focus{border-color:var(--pm-maroon);box-shadow:0 0 0 3px rgba(190,0,0,.38)}
.pm-hint{font-size:11px;color:var(--pm-muted)}
.pm-consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;cursor:pointer}
.pm-consent input[type=checkbox]{appearance:none;-webkit-appearance:none;width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;border:1px solid var(--pm-rule);border-radius:2px;background:var(--pm-white);cursor:pointer;background-repeat:no-repeat;background-position:center;background-size:11px 11px}
.pm-consent input[type=checkbox]:checked{background-color:var(--pm-red);border-color:var(--pm-red);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M2 6.4 4.6 9 10 3.2'/%3E%3C/svg%3E")}

/* ---- site chrome (only if you are not using a theme header/footer) ---- */
.pm-header{background:var(--pm-white);border-bottom:1px solid var(--pm-hairline);position:sticky;top:0;z-index:20}
.pm-header__inner{max-width:var(--pm-content);margin:0 auto;padding:16px var(--pm-gutter);display:flex;align-items:center;gap:40px;flex-wrap:wrap}
.pm-header__logo img{height:52px;width:auto}
.pm-nav{display:flex;gap:30px;margin-left:auto;flex-wrap:wrap}
.pm-nav a{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1.76px;color:var(--pm-maroon);padding-bottom:2px;border-bottom:2px solid transparent}
.pm-nav a:hover{color:var(--pm-red)}
.pm-nav .current-menu-item>a,.pm-nav a.is-active{color:var(--pm-red);border-bottom-color:var(--pm-red)}
.pm-footer{background:var(--pm-maroon);color:var(--pm-white)}
.pm-footer__inner{max-width:var(--pm-content);margin:0 auto;padding:56px var(--pm-gutter);display:grid;grid-template-columns:minmax(0,1.2fr) repeat(auto-fit,minmax(150px,1fr));gap:40px}
.pm-footer__logo img{width:100%;max-width:300px}
.pm-footer__col{display:flex;flex-direction:column;gap:12px}
.pm-footer__title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1.76px;color:var(--pm-white)}
.pm-footer__col a{font-size:15px;font-weight:300;color:rgba(255,255,255,.72)}
.pm-footer__col a:hover{color:var(--pm-white)}
.pm-footer__note{border-top:1px solid rgba(255,255,255,.28)}
.pm-footer__note>div{max-width:var(--pm-content);margin:0 auto;padding:16px var(--pm-gutter);font-size:11px;font-weight:300;color:rgba(255,255,255,.72)}

/* ---- responsive ---- */
@media (max-width:900px){
  .pm-split{grid-template-columns:minmax(0,1fr);gap:40px}
  .pm-hero{min-height:440px}
  .pm-hero__inner{padding:40px var(--pm-gutter)}
  .pm .pm-hero__title{font-size:42px;letter-spacing:-.84px}
  .pm-hero__geo{opacity:.25;right:-25%}
  .pm-section{padding-top:56px;padding-bottom:56px}
  .pm-footer__inner{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .pm h1,.pm h2{font-size:26px;letter-spacing:-.52px}
  .pm .pm-hero__title{font-size:34px;letter-spacing:-.68px}
  .pm .pm-display,.pm .pm-display--lg{font-size:34px;letter-spacing:-.68px}
  .pm-fields{grid-template-columns:1fr}
  .pm-field--wide{grid-column:span 1}
  .pm-row{grid-template-columns:76px minmax(0,1fr);row-gap:8px}
  .pm-row>div:last-child{grid-column:2}
  .pm-mosaic{height:240px}
  .pm-nav{gap:18px}
}

/* ---- print ---- */
@media print{
  .pm-header,.pm-footer,.pm .pm-btn{display:none}
  .pm-hero{min-height:auto}
}
