/* ============================================================
   TANTI SHARED THEME
   Single source of truth for tokens, toggle, and overlay.
   Every page links this file.
   Bump ?v= on every <link> after changes.
   ============================================================ */

*{box-sizing:border-box;margin:0;padding:0}

/* ============================================================
   COLOUR TOKENS — light (default)
   ============================================================ */
:root{
  /* Brand scale */
  --green-950:#0a1f18;
  --green-900:#0d2921;
  --green-800:#12352c;
  --green-700:#1c4438;
  --green-600:#2b5648;
  --green-500:#3f6b5b;
  --green-400:#5c8576;
  --green-300:#86a89b;
  --green-200:#b8ccc3;

  /* Paper scale */
  --cream-50:#fbfaf6;
  --cream-100:#f5f2ed;
  --cream-200:#e8e5dc;
  --cream-300:#d9d5c8;
  --cream-400:#c4bfae;

  /* Signal */
  --seal-red:#8a2f2a;
  --seal-gold:#b0902f;

  /* RGB channels */
  --ink-rgb:18,53,44;
  --paper-rgb:245,242,237;

  /* Semantic — light */
  --page:var(--cream-200);
  --surface-card:var(--cream-100);
  --surface-raised:var(--cream-50);
  --surface-inverse:var(--green-800);

  --ink:var(--green-800);
  --ink-soft:rgba(18,53,44,0.62);
  --ink-faint:rgba(18,53,44,0.38);
  --ink-ghost:rgba(18,53,44,0.14);
  --ink-on-inverse:var(--cream-100);

  --border:var(--green-800);
  --border-soft:rgba(18,53,44,0.22);
  --border-dotted:rgba(18,53,44,0.45);

  --accent:var(--green-800);
  --accent-hover:var(--green-700);
  --focus-ring:rgba(18,53,44,0.35);

  --logo-filter:brightness(1);
  --glow-text:none;
  --glow-text-soft:none;

  --glow-rgb:var(--ink-rgb);
  --shadow-rgb:var(--ink-rgb);
  --stripe-rgb:var(--ink-rgb);

  /* Legacy aliases (index / access / welcome / old bazi / greenprint) */
  --bg-page:var(--cream-200);
  --bg-card:var(--cream-100);
  --fg:var(--green-800);
  --btn-bg:var(--green-800);
  --btn-icon-filter:brightness(0) invert(1) sepia(1) saturate(0.3) brightness(1.8);
  --wheel-filter:drop-shadow(0 0 14px rgba(18,53,44,0.3));
  --glow-rgba:18,53,44;
  --shadow-rgba:18,53,44;
  --bar-stripe-rgba:18,53,44;
}

/* ============================================================
   COLOUR TOKENS — dark
   ============================================================ */
:root[data-theme="dark"]{
  --page:var(--green-950);
  --surface-card:var(--green-800);
  --surface-raised:var(--green-700);
  --surface-inverse:var(--cream-100);

  --ink:var(--cream-100);
  --ink-soft:rgba(245,242,237,0.66);
  --ink-faint:rgba(245,242,237,0.42);
  --ink-ghost:rgba(245,242,237,0.16);
  --ink-on-inverse:var(--green-800);

  --border:var(--cream-100);
  --border-soft:rgba(245,242,237,0.26);
  --border-dotted:rgba(245,242,237,0.48);

  --accent:var(--cream-100);
  --accent-hover:var(--cream-50);
  --focus-ring:rgba(245,242,237,0.4);

  --logo-filter:brightness(0) invert(0.96) sepia(0.08) saturate(0.5) drop-shadow(0 0 12px rgba(245,242,237,0.35));
  --glow-text:0 0 6px rgba(245,242,237,0.4);
  --glow-text-soft:0 0 6px rgba(245,242,237,0.25);

  --glow-rgb:var(--paper-rgb);
  --shadow-rgb:var(--paper-rgb);
  --stripe-rgb:var(--paper-rgb);

  /* Legacy aliases */
  --bg-page:var(--green-950);
  --bg-card:var(--green-800);
  --fg:var(--cream-100);
  --btn-bg:var(--cream-100);
  --btn-icon-filter:brightness(0) saturate(100%) invert(17%) sepia(28%) saturate(700%) hue-rotate(120deg) brightness(60%);
  --wheel-filter:drop-shadow(0 0 14px rgba(245,242,237,0.3));
  --glow-rgba:245,242,237;
  --shadow-rgba:245,242,237;
  --bar-stripe-rgba:245,242,237;
}

