.alfa-v2 {
 --alfa: var(--primary); --alfa-contrast: var(--primary-contrast);
 --bravo: var(--secondary); --bravo-contrast: var(--secondary-contrast);
 --charlie: var(--accent); --charlie-contrast: var(--accent-contrast);
 --border-radius: var(--radius); --rounded: var(--radius); --box-shadow: var(--shadow);
 --delta: var(--secondary-contrast); --gray: #888; --light: #f8f9fa; --dark: #212529;
 font-family: var(--font-body, system-ui, sans-serif);
}
.alfa-v2 h1, .alfa-v2 h2, .alfa-v2 h3, .alfa-v2 h4 { font-family: var(--font-heading, system-ui, sans-serif); }
.alfa-v2 :is(.gf-legacy-faq, .gf-faq) { max-width: var(--container-width); margin-inline: auto; }
.alfa-v2 .gf-legacy-prices .section > h2, .alfa-v2 .gf-legacy-prices .section > .description,
.alfa-v2 .gf-prices > .row > .section-title, .alfa-v2 .gf-prices > .row > .section-description { text-align: center; }
.alfa-v2 .gf-menu > .row > .section-title, .alfa-v2 .gf-menu > .row > .section-description { text-align: center; }
.alfa-v2 .gf-menu > .row { margin-inline: 0; }
.alfa-v2 .gf-menu > .row > .section-description { margin-bottom: 2rem; }
.alfa-v2 .gf-card-menu-item { display: flex; flex-direction: column; gap: 1rem; }
.alfa-v2 .gf-card-menu-item .image { width: 150px; flex-shrink: 0; }
.alfa-v2 .gf-card-menu-item .image img { width: 100%; height: auto; border-radius: var(--border-radius); }
.alfa-v2 .gf-card-menu-item .content { flex: 1; min-width: 0; }
.alfa-v2 .gf-card-menu-item .heading { display: flex; align-items: center; gap: 1rem; }
.alfa-v2 .gf-card-menu-item .title { min-width: 0; font-weight: 700; }
.alfa-v2 .gf-card-menu-item .separator { flex: 1; min-width: 1rem; border-bottom: 1px solid currentColor; }
.alfa-v2 .gf-card-menu-item .price { flex-shrink: 0; white-space: nowrap; font-weight: 700; }
.alfa-v2 .gf-card-menu-item .description > :last-child { margin-bottom: 0; }
@media (min-width: 768px) { .alfa-v2 .gf-card-menu-item { flex-direction: row; } }
.alfa-v2 #hero .hero-actions { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 1rem; }
.alfa-v2 #hero .hero-actions .gf-actions { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin: 0 !important; }
.alfa-v2 #hero .hero-actions > .btn, .alfa-v2 #hero .hero-actions .gf-actions > .button { margin: 0; }
.gf-alfa-collection .image img { width: 100%; height: 220px; object-fit: cover; }
.gf-alfa-collection .card { height: 100%; overflow: hidden; }
.gf-card-product { position: relative; isolation: isolate; }
.gf-card-product .card-link::after { content: ""; position: absolute; inset: 0; z-index: 2; }
.gf-card-product .card-link:focus-visible::after { outline: 3px solid currentColor; outline-offset: -3px; }
.gf-card-product .content :is(a:not(.card-link),button,summary) { position: relative; z-index: 3; }
.gf-alfa-collection .cptslideshow .item { padding-inline: 12px; }
.gf-company-information .address { font-style: normal; }
.gf-company-information .social { display: inline-block; margin-inline-end: 1rem; }
.gf-integration iframe { width: 100%; border: 0; }
.alfa-v2 #cta-nav .gf-actions { display: inline-flex; align-items: center; margin: 0 !important; }
.alfa-v2 #cta-nav .gf-actions .button { background: transparent !important; color: inherit !important; border: 0; border-radius: 0; box-shadow: none; min-width: 80px; min-height: 54px; max-width: none; font-size: .8rem; margin: 0; padding: .5rem !important; }
.alfa-v2 #cta-nav .gf-actions .button:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.alfa-v2 #cta-nav .gf-actions .button .icon { font-size: 1rem; line-height: 1.5; }
.alfa-v2 .gf-actions .button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; }
.alfa-v2 .gf-legacy-review-card time { display: block; }
.alfa-v2 .gf-actions[data-alignment] { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.alfa-v2 .gf-actions[data-alignment="left"] { justify-content: flex-start; }
.alfa-v2 .gf-actions[data-alignment="center"] { justify-content: center; }
.alfa-v2 .gf-actions[data-alignment="right"] { justify-content: flex-end; }
.gf-collection-navigation { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-bottom: 1.5rem; }
.gf-collection-navigation .link { display: inline-block; padding: .5rem .75rem; border-radius: .375rem; background: var(--primary); color: var(--primary-contrast); text-decoration: none; }
.gf-collection-navigation select { max-width: 100%; padding: .5rem .75rem; border: 1px solid #ced4da; border-radius: .375rem; }
.gf-alfa-collection [id^="gf-section-"], .gf-faq [id^="gf-section-"] { scroll-margin-top: 6rem; }

.gf-post-metadata table { width: 100%; border-collapse: collapse; }
.gf-post-metadata th, .gf-post-metadata td { padding: .75rem 1rem; border-bottom: 1px solid #e5e7eb; text-align: left; }
.gf-post-metadata th { width: 35%; font-weight: 600; }
.gf-legacy-overview > .row, .gf-legacy-taxonomy > .row, .gf-legacy-recommendations > .row, .gf-legacy-prices > .row { margin-inline: 0; }
.gf-legacy-review-card .billede { flex: 0 0 35%; }
.gf-legacy-review-card .billede img { width: 100%; height: 100%; object-fit: cover; }
.gf-legacy-review-card .name { color: inherit; }
.gf-legacy-price-item .image { width: 120px; }
.gf-legacy-price-item .separator { border-bottom: 1px dotted currentColor; }
.alfa-v2 .gf-collection-navigation { background: transparent; }
.alfa-v2 .gf-collection-navigation .link { border-radius: var(--border-radius); }
.alfa-v2 .gf-legacy-faq .accordion { border-radius: var(--border-radius); overflow: hidden; }
.alfa-v2 .gf-legacy-faq .accordion-item { border: 0; border-radius: 0; background-color: var(--bravo); }
.alfa-v2 .gf-legacy-faq .section + .accordion-item { border-top-left-radius: var(--border-radius) !important; border-top-right-radius: var(--border-radius) !important; }
.alfa-v2 .gf-legacy-faq .accordion-item:has(+ .section), .alfa-v2 .gf-legacy-faq .accordion-item:last-child { border-bottom-left-radius: var(--border-radius) !important; border-bottom-right-radius: var(--border-radius) !important; }
.alfa-v2 .gf-legacy-faq .accordion-item + .accordion-item { border-top: 1px solid currentColor; }
.alfa-v2 .gf-legacy-faq .accordion-button { border: 0; box-shadow: none; }
.alfa-v2 .gf-legacy-faq .section { scroll-margin-top: 7rem; }
.alfa-v2 .cptslideshow { position: relative; margin: 0 0 3rem; padding-bottom: 2.5rem; max-width: 100%; min-width: 0; }
.alfa-v2 .cptslideshow .slick-list { overflow: hidden; margin: 0; padding-block: 24px; }
.alfa-v2 .cptslideshow .slick-track { display: flex; align-items: stretch; }
.alfa-v2 .cptslideshow .slick-slide { padding-inline: 12px; box-sizing: border-box; height: auto !important; float: none; flex: 0 0 auto; display: flex; flex-direction: column; }
.alfa-v2 .cptslideshow .slick-slide > .card, .alfa-v2 .cptslideshow .slick-slide > .gf-review-slide { flex: 1; }
.alfa-v2 .cptslideshow .item:not(.slick-slide) { padding-inline: 0; min-width: 0; }
.alfa-v2 .cptslideshow > .slick-arrow { bottom: 0; }
.alfa-v2 .gf-review-slide .portrait { width: 75px; height: 75px; aspect-ratio: 1; object-fit: cover; flex: 0 0 75px; }
.alfa-v2 .gf-review-slide .name { color: inherit; }
.alfa-v2 [data-alfa-review-target] { cursor: pointer; }
.alfa-v2 .gf-card-recommendation .name { color: inherit; }
.alfa-v2 .gf-review-modal .portrait { flex: 0 0 40%; }
.alfa-v2 .gf-review-modal .portrait img { aspect-ratio: 1; height: auto; object-fit: cover; }
.alfa-v2 .gf-legacy-employee-card .portrait { width: 100%; aspect-ratio: 2 / 3; height: auto; object-fit: cover; }
.alfa-v2 .gf-card-employee .image img, .alfa-v2 .gf-legacy-employee-card .portrait { width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: cover; object-position: center; }
.alfa-v2 .gf-products > .row { margin-inline: 0; }
.alfa-v2 .gf-product-navigation { display: block; }
.alfa-v2 .gf-product-navigation .title { margin-bottom: 1rem; }
.alfa-v2 .gf-product-navigation .category-list, .alfa-v2 .gf-product-navigation .children { list-style: none; padding-left: 0; }
.alfa-v2 .gf-product-navigation .children { padding-left: 1rem; }
.alfa-v2 .gf-product-navigation .children > li { opacity: .6; }
.alfa-v2 .gf-product-navigation .children > li:hover { opacity: 1; }
.alfa-v2 .gf-product-navigation .children > li::before { content: "— "; }
.alfa-v2 .gf-product-navigation .category-list a { display: inline-block; padding-block: .25rem; }
.alfa-v2 .gf-product-navigation select { width: 100%; }
.alfa-v2 .gf-special-hours, .alfa-v2 .gf-week-hours { width: 100%; border-collapse: collapse; }
.alfa-v2 .gf-special-hours td, .alfa-v2 .gf-week-hours td { padding: .35rem .5rem; }
.alfa-v2 .gf-week-hours td { font-weight: 400; border-bottom: 1px solid var(--bs-border-color, currentColor); }
.alfa-v2 .gf-opening-trigger > .link { color: inherit; padding: 0; border: 0; background: none; font: inherit; }
.alfa-v2 #cta-nav { overflow-x: auto; }
.alfa-v2 #cta-nav .gf-opening-trigger, .alfa-v2 #cta-nav .gf-legacy-action { display: inline-flex; align-items: center; min-height: 54px; }
.alfa-v2 #cta-nav .gf-legacy-action > a { font-size: .8rem; max-width: none; padding: .5rem !important; margin: 0; white-space: nowrap; }
.alfa-v2 #cta-nav .gf-legacy-action > a > i { display: block; margin-inline-end: 0 !important; }
.alfa-v2 #cta-nav .gf-opening-trigger > .link { text-align: center; }
.alfa-v2 #cta-nav .gf-opening-trigger > .link > i { display: block; }
.alfa-v2 #cta-nav .gf-opening-trigger .label, .alfa-v2 #cta-nav .cta-nav-item .small { font-size: .8rem; }
.alfa-v2 .gf-image-lightbox .modal-body { padding: 1rem; text-align: center; }
.alfa-v2 .gf-image-lightbox .image { max-width: 100%; max-height: 75vh; width: auto; height: auto; object-fit: contain; }
.alfa-v2 .gf-image-lightbox .close { position: absolute; top: 1rem; right: 1rem; z-index: 2; padding: .75rem; border-radius: 50%; background-color: #fff; box-shadow: 0 0 0 1px rgba(0, 0, 0, .15); }
.alfa-v2 .gf-card-price-slide { display: flex; flex-direction: column; }
.alfa-v2 .gf-card-price-slide .image img { width: 100%; height: 100%; object-fit: cover; }
.alfa-v2 .gf-card-price-slide .image > a { display: block; }
.alfa-v2 .gf-card-price-slide .content { flex: 1; min-height: 165px; }
.alfa-v2 .gf-card-price-slide .price { margin-top: auto; }
.alfa-v2 .gf-events > .row { margin-inline: 0; }
.alfa-v2 .gf-card-event { background: var(--bravo); color: var(--bravo-contrast); box-shadow: none; border-radius: var(--border-radius); overflow: hidden; }
.alfa-v2 .gf-card-event > .link { display: block; color: inherit; text-decoration: none; }
.alfa-v2 .gf-timeline { max-width: var(--container-width); margin-inline: auto; }
.alfa-v2 .gf-timeline .timeline { list-style: none; border-inline-start: 1px solid var(--alfa); padding-inline-start: 2rem; }
.alfa-v2 .gf-timeline .timeline-item { position: relative; margin-bottom: 3rem; }
.alfa-v2 .gf-timeline .timeline-item:last-child { margin-bottom: 0; }
.alfa-v2 .gf-timeline .timeline-item::before { content: ""; position: absolute; top: 13px; inset-inline-start: calc(-2rem - 6px); width: 11px; height: 11px; background: var(--alfa); border-radius: 50%; }
.alfa-v2 .gf-timeline .timeline-item:hover::before { transform: scale(1.25); }
.alfa-v2 .gf-timeline .time { margin-bottom: .4rem; }
.alfa-v2 .marquee { --marquee-gap: 1.5em; width: var(--alfa-marquee-width, 100%); max-width: var(--alfa-marquee-width, 100%); margin-inline: calc((100% - var(--alfa-marquee-width, 100%)) / 2); overflow: hidden; white-space: nowrap; }
.alfa-v2 .wp-block-column .marquee { width: 100%; max-width: 100%; margin-inline: 0; }
.alfa-v2 .marquee .marquee-track, .alfa-v2 .marquee .marquee-group { display: flex; align-items: center; gap: var(--marquee-gap); width: max-content; }
.alfa-v2 .marquee .marquee-track { animation: alfa-marquee var(--marquee-duration, 30s) linear infinite; will-change: transform; }
.alfa-v2 .marquee .marquee-item, .alfa-v2 .marquee .marquee-group { flex: 0 0 auto; }
@keyframes alfa-marquee { to { transform: translate3d(var(--marquee-distance, calc(-50% - var(--marquee-gap) / 2)), 0, 0); } }
@media (prefers-reduced-motion: reduce) { .alfa-v2 .marquee { white-space: normal; } .alfa-v2 .marquee .marquee-track { animation: none; transform: none; } .alfa-v2 .marquee .marquee-group[aria-hidden="true"], .alfa-v2 .marquee .marquee-item[aria-hidden="true"] { display: none; } }
.alfa-v2 .gf-legacy-action .booking, .alfa-v2 .gf-actions .booking { width: 100%; height: 75dvh; border: 0; }
.alfa-v2 .skrivemaskine-cursor { animation: alfa-cursor .8s steps(1) infinite; }
@keyframes alfa-cursor { 50% { opacity: 0; } }
.alfa-v2 .scroll-text .char { opacity: .2; transition: opacity .15s; }
.alfa-v2 .parallax-image.is-parallax-ready .wp-block-media-text__media { position: relative; overflow: hidden; }
.alfa-v2 .parallax-image.is-parallax-ready .wp-block-media-text__media img { opacity: 0; }
.alfa-v2 .parallax-image .parallax-image-bg { position: absolute; inset: -100px 0; background-size: cover; background-position: center; pointer-events: none; }
@media (max-width: 991px) { .alfa-v2 { padding-bottom: 85px; } .alfa-v2 #cta-nav { display: block !important; } }
@media (prefers-reduced-motion: reduce) { .alfa-v2 .scroll-text .char { opacity: 1 !important; transition: none; } .alfa-v2 .skrivemaskine-cursor { animation: none; } }
.alfa-v2 .gf-taxonomy .cptslideshow .gf-card-term .excerpt, .alfa-v2 .gf-legacy-taxonomy .cptslideshow .excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.gf-company-information .facts { margin-block: 1.5rem; }
.gf-company-information .facts summary { cursor: pointer; font-weight: 600; }
.gf-company-information .facts dl { margin-block: 1rem; }
.gf-company-information .facts dt { font-weight: 600; }
.gf-company-information .facts dd { margin: 0 0 1rem; overflow-wrap: anywhere; }
.gf-company-information .facts figure { margin-block: 1rem; }
.gf-company-information .facts img { max-width: 100%; height: auto; }


.gf-company-information p,
.gf-company-information address {
    margin-bottom: .3rem;
}
@media (min-width: 768px) { .gf-recommendations.has-single .gf-card-recommendation { display: flex; flex-direction: row; align-items: stretch; } .gf-recommendations.has-single .gf-card-recommendation > .image { flex: 0 0 30%; width: 30%; order: 0; } .gf-recommendations.has-single .gf-card-recommendation > .image img { width: 100%; height: 100%; object-fit: cover; } .gf-recommendations.has-single .gf-card-recommendation > .content { flex: 1; min-width: 0; order: 1; } }
