/** Shopify CDN: Minification failed

Line 696:9 Unexpected "{"
Line 696:18 Expected ":"
Line 696:24 Unexpected ","
Line 708:9 Unexpected "{"
Line 708:18 Expected ":"
Line 709:9 Unexpected "{"
Line 709:18 Expected ":"
Line 710:9 Unexpected "{"
Line 710:18 Expected ":"
Line 718:9 Unexpected "{"
... and 11 more hidden warnings

**/
/* ===============================
   AUSTRALIA / HART'S – Global Tokens
   =============================== */

/* 1) Fonts */
@font-face{
  font-family:"Elza";
  src:url("/cdn/shop/files/Elza-Regular.woff2?v=1741898222") format("woff2");
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"Elza";
  src:url("/cdn/shop/files/Elza-Medium.woff2?v=1741898221") format("woff2");
  font-weight:500; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"Elza";
  src:url("/cdn/shop/files/Elza-Bold.woff2?v=1741898222") format("woff2");
  font-weight:700; font-style:normal; font-display:swap;
}

/* Headline font – Sztos */
@font-face{
  font-family:"Sztos";
  src:url("/cdn/shop/files/sztosextrabold.woff2?v=1760038890") format("woff2");
  font-weight:800; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"Sztos";
  src:url("/cdn/shop/files/sztosextrabold.woff2?v=1760038890") format("woff2"); /* swap to true Black when available */
  font-weight:900; font-style:normal; font-display:swap;
}

/* 2) Core tokens */
:root{
  /* Brand colors */
  --col-green:#1E3C2E;
  --col-orange:#FD671A;
  --col-beige:#F9F1D7;
  --col-offwhite:#FFF9EE;
  --col-softgray:#EAE7DE;

  /* Product image stage */
  --product-image-bg:#F4E8D5;
  --product-image-radius:14px;

  /* Semantic aliases */
  --bg-base:var(--col-beige);
  --bg-contrast:var(--col-green);
  --text-base:var(--col-green);
  --text-contrast:var(--col-beige);
  --border-subtle:var(--col-softgray);
  --brand:var(--col-green);
  --accent:var(--col-orange);

  /* Typography families */
  --font-heading:"Sztos", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  --font-body:"Elza", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

  /* Map to theme heading variables */
  --heading-font-family: var(--font-heading);
  --heading-font-weight: 900;
  --heading-font-style: normal;
  --heading-letter-spacing: -0.005em;  /* -0.5% */
  --heading-text-transform: none;

  /* Body variables (if referenced by theme) */
  --text-font-family: var(--font-body);
  --text-font-weight: 400;
  --text-font-style: normal;

  /* Type scale & rhythm */
  --fs-xxl:clamp(36px,5vw,56px);
  --fs-xl: clamp(28px,3.5vw,40px);
  --fs-lg: clamp(22px,2.5vw,28px);
  --fs-md:18px;
  --fs-sm:16px;
  --fs-xs:14px;

  --lh-tight:1.1;
  --lh-head:1.15;
  --lh-body:1.55;

  --ls-head-tight:-0.005em;
  --ls-normal:0;

  /* Space, radius, shadow */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-6:24px; --sp-8:32px;
  --radius:16px;
  --shadow-soft:0 6px 18px rgba(0,0,0,.06);

  /* ================= Buttons (tokens + theme mappings) ================= */
  /* Your core button palette */
  --btn-bg: var(--accent);
  --btn-text: #FFFFFF;
  --btn-outline-text: var(--brand);        /* green on light backgrounds */
  --btn-outline-border: var(--brand);

  /* Some Prestige + Shopify rules read these names */
  --button-color-background: var(--btn-bg);
  --button-color-text:       var(--btn-text);
  --button-border-color:     var(--btn-bg);

  --button-outline-color-text:   var(--btn-outline-text);
  --button-outline-border-color: var(--btn-outline-border);

  /* Shopify injected “Buy it now” often uses rgb(var(--button-text-color)) */
  --button-background: var(--btn-bg);
  --button-text-color: 255,255,255;  /* rgb triplet for white */

  /* Hero overlay */
  --hero-overlay-start:rgba(30,60,46,.70);
  --hero-overlay-end:rgba(30,60,46,0);
}

/* 3) Contrast section overrides */
.section--contrast, .bg-contrast{
  --bg-base:var(--col-green);
  --text-base:var(--col-beige);
  --btn-outline-text:var(--col-beige);
  --btn-outline-border:var(--col-beige);
}

