/* ============================================================
   Mola Invest – progressive enhancements
   Scroll-reveal · animerede tal · portefølje-filter
   Degraderer pænt uden JS (klasser sættes af enhance.js).
   ============================================================ */

/* ---------- Scroll reveal ---------- */
.reveal{
  opacity:0;
  transform:translateY(26px);
  transition:opacity .7s cubic-bezier(.2,.6,.2,1), transform .7s cubic-bezier(.2,.6,.2,1);
  will-change:opacity, transform;
}
.reveal.in{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1 !important;transform:none !important;transition:none !important;}
}

/* ---------- Tal-band (forsiden) ---------- */
.mi-stats{border-bottom:1px solid var(--ln, rgba(255,255,255,.10));background:#101010;}
.mi-stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:54px 24px;}
.mi-stat{text-align:center;}
.mi-stat-num{
  display:inline-flex;justify-content:center;align-items:flex-start;gap:1px;
  font-family:'Instrument Sans',sans-serif;
  font-size:clamp(40px,4.8vw,58px);font-weight:700;letter-spacing:-.025em;line-height:1;color:#fff;
}
.mi-stat-num .suf,.mi-stat-num .pre{
  color:var(--ac, #ffbd3a);font-size:.4em;font-weight:600;letter-spacing:0;
  transform:translateY(.12em);
}
.mi-stat-lbl{
  margin:14px auto 0;max-width:22ch;
  font-size:14px;line-height:1.5;color:#aeb4bb;
}
.mi-stat-lbl b{color:#e9ebee;font-weight:600;}
@media(max-width:760px){.mi-stats .wrap{grid-template-columns:repeat(2,1fr);gap:40px 16px;padding:42px 24px;}}

/* ---------- Portefølje-filter ---------- */
.pf-bar{
  display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;justify-content:space-between;
  margin:8px 0 26px;
}
.pf-chips{display:flex;gap:8px;flex-wrap:wrap;}
.pf-chip{
  font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;
  background:var(--card, rgba(255,255,255,.04));
  border:1px solid var(--ln, rgba(255,255,255,.10));
  color:#d7d9dd;border-radius:999px;padding:9px 17px;transition:all .15s;
}
.pf-chip:hover{border-color:rgba(255,189,58,.55);color:#fff;}
.pf-chip.active{background:var(--ac, #ffbd3a);border-color:var(--ac, #ffbd3a);color:#151515;}
.pf-search{
  font-family:inherit;font-size:14px;color:#f3f3f3;outline:none;min-width:240px;
  background:var(--card, rgba(255,255,255,.04));
  border:1px solid var(--ln, rgba(255,255,255,.10));
  border-radius:999px;padding:11px 18px;transition:border-color .15s;
}
.pf-search:focus{border-color:rgba(255,189,58,.6);}
.pf-search::placeholder{color:#8a9098;}
.pf-empty{display:none;color:#b9bec5;text-align:center;font-size:16px;padding:34px 0;}

/* =================== PREMIUM POLISH =================== */
/* #5 smooth scroll + entrance */
html{scroll-behavior:smooth;}
@keyframes mi-pagein{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
.mi,.inv,.pr{animation:mi-pagein .6s cubic-bezier(.2,.6,.2,1) both;}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto;}.mi,.inv,.pr{animation:none;}}

/* #2 film-grain (injiceres af enhance.js) */
.mi-grain{position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.045;mix-blend-mode:overlay;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;}
@media (prefers-reduced-motion: reduce){.mi-grain{display:none;}}

/* #2 bløde glows bag hero */
.mi-hero,.inv-hero,.pr-hero{position:relative;overflow:hidden;}
.mi-hero::before,.inv-hero::before,.pr-hero::before{content:'';position:absolute;z-index:0;pointer-events:none;width:720px;height:720px;left:-200px;top:-260px;border-radius:50%;background:radial-gradient(circle,rgba(255,189,58,.15),rgba(255,189,58,0) 64%);}
.mi-hero::after{content:'';position:absolute;z-index:0;pointer-events:none;width:560px;height:560px;right:-180px;bottom:-220px;border-radius:50%;background:radial-gradient(circle,rgba(143,214,148,.12),rgba(143,214,148,0) 64%);}
.mi-hero .wrap,.inv-hero .wrap,.pr-hero .wrap{position:relative;z-index:1;}

/* #3 guld-gradient på nøgleord */
.mi-grad{background:linear-gradient(96deg,#ffe1a0,#ffbd3a 52%,#ef9f23);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}

/* (nav-understregning flyttet til global header-styling) */
/* #4 magnetiske knapper – jævn retur */
.mi-btn,.pr-btn{will-change:transform;}

/* #1 "Som set i medierne"-stribe */
.mi-media{border-top:1px solid var(--ln,rgba(255,255,255,.10));border-bottom:1px solid var(--ln,rgba(255,255,255,.10));background:#0f0f0f;}
.mi-media .lbl{display:flex;align-items:center;justify-content:center;gap:14px;text-align:center;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#7b818a;padding:26px 24px 2px;}
.mi-media .lbl a{color:var(--ac,#ffbd3a);text-decoration:none;letter-spacing:.06em;font-weight:600;}
.mi-media .lbl a:hover{text-decoration:underline;}
.mi-mwrap{overflow:hidden;padding:16px 0 28px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);}
.mi-mtrack{display:flex;align-items:center;gap:40px;width:max-content;animation:mi-marquee 38s linear infinite;}
.mi-media:hover .mi-mtrack{animation-play-state:paused;}
.mi-mname{font-size:19px;font-weight:600;letter-spacing:.01em;color:#c3c8ce;white-space:nowrap;transition:color .2s;}
.mi-mname:hover{color:#fff;}
.mi-mdot{color:var(--ac,#ffbd3a);opacity:.6;font-size:12px;}
@keyframes mi-marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion: reduce){.mi-mtrack{animation:none;flex-wrap:wrap;justify-content:center;}.mi-mwrap{-webkit-mask-image:none;mask-image:none;}}