/* ============================================================
   TYPOGRAPHY TOKENS
   ============================================================ */
:root{
  --font-sans:"Proxima Nova","Jost","Helvetica Neue",Arial,sans-serif;
  --font-cond:"Proxima Nova","Jost",sans-serif;
  --font-wordmark:"GT Pantheon",Georgia,serif;

  --fw-light:300;
  --fw-regular:400;
  --fw-medium:500;
  --fw-semibold:600;
  --fw-bold:700;
  --fw-extrabold:800;
  --fw-black:900;

  --track-tight:-0.01em;
  --track-normal:0.02em;
  --track-label:0.2em;
  --track-wide:0.32em;
  --track-widest:0.4em;

  --fs-micro:9px;
  --fs-mini:10px;
  --fs-caption:11px;
  --fs-small:12px;
  --fs-body:14px;
  --fs-lead:16px;
  --fs-h4:20px;
  --fs-h3:26px;
  --fs-h2:34px;
  --fs-h1:46px;

  --lh-tight:1.1;
  --lh-snug:1.35;
  --lh-body:1.65;
  --lh-loose:1.8;
}

/* ============================================================
   SPACING & LAYOUT TOKENS
   ============================================================ */
:root{
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
  --space-6:24px;
  --space-8:32px;
  --space-10:40px;
  --space-12:48px;

  --card-pad:28px;
  --bar-h:26px;
  --width-dossier:460px;   /* mobile/default column width */
  --width-desktop:760px;   /* desktop column width */

  --radius-none:0;
  --radius-xs:2px;
  --radius-sm:4px;
  --radius-pill:999px;

  --hair:0.5px;
  --rule:1px;
  --rule-bold:1.5px;
}

/* ============================================================
   EFFECTS TOKENS
   ============================================================ */
:root{
  --shadow-stamp:3px 3px 0 rgba(var(--shadow-rgb),0.15),0 0 24px rgba(var(--shadow-rgb),0.10);
  --shadow-stamp-sm:2px 2px 0 rgba(var(--shadow-rgb),0.15),0 0 12px rgba(var(--shadow-rgb),0.08);
  --shadow-stamp-lg:5px 5px 0 rgba(var(--shadow-rgb),0.18),0 0 40px rgba(var(--shadow-rgb),0.12);

  --stripe-fine:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(var(--stripe-rgb),0.06) 2px,rgba(var(--stripe-rgb),0.06) 3px);
  --stripe-guilloche:
    repeating-linear-gradient(45deg,transparent 0px,transparent 3px,rgba(var(--stripe-rgb),0.05) 3px,rgba(var(--stripe-rgb),0.05) 4px),
    repeating-linear-gradient(-45deg,transparent 0px,transparent 3px,rgba(var(--stripe-rgb),0.05) 3px,rgba(var(--stripe-rgb),0.05) 4px);

  --border-hair:var(--hair) solid var(--border-soft);
  --border-rule:var(--rule-bold) solid var(--border);
  --border-dot:var(--rule-bold) dotted var(--border-dotted);
  --border-dash:var(--rule) dashed var(--border-dotted);

  --ease-ceremony:cubic-bezier(0.4,0,0.2,1);
  --dur-fast:0.2s;
  --dur-mid:0.35s;
  --dur-slow:0.6s;
}