/* === Product image “stage” ==================== */
.product-card .card__media .media,
.product-item .card__media .media,
.card-product .card__media .media,
.grid .card__media .media,
.slider .card__media .media,
.card__media .media.media--transparent{
  background-color: var(--product-image-bg);
  border-radius: var(--product-image-radius);
  overflow: hidden;
}
.product-card .card__media .media img,
.product-item .card__media .media img,
.card-product .card__media .media img,
.grid .card__media .media img{ object-fit:contain; background:transparent; }

/* Cart drawer + cart page thumbnails */
.cart-drawer .cart-item__media,
.cart-items .cart-item__media,
.cart-items .cart-item__image,
.drawer__cart .cart-item__image{
  background-color: var(--product-image-bg);
  border-radius: var(--product-image-radius);
}
.cart-drawer .cart-item__media img,
.cart-items .cart-item__media img{ object-fit:contain; background:transparent; }

/* PDP gallery */
.product__media .media,
.product-gallery .media,
.product__media-wrapper .media{
  background-color: var(--product-image-bg);
  border-radius: var(--product-image-radius);
}
.product__media .media img{ object-fit:contain; }

/* ===== Typography System ===== */
html{ font-size:100%; }
body{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-family:var(--font-body);
  font-weight:400;
  font-size:clamp(15px,1.05vw,16px);
  line-height:var(--lh-body);
  color:var(--text-base);
  background:var(--bg-base);
}
h1, .h1, .page-title{
  font-family:var(--font-heading);
  font-weight:900;
  font-size:clamp(34px,6vw,64px);
  line-height:1.12;
  letter-spacing:var(--ls-head-tight);
  color:var(--brand);
  margin:0 0 .4em;
}
h2, .h2{
  font-family:var(--font-heading);
  font-weight:800;
  font-size:clamp(26px,3.4vw,40px);
  line-height:1.15;
  letter-spacing:var(--ls-head-tight);
  color:var(--brand);
  margin:0 0 .5em;
}
h3, .h3{
  font-family:var(--font-heading);
  font-weight:800;
  font-size:clamp(20px,2.2vw,28px);
  line-height:1.2;
  color:var(--brand);
  margin:0 0 .6em;
}
h4, .h4{
  font-family:var(--font-heading);
  font-weight:800;
  font-size:clamp(18px,1.8vw,22px);
  line-height:1.25;
  color:var(--brand);
  margin:0 0 .6em;
}
p{ margin:0 0 1.1em; }
p + p{ margin-top:.65em; }
.rte p{ font-size:clamp(16px,1.1vw,18px); }
.lead{ font-size:clamp(18px,1.4vw,20px); line-height:1.6; font-weight:400; }
.small, .meta{ font-size:clamp(13px,.9vw,14px); line-height:1.5; opacity:.9; }
strong, b{ font-weight:600; }
.section--contrast h1, 
.section--contrast h2, 
.section--contrast h3,
.bg-contrast h1, .bg-contrast h2, .bg-contrast h3{ color:var(--text-contrast); }
.section--contrast p, .bg-contrast p{ color:var(--text-contrast); opacity:.96; }
a{ color:var(--brand); text-decoration-thickness:.08em; text-underline-offset:.15em; }
a:hover{ color:var(--accent); }

/* Buttons (global) */
.button, .btn, [type="submit"], .shopify-payment-button__button{
  background:var(--btn-bg);
  color:var(--btn-text);
  border-radius:var(--radius);
  padding:12px 18px;
  font-family:var(--font-heading);
  font-weight:800;
  border:2px solid transparent;
  transition:transform .08s ease, box-shadow .2s ease, background .2s ease;
  font-size:clamp(14px,1vw,16px);
}
.button:hover, .btn:hover, .shopify-payment-button__button:hover{
  transform:translateY(-1px);
  box-shadow:var(--shadow-soft);
}
.button--outline, .btn--outline{
  background:transparent;
  border-color:var(--btn-outline-border);
  color:var(--btn-outline-text);
}

/* Cards */
.card, .product-card, .article-card{
  background:var(--product-image-bg);
  border:1px solid var(--border-subtle);
  border-radius:var(--radius);
  box-shadow:var(--shadow-soft);
}

/* Hero helpers */
.hero{ background:var(--bg-base); color:var(--text-base); }
.hero--overlay{ background:linear-gradient(180deg,var(--hero-overlay-start),var(--hero-overlay-end)); }

