*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
  :root{
    --blue:#0F5FB5; --teal:#0d7377; --green:#047857;
    --ink:#0F172A; --ink-2:#475569; --ink-3:#64748B;
    --line:#E2E8F0; --line-2:#F1F5F9; --bg:#F8FAFC; --card:#FFFFFF;
    --mint:#6FE2C8; --mint-2:#B3EDDF; --amber:#FDE68A; --pink:#FBCFE8;
    --ocean:linear-gradient(140deg,#062f3c 0%,#0d7377 34%,#0a4582 70%,#0f2850 100%);
    --on:#F2F7F6; --on-2:#AFC6C7; --on-3:#7C9698; --hair:rgba(255,255,255,0.14); --hair-2:rgba(255,255,255,0.24);
    --xpo:cubic-bezier(0.16,1,0.3,1); --maxw:1200px;
  }
  html{ scroll-behavior:smooth; }
  body{ font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif; background:#0a2733; color:var(--on); -webkit-font-smoothing:antialiased; line-height:1.5; overflow-x:hidden; }
  .wrap{ max-width:var(--maxw); margin:0 auto; padding:0 30px; }
  a{ color:inherit; }
  .skip{ position:absolute; left:-999px; top:0; background:#fff; color:#0a2733; padding:10px 16px; border-radius:8px; z-index:300; }
  .skip:focus{ left:16px; top:12px; }

  /* NAV + SHELL */
  .shell{ position:relative; background:var(--ocean); overflow-x:clip; overflow-y:visible; }
  .shell::before{ content:''; position:absolute; right:-8%; top:-6%; width:760px; height:760px; border-radius:50%; background:radial-gradient(circle, rgba(111,226,200,0.18), rgba(111,226,200,0.04) 46%, transparent 70%); filter:blur(10px); pointer-events:none; }
  header.nav{ position:sticky; top:0; z-index:100; background:rgba(8,38,48,0.7); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-bottom:1px solid var(--hair); }
  .nav-in{ position:relative; display:flex; align-items:center; justify-content:space-between; height:74px; }
  .brand{ display:flex; align-items:center; gap:11px; text-decoration:none; color:var(--on); }
  .brand-mark{ width:32px; height:32px; border-radius:9px; background:linear-gradient(135deg,var(--teal),var(--blue)); color:#fff; display:grid; place-items:center; font-weight:800; font-size:17px; }
  .brand-name{ font-weight:800; font-size:20px; letter-spacing:0; }
  .nav-links{ display:flex; align-items:center; gap:2px; }
  .nav-links a{ color:var(--on-2); text-decoration:none; font-size:14.5px; font-weight:600; padding:9px 13px; border-radius:9px; transition:color .2s var(--xpo), background .2s var(--xpo); }
  .nav-links a:hover{ color:var(--on); background:rgba(255,255,255,0.07); }
  .nav-cta{ color:#0a2733 !important; background:var(--on); padding:10px 18px !important; border-radius:10px; font-weight:700; transition:transform .18s var(--xpo), box-shadow .25s var(--xpo); }
  .nav-cta:hover{ transform:translateY(-1px); box-shadow:0 12px 26px -12px rgba(0,0,0,0.5); }
  .nav-toggle{ display:none; width:42px; height:42px; border:1px solid var(--hair-2); border-radius:12px; background:rgba(255,255,255,0.08); color:var(--on); cursor:pointer; place-items:center; gap:4px; padding:11px; }
  .nav-toggle span{ display:block; width:18px; height:2px; border-radius:2px; background:currentColor; transition:transform .2s var(--xpo), opacity .2s var(--xpo); }
  .nav-toggle[aria-expanded="true"] span:nth-child(1){ transform:translateY(6px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] span:nth-child(2){ opacity:0; }
  .nav-toggle[aria-expanded="true"] span:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }
  .mobile-menu{ display:grid; gap:6px; position:absolute; left:0; right:0; top:calc(100% + 8px); z-index:110; padding:10px; border:1px solid var(--hair-2); border-radius:16px; background:rgba(8,38,48,0.98); box-shadow:0 22px 44px -24px rgba(0,0,0,0.68); }
  .mobile-menu[hidden]{ display:none; }
  .mobile-menu a{ color:var(--on-2); text-decoration:none; font-size:15px; font-weight:700; padding:12px 13px; border-radius:11px; }
  .mobile-menu a:hover, .mobile-menu a:focus{ color:var(--on); background:rgba(255,255,255,0.07); outline:none; }
  .mobile-menu .nav-cta{ display:flex; justify-content:center; margin-top:4px; }
  @media (max-width:860px){ .nav-links{ display:none; } .nav-toggle{ display:grid; } }

  .hero{ position:relative; z-index:5; display:grid; grid-template-columns:1.05fr 0.95fr; gap:48px; align-items:center; padding-top:44px; padding-bottom:92px; }
  .pill{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:600; color:var(--on); background:rgba(255,255,255,0.10); border:1px solid var(--hair-2); padding:7px 14px; border-radius:99px; margin-bottom:24px; }
  .pill .dot{ width:7px; height:7px; border-radius:50%; background:var(--mint); box-shadow:0 0 10px var(--mint); }
  h1{ font-weight:800; font-size:clamp(44px,6vw,80px); line-height:0.98; letter-spacing:0; text-wrap:balance; margin-bottom:22px; }
  h1 .acc{ color:var(--mint); }
  .lead{ font-size:clamp(17px,1.5vw,20px); color:var(--on-2); max-width:40ch; margin-bottom:32px; }
  .lead b{ color:var(--on); font-weight:700; }
  .ctas{ display:flex; flex-wrap:wrap; gap:13px; align-items:center; margin-bottom:28px; }
  .btn{ font-size:15.5px; font-weight:700; text-decoration:none; border-radius:12px; padding:15px 26px; display:inline-flex; align-items:center; gap:9px; transition:transform .18s var(--xpo), background .2s var(--xpo), box-shadow .25s var(--xpo), border-color .2s var(--xpo); cursor:pointer; }
  .btn svg{ width:17px; height:17px; }
  .btn-primary{ background:var(--on); color:#0a2733; box-shadow:0 14px 32px -16px rgba(0,0,0,0.6); border:0; }
  .btn-primary:hover{ transform:translateY(-2px); box-shadow:0 20px 42px -16px rgba(0,0,0,0.55); }
  .btn-primary:active{ transform:scale(0.985); }
  .btn-ghost{ background:transparent; color:var(--on); border:1px solid var(--hair-2); }
  .btn-ghost:hover{ border-color:var(--on); }
  .btn-teal{ background:linear-gradient(135deg,var(--teal),var(--blue)); color:#fff; border:0; }
  .btn-teal:hover{ transform:translateY(-2px); box-shadow:0 16px 34px -16px rgba(13,115,119,0.6); }
  .cta-aside{ font-size:13.5px; color:var(--on-3); } .cta-aside b{ color:var(--on-2); font-weight:700; }
  .trust{ display:flex; flex-wrap:wrap; gap:8px 18px; font-size:13px; color:var(--on-2); font-weight:600; }
  .trust span{ display:inline-flex; align-items:center; gap:7px; }
  .trust svg{ width:15px; height:15px; color:var(--mint); flex-shrink:0; }

  /* DEVICE */
  .stage{ position:relative; display:flex; justify-content:center; perspective:1400px; }
  .stage-in{ position:relative; transform-style:preserve-3d; will-change:transform; }
  .device{ position:relative; z-index:2; width:312px; height:660px; background:#0b0c0c; border-radius:42px; padding:8px; box-shadow:0 2px 3px rgba(255,255,255,0.16) inset, 0 60px 90px -42px rgba(0,0,0,0.75), 0 28px 56px -30px rgba(3,20,26,0.85); }
  .screen{ width:100%; height:100%; background:var(--bg); border-radius:34px; overflow:hidden; display:flex; flex-direction:column; color:var(--ink); position:relative; }
  .glare{ position:absolute; inset:0; z-index:9; pointer-events:none; border-radius:34px; background:linear-gradient(135deg,rgba(255,255,255,0.18),transparent 22%,transparent 76%,rgba(255,255,255,0.05)); }
  .st-bar{ height:30px; padding:9px 22px 0; font-size:11px; font-weight:700; color:var(--ink); display:flex; justify-content:space-between; flex-shrink:0; }
  .app{ flex:1; overflow:hidden; padding:6px 13px 8px; }
  .htop{ display:flex; align-items:center; justify-content:space-between; padding:8px 4px 12px; }
  .htop .greet{ font-size:21px; font-weight:800; letter-spacing:0; }
  .avs{ display:flex; }
  .av{ width:30px; height:30px; border-radius:50%; display:grid; place-items:center; font-size:15px; border:2.5px solid #fff; box-shadow:0 2px 5px rgba(0,0,0,0.12); }
  .av.a1{ background:linear-gradient(135deg,#FEF3C7,#FDE68A); }
  .av.a2{ background:linear-gradient(135deg,#FCE7F3,#FBCFE8); margin-left:-10px; }
  .metric{ background:linear-gradient(135deg,#0d4f5e 0%,#0a6f6a 60%,#093d70 100%); border-radius:18px; padding:14px 16px 16px; margin-bottom:10px; color:#fff; position:relative; overflow:hidden; }
  .metric::after{ content:''; position:absolute; right:-30px; bottom:-30px; width:120px; height:120px; background:radial-gradient(circle,rgba(255,255,255,0.08),transparent 70%); border-radius:50%; }
  .mnav{ display:flex; align-items:center; justify-content:space-between; margin-bottom:9px; position:relative; z-index:1; }
  .mnav .arw{ width:24px; height:24px; border-radius:50%; background:rgba(255,255,255,0.12); display:grid; place-items:center; }
  .mnav .arw svg{ width:11px; height:11px; stroke:#fff; stroke-width:2.6; fill:none; }
  .mnav .arw.off{ opacity:0.3; }
  .mnav .mt{ font-size:13px; font-weight:700; color:rgba(255,255,255,0.85); }
  .flabel{ display:inline-flex; align-items:center; gap:5px; font-size:10px; font-weight:700; color:rgba(255,255,255,0.72); text-transform:uppercase; letter-spacing:0; padding:4px 10px; background:rgba(255,255,255,0.08); border-radius:99px; margin-bottom:8px; position:relative; z-index:1; }
  .flabel svg{ width:9px; height:9px; stroke:currentColor; stroke-width:2.6; fill:none; }
  .bignum{ font-size:35px; font-weight:800; letter-spacing:0; line-height:1; margin-bottom:13px; position:relative; z-index:1; }
  .bar-row{ display:flex; font-size:11px; color:rgba(255,255,255,0.78); font-weight:600; margin-bottom:6px; position:relative; z-index:1; }
  .bar-row .b1{ flex:1; } .bar-row .b2{ color:rgba(255,255,255,0.6); }
  .mprog{ height:8px; background:rgba(255,255,255,0.12); border-radius:99px; overflow:hidden; position:relative; z-index:1; }
  .mprog .fill{ height:100%; background:linear-gradient(90deg,var(--mint),var(--mint-2)); border-radius:99px; transition:width .6s var(--xpo); }
  .iu{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:10px; }
  .iuc{ background:linear-gradient(135deg,#134e5a,#0d4453); border-radius:16px; padding:12px 13px 13px; color:#fff; position:relative; overflow:hidden; }
  .iuh{ display:flex; align-items:center; gap:7px; margin-bottom:6px; }
  .iua{ width:23px; height:23px; border-radius:50%; display:grid; place-items:center; flex-shrink:0; }
  .iua.in{ background:rgba(110,231,183,0.25); } .iua.out{ background:rgba(248,113,113,0.25); }
  .iua svg{ width:11px; height:11px; stroke-width:2.8; fill:none; }
  .iua.in svg{ stroke:#6EE7B7; } .iua.out svg{ stroke:#FCA5A5; }
  .iul{ font-size:9.5px; font-weight:700; color:rgba(255,255,255,0.65); text-transform:uppercase; letter-spacing:0; }
  .iuv{ font-size:18px; font-weight:800; letter-spacing:0; }
  .wg{ background:var(--card); border-radius:14px; padding:12px 14px; box-shadow:0 2px 6px rgba(15,23,42,0.06); margin-bottom:10px; }
  .wg-h{ font-size:10px; font-weight:700; color:var(--ink-3); text-transform:uppercase; letter-spacing:0; margin-bottom:7px; display:flex; justify-content:space-between; }
  .mdf{ height:11px; border-radius:99px; display:flex; overflow:hidden; margin:8px 0; }
  .mdf .meg{ background:linear-gradient(90deg,#FEF3C7,#FDE68A); } .mdf .felles{ background:linear-gradient(90deg,#B3EDDF,#6FE2C8); } .mdf .ditt{ background:linear-gradient(90deg,#FCE7F3,#FBCFE8); }
  .mdfleg{ display:flex; justify-content:space-between; gap:6px; }
  .mdfi{ font-size:10px; color:var(--ink-2); } .mdfi .dot{ display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:3px; vertical-align:middle; }
  .mdfi .lbl{ font-weight:700; color:var(--ink); } .mdfi .amt{ display:block; font-size:11px; font-weight:800; color:var(--ink); margin-top:1px; }
  .sm-name{ font-size:13px; font-weight:700; margin-bottom:4px; }
  .sm-row{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:6px; }
  .sm-amt{ font-size:18px; font-weight:800; letter-spacing:0; } .sm-tg{ font-size:10.5px; color:var(--ink-3); }
  .sm-bar{ height:7px; background:var(--line-2); border-radius:99px; overflow:hidden; } .sm-fill{ height:100%; background:linear-gradient(90deg,#B3EDDF,#6FE2C8); border-radius:99px; }
  /* budsjett-kategori-rad */
  .cat{ display:flex; align-items:center; gap:10px; padding:9px 0; border-bottom:1px solid var(--line-2); }
  .cat:last-child{ border-bottom:none; }
  .cat .ci{ width:30px; height:30px; border-radius:9px; background:var(--line-2); display:grid; place-items:center; flex-shrink:0; font-size:14px; }
  .cat .cmid{ flex:1; min-width:0; }
  .cat .cn{ font-size:12.5px; font-weight:700; color:var(--ink); display:flex; justify-content:space-between; margin-bottom:5px; }
  .cat .cn b{ font-weight:800; } .cat .cn .ct{ color:var(--ink-3); font-weight:600; font-size:11px; }
  .cat .cbar{ height:6px; background:var(--line-2); border-radius:99px; overflow:hidden; } .cat .cfill{ height:100%; border-radius:99px; }
  .tabbar{ height:58px; background:#fff; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-around; padding:0 4px 4px; flex-shrink:0; }
  .tab{ display:flex; flex-direction:column; align-items:center; gap:3px; font-size:9.5px; font-weight:500; color:var(--ink-3); flex:1; }
  .tab.active{ color:var(--blue); font-weight:700; }
  .tab svg{ width:21px; height:21px; stroke:currentColor; stroke-width:1.8; fill:none; stroke-linecap:round; stroke-linejoin:round; }

  .chip{ position:absolute; z-index:6; background:#fff; border-radius:15px; padding:12px 14px; box-shadow:0 22px 44px -22px rgba(0,0,0,0.55); will-change:transform; }
  .chip .cc{ font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:0; color:var(--ink-3); margin-bottom:4px; display:flex; align-items:center; gap:6px; }
  .chip .cv{ font-size:19px; font-weight:800; color:var(--ink); letter-spacing:0; }
  .chip .cv .pos{ color:var(--green); }
  .chip .d{ width:8px; height:8px; border-radius:50%; }
  .chip-1{ top:64px; left:-40px; } .chip-2{ bottom:108px; right:-46px; }

  /* SECTIONS */
  .sec{ position:relative; padding:118px 0; }
  .tag{ font-size:13px; font-weight:700; color:var(--mint); margin-bottom:16px; }
  .dark{ background:#0a2733; } .darker{ background:#08222c; }
  h2{ font-weight:800; font-size:clamp(30px,3.7vw,50px); line-height:1.04; letter-spacing:0; text-wrap:balance; }
  .sub{ color:var(--on-2); font-size:18px; max-width:46ch; }

  /* PROBLEM */
  .problem h2{ max-width:20ch; margin-bottom:14px; }
  .problem .sub{ margin-bottom:58px; }
  .pains{ display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--hair); }
  .pain{ padding:32px 26px 8px 0; border-right:1px solid var(--hair); }
  .pain:last-child{ border-right:none; }
  .pain .pi{ width:40px; height:40px; border-radius:12px; background:rgba(111,226,200,0.14); color:var(--mint); display:grid; place-items:center; margin-bottom:16px; }
  .pain .pi svg{ width:20px; height:20px; }
  .pain h3{ font-size:18px; font-weight:700; margin-bottom:8px; letter-spacing:0; }
  .pain p{ font-size:14.5px; color:var(--on-2); }
  .problem-foot{ margin-top:48px; font-size:20px; max-width:60ch; }
  .problem-foot b{ color:var(--mint); font-weight:700; }

  /* STICKY DEMO */
  .demo-head{ text-align:center; max-width:32ch; margin:0 auto 24px; }
  .demo-grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
  .demo-rail{ position:sticky; top:11vh; display:flex; justify-content:center; }
  .demo-steps{ display:flex; flex-direction:column; }
  .dstep{ min-height:80vh; display:flex; flex-direction:column; justify-content:center; }
  .dstep .n{ font-size:13.5px; font-weight:700; color:var(--mint); margin-bottom:12px; display:flex; align-items:center; gap:10px; }
  .dstep .n::before{ content:''; width:22px; height:2px; background:var(--mint); border-radius:2px; }
  .dstep h3{ font-weight:800; font-size:clamp(26px,3vw,38px); letter-spacing:0; line-height:1.08; margin-bottom:14px; }
  .dstep p{ font-size:17px; color:var(--on-2); max-width:38ch; }
  .screenframe{ transition:opacity .45s var(--xpo); }
  .screenframe[aria-hidden="true"]{ position:absolute; inset:8px; opacity:0; pointer-events:none; }
  .screenset{ position:relative; width:100%; height:100%; }
  .screen-dots{ display:none; }
  .mobile-phone-carousel{ display:none; }

  /* FOKUS (interaktiv) */
  .fokus{ background:linear-gradient(180deg,#0a2733,#08222c); }
  .fokus-grid{ display:grid; grid-template-columns:0.95fr 1.05fr; gap:56px; align-items:center; }
  .fokus h2{ max-width:18ch; margin-bottom:16px; }
  .fokus .sub{ margin-bottom:26px; }
  .fchips{ display:flex; flex-wrap:wrap; gap:10px; }
  .fchip{ font-family:inherit; font-size:14px; font-weight:700; color:var(--on-2); background:rgba(255,255,255,0.06); border:1px solid var(--hair-2); border-radius:11px; padding:11px 16px; cursor:pointer; transition:all .2s var(--xpo); }
  .fchip:hover{ color:var(--on); }
  .fchip[aria-pressed="true"]{ color:#0a2733; background:var(--mint); border-color:var(--mint); }
  .fokus-note{ margin-top:20px; font-size:13.5px; color:var(--on-3); }
  .fokus-card{ max-width:420px; margin:0 auto; }
  .fmetric .bignum{ transition:opacity .25s ease; }
  .fmetric.swap .bignum, .fmetric.swap .flabel span:first-child{ opacity:0.4; }

  /* TRYGT */
  .trygt .grid{ display:grid; grid-template-columns:1.1fr 0.9fr; gap:56px; align-items:center; }
  .trygt h2{ max-width:18ch; }
  .trygt .sub{ margin:16px 0 26px; }
  .safe{ list-style:none; }
  .safe li{ display:flex; gap:14px; padding:17px 0; border-top:1px solid var(--hair); font-size:15px; color:var(--on-2); }
  .safe li:last-child{ border-bottom:1px solid var(--hair); }
  .safe .k{ color:var(--on); font-weight:700; }
  .safe .si{ width:24px; height:24px; color:var(--mint); flex-shrink:0; margin-top:1px; }
  .safe .si svg{ width:22px; height:22px; }
  .vault{ position:relative; aspect-ratio:1; border-radius:26px; border:1px solid var(--hair-2); background:radial-gradient(circle at 50% 36%, rgba(111,226,200,0.16), transparent 60%), rgba(255,255,255,0.02); display:grid; place-items:center; }
  .vault svg{ width:116px; height:116px; color:var(--mint); }
  .vault .ring{ position:absolute; border:1px solid var(--hair); border-radius:50%; width:62%; height:62%; } .vault .ring.r2{ width:82%; height:82%; opacity:0.5; }

  /* PRIS */
  .pris{ background:var(--bg); color:var(--ink); }
  .pris .tag{ color:var(--teal); }
  .pris-head{ text-align:center; max-width:30ch; margin:0 auto 52px; }
  .pris-head h2{ color:var(--ink); } .pris-head p{ color:var(--ink-2); font-size:18px; margin-top:12px; }
  .plans{ display:grid; grid-template-columns:1fr 1fr; gap:22px; max-width:840px; margin:0 auto; }
  .plan{ background:#fff; border:1px solid var(--line); border-radius:22px; padding:32px; display:flex; flex-direction:column; }
  .plan.feat{ background:var(--ocean); color:var(--on); border:0; box-shadow:0 40px 80px -40px rgba(8,38,48,0.5); }
  .pname{ font-size:14px; font-weight:800; margin-bottom:6px; } .pdesc{ font-size:13.5px; color:var(--ink-3); margin-bottom:20px; } .plan.feat .pdesc{ color:var(--on-2); }
  .price{ display:flex; align-items:baseline; gap:8px; } .price b{ font-size:46px; font-weight:800; letter-spacing:0; } .price span{ font-size:14px; color:var(--ink-3); } .plan.feat .price span{ color:var(--on-2); }
  .psub{ font-size:13px; color:var(--ink-3); margin:4px 0 22px; } .plan.feat .psub{ color:var(--on-2); }
  .plan ul{ list-style:none; display:flex; flex-direction:column; gap:11px; margin-bottom:26px; flex:1; }
  .plan li{ font-size:14.5px; display:flex; gap:10px; align-items:flex-start; } .plan li svg{ width:18px; height:18px; color:var(--teal); flex-shrink:0; margin-top:1px; } .plan.feat li svg{ color:var(--mint); }
  .plan .btn{ justify-content:center; }
  .btn-ink{ background:var(--ink); color:#fff; } .btn-ink:hover{ transform:translateY(-2px); box-shadow:0 16px 32px -16px rgba(15,23,42,0.5); }

  /* OM */
  .om .grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
  .om h2{ max-width:15ch; } .om p{ color:var(--on-2); font-size:17px; max-width:46ch; margin-top:16px; }
  .facts{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--hair); border:1px solid var(--hair); border-radius:16px; overflow:hidden; }
  .fact{ background:#0a2733; padding:22px; } .fact .fk{ font-size:11px; color:var(--on-3); font-weight:700; text-transform:uppercase; letter-spacing:0; margin-bottom:7px; } .fact .fv{ font-size:19px; font-weight:800; letter-spacing:0; } .fact a{ color:var(--mint); text-decoration:none; }

  /* FAQ */
  .faq .grid{ display:grid; grid-template-columns:0.8fr 1.2fr; gap:46px; align-items:start; }
  .faq-item{ border-top:1px solid var(--hair); } .faq-item:last-child{ border-bottom:1px solid var(--hair); }
  .faq-item summary{ list-style:none; cursor:pointer; padding:21px 0; font-size:16.5px; font-weight:700; display:flex; justify-content:space-between; gap:18px; align-items:center; }
  .faq-item summary::-webkit-details-marker{ display:none; }
  .faq-item summary .pm{ width:20px; height:20px; flex-shrink:0; color:var(--mint); transition:transform .25s var(--xpo); }
  .faq-item[open] summary .pm{ transform:rotate(45deg); }
  .faq-item p{ padding:0 0 23px; color:var(--on-2); font-size:15px; max-width:62ch; }

  /* CLOSE + FOOTER */
  .close{ background:var(--ocean); text-align:center; }
  .close h2{ max-width:18ch; margin:0 auto 26px; }
  footer{ background:#08222c; border-top:1px solid var(--hair); padding:54px 0 40px; }
  .foot-grid{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:30px; margin-bottom:34px; }
  .foot-brand{ max-width:290px; } .foot-brand p{ color:var(--on-3); font-size:13.5px; margin-top:12px; line-height:1.6; }
  .foot-heading{ font-size:12px; text-transform:uppercase; letter-spacing:0; color:var(--on-3); margin-bottom:13px; font-weight:800; }
  .foot-col a{ display:block; color:var(--on-2); text-decoration:none; font-size:14px; padding:5px 0; } .foot-col a:hover{ color:var(--on); }
  .foot-bot{ border-top:1px solid var(--hair); padding-top:22px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:12.5px; color:var(--on-3); }

  /* MER ENN BUDSJETT */
  .mer h2{ max-width:20ch; margin-bottom:14px; }
  .feats{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--hair); border:1px solid var(--hair); border-radius:20px; overflow:hidden; margin-top:46px; }
  .feat-c{ background:#0a2733; padding:28px 26px; }
  .feat-c .fi{ width:40px; height:40px; border-radius:12px; background:rgba(111,226,200,0.13); color:var(--mint); display:grid; place-items:center; margin-bottom:16px; }
  .feat-c .fi svg{ width:21px; height:21px; }
  .feat-c h3{ font-size:16.5px; font-weight:700; margin-bottom:6px; letter-spacing:0; }
  .feat-c p{ font-size:13.5px; color:var(--on-2); line-height:1.55; }
  .cont-note{ margin-top:30px; display:inline-flex; align-items:center; gap:11px; font-size:14.5px; color:var(--on-2); font-weight:600; }
  .cont-note .pulse{ width:9px; height:9px; border-radius:50%; background:var(--mint); animation:pulse 2.6s infinite; flex-shrink:0; }
  @keyframes pulse{ 0%{box-shadow:0 0 0 0 rgba(111,226,200,0.5);} 70%{box-shadow:0 0 0 10px rgba(111,226,200,0);} 100%{box-shadow:0 0 0 0 rgba(111,226,200,0);} }

  /* TRYGT finere */
  .trygt .vault{ background:radial-gradient(circle at 50% 34%, rgba(111,226,200,0.20), rgba(15,89,79,0.05) 54%, transparent 72%), rgba(255,255,255,0.02); box-shadow:inset 0 1px 0 rgba(255,255,255,0.06), 0 34px 80px -44px rgba(111,226,200,0.45); }
  .trygt .vault .ring.r3{ width:42%; height:42%; opacity:0.7; }
  .trygt .safe .si{ width:34px; height:34px; border-radius:10px; background:rgba(111,226,200,0.12); display:grid; place-items:center; margin-top:0; }
  .trygt .safe .si svg{ width:18px; height:18px; }
  .trygt .safe li{ align-items:center; gap:15px; }
  .trygt .honest{ display:inline-block; font-size:13px; font-weight:700; color:var(--mint); background:rgba(111,226,200,0.10); border:1px solid rgba(111,226,200,0.25); padding:6px 13px; border-radius:99px; margin-bottom:18px; }


  /* MER (ekte Mer-fane) + editorial liste */
  .mer-grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
  .mer-list{ list-style:none; margin:26px 0 0; }
  .mer-list li{ padding:15px 0; border-top:1px solid var(--hair); font-size:15.5px; color:var(--on-2); }
  .mer-list li:last-child{ border-bottom:1px solid var(--hair); }
  .mer-list b{ color:var(--on); font-weight:700; }
  .msec-h{ padding:13px 4px 6px; font-size:11px; font-weight:700; color:var(--ink-3); text-transform:uppercase; letter-spacing:0; }
  .mlist{ background:var(--card); border-radius:13px; overflow:hidden; box-shadow:0 2px 6px rgba(15,23,42,0.05); margin-bottom:6px; }
  .mrow{ display:flex; align-items:center; gap:12px; padding:12px 14px; border-bottom:1px solid var(--line-2); }
  .mrow:last-child{ border-bottom:none; }
  .mrow .mico{ width:30px; height:30px; border-radius:8px; background:var(--line-2); display:grid; place-items:center; color:var(--blue); flex-shrink:0; }
  .mrow .mico svg{ width:17px; height:17px; stroke:currentColor; stroke-width:1.8; fill:none; stroke-linecap:round; stroke-linejoin:round; }
  .mrow .mlbl{ flex:1; font-size:14px; font-weight:600; color:var(--ink); }
  .mrow .mbadge{ font-size:9px; font-weight:800; padding:2px 7px; border-radius:5px; background:linear-gradient(135deg,var(--blue),#14b8a6); color:#fff; letter-spacing:0; }
  .mrow .mchev{ color:var(--ink-3); font-size:15px; }
  .mhouse{ background:linear-gradient(135deg,#E0F7F3,#B3EDDF); border-radius:13px; padding:11px 14px; display:flex; align-items:center; gap:12px; margin-bottom:8px; }
  .mhouse .ht{ flex:1; } .mhouse .hn{ font-size:14px; font-weight:800; color:var(--ink); } .mhouse .hs{ font-size:11px; color:var(--ink-2); }
  /* TRYGT: vi-sier-ikke-panel */
  .trygt-grid{ display:grid; grid-template-columns:1.05fr 0.95fr; gap:56px; align-items:center; }
  .nope{ border:1px solid var(--hair); border-radius:22px; padding:32px; background:radial-gradient(130% 120% at 100% 0%, rgba(111,226,200,0.07), transparent 55%); }
  .nope-h{ font-size:18px; font-weight:800; margin-bottom:20px; letter-spacing:0; } .nope-h span{ color:var(--mint); }
  .nope ul{ list-style:none; display:flex; flex-direction:column; gap:13px; margin-bottom:22px; }
  .nope li{ display:flex; align-items:center; gap:13px; font-size:15px; color:var(--on); font-weight:600; }
  .nope .x{ width:26px; height:26px; border-radius:8px; background:rgba(244,239,227,0.06); display:grid; place-items:center; color:var(--on-3); flex-shrink:0; }
  .nope .x svg{ width:14px; height:14px; }
  .nope-foot{ font-size:14px; color:var(--on-2); line-height:1.6; } .nope-foot a{ color:var(--mint); text-decoration:none; font-weight:700; }
  @media (max-width:980px){ .mer-grid,.trygt-grid{ grid-template-columns:1fr; gap:30px; } }


  /* MER: kalkulator-widget */
  .calc{ background:var(--card); border-radius:18px; padding:20px; width:322px; box-shadow:0 34px 64px -34px rgba(0,0,0,0.62); color:var(--ink); position:relative; z-index:2; }
  .calc-h{ font-size:11px; font-weight:700; color:var(--ink-3); text-transform:uppercase; letter-spacing:0; margin-bottom:10px; }
  .calc-loan{ font-size:23px; font-weight:800; color:var(--ink); letter-spacing:0; } .calc-loan span{ font-size:12px; font-weight:600; color:var(--ink-3); }
  .calc-ctrl{ margin:18px 0 16px; }
  .calc-row{ display:flex; justify-content:space-between; align-items:baseline; font-size:13px; color:var(--ink-2); font-weight:600; margin-bottom:9px; } .calc-row b{ color:var(--teal); font-size:15px; font-weight:800; }
  .calc-slider{ -webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:99px; background:var(--line); outline:none; }
  .calc-slider::-webkit-slider-thumb{ -webkit-appearance:none; width:22px; height:22px; border-radius:50%; background:var(--teal); cursor:pointer; box-shadow:0 2px 6px rgba(13,115,119,0.5); border:3px solid #fff; }
  .calc-slider::-moz-range-thumb{ width:18px; height:18px; border-radius:50%; background:var(--teal); cursor:pointer; border:3px solid #fff; }
  .calc-out{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .calc-stat{ background:var(--bg); border-radius:12px; padding:12px; } .calc-stat span{ font-size:10.5px; color:var(--ink-3); font-weight:600; display:block; margin-bottom:4px; } .calc-stat b{ font-size:16px; font-weight:800; color:var(--ink); letter-spacing:0; } .calc-stat b.pos{ color:var(--green); }
  .calc-note{ font-size:11px; color:var(--ink-3); margin-top:12px; text-align:center; }
  .loanchip{ position:absolute; z-index:1; bottom:-30px; right:-26px; background:#fff; border-radius:14px; padding:11px 14px; box-shadow:0 22px 44px -22px rgba(0,0,0,0.5); color:var(--ink); }
  .loanchip .lc{ font-size:9.5px; font-weight:700; text-transform:uppercase; color:var(--ink-3); letter-spacing:0; margin-bottom:3px; } .loanchip .lv{ font-size:16px; font-weight:800; }
  /* TRYGT: personvern-widget */
  .priv{ background:var(--card); border-radius:18px; padding:20px; width:322px; box-shadow:0 34px 64px -34px rgba(0,0,0,0.62); color:var(--ink); }
  .priv-h{ font-size:11px; font-weight:700; color:var(--ink-3); text-transform:uppercase; letter-spacing:0; margin-bottom:12px; }
  .priv-tx{ display:flex; align-items:center; gap:12px; padding:12px; background:var(--bg); border-radius:13px; }
  .priv-ic{ width:36px; height:36px; border-radius:10px; background:#fff; display:grid; place-items:center; font-size:18px; box-shadow:0 1px 3px rgba(0,0,0,0.06); }
  .priv-mid{ flex:1; } .priv-n{ font-size:14px; font-weight:700; } .priv-s{ font-size:11px; color:var(--ink-3); }
  .priv-tx b{ font-size:14px; font-weight:800; }
  .priv-toggle{ display:flex; justify-content:space-between; align-items:center; padding:15px 4px 0; font-size:13.5px; font-weight:600; color:var(--ink); }
  .tg{ width:42px; height:24px; border-radius:99px; background:var(--teal); position:relative; flex-shrink:0; } .tg .knob{ position:absolute; top:3px; right:3px; width:18px; height:18px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,0.2); }
  .lockchip{ display:inline-flex; align-items:center; gap:7px; margin-top:14px; font-size:12px; font-weight:700; color:var(--teal); background:rgba(13,115,119,0.08); padding:7px 12px; border-radius:99px; } .lockchip svg{ width:14px; height:14px; stroke:currentColor; stroke-width:2; fill:none; }


  .mer-link{ margin-top:20px; font-size:14px; color:var(--on-2); } .mer-link a{ color:var(--mint); text-decoration:none; font-weight:700; }
  /* VEIEN VIDERE */
  .vei-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--hair); margin-top:46px; }
  .vei-item{ padding:30px 28px 10px 0; border-right:1px solid var(--hair); }
  .vei-item:last-child{ border-right:none; padding-right:0; }
  .vei-item .vd{ display:inline-block; font-size:12px; font-weight:700; color:var(--mint); text-transform:uppercase; letter-spacing:0; margin-bottom:14px; }
  .vei-item h3{ font-size:18px; font-weight:700; margin-bottom:8px; letter-spacing:0; }
  .vei-item p{ font-size:14.5px; color:var(--on-2); }
  @media (max-width:980px){ .vei-row{ grid-template-columns:1fr; } .vei-item{ border-right:none; border-bottom:1px solid var(--hair); padding:24px 0 16px; } .vei-item:last-child{ border-bottom:none; } }


  /* PROBLEM -> LØSNING */
  .solves{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:48px; border-top:1px solid var(--hair); padding-top:38px; }
  .solve .worry{ font-size:16px; color:var(--on-3); font-style:italic; margin-bottom:16px; line-height:1.4; }
  .solve .ans{ display:flex; gap:12px; align-items:flex-start; }
  .solve .ans .ck{ width:26px; height:26px; border-radius:8px; background:rgba(111,226,200,0.14); color:var(--mint); display:grid; place-items:center; flex-shrink:0; }
  .solve .ans .ck svg{ width:15px; height:15px; stroke:currentColor; stroke-width:2.4; fill:none; stroke-linecap:round; stroke-linejoin:round; }
  .solve .ans p{ font-size:15px; color:var(--on); font-weight:600; line-height:1.5; }
  @media (max-width:980px){ .solves{ grid-template-columns:1fr; gap:24px; } }
  /* VEIEN VIDERE: tidslinje */
  .vtrack{ position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:34px; margin-top:52px; }
  .vtrack::before{ content:''; position:absolute; top:7px; left:8px; right:8px; height:2px; background:var(--hair); }
  .vstep{ position:relative; padding-top:34px; }
  .vnode{ position:absolute; top:0; left:0; width:16px; height:16px; border-radius:50%; background:#08222c; border:2px solid var(--on-3); }
  .vstep.now .vnode{ background:var(--mint); border-color:var(--mint); box-shadow:0 0 0 5px rgba(111,226,200,0.18); }
  .vphase{ display:inline-block; font-size:12px; font-weight:700; color:var(--mint); text-transform:uppercase; letter-spacing:0; margin-bottom:10px; }
  .vstep:not(.now) .vphase{ color:var(--on-3); }
  .vstep h3{ font-size:18px; font-weight:700; margin-bottom:8px; letter-spacing:0; }
  .vstep p{ font-size:14.5px; color:var(--on-2); max-width:30ch; }
  @media (max-width:980px){ .vtrack{ grid-template-columns:1fr; gap:6px; } .vtrack::before{ display:none; } .vstep{ padding:20px 0 6px 28px; border-left:2px solid var(--hair); } .vnode{ left:-9px; top:22px; } }


  /* OPPRINNELSE */
  .origin-wrap{ max-width:780px; }
  .origin-lead{ font-size:clamp(20px,2.4vw,27px); line-height:1.5; color:var(--on); font-weight:500; letter-spacing:0; margin:6px 0 30px; }
  .origin-lead .hl{ color:var(--mint); }


  /* DERFOR FINNES FIMLY: origin + reise-tidslinje */
  .origin-grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
  .origin-lead{ font-size:clamp(19px,2vw,24px); line-height:1.5; color:var(--on); font-weight:500; letter-spacing:0; margin:6px 0 28px; max-width:32ch; }
  .origin-lead .hl{ color:var(--mint); }
  .journey{ position:relative; }
  .jitem{ position:relative; padding:0 0 24px 34px; border-left:2px solid var(--hair); }
  .jitem:last-child{ padding-bottom:0; }
  .jitem.done, .jitem.now{ border-left-color:var(--mint); }
  .jnode{ position:absolute; left:-9px; top:-1px; width:16px; height:16px; border-radius:50%; background:#08222c; border:2px solid var(--on-3); display:grid; place-items:center; }
  .jitem.done .jnode{ background:var(--mint); border-color:var(--mint); }
  .jitem.done .jnode svg{ width:9px; height:9px; stroke:#08222c; stroke-width:3.4; fill:none; stroke-linecap:round; stroke-linejoin:round; }
  .jitem.now .jnode{ background:var(--mint); border-color:var(--mint); box-shadow:0 0 0 5px rgba(111,226,200,0.18); }
  .jphase{ display:block; font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:0; color:var(--mint); margin-bottom:4px; }
  .jitem:not(.done):not(.now) .jphase{ color:var(--on-3); }
  .jitem h3{ font-size:16px; font-weight:700; margin-bottom:3px; letter-spacing:0; }
  .jitem p{ font-size:14px; color:var(--on-2); }
  @media (max-width:980px){ .origin-grid{ grid-template-columns:1fr; gap:34px; } }

  .hkicker{ display:inline-flex; align-items:center; gap:9px; font-size:14.5px; font-weight:600; color:var(--on); letter-spacing:0; margin-bottom:22px; }
  .hkicker .dot{ width:7px; height:7px; border-radius:50%; background:var(--mint); box-shadow:0 0 10px var(--mint); flex-shrink:0; }
  @media (max-width:600px){ .hkicker{ font-size:13.5px; margin-bottom:18px; } }


  /* LAUNCH-VARSLING (e-postfangst) */
  .notify{ max-width:480px; margin:40px auto 0; }
  .notify-lead{ font-size:15.5px; color:var(--on-2); margin-bottom:16px; }
  .notify-form{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
  .notify-form input{ flex:1; min-width:220px; font-family:inherit; font-size:15px; padding:14px 16px; border-radius:12px; border:1px solid var(--hair-2); background:rgba(255,255,255,0.06); color:var(--on); }
  .notify-form input::placeholder{ color:var(--on-3); }
  .notify-form input:focus{ outline:none; border-color:var(--mint); box-shadow:0 0 0 3px rgba(111,226,200,0.18); }
  .notify-hp{ position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
  .notify-form .btn{ flex-shrink:0; }
  .notify-fine{ font-size:12.5px; color:var(--on-3); margin-top:12px; }
  .notify-fine a{ color:var(--on-2); text-decoration:underline; }
  @media (max-width:600px){ .notify-form input{ min-width:0; width:100%; } .notify-form .btn{ width:100%; justify-content:center; } }

  .reveal, .reveal.in{ opacity:1; transform:none; animation:none; }

  @media (max-width:980px){
    .hero{ grid-template-columns:1fr; gap:16px; padding-top:22px; padding-bottom:64px; }
    .pains{ grid-template-columns:1fr; } .pain{ border-right:none; border-bottom:1px solid var(--hair); padding:24px 0 16px; } .pain:last-child{ border-bottom:none; }
    .demo-grid{ grid-template-columns:1fr; gap:20px; } .demo-rail{ position:relative; top:0; margin-bottom:18px; } .dstep{ min-height:auto; padding:20px 0; }
    .fokus-grid,.trygt .grid,.om .grid,.faq .grid{ grid-template-columns:1fr; gap:30px; }
    .plans{ grid-template-columns:1fr; } .chip-1{ left:-6px; } .chip-2{ right:-8px; }
  }
  @media (max-width:520px){ .device{ transform:scale(0.92); } .chip{ transform:scale(0.88); } }
  @media (prefers-reduced-motion:reduce){ *,*::before,*::after{ animation:none!important; transition:none!important; scroll-behavior:auto!important; } .reveal.in{ animation:none; } .screenframe[aria-hidden="true"]{ position:absolute; opacity:0; } }

  @media (max-width:900px){
    .shell::before{ right:-38%; top:-10%; width:420px; height:420px; filter:none; opacity:0.46; background:radial-gradient(circle, rgba(111,226,200,0.14), rgba(111,226,200,0.03) 48%, transparent 68%); }
    header.nav{ background:rgba(8,38,48,0.94); backdrop-filter:none; -webkit-backdrop-filter:none; }
    .stage-in,.chip{ will-change:auto; }
    .trygt .vault{ box-shadow:none; }
  }

  @media (max-width:760px){
    .mobile-menu{ display:flex; flex-direction:column; gap:4px; padding:12px; max-height:calc(100vh - 84px); overflow-y:auto; }
    .mobile-menu-sep{ display:block; height:1px; margin:5px 0; background:var(--hair); }
    .mobile-menu .nav-cta{ width:100%; justify-content:center; margin-top:auto; padding:13px 16px !important; }
    .demo{ overflow-x:clip; overflow-y:visible; }
    .demo-grid,.demo-rail,.demo-steps,.dstep{ min-width:0; width:100%; }
    .demo-rail{ align-items:center; flex-direction:column; overflow:visible; width:100%; max-width:100%; }
    .demo .demo-rail > .device{ display:none; }
    .screen-dots{ display:none; }
    .mobile-phone-carousel{ display:block; width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); overflow-x:clip; overflow-y:visible; }
    .mobile-phone-rail{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; gap:14px; width:100%; max-width:100%; padding:0 8vw 8px; scrollbar-width:none; }
    .mobile-phone-rail::-webkit-scrollbar{ display:none; }
    .mobile-phone-rail .device{ scroll-snap-align:center; flex:0 0 auto; }
    .mobile-phone-card{ min-width:0; }
    .mobile-phone-card .app{ padding:6px 13px 8px; }
    .mobile-phone-card .screenframe{ position:relative; inset:auto; opacity:1; pointer-events:auto; height:100%; }
    .mobile-phone-dots{ display:flex; justify-content:center; align-items:center; gap:8px; margin-top:14px; }
    .mobile-phone-dots button{ width:28px; height:28px; border:0; border-radius:999px; background:transparent; padding:0; cursor:pointer; display:grid; place-items:center; }
    .mobile-phone-dots button::before{ content:''; width:7px; height:7px; border-radius:999px; background:rgba(242,247,246,0.35); transition:width .2s var(--xpo), background .2s var(--xpo); }
    .mobile-phone-dots button.active::before{ width:20px; background:var(--mint); }
    .foot-grid{ display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:28px 22px; }
    .foot-brand{ grid-column:1/-1; max-width:none; }
    .foot-col{ min-width:0; text-align:left; }
  }
  /* MOBIL-FINPUSS: hero/topp */
  @media (max-width:600px){
    .nav-in{ height:64px; }
    .hero{ padding-top:14px; padding-bottom:46px; gap:10px; }
    .pill{ font-size:12px; padding:6px 12px; margin-bottom:18px; }
    h1{ font-size:clamp(33px,8.6vw,46px); line-height:1.0; overflow-wrap:normal; hyphens:none; }
    .lead{ font-size:16.5px; margin-bottom:24px; }
    .ctas{ gap:10px; margin-bottom:22px; }
    .btn{ padding:13px 22px; font-size:15px; }
    .stage{ margin-top:8px; }
    .device{ width:270px; height:570px; transform:none; }
    .chip{ display:none; }
  }
  @media (max-width:380px){
    h1{ font-size:31px; }
    .device{ width:244px; height:516px; }

  }
  /* MOBIL-HERDING: widgets, luft, overflow */
  @media (max-width:600px){
    .sec{ padding:62px 0; }
    .calc, .priv{ width:100%; max-width:340px; }
    .fokus-card{ max-width:100%; }
    .loanchip{ display:none; }
    .stage{ width:100%; }
    h2{ font-size:clamp(28px,7.5vw,40px); }
    .sub, .origin-lead{ font-size:16.5px; }
    .facts{ grid-template-columns:1fr; }
  }

.notify-consent{display:flex;align-items:flex-start;gap:9px;width:100%;max-width:440px;margin:2px auto 0;text-align:left;color:var(--on-2);font-size:12.5px;line-height:1.45}.notify-consent input{width:16px;height:16px;min-width:16px;margin-top:2px;accent-color:var(--mint)}.notify-form.is-sending{opacity:.72;pointer-events:none}

/* PHASE 2 PUBLIC ARTICLE TEMPLATE */
body.article-page{background:#F4F7F5;color:var(--ink);line-height:1.6}
body.article-page .wrap{max-width:760px;padding:0 24px}
body.article-page a{color:var(--teal)}
body.article-page .top{background:var(--ocean);color:var(--on);position:relative;overflow:hidden}
body.article-page .top::before{content:'';position:absolute;right:-10%;top:-20%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(111,226,200,.16),transparent 68%);filter:blur(12px);pointer-events:none}
body.article-page .top .nav{position:relative;z-index:2;background:transparent;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
body.article-page .top .nav-in{max-width:1100px;margin:0 auto;padding:0 24px}
body.article-page .top .brand{color:var(--on)}
body.article-page .top .nav-cta{text-decoration:none}
body.article-page .head{position:relative;z-index:2;max-width:760px;margin:0 auto;padding:34px 24px 56px}
body.article-page .crumb{font-size:13px;color:var(--on-2);margin-bottom:20px}
body.article-page .crumb a{color:var(--on-2);text-decoration:none}
body.article-page .crumb a:hover{color:var(--on)}
body.article-page .head h1{color:var(--on);font-weight:800;font-size:clamp(32px,6vw,52px);line-height:1.05;letter-spacing:0;text-wrap:balance;margin-bottom:18px}
body.article-page .head .lead{color:var(--on-2);font-size:clamp(17px,2vw,20px);max-width:60ch;margin-bottom:0}
body.article-page .head .lead b{color:var(--on);font-weight:600}
body.article-page .meta{font-size:13.5px;color:var(--on-2);margin-bottom:18px}
body.article-page .meta b{color:var(--on)}
body.article-page article{padding:56px 0 24px}
body.article-page article h2{color:var(--ink);font-weight:800;font-size:clamp(24px,3.4vw,32px);letter-spacing:0;line-height:1.15;margin:44px 0 14px;text-wrap:balance}
body.article-page article h2:first-child{margin-top:0}
body.article-page article h3{color:var(--ink);font-weight:800;font-size:20px;line-height:1.25;margin:30px 0 10px}
body.article-page article p{font-size:17px;color:var(--ink-2);margin-bottom:16px}
body.article-page article p strong,body.article-page article li strong{color:var(--ink);font-weight:700}
body.article-page article ul,body.article-page article ol{margin:18px 0 24px 22px;color:var(--ink-2)}
body.article-page article li{font-size:16.5px;color:var(--ink-2);margin-bottom:8px}
body.article-page article table{width:100%;border-collapse:collapse;margin:22px 0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:block;overflow-x:auto}
body.article-page article th,body.article-page article td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
body.article-page article th{color:var(--ink);background:#ECF4F1;font-weight:800}
body.article-page article td{color:var(--ink-2)}
body.article-page blockquote{border-left:3px solid var(--teal);padding-left:16px;margin:22px 0;color:var(--ink-2);font-style:italic}
body.article-page code{background:#E7EEE9;color:var(--teal);padding:2px 6px;border-radius:5px}
body.article-page .callout,body.article-page .box,body.article-page .highlight,body.article-page .tip,body.article-page .info-box,body.article-page .tip-box,body.article-page .step-box{background:#fff;border:1px solid var(--line);border-left:3px solid var(--teal);border-radius:16px;padding:20px 22px;margin:26px 0;box-shadow:0 2px 8px rgba(21,48,42,.04)}
body.article-page .callout .k{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--teal);margin-bottom:8px}
body.article-page .callout p,body.article-page .box p,body.article-page .highlight p,body.article-page .tip p,body.article-page .info-box p,body.article-page .tip-box p,body.article-page .step-box p{color:var(--ink-2);margin:0}
body.article-page .checklist{list-style:none;margin:20px 0 8px;border-top:1px solid var(--line);padding:0}
body.article-page .checklist li{display:flex;gap:13px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--line);margin:0;color:var(--ink)}
body.article-page .checklist .ic{width:26px;height:26px;border-radius:8px;background:rgba(13,115,119,.1);color:var(--teal);display:grid;place-items:center;flex-shrink:0;margin-top:1px}
body.article-page .checklist .ic svg{width:15px;height:15px;stroke:currentColor;stroke-width:2.6;fill:none;stroke-linecap:round;stroke-linejoin:round}
body.article-page .facts2{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin:24px 0}
body.article-page .facts2 .f{background:#fff;padding:20px}
body.article-page .facts2 .fk{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin-bottom:6px}
body.article-page .facts2 .fv{font-size:18px;font-weight:800;color:var(--ink);letter-spacing:0}
body.article-page .faq{border-top:1px solid var(--line);margin-top:22px;display:block}
body.article-page .faq details{border-bottom:1px solid var(--line)}
body.article-page .faq summary{list-style:none;cursor:pointer;padding:18px 0;font-size:17px;font-weight:700;color:var(--ink);display:flex;justify-content:space-between;gap:16px;align-items:center}
body.article-page .faq summary::-webkit-details-marker{display:none}
body.article-page .faq summary .pm{width:20px;height:20px;color:var(--teal);flex-shrink:0;transition:transform .25s var(--xpo)}
body.article-page .faq details[open] summary .pm{transform:rotate(45deg)}
body.article-page .faq p{padding:0 0 20px;font-size:16px;color:var(--ink-2)}
body.article-page .related{margin-top:42px}
body.article-page .related h2{margin-bottom:16px}
body.article-page .related-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
body.article-page .related-list a{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;text-decoration:none;color:var(--ink);font-weight:700;font-size:15px;transition:transform .16s var(--xpo),box-shadow .2s var(--xpo)}
body.article-page .related-list a:hover{transform:translateY(-2px);box-shadow:0 12px 26px -18px rgba(21,48,42,.35)}
body.article-page .related-list a span{display:block;color:var(--ink-3);font-weight:500;font-size:13px;margin-top:3px}
body.article-page .blog-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body.article-page .blog-index-card{display:flex;min-height:220px;flex-direction:column;gap:16px;padding:24px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-decoration:none;transition:transform .16s var(--xpo),box-shadow .2s var(--xpo)}
body.article-page .blog-index-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px -24px rgba(21,48,42,.35)}
body.article-page .blog-index-card .tag{width:fit-content;padding:7px 10px;border-radius:999px;background:rgba(111,226,200,.2);color:#0d605d;font-size:.76rem;font-weight:800}
body.article-page .blog-index-card h2{margin:0;font-size:clamp(1.15rem,2vw,1.45rem)}
body.article-page .blog-index-card p{margin:0;color:var(--ink-2)}
body.article-page .blog-index-card .date{margin-top:auto;color:var(--ink-3);font-size:.88rem;font-weight:700}
body.article-page .endcta{background:var(--ocean);color:var(--on);text-align:center;padding:64px 24px;margin-top:56px}
body.article-page .endcta h2{color:var(--on);font-weight:800;font-size:clamp(26px,4vw,38px);letter-spacing:0;margin:0 0 20px}
body.article-page .endcta .btn{display:inline-flex;align-items:center;gap:9px;background:var(--on);color:#0a2733;font-weight:700;text-decoration:none;padding:14px 24px;border-radius:12px}
body.article-page .endcta .fine{margin-top:14px;font-size:13.5px;color:var(--on-3)}
body.article-page .site-footer{background:#08222c;color:var(--on-2);padding:36px 24px;text-align:center;font-size:13px}
body.article-page .site-footer a{color:var(--on-2)}
@media (min-width:760px){body.article-page .head{padding-top:46px;padding-bottom:68px}}
@media (max-width:560px){body.article-page .related-list,body.article-page .facts2,body.article-page .blog-index-grid{grid-template-columns:1fr}body.article-page .top .nav-in{padding:0 18px}body.article-page .head,body.article-page .wrap{padding-left:20px;padding-right:20px}}
