/* Interactive Made — produktsider (NordTell / NordBooq) + produktkort på forsiden */

/* ---- produktside hero ---- */
.pp-hero { padding: 14rem 0 5rem; text-align: center; }
.pp-eyebrow {
   letter-spacing: .4rem;
   text-transform: uppercase;
   font-size: 1.1rem;
   font-weight: 600;
   color: var(--primary-color);
   margin-bottom: 1.5rem;
}
.pp-title {
   font-size: 5.6rem;
   font-weight: 700;
   color: var(--secondary-color);
   margin-bottom: 1.5rem;
   line-height: 1.1;
}
.pp-tagline {
   font-size: 2.2rem;
   font-weight: 500;
   color: #333;
   margin: 0 auto 1.5rem;
   max-width: 80rem;
   line-height: 1.5;
}
.pp-sub {
   max-width: 76rem;
   margin: 0 auto;
   color: #666;
   line-height: 1.8;
   font-size: 1.5rem;
}
.pp-actions { margin: 2.5rem 0 1rem; }
.pp-actions .but { margin: 0 .5rem 1rem; }
.pp-but-outline {
   background: transparent !important;
   border: 1px solid var(--primary-color);
   color: var(--primary-color) !important;
}
.pp-hero-img { margin-top: 3rem; }
.pp-hero-img img {
   width: 100%;
   max-width: 96rem;
   border-radius: .8rem;
   box-shadow: 0 2rem 5rem rgba(37, 89, 111, .25);
}

/* ---- sektioner ---- */
.pp-kicker-title { margin-bottom: 1.5rem; }
.pp-lead-center {
   max-width: 80rem;
   margin: 0 auto 4rem;
   text-align: center;
   line-height: 1.8;
}

/* ---- talstriber ---- */
.pp-stats { display: flex; flex-wrap: wrap; justify-content: center; gap: 3rem; }
.pp-stat { flex: 1 1 16rem; text-align: center; }
.pp-stat b {
   display: block;
   font-size: 3.2rem;
   font-weight: 700;
   color: var(--secondary-color);
   margin-bottom: .8rem;
}
.dark-bg .pp-stat b { color: var(--primary-color); }
.pp-stat span {
   font-size: 1.2rem;
   letter-spacing: .15rem;
   text-transform: uppercase;
   color: #777;
}
.dark-bg .pp-stat span { color: #cfe3e6; }

/* ---- citat ---- */
.pp-quote {
   font-size: 2rem;
   font-style: italic;
   line-height: 1.7;
   color: #fff;
   max-width: 84rem;
   margin: 0 auto 1.5rem;
   text-align: center;
}
.pp-quote-src {
   text-align: center;
   color: var(--primary-color);
   font-size: 1.2rem;
   letter-spacing: .25rem;
   text-transform: uppercase;
   margin-bottom: 4rem;
}

/* ---- screenshots ---- */
.pp-shot-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 3rem;
}
.pp-shot img {
   width: 100%;
   border-radius: .8rem;
   box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, .16);
   display: block;
}
.pp-shot figcaption {
   margin-top: 1.2rem;
   font-size: 1.3rem;
   color: #777;
   line-height: 1.7;
}
.pp-shot figcaption b { color: var(--secondary-color); font-size: 1.4rem; }