/* Utilities */
.bg-base{ background:var(--bg-base) !important; }
.bg-contrast{ background:var(--col-green) !important; color:var(--col-beige) !important; }
.text-brand{ color:var(--brand) !important; }
.text-contrast{ color:var(--text-contrast) !important; }
.border-subtle{ border-color:var(--border-subtle) !important; }
.rounded{ border-radius:var(--radius) !important; }
.shadow-soft{ box-shadow:var(--shadow-soft) !important; }
.fs-xxl{ font-size:var(--fs-xxl) !important; line-height:var(--lh-tight) !important; }
.fs-xl{ font-size:var(--fs-xl) !important; line-height:var(--lh-head) !important; }
.fs-lg{ font-size:var(--fs-lg) !important; line-height:var(--lh-head) !important; }

/* Accessibility / motion */
@media (prefers-reduced-motion:reduce){
  *{ animation:none !important; transition:none !important; }
}
@media (max-width:768px){
  .rte p{ font-size:clamp(16px,3.5vw,18px); }
  h1{ font-size:clamp(32px,9vw,48px); }
}

/* ================== PDP / Buy Buttons fixes ================== */
/* Force correct colors for buy-buttons + unbranded payment button */
.buy-buttons .button:not(.button--outline),
.product-form .button:not(.button--outline),
a.button:not(.button--outline),
button.button:not(.button--outline){
  background: var(--btn-bg) !important;
  color: var(--btn-text) !important;
  -webkit-text-fill-color: var(--btn-text);
}

/* Outrank Shopify injected rule: .shopify-payment-button__button--unbranded:not(:hover) */
.buy-buttons .shopify-payment-button__button--unbranded:not(:hover),
.product-form .shopify-payment-button__button--unbranded:not(:hover){
  background: var(--btn-bg) !important;
  color: var(--btn-text) !important;
  -webkit-text-fill-color: var(--btn-text);
  border-color: var(--btn-bg) !important;
}
.buy-buttons .shopify-payment-button__button--unbranded:hover,
.product-form .shopify-payment-button__button--unbranded:hover{
  filter: brightness(0.95);
}

/* Outline variant inside buy-buttons */
.buy-buttons .button--outline,
.product-form .button--outline{
  background: transparent !important;
  color: var(--btn-outline-text) !important;
  border-color: var(--btn-outline-border) !important;
}

/* Neutralize wrapper text color if set by theme */
.buy-buttons, .product-form{ color: inherit; }

/* Ensure inner spans inherit color */
.button .btn__text, .button span{
  color: inherit; -webkit-text-fill-color: inherit;
}
/* ===== Header layout — Prestige (desktop) ===== */
@media (min-width: 990px) {
  /* Make sure the header wrapper is a flex row */
  .header, .site-header, .Header, .header__wrapper {
    display: flex;
    align-items: center;
  }

  /* Wordmark/Logo -> LEFT */
  .header__heading,
  .Header__Logo,
  .site-header__logo {
    order: 0;
    margin-right: 28px;
  }

  /* Inline menu -> push to the RIGHT */
  .header__inline-menu,
  .Header__MainNav,
  .site-navigation {
    order: 2;
    margin-left: auto;         /* this is the key line that pushes it right */
    display: flex;
    gap: 24px;
  }

  /* Icons (account, search, wishlist, cart) -> after menu, right-aligned */
  .header__icons,
  .Header__IconWrapper,
  .site-header__icons {
    order: 3;
    display: flex;
    gap: 10px;
    margin-left: 18px;
  }

  /* If your theme centers the logo by default, neutralize that */
  .header--center .header__heading,
  .Header--center .Header__Logo {
    margin-left: 0;
    position: static;
    transform: none;
  }
}

/* Keep mobile as-is (stacked / drawer) */
@media (max-width: 989px) {
  .header__inline-menu { gap: 16px; }
}
/* Perfectly center the kangaroo badge on desktop */
@media (min-width: 990px) {
  .header__wrapper, .Header__Wrapper, .header {
    position: relative; /* anchor for absolute child */
  }
  .header__center-badge {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    line-height: 0;
    pointer-events: none;      /* don’t block clicks on menu */
  }
  .header__center-badge svg,
  .header__center-badge img {
    height: 36px;              /* tune to taste */
    width: auto;
  }
}

