:root{
--nesk-blue:#0A4FA3; --nesk-yellow:#FFD200; --nesk-ink:#0F172A; --nesk-muted:#475569; --nesk-bg:#F8FAFC; --nesk-card:#FFFFFF;
--nesk-line:#E2E8F0; --nesk-radius:14px;
--nesk-shadow:0 14px 40px rgba(2,6,23,.06);
--nesk-max:1180px;
--nesk-font:system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
margin:0;
font-family:var(--nesk-font);
color:var(--nesk-ink);
background:var(--nesk-bg);
line-height:1.6;
}
a{color:var(--nesk-blue); text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%; height:auto; display:block}
.container{max-width:var(--nesk-max); margin:0 auto; padding:0 20px}
.stack>*+*{margin-top:14px}
.skip-link{
position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;
}
.skip-link:focus{left:20px; top:20px; width:auto; height:auto; padding:10px 12px; background:#fff; border:1px solid var(--nesk-line); border-radius:10px; z-index:9999}
.site-header{
position:sticky; top:0; z-index:50;
background:rgba(248,250,252,.85);
backdrop-filter:saturate(140%) blur(10px);
border-bottom:1px solid var(--nesk-line);
}
.header-inner{display:flex; align-items:center; justify-content:space-between; padding:14px 0; gap:18px; position:relative;}
.brand{display:flex; align-items:center; gap:10px; min-width:180px}
.brand-mark{
width:38px; height:38px; border-radius:12px;
background:linear-gradient(135deg,var(--nesk-blue),#083B7A);
display:grid; place-items:center;
box-shadow:0 10px 20px rgba(10,79,163,.25);
}
.brand-mark span{color:#fff; font-weight:800; letter-spacing:.5px}
.brand-name{font-weight:800; letter-spacing:.2px}
.brand-tag{color:var(--nesk-muted); font-size:13px}
.nav-toggle {
display:none;
flex-direction:column;
gap:4px;
background:none;
border:0;
cursor:pointer;
margin-left:auto;
}
.nav-toggle span{
width:22px;
height:2px;
background:#0f172a;
display:block;
transition:transform .2s ease, opacity .2s ease;
}
.nav-toggle.open span:nth-child(1){
transform:translateY(6px) rotate(45deg);
}
.nav-toggle.open span:nth-child(2){
opacity:0;
}
.nav-toggle.open span:nth-child(3){
transform:translateY(-6px) rotate(-45deg);
}
.primary-nav ul{display:flex; gap:14px; list-style:none; padding:0; margin:0; align-items:center}
.primary-nav a{display:inline-block; padding:10px 12px; border-radius:12px; color:var(--nesk-ink)}
.primary-nav a:hover{background:#fff; text-decoration:none; box-shadow:0 8px 20px rgba(2,6,23,.06)}
.primary-nav .cta a{
background:var(--nesk-yellow);
color:#111827;
font-weight:800;
border:1px solid rgba(0,0,0,.08);
}
.primary-nav .cta a:hover{filter:brightness(.97)}
.hero{
position:relative;
overflow:hidden;
border-bottom:1px solid var(--nesk-line);
margin-bottom:40px;
}
.hero::before{
content:"";
position:absolute; inset:0;
background:
linear-gradient(90deg, rgba(248,250,252,.98) 0%, rgba(248,250,252,.82) 35%, rgba(248,250,252,.55) 60%, rgba(248,250,252,.25) 100%),
var(--hero-image);
background-size:cover;
background-position:center;
filter:saturate(1.05) contrast(1.02);
transform:scale(1.02);
}
.hero-inner{
position:relative;
padding:72px 0;
display:grid;
grid-template-columns: 1.2fr .8fr;
gap:28px;
align-items:center;
}
.hero h1{
margin:0;
font-size:clamp(32px, 4vw, 54px);
line-height:1.05;
letter-spacing:-.02em;
}
.hero p{color:var(--nesk-muted); font-size:18px; margin:12px 0 0}
.hero-actions{display:flex; gap:12px; flex-wrap:wrap; margin-top:18px}
.btn{
display:inline-flex; align-items:center; justify-content:center; gap:10px;
padding:12px 16px;
border-radius:14px;
border:1px solid var(--nesk-line);
background:#fff;
color:var(--nesk-ink);
font-weight:700;
box-shadow:0 10px 24px rgba(2,6,23,.06);
}
.btn:hover{text-decoration:none; transform:translateY(-1px)}
.btn-primary{
background:var(--nesk-blue);
color:#fff;
border-color:rgba(255,255,255,.18);
box-shadow:0 16px 34px rgba(10,79,163,.22);
}
.btn-primary:hover{filter:brightness(1.02)}
.badge{
display:inline-flex;
align-items:center;
gap:8px;
padding: 5px 15px;
border:1px solid var(--nesk-line);
background:rgba(255,255,255,.8);
border-radius:999px;
font-size:13px;
color:var(--nesk-muted);
margin-bottom: 24px;
background-color: white;
}
.card{
background:var(--nesk-card);
border:1px solid var(--nesk-line);
border-radius:var(--nesk-radius);
box-shadow:var(--nesk-shadow);
}
.card-pad{padding:18px}
.grid{
display:grid;
gap:16px;
}
.grid-3{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:16px;
}
.grid-2{grid-template-columns:repeat(2,1fr)}
.section{padding:72px 0}
.section h2{
margin:0 0 14px; 
font-size:32px;
letter-spacing:-0.015em;
line-height:1.2;
font-weight:800;
}
.kicker{color:var(--nesk-blue); font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:12px}
.small{color:var(--nesk-muted); font-size:14px}
.icon{
width:42px; height:42px; border-radius:14px;
background:rgba(10,79,163,.10);
display:grid; place-items:center;
border:1px solid rgba(10,79,163,.18);
}
.icon svg{width:20px; height:20px; fill:var(--nesk-blue)}
.list{margin:12px 0 0; padding-left:18px; color:var(--nesk-muted)}
.list li{margin:6px 0}
.steps{
counter-reset:step;
display:grid; gap:14px;
}
.step{
display:flex; gap:12px; align-items:flex-start;
padding:16px;
border-radius:var(--nesk-radius);
border:1px solid var(--nesk-line);
background:rgba(255,255,255,.75);
}
.step::before{
counter-increment:step;
content:counter(step);
width:32px; height:32px;
border-radius:12px;
background:var(--nesk-yellow);
display:grid; place-items:center;
font-weight:900;
border:1px solid rgba(0,0,0,.08);
}
.site-footer{
background:linear-gradient(to bottom,#f1f5f9,#f8fafc);
border-top:1px solid rgba(2,6,23,.06); margin-top:80px;
padding:56px 0 32px;
}
.footer-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:32px;
margin-bottom:24px;
}
.footer-col h4{
margin:0 0 10px;
font-size:14px;
letter-spacing:.04em;
}
.footer-col p{
margin:0 0 10px;
color:var(--nesk-muted);
}
.footer-col ul{
list-style:none;
padding:0;
margin:0;
}
.footer-col li{
margin-bottom:6px;
}
.footer-bottom{
display:flex;
justify-content:space-between;
align-items:center;
gap:20px;
}
.footer-copy{
margin:0;
}
.content{padding:34px 0}
.content .card{padding:22px}
.wp-block{max-width:var(--nesk-max)}
.wp-block-image{margin:0}
.alignwide{max-width:calc(var(--nesk-max) + 200px)}
.alignfull{max-width:none}
.price{
font-size:28px;
font-weight:900;
letter-spacing:-.02em;
}
.price-meta{
font-size:13px;
color:var(--nesk-muted);
margin-top:4px;
font-style:italic;
}
.card-badge{
display:inline-flex;
align-items:center;
padding: 12px 10px;
border-radius:999px;
background: rgba(255,210,0,.35);
border: 1px solid rgba(0,0,0,.08);
font-weight: 900;
font-size: 12px;
color: #111827;
margin-top: 10px;
margin-bottom: 10px;
}
.price-subnote{
margin-top: 8px;
margin-bottom: 4px;
font-size: 13px;
color: var(--nesk-muted);
}  .price-card{
display:flex;
flex-direction:column;
height:100%;
} .badge-slot{
min-height: 44px; margin-bottom: 16px; display:flex;
align-items:flex-start;
} .card-badge{
display:inline-flex;
align-items:center;
padding:10px 14px;
border-radius:999px;
background: rgba(255,210,0,.35);
border: 1px solid rgba(0,0,0,.08);
font-weight: 900;
font-size: 12px;
color: #111827;
} .price-header{
min-height: 96px; } .price-area{
min-height: 92px; margin-bottom: 18px;
} .price-area .price{
min-height: 44px; display:flex;
align-items:flex-end; margin:14px 0 6px;
} .price-features{ flex-grow:1; }
.price-card .cta{ margin-top:auto; }
.price-card.featured { transform: translateY(-6px);
transform:scale(1.035);
border:2px solid var(--nesk-blue);
box-shadow: 0 24px 60px rgba(10,79,163,.16);
}
.grid-3 .card{
transition: transform .18s ease, box-shadow .18s ease;
display:flex;
flex-direction:column;
height:100%;
}
.grid-3 .card:hover{
transform: translateY(-6px);
box-shadow: 0 18px 40px rgba(2,6,23,.12);
}
.grid-3 .card p{
margin-top:auto;
}
.grid-3 .card .list{
flex-grow:1;
}
.card .list{
margin-bottom: 20px;
}
.card p{
margin-top: 16px;
color: var(--nesk-muted);
}
.footer-social a:hover svg{
fill:var(--nesk-blue);
}
.trust-row{
display:flex;
gap:28px;
justify-content:center;
margin-top:18px;
font-size:14px;
color:var(--nesk-muted);
}
.testimonial p{
position:relative;
padding-left:22px;
}
.testimonial p:before{
content:"“";
position:absolute;
left:0;
top:-2px;
font-size:26px;
color:var(--nesk-blue);
opacity:.25;
}
.section p{
max-width:640px;
}
.section-flash{
animation: sectionFlash 1.2s ease;
}
@keyframes sectionFlash{
0%   { box-shadow: 0 0 0 0 rgba(10,79,163,0); }
20%  { box-shadow: 0 0 0 8px rgba(10,79,163,.08); }
100% { box-shadow: 0 0 0 0 rgba(10,79,163,0); }
} .price-card.vip{
border: 1px solid rgba(15,23,42,.12);
background: linear-gradient(to bottom, #ffffff, #f8fafc);
border-top:3px solid #1e293b;
box-shadow:0 14px 36px rgba(2,6,23,.08);
}
.price-card.vip .kicker{
color: #1e293b;
}
.price-card.vip .btn{
border-color: rgba(15,23,42,.12);
}
.services-links-text a,
.internal-links a{
text-decoration: underline;
text-underline-offset: 2px;
}
.internal-links{
font-size:14px;
color:var(--nesk-muted);
}
.service-card{
display:block;
color:inherit;
transition:transform .15s ease, box-shadow .15s ease;
}
.service-card:hover{
transform:translateY(-2px);
box-shadow:0 8px 24px rgba(0,0,0,0.06);
}
a:hover{text-decoration:underline}
.service-card h3{
transition:color .15s ease;
}
.service-card:hover h3{
color:#0A4FA3 !important;; 
}
.service-card,
.service-card:hover,
.service-card:focus,
.service-card:active{
text-decoration: none !important;
}
.service-card h3,
.service-card p,
.service-card ul,
.service-card li,
.service-card span,
.service-card:hover h3,
.service-card:hover p,
.service-card:hover ul,
.service-card:hover li,
.service-card:hover span{
text-decoration: none !important;
}
.about-niclas{
display:flex;
align-items:center;
gap:18px;
}
.about-niclas__media{
flex:0 0 260px;
text-align:right;
}
.about-niclas__media img{
width:240px;
max-width:100%;
height:auto;
display:inline-block;
border-radius:20px;
border:1px solid var(--nesk-line);
box-shadow:0 18px 40px rgba(2,6,23,.08);
}
.about-niclas__content{
flex:1 1 auto;
min-width:0;
margin-top:34px;
}
@media (max-width:920px){
.about-niclas{
display:block;
}
.about-niclas__media{
margin-bottom:20px;
text-align:left;
}
.about-niclas__media img{
width:220px;
}
}
.proof {
margin-top: 24px;
padding: 16px 18px;
background: #f8fafc;
border: 1px solid var(--nesk-line);
border-radius: 12px;
}
.proof strong {
display:block;
margin-bottom:8px;
}
.proof ul {
margin:0;
padding-left:18px;
}
.proof li {
margin-bottom:6px;
} @media (min-width: 1024px){
.brand-logo img { max-height: 46px; }
}
@media (max-width: 920px){
.hero-inner{grid-template-columns:1fr; padding:54px 20px;}
.grid-3{grid-template-columns:1fr}
.grid-2{grid-template-columns:1fr}
.primary-nav{
position:absolute;
top:70px;
right:20px;
background:#fff;
border:1px solid var(--nesk-line);
border-radius:12px;
box-shadow:0 14px 36px rgba(2,6,23,.08);
padding:12px;
display:none;
opacity:0;
transform:translateY(-8px);
transition:.2s ease;
}
.primary-nav ul{
gap:6px; 
flex-wrap:wrap; 
justify-content:flex-end
flex-direction:column;
}
.primary-nav.open{
display:block;
opacity:1;
transform:translateY(0);
}
.nav-toggle{
display:flex;
margin-right:16px;
}
} @media (max-width: 768px){
.hero-inner{
padding-left: 20px;
padding-right: 20px;
} .hero p{
padding-left: 2px;
padding-right: 2px;
}
.hero h1{ font-size: clamp(30px, 8vw, 42px); line-height: 1.08; paddint-top: 5px;}
.hero::before{
background:
linear-gradient(90deg, rgba(248,250,252,.98) 0%, rgba(248,250,252,.9) 45%, rgba(248,250,252,.75) 70%, rgba(248,250,252,.4) 100%),
var(--hero-image);
}
.hero-usp{
padding-left:16px;
padding-right:16px;
}
.hero-usp .grid{
padding:0 16px;
}
.hero .grid{
padding-left:16px;
padding-right:16px;
padding:0 18px;
}
.trust-row{
padding: 0 18px;
box-sizing: border-box;
flex-wrap: wrap;
gap: 14px 20px;
justify-content: flex-start;
}
}
@media (max-width: 480px){
.hero-inner{ padding:48px 24px; }
.hero p{
color: rgba(15, 23, 42, 0.9); text-shadow: 0 1px 2px rgba(255,255,255,.6); }
.primary-nav .cta a{
padding:10px 14px;
}
.site-header{
padding:4px 0;
}
}
.nesk-form-wrap input,
.nesk-form-wrap select,
.nesk-form-wrap textarea{
width:100%;
padding:12px 12px;
border-radius:12px;
border:1px solid var(--nesk-line);
background:#fff;
font:inherit;
}
.nesk-form-wrap textarea{min-height:140px}
.nesk-form-wrap button,
.nesk-form-wrap input[type="submit"]{
margin-top:10px;
padding:12px 16px;
border-radius:14px;
border:1px solid rgba(255,255,255,.18);
background:var(--nesk-blue);
color:#fff;
font-weight:800;
cursor:pointer;
}
.brand-logo img {
max-height: 40px;
width: auto;
} .card{
transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.card:hover{
transform: translateY(-3px);
box-shadow: 0 18px 48px rgba(2,6,23,.12);
border-color: rgba(10,79,163,.25);
}
.card:hover .kicker{
color: var(--nesk-blue);
} .usp-row{
margin:18px 0 0;
padding:0;
list-style:none;
display:grid;
grid-template-columns: repeat(4, minmax(0,1fr));
gap:10px;
}
.usp-item{
display:flex;
gap:10px;
align-items:flex-start;
padding:12px 12px;
border:1px solid var(--nesk-line);
background: rgba(255,255,255,.78);
border-radius: 14px;
}
.usp-ic{
width:34px; height:34px;
border-radius: 12px;
display:grid; place-items:center;
background: rgba(10,79,163,.10);
border:1px solid rgba(10,79,163,.18);
flex: 0 0 auto;
}
.usp-ic svg{ width:18px; height:18px; fill: var(--nesk-blue); } @media (max-width:920px){
.footer-grid{
grid-template-columns:1fr;
gap:20px;
}
}
@media (max-width: 920px){
.usp-row{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px){
.usp-row{ grid-template-columns: 1fr; }
} .quote blockquote{
margin:0;
font-size: 16px;
color: var(--nesk-ink);
}
.quote blockquote::before{
content:"“";
font-size: 34px;
line-height: 0;
vertical-align: -10px;
color: rgba(10,79,163,.35);
margin-right: 6px;
}
.quote figcaption{ margin-top: 10px; } .final-cta{
display:flex;
align-items:center;
justify-content:space-between;
gap:18px;
}
.final-cta-actions{
display:flex;
gap:12px;
flex-wrap:wrap;
justify-content:flex-end;
}
@media (max-width: 920px){
.final-cta{ flex-direction:column; align-items:flex-start; }
.final-cta-actions{ justify-content:flex-start; }
} .footer-row{
display:flex;
align-items:center;
justify-content:space-between;
gap:14px;
flex-wrap:wrap;
}
.footer-social{
display:flex;
gap:13px;
}
.footer-social a{
display:inline-flex;
align-items:center;
justify-content:center;
width:34px;
height:34px;
border-radius:10px;
background:#fff;
border:1px solid var(--nesk-line);
transition:all .18s ease;
}
.footer-social a:hover{
border-color:var(--nesk-blue);
box-shadow:0 6px 14px rgba(2,6,23,.08);
transform:translateY(-1px);
}
.footer-social svg{
width:16px;
height:16px;
fill:var(--nesk-muted);
transition:fill .18s ease;
} .ff-el-group{ margin-bottom: 14px; }
.ff-el-input--label label{
font-weight: 700;
color: var(--nesk-ink);
margin-bottom: 6px;
}
.ff-el-form-control{
width: 100%;
padding: 12px 12px;
border-radius: 12px;
border: 1px solid var(--nesk-line);
background: #fff;
font: inherit;
transition: box-shadow .15s ease, border-color .15s ease;
}
.ff-el-form-control:focus{
outline: none;
border-color: rgba(10,79,163,.35);
box-shadow: 0 0 0 4px rgba(10,79,163,.10);
}
.ff-btn-submit{
padding: 12px 16px;
border-radius: 14px;
border: 1px solid rgba(255,255,255,.18);
background: var(--nesk-blue);
color: #fff;
font-weight: 800;
cursor: pointer;
box-shadow: 0 16px 34px rgba(10,79,163,.18);
}
.ff-btn-submit:hover{ filter: brightness(1.02); transform: translateY(-1px); }
.ff-message-success{
border-radius: 14px;
border: 1px solid rgba(34,197,94,.25);
background: rgba(34,197,94,.08);
padding: 12px 14px;
}
@media (min-width: 920px){
.ff-form .ff-el-group.ff-el-form-control, 
.ff-form .ff-el-group{ } }