/* ---- featurekort ---- */
.pp-feature {
   background: #fff;
   border: 1px solid #e8e8e8;
   border-radius: .6rem;
   padding: 2.8rem 2.4rem;
   margin-bottom: 3rem;
   height: calc(100% - 3rem);
}
.dark-bg .pp-feature { background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .15); }
.pp-feature h4 { font-size: 1.7rem; font-weight: 600; margin-bottom: 1rem; color: var(--secondary-color); }
.dark-bg .pp-feature h4 { color: #fff; }
.pp-feature p { font-size: 1.35rem; color: #777; line-height: 1.8; }
.dark-bg .pp-feature p { color: #cfe3e6; }

/* ---- priser ---- */
.pp-price-grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
   gap: 2.4rem;
}
.pp-price-card {
   border: 1px solid #e2e2e2;
   border-radius: .8rem;
   padding: 3.2rem 2.6rem;
   text-align: center;
   background: #fff;
}
.pp-price-card.featured {
   border-top: .3rem solid var(--primary-color);
   box-shadow: 0 1.6rem 4rem rgba(37, 89, 111, .15);
}
.pp-plan {
   font-size: 1.2rem;
   letter-spacing: .3rem;
   text-transform: uppercase;
   font-weight: 600;
   color: var(--primary-color);
   margin-bottom: 1.6rem;
}
.pp-price { font-size: 3.2rem; font-weight: 700; color: var(--secondary-color); }
.pp-price small { font-size: 1.3rem; color: #888; font-weight: 400; }
.pp-price-sub { font-size: 1.1rem; letter-spacing: .1rem; color: #999; margin: .8rem 0 1.8rem; text-transform: uppercase; }
.pp-price-card p.desc { font-size: 1.25rem; color: #777; line-height: 1.8; }
.pp-note { text-align: center; font-size: 1.15rem; color: #999; margin-top: 2.6rem; }

/* ---- CTA ---- */
.pp-cta { text-align: center; }
.pp-cta .title { margin-bottom: 1.5rem; }

/* ---- forsidens produktkort ---- */
.product-card {
   background: #fff;
   border: 1px solid #e8e8e8;
   border-radius: .8rem;
   overflow: hidden;
   margin-bottom: 3rem;
   padding-bottom: 2.2rem;
}
.product-card .pp-actions { margin: 1.8rem 0 0; }
.product-card .product-shot img {
   width: 100%;
   height: 15rem;
   object-fit: cover;
   display: block;
}
.product-card-inner { padding: 1.8rem 2rem 0; text-align: center; }
.product-card h3 { font-size: 2.4rem; font-weight: 700; color: var(--secondary-color); margin-bottom: .6rem; }
.product-card .pp-card-kicker {
   font-size: 1.1rem;
   letter-spacing: .25rem;
   text-transform: uppercase;
   color: var(--primary-color);
   margin-bottom: 1.4rem;
}
.product-card p.lead { font-size: 1.35rem; line-height: 1.8; color: #666; text-align: center; }
.product-card .pp-actions { margin: 2rem 0 0; }
.pp-ext-link {
   display: inline-block;
   margin: 0 .8rem;
   color: var(--secondary-color);
   font-size: 1.3rem;
   text-decoration: underline;
}
.pp-ext-link:hover { color: var(--primary-color); }

/* ---- mobil ---- */
@media (max-width: 768px) {
   .pp-hero { padding: 11rem 2rem 4rem; }
   .pp-title { font-size: 3.8rem; }
   .pp-tagline { font-size: 1.8rem; }
   .pp-shot-grid { grid-template-columns: 1fr; }
   .pp-quote { font-size: 1.6rem; }
}


/* ---- forsidens servicekort & hero-tilfoejelser ---- */
.hero-sub {
   max-width: 62rem;
   margin: 1.4rem 0 0;
   font-size: 1.45rem;
   line-height: 1.7;
   opacity: .92;
}
.hero-actions { margin-top: 2.6rem; }
.hero-actions .but { margin: 0 1rem 1rem 0; }

.svc-card {
   background: #fff;
   border: 1px solid #e8e8e8;
   border-radius: .8rem;
   padding: 2.6rem 2.6rem 2.8rem;
   margin-bottom: 3rem;
}
.svc-card .svc-num {
   letter-spacing: 2px;
   font-size: 1.05rem;
   text-transform: uppercase;
   color: var(--primary-color);
   margin-bottom: 1rem;
   font-weight: 600;
}
.svc-card h4 {
   font-size: 1.7rem;
   margin-bottom: 1.2rem;
   color: #222;
}
.svc-card p {
   color: #777;
   line-height: 1.8;
   font-size: 1.35rem;
   margin: 0;
}

.facts-lang {
   letter-spacing: 2px;
   text-transform: uppercase;
   font-size: 1.1rem;
   color: var(--primary-color);
   margin-bottom: 1.4rem;
   font-weight: 600;
}
.facts-block { padding: 0 1rem; }


/* ---- audit-fixes: lige kort-hoejder, kontrast ---- */
#services .row { display: flex; flex-wrap: wrap; }
.svc-card { height: 100%; }
.facts-block strong { color: #ffffff; }
.hero-actions .pp-but-outline {
   color: #ffffff !important;
   border-color: rgba(255, 255, 255, .6);
}
.hero-actions .pp-but-outline:hover {
   border-color: var(--primary-color);
   color: var(--primary-color) !important;
}


/* ---- round-1 audit fixes ---- */
/* fixed header: opaque dark band */
.block-outer-nav,
.block-nav,
.block-nav.sticky-nav,
.main-nav-scrollable {
   background: rgba(13, 27, 33, .96);
}
.block-nav, .block-nav.sticky-nav { box-shadow: 0 2px 14px rgba(0, 0, 0, .28); }

/* contrast: darker teal everywhere it carries small text/fills on light */
.but, .but.sig-hej-btn, .sig-hej-btn {
   background-color: #2c666b;
   border-color: #2c666b;
   color: #ffffff;
}
.sig-hej-btn { box-shadow: none; border: none; }
.svc-card .svc-num,
.product-card .pp-card-kicker,
.pp-shot figcaption b,
.togglefaq,
.faqanswer a,
.founder-eyebrow,
.pp-actions .pp-ext-link,
.contact-direct a,
.facts-lang { color: #2c666b; }

/* Danish sentence case (kill CSS capitalize) */
.svc-card h4,
.our-benefits h4,
.founder-eyebrow { text-transform: none; }
.founder-eyebrow {
   letter-spacing: 2px;
   font-size: 1.1rem;
   font-weight: 600;
   margin-bottom: 1.2rem;
}

/* hero visual */
.hero-row { align-items: center; }
.hero-visual img {
   width: 100%;
   border-radius: 1rem;
   box-shadow: 0 2.5rem 5rem rgba(0, 0, 0, .45);
   margin-top: 2rem;
}

/* steps: one numbering system + photo column fills */
.steps .step-num span {
   color: #2c666b !important;
   opacity: 1 !important;
   background: none !important;
   position: static !important;
   font-size: 2.4rem !important;
   font-weight: 700 !important;
   line-height: 1 !important;
   display: block !important;
}
#devProcess .row { display: flex; flex-wrap: wrap; }
#devProcess .photo-col { display: flex; flex-direction: column; }
#devProcess .photo-col .block-content { flex: 1; display: flex; margin-bottom: 2rem; }
#devProcess .photo-col .background-img { flex: 1; }
#devProcess .photo-col .background-img img { height: 100%; object-fit: cover; }

/* FAQ alignment */
.faqanswer { padding-left: 2.9rem; }

/* contact form labels + direct contact */
.contact-form label.form-label {
   display: block;
   text-align: left;
   font-size: 1.15rem;
   letter-spacing: 1px;
   text-transform: uppercase;
   color: #3a4a4e;
   margin: 1.2rem 0 .6rem;
}
.contact-direct { margin: 1.8rem 0 2.4rem; font-size: 1.5rem; }
.contact-direct a { text-decoration: underline; }

/* footer: legal row, kill dead band */
.footer.gap-double { padding-bottom: 2.5rem; }
.footer-legal p {
   margin: 2.5rem 0 0;
   padding-top: 1.8rem;
   border-top: 1px solid rgba(255, 255, 255, .18);
   font-size: 1.25rem;
}
.footer-legal a { color: inherit; text-decoration: underline; }

/* logo wall normalization */
#drivers img {
   max-height: 5.5rem;
   width: auto;
   object-fit: contain;
   filter: brightness(1.06) contrast(1.12);
   opacity: .95;
}


/* ---- round-1 follow-up: steps-numre, header-knap, hero-afstand ---- */
.block-steps li .step-num {
   width: auto !important;
   height: auto !important;
   background: none !important;
   border-radius: 0 !important;
   overflow: visible !important;
}
.block-steps li .step-num span {
   line-height: 1.3 !important;
   letter-spacing: 1px;
}
.block-nav .sig-hej-btn, .main-nav .sig-hej-btn,
.block-nav .but, .block-outer-nav .sig-hej-btn {
   background-color: #2c666b !important;
   border: none !important;
   box-shadow: none !important;
}
.inner-hero .hero-content { padding-top: 7rem; }
.hero-row { align-items: flex-start; }
.form-consent {
   margin: 1.8rem 0 0;
   font-size: 1.25rem;
   color: #667;
}
.form-consent a { color: #2c666b; text-decoration: underline; }


/* ---- round-2 fixes ---- */
.block-steps li .step-num {
   width: 5.5rem !important;
   margin-left: 0 !important;
   text-align: left !important;
}
.block-steps li .step-num span {
   margin-left: 0 !important;
}
.block-nav, .block-nav.sticky-nav, .block-outer-nav {
   background-color: #0d1b21 !important;
}
.block-nav.sticky-nav .main-nav-scrollable,
.block-nav.sticky-nav .main-nav-scrollable a,
.block-nav.sticky-nav .main-nav {
   display: block !important;
   width: auto !important;
   height: auto !important;
   visibility: visible !important;
   opacity: 1 !important;
   overflow: visible !important;
}
.block-nav.sticky-nav .main-nav-scrollable a { display: inline-block !important; }
.sig-hej-btn { border-radius: 999px !important; }
.sig-hej-btn::before, .sig-hej-btn::after,
.block-nav .but::before, .block-nav .but::after {
   display: none !important;
   content: none !important;
}
.svc-card p, .step-body p, .faqanswer p {
   color: #4d4d4d !important;
}
#faq .title { color: #2c666b; }
.hero-row { align-items: center; }
.hero-actions { margin: 1.2rem 0 0 !important; padding-top: 0 !important; }
.hero-content .lead.text-white { margin-bottom: 0.6rem !important; }
.our-benefits h3 { font-size: 4.6rem; font-weight: 700; line-height: 1.15; margin: 0 0 1.2rem; }
#products .intro { margin: 0 auto 2.2rem !important; }
#drivers img {
   filter: brightness(0) opacity(.72);
   opacity: 1;
   max-height: 5.5rem;
   width: auto;
}


/* ---- round-3: navigation synlig i sticky-header ---- */
.block-outer-nav {
   position: fixed !important;
   top: 0 !important;
   left: 0 !important;
   right: 0 !important;
   z-index: 1000 !important;
   background-color: #0d1b21 !important;
}
.block-nav.sticky-nav ~ .main-nav-scrollable {
   position: absolute !important;
   z-index: 1001 !important;
}
.block-nav.sticky-nav ~ .main-nav-scrollable,
.block-nav.sticky-nav ~ .main-nav-scrollable ul,
.block-nav.sticky-nav ~ .main-nav-scrollable li,
.block-nav.sticky-nav ~ .main-nav-scrollable a {
   width: auto !important;
   height: auto !important;
   max-height: none !important;
   visibility: visible !important;
   opacity: 1 !important;
   overflow: visible !important;
}
.block-nav.sticky-nav ~ .main-nav-scrollable,
.block-nav.sticky-nav ~ .main-nav-scrollable ul { display: block !important; }
.block-nav.sticky-nav ~ .main-nav-scrollable li { display: inline-block !important; }
.block-nav.sticky-nav ~ .main-nav-scrollable a { display: block !important; color: #ffffff !important; }


/* ---- round-3 audit: sidste polish ---- */
.hero-row { display: flex; align-items: center; flex-wrap: wrap; }
#titleIntro { text-wrap: balance; }
#kortFortalt .facts-lang { color: #8FB9BD !important; }
.svc-card p, .svc-card .svc-text, .step-body p, .faqanswer p { color: #565656 !important; }
.svc-card { border-color: #dce1e4 !important; }
input::placeholder, textarea::placeholder { color: #6f6f6f !important; }
.clients-logos { display: flex; align-items: center; justify-content: center; margin-bottom: 2.2rem; }
.clients-logos img {
   background: #fff;
   padding: 1.2rem 1.6rem;
   border-radius: 1rem;
   max-height: 7.5rem !important;
   width: auto;
   object-fit: contain;
   opacity: 1 !important;
   filter: none !important;
}


/* ---- Bevægelse: ticker ---- */
.marquee-band {
   overflow: hidden;
   background: var(--secondary-color, #25596f);
   padding: 1.5rem 0;
   white-space: nowrap;
}
.marquee-track {
   display: inline-block;
   white-space: nowrap;
   animation: marqueeMove 38s linear infinite;
}
.marquee-track span {
   color: #fff;
   font-size: 1.3rem;
   letter-spacing: 2px;
   text-transform: uppercase;
   font-weight: 600;
}
.marquee-track i {
   color: var(--primary-color, #4d999e);
   font-style: normal;
   margin: 0 1.6rem;
   font-size: 1rem;
   vertical-align: middle;
}
.marquee-band:hover .marquee-track { animation-play-state: paused; }
@keyframes marqueeMove {
   0% { transform: translateX(0); }
   100% { transform: translateX(-50%); }
}

/* ---- Hero: chips + kort mobil ---- */
.hero-chips {
   list-style: none;
   padding: 0;
   margin: 2.2rem 0 0;
   display: flex;
   flex-wrap: wrap;
   gap: .8rem;
}
.hero-chips span {
   border: 1px solid rgba(255, 255, 255, .35);
   color: #fff;
   border-radius: 999px;
   padding: .55rem 1.3rem;
   font-size: 1.15rem;
   letter-spacing: 1px;
   opacity: .92;
}

/* ---- Why-choose-us kort + ikon-tegning ---- */
.why-grid { margin-top: 1rem; }
.why-card {
   background: #fff;
   border: 1px solid #e2e6e8;
   border-radius: 1.2rem;
   padding: 2.6rem 2.4rem;
   height: 100%;
   margin-bottom: 3rem;
   transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.why-card:hover {
   transform: translateY(-7px);
   box-shadow: 0 1.8rem 3.6rem rgba(37, 89, 111, .16);
   border-color: var(--primary-color, #4d999e);
}
.why-icon {
   display: inline-flex;
   width: 5.6rem;
   height: 5.6rem;
   border-radius: 1.2rem;
   background: #eef6f6;
   align-items: center;
   justify-content: center;
   margin-bottom: 1.8rem;
}
.why-icon svg {
   width: 3rem;
   height: 3rem;
   fill: none;
   stroke: var(--secondary-color, #25596f);
   stroke-width: 2.4;
   stroke-linecap: round;
   stroke-linejoin: round;
}
.why-card h4 { font-size: 1.55rem; margin-bottom: 1.1rem; }
.why-card p { color: #565656; line-height: 1.75; font-size: 1.35rem; margin: 0; }

.icon-draw path, .icon-draw circle, .icon-draw line {
   stroke-dasharray: 1;
   stroke-dashoffset: 1;
   transition: stroke-dashoffset 1.15s ease .15s;
}
.scroll-based-animate-in .icon-draw path,
.scroll-based-animate-in .icon-draw circle,
.scroll-based-animate-in .icon-draw line,
[animate-in].scroll-based-animate-in .icon-draw path {
   stroke-dashoffset: 0;
}

/* ---- Resultat-bånd: graf + tællere ---- */
.results-band { background: #12262c; }
.results-kicker {
   letter-spacing: 3px;
   text-transform: uppercase;
   color: var(--primary-color, #4d999e);
   font-size: 1.15rem;
   margin-bottom: 1.2rem;
}
.results-graph {
   margin-top: 2.6rem;
   background: rgba(255, 255, 255, .05);
   border: 1px solid rgba(255, 255, 255, .12);
   border-radius: 1.2rem;
   padding: 1.8rem 1.6rem 1.2rem;
}
.growth-chart { width: 100%; height: 15rem; display: block; }
.growth-chart .grid-line { stroke: rgba(255, 255, 255, .12); stroke-width: 1; }
.growth-chart .area { opacity: 0; transition: opacity 1.4s ease .5s; }
.growth-chart .line {
   fill: none;
   stroke: var(--primary-color, #4d999e);
   stroke-width: 3.5;
   stroke-linecap: round;
   stroke-dasharray: 1;
   stroke-dashoffset: 1;
   transition: stroke-dashoffset 1.9s ease .2s;
}
.growth-chart .chart-dot {
   fill: var(--primary-color, #4d999e);
   animation: dotPulse 1.8s ease-in-out infinite;
}
.scroll-based-animate-in .growth-chart .area,
.results-graph.scroll-based-animate-in .area { opacity: 1; }
.scroll-based-animate-in .growth-chart .line,
.results-graph.scroll-based-animate-in .line { stroke-dashoffset: 0; }
@keyframes dotPulse {
   0%, 100% { r: 7; opacity: 1; }
   50% { r: 10; opacity: .65; }
}
.graph-labels {
   display: flex;
   justify-content: space-between;
   margin-top: .9rem;
   color: rgba(255, 255, 255, .55);
   font-size: 1.05rem;
   letter-spacing: 1px;
}
.counters { display: flex; flex-direction: column; gap: 1.6rem; }
.counter-card {
   background: rgba(255, 255, 255, .06);
   border: 1px solid rgba(255, 255, 255, .12);
   border-radius: 1.2rem;
   padding: 2rem 2.4rem;
   transition: background .3s ease, transform .3s ease;
}
.counter-card:hover { background: rgba(255, 255, 255, .11); transform: translateX(6px); }
.counter-card .counter {
   display: block;
   font-size: 3.4rem;
   font-weight: 700;
   color: var(--primary-color, #4d999e);
   line-height: 1.15;
   font-variant-numeric: tabular-nums;
}
.counter-card span { color: #cfe3e6; font-size: 1.35rem; line-height: 1.6; }

/* ---- Mobil ---- */
@media (max-width: 768px) {
   .hero-content { padding-top: 11rem; }
   .hero-sub { font-size: 1.55rem !important; max-width: 100%; }
   .hero-cta-desktop { display: none !important; }
   .hero-chips { gap: .6rem; margin-top: 1.8rem; }
   .hero-chips span { font-size: 1.05rem; padding: .5rem 1.05rem; }
   .hero-visual { display: none !important; }
   .hero-row { display: block; }
   .marquee-track span { font-size: 1.15rem; }
   .why-card { padding: 2.2rem 1.8rem; margin-bottom: 2rem; }
   .why-card h4 { font-size: 1.45rem; }
   .why-card p { font-size: 1.3rem; }
   .results-graph { padding: 1.2rem 1rem 1rem; }
   .growth-chart { height: 11rem; }
   .counter-card { padding: 1.6rem 1.8rem; }
   .counter-card .counter { font-size: 2.7rem; }
   .counter-card span { font-size: 1.25rem; }
   .counters { gap: 1.2rem; margin-top: 2.4rem; }
   .founder-row .col-md-3 { margin-bottom: 2rem; }
   #kortFortalt .lead { font-size: 1.35rem; }
   .product-card .product-shot img { height: 16rem; }
}
@media (max-width: 576px) {
   .hero-content { padding-top: 10rem; }
   .pp-actions .but { width: 100%; text-align: center; }
   .svc-card { padding: 2rem 1.6rem; }
   .marquee-band { padding: 1.2rem 0; }
}


/* ---- fixes: lige kort, rene titler, kicker-kontrast ---- */
#whyUs .why-grid { display: flex; flex-wrap: wrap; }
.why-card h4 { text-transform: none; }
.results-kicker { color: #7fc4ca; }
.growth-chart { border-radius: .6rem; }

/* ---- round-4: lange kort-titler maa ikke loebe over ---- */
.why-card h4, .svc-card h4, .tool-card h4 {
   overflow-wrap: break-word;
   hyphens: none;
}

/* ---- icon-reveal ejet af site-extra.js ---- */
.icons-drawn .icon-draw path,
.icons-drawn .icon-draw circle,
.icons-drawn .icon-draw line {
   stroke-dashoffset: 0;
}


/* ---- bruger-feedback: lige hoejder + afstande + hero-anim ---- */
.why-grid { display: flex; flex-wrap: wrap; margin-left: -1.25rem; margin-right: -1.25rem; }
.why-grid > [class*="col-"] { padding: 1.25rem; }
.why-card { height: 100%; padding: 2rem 1.6rem; }
.svc-card { height: 100%; }
.hero-animation { display: flex; align-items: center; }
.hero-anim { width: 100%; max-width: 26rem; margin: 0 auto; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.16); border-radius: 1.25rem; padding: 1.75rem; animation: haFloat 7s ease-in-out infinite; }
@keyframes haFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
.hero-anim-search { display: flex; align-items: center; gap: .75rem; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.22); border-radius: 999px; padding: .85rem 1.25rem; }
.ha-ic { width: 1.35rem; height: 1.35rem; fill: none; stroke: #8fd3d8; stroke-width: 2; stroke-linecap: round; }
.ha-typed { color: #fff; font-size: 1.05rem; }
.ha-caret { width: 2px; height: 1.15rem; background: #8fd3d8; animation: haBlink 1.1s steps(1) infinite; }
@keyframes haBlink { 50% { opacity: 0; } }
.hero-anim-results { margin-top: 1.25rem; display: flex; flex-direction: column; gap: .75rem; }
.ha-res { display: flex; align-items: center; gap: .85rem; background: rgba(255,255,255,.07); border-radius: .75rem; padding: .8rem 1rem; }
.ha-res-1 { background: rgba(77,153,158,.35); border: 1px solid rgba(143,211,216,.55); animation: haGlow 3.2s ease-in-out infinite; }
@keyframes haGlow { 0%, 100% { box-shadow: 0 0 0 0 rgba(143,211,216,0); } 50% { box-shadow: 0 0 22px 2px rgba(143,211,216,.35); } }
.ha-rank { width: 1.6rem; height: 1.6rem; border-radius: 999px; background: rgba(255,255,255,.18); color: #fff; display: flex; align-items: center; justify-content: center; font-size: .85rem; font-weight: 700; flex: none; }
.ha-res-1 .ha-rank { background: #8fd3d8; color: #0d2a2f; }
.ha-line { flex: 1; height: .5rem; border-radius: 999px; background: rgba(255,255,255,.22); overflow: hidden; position: relative; }
.ha-res-1 .ha-line { background: rgba(255,255,255,.3); }
.ha-line::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(255,255,255,.5), transparent); transform: translateX(-100%); animation: haShine 2.8s ease-in-out infinite; }
@keyframes haShine { 60%, 100% { transform: translateX(100%); } }
.ha-tag { color: #c9f0f3; font-size: .85rem; font-weight: 700; }
.ha-badge { margin-top: 1.25rem; align-self: center; background: #ffd275; color: #2b2207; font-weight: 700; border-radius: 999px; padding: .55rem 1.25rem; animation: haBob 2.6s ease-in-out infinite; }
@keyframes haBob { 0%, 100% { transform: translateY(0) rotate(-1.5deg); } 50% { transform: translateY(-7px) rotate(1.5deg); } }

/* ---- polish: tydeligere fliser + kanter + kontrast ---- */
.why-icon { background: #e0f0f1; border: 1px solid #c9e3e6; }
.why-card, .svc-card { border-color: #ccd7da; }
.svc-num { color: #465457; }
#services .block-content { margin-bottom: 0 !important; }


/* ---- round-4 audit: balance, chips, tap-mål, knapper, notes ---- */
.title-intro { text-wrap: balance; }
.hero-chips { gap: .5rem; }
.hero-chips span { font-size: 1rem; padding: .45rem 1rem; }
.clients-names { color: #cfe3e6; margin: 0 0 1.5rem; }
.results-note { color: #9fc6cb; font-size: .95rem; margin: 1.25rem 0 0; }
button.togglefaq { display: block; width: 100%; text-align: left; border: 0; background: none; cursor: pointer; font: inherit; }
button.but { cursor: pointer; font: inherit; }
.clients-logos img { max-height: 5.5rem; max-width: 100%; object-fit: contain; }
@media (max-width: 768px) {
   .clients-logos img { max-height: 4.5rem; }
   #footer a, .footer a, #privacypolicy a { padding: .55rem 0; display: inline-block; }
   .social a { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
}

/* ---- round-6: tap-mål 44px ---- */
@media (max-width: 768px) {
   .sig-hej-btn, .pp-ext-link, .instagram, .facebook, .linked {
      min-height: 44px; min-width: 44px;
      display: inline-flex; align-items: center; justify-content: center;
   }
}


/* ================= RENOVERING: header-ved-scroll, kontakt, footer, FAQ, klient-vaeg ================= */

/* --- Header skrumper til kun logo ved scroll --- */
/* will-change fjernet: gjorde headeren til containing-block for fixed-menuen (hoejde 0) */
.main-nav-scrollable, .block-outer-nav .sig-hej-btn {
   transition: opacity .3s ease, transform .3s ease;
}
body.header-scrolled .main-nav-scrollable,
body.header-scrolled .block-outer-nav .sig-hej-btn {
   opacity: 0;
   transform: translateY(-10px);
   pointer-events: none;
   visibility: hidden;
}
body.header-scrolled .block-outer-nav { padding: .45rem 0; }

/* --- Kontakt: kort + formular med rigtige felter --- */
.contact-section { background: #f2f6f8; padding: 5.5rem 0 5rem; }
.contact-grid { display: flex; align-items: stretch; gap: 2.5rem; }
.contact-kicker {
   color: var(--primary-color);
   text-transform: uppercase;
   letter-spacing: .14em;
   font-weight: 800;
   font-size: .82rem;
   margin-bottom: .75rem;
}
.contact-title { color: #0d1b21; font-size: 2.35rem; line-height: 1.12; margin-bottom: 1.15rem; text-wrap: balance; }
.contact-lead { color: #46565e; font-size: 1.12rem; line-height: 1.7; max-width: 42ch; margin-bottom: 1.75rem; }
.contact-info { list-style: none; padding: 0; margin: 0; display: grid; gap: .75rem; }
.contact-info li { color: #0d1b21; font-weight: 600; font-size: 1.08rem; line-height: 1.55; }
.contact-info a { color: #0d1b21; text-decoration: none; border-bottom: 2px solid var(--primary-color); }
.contact-info a:hover { color: var(--primary-color); }

.contact-card {
   background: #ffffff;
   border-radius: 18px;
   padding: 2.15rem;
   box-shadow: 0 12px 36px rgba(13, 27, 33, .08);
   width: 100%;
   border: 1px solid #e2ebef;
}
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.15rem; }
.form-cell { display: flex; flex-direction: column; gap: .45rem; }
.form-label { color: #263238; font-weight: 700; font-size: .95rem; text-align: left; margin: 0; }
.form-cell input, .form-cell textarea {
   width: 100%;
   border: 1.5px solid #d4e0e5;
   border-radius: 11px;
   padding: .85rem 1rem;
   font-size: 1.02rem;
   font-family: inherit;
   color: #0d1b21;
   background: #fbfdfe;
   transition: border-color .2s ease, box-shadow .2s ease;
}
.form-cell textarea { resize: vertical; min-height: 120px; }
.form-cell input::placeholder, .form-cell textarea::placeholder { color: #9fb2ba; }
.form-cell input:focus, .form-cell textarea:focus {
   outline: none;
   border-color: var(--primary-color);
   box-shadow: 0 0 0 4px rgba(77, 153, 158, .15);
}
.form-actions { margin-top: 1.5rem; display: flex; align-items: center; gap: 1.25rem; flex-wrap: wrap; }
button.contact-submit {
   background: var(--primary-color);
   color: #fff;
   border: none;
   border-radius: 999px;
   padding: 1.05rem 2.4rem;
   font-size: 1.08rem;
   font-weight: 700;
   cursor: pointer;
   transition: transform .18s ease, background .18s ease;
}
button.contact-submit:hover { transform: translateY(-2px); background: #3d868c; }
.form-consent { color: #5c7178; font-size: .92rem; margin: 0; }
.form-consent a { color: var(--primary-color); }

/* --- Footer --- */
.footer { background: #0d1b21; padding: 4.5rem 0 0; }
.footer-grid { display: flex; gap: 2.5rem; padding-bottom: 3rem; }
.footer-grid > div { flex: 1; }
.footer-logo { display: block; margin-bottom: 1.15rem; }
.footer-tagline { color: #a3bcc2; line-height: 1.75; margin-bottom: 1.35rem; }
.footer-h { color: #fff; font-size: 1.12rem; font-weight: 800; margin-bottom: 1.15rem; }
.footer-links { list-style: none; padding: 0; margin: 0; display: grid; gap: .7rem; }
.footer-links li { color: #a3bcc2; line-height: 1.65; }
.footer-links a { color: #dceced; text-decoration: none; transition: color .18s ease; }
.footer-links a:hover { color: var(--primary-color); }
.footer-icons { list-style: none; padding: 0; margin: 0; display: flex; gap: .7rem; }
.footer-icons li a {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 44px;
   height: 44px;
   border-radius: 50%;
   background: rgba(255, 255, 255, .08);
   color: #dceced;
   transition: background .18s ease, transform .18s ease;
}
.footer-icons li a:hover { background: var(--primary-color); color: #fff; transform: translateY(-2px); }
.footer-legal { border-top: 1px solid rgba(255, 255, 255, .12); padding: 1.4rem 0 1.55rem; }
.footer-legal p { color: #8aa5ac; font-size: .92rem; margin: 0; line-height: 1.7; }
.footer-legal a { color: #dceced; }

/* --- FAQ-rakker --- */
.faq-answer, .faqanswer { margin: 0; }
.togglefaq {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 1.25rem;
   text-align: left;
   background: #fff !important;
   border: 1.5px solid #e2ebef !important;
   border-radius: 13px;
   padding: 1.35rem 1.6rem !important;
   margin-bottom: .85rem;
   color: #0d1b21 !important;
   font-size: 1.16rem !important;
   font-weight: 700;
   line-height: 1.45;
   cursor: pointer;
   transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.togglefaq:hover { border-color: var(--primary-color) !important; box-shadow: 0 8px 22px rgba(13, 27, 33, .07); transform: translateY(-1px); }
.togglefaq i, .togglefaq .icon-plus, .togglefaq .faq-ic {
   flex: 0 0 auto;
   width: 38px;
   height: 38px;
   border-radius: 50%;
   background: rgba(77, 153, 158, .12);
   color: var(--primary-color);
   display: inline-flex;
   align-items: center;
   justify-content: center;
   font-size: 1.15rem;
   font-style: normal;
   font-weight: 700;
}
.faqanswer {
   background: #f2f6f8;

   border-radius: 12px;
   margin: -.25rem 0 1.15rem;
   padding: 1.15rem 1.6rem 1.35rem;
}
.faqanswer p, .faqanswer .lead {
   color: #40525a !important;
   font-size: 1.06rem !important;
   line-height: 1.75 !important;
   margin: 0;
}
.faq-item { margin-bottom: 0; }

/* --- Klientvaeg: marquee --- */
.clients-kicker {
   color: var(--primary-color);
   text-transform: uppercase;
   letter-spacing: .15em;
   font-weight: 800;
   font-size: .85rem;
   margin-bottom: .9rem;
}
.clients-title { color: #fff !important; }
.clients-names { color: #cfe3e6 !important; max-width: 62ch; margin: .65rem auto 2.35rem; line-height: 1.75; }
.marquee { overflow: hidden; width: 100%; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.marquee-track { display: inline-flex; gap: 1.1rem; padding: .55rem 0; animation: marquee-scroll 38s linear infinite; will-change: transform; }
.marquee:hover .marquee-track { animation-play-state: paused; }
@keyframes marquee-scroll {
   from { transform: translateX(0); }
   to { transform: translateX(calc(-50% - 0.55rem)); }
}
.logo-chip {
   flex: 0 0 auto;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   background: #fff;
   border-radius: 15px;
   padding: 1.15rem 1.85rem;
   min-width: 170px;
   min-height: 92px;
   box-shadow: 0 12px 26px rgba(0, 0, 0, .22);
}
.logo-chip img { max-height: 3.25rem; max-width: 135px; object-fit: contain; }

/* --- scroll-top pille --- */
a.block-top {
   right: 1.5rem;
   bottom: 1.5rem;
   width: 46px;
   height: 46px;
   border-radius: 12px;
   display: flex;
   align-items: center;
   justify-content: center;
   box-shadow: 0 10px 24px rgba(13, 27, 33, .25);
}

/* --- mobil --- */
@media (max-width: 768px) {
   .contact-grid, .footer-grid, .form-grid { display: block; }
   .contact-title { font-size: 1.95rem; }
   .contact-card { padding: 1.55rem 1.25rem; }
   .form-cell { margin-bottom: 1.05rem; }
   .form-actions { display: block; }
   button.contact-submit { width: 100%; }
   .form-consent { margin-top: 1rem; text-align: center; }
   .footer-grid > div { margin-bottom: 2.15rem; }
   .togglefaq { padding: 1.15rem 1.15rem !important; font-size: 1.02rem !important; }
   .togglefaq i, .togglefaq .icon-plus, .togglefaq .faq-ic { width: 32px; height: 32px; font-size: 1rem; }
   .logo-chip { min-width: 125px; min-height: 74px; padding: .85rem 1.15rem; border-radius: 12px; }
   .logo-chip img { max-height: 2.55rem; max-width: 105px; }
   .marquee-track { animation-duration: 26s; gap: .85rem; }
}


/* ---- sidste polish ---- */
.logo-chip img { filter: brightness(0) opacity(.72); }
button.togglefaq, .togglefaq.bg-grey { display: flex !important; flex-direction: row-reverse; }
.togglefaq i, .togglefaq .icon-plus, .togglefaq .faq-ic {
   background: rgba(77, 153, 158, .18);
   border: 1.5px solid rgba(77, 153, 158, .4);
}
.faqanswer { margin: -.45rem 0 1.15rem; border-radius: 12px; }
.form-cell:nth-child(3), .form-cell:nth-child(4) { grid-column: 1 / -1; }
.form-cell input, .form-cell textarea { border-color: #c3d3da; }
.footer-icons li a i { color: #dceced !important; }


/* ---- logo-vaeg: rigtige logoer, ingen filter ---- */
.logo-chip img { filter: none; opacity: 1; max-height: 4.4rem; max-width: 185px; }
.logo-chip { min-width: 215px; min-height: 118px; padding: 1.5rem 2.25rem; }
.marquee-track { animation-duration: 55s; }
#drivers img { filter: none; opacity: 1; max-height: 4.4rem; }
@media (max-width: 768px) {
   .logo-chip { min-width: 155px; min-height: 92px; padding: 1.15rem 1.55rem; }
   .logo-chip img { max-height: 3.4rem; max-width: 135px; }
   .marquee-track { animation-duration: 38s; }
}


/* ---- klient-vaeg: ingen baggrundsfarve, ren hvid side ---- */
#drivers, section.drivers, .dark-bg#drivers {
   background: #ffffff !important;
   background-color: #ffffff !important;
}
#drivers .clients-title { color: #0d1b21 !important; }
#drivers .clients-names { color: #52646c !important; }
#drivers .clients-kicker { color: var(--primary-color) !important; }
.logo-chip {
   background: #fff;
   border: 1px solid #e4ecef;
   box-shadow: none;
}

/* ================= CRITIQUE-FIXES 2026-10-04 ================= */

/* --- P1: kontrast (34 maalte brud) --- */
#results .counter-card b, #results .counter, .results-stat, .res-number {
   color: #b9e4e9 !important;
}
#results .counter-card p, .results-note, #results .lead {
   color: #d3e6ea !important;
}
.but {
   background: #2f6b70 !important;
   color: #ffffff !important;
}
.hero-title, .hero-title * {
   background: none !important;
   -webkit-text-fill-color: #f3d9a4 !important;
   color: #f3d9a4 !important;
}
.text-muted, .form-consent, .muted {
   color: #64666d !important;
}
.faqanswer p.lead {
   color: #4a4c52 !important;
}
.footer-tagline, .footer-legal p, .footer .muted, #drivers .clients-names {
   color: #c6d6dc !important;
}

/* --- P2: dansk casing + a11y + forbedret fokus --- */
h1, h2, h3, h4, h5, h6 {
   text-transform: none !important;
}
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible {
   outline: 2px solid var(--primary-color);
   outline-offset: 2px;
}
.field-error {
   display: block;
   min-height: 1.15rem;
   margin-top: .3rem;
   font-size: .82rem;
   font-weight: 600;
   color: #b3261e;
}
.form-cell input.is-invalid, .form-cell textarea.is-invalid {
   border-color: #b3261e !important;
   background: #fdf3f2 !important;
}
.togglefaq[aria-expanded="true"] {
   border-color: var(--primary-color);
}
.togglefaq[aria-expanded="true"] .icon-plus {
   transform: rotate(45deg);
}
.togglefaq .icon-plus {
   transition: transform .25s ease;
}

/* --- P1: mobil + bunden af siden --- */
.marquee {
   padding: 0 1.25rem;
}
.clients-wall {
   padding-bottom: 1.5rem;
}
#drivers {
   padding-bottom: 3.5rem;
}
.block-top.scroll {
   width: 2.75rem;
   height: 2.75rem;
   bottom: 1rem;
   right: 1rem;
   border-radius: 50%;
   box-shadow: none;
}
@media (max-width: 768px) {
   .togglefaq {
      padding-right: 3.5rem;
   }
   .footer-grid {
      row-gap: 1.25rem;
   }
   .footer-legal {
      margin-top: .75rem;
      padding-top: .9rem;
   }
   #hero {
      padding: 5.5rem 0 2.5rem;
   }
}
.footer-legal {
   border-top: 1px solid rgba(255, 255, 255, .12);
   box-shadow: none;
}
.footer {
   border-top: none;
}
.lead, .intro-lead, .contact-lead, .faqanswer p {
   max-width: 68ch;
}

/* --- P1: whyUs som vandrette raekker (bryder icon-tile-monotonien) --- */
.why-grid {
   grid-template-columns: 1fr 1fr;
   gap: 1.25rem;
}
.why-card {
   display: grid;
   grid-template-columns: 5.75rem 1fr;
   gap: 1.15rem;
   align-items: start;
   text-align: left;
   padding: 1.5rem 1.65rem;
}
.why-card .icon-tile, .why-card .svc-icon, .why-card .card-icon {
   margin: 0;
}
.why-card h3, .why-card h4, .why-card .eyebrow, .why-card p {
   grid-column: 2;
   text-align: left;
}
.why-card .icon-tile, .why-card .svc-icon, .why-card .card-icon {
   grid-column: 1;
   grid-row: 1 / span 3;
}
@media (max-width: 768px) {
   .why-grid {
      grid-template-columns: 1fr;
   }
}

/* --- P1: cases-heading + Se-casen-affordance --- */
.cases-head {
   margin-bottom: 2.25rem;
}
.main-container-projects .ticket__content::after {
   content: 'Se casen  →';
   display: inline-block;
   margin-top: .75rem;
   font-size: .85rem;
   font-weight: 700;
   letter-spacing: .02em;
   color: var(--primary-color);
}
.main-container-projects:hover .ticket__content::after {
   color: #12484c;
}

/* --- Kort fortalt: kun sidens sprog --- */
html[lang="da"] .lang-only-en, html[lang="en"] .lang-only-da {
   display: none;
}
html[lang="da"] .lang-only-da, html[lang="en"] .lang-only-en {
   max-width: 760px;
   margin: 0 auto;
   float: none;
}

/* --- Accessibility: reduced motion --- */
@media (prefers-reduced-motion: reduce) {
   *, *::before, *::after {
      animation-duration: .01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: .01ms !important;
      scroll-behavior: auto !important;
   }
   .marquee-track {
      animation: none;
      transform: none;
      flex-wrap: wrap;
      justify-content: center;
   }
}

/* --- kontrast runde 2: praecise elementer --- */
#hero i, .dark-bg i, #results i {
   color: #8fd3d8 !important;
}
#hero h1 {
   background-image: none !important;
   -webkit-text-fill-color: #f3d9a4 !important;
   color: #f3d9a4 !important;
}
.clients-kicker, .contact-kicker, .kicker {
   color: #336469 !important;
}
.togglefaq .icon-plus {
   color: #336469 !important;
}
.form-consent a, .faqanswer a {
   color: #2f6b70 !important;
}
#drivers .clients-names {
   color: #52646c !important;
}
.title {
   color: inherit;
}

.float-hej {
   position: fixed;
   top: 4.4rem;
   right: 1.25rem;
   z-index: 1200;
   display: none;
   padding: .65rem 1.45rem;
   border-radius: 999px;
   box-shadow: none;
}
body.header-scrolled .float-hej {
   display: inline-block;
}
/* ============ FEJL-RETTES 2026-10-04 (efter fuld gennemgang) ============ */

/* 1) centrerede leads blev skubbet til venstre af max-width */
.text-center .lead, .text-center .intro-lead, .cases-head .lead,
.block-content.text-center .lead, .clients-names {
   margin-left: auto;
   margin-right: auto;
}
.contact-lead, .faqanswer p, .why-card p, .form-consent, .contact-info p {
   margin-left: 0;
   margin-right: 0;
}

/* 2) kicker var moerk paa moerk bund (usynlig) */
.dark-bg .kicker, #results .kicker, .footer .kicker, #drivers .kicker {
   color: #8fd3d8 !important;
}

/* 3) muted-tekst paa moerk bund */
.dark-bg .muted, .dark-bg .text-muted, #results .muted, #results .text-muted,
.footer .muted, .footer .text-muted, .footer .form-consent {
   color: #c6d6dc !important;
}
.results-note {
   color: #cfe0e4 !important;
}

/* 4) flydende Sig hej: INDE i header-baren, over den */
.float-hej {
   top: .65rem;
   z-index: 1300;
}

/* 5) link-understreger maa ikke vaere laengere end teksten */
.contact-info a, .footer a, .form-consent a {
   display: inline;
   padding: 0;
}

/* 6) formular-gitter: lige felter, lige raekker */
.form-grid {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 1.15rem 1.25rem;
   align-items: start;
}
.form-cell {
   display: flex;
   flex-direction: column;
}
.form-cell textarea {
   min-height: 130px;
   width: 100%;
   box-sizing: border-box;
}
.form-actions {
   display: flex;
   flex-direction: column;
   align-items: stretch;
   gap: .85rem;
   margin-top: 1.35rem;
}
.contact-submit {
   width: 100%;
   text-align: center;
}

/* 7) hero-tags tydeligere */
.hero-chips span {
   color: #d7e6ea;
   border-color: rgba(255, 255, 255, .38);
}

/* 8) statkort ens hoejde + chart-labels klippes ikke */
#results .counters {
   display: flex;
   flex-direction: column;
   gap: 1rem;
}
#results .counter-card {
   flex: 1;
}
.chart-card, .chart-card svg {
   overflow: visible;
}
.field-error:empty { min-height: 0; height: 0; margin: 0; }
.form-grid { grid-auto-rows: min-content; }
/* ============ DESIGNSYSTEM 2026-10-04: ét gitter, ét kort-system ============ */

/* whyUs: rigtigt grid, brede kort, ingen fantom-skinne */
.why-grid {
   display: grid !important;
   grid-template-columns: 1fr 1fr;
   gap: 1.5rem;
   width: 100%;
   justify-content: stretch !important;
}
.why-card {
   width: auto !important;
   display: grid !important;
   grid-template-columns: 5.75rem 1fr;
   gap: .75rem 1.35rem;
   align-items: start;
}
.why-card .icon-tile {
   grid-column: 1;
   grid-row: 1;
}
.why-card .eyebrow, .why-card .card-eyebrow, .why-card .svc-eyebrow {
   grid-column: 2;
   grid-row: 1;
}
.why-card h3, .why-card h4 {
   grid-column: 2;
   grid-row: 2;
   margin: 0;
}
.why-card p {
   grid-column: 2;
   grid-row: 3;
}

/* hero: én skrift, gylden CTA-hierarki, ren baggrund */
.title-intro {
   font-family: 'Open Sans', 'Montserrat', Arial, sans-serif !important;
   font-weight: 800;
   letter-spacing: -.015em;
   line-height: 1.06;
}
#hero .hero-actions .but:first-child {
   background: #e0a83c !important;
   color: #16242b !important;
   font-weight: 700;
}
#hero .hero-actions .but:first-child:hover {
   background: #f0bb55 !important;
}
#hero canvas {
   display: none !important;
}

/* SERP-kortet: realistiske rækker */
.hero-anim-results {
   display: flex;
   flex-direction: column;
   gap: .75rem;
}
.ha-res {
   display: flex;
   align-items: center;
   gap: .85rem;
}
.ha-col {
   display: flex;
   flex-direction: column;
   gap: .42rem;
   flex: 1;
   min-width: 0;
}
.ha-title {
   color: #e8f2f4;
   font-size: .92rem;
   font-weight: 600;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
}
.ha-url {
   color: #8fd3d8;
   font-size: .78rem;
}
.ha-line {
   display: block;
   height: .55rem;
   border-radius: .35rem;
   background: rgba(255, 255, 255, .13);
}
.ha-line.w70 { width: 70%; }
.ha-line.w60 { width: 60%; }
.ha-line.w45 { width: 45%; }
.ha-line.w35 { width: 35%; }
.ha-badge {
   cursor: default;
   box-shadow: none;
}

/* header i samme gitter som indholdet */
.block-outer-nav {
   padding-left: max(1.5rem, calc((100% - 1170px) / 2));
   padding-right: max(1.5rem, calc((100% - 1170px) / 2));
}
/* ============ RENSKRIVNING: rigtige selektorer ============ */

/* whyUs: kolonne-wrapperne maa ikke skrumpe kortene */
#whyUs .why-grid, .why-grid {
   display: grid !important;
   grid-template-columns: 1fr 1fr;
   gap: 1.5rem;
   margin-left: 0 !important;
   margin-right: 0 !important;
}
.why-grid > [class*="col-"] {
   width: 100% !important;
   max-width: 100% !important;
   padding: 0 !important;
   margin: 0 !important;
   float: none !important;
}
.why-card {
   height: 100%;
   width: auto !important;
   max-width: none !important;
   display: grid !important;
   grid-template-columns: 5.75rem 1fr;
   gap: .75rem 1.35rem;
   align-items: start;
}
.why-card .icon-tile { grid-column: 1; grid-row: 1; }
.why-card .eyebrow, .why-card .card-eyebrow, .why-card .svc-eyebrow {
   grid-column: 2; grid-row: 1;
}
.why-card h3, .why-card h4 {
   grid-column: 2; grid-row: 2; margin: 0;
}
.why-card p {
   grid-column: 2; grid-row: 3;
}

/* hero: rigtige selektorer (.inner-hero / #titleIntro) */
#titleIntro, .inner-hero h1 {
   color: #f3d9a4 !important;
   -webkit-text-fill-color: #f3d9a4 !important;
   background-image: none !important;
   font-family: 'Open Sans', 'Montserrat', Arial, sans-serif !important;
   font-weight: 800;
   letter-spacing: -.015em;
   line-height: 1.06;
}
.hero-actions .but:first-child, .inner-hero .hero-actions .but:first-child {
   background: #e0a83c !important;
   color: #16242b !important;
   font-weight: 700;
}
.hero-actions .but:first-child:hover {
   background: #f0bb55 !important;
}
.inner-hero canvas, .main-slider canvas, .slides canvas {
   display: none !important;
}

/* SERP-rækker: dæmpede titler på 2/3 */
.ha-title.dim {
   color: #9fb4bb;
   font-weight: 500;
}
.ha-res .ha-col {
   display: flex;
   flex-direction: column;
   gap: .42rem;
   flex: 1;
   min-width: 0;
}

.why-card .why-icon { width: 5.25rem; height: 5.25rem; }
canvas { display: none !important; }

.why-card .why-icon { grid-column: 1; grid-row: 1 / span 2; align-self: start; }
.why-card h3, .why-card h4 { grid-column: 2; grid-row: 1 !important; }
.why-card p { grid-column: 2; grid-row: 2 !important; }
#whyUs .why-grid > [class*='col-']:not(:has(.why-card)) { display: none !important; }

.why-grid::before, .why-grid::after { display: none !important; content: none !important; }
/* ===== Scroll: block-outer-nav fade helt ud, HEJ-knap urørt ===== */
.block-logo,
.main-navigation-toggle,
label[for="page-nav-toggle"],
.main-navigation,
.main-nav-scrollable {
   transition: opacity .35s ease, visibility .35s;
}
body.nav-faded .block-logo,
body.nav-faded .main-navigation-toggle,
body.nav-faded label[for="page-nav-toggle"],
body.nav-faded .main-navigation,
body.nav-faded .main-nav-scrollable {
   opacity: 0;
   visibility: hidden;
   pointer-events: none;
}
body.nav-faded .block-outer-nav,
body.nav-faded .block-nav {
   background-color: transparent !important;
   box-shadow: none !important;
   border: none !important;
}
body.nav-faded .block-outer-nav .sig-hej-btn {
   opacity: 1 !important;
   visibility: visible !important;
   pointer-events: auto !important;
}/* ===== Rettelse: logo + Sig hej bliver altid; menu KUN i toppen ===== */

/* logoet maa aldrig forsvinde */
body.nav-faded .block-logo {
   opacity: 1 !important;
   visibility: visible !important;
   pointer-events: auto !important;
}

/* knappen maa aldrig forsvinde (bekraeftet af tidligere regel, dobbelt sikret) */
body.nav-faded .block-outer-nav .sig-hej-btn {
   opacity: 1 !important;
   visibility: visible !important;
   pointer-events: auto !important;
}

/* mobil: burgeren skal blive, saa navigation altid er mulig */
@media (max-width: 990px) {
   body.nav-faded label[for="page-nav-toggle"] {
      opacity: 1 !important;
      visibility: visible !important;
      pointer-events: auto !important;
   }
}/* ===== Header: ingen baggrund/dropshadow; synlighed paa lyse sider ===== */

/* fjern baggrundsfarve, baggrund og dropshadow fra headeren (alle sider) */
.block-outer-nav, .block-nav, .block-nav.sticky-nav, .header-white-backanimation {
   background: none !important;
   background-color: transparent !important;
   background-image: none !important;
   box-shadow: none !important;
   border: none !important;
}

/* lyse sider: farvet logo + moerke links, saa alt er synligt */
.block-outer-nav.hdr-on-light .logo-image {
   background-image: url("../img/logo/logo.png") !important;
}
.block-outer-nav.hdr-on-light .main-nav li a,
.block-outer-nav.hdr-on-light .main-nav-scrollable li a,
.block-outer-nav.hdr-on-light .main-navigation li a {
   color: #2f6b70 !important;
}
.block-outer-nav.hdr-on-light .main-nav li a:hover,
.block-outer-nav.hdr-on-light .main-nav-scrollable li a:hover,
.block-outer-nav.hdr-on-light .main-navigation li a:hover {
   color: #1d4f54 !important;
}
.main-nav-scrollable, .main-nav-scrollable ul, .main-navigation {
   background: none !important;
   background-color: transparent !important;
   box-shadow: none !important;
   border: none !important;
}
/* ===== MOBIL-MENU REPARATION ===== */

/* 1) skuffen maa ALTID kunne vises naar den er aaben (ogsaa i nav-faded) */
body.nav-faded .main-navigation-toggle:checked ~ .main-navigation {
   opacity: 1 !important;
   visibility: visible !important;
   pointer-events: auto !important;
}

/* 2) paa mobil skal toggle + label altid vaere aktive */
@media (max-width: 990px) {
   body.nav-faded .main-navigation-toggle {
      opacity: 1 !important;
      visibility: visible !important;
      pointer-events: auto !important;
   }
}

/* 3) skuffen har ALTID moerk baggrund -> links ALTID lyse, uanset side */
.main-navigation li a,
.block-outer-nav.hdr-on-light .main-navigation li a {
   color: #ffffff !important;
}
.main-navigation li a:hover,
.block-outer-nav.hdr-on-light .main-navigation li a:hover {
   color: #8fd3d8 !important;
}

/* 4) bevar skuffens egen slide-transition (blev overskrevet af fade) */
.main-navigation {
   transition: transform calc(1s / 4), opacity .35s ease, visibility .35s;
}
.block-outer-nav, .block-nav { will-change: auto !important; }