/* Hide on mobile so it doesn’t collide with the hamburger */
@media (max-width: 989px) {
  .header__center-badge { display: none; }
}

/* If the hero section adds a top margin/padding to accommodate a sticky header, kill it on home */
.shopify-section--header + .shopify-section:first-of-type{ margin-top:0 !important; }

/* Make sure the hero can receive the overlay (no unexpected stacking from hero) */
.shopify-section:first-of-type{ position: relative; z-index: 1; }

/* If your theme uses an announcement bar that is sticky, you may need to offset the header: */
/* .hdr.is-solid{ top: var(--announcement-height, 0px); } */
/* Fix text contrast on collection banner */
.collection-hero__title,
.collection-hero__description,
.image-banner__heading {
  color: #F9F1D7 !important; /* your cream tone */
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.35); /* improves readability */
}
/* ========== ANNOUNCEMENT BAR + HEADER STACK FIX ========== */

/* Fallback default in case JS fails */
:root {
  --announcement-bar-height: 40px;
}

/* Ensure announcement bar always above header and hero */
.announcement-bar {
  position: relative;
  z-index: 60;
}

/* Header sits below announcement bar and above hero */
.aust-header--overlay {
  position: absolute;
  top: var(--announcement-bar-height);
  left: 0;
  width: 100%;
  z-index: 51;
  transition: top 0.3s ease;
}

/* Hero always behind header + announcement */
.hero,
.hero-section,
#shopify-section-hero {
  position: relative;
  z-index: 1;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  :root {
    --announcement-bar-height: 50px; /* only used if JS not applied */
  }
}
/* Reset header to top when no announcement bar is active */
body:not(.has-announcement-bar) .aust-header--overlay {
  top: 0;
}

/* 🌊 AUSTRALIA Header Navigation with Animated Wavy Underline */
/* ======================================================
   🌿 AUSTRALIA NAVIGATION — HEADER + FOOTER WAVY STYLE
   Unified tone, smooth wave motion, brand beige glow
   ====================================================== */

/* ---------------- HEADER NAV LINKS ---------------- 
.aust-header__menu a,
.aust-pill,
.aust-cart-pill {
  font-family: "Elza", system-ui, sans-serif;
  font-weight: 500;
  color: #F9F1D7;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 0.95rem;
  text-decoration: none;
  transition: color 0.3s ease, opacity 0.3s ease;
  position: relative;
}

/* Hover + active color */
.aust-header__menu a:hover,
.aust-pill:hover,
.aust-cart-pill:hover {
  color: #E2D6B5; /* softer beige glow tone */
  opacity: 1;
}
.aust-header__menu a[aria-current="page"] {
  color: #FD671A;
  font-weight: 600;
}

/* ---------- Wavy underline (Califia-inspired) ----------  
.aust-header__menu a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 6px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='10' viewBox='0 0 200 10'%3E%3Cpath d='M0 5 C25 0 75 10 100 5 S175 10 200 5' stroke='%23E2D6B5' stroke-width='4' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") repeat-x;
  background-size: 90px 8px;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.5s ease, opacity 0.5s ease;
  filter: drop-shadow(0 1px 4px rgba(226, 214, 181, 0.35));
}  */

/* Reveal and animate on hover / active  
.aust-header__menu a:hover::after,
.aust-header__menu a[aria-current="page"]::after {
  opacity: 1;
  transform: scaleX(1);
  animation: aus-wave-scroll 3.5s linear infinite;
}

@keyframes aus-wave-scroll {
  0% { background-position-x: 0; }
  100% { background-position-x: -120px; }
} */

/* Layout between header links */
.aust-header__menu ul.unstyled-list {
  display: flex;
  gap: 42px;
  align-items: center;
}

/* Header pill icons */
.aust-pill,
.aust-cart-pill {
  background: none;
  border: none;
  color: #F9F1D7;
  font-size: 0.9rem;
  letter-spacing: 0.05em;
  font-weight: 500;
}

/* ======================================================
   🌿 FOOTER — AUSTRALIA STYLE WITH MATCHED WAVE EFFECT
   ====================================================== */

.cf-footer,
.aus-footer {
  background-color: #1E3C2E;
  color: #F9F1D7;
  font-family: "Elza", system-ui, sans-serif;
}

/* Footer links */
.cf-footer a,
.aus-footer a {
  position: relative;
  color: #F9F1D7;
  font-weight: 400;
  text-decoration: none;
  letter-spacing: 0.04em;
  transition: color 0.3s ease, opacity 0.3s ease;
}

