@font-face { font-family: 'Outfit'; font-display: swap; src: local('Outfit'); }
@font-face { font-family: 'Inter';  font-display: swap; src: local('Inter');  } :root { --color-primary:      #0B4F7A;
--color-primary-dark: #083d61;
--color-primary-light:#1a6fa0;
--color-secondary:    #35B6C9;
--color-accent:       #D9B67A;
--color-red:          #E03131; --color-bg:           #F8FBFD;
--color-bg-alt:       #EEF5FA;
--color-white:        #FFFFFF;
--color-text:         #1F2933;
--color-text-light:   #637381;
--color-text-muted:   #9aacb8;
--color-border:       #DDE7EF; --color-footer-bg:    #0d1c2b;
--color-footer-text:  #a8bfd0;
--color-footer-head:  #FFFFFF; --font-heading: 'Outfit', sans-serif;
--font-body:    'Inter', sans-serif; --space-xs:  0.25rem;
--space-sm:  0.5rem;
--space-md:  1rem;
--space-lg:  1.5rem;
--space-xl:  2.5rem;
--space-2xl: 4rem;
--space-3xl: 6rem; --radius-sm:  6px;
--radius-md:  12px;
--radius-lg:  20px;
--radius-xl:  28px;
--radius-full: 9999px; --shadow-sm:  0 1px 4px rgba(11,79,122,0.07);
--shadow-md:  0 4px 16px rgba(11,79,122,0.10);
--shadow-lg:  0 8px 32px rgba(11,79,122,0.14);
--shadow-xl:  0 16px 56px rgba(11,79,122,0.18); --trans-fast:   0.15s ease;
--trans-base:   0.25s ease;
--trans-slow:   0.4s ease; --container-max: 1200px;
--container-pad: 1.5rem; --header-h:    76px;
--topbar-h:    40px;
} *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html {
font-size: 16px;
scroll-behavior: smooth;
-webkit-text-size-adjust: 100%;
}
body {
font-family: var(--font-body);
color: var(--color-text);
background: var(--color-bg);
line-height: 1.6;
overflow-x: hidden;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
img {
max-width: 100%;
height: auto;
display: block;
}
a {
color: inherit;
text-decoration: none;
}
ul, ol { list-style: none; }
button {
cursor: pointer;
border: none;
background: none;
font-family: inherit;
} .sr-only {
position: absolute;
width: 1px; height: 1px;
padding: 0; margin: -1px;
overflow: hidden;
clip: rect(0,0,0,0);
white-space: nowrap;
border: 0;
} :focus-visible {
outline: 3px solid var(--color-secondary);
outline-offset: 3px;
border-radius: 4px;
} .container {
max-width: var(--container-max);
margin-inline: auto;
padding-inline: var(--container-pad);
} .btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.5rem;
padding: 0.75rem 1.75rem;
border-radius: var(--radius-md);
font-family: var(--font-heading);
font-weight: 600;
font-size: 0.95rem;
letter-spacing: 0.01em;
transition: all var(--trans-base);
white-space: nowrap;
}
.btn--primary {
background: var(--color-primary);
color: var(--color-white);
box-shadow: 0 4px 14px rgba(11,79,122,0.3);
}
.btn--primary:hover {
background: var(--color-primary-dark);
transform: translateY(-1px);
box-shadow: 0 6px 20px rgba(11,79,122,0.38);
}
.btn--outline {
background: var(--color-white);
color: var(--color-primary);
border: 2px solid var(--color-primary);
}
.btn--outline:hover {
background: var(--color-primary);
color: var(--color-white);
transform: translateY(-1px);
}
.btn--outline-blue {
background: transparent;
color: var(--color-secondary);
border: 2px solid var(--color-secondary);
border-radius: var(--radius-full);
padding: 0.65rem 1.5rem;
}
.btn--outline-blue:hover {
background: var(--color-secondary);
color: var(--color-white);
}
.btn--red {
background: var(--color-red);
color: var(--color-white);
border-radius: var(--radius-sm);
padding: 0.7rem 1.4rem;
font-size: 0.9rem;
box-shadow: 0 4px 14px rgba(224,49,49,0.35);
}
.btn--red:hover {
filter: brightness(1.08);
transform: translateY(-1px);
} .section-header {
display: flex;
align-items: center;
gap: 1rem;
margin-bottom: 2rem;
justify-content: center;
}
.section-header__line {
flex: 1;
max-width: 120px;
height: 1px;
background: linear-gradient(to right, transparent, var(--color-border));
}
.section-header__line:last-child {
background: linear-gradient(to left, transparent, var(--color-border));
}
.section-title {
font-family: var(--font-heading);
font-size: clamp(1.4rem, 3vw, 1.75rem);
font-weight: 700;
color: var(--color-primary);
text-align: center;
white-space: nowrap;
}
.section-cta {
display: flex;
justify-content: center;
margin-top: 2rem;
} .topbar {
background: var(--color-primary);
color: rgba(255,255,255,0.9);
font-size: 0.78rem;
height: var(--topbar-h);
display: flex;
align-items: center;
}
.topbar__inner {
max-width: var(--container-max);
margin-inline: auto;
padding-inline: var(--container-pad);
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
}
.topbar__left,
.topbar__right {
display: flex;
align-items: center;
gap: 1.5rem;
}
.topbar__item {
display: flex;
align-items: center;
gap: 0.4rem;
white-space: nowrap;
opacity: 0.92;
}
.topbar__link {
display: flex;
align-items: center;
gap: 0.4rem;
color: inherit;
opacity: 0.88;
transition: opacity var(--trans-fast);
}
.topbar__link:hover { opacity: 1; } .header {
position: sticky;
top: 0;
z-index: 1000;
background: var(--color-white);
height: var(--header-h);
box-shadow: 0 2px 12px rgba(11,79,122,0.08);
transition: box-shadow var(--trans-base);
}
.header--scrolled {
box-shadow: 0 4px 24px rgba(11,79,122,0.14);
}
.header__inner {
max-width: var(--container-max);
margin-inline: auto;
padding-inline: var(--container-pad);
height: 100%;
display: flex;
align-items: center;
gap: 1.5rem;
} .header__logo {
display: flex;
align-items: center;
gap: 0.6rem;
flex-shrink: 0;
}
.logo__text {
display: flex;
flex-direction: column;
line-height: 1.2;
}
.logo__name {
font-family: var(--font-heading);
font-size: 1.05rem;
font-weight: 700;
color: var(--color-primary);
}
.logo__tagline {
font-size: 0.7rem;
color: var(--color-text-light);
font-weight: 400;
} .header__nav {
flex: 1;
display: flex;
justify-content: center;
}
.nav__list {
display: flex;
align-items: center;
gap: 0.25rem;
}
.nav__link {
display: flex;
align-items: center;
gap: 0.25rem;
padding: 0.5rem 0.75rem;
font-size: 0.88rem;
font-weight: 500;
color: var(--color-text);
border-radius: var(--radius-sm);
transition: all var(--trans-fast);
white-space: nowrap;
}
.nav__link:hover,
.nav__item--active .nav__link {
color: var(--color-primary);
background: var(--color-bg-alt);
}  .nav__list li.menu-item-has-children { position: relative; }
.nav__list li.menu-item-has-children > a::after {
content: '';
display: inline-block;
width: 6px; height: 6px;
border-right: 1.5px solid currentColor;
border-bottom: 1.5px solid currentColor;
transform: rotate(45deg);
margin-left: 3px;
margin-top: -3px;
transition: transform var(--trans-fast);
}
.nav__list li.menu-item-has-children:hover > a::after,
.nav__list li.menu-item-has-children:focus-within > a::after {
transform: rotate(225deg);
margin-top: 3px;
}
.nav__list .sub-menu {
position: absolute;
top: 100%;
left: 0;
min-width: 220px;
margin-top: 0.5rem;
background: var(--color-white);
border: 1px solid var(--color-border);
border-radius: var(--radius-md);
box-shadow: var(--shadow-md);
padding: 0.5rem;
list-style: none;
opacity: 0;
visibility: hidden;
transform: translateY(6px);
transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
z-index: 200;
}
.nav__list li.menu-item-has-children:hover > .sub-menu,
.nav__list li.menu-item-has-children:focus-within > .sub-menu {
opacity: 1;
visibility: visible;
transform: translateY(0);
}
.nav__list .sub-menu a {
display: block;
padding: 0.6rem 0.85rem;
border-radius: var(--radius-sm);
font-size: 0.85rem;
font-weight: 500;
color: var(--color-text);
white-space: nowrap;
}
.nav__list .sub-menu a:hover { background: var(--color-bg-alt); color: var(--color-primary); } .mobile-nav li.menu-item-has-children { position: relative; }
.mobile-nav li.menu-item-has-children > a { padding-right: 2.5rem; }
.mobile-nav .submenu-toggle {
position: absolute;
top: 0; right: 0;
width: 48px; height: 100%;
display: flex; align-items: center; justify-content: center;
background: none; border: none; border-left: 1px solid var(--color-border);
color: var(--color-text-light);
cursor: pointer;
}
.mobile-nav .submenu-toggle svg { transition: transform var(--trans-base); }
.mobile-nav li.menu-item-has-children.is-open > .submenu-toggle svg { transform: rotate(180deg); }
.mobile-nav .sub-menu {
list-style: none;
max-height: 0;
overflow: hidden;
background: var(--color-bg-alt);
transition: max-height var(--trans-base);
}
.mobile-nav li.menu-item-has-children.is-open > .sub-menu { max-height: 500px; }
.mobile-nav .sub-menu a { padding-left: 2.5rem !important; font-size: 0.9rem; } .header__phone {
display: flex;
align-items: center;
gap: 0.6rem;
padding: 0.5rem 1.1rem;
border: 2px solid var(--color-primary);
border-radius: var(--radius-md);
color: var(--color-primary);
flex-shrink: 0;
transition: all var(--trans-base);
}
.header__phone:hover {
background: var(--color-primary);
color: var(--color-white);
}
.phone__icon {
display: flex;
align-items: center;
justify-content: center;
width: 32px; height: 32px;
background: var(--color-bg-alt);
border-radius: 50%;
transition: background var(--trans-base);
flex-shrink: 0;
}
.header__phone:hover .phone__icon {
background: rgba(255,255,255,0.2);
}
.phone__text {
display: flex;
flex-direction: column;
line-height: 1.2;
}
.phone__label {
font-size: 0.68rem;
font-weight: 500;
opacity: 0.75;
}
.phone__number {
font-family: var(--font-heading);
font-size: 0.9rem;
font-weight: 700;
} .header__burger {
display: none;
flex-direction: column;
gap: 5px;
padding: 8px;
border-radius: var(--radius-sm);
transition: background var(--trans-fast);
margin-left: auto;
}
.header__burger:hover { background: var(--color-bg-alt); }
.header__burger span {
display: block;
width: 22px; height: 2px;
background: var(--color-text);
border-radius: 2px;
transition: all var(--trans-base);
}
.header__burger[aria-expanded="true"] span:nth-child(1) {
transform: translateY(7px) rotate(45deg);
}
.header__burger[aria-expanded="true"] span:nth-child(2) {
opacity: 0; transform: scaleX(0);
}
.header__burger[aria-expanded="true"] span:nth-child(3) {
transform: translateY(-7px) rotate(-45deg);
} .mobile-nav {
position: fixed;
top: var(--header-h);
left: 0; right: 0;
background: var(--color-white);
z-index: 999;
transform: translateY(-100%);
opacity: 0;
pointer-events: none;
transition: all var(--trans-base);
box-shadow: var(--shadow-lg);
border-top: 1px solid var(--color-border);
}
.mobile-nav--open {
transform: translateY(0);
opacity: 1;
pointer-events: auto;
}
.mobile-nav ul {
padding: 1rem;
}
.mobile-nav li a {
display: block;
padding: 0.85rem 1rem;
font-weight: 500;
border-radius: var(--radius-sm);
color: var(--color-text);
border-bottom: 1px solid var(--color-border);
transition: all var(--trans-fast);
}
.mobile-nav li:last-child a { border-bottom: none; }
.mobile-nav li a:hover {
background: var(--color-bg-alt);
color: var(--color-primary);
padding-left: 1.4rem;
}
.mobile-nav__phone a {
color: var(--color-primary) !important;
font-weight: 700 !important;
font-size: 1.05rem;
text-align: center;
} .hero {
position: relative;
min-height: 580px;
display: flex;
flex-direction: column;
background: #0B2D44;
}
.hero__bg {
position: absolute;
inset: 0;
overflow: hidden;
} .hero__bg picture,
.hero__picture { display: block; width: 100%; height: 100%; }
.hero__img,
.hero__bg-img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: var(--hero-pos, center 40%);
display: block;
}
.hero__overlay {
display: none;
}
.hero__content {
position: relative;
z-index: 2;
max-width: var(--container-max);
margin-inline: auto;
padding-inline: var(--container-pad);
padding-top: 4.5rem;
padding-bottom: 4rem;
width: 100%;
}
.hero__text {
max-width: 560px;
}
.hero__headline {
text-shadow: 0 2px 12px rgba(0,0,0,0.45), 0 1px 3px rgba(0,0,0,0.30);
font-family: var(--font-heading);
font-size: clamp(2rem, 5vw, 3.2rem);
font-weight: 800;
color: var(--color-white);
line-height: 1.15;
margin-bottom: 1rem;
letter-spacing: -0.02em;
}
.hero__subline {
text-shadow: 0 1px 6px rgba(0,0,0,0.40);
font-size: clamp(0.95rem, 2vw, 1.1rem);
color: rgba(255,255,255,0.96);
line-height: 1.65;
font-weight: 400;
} .search-card {
position: relative;
z-index: 10;
max-width: var(--container-max);
margin-inline: auto;
padding-inline: var(--container-pad);
margin-top: -80px;
padding-bottom: var(--space-2xl);
}
.search-card__inner {
background: var(--color-white);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-xl);
overflow: hidden;
} .search-tabs {
display: flex;
border-bottom: 1px solid var(--color-border);
background: #f4f9fc;
}
.search-tab {
display: flex;
align-items: center;
gap: 0.4rem;
padding: 0.9rem 1.4rem;
font-size: 0.88rem;
font-weight: 500;
color: var(--color-text-light);
border-bottom: 3px solid transparent;
transition: all var(--trans-fast);
border-radius: 0;
white-space: nowrap;
background: none;
}
.search-tab:hover {
color: var(--color-primary);
background: rgba(11,79,122,0.04);
}
.search-tab--active {
color: var(--color-primary);
background: var(--color-white);
border-bottom-color: var(--color-primary);
font-weight: 600;
} .search-filters {
display: flex;
align-items: flex-end;
gap: 0.75rem;
padding: 1.25rem 1.5rem;
flex-wrap: wrap;
}
.search-filter {
display: flex;
flex-direction: column;
gap: 0.35rem;
flex: 1;
min-width: 130px;
}
.search-filter__label {
font-size: 0.75rem;
font-weight: 600;
color: var(--color-text-light);
text-transform: uppercase;
letter-spacing: 0.03em;
}
.search-filter__select-wrap {
position: relative;
display: flex;
align-items: center;
}
.search-filter__icon {
position: absolute;
left: 0.65rem;
color: var(--color-text-muted);
pointer-events: none;
flex-shrink: 0;
}
.search-filter__arrow {
position: absolute;
right: 0.65rem;
color: var(--color-text-muted);
pointer-events: none;
flex-shrink: 0;
}
.search-filter__select {
width: 100%;
appearance: none;
padding: 0.6rem 2rem 0.6rem 2.1rem;
border: 1.5px solid var(--color-border);
border-radius: var(--radius-sm);
font-family: var(--font-body);
font-size: 0.85rem;
color: var(--color-text);
background: var(--color-white);
cursor: pointer;
transition: border-color var(--trans-fast);
}
.search-filter__select:focus {
outline: none;
border-color: var(--color-primary);
}
.search-filter__select:hover {
border-color: var(--color-text-muted);
}
.search-btn {
flex-shrink: 0;
background: var(--color-primary);
color: var(--color-white);
font-family: var(--font-heading);
font-size: 0.95rem;
font-weight: 700;
padding: 0.72rem 1.6rem;
border-radius: var(--radius-sm);
box-shadow: 0 4px 14px rgba(11,79,122,0.3);
transition: all var(--trans-base);
white-space: nowrap;
align-self: flex-end;
height: 42px;
}
.search-btn:hover {
background: var(--color-primary-dark);
transform: translateY(-1px);
box-shadow: 0 6px 20px rgba(11,79,122,0.4);
} .search-trust {
display: flex;
align-items: center;
gap: 1.5rem;
padding: 0.7rem 1.5rem;
background: #f9fbfd;
border-top: 1px solid var(--color-border);
flex-wrap: wrap;
}
.search-trust__item {
display: flex;
align-items: center;
gap: 0.4rem;
font-size: 0.8rem;
color: var(--color-text-light);
} .destinations {
padding-block: var(--space-3xl);
content-visibility: auto;
contain-intrinsic-size: 0 600px;
}
.bento-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: auto auto;
gap: 0.85rem;
}
.dest-card {
border-radius: var(--radius-md);
overflow: hidden;
position: relative;
box-shadow: var(--shadow-sm);
transition: transform var(--trans-base), box-shadow var(--trans-base);
}
.dest-card:hover {
transform: translateY(-3px);
box-shadow: var(--shadow-lg);
}
.dest-card--wide {
grid-column: span 2;
}
.dest-card__link {
display: block;
position: relative;
}
.dest-card__img-wrap {
overflow: hidden;
aspect-ratio: 4/3;
}
.dest-card--wide .dest-card__img-wrap {
aspect-ratio: 16/7;
}
.dest-card__img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform var(--trans-slow);
display: block;
}
.dest-card:hover .dest-card__img {
transform: scale(1.05);
} .dest-card__img-wrap picture { display: block; width: 100%; height: 100%; }
.dest-card__body {
position: absolute;
bottom: 0; left: 0; right: 0;
padding: 1rem 1.1rem;
background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, transparent 100%);
color: var(--color-white);
}
.dest-card__title {
font-family: var(--font-heading);
font-size: 1.1rem;
font-weight: 700;
margin-bottom: 0.25rem;
}
.dest-card__price {
display: flex;
flex-direction: column;
line-height: 1.2;
}
.dest-card__nights {
font-size: 0.75rem;
opacity: 0.85;
}
.dest-card__amount {
font-family: var(--font-heading);
font-size: 1.4rem;
font-weight: 800;
line-height: 1;
}
.dest-card__amount sup {
font-size: 0.65rem;
font-weight: 600;
vertical-align: super;
margin-left: 2px;
opacity: 0.9;
} .dest-card__cluster-badge,
.dest-card__reederei-badge {
position: absolute;
top: 0.75rem;
left: 0.75rem;
display: inline-flex;
align-items: center;
background: var(--color-white);
color: var(--color-primary);
font-size: 0.72rem;
font-weight: 700;
padding: 0.25rem 0.7rem;
border-radius: var(--radius-full);
box-shadow: var(--shadow-sm);
z-index: 1;
} .archive-hero {
padding-block: var(--space-xl) var(--space-lg);
background: var(--color-bg-alt);
border-bottom: 1px solid var(--color-border);
}
.archive-hero__title {
font-family: var(--font-heading);
font-size: clamp(1.6rem, 2.5vw, 2.1rem);
font-weight: 800;
color: var(--color-text);
margin-bottom: 0.5rem;
}
.archive-hero__desc {
color: var(--color-text-light);
font-size: 1rem;
max-width: 60ch;
}
.archive-hero__usps {
display: flex;
flex-wrap: wrap;
gap: 0.5rem 1.5rem;
margin-top: 1.25rem;
}
.archive-hero__usp {
display: flex;
align-items: center;
gap: 0.4rem;
}
.archive-grid-section {
padding-block: var(--space-2xl);
}
.archive-filter-bar {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 0.6rem;
margin-bottom: var(--space-lg);
}
.archive-filter-label {
font-size: 0.85rem;
font-weight: 700;
color: var(--color-text-light);
margin-right: 0.25rem;
}
.archive-filter-btn {
display: inline-flex;
align-items: center;
padding: 0.4rem 0.9rem;
background: var(--color-white);
border: 1.5px solid var(--color-border);
border-radius: var(--radius-full);
color: var(--color-primary);
font-size: 0.82rem;
font-weight: 600;
text-decoration: none;
transition: background var(--trans-fast), border-color var(--trans-fast);
}
.archive-filter-btn:hover { background: var(--color-bg-alt); border-color: var(--color-primary); }
.archive-filter-btn.active { background: var(--color-primary); border-color: var(--color-primary); color: var(--color-white); }
.archive-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1.5rem;
}
.archive-empty {
padding: var(--space-2xl) 0;
text-align: center;
color: var(--color-text-light);
}
.archive-pagination { margin-top: var(--space-2xl); }
.archive-pagination .pagination {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 0.4rem;
list-style: none;
}
.archive-pagination .pagination__item a,
.archive-pagination .pagination__item span {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 2.4rem;
height: 2.4rem;
padding-inline: 0.5rem;
border-radius: var(--radius-sm);
border: 1.5px solid var(--color-border);
color: var(--color-primary);
font-size: 0.9rem;
font-weight: 600;
text-decoration: none;
transition: background var(--trans-fast), border-color var(--trans-fast);
}
.archive-pagination .pagination__item a:hover { background: var(--color-bg-alt); border-color: var(--color-primary); }
.archive-pagination .pagination__item span.current,
.archive-pagination .pagination__item .current {
background: var(--color-primary);
border-color: var(--color-primary);
color: var(--color-white);
}
@media (max-width: 992px) {
.archive-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
.archive-grid { grid-template-columns: 1fr; }
.archive-hero__usps { gap: 0.5rem 1rem; }
} .shipping-lines {
padding-block: var(--space-2xl);
background: var(--color-white);
border-top: 1px solid var(--color-border);
border-bottom: 1px solid var(--color-border);
content-visibility: auto;
contain-intrinsic-size: 0 400px;
}
.shipping-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 1rem;
}
.shipping-card {
display: flex;
flex-direction: column;
align-items: center;
gap: 0.75rem;
padding: 1.5rem 1rem;
border: 1.5px solid var(--color-border);
border-radius: var(--radius-md);
background: var(--color-white);
text-align: center;
transition: all var(--trans-base);
box-shadow: var(--shadow-sm);
}
.shipping-card:hover {
border-color: var(--color-primary);
box-shadow: var(--shadow-md);
transform: translateY(-2px);
}
.shipping-card__logo {
display: flex;
align-items: center;
justify-content: center;
height: 44px;
}
.shipping-card__rating {
display: flex;
flex-direction: column;
align-items: center;
gap: 0.2rem;
}
.stars {
display: flex;
gap: 1px;
color: #F59E0B;
font-size: 0.9rem;
}
.star--half { opacity: 0.5; }
.star--empty { opacity: 0.2; }
.rating-score {
font-size: 0.75rem;
color: var(--color-text-light);
font-weight: 500;
}
.shipping-card__cta {
font-size: 0.78rem;
font-weight: 600;
color: var(--color-primary);
border-bottom: 1px solid transparent;
padding-bottom: 1px;
transition: border-color var(--trans-fast);
}
.shipping-card__cta:hover {
border-bottom-color: var(--color-primary);
} .promo-row {
padding-block: var(--space-2xl);
background: var(--color-bg);
content-visibility: auto;
contain-intrinsic-size: 0 380px;
}
.promo-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1.25rem;
}
.promo-card {
display: flex;
border-radius: var(--radius-lg);
overflow: hidden;
background: var(--color-white);
box-shadow: var(--shadow-md);
min-height: 180px;
}
.promo-card__content {
flex: 1;
padding: 1.5rem 1.75rem;
display: flex;
flex-direction: column;
justify-content: center;
gap: 0.75rem;
}
.promo-card__badge {
display: inline-flex;
align-items: center;
background: #FFF3CD;
color: #92400E;
font-size: 0.78rem;
font-weight: 700;
padding: 0.25rem 0.75rem;
border-radius: var(--radius-full);
width: fit-content;
}
.promo-card__title {
font-family: var(--font-heading);
font-size: 1.3rem;
font-weight: 700;
color: var(--color-text);
}
.promo-card__text {
font-size: 0.88rem;
color: var(--color-text-light);
line-height: 1.6;
} .countdown {
display: flex;
align-items: flex-end;
gap: 0.4rem;
}
.countdown__unit {
display: flex;
flex-direction: column;
align-items: center;
gap: 0.15rem;
}
.countdown__val {
font-family: var(--font-heading);
font-size: 2rem;
font-weight: 800;
color: var(--color-text);
line-height: 1;
min-width: 2ch;
text-align: center;
}
.countdown__label {
font-size: 0.65rem;
color: var(--color-text-light);
text-transform: uppercase;
letter-spacing: 0.04em;
font-weight: 600;
}
.countdown__sep {
font-family: var(--font-heading);
font-size: 1.6rem;
font-weight: 700;
color: var(--color-text-muted);
margin-bottom: 0.6rem;
line-height: 1;
} .promo-card__img-wrap {
width: 200px;
flex-shrink: 0;
overflow: hidden;
}
.promo-card__img {
width: 100%;
height: 100%;
object-fit: cover;
} .promo-card--ai {
background: linear-gradient(135deg, #f0f9ff 0%, #e8f4fd 100%);
position: relative;
overflow: hidden;
}
.promo-card__robot {
width: 180px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
padding: 1rem;
position: relative;
}
.robot {
display: flex;
flex-direction: column;
align-items: center;
gap: 4px;
}
.robot__head {
width: 60px; height: 50px;
background: linear-gradient(135deg, #e8f0f7, #cdddf0);
border-radius: 50% 50% 45% 45%;
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
position: relative;
box-shadow: inset 0 2px 4px rgba(255,255,255,0.7), 0 3px 8px rgba(11,79,122,0.15);
}
.robot__eye {
width: 10px; height: 12px;
background: var(--color-secondary);
border-radius: 50%;
position: relative;
top: -2px;
box-shadow: 0 0 6px rgba(53,182,201,0.5);
animation: eyeBlink 3s infinite;
}
.robot__eye--right { animation-delay: 0.1s; }
@keyframes eyeBlink {
0%, 90%, 100% { transform: scaleY(1); }
95% { transform: scaleY(0.15); }
}
.robot__mouth {
position: absolute;
bottom: 10px;
width: 18px; height: 6px;
border: 2px solid var(--color-primary);
border-top: none;
border-radius: 0 0 10px 10px;
opacity: 0.6;
}
.robot__body {
width: 50px; height: 38px;
background: linear-gradient(135deg, #d5e6f0, #b8d2e8);
border-radius: 10px 10px 14px 14px;
box-shadow: 0 4px 10px rgba(11,79,122,0.15);
}
.robot__bubble {
position: absolute;
top: 12px; right: -10px;
background: var(--color-white);
border: 1px solid var(--color-border);
border-radius: 12px 12px 0 12px;
padding: 0.4rem 0.6rem;
font-size: 0.72rem;
color: var(--color-text);
line-height: 1.4;
max-width: 110px;
box-shadow: var(--shadow-sm);
} .usps {
padding-block: var(--space-3xl);
background: var(--color-white);
content-visibility: auto;
contain-intrinsic-size: 0 350px;
}
.usps-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 2rem;
}
.usp-item {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
gap: 0.75rem;
}
.usp-item__icon {
margin-bottom: 0.25rem;
}
.usp-item__title {
font-family: var(--font-heading);
font-size: 1rem;
font-weight: 700;
color: var(--color-text);
}
.usp-item__text {
font-size: 0.85rem;
color: var(--color-text-light);
line-height: 1.65;
} .blog {
padding-block: var(--space-3xl);
background: var(--color-bg);
content-visibility: auto;
contain-intrinsic-size: 0 500px;
}
.blog-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 1.1rem;
}
.blog-card {
border-radius: var(--radius-md);
overflow: hidden;
background: var(--color-white);
box-shadow: var(--shadow-sm);
transition: all var(--trans-base);
}
.blog-card:hover {
transform: translateY(-3px);
box-shadow: var(--shadow-md);
}
.blog-card__link {
display: block;
height: 100%;
}
.blog-card__img-wrap {
overflow: hidden;
aspect-ratio: 16/9;
}
.blog-card__img {
width: 100%; height: 100%;
object-fit: cover;
transition: transform var(--trans-slow);
}
.blog-card:hover .blog-card__img {
transform: scale(1.04);
}
.blog-card__body {
padding: 1rem;
display: flex;
flex-direction: column;
gap: 0.4rem;
}
.blog-card__title {
font-family: var(--font-heading);
font-size: 0.92rem;
font-weight: 700;
color: var(--color-text);
line-height: 1.35;
}
.blog-card__excerpt {
font-size: 0.8rem;
color: var(--color-text-light);
line-height: 1.55;
flex: 1;
}
.blog-card__cta {
font-size: 0.8rem;
font-weight: 600;
color: var(--color-primary);
margin-top: 0.25rem;
transition: color var(--trans-fast);
}
.blog-card:hover .blog-card__cta {
color: var(--color-secondary);
} .newsletter {
padding-block: var(--space-xl);
background: var(--color-white);
border-top: 1px solid var(--color-border);
border-bottom: 1px solid var(--color-border);
}
.newsletter__inner {
display: flex;
align-items: center;
gap: 2rem;
justify-content: space-between;
}
.newsletter__text {
flex: 1;
}
.newsletter__title {
font-family: var(--font-heading);
font-size: clamp(1.1rem, 2.5vw, 1.35rem);
font-weight: 700;
color: var(--color-text);
margin-bottom: 0.3rem;
}
.newsletter__sub {
font-size: 0.85rem;
color: var(--color-text-light);
line-height: 1.55;
}
.newsletter__form {
display: flex;
gap: 0.75rem;
align-items: center;
flex-shrink: 0;
}
.newsletter__input {
width: 300px;
padding: 0.7rem 1rem;
border: 1.5px solid var(--color-border);
border-radius: var(--radius-md);
font-family: var(--font-body);
font-size: 0.88rem;
color: var(--color-text);
background: var(--color-bg);
transition: border-color var(--trans-fast);
}
.newsletter__input:focus {
outline: none;
border-color: var(--color-primary);
background: var(--color-white);
}
.newsletter__input::placeholder { color: var(--color-text-muted); }
.newsletter__btn {
background: var(--color-primary);
color: var(--color-white);
font-family: var(--font-heading);
font-size: 0.92rem;
font-weight: 700;
padding: 0.72rem 1.5rem;
border-radius: var(--radius-md);
white-space: nowrap;
box-shadow: 0 4px 14px rgba(11,79,122,0.3);
transition: all var(--trans-base);
}
.newsletter__btn:hover {
background: var(--color-primary-dark);
transform: translateY(-1px);
} .footer { background: var(--color-footer-bg); }
.footer__main {
padding-block: var(--space-2xl);
}
.footer__grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 2rem;
}
.footer__heading {
font-family: var(--font-heading);
font-size: 0.85rem;
font-weight: 700;
color: var(--color-footer-head);
text-transform: uppercase;
letter-spacing: 0.06em;
margin-bottom: 1rem;
}
.footer__list li {
margin-bottom: 0.4rem;
}
.footer__list a {
font-size: 0.83rem;
color: var(--color-footer-text);
transition: color var(--trans-fast);
line-height: 1.5;
}
.footer__list a:hover {
color: var(--color-secondary);
} .footer__contact {
display: flex;
flex-direction: column;
gap: 0.5rem;
margin-bottom: 1rem;
}
.footer__phone {
display: flex;
align-items: center;
gap: 0.4rem;
font-family: var(--font-heading);
font-size: 1rem;
font-weight: 700;
color: var(--color-white);
transition: color var(--trans-fast);
}
.footer__phone:hover { color: var(--color-secondary); }
.footer__hours {
font-size: 0.75rem;
color: var(--color-footer-text);
padding-left: 1.5rem;
}
.footer__email {
display: flex;
align-items: center;
gap: 0.4rem;
font-size: 0.8rem;
color: var(--color-footer-text);
transition: color var(--trans-fast);
}
.footer__email:hover { color: var(--color-secondary); } .footer__social {
display: flex;
gap: 0.6rem;
margin-top: 0.5rem;
}
.social-icon {
display: flex;
align-items: center;
justify-content: center;
width: 36px; height: 36px;
border: 1px solid rgba(255,255,255,0.15);
border-radius: 50%;
color: var(--color-footer-text);
transition: all var(--trans-base);
}
.social-icon:hover {
border-color: var(--color-secondary);
color: var(--color-secondary);
background: rgba(53,182,201,0.08);
transform: translateY(-2px);
} .footer__bottom {
border-top: 1px solid rgba(255,255,255,0.08);
padding-block: 1rem;
}
.footer__bottom-inner {
display: flex;
align-items: center;
gap: 1.5rem;
flex-wrap: wrap;
}
.footer__copy {
font-size: 0.8rem;
color: var(--color-footer-text);
}
.footer__trust,
.footer__payments {
display: flex;
align-items: center;
gap: 0.5rem;
}
.tuv-badge {
display: flex;
align-items: center;
justify-content: center;
}
.payment-badge {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 0.25rem 0.5rem;
border-radius: 4px;
font-size: 0.72rem;
font-weight: 800;
letter-spacing: 0.02em;
}
.payment-badge--mc  { background: #EB001B; color: white; }
.payment-badge--visa { background: #1A1F71; color: white; }
.payment-badge--pp  { background: #003087; color: white; }
.footer__trustpilot {
display: flex;
align-items: center;
gap: 0.35rem;
margin-left: auto;
}
.trustpilot__text {
font-size: 0.78rem;
color: var(--color-footer-text);
font-weight: 600;
}
.trustpilot__stars {
color: #00B67A;
font-size: 0.75rem;
letter-spacing: 1px;
}
.trustpilot__score {
font-size: 0.78rem;
color: #00B67A;
font-weight: 700;
}
.back-to-top {
display: flex;
align-items: center;
gap: 0.3rem;
font-size: 0.78rem;
color: var(--color-footer-text);
border: 1px solid rgba(255,255,255,0.15);
padding: 0.3rem 0.7rem;
border-radius: var(--radius-full);
transition: all var(--trans-fast);
white-space: nowrap;
}
.back-to-top:hover {
color: var(--color-secondary);
border-color: var(--color-secondary);
} .mobile-cta {
display: none;
position: fixed;
bottom: 0; left: 0; right: 0;
z-index: 900;
background: var(--color-white);
box-shadow: 0 -4px 20px rgba(0,0,0,0.12);
padding: 0.75rem 1rem;
gap: 0.75rem;
}
.mobile-cta__call,
.mobile-cta__search {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
gap: 0.4rem;
padding: 0.75rem;
border-radius: var(--radius-sm);
font-family: var(--font-heading);
font-size: 0.85rem;
font-weight: 700;
transition: all var(--trans-fast);
}
.mobile-cta__call {
background: var(--color-primary);
color: white;
}
.mobile-cta__search {
background: var(--color-bg-alt);
color: var(--color-primary);
border: 2px solid var(--color-primary);
}  @media (max-width: 1024px) {
:root {
--container-pad: 1rem;
}
.topbar__left .topbar__item:nth-child(3),
.topbar__left .topbar__item:nth-child(4) {
display: none;
}
.header__nav { display: none; }
.header__burger { display: flex; }
.header__cta { display: none; }
.bento-grid {
grid-template-columns: repeat(2, 1fr);
}
.dest-card--wide { grid-column: span 1; }
.shipping-grid { grid-template-columns: repeat(3, 1fr); }
.shipping-card:nth-child(4),
.shipping-card:nth-child(5) { display: none; }
.usps-grid { grid-template-columns: repeat(2, 1fr); }
.blog-grid { grid-template-columns: repeat(3, 1fr); }
.blog-card:nth-child(4),
.blog-card:nth-child(5) { display: none; }
.footer__grid { grid-template-columns: repeat(3, 1fr); }
} @media (max-width: 768px) {
:root {
--topbar-h: 0px;
--header-h: 64px;
}
.topbar { display: none; }
.hero {
min-height: 420px;
}
.hero__content {
padding-top: 2.5rem;
padding-bottom: 12rem;
}
.search-card {
margin-top: -140px;
padding-bottom: var(--space-xl);
}
.search-filters {
flex-direction: column;
gap: 0.85rem;
}
.search-filter {
min-width: 100%;
}
.search-btn {
width: 100%;
height: auto;
padding: 0.9rem;
font-size: 1rem;
}
.search-trust {
gap: 0.75rem;
}
.search-trust__item:nth-child(3),
.search-trust__item:nth-child(4) {
display: none;
}
.bento-grid { grid-template-columns: 1fr 1fr; gap: 0.6rem; }
.dest-card--wide { grid-column: span 2; }
.shipping-grid { grid-template-columns: repeat(2, 1fr); }
.shipping-card:nth-child(5) { display: none; }
.promo-grid { grid-template-columns: 1fr; }
.promo-card__img-wrap { display: none; }
.usps-grid { grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }
.blog-grid { grid-template-columns: repeat(2, 1fr); }
.blog-card:nth-child(5) { display: none; }
.newsletter__inner { flex-direction: column; align-items: stretch; gap: 1.25rem; }
.newsletter__form { flex-direction: column; }
.newsletter__input { width: 100%; }
.newsletter__btn { width: 100%; }
.footer__grid { grid-template-columns: repeat(2, 1fr); }
.footer__bottom-inner { gap: 1rem; }
.footer__trustpilot { margin-left: 0; }
.mobile-cta { display: flex; }
main { padding-bottom: 80px; }
} @media (max-width: 480px) {
.hero__content { padding-top: 2rem; padding-bottom: 3rem; }
.hero__headline { font-size: 1.85rem; }
.hero__subline { font-size: 0.9rem; }
.search-card { margin-top: -180px; }
.search-tabs { overflow-x: auto; scrollbar-width: none; }
.search-tabs::-webkit-scrollbar { display: none; }
.search-tab { font-size: 0.8rem; padding: 0.8rem 1rem; }
.bento-grid { grid-template-columns: 1fr 1fr; }
.dest-card--wide { grid-column: span 2; }
.shipping-grid { grid-template-columns: 1fr 1fr; }
.shipping-card:nth-child(3),
.shipping-card:nth-child(4),
.shipping-card:nth-child(5) { display: none; }
.usps-grid { grid-template-columns: 1fr; }
.blog-grid { grid-template-columns: 1fr; }
.blog-card:nth-child(3),
.blog-card:nth-child(4),
.blog-card:nth-child(5) { display: none; }
.footer__grid { grid-template-columns: 1fr 1fr; }
.footer__col--contact { grid-column: span 2; }
.footer__bottom-inner { flex-direction: column; align-items: flex-start; gap: 0.75rem; }
.section-title { white-space: normal; }
} @media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.01ms !important;
transition-duration: 0.01ms !important;
}
} .home-search-wrap {
margin-top: -70px;
margin-inline: auto;
max-width: 1200px;
padding-inline: 1.5rem;
padding-bottom: var(--space-2xl);
position: relative;
z-index: 10;
background: transparent;
}
@media (max-width: 768px) {
.home-search-wrap { margin-top: -50px; }
}
@media (max-width: 480px) {
.home-search-wrap { margin-top: -40px; }
} .home-seo {
background: var(--color-white);
padding: var(--space-3xl) 0;
border-top: 1px solid var(--color-border);
content-visibility: auto;
contain-intrinsic-size: 0 800px;
} .home-seo__grid {
display: grid;
grid-template-columns: 1fr 300px;
gap: 3rem;
align-items: start;
margin-bottom: 3rem;
}
.home-seo__h2 {
font-family: var(--font-heading);
font-size: clamp(1.3rem, 2.5vw, 1.6rem);
font-weight: 800;
color: var(--color-primary);
margin-bottom: 1.25rem;
line-height: 1.3;
}
.home-seo__h3 {
font-family: var(--font-heading);
font-size: 1.05rem;
font-weight: 700;
color: var(--color-text);
margin: 1.75rem 0 .6rem;
}
.home-seo__main p {
font-size: .93rem;
color: var(--color-text-light);
line-height: 1.82;
margin-bottom: .9rem;
} .home-seo__aside {
display: flex;
flex-direction: column;
gap: 1rem;
position: sticky;
top: 90px;
}
.home-seo__card {
background: var(--color-bg);
border: 1.5px solid var(--color-border);
border-left: 4px solid var(--color-primary);
border-radius: 0 var(--radius-md) var(--radius-md) 0;
padding: 1rem 1.1rem;
}
.home-seo__card-icon {
margin-bottom: .5rem;
}
.home-seo__card strong {
display: block;
font-family: var(--font-heading);
font-size: .88rem;
font-weight: 700;
color: var(--color-primary);
margin-bottom: .35rem;
}
.home-seo__card p {
font-size: .8rem;
color: var(--color-text-light);
line-height: 1.65;
margin: 0;
} .home-seo__faq {
border-top: 1px solid var(--color-border);
padding-top: 2.5rem;
}
.home-seo__faq-title {
font-family: var(--font-heading);
font-size: clamp(1.2rem, 2.5vw, 1.45rem);
font-weight: 700;
color: var(--color-primary);
margin-bottom: 1.75rem;
text-align: center;
}
.home-faq__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1rem;
}
.home-faq__item {
background: var(--color-white);
border: 1.5px solid var(--color-border);
border-radius: var(--radius-md);
padding: 1.1rem 1.25rem;
box-shadow: var(--shadow-sm);
transition: box-shadow var(--trans-base), border-color var(--trans-base);
}
.home-faq__item:hover {
box-shadow: var(--shadow-md);
border-color: #C8DFF0;
}
.home-faq__q {
font-family: var(--font-heading);
font-size: .92rem;
font-weight: 700;
color: var(--color-primary);
margin: 0 0 .6rem;
line-height: 1.4;
}
.home-faq__a {
font-size: .84rem;
color: var(--color-text-light);
line-height: 1.72;
}
.home-faq__a p { margin: 0; } @media (max-width: 1024px) {
.home-seo__grid { grid-template-columns: 1fr; }
.home-seo__aside { position: static; flex-direction: row; flex-wrap: wrap; }
.home-seo__card { flex: 1; min-width: 200px; }
}
@media (max-width: 768px) {
.home-faq__grid { grid-template-columns: 1fr; }
.home-seo__aside { flex-direction: column; }
} .home-search-chips {
display: flex;
flex-wrap: wrap;
gap: .5rem;
margin-top: 1rem;
justify-content: center;
}
.search-chip {
display: inline-flex;
align-items: center;
gap: .35rem;
padding: .4rem .9rem;
background: #fff;
border: 1.5px solid #DDE7EF;
border-radius: 20px;
color: #0B4F7A;
font-size: .82rem;
font-weight: 600;
text-decoration: none;
transition: background .15s, border-color .15s;
white-space: nowrap;
box-shadow: 0 1px 4px rgba(11,79,122,.08);
}
.search-chip:hover { background: #EBF4FB; border-color: #0B4F7A; }
.search-chip--hot { background: #FFF3F0; border-color: #E2001A; color: #E2001A; }
.search-chip--hot:hover { background: #FFE5E0; } .usp-item__num {
font-size: 1.4rem;
font-weight: 800;
color: #0B4F7A;
font-family: 'Outfit', sans-serif;
margin-bottom: .25rem;
} .home-ports { padding: 3rem 0; background: #F8FBFD; content-visibility: auto; contain-intrinsic-size: 0 300px; }
.section-subtitle { text-align: center; color: #637381; font-size: .95rem; margin: -.75rem 0 2rem; }
.ports-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 1rem;
}
.port-card {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
padding: 1.5rem 1rem;
background: #fff;
border: 1.5px solid #DDE7EF;
border-radius: 12px;
text-decoration: none;
transition: box-shadow .2s, transform .2s;
gap: .35rem;
}
.port-card:hover {
box-shadow: 0 6px 20px rgba(11,79,122,.1);
transform: translateY(-2px);
}
.port-card__icon { font-size: 2rem; line-height: 1; }
.port-card strong { font-size: .95rem; font-weight: 700; color: #0B2D44; }
.port-card span { font-size: .8rem; color: #637381; }
.port-card--cta { background: #0B4F7A; border-color: #0B4F7A; }
.port-card--cta strong, .port-card--cta span { color: #fff; }
.port-card--cta .port-card__icon { filter: none; } .shipping-card__btns {
display: flex;
gap: .5rem;
width: 100%;
}
.shipping-card__detail {
flex: 1;
text-align: center;
padding: .5rem;
font-size: .78rem;
font-weight: 600;
color: #0B4F7A;
border: 1.5px solid #0B4F7A;
border-radius: 6px;
text-decoration: none;
transition: background .15s;
}
.shipping-card__detail:hover { background: #EBF4FB; }
@media (max-width: 768px) {
.ports-grid { grid-template-columns: repeat(2, 1fr); }
.home-search-chips { gap: .4rem; }
.search-chip { font-size: .75rem; padding: .35rem .7rem; }
}
@media (max-width: 480px) {
.ports-grid { grid-template-columns: 1fr 1fr; }
} .hero__seo-text {
text-align: center;
font-size: .88rem;
color: rgba(255,255,255,.7);
margin: 1.25rem auto 0;
line-height: 1.7;
max-width: 600px;
} .rz-hero {
position: relative;
min-height: 380px;
display: flex;
align-items: flex-end;
overflow: hidden;
background: #0B2D44; } .rz-hero .hero__bg {
position: absolute;
inset: 0;
z-index: 0;
}
.rz-hero .hero__bg picture { display: block; width: 100%; height: 100%; }
.rz-hero .hero__bg .hero__img,
.rz-hero .hero__bg .hero__bg-img {
width: 100%; height: 100%;
object-fit: cover;
object-position: var(--hero-pos, center 40%);
}
.rz-hero__overlay {
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(0,0,0,.65) 0%, rgba(0,0,0,.2) 60%, transparent 100%);
}
.rz-hero__inner {
position: relative;
z-index: 1;
padding: 2.5rem 1.5rem;
width: 100%;
}
.rz-breadcrumb {
font-size: .8rem;
color: rgba(255,255,255,.7);
margin-bottom: .75rem;
}
.rz-breadcrumb a { color: rgba(255,255,255,.75); text-decoration: none; }
.rz-breadcrumb a:hover { color: #fff; }
.rz-hero__h1 {
font-size: clamp(1.6rem, 4vw, 2.4rem);
font-weight: 800;
color: #fff;
text-shadow: 0 2px 8px rgba(0,0,0,.4);
margin: 0 0 1.25rem;
max-width: 700px;
}
.rz-hero__cta {
display: inline-flex;
align-items: center;
gap: .5rem;
background: var(--color-primary);
color: #fff;
padding: .75rem 1.5rem;
border-radius: 8px;
font-weight: 700;
font-size: .95rem;
text-decoration: none;
transition: background .2s;
}
.rz-hero__cta:hover { background: #083d61; }
.rz-body { padding: 3rem 0; }
.rz-grid {
display: grid;
grid-template-columns: 1fr 300px;
gap: 2.5rem;
align-items: start;
}
.rz-content h2 { font-size: 1.35rem; font-weight: 700; color: #0B2D44; margin: 2rem 0 .75rem; }
.rz-content h3 { font-size: 1.1rem; font-weight: 700; color: #0B4F7A; margin: 1.5rem 0 .5rem; }
.rz-content p  { line-height: 1.75; color: #374151; margin-bottom: 1rem; }
.rz-content ul, .rz-content ol { padding-left: 1.75rem; margin-bottom: 1rem; }
.rz-content ul { list-style: disc; }
.rz-content ol { list-style: decimal; }
.rz-content li { line-height: 1.7; color: #374151; margin-bottom: .35rem; }
@media (max-width: 900px) {
.rz-grid { grid-template-columns: 1fr; }
.rz-sidebar { order: -1; }
} .service-body { padding-block: var(--space-2xl); } .contact-grid {
display: grid;
grid-template-columns: 1fr 1.2fr;
gap: 2.5rem;
align-items: start;
}
.contact-card {
background: var(--color-white);
border: 1px solid var(--color-border);
border-radius: var(--radius-lg);
padding: var(--space-lg);
box-shadow: var(--shadow-sm);
}
.contact-card__title { font-family: var(--font-heading); font-size: 1.2rem; font-weight: 800; color: var(--color-text); margin-bottom: 1.25rem; }
.contact-method { display: flex; align-items: flex-start; gap: 0.75rem; margin-bottom: 1.1rem; }
.contact-method:last-child { margin-bottom: 0; }
.contact-method__icon {
flex-shrink: 0; width: 38px; height: 38px; border-radius: 50%;
background: var(--color-bg-alt); display: flex; align-items: center; justify-content: center;
color: var(--color-primary);
}
.contact-method__label { font-size: 0.78rem; color: var(--color-text-light); margin-bottom: 0.15rem; }
.contact-method__value { font-weight: 700; color: var(--color-text); text-decoration: none; }
.contact-method__value:hover { color: var(--color-primary); }
.service-content h2 { font-family: var(--font-heading); font-size: 1.35rem; font-weight: 800; color: var(--color-text); margin: 2rem 0 1rem; }
.service-content h2:first-child { margin-top: 0; }
.service-content p { line-height: 1.8; color: var(--color-text); margin-bottom: 1rem; }
.service-content ul { padding-left: 1.4rem; margin-bottom: 1.25rem; }
.service-content li { line-height: 1.75; color: var(--color-text); margin-bottom: 0.5rem; }
.service-content a { color: var(--color-primary); font-weight: 600; text-decoration: underline; } .faq-category { margin-bottom: 2.5rem; }
.faq-category__title { font-family: var(--font-heading); font-size: 1.2rem; font-weight: 800; color: var(--color-primary); margin-bottom: 1rem; }
.faq-item { border: 1px solid var(--color-border); border-radius: var(--radius-md); margin-bottom: 0.75rem; overflow: hidden; background: var(--color-white); }
.faq-item summary {
display: flex; align-items: center; justify-content: space-between; gap: 1rem;
padding: 1rem 1.25rem; cursor: pointer; font-weight: 700; color: var(--color-text); list-style: none;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { content: '+'; font-size: 1.4rem; font-weight: 400; color: var(--color-primary); flex-shrink: 0; transition: transform .2s; }
.faq-item[open] summary::after { transform: rotate(45deg); }
.faq-item__answer { padding: 0 1.25rem 1.25rem; color: var(--color-text-light); line-height: 1.75; } .payment-methods-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; margin-bottom: 2.5rem; }
.payment-method-card { background: var(--color-white); border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: 1.5rem; text-align: center; box-shadow: var(--shadow-sm); }
.payment-method-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.payment-method-card__icon { display: flex; justify-content: center; gap: 0.4rem; margin-bottom: 0.85rem; min-height: 24px; align-items: center; }
.payment-method-card__title { font-weight: 700; color: var(--color-text); margin-bottom: 0.35rem; }
.payment-method-card__desc { font-size: 0.85rem; color: var(--color-text-light); line-height: 1.6; }
.payment-steps { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 2rem; }
.payment-step { display: flex; gap: 1rem; align-items: flex-start; }
.payment-step__num {
flex-shrink: 0; width: 36px; height: 36px; border-radius: 50%;
background: var(--color-primary); color: var(--color-white);
display: flex; align-items: center; justify-content: center;
font-weight: 800; font-family: var(--font-heading);
}
.payment-step__title { font-weight: 700; color: var(--color-text); margin-bottom: 0.2rem; }
.payment-step__desc { font-size: 0.9rem; color: var(--color-text-light); line-height: 1.6; } .notice-box {
background: var(--color-bg-alt);
border-left: 4px solid var(--color-primary);
border-radius: var(--radius-sm);
padding: 1.1rem 1.4rem;
margin-bottom: 2rem;
font-size: 0.92rem;
line-height: 1.7;
color: var(--color-text);
}
.notice-box strong { color: var(--color-primary); } .service-cta-box {
background: linear-gradient(135deg, #0B4F7A, #1a7ab5);
border-radius: var(--radius-lg);
padding: 2rem;
text-align: center;
color: var(--color-white);
margin-top: 2.5rem;
}
.service-cta-box__title { font-family: var(--font-heading); font-size: 1.25rem; font-weight: 800; margin-bottom: 0.5rem; }
.service-cta-box__text { opacity: 0.9; margin-bottom: 1.25rem; }
.service-cta-box__btn {
display: inline-flex; align-items: center; gap: 0.5rem;
background: var(--color-white); color: var(--color-primary); font-weight: 700;
padding: 0.7rem 1.5rem; border-radius: var(--radius-full); text-decoration: none;
transition: transform .2s;
}
.service-cta-box__btn:hover { transform: translateY(-2px); }
@media (max-width: 900px) {
.contact-grid { grid-template-columns: 1fr; }
.payment-methods-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
.payment-methods-grid { grid-template-columns: 1fr; }
}  .ang-hero { position:relative; min-height:520px; display:flex; align-items:flex-end; overflow:hidden; }
.ang-hero__bg { position:absolute; inset:0; z-index:0; }
.ang-hero__img { width:100%; height:100%; object-fit:cover; }
.ang-hero__overlay { position:absolute; inset:0; background:linear-gradient(to bottom, rgba(0,0,0,.25) 0%, rgba(0,0,0,.65) 100%); }
.ang-hero__inner { position:relative; z-index:2; padding-block:3rem 2.5rem; color:#fff; }
.ang-hero__eyebrow { display:flex; align-items:center; gap:.4rem; font-size:.78rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; opacity:.85; margin-bottom:.9rem; }
.ang-hero__dot { width:7px; height:7px; border-radius:50%; background:var(--color-primary); display:inline-block; }
.ang-hero__h1, h1.ang-hero__h1 { font-family:var(--font-heading); font-size:clamp(2rem,5vw,3rem); font-weight:800; line-height:1.1; color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.45); margin-bottom:.75rem; }
.ang-hero__sub { font-size:clamp(.95rem,2vw,1.1rem); opacity:.92; line-height:1.65; margin-bottom:1.5rem; }
.ang-hero__chips { display:flex; flex-wrap:wrap; gap:.5rem; margin-bottom:1.5rem; }
.ang-chip { display:inline-flex; align-items:center; gap:.35rem; padding:.45rem .9rem; border-radius:99px; background:rgba(255,255,255,.18); border:1px solid rgba(255,255,255,.35); color:#fff; font-size:.82rem; font-weight:600; backdrop-filter:blur(4px); transition:background var(--trans-fast); text-decoration:none; }
.ang-chip:hover { background:rgba(255,255,255,.3); color:#fff; }
.ang-hero__stats { display:flex; gap:1.5rem; flex-wrap:wrap; }
.ang-stat { display:flex; flex-direction:column; }
.ang-stat strong { font-size:1.4rem; font-weight:800; line-height:1; }
.ang-stat span { font-size:.75rem; opacity:.8; margin-top:.15rem; }
.ang-stat__divider { width:1px; background:rgba(255,255,255,.3); align-self:stretch; } .ang-cat-nav { background:var(--color-white); border-bottom:1px solid var(--color-border); position:sticky; top:var(--header-h,64px); z-index:90; }
.ang-cat-nav__inner { display:flex; gap:0; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.ang-cat-nav__inner::-webkit-scrollbar { display:none; }
.ang-cat-nav__item { display:flex; align-items:center; gap:.4rem; padding:.85rem 1.1rem; font-size:.85rem; font-weight:600; color:var(--color-text-light); white-space:nowrap; text-decoration:none; border-bottom:2px solid transparent; transition:color var(--trans-fast),border-color var(--trans-fast); }
.ang-cat-nav__item:hover,.ang-cat-nav__item.is-active { color:var(--color-primary); border-bottom-color:var(--color-primary); } .ang-deals { padding-block:2.5rem; }
.ang-deals__header { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1.5rem; }
.ang-deals__h { font-family:var(--font-heading); font-size:1.4rem; font-weight:800; color:var(--color-text); margin:0; }
.ang-deals__count { font-size:.82rem; color:var(--color-text-light); }
.ang-sort { display:flex; align-items:center; gap:.5rem; }
.ang-sort-select { padding:.4rem .8rem; border:1px solid var(--color-border); border-radius:var(--radius-sm); font-size:.85rem; background:var(--color-white); color:var(--color-text); cursor:pointer; } .ang-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:1.25rem; } .ang-card { background:var(--color-white); border:1px solid var(--color-border); border-radius:var(--radius-lg); overflow:hidden; display:flex; flex-direction:column; transition:box-shadow var(--trans-base),transform var(--trans-base); }
.ang-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-2px); }
.ang-card__link { text-decoration:none; color:inherit; display:flex; flex-direction:column; flex:1; }
.ang-card__img-wrap { position:relative; aspect-ratio:16/9; overflow:hidden; background:var(--color-bg-alt); }
.ang-card__img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.ang-card:hover .ang-card__img { transform:scale(1.04); }
.ang-card__badge { position:absolute; top:.6rem; left:.6rem; padding:.2rem .6rem; border-radius:99px; font-size:.7rem; font-weight:700; letter-spacing:.04em; color:#fff; }
.ang-card__saving { position:absolute; top:.6rem; right:.6rem; background:var(--color-primary); color:#fff; padding:.2rem .6rem; border-radius:99px; font-size:.72rem; font-weight:700; }
.ang-card__body { padding:1rem; flex:1; display:flex; flex-direction:column; }
.ang-card__reederei { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--color-primary); margin-bottom:.35rem; }
.ang-card__title { font-family:var(--font-heading); font-size:1rem; font-weight:700; color:var(--color-text); line-height:1.3; margin-bottom:.5rem; }
.ang-card__route,.ang-card__ship { font-size:.78rem; color:var(--color-text-light); display:flex; align-items:center; gap:.3rem; margin-bottom:.25rem; }
.ang-card__meta { display:flex; gap:.75rem; margin-top:.5rem; font-size:.78rem; color:var(--color-text-light); }
.ang-card__detail { display:flex; align-items:center; gap:.25rem; }
.ang-card__rating { display:flex; align-items:center; gap:.25rem; margin-top:.5rem; }
.ang-card__rating-val { font-size:.8rem; font-weight:700; color:var(--color-text); }
.ang-star { color:#F5A623; font-size:.85rem; }
.ang-star--empty { color:var(--color-border); }
.ang-card__footer { padding:.75rem 1rem; border-top:1px solid var(--color-border); display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.ang-card__pricing { display:flex; flex-direction:column; }
.ang-card__price-old { font-size:.75rem; color:var(--color-text-light); text-decoration:line-through; }
.ang-card__price { font-size:1.25rem; font-weight:800; color:var(--color-primary); line-height:1; }
.ang-card__cta { padding:.5rem 1rem; background:var(--color-primary); color:#fff; border-radius:var(--radius-sm); font-size:.82rem; font-weight:700; white-space:nowrap; transition:background var(--trans-fast); }
.ang-card__cta:hover { background:var(--color-primary-dark,#094070); color:#fff; } .ang-more { text-align:center; margin-top:2rem; }
.ang-more__btn { display:inline-flex; align-items:center; gap:.5rem; padding:.75rem 2rem; border:2px solid var(--color-primary); border-radius:var(--radius-md); color:var(--color-primary); font-weight:700; font-size:.9rem; text-decoration:none; transition:background var(--trans-fast),color var(--trans-fast); }
.ang-more__btn:hover { background:var(--color-primary); color:#fff; } .ang-hubs { padding-block:2.5rem; background:var(--color-bg-alt); }
.ang-hubs__h { font-family:var(--font-heading); font-size:1.35rem; font-weight:800; color:var(--color-text); margin-bottom:.4rem; }
.ang-hubs__sub { color:var(--color-text-light); font-size:.9rem; margin-bottom:1.5rem; }
.ang-hubs__grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:1rem; }
.ang-hub { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.6rem; padding:1.25rem .75rem; background:var(--color-white); border:1px solid var(--color-border); border-radius:var(--radius-lg); text-decoration:none; color:var(--color-text); text-align:center; transition:box-shadow var(--trans-base),transform var(--trans-base); }
.ang-hub:hover { box-shadow:var(--shadow-md); transform:translateY(-2px); }
.ang-hub__icon { font-size:1.75rem; }
.ang-hub__text { font-size:.82rem; font-weight:700; line-height:1.3; }
.ang-hub__arrow { font-size:.75rem; color:var(--color-primary); }
.ang-hub--lastminute { border-top:3px solid #e53e3e; }
.ang-hub--mittelmeer { border-top:3px solid #3182ce; }
.ang-hub--familien   { border-top:3px solid #38a169; }
.ang-hub--aida       { border-top:3px solid #e53e3e; }
.ang-hub--ohneflug   { border-top:3px solid #805ad5; }
.ang-hub--luxus      { border-top:3px solid #b7791f; } .ang-trust { padding-block:2.5rem; }
.ang-trust__h { font-family:var(--font-heading); font-size:1.35rem; font-weight:800; color:var(--color-text); margin-bottom:1.5rem; }
.ang-trust__grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:1.5rem; margin-bottom:2rem; }
.ang-trust__item { display:flex; flex-direction:column; gap:.4rem; }
.ang-trust__num { font-size:1.5rem; font-weight:800; color:var(--color-primary); }
.ang-trust__label { font-size:.82rem; color:var(--color-text-light); }
.ang-trust__bar { height:6px; background:var(--color-bg-alt); border-radius:99px; overflow:hidden; margin-top:.35rem; }
.ang-trust__fill { height:100%; background:var(--color-primary); border-radius:99px; }
.ang-trust__cta { display:flex; align-items:center; gap:1.25rem; flex-wrap:wrap; padding:1.25rem 1.5rem; background:var(--color-bg-alt); border-radius:var(--radius-lg); }
.ang-trust__cta-text { flex:1; min-width:200px; font-size:.9rem; }
.ang-trust__cta-btn { display:inline-flex; align-items:center; gap:.5rem; padding:.65rem 1.25rem; background:var(--color-primary); color:#fff; border-radius:var(--radius-sm); font-weight:700; font-size:.9rem; text-decoration:none; white-space:nowrap; }
.ang-trust__cta-btn:hover { background:var(--color-primary-dark,#094070); color:#fff; }
.ang-trust small { display:block; font-size:.75rem; color:var(--color-text-light); margin-top:.25rem; } .ang-seo { padding-block:3rem; background:var(--color-bg-alt); }
.ang-seo__grid { display:grid; grid-template-columns:1fr 380px; gap:3rem; align-items:start; }
.ang-seo__main h2 { font-family:var(--font-heading); font-size:1.35rem; font-weight:800; color:var(--color-text); margin-bottom:.75rem; }
.ang-seo__main h3 { font-family:var(--font-heading); font-size:1.05rem; font-weight:700; color:var(--color-text); margin:1.25rem 0 .5rem; }
.ang-seo__main p { font-size:.9rem; line-height:1.75; color:var(--color-text-light); }
.ang-faq { background:var(--color-white); border:1px solid var(--color-border); border-radius:var(--radius-lg); padding:1.25rem; }
.ang-faq__heading { font-family:var(--font-heading); font-size:1rem; font-weight:800; color:var(--color-text); margin-bottom:1rem; }
.ang-faq__item { border-top:1px solid var(--color-border); }
.ang-faq__q { padding:.85rem 0; font-size:.88rem; font-weight:600; color:var(--color-text); cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:.5rem; }
.ang-faq__q::-webkit-details-marker { display:none; }
.ang-faq__q::after { content:'+'; font-size:1.2rem; font-weight:400; color:var(--color-primary); flex-shrink:0; transition:transform .2s; }
.ang-faq__item[open] > .ang-faq__q::after { transform:rotate(45deg); }
.ang-faq__a { padding-bottom:.85rem; }
.ang-faq__a p { font-size:.85rem; line-height:1.7; color:var(--color-text-light); margin:0; }
@media (max-width:900px) {
.ang-seo__grid { grid-template-columns:1fr; }
.ang-hubs__grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:600px) {
.ang-hero { min-height:420px; }
.ang-hero__stats { gap:1rem; }
.ang-stat strong { font-size:1.1rem; }
.ang-hubs__grid { grid-template-columns:repeat(2,1fr); }
.ang-trust__grid { grid-template-columns:1fr 1fr; }
.ang-grid { grid-template-columns:1fr; }
} .ang-hero{position:relative;min-height:520px;display:flex;align-items:flex-end;overflow:hidden}
.ang-hero__bg{position:absolute;inset:0;z-index:0}
.ang-hero__img{width:100%;height:100%;object-fit:cover}
.ang-hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.25) 0%,rgba(0,0,0,.65) 100%)}
.ang-hero__inner{position:relative;z-index:2;padding-block:3rem 2.5rem;color:#fff}
.ang-hero__eyebrow{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.85;margin-bottom:.9rem}
.ang-hero__dot{width:7px;height:7px;border-radius:50%;background:var(--color-primary);display:inline-block}
h1.ang-hero__h1,.ang-hero__h1{font-family:var(--font-heading);font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1.1;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.45);margin-bottom:.75rem}
.ang-hero__sub{font-size:clamp(.95rem,2vw,1.1rem);opacity:.92;line-height:1.65;margin-bottom:1.5rem}
.ang-hero__chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.ang-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .9rem;border-radius:99px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);color:#fff;font-size:.82rem;font-weight:600;backdrop-filter:blur(4px);transition:background var(--trans-fast);text-decoration:none}
.ang-chip:hover{background:rgba(255,255,255,.3);color:#fff}
.ang-hero__stats{display:flex;gap:1.5rem;flex-wrap:wrap}
.ang-stat{display:flex;flex-direction:column}
.ang-stat strong{font-size:1.4rem;font-weight:800;line-height:1}
.ang-stat span{font-size:.75rem;opacity:.8;margin-top:.15rem}
.ang-stat__divider{width:1px;background:rgba(255,255,255,.3);align-self:stretch}
.ang-cat-nav{background:var(--color-white);border-bottom:1px solid var(--color-border);position:sticky;top:var(--header-h,64px);z-index:90}
.ang-cat-nav__inner{display:flex;gap:0;overflow-x:auto;scrollbar-width:none}
.ang-cat-nav__inner::-webkit-scrollbar{display:none}
.ang-cat-nav__item{display:flex;align-items:center;gap:.4rem;padding:.85rem 1.1rem;font-size:.85rem;font-weight:600;color:var(--color-text-light);white-space:nowrap;text-decoration:none;border-bottom:2px solid transparent;transition:color var(--trans-fast),border-color var(--trans-fast)}
.ang-cat-nav__item:hover,.ang-cat-nav__item.is-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}
.ang-deals{padding-block:2.5rem}
.ang-deals__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}
.ang-deals__h{font-family:var(--font-heading);font-size:1.4rem;font-weight:800;color:var(--color-text);margin:0}
.ang-deals__count{font-size:.82rem;color:var(--color-text-light)}
.ang-sort{display:flex;align-items:center;gap:.5rem}
.ang-sort-select{padding:.4rem .8rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.85rem;background:var(--color-white);color:var(--color-text);cursor:pointer}
.ang-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}
.ang-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow var(--trans-base),transform var(--trans-base)}
.ang-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.ang-card__link{text-decoration:none;color:inherit;display:flex;flex-direction:column;flex:1}
.ang-card__img-wrap{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--color-bg-alt)}
.ang-card__img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.ang-card:hover .ang-card__img{transform:scale(1.04)}
.ang-card__badge{position:absolute;top:.6rem;left:.6rem;padding:.2rem .6rem;border-radius:99px;font-size:.7rem;font-weight:700;letter-spacing:.04em;color:#fff}
.ang-card__saving{position:absolute;top:.6rem;right:.6rem;background:var(--color-primary);color:#fff;padding:.2rem .6rem;border-radius:99px;font-size:.72rem;font-weight:700}
.ang-card__body{padding:1rem;flex:1;display:flex;flex-direction:column}
.ang-card__reederei{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);margin-bottom:.35rem}
.ang-card__title{font-family:var(--font-heading);font-size:1rem;font-weight:700;color:var(--color-text);line-height:1.3;margin-bottom:.5rem}
.ang-card__route,.ang-card__ship{font-size:.78rem;color:var(--color-text-light);display:flex;align-items:center;gap:.3rem;margin-bottom:.25rem}
.ang-card__meta{display:flex;gap:.75rem;margin-top:.5rem;font-size:.78rem;color:var(--color-text-light)}
.ang-card__detail{display:flex;align-items:center;gap:.25rem}
.ang-card__rating{display:flex;align-items:center;gap:.25rem;margin-top:.5rem}
.ang-card__rating-val{font-size:.8rem;font-weight:700;color:var(--color-text)}
.ang-star{color:#F5A623;font-size:.85rem}
.ang-star--empty{color:var(--color-border)}
.ang-card__footer{padding:.75rem 1rem;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.ang-card__pricing{display:flex;flex-direction:column}
.ang-card__price-old{font-size:.75rem;color:var(--color-text-light);text-decoration:line-through}
.ang-card__price{font-size:1.25rem;font-weight:800;color:var(--color-primary);line-height:1}
.ang-card__cta{padding:.5rem 1rem;background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);font-size:.82rem;font-weight:700;white-space:nowrap;transition:background var(--trans-fast)}
.ang-card__cta:hover{background:var(--color-primary-dark,#094070);color:#fff}
.ang-more{text-align:center;margin-top:2rem}
.ang-more__btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 2rem;border:2px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);font-weight:700;font-size:.9rem;text-decoration:none;transition:background var(--trans-fast),color var(--trans-fast)}
.ang-more__btn:hover{background:var(--color-primary);color:#fff}
.ang-hubs{padding-block:2.5rem;background:var(--color-bg-alt)}
.ang-hubs__h{font-family:var(--font-heading);font-size:1.35rem;font-weight:800;color:var(--color-text);margin-bottom:.4rem}
.ang-hubs__sub{color:var(--color-text-light);font-size:.9rem;margin-bottom:1.5rem}
.ang-hubs__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}
.ang-hub{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;padding:1.25rem .75rem;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;color:var(--color-text);text-align:center;transition:box-shadow var(--trans-base),transform var(--trans-base)}
.ang-hub:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.ang-hub__icon{font-size:1.75rem}
.ang-hub__text{font-size:.82rem;font-weight:700;line-height:1.3}
.ang-hub__arrow{font-size:.75rem;color:var(--color-primary)}
.ang-hub--lastminute{border-top:3px solid #e53e3e}
.ang-hub--mittelmeer{border-top:3px solid #3182ce}
.ang-hub--familien{border-top:3px solid #38a169}
.ang-hub--aida{border-top:3px solid #e53e3e}
.ang-hub--ohneflug{border-top:3px solid #805ad5}
.ang-hub--luxus{border-top:3px solid #b7791f}
.ang-trust{padding-block:2.5rem}
.ang-trust__h{font-family:var(--font-heading);font-size:1.35rem;font-weight:800;color:var(--color-text);margin-bottom:1.5rem}
.ang-trust__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}
.ang-trust__item{display:flex;flex-direction:column;gap:.4rem}
.ang-trust__num{font-size:1.5rem;font-weight:800;color:var(--color-primary)}
.ang-trust__label{font-size:.82rem;color:var(--color-text-light)}
.ang-trust__bar{height:6px;background:var(--color-bg-alt);border-radius:99px;overflow:hidden;margin-top:.35rem}
.ang-trust__fill{height:100%;background:var(--color-primary);border-radius:99px}
.ang-trust__cta{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;padding:1.25rem 1.5rem;background:var(--color-bg-alt);border-radius:var(--radius-lg)}
.ang-trust__cta-text{flex:1;min-width:200px;font-size:.9rem}
.ang-trust__cta-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);font-weight:700;font-size:.9rem;text-decoration:none;white-space:nowrap}
.ang-trust__cta-btn:hover{background:var(--color-primary-dark,#094070);color:#fff}
.ang-trust small{display:block;font-size:.75rem;color:var(--color-text-light);margin-top:.25rem}
.ang-seo{padding-block:3rem;background:var(--color-bg-alt)}
.ang-seo__grid{display:grid;grid-template-columns:1fr 380px;gap:3rem;align-items:start}
.ang-seo__main h2{font-family:var(--font-heading);font-size:1.35rem;font-weight:800;color:var(--color-text);margin-bottom:.75rem}
.ang-seo__main h3{font-family:var(--font-heading);font-size:1.05rem;font-weight:700;color:var(--color-text);margin:1.25rem 0 .5rem}
.ang-seo__main p{font-size:.9rem;line-height:1.75;color:var(--color-text-light)}
.ang-faq{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem}
.ang-faq__heading{font-family:var(--font-heading);font-size:1rem;font-weight:800;color:var(--color-text);margin-bottom:1rem}
.ang-faq__item{border-top:1px solid var(--color-border)}
.ang-faq__q{padding:.85rem 0;font-size:.88rem;font-weight:600;color:var(--color-text);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.ang-faq__q::-webkit-details-marker{display:none}
.ang-faq__q::after{content:'+';font-size:1.2rem;font-weight:400;color:var(--color-primary);flex-shrink:0;transition:transform .2s}
.ang-faq__item[open]>.ang-faq__q::after{transform:rotate(45deg)}
.ang-faq__a{padding-bottom:.85rem}
.ang-faq__a p{font-size:.85rem;line-height:1.7;color:var(--color-text-light);margin:0}
@media(max-width:900px){.ang-seo__grid{grid-template-columns:1fr}.ang-hubs__grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.ang-hero{min-height:420px}.ang-hero__stats{gap:1rem}.ang-stat strong{font-size:1.1rem}.ang-hubs__grid{grid-template-columns:repeat(2,1fr)}.ang-trust__grid{grid-template-columns:1fr 1fr}.ang-grid{grid-template-columns:1fr}} .ratgeber-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:1.5rem; margin-top:2rem; }
.ratgeber-card { background:var(--color-white); border:1px solid var(--color-border); border-radius:var(--radius-lg); overflow:hidden; transition:box-shadow var(--trans-base),transform var(--trans-base); }
.ratgeber-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-2px); }
.ratgeber-card__link { text-decoration:none; color:inherit; display:flex; flex-direction:column; }
.ratgeber-card__img-wrap { aspect-ratio:16/9; overflow:hidden; }
.ratgeber-card__img { width:100%; height:100%; object-fit:cover; }
.ratgeber-card__body { padding:1.25rem; display:flex; flex-direction:column; gap:.5rem; }
.ratgeber-card__title { font-family:var(--font-heading); font-size:1.05rem; font-weight:700; color:var(--color-text); line-height:1.3; margin:0; }
.ratgeber-card__excerpt { font-size:.85rem; color:var(--color-text-light); line-height:1.65; margin:0; }
.ratgeber-card__cta { font-size:.82rem; font-weight:700; color:var(--color-primary); margin-top:.25rem; }
.ratgeber-empty { max-width:680px; margin:2rem auto; }
.ratgeber-empty h2 { font-family:var(--font-heading); font-size:1.35rem; font-weight:800; margin-bottom:.75rem; }
.ratgeber-empty p { color:var(--color-text-light); line-height:1.7; }
.ratgeber-topics { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:.75rem; margin-top:1.25rem; }
.ratgeber-topic-card { display:flex; align-items:center; gap:.5rem; padding:.65rem .9rem; background:var(--color-bg-alt); border-radius:var(--radius-sm); font-size:.85rem; color:var(--color-text); } .rz-toc {
background: var(--color-bg-alt);
border: 1px solid var(--color-border);
border-left: 4px solid var(--color-primary);
border-radius: var(--radius-md);
padding: 1.25rem 1.5rem 1.25rem 1.25rem;
margin: 0 0 2rem;
max-width: 560px;
}
.rz-toc__header {
display: flex;
align-items: center;
gap: .45rem;
font-size: .9rem;
color: var(--color-text-light);
margin-bottom: .85rem;
}
.rz-toc__header strong { color: var(--color-text); font-size: .95rem; }
.rz-toc__list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: .3rem;
}
.rz-toc__item { display: flex; }
.rz-toc__link {
display: flex;
align-items: baseline;
gap: .6rem;
font-size: .875rem;
color: var(--color-primary);
text-decoration: none;
line-height: 1.45;
transition: color var(--trans-fast);
}
.rz-toc__link:hover { color: var(--color-primary-dark, #094070); text-decoration: underline; }
.rz-toc__num {
flex-shrink: 0;
width: 1.4rem;
height: 1.4rem;
display: flex;
align-items: center;
justify-content: center;
background: var(--color-primary);
color: #fff;
border-radius: 50%;
font-size: .7rem;
font-weight: 700;
line-height: 1;
} html { scroll-behavior: smooth; } .rz-content h2[id] { scroll-margin-top: calc(var(--header-h, 64px) + 1.5rem); } .expert-note, .warning-note {
border-radius: var(--radius-md);
padding: 1rem 1.25rem;
margin: 1.5rem 0;
font-size: .9rem;
line-height: 1.7;
}
.expert-note {
background: #f0f7ff;
border-left: 4px solid var(--color-primary);
}
.warning-note {
background: #fff8f0;
border-left: 4px solid #e67e22;
}
.expert-note strong, .warning-note strong { display: block; margin-bottom: .35rem; font-size: .82rem; text-transform: uppercase; letter-spacing: .04em; }
.expert-note strong { color: var(--color-primary); }
.warning-note strong { color: #c0392b; } .ratgeber-table { width: 100%; border-collapse: collapse; margin: 1.25rem 0; font-size: .88rem; }
.ratgeber-table th { background: var(--color-primary); color: #fff; padding: .6rem .85rem; text-align: left; font-weight: 600; }
.ratgeber-table td { padding: .55rem .85rem; border-bottom: 1px solid var(--color-border); vertical-align: top; }
.ratgeber-table tr:nth-child(even) td { background: var(--color-bg-alt); }