/* ============================================================
   BASE
   ============================================================ */
html,body{min-height:100%}
body{
  background:var(--page);
  font-family:var(--font-sans);
  min-height:100vh;
  transition:background var(--dur-slow) ease;
  color:var(--ink);
}
a{color:var(--ink)}
a:hover{color:var(--ink-soft)}

/* ============================================================
   LOGO FILTER — dark mode glow, light mode clean
   Applies to every logo appearance across all pages.
   src-swap handles the image; filter handles the glow only.
   ============================================================ */
.gate-logo,
.site-logo,
.home-link img,
.hero-crest img,
.clinic-icon img{
  filter:none;
  transition:filter var(--dur-slow) ease;
}
:root[data-theme="dark"] .gate-logo,
:root[data-theme="dark"] .site-logo,
:root[data-theme="dark"] .home-link img,
:root[data-theme="dark"] .hero-crest img,
:root[data-theme="dark"] .clinic-icon img{
  filter:drop-shadow(0 0 12px rgba(245,242,237,0.35));
}

/* ============================================================
   THEME TOGGLE
   ============================================================ */
.theme-toggle{
  position:fixed;top:20px;right:20px;z-index:550;
  width:58px;height:30px;
  background:var(--surface-card);
  border:var(--rule-bold) solid var(--border);
  border-radius:var(--radius-pill);
  cursor:pointer;
  display:flex;align-items:center;padding:2px;
  box-shadow:var(--shadow-stamp-sm);
  transition:border-color var(--dur-slow) ease,background var(--dur-slow) ease,box-shadow var(--dur-slow) ease;
}
.theme-toggle-thumb{
  width:22px;height:22px;border-radius:50%;
  background:var(--ink);
  box-shadow:0 0 8px rgba(var(--glow-rgb),0.4);
  transition:transform 0.5s var(--ease-ceremony),background var(--dur-slow) ease,box-shadow var(--dur-slow) ease;
}
:root[data-theme="dark"] .theme-toggle-thumb{transform:translateX(28px)}

/* ============================================================
   LIGHTS-FLICKER OVERLAY
   ============================================================ */
.fade-overlay{
  position:fixed;inset:0;background:var(--page);
  opacity:0;pointer-events:none;z-index:90;
  transition:opacity 0.18s ease,background 0.18s ease;
}
.fade-overlay.flashing{opacity:0.14}

/* ============================================================
   CROSSLINK BUTTON (shared float link style)
   ============================================================ */
.crosslink-btn{
  position:fixed;
  bottom:24px;right:24px;
  display:inline-block;
  background:var(--surface-card);
  color:var(--ink);
  border:var(--rule-bold) solid var(--border);
  box-shadow:var(--shadow-stamp-sm);
  font-family:var(--font-sans);
  font-size:var(--fs-mini);
  letter-spacing:0.18em;
  text-transform:uppercase;
  font-weight:var(--fw-semibold);
  padding:10px 16px;
  text-decoration:none;
  opacity:0;
  animation:fadeInBtn 0.6s ease forwards 5s;
  transition:box-shadow 0.2s ease;
}
.crosslink-btn:hover{
  box-shadow:4px 4px 0 rgba(var(--shadow-rgb),0.2),0 0 28px rgba(var(--shadow-rgb),0.12);
}
@keyframes fadeInBtn{to{opacity:1}}

/* ============================================================
   CLINIC PAGE LAYOUT (bazi.html + greenprint.html)
   ============================================================ */