/* Hover color */
.cf-footer a:hover,
.aus-footer a:hover {
  color: #E2D6B5;
  opacity: 1;
}

/* ---------- Footer wavy underline ---------- */
.cf-footer a::after,
.aus-footer a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  height: 5px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='10' viewBox='0 0 200 10'%3E%3Cpath d='M0 5 C25 0 75 10 100 5 S175 10 200 5' stroke='%23E2D6B5' stroke-width='3.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") repeat-x;
  background-size: 90px 8px;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.5s ease, opacity 0.5s ease;
  filter: drop-shadow(0 1px 4px rgba(226, 214, 181, 0.25));
}

/* Hover animation */
.cf-footer a:hover::after,
.aus-footer a:hover::after,
.cf-footer a:focus-visible::after,
.aus-footer a:focus-visible::after {
  opacity: 1;
  transform: scaleX(1);
  animation: aus-footer-wave 3.5s linear infinite;
}

@keyframes aus-footer-wave {
  0% { background-position-x: 0; }
  100% { background-position-x: -120px; }
}

/* Footer headings */
.cf-footer h4,
.aus-footer h4,
.cf-footer .footer__heading,
.aus-footer .footer__heading {
  font-family: "Sztos", sans-serif;
  font-weight: 800;
  color: #F9F1D7;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  font-size: 1rem;
  margin-bottom: 0.8em;
}


/* Footer headings (menu titles) */
.cf-footer h4,
.aus-footer h4,
.cf-footer .footer__heading,
.aus-footer .footer__heading {
  font-family: "Sztos", sans-serif;
  font-weight: 800;
  color: #F9F1D7;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  font-size: 1rem;
  margin-bottom: 0.8em;
}

/* Legal + fine print area */
.cf-footer__legal,
.aus-footer__legal {
  color: rgba(249, 241, 215, 0.65); /* lighter beige for hierarchy */
  font-size: 0.85rem;
  line-height: 1.6;
  border-top: 1px solid rgba(249, 241, 215, 0.15);
  padding-top: 20px;
}

/* Newsletter or social icons */
.cf-footer .social-icons a,
.aus-footer .social-icons a {
  color: #F9F1D7;
  transition: color 0.25s ease, transform 0.25s ease;
}

.cf-footer .social-icons a:hover,
.aus-footer .social-icons a:hover {
  color: #FD671A;
  transform: scale(1.08);
}




/* Show Products mega only (fallback .cf-mega and/or block-based #mega-...) */
.cf-products-disclosure[open] .cf-mega,
.cf-products-disclosure[open] [id^="mega-"]{
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}

/* Only allow the PRODUCTS disclosure to render dropdowns/mega */
.header__menu-disclosure:not(.cf-products-disclosure)[open] > .header__dropdown-menu,
.header__menu-disclosure:not(.cf-products-disclosure)[open] > .cf-mega,
.header__menu-disclosure:not(.cf-products-disclosure)[open] > [id^="mega-"]{
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* ========================================
   HEADER ALIGNMENT FIX (SHOP MENU)
   ======================================== */
.header__menu,
.header__inline-menu,
.header__menu-item {
  display: flex;
  align-items: center;
}

.header__menu-item a {
  padding-top: 4px; /* visually centers with logo height */
}



/* =========================================================
   FIX: Make footer background span full width (edge-to-edge)
   ========================================================= */

/* Full-width footer background */
#footer-{{ section.id }},
.cf-footer,
.aus-footer,
.shopify-section--footer {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(-50vw + 50%);
  background-color: var(--cf-bg, #F9F1D7);
  position: relative;
}

/* Remove inner width limits */
#footer-{{ section.id }} .page-width,
#footer-{{ section.id }} .content-container,
#footer-{{ section.id }} .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  margin: 0;
}

/* Keep column grid centered */
#footer-{{ section.id }} .cf-footer__columns,
#footer-{{ section.id }} .aus-footer__columns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 48px;
  justify-content: center;
  padding: 80px 10vw;
}
/* Remove decorative orange gradient line above the footer */
#footer-{{ section.id }}::before,
#footer-{{ section.id }} .cf-footer__panel::before,
#footer-{{ section.id }} .cf-footer__cap::before,
.mega-menu::before {
  content: none !important;
  display: none !important;
}
#footer-{{ section.id }} .mega-menu::before {
  content: none !important;
  display: none !important;
}
