@font-face {
  font-family: "Virage Wide Italic";
  src: url("../fonts/Virage_WideSemiboldItalic.ttf") format("truetype");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Virage Wide Italic";
  src: url("../fonts/Virage_WideUltraboldItalic.ttf") format("truetype");
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-VariableFont_opsz,wght.ttf") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  --efc-blue: #062B52;
  --efc-blue-dark: #041F3D;
  --efc-blue-soft: #0B3767;
  --efc-gold: #D8B243;
  --efc-gold-light: #E5C96A;
  --efc-white: #FFFFFF;
  --efc-light: #F3F4F6;
  --efc-placeholder: #DDDDDD;
  --efc-text: #071D35;
  --efc-container: 1560px;
  --efc-page-gutter: 70px;
  --efc-title-font: "Virage Wide Italic", Arial Black, sans-serif;
  --efc-body-font: "Inter", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { margin: 0 !important; padding: 0 !important; scroll-behavior: smooth; }
body {
  margin: 0 !important;
  padding: 0 !important;
  background: var(--efc-white);
  color: var(--efc-text);
  font-family: var(--efc-body-font);
  overflow-x: hidden;
}

/* Remove theme/browser spacing around Gutenberg content */
body.efc-canvas-theme,
.efc-canvas-main,
.efc-canvas-front-page,
.entry-content,
.wp-site-blocks,
.site,
.site-main,
main,
article,
.page,
.content-area,
.wp-block-post-content {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
  width: 100% !important;
}

/* Hide titles/headers injected by classic or block themes if any plugin adds them */
.site-header,
.site-branding,
.site-title,
.entry-header,
.entry-title,
.wp-site-blocks > header,
header.wp-block-template-part,
footer.wp-block-template-part {
  display: none !important;
}

/* Make alignfull reliable across themes and Gutenberg */
.alignfull,
.wp-block[data-align="full"] > * {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

.efc-container {
  width: min(var(--efc-container), calc(100% - calc(var(--efc-page-gutter) * 2)));
  margin-inline: auto;
}

.efc-title-font {
  font-family: var(--efc-title-font);
  font-style: italic;
  text-transform: uppercase;
}

.efc-body-font { font-family: var(--efc-body-font); }

.efc-section { width: 100%; position: relative; }

.efc-cut-corner {
  clip-path: polygon(0 0, 100% 0, 100% 86%, 86% 100%, 0 100%);
}

.efc-btn-base {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-family: var(--efc-title-font);
  font-weight: 800;
  text-transform: uppercase;
  text-decoration: none;
  line-height: 1;
}

@media (max-width: 1024px) {
  :root {
    --efc-page-gutter: 24px;
  }
}


/* EFC typography helpers */
.efc-title-italic {
  font-family: var(--efc-title-font);
  font-weight: 800;
  font-style: italic;
  text-transform: uppercase;
}
