@layer framework {

html{font-size:62.5%;}/* 1rem = 10px if base is 16px */
body{
  font-family:Inter,Outfit,"Open Sans",Helvetica,Arial,sans-serif;
  font-weight:400;font-size:var(--fw-text-size-m);
  line-height:var(--fw-line-height-text);margin:0;
}
html,body{background-color:var(--fw-bg);color:var(--fw-text);}

/* === Typography: Heading Sizes === */
h1{font-size:var(--fw-text-size-4xl);margin:0;}
h2{font-size:var(--fw-text-size-3xl);margin:0;}
h3{font-size:var(--fw-text-size-2xl);margin:0;}
h4{font-size:var(--fw-text-size-l);margin:0;}
h5{font-size:var(--fw-text-size-m);margin:0;}
h6{font-size:var(--fw-text-size-s);margin:0;}
h1,h2,h3,h4,h5,h6{
  font-family:Poppins,Inter,"Plus Jakarta Sans",Helvetica,Arial,sans-serif;
  font-weight:700;line-height:var(--fw-line-height-headings);
  text-wrap:pretty;/* Optional  newer support */
  color:var(--fw-headings);
}

 @media (width <= 478px){
 h1{font-size:var(--fw-text-size-2xl);}
 }

/*SECTION COLORS - resolve text color per palette container */
.brxe-section{background-color:var(--fw-bg);color:var(--fw-text);}
/* To make SVGs vertically align alongside text (e.g. icons next to text) */
svg{display:inline-block;vertical-align:middle;}

/* Stop slight side scroll of page */
html,body{touch-action:pan-y;overscroll-behavior-x:none;}

/*LINKS*/ a{transition:var(--fw-transition-fast);}

/* Colours - Generic links (exclude buttons) */
 a:not([class*="fw-btn-"]):not([role="button"]){color:var(--fw-accent);} 
 
 a:not([class*="fw-btn-"]):not([role="button"]):is(:hover,:focus-visible){color:var(--fw-hover);} 
 
 a:focus-visible{outline:2px solid currentColor;outline-offset:4px;}


 /*AMEND SPACING IN BRICKS RICH TEXT ELEMENT*/

/* Tighten spacing inside Bricks rich text elements */
body.fw-scope .brxe-text p {
  margin-block-start: 0;
  margin-block-end: var(--fw-space-3xs); /* default gap after paragraphs */
}



/* Headings inside rich text – less gap above & below */
body.fw-scope .brxe-text h1,
body.fw-scope .brxe-text h2,
body.fw-scope .brxe-text h3,
body.fw-scope .brxe-text h4,
body.fw-scope .brxe-text h5,
body.fw-scope .brxe-text h6 {
  margin-block-start: var(--fw-space-m);              /* space above heading */
  margin-block-end: calc(var(--fw-space-3xs)/1);  /* small space before paragraph/list */
}

/* No top margin on the very first item in the rich text */
body.fw-scope .brxe-text > :first-child {
  margin-block-start: 0;
}

/* No bottom margin on the very last item in the rich text */
body.fw-scope .brxe-text > :last-child {
  margin-block-end: 0;
}


/* === SHADOW UTILITIES === */
/* 1) Page default: ambient = page text color */
body { --fw-ambient: currentColor; }

/* 2) Any section/card defines its own ambient scope */
:where([class^="fw-section-"], [class*=" fw-section-"],
       [class^="fw-card-"],   [class*=" fw-card-"]){
  --fw-ambient: currentColor;
}

/* (intentionally NOT setting --fw-ambient on buttons)
   so their outer shadow uses the parent container’s tone */



}/* end @layer framework */