/* --- Ticker bar --- */
.tb-bar{
  position:fixed;top:0;left:0;right:0;height:44px;z-index:500;
  display:flex;align-items:center;justify-content:center;gap:16px;
  background:var(--surface-card);
  border-bottom:var(--rule-bold) solid var(--border);
  box-shadow:var(--shadow-stamp-sm);
  transition:transform var(--dur-slow) var(--ease-ceremony),background var(--dur-slow) ease,border-color var(--dur-slow) ease;
}
.tb-bar.collapsed{transform:translateY(-100%)}
/* inner wrapper aligns ticker content to the column */
.tb-inner{
  width:100%;max-width:var(--width-dossier);
  height:44px;
  display:flex;align-items:center;gap:16px;
  padding:0 16px;
}
@media(min-width:700px){
  .tb-inner{max-width:var(--width-desktop);padding:0 20px;}
}
.tb-viewport{position:relative;flex:1;overflow:hidden;height:100%;display:flex;align-items:center;margin-right:90px;}
.tb-quote-row{
  position:absolute;top:50%;left:0;
  white-space:nowrap;display:flex;align-items:baseline;
  transform:translateY(-50%);
  transition:opacity 0.4s ease;
}
.tb-quote{
  font-family:var(--font-sans);
  font-weight:var(--fw-light);
  font-size:var(--fs-small);
  color:var(--ink-soft);
  font-style:italic;
  letter-spacing:0.01em;
}
.tb-name{
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-mini);
  letter-spacing:var(--track-label);
  text-transform:uppercase;
  color:var(--ink-faint);
  margin-left:14px;
}
.tb-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}
/* Fixed top-right controls (clinic pages) */
.tb-fixed-controls{
  position:fixed;top:0;right:12px;z-index:510;
  height:44px;
  display:flex;align-items:center;gap:10px;
}
.tb-toggle{
  width:44px;height:24px;
  background:var(--surface-card);
  border:var(--rule-bold) solid var(--border);
  border-radius:var(--radius-pill);
  cursor:pointer;
  display:flex;align-items:center;padding:2px;
  box-shadow:var(--shadow-stamp-sm);
  transition:background var(--dur-slow) ease,border-color var(--dur-slow) ease;
}
.tb-toggle .theme-toggle-thumb{
  width:16px;height:16px;border-radius:50%;
  background:var(--ink);
  box-shadow:0 0 4px rgba(var(--glow-rgb),0.4);
  transition:transform var(--dur-mid) var(--ease-ceremony),background var(--dur-slow) ease;
}
:root[data-theme="dark"] .tb-toggle .theme-toggle-thumb{transform:translateX(20px)}
.tb-collapse-btn{
  background:none;border:none;cursor:pointer;
  color:var(--ink-faint);padding:4px;
  display:flex;align-items:center;justify-content:center;
  transition:color var(--dur-fast) ease,opacity var(--dur-fast) ease;
}
.tb-collapse-btn:hover{color:var(--ink)}
.tb-pull-tab{
  position:fixed;top:0;left:50%;transform:translateX(-50%);
  z-index:499;width:50px;height:20px;
  background:var(--surface-card);
  border:var(--rule-bold) solid var(--border);
  border-top:none;
  border-radius:0 0 var(--radius-sm) var(--radius-sm);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  color:var(--ink-soft);
  box-shadow:var(--shadow-stamp-sm);
  font-size:9px;
  transition:top var(--dur-slow) var(--ease-ceremony),background var(--dur-slow) ease;
}
.tb-pull-tab.hidden{top:-40px}

/* --- Page scroll area --- */
.clinic-page{
  padding-top:64px; /* clears fixed ticker */
  padding-bottom:80px;
  min-height:100vh;
  display:flex;justify-content:center;
  background:var(--page);
  transition:background var(--dur-slow) ease;
}
.clinic-col{
  width:100%;max-width:var(--width-dossier);
  display:flex;flex-direction:column;gap:20px;
  padding:20px 16px 0;
}
@media(min-width:700px){
  .clinic-col{max-width:var(--width-desktop);padding:24px 20px 0;}
}

/* --- Card --- */
.card{
  background:var(--surface-card);
  border:var(--rule-bold) solid var(--border);
  box-shadow:var(--shadow-stamp);
  transition:background var(--dur-slow) ease,border-color var(--dur-slow) ease,box-shadow var(--dur-slow) ease;
}
.card-bar{
  height:var(--bar-h);
  border-bottom:var(--rule-bold) solid var(--border);
  display:flex;align-items:center;
  padding:0 14px;
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-mini);
  letter-spacing:var(--track-label);
  text-transform:uppercase;
  color:var(--ink);
  background:var(--stripe-fine);
  text-shadow:var(--glow-text-soft);
  transition:border-color var(--dur-slow) ease,background var(--dur-slow) ease,color var(--dur-slow) ease;
}
.card-body{padding:var(--card-pad)}
.card-body-hero{padding:var(--card-pad)}
.card.sm{box-shadow:var(--shadow-stamp-sm)}
.card.lg{box-shadow:var(--shadow-stamp-lg)}

/* --- Card divider --- */
.card-rule{
  border:none;
  border-top:var(--rule-bold) solid var(--border);
  margin:var(--card-pad) calc(-1 * var(--card-pad));
  transition:border-color var(--dur-slow) ease;
}

/* --- Hero header --- */
.hero-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:var(--card-pad)}
.hero-title{
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-h4);
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--ink);
  line-height:var(--lh-tight);
  text-shadow:var(--glow-text);
  transition:color var(--dur-slow) ease;
}
.hero-sub{
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-mini);
  letter-spacing:var(--track-label);
  text-transform:uppercase;
  color:var(--ink-faint);
  margin-top:6px;
  transition:color var(--dur-slow) ease;
}
.hero-crest{
  flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.hero-crest img{
  width:64px;height:64px;
  object-fit:contain;
}

.hero-lead{
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-body);
  line-height:var(--lh-snug);
  color:var(--ink);
  margin-bottom:16px;
  text-shadow:var(--glow-text-soft);
  transition:color var(--dur-slow) ease;
}
.hero-body{
  font-family:var(--font-sans);
  font-weight:var(--fw-light);
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  color:var(--ink-soft);
  display:flex;flex-direction:column;gap:12px;
  transition:color var(--dur-slow) ease;
}
.hero-body p{margin:0}

/* --- Specs card --- */
.spec-row{
  display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  padding-bottom:8px;
}
.spec-row+.spec-row{
  border-top:var(--hair) dashed var(--border-dotted);
  padding-top:8px;
}
.spec-label{
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-mini);
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--ink-faint);
  white-space:nowrap;
  transition:color var(--dur-slow) ease;
}
.spec-value{
  font-family:var(--font-sans);
  font-size:var(--fs-small);
  color:var(--ink-soft);
  text-align:right;
  transition:color var(--dur-slow) ease;
}

/* --- Section heading --- */
.section-heading{
  display:flex;align-items:center;gap:12px;
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-caption);
  letter-spacing:var(--track-label);
  text-transform:uppercase;
  color:var(--ink);
  transition:color var(--dur-slow) ease;
}
.section-heading::after{
  content:'';
  flex:1;
  height:var(--hair);
  background:var(--border-soft);
  transition:background var(--dur-slow) ease;
}
.tag{
  display:inline-block;
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-micro);
  letter-spacing:var(--track-label);
  text-transform:uppercase;
  color:var(--ink-faint);
  border:var(--rule-bold) solid var(--border-soft);
  padding:2px 6px;
  border-radius:var(--radius-xs);
  transition:color var(--dur-slow) ease,border-color var(--dur-slow) ease;
}

/* --- List items (base analysis + add-ons) --- */
.list-item{padding-top:16px;margin-top:16px;border-top:var(--hair) solid var(--border-soft)}
.list-item:first-child{padding-top:0;margin-top:0;border-top:none}
.list-item-title{
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-small);
  letter-spacing:0.04em;
  color:var(--ink);
  margin-bottom:4px;
  text-shadow:var(--glow-text-soft);
  transition:color var(--dur-slow) ease;
}
.list-item-desc{
  font-family:var(--font-sans);
  font-weight:var(--fw-light);
  font-size:var(--fs-small);
  line-height:var(--lh-body);
  color:var(--ink-soft);
  transition:color var(--dur-slow) ease;
}

/* --- Booking card --- */
.booking-price{
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-h3);
  color:var(--ink);
  text-align:center;
  text-shadow:var(--glow-text);
  transition:color var(--dur-slow) ease;
}
.booking-price-detail{
  font-weight:var(--fw-light);
  font-size:var(--fs-small);
  color:var(--ink-soft);
}
.btn-primary{
  display:block;width:100%;
  background:var(--ink);
  color:var(--surface-card);
  border:var(--rule-bold) solid var(--border);
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-small);
  letter-spacing:var(--track-label);
  text-transform:uppercase;
  text-align:center;
  text-decoration:none;
  padding:14px var(--card-pad);
  cursor:pointer;
  box-shadow:var(--shadow-stamp-sm);
  transition:background var(--dur-fast) ease,color var(--dur-fast) ease,box-shadow var(--dur-fast) ease;
}
.btn-primary:hover{
  background:var(--accent-hover);
  box-shadow:var(--shadow-stamp);
  color:var(--surface-card);
}

/* --- Float crosslink (clinic pages) --- */
.float-link{
  position:fixed;bottom:-60px;right:24px;z-index:400;
  background:var(--surface-card);
  border:var(--rule-bold) solid var(--border);
  box-shadow:var(--shadow-stamp-sm);
  padding:10px 16px;
  border-radius:var(--radius-xs);
  opacity:0;
  transition:bottom var(--dur-slow) var(--ease-ceremony),opacity var(--dur-slow) ease,background var(--dur-slow) ease,border-color var(--dur-slow) ease;
  animation:floatLinkIn 0.6s ease forwards 5s;
}
@keyframes floatLinkIn{to{bottom:24px;opacity:1}}
.float-link.visible{bottom:24px;opacity:1;animation:none}
.float-link a{
  font-family:var(--font-sans);
  font-weight:var(--fw-semibold);
  font-size:var(--fs-mini);
  letter-spacing:0.12em;
  text-transform:uppercase;
  text-decoration:none;
  color:var(--ink);
  transition:color var(--dur-slow) ease;
}

/* --- Logo home link --- */
.home-link{
  display:inline-flex;cursor:pointer;
  flex-shrink:0;
}
.home-link img{
  width:64px;height:64px;
  object-fit:contain;
}

@media(max-width:480px){
  .clinic-col{padding:16px 12px 0}
  .card-body,.card-body-hero{padding:20px}
  .card-rule{margin:16px -20px}
  .hero-crest img,.home-link img{width:56px;height:56px}
}

/* ============================================================
   FONTS
   ============================================================ */
@font-face{
  font-family:'GT Pantheon';
  src:url('assets/fonts/GT-Pantheon-Micro-Black-Trial.otf') format('opentype');
  font-weight:900;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-Light.otf') format('opentype');
  font-weight:300;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-LightItalic.otf') format('opentype');
  font-weight:300;font-style:italic;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-Regular.otf') format('opentype');
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-RegularItalic.otf') format('opentype');
  font-weight:400;font-style:italic;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-Semibold.otf') format('opentype');
  font-weight:600;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-SemiboldItalic.otf') format('opentype');
  font-weight:600;font-style:italic;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-Bold.otf') format('opentype');
  font-weight:700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-BoldIt.otf') format('opentype');
  font-weight:700;font-style:italic;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-Extrabold.otf') format('opentype');
  font-weight:800;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Proxima Nova';
  src:url('assets/fonts/ProximaNova-Black.otf') format('opentype');
  font-weight:900;font-style:normal;font-display:swap;
}
