/* =========================================================
   Akademis brand layer on top of Bootstrap 5 / Atheox Theme.
   Style values match the live akademis.ch layout 1:1.
   ========================================================= */

:root {
    --ak-blue: #4886C7;          /* primary CTA blue (.main__btn) */
    --ak-navy: #143861;          /* dark navy titles */
    --ak-navy-deep: #284E79;     /* footer navy */
    --ak-slate: #61717B;         /* secondary text gray */
    --ak-light-blue: #E3F0F7;    /* why-section bg */
    --ak-footer-text: #95B2D3;   /* footer text */
    --ak-card-bg: #ffffff;
    --ak-border: #EAEFF6;
    --ak-shadow-sm: 0 1px 2px rgba(20, 56, 97, .06);
    --ak-shadow: 0 8px 24px rgba(20, 56, 97, .08);
    --ak-shadow-lg: 0 20px 60px rgba(20, 56, 97, .15);
}

body {
    font-family: 'Poppins', system-ui, sans-serif;
    font-size: 16px;
    color: #000;
    -webkit-font-smoothing: antialiased;
}

/* ===== Buttons ===== */
.ak-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 32px;
    font-weight: 600;
    text-decoration: none;
    border: 0;
    cursor: pointer;
    line-height: 1.2;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease;
}
/* Primary CTA — blue bg, white text — matches .main__btn on akademis.ch */
.ak-btn-primary {
    background: var(--ak-blue);
    color: #fff !important;
    padding: 13px 49px;
    font-size: 17px;
}
.ak-btn-primary:hover { background: #3974b3; transform: translateY(-1px); }

/* Navbar CTA — white pill, blue text — matches .header-btn.start-now */
.ak-btn-nav {
    background: #fff;
    color: var(--ak-blue) !important;
    padding: 12px 32px;
    font-size: 16px;
    border-radius: 30px;
    border: 1px solid var(--ak-blue);
}
.ak-btn-nav:hover { background: var(--ak-blue); color: #fff !important; }

/* Secondary CTA (peace section) — blue inverted variant */
.ak-btn-secondary {
    background: var(--ak-blue);
    color: #fff !important;
    padding: 13px 49px;
    border-radius: 32px;
    font-size: 17px;
    font-weight: 600;
}
.ak-btn-secondary:hover { background: #3974b3; }

/* ===== Navbar ===== */
.ak-navbar {
    background: #fff;
    border: 0;
}
.ak-navbar-brand img { display: block; height: 56px; width: auto; }
.ak-nav-links { gap: 1.5rem; }
.ak-nav-links .nav-link {
    color: #000;
    font-weight: 400;
    font-size: 16px;
    padding: .65rem .25rem;
}
.ak-nav-links .nav-link:hover { color: var(--ak-blue); }
.ak-lang-toggle {
    background: transparent;
    border: 0;
    color: #000;
    padding: 8px 12px;
    font-size: 14px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}
.ak-lang-toggle:hover, .ak-lang-toggle:focus { background: rgba(0,0,0,.04); color: #000; }
.ak-lang-toggle .fi { width: 20px; height: 14px; display: inline-block; }
.ak-lang-name { font-weight: 500; }
.ak-lang-item { display: flex; align-items: center; padding: 8px 16px; }
.ak-lang-item .fi { width: 20px; height: 14px; }
.ak-navbar-toggler { border: 1px solid var(--ak-border); }

/* ===== HERO (.main) ===== */
.ak-hero {
    position: relative;
    padding: 200px 0 150px;
    background: #fff;
    overflow: hidden;
}
.ak-hero::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 56%;
    max-width: 800px;
    background-image: url('/images/main_bg.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    z-index: 0;
    pointer-events: none;
}
.ak-hero .container { position: relative; z-index: 1; }
.ak-hero-title {
    color: #000;
    font-family: 'Poppins', sans-serif;
    font-size: 50px;
    font-weight: 400;
    line-height: 65px;
    max-width: 630px;
    margin: 0 0 20px;
}
.ak-hero-subtitle {
    color: var(--ak-slate);
    font-size: 22px;
    font-weight: 400;
    line-height: 30.8px;
    max-width: 586px;
    margin: 0 0 40px;
}

/* ===== Section titles ===== */
.ak-section-title {
    color: var(--ak-navy);
    font-family: 'Poppins', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    margin: 0 0 55px;
    text-align: center;
}

/* ===== WARUM AKADEMIS (.why) ===== */
.ak-why-section {
    position: relative;
    background-color: var(--ak-light-blue);
    padding: 80px 0 123px;
}
.ak-why-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('/images/waves.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 1;
    z-index: 0;
}
.ak-why-section .container { position: relative; z-index: 1; }
.ak-why-item {
    background: #fff;
    border-radius: 20px 0 0 0;  /* asymmetric: only top-left rounded */
    padding: 11px 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    height: 114px;
    overflow: hidden;
}
.ak-why-item-img {
    flex: 0 0 114px;
    width: 114px;
    height: 114px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.ak-why-item-info { flex: 1; min-width: 0; }
.ak-why-item-title {
    color: var(--ak-slate);
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 2px;
}
.ak-why-item-subtitle {
    color: var(--ak-slate);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}

/* ===== SO FUNKTIONIERT'S (.how) ===== */
.ak-how-section {
    position: relative;
    background: #fff;
    padding: 90px 0 58px;
    overflow: hidden;
}
.ak-how-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 580px;
    height: 600px;
    background-image: url('/images/add/how_bg.png');
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
    z-index: 0;
    pointer-events: none;
}
.ak-how-section .container { position: relative; z-index: 1; }
.ak-how-section .ak-section-title {
    color: #000;
    font-size: 50px;
    font-weight: 400;
    text-align: left;
    margin-bottom: 75px;
}

/* Row holds 4 diamond steps + dashed gradient connecting line behind them */
.ak-how-row {
    position: relative;
}
.ak-how-row::before {
    content: "";
    position: absolute;
    /* Col padding-top (24px from g-4) + diamond half-height (40px) = 64px */
    top: 64px;
    left: 12.5%;
    right: 12.5%;
    height: 2px;
    background: linear-gradient(90deg, #4886C7 0%, #4995C1 33%, #48A3BA 66%, #48B1B4 100%);
    /* Mask creates the dashed pattern over the gradient (15px on / 15px off) */
    -webkit-mask: repeating-linear-gradient(90deg, #000 0 15px, transparent 15px 30px);
            mask: repeating-linear-gradient(90deg, #000 0 15px, transparent 15px 30px);
    z-index: 0;
    pointer-events: none;
}
.ak-how-row > [class*="col-"] { position: relative; z-index: 1; }
.ak-how-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 270px;
    margin: 0 auto;
}
.ak-how-num {
    position: relative;
    width: 80px;
    height: 80px;
    margin: 0 auto 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 28px;
    font-weight: 600;
    z-index: 1;
}
.ak-how-num::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--diamond, #4886C7);
    border-radius: 6px;
    transform: rotate(45deg);
    z-index: -1;
}
/* Per-item gradient color via nth-child of the column wrapper */
.ak-how-row > [class*="col-"]:nth-child(1) .ak-how-num { --diamond: #4886C7; }
.ak-how-row > [class*="col-"]:nth-child(2) .ak-how-num { --diamond: #4995C1; }
.ak-how-row > [class*="col-"]:nth-child(3) .ak-how-num { --diamond: #48A3BA; }
.ak-how-row > [class*="col-"]:nth-child(4) .ak-how-num { --diamond: #48B1B4; }

.ak-how-title {
    color: #000;
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
    margin: 0 0 6px;
    max-width: 270px;
}
.ak-how-text {
    color: var(--ak-slate);
    font-size: 18px;
    font-weight: 400;
    line-height: 25.2px;
    margin: 0;
    max-width: 270px;
}
.ak-how-cta { margin-top: 60px; text-align: center; position: relative; z-index: 2; }

/* ===== PARTNERS (.insurance) — solid navy with low-opacity image overlay ===== */
.ak-insurance {
    position: relative;
    padding: 107px 0 66px;
    color: #fff;
    background-color: #32659D;
    overflow: hidden;
}
.ak-insurance::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('/images/insurance_bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0.15;
    z-index: 0;
    pointer-events: none;
}
.ak-insurance .container { position: relative; z-index: 1; }
.ak-insurance-title {
    color: #fff;
    font-family: 'Poppins', sans-serif;
    font-size: 50px;
    font-weight: 400;
    text-align: center;
    margin: 0 0 24px;
}
.ak-insurance-subtitle {
    color: rgba(255,255,255,.85);
    font-size: 18px;
    line-height: 1.55;
    text-align: center;
    max-width: 920px;
    margin: 0 auto 60px;
}
.ak-insurance-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    margin-bottom: 56px;
}
.ak-insurance-item {
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 70% auto;
    width: 193px;
    height: 87px;
    border-radius: 20px 0;  /* asymmetric: top-left + bottom-right */
}

/* Privacy/trust card centered below logos — transparent with white border */
.ak-insurance-quote {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255,.55);
    border-radius: 20px 0;
    padding: 28px 32px;
    display: flex;
    gap: 18px;
    align-items: flex-start;
    max-width: 730px;
    margin: 0 auto;
    text-align: left;
}
.ak-insurance-quote p { color: rgba(255,255,255,.92); }
.ak-insurance-quote-img {
    flex: 0 0 50px;
    width: 50px;
    height: 57px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url('/images/trust_quote-icon.png');
}
.ak-insurance-quote p { font-size: 15px; line-height: 1.6; margin: 0; }

/* ===== TESTIMONIALS / REVIEWS ===== */
.ak-reviews {
    position: relative;
    background: linear-gradient(90deg, #E3F0F7 0%, #F4FBFF 100%);
    padding: 60px 0 68px;
    overflow: hidden;
}
.ak-reviews::before {
    content: "";
    position: absolute;
    bottom: 20px;
    right: 0;
    width: 201px;
    height: 166px;
    background-image: url('/images/reviews_bg-icon.png');
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: contain;
    z-index: 0;
    pointer-events: none;
}
.ak-reviews .container { position: relative; z-index: 1; }
.ak-reviews .ak-section-title { color: var(--ak-navy); font-size: 48px; font-weight: 400; }
.ak-reviews-carousel {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 60px;
    position: relative;
}
.ak-reviews-slide {
    position: relative;
    display: flex;
    gap: 30px;
    align-items: center;
    padding: 40px;
    background: #fff;
    border-radius: 20px 0;
    box-shadow: 0 8px 28px rgba(20, 56, 97, .10);
}
.ak-reviews-slide-img {
    flex: 0 0 138px;
    width: 138px;
    height: 138px;
    border-radius: 50%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.ak-reviews-cta {
    text-align: center;
    margin-top: 32px;
}
.ak-btn-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: var(--ak-blue) !important;
    border: 1.6px solid var(--ak-blue);
    border-radius: 32px;
    padding: 13px 32px;
    font-size: 17px;
    font-weight: 600;
    text-decoration: none;
}
.ak-btn-outline:hover { background: var(--ak-blue); color: #fff !important; }

/* Teal CTA — used under How section and Peace section (matches .btn-secondary on akademis.ch) */
.ak-btn-teal {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #01A2BB;
    color: #fff !important;
    border: 0;
    border-radius: 40px;
    padding: 13px 49px;
    font-size: 17px;
    font-weight: 600;
    text-decoration: none;
}
.ak-btn-teal:hover { background: #018ea4; }
.ak-reviews-slide-text {
    font-size: 17px;
    line-height: 1.55;
    color: #000;
    margin: 0 0 14px;
}
.ak-reviews-slide-author {
    color: var(--ak-navy);
    font-weight: 600;
    font-size: 15px;
}
.ak-reviews-nav {
    width: 42px !important;
    height: 36px !important;
    background: transparent !important;
    border: 0 !important;
    opacity: 1 !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.ak-reviews-nav.carousel-control-prev { left: 0 !important; }
.ak-reviews-nav.carousel-control-next { right: 0 !important; }
.ak-reviews-nav-arrow {
    display: inline-block;
    width: 42px; height: 36px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.ak-reviews-nav-arrow--prev {
    background-image: url("data:image/svg+xml,%3Csvg width='42' height='36' viewBox='0 0 42 36' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M41.25 18C41.25 18.67 40.98 19.32 40.51 19.79C40.03 20.26 39.39 20.53 38.72 20.53L9.39 20.53L20.26 31.4C20.7 31.88 20.95 32.51 20.94 33.17C20.92 33.82 20.66 34.45 20.2 34.91C19.73 35.38 19.11 35.64 18.45 35.66C17.79 35.67 17.16 35.42 16.68 34.98L1.49 19.79C1.02 19.31 0.75 18.67 0.75 18C0.75 17.33 1.02 16.69 1.49 16.21L16.68 1.02C17.16 0.58 17.79 0.33 18.45 0.34C19.11 0.36 19.73 0.62 20.2 1.09C20.66 1.55 20.92 2.18 20.94 2.83C20.95 3.49 20.7 4.12 20.26 4.6L9.39 15.47L38.72 15.47C39.39 15.47 40.03 15.74 40.51 16.21C40.98 16.69 41.25 17.33 41.25 18Z' fill='%235597B8'/%3E%3C/svg%3E");
}
.ak-reviews-nav-arrow--next {
    background-image: url("data:image/svg+xml,%3Csvg width='42' height='36' viewBox='0 0 42 36' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.75 18C0.75 17.33 1.02 16.69 1.49 16.21C1.97 15.74 2.61 15.47 3.28 15.47L32.61 15.47L21.74 4.6C21.3 4.12 21.05 3.49 21.06 2.83C21.08 2.18 21.34 1.55 21.8 1.09C22.27 0.62 22.89 0.36 23.55 0.34C24.21 0.33 24.84 0.58 25.32 1.02L40.51 16.21C40.98 16.69 41.25 17.33 41.25 18C41.25 18.67 40.98 19.31 40.51 19.79L25.32 34.98C24.84 35.42 24.21 35.67 23.55 35.66C22.89 35.64 22.27 35.38 21.8 34.91C21.34 34.45 21.08 33.82 21.06 33.17C21.05 32.51 21.3 31.88 21.74 31.4L32.61 20.53L3.28 20.53C2.61 20.53 1.97 20.26 1.49 19.79C1.02 19.31 0.75 18.67 0.75 18Z' fill='%235597B8'/%3E%3C/svg%3E");
}

/* ===== PEACE / FINAL CTA — flex row, image left + info right (white bg) ===== */
.ak-peace { padding: 0; background: #fff; }
.ak-peace-wrapper {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    min-height: 380px;
    background: #fff;
}
.ak-peace-img {
    flex: 1 1 50%;
    background-image: url('/images/peace.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 380px;
}
.ak-peace-info {
    flex: 1 1 50%;
    background: transparent;
    padding: 56px 54px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.ak-peace-title {
    color: var(--ak-navy);
    font-family: 'Poppins', sans-serif;
    font-size: 34px;
    font-weight: 500;
    line-height: 44.2px;
    margin: 0 0 24px;
}
.ak-peace-text {
    color: var(--ak-slate);
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 23.04px;
    margin: 0 0 28px;
}
.ak-peace-btn-wrapper { display: flex; }
.ak-peace-btn {
    background: #01A2BB;
    color: #fff !important;
    padding: 13px 49px;
    border-radius: 40px;
    font-size: 17px;
    font-weight: 600;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.ak-peace-btn:hover { background: #018ea4; }

/* ===== Page header (interior pages) ===== */
.ak-pageheader {
    background: var(--ak-light-blue);
    padding: 80px 0 60px;
}
.ak-pageheader-title {
    font-size: 50px;
    font-weight: 600;
    color: var(--ak-navy);
    margin: 0 0 12px;
}
.ak-pageheader-subtitle { color: var(--ak-slate); font-size: 20px; max-width: 50rem; }

/* ===== Generic section spacing ===== */
.ak-section { padding: 60px 0; background: #fff; }

/* ===== Forms ===== */
.ak-card-form {
    background: #fff;
    border-radius: 20px 0;
    border: 1px solid var(--ak-border);
    padding: 36px;
    box-shadow: var(--ak-shadow);
    max-width: 880px;
    margin: 0 auto;
}
.ak-form-legend {
    font-size: 18px;
    font-weight: 600;
    color: var(--ak-navy);
    display: flex; align-items: center; gap: .5rem;
    margin-bottom: 1rem;
}
.ak-form-step {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 28px;
    border-radius: 50%;
    background: var(--ak-blue);
    color: #fff;
    font-size: .85rem;
    font-weight: 700;
}

/* ===== Provider listing (Anbieter page) ===== */
.ak-provider-detail {
    background: #fff;
    border-radius: 20px 0;
    border: 1px solid var(--ak-border);
    padding: 28px;
    box-shadow: var(--ak-shadow-sm);
    height: 100%;
}
.ak-provider-logo-lg {
    width: 56px; height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--ak-blue), var(--ak-navy));
    color: #fff;
    font-size: 1.5rem;
    display: flex; align-items: center; justify-content: center;
}
.ak-rating { color: #F5A623; font-weight: 600; }
.ak-pill {
    display: inline-block;
    padding: .25rem .65rem;
    border-radius: 999px;
    font-size: .75rem;
    background: var(--ak-light-blue);
    color: var(--ak-blue);
}

/* ===== Flow steps page ===== */
.ak-flow-step {
    background: #fff;
    border: 1px solid var(--ak-border);
    border-radius: 20px 0;
    padding: 28px 28px 28px 5.5rem;
    position: relative;
    box-shadow: var(--ak-shadow-sm);
    height: 100%;
}
.ak-flow-num {
    position: absolute;
    top: 28px; left: 28px;
    width: 56px; height: 56px;
    background: var(--ak-blue);
    border-radius: 6px;
    transform: rotate(45deg);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
}
.ak-flow-num > span { transform: rotate(-45deg); font-weight: 700; font-size: 22px; }

/* ===== Info tiles (Ueber uns) ===== */
.ak-info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}
.ak-info-tile {
    background: #fff;
    border: 1px solid var(--ak-border);
    border-radius: 20px 0;
    padding: 1rem;
    display: flex;
    gap: .75rem;
    align-items: flex-start;
}
.ak-info-tile i { color: var(--ak-blue); font-size: 1.25rem; margin-top: .15rem; }

/* ===== FAQ ===== */
.ak-faq-category { color: var(--ak-navy); font-weight: 700; font-size: 22px; }
.ak-accordion .accordion-button { background: #fff; font-weight: 600; color: var(--ak-navy); }
.ak-accordion .accordion-button:not(.collapsed) { background: var(--ak-light-blue); color: var(--ak-navy); box-shadow: none; }
.ak-accordion .accordion-item { border-color: var(--ak-border); border-radius: 12px; margin-bottom: .5rem; overflow: hidden; }

/* ===== Contact ===== */
.ak-contact-info { background: var(--ak-light-blue); border-radius: 20px 0; padding: 32px; }
.ak-contact-item {
    display: flex; align-items: center; gap: .75rem;
    padding: .65rem 0;
    border-bottom: 1px dashed var(--ak-border);
}
.ak-contact-item:last-child { border-bottom: 0; }
.ak-contact-item i { color: var(--ak-blue); width: 1.25rem; }

/* ===== Footer ===== */
.ak-footer {
    background: #284E79;
    color: #95B2D3;
    padding: 50px 0 0;
    margin-top: 0;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
}
.ak-footer-brand-blurb { color: #95B2D3; font-size: 15px; line-height: 1.55; font-weight: 400; }
.ak-footer-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px 24px;
}
.ak-footer-nav li { margin: 0; }
.ak-footer-link {
    display: inline-block;
    color: #95B2D3;
    text-decoration: none;
    padding: 6px 0;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
}
.ak-footer-link:hover { color: #fff; }
.ak-footer-follow {
    display: block;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 12px;
}
.ak-footer-social { display: flex; gap: 10px; }
.ak-footer-social a {
    width: 40px; height: 40px;
    border-radius: 50%;
    background: rgba(255,255,255,.10);
    color: #fff;
    display: inline-flex; align-items: center; justify-content: center;
    text-decoration: none;
    transition: background .15s ease;
}
.ak-footer-social a:hover { background: rgba(255,255,255,.22); }
.ak-footer-copyright {
    margin-top: 38px;
    padding: 18px 0;
    border-top: 1px solid rgba(255,255,255,.10);
    color: #A7C4ED;
    font-size: 13px;
    font-weight: 400;
}
.ak-footer-copyright a {
    color: #A7C4ED;
    text-decoration: none;
    font-size: 13px;
    font-weight: 400;
}
.ak-footer-copyright a:hover { color: #fff; }

/* =========================================================
   /anbieter (our-partners) page — measured 1:1 from akademis.ch
   ========================================================= */

/* ----- Header band (.main-add) ----- */
.ak-main-add {
    position: relative;
    padding: 105px 0 106px;
    background-image: url('/images/add/main-add-bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}
.ak-main-add__name {
    display: inline-block;
    color: #fff;
    background: #01A2BB;
    font-size: 24px;
    font-weight: 600;
    padding: 8px 20px;
    border-radius: 24px 3px;
    margin: 0 0 50px;
    line-height: 33.6px;
}
.ak-main-add__title {
    color: #143861;
    font-family: 'Poppins', sans-serif;
    font-size: 50px;
    font-weight: 400;
    line-height: 65px;
    max-width: 811px;
    margin: 0;
}

/* ----- Intro hero (.hero) — text left + image right ----- */
.ak-partners-hero { padding: 73px 0; background: #fff; }
.ak-partners-hero__wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0;
}
.ak-partners-hero__info { flex: 0 0 580px; max-width: 580px; }
.ak-partners-hero__img {
    flex: 0 0 580px;
    max-width: 580px;
    margin-left: auto;
    display: flex;
    justify-content: flex-end;
}
.ak-partners-hero__img img { max-width: 100%; height: auto; }
.ak-partners-hero__lead {
    color: #081C33;
    font-size: 16px;
    font-weight: 400;
    line-height: 25.6px;
    margin: 0 0 20px;
}
.ak-partners-hero__bg {
    background: #EEFAF9;
    border-radius: 12px;
    padding: 20px 24px;
}
.ak-partners-hero__bg p {
    color: #225270;
    font-size: 16px;
    font-weight: 600;
    line-height: 25.6px;
    margin: 0 0 20px;
}
.ak-partners-hero__bg p:last-child { margin-bottom: 0; }

/* ----- Partner overview grid (.our-insurance) — dark bg, white tiles ----- */
.ak-partners-grid {
    position: relative;
    padding: 107px 0 66px;
    background-image: url('/images/add/our-partners/partners-bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}
.ak-partners-grid::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(20, 56, 97, .55);
    z-index: 0;
}
.ak-partners-grid .container { position: relative; z-index: 1; }
.ak-partners-grid__title {
    color: #fff;
    font-family: 'Poppins', sans-serif;
    font-size: 50px;
    font-weight: 400;
    line-height: 65px;
    text-align: center;
    margin: 0 0 3px;
}
.ak-partners-grid__subtitle {
    color: #D0EDFC;
    font-size: 22px;
    font-weight: 400;
    line-height: 30.8px;
    text-align: center;
    margin: 0 0 77px;
}
.ak-partners-grid__row {
    display: flex;
    flex-wrap: wrap;
    gap: 29px 20px;
    justify-content: center;
}
.ak-partners-grid__item {
    background: #fff;
    border-radius: 6px;
    padding: 14px 20px;
    width: 258px;
    height: 121px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.ak-partners-grid__icon {
    width: 218px;
    height: 50px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.ak-partners-grid__text {
    color: #000;
    font-size: 14px;
    font-weight: 400;
    line-height: 18.2px;
    text-align: center;
    margin: 0;
}

/* Quote callout under the partner tiles */
.ak-partners-grid__quote {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    background: #fff;
    border-radius: 20px 0;
    padding: 24px 32px;
    max-width: 820px;
    margin: 56px auto 0;
}
.ak-partners-grid__quote-img {
    flex: 0 0 50px;
    width: 50px;
    height: 57px;
    background-image: url('/images/trust_quote-icon.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.ak-partners-grid__quote-text {
    color: #143861;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    margin: 0;
}

/* ----- Why strong partnerships (.our-partners__why) ----- */
.ak-partners-why {
    position: relative;
    padding: 78px 0 84px;
    background-image: url('/images/add/our-partners/why-bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}
.ak-partners-why .container { position: relative; z-index: 1; }
.ak-partners-why__title {
    color: #000;
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 46.8px;
    text-align: center;
    margin: 0 0 10px;
}
.ak-partners-why__subtitle {
    color: #278299;
    font-size: 20px;
    font-weight: 600;
    line-height: 26px;
    text-align: center;
    max-width: 900px;
    margin: 0 auto 60px;
}
.ak-partners-why__wrapper {
    display: flex;
    flex-direction: row;
    gap: 32px;
    justify-content: center;
    max-width: 928px;
    margin: 0 auto 61px;
}
.ak-partners-why__item {
    flex: 1 1 0;
    max-width: 277px;
    background: #fff;
    border-radius: 1px;
    padding: 18px 25px 21px 16px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}
.ak-partners-why__item-img {
    flex: 0 0 42px;
    width: 42px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #B9F1DD 0%, #17ABB1 100%);
    border-radius: 50%;
    position: relative;
}
.ak-partners-why__item-img::before {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: #305C6A;
    font-size: 22px;
}
.ak-partners-why__item-text {
    color: #1E2020;
    font-size: 14px;
    font-weight: 400;
    line-height: 19.6px;
    margin: 0;
}
.ak-partners-why__extra {
    color: #284E79;
    font-size: 16px;
    font-weight: 400;
    line-height: 22.4px;
    text-align: center;
    max-width: 809px;
    margin: 0 auto;
}

/* ----- "Was du davon hast" (.our-partners-hero-2) — dark BG, cyan title, white text ----- */
.ak-partners-hero2 {
    position: relative;
    padding: 73px 0;
    background-image: url('/images/add/hero-2-bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}
.ak-partners-hero2 .container { position: relative; z-index: 1; }
.ak-partners-hero2__wrapper {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 0;
}
.ak-partners-hero2__img {
    flex: 0 0 530px;
    min-height: 419px;
    margin-right: 50px;
    background-image: url('/images/add/our-partners/hero-2.png');
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}
.ak-partners-hero2__info { flex: 0 0 580px; max-width: 580px; }
.ak-partners-hero2__title {
    color: #26DECB;
    font-family: 'Poppins', sans-serif;
    font-size: 28px;
    font-weight: 600;
    line-height: 39.2px;
    margin: 0 0 28px;
}
.ak-partners-hero2__text {
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    line-height: 32px;
    margin: 0 0 16px;
}
.ak-partners-hero2__text:last-child { margin-bottom: 0; }

/* ----- Qualität & Vertrauen (.our-partners-hero) — white section ----- */
.ak-partners-trust {
    position: relative;
    padding: 73px 0;
    background: #fff;
    overflow: hidden;
}
.ak-partners-trust .container { position: relative; z-index: 1; }
.ak-partners-trust__title {
    color: #193552;
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 46.8px;
    text-align: center;
    margin: 0 0 40px;
}
.ak-partners-trust__wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0;
    max-width: 892px;
    margin: 0 auto;
}
.ak-partners-trust__info { flex: 0 0 409px; max-width: 409px; margin-right: auto; }
.ak-partners-trust__text {
    color: #081C33;
    font-size: 18px;
    font-weight: 500;
    line-height: 27px;
    margin: 0 0 20px;
}
.ak-partners-trust__text-2 {
    color: #01A2BB;
    font-size: 18px;
    font-weight: 500;
    line-height: 27px;
    margin: 0;
}
.ak-partners-trust__img { flex: 0 0 417px; max-width: 417px; }
.ak-partners-trust__img img { width: 100%; height: auto; }

/* ----- Partner page responsive ----- */
@media (max-width: 991.98px) {
    .ak-main-add { padding: 110px 0 60px; }
    .ak-main-add__title { font-size: 34px; line-height: 1.2; }
    .ak-main-add__name { font-size: 18px; padding: 6px 16px; margin-bottom: 28px; }
    .ak-partners-hero__wrapper,
    .ak-partners-hero2__wrapper,
    .ak-partners-trust__wrapper { flex-direction: column; gap: 32px; }
    .ak-partners-hero__info,
    .ak-partners-hero__img,
    .ak-partners-hero2__info,
    .ak-partners-trust__info,
    .ak-partners-trust__img { flex: 1 1 100%; max-width: 100%; }
    .ak-partners-hero2__img { flex: 1 1 100%; margin-right: 0; }
    .ak-partners-grid__title { font-size: 32px; line-height: 1.2; }
    .ak-partners-grid__subtitle { font-size: 16px; line-height: 1.5; }
    .ak-partners-why__wrapper { flex-direction: column; align-items: center; }
    .ak-partners-why__item { width: 100%; max-width: 360px; }
    .ak-partners-why__title,
    .ak-partners-hero2__title,
    .ak-partners-trust__title { font-size: 26px; line-height: 1.25; }
    .ak-partners-hero2__text { font-size: 16px; line-height: 1.6; }
}

/* =========================================================
   /ueber-uns (about-us) page — measured 1:1 from akademis.ch
   ========================================================= */

/* ----- Intro hero (.hero) ----- */
.ak-about-hero { padding: 73px 0; background: #fff; }
.ak-about-hero__wrapper { display: flex; align-items: center; }
.ak-about-hero__info { flex: 0 0 50%; max-width: 580px; padding-right: 30px; }
.ak-about-hero__img { flex: 0 0 50%; display: flex; justify-content: flex-end; }
.ak-about-hero__img img { max-width: 100%; height: auto; }
.ak-about-hero__title {
    color: #143861;
    font-family: 'Poppins', sans-serif;
    font-size: 28px;
    font-weight: 600;
    line-height: 39.2px;
    margin: 0 0 28px;
}
.ak-about-hero__text {
    color: #081C33;
    font-size: 20px;
    font-weight: 400;
    line-height: 32px;
    margin: 0;
}

/* ----- Hero-2 (dark band, image left + cyan title + white text right) ----- */
.ak-about-hero2 {
    padding: 73px 0;
    background-image: url('/images/add/hero-2-bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.ak-about-hero2__wrapper { display: flex; align-items: center; }
.ak-about-hero2__img { flex: 0 0 50%; padding-right: 40px; }
.ak-about-hero2__img img { max-width: 100%; height: auto; }
.ak-about-hero2__info { flex: 0 0 50%; max-width: 580px; }
.ak-about-hero2__title {
    color: #26DECB;
    font-family: 'Poppins', sans-serif;
    font-size: 28px;
    font-weight: 600;
    line-height: 39.2px;
    margin: 0 0 28px;
}
.ak-about-hero2__text {
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    line-height: 32px;
}
.ak-about-hero2__text p { margin: 0 0 24px; }
.ak-about-hero2__text p:last-child { margin-bottom: 0; }

/* ----- Here / So funktioniert's (3 items + extra pill) ----- */
.ak-about-here { padding: 82px 0 110px; background: #fff; }
.ak-about-here__title {
    color: #143861;
    font-family: 'Poppins', sans-serif;
    font-size: 40px;
    font-weight: 600;
    text-align: center;
    margin: 0 0 78px;
}
.ak-about-here__wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 60px;
    row-gap: 54px;
}
.ak-about-here__item {
    display: flex;
    align-items: center;
    gap: 24px;
}
.ak-about-here__img {
    flex: 0 0 110px;
    width: 110px;
    height: 110px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    border-radius: 50%;
}
.ak-about-here__text {
    color: #000;
    font-size: 18px;
    font-weight: 400;
    line-height: 28.8px;
    margin: 0;
    flex: 1;
}
.ak-about-here__item--extra {
    align-items: center;
    justify-content: center;
}
.ak-about-here__extra {
    color: #1E979C;
    background: #F0FDFD;
    font-size: 26px;
    font-weight: 600;
    line-height: 36.4px;
    text-align: center;
    padding: 20px 40px;
    border-radius: 42px;
    width: 100%;
}

/* ----- Our mission (light blue waves bg, 2 cards) ----- */
.ak-about-mission {
    padding: 80px 0 108px;
    background-color: #E3F0F7;
    background-image: url('/images/waves.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.ak-about-mission__title {
    color: #143861;
    font-family: 'Poppins', sans-serif;
    font-size: 40px;
    font-weight: 400;
    text-align: center;
    margin: 0 0 48px;
}
.ak-about-mission__wrapper {
    display: flex;
    gap: 20px;
    align-items: stretch;
}
.ak-about-mission__item {
    flex: 1 1 0;
    background: #fff;
    border-radius: 12px;
    padding: 37.5px 32px 27.5px;
    color: #081C33;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}
.ak-about-mission__item span {
    color: #01A2BB;
    font-weight: 600;
}

/* ----- Different (6 items grid) ----- */
.ak-about-different { padding: 90px 0 58px; background: #fff; }
.ak-about-different__title {
    color: #143861;
    font-family: 'Poppins', sans-serif;
    font-size: 50px;
    font-weight: 600;
    text-align: center;
    margin: 0 0 75px;
}
.ak-about-different__wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}
.ak-about-different__item {
    background: #fff;
    border-radius: 8px;
    padding: 40px;
    box-shadow: 0 6px 24px rgba(20, 56, 97, .08);
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.ak-about-different__img {
    width: 64px;
    height: 64px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.ak-about-different__text {
    color: #2F2828;
    font-size: 18px;
    font-weight: 500;
    line-height: 25.2px;
}
.ak-about-different__text span {
    color: #01A2BB;
    font-weight: 700;
}

/* ----- Ueber-uns responsive ----- */
@media (max-width: 991.98px) {
    .ak-about-hero__wrapper,
    .ak-about-hero2__wrapper { flex-direction: column; gap: 32px; }
    .ak-about-hero__info,
    .ak-about-hero__img,
    .ak-about-hero2__img,
    .ak-about-hero2__info { flex: 1 1 100%; max-width: 100%; padding: 0; }
    .ak-about-here__wrapper { grid-template-columns: 1fr; }
    .ak-about-mission__wrapper { flex-direction: column; }
    .ak-about-different__wrapper { grid-template-columns: 1fr; }
    .ak-about-here__title,
    .ak-about-mission__title { font-size: 28px; }
    .ak-about-different__title { font-size: 32px; margin-bottom: 48px; }
}

/* =========================================================
   /built-for-purpose page — measured 1:1 from akademis.ch
   ========================================================= */

/* Shared breadcrumb */
.ak-bread { display: block; margin: 0 0 26px; font-size: 16px; }
.ak-bread-home { color: #4F689A; text-decoration: none; }
.ak-bread-home:hover { color: #143861; }
.ak-bread-link {
    color: #0A0A0A;
    text-decoration: none;
    margin-left: 8px;
    position: relative;
    padding-left: 16px;
}
.ak-bread-link::before { content: "›"; position: absolute; left: 0; top: 0; color: #4F689A; }

/* ----- MAIN-BUILT (top header) ----- */
.ak-main-built {
    position: relative;
    padding: 174px 0 0;
    background: #fff;
}
.ak-main-built__title {
    color: #0D1C2B;
    font-family: 'Poppins', sans-serif;
    font-size: 44px;
    font-weight: 500;
    line-height: 57.2px;
    margin: 0 0 5px;
}
.ak-main-built__subtitle {
    color: #3269A4;
    font-size: 20px;
    font-weight: 500;
    line-height: 26px;
    margin: 0 0 21px;
}
.ak-main-built__text {
    color: #193552;
    font-size: 16px;
    font-weight: 400;
    line-height: 23.36px;
    margin: 16px 0 19px;
}
.ak-main-built__wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 24px;
    margin: 32px 0 83px;
}
.ak-main-built__item {
    flex: 1 1 0;
    background: #F0FDFD;
    padding: 20px 16px;
    border-radius: 32px 8px 8px 8px;
    text-align: center;
}
.ak-main-built__item-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 10px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.ak-main-built__item-title {
    color: #278299;
    font-size: 16px;
    font-weight: 600;
    line-height: 20.8px;
    text-align: center;
    margin: 0 0 10px;
}
.ak-main-built__item-text {
    color: #193552;
    font-size: 12px;
    font-weight: 400;
    line-height: 16.8px;
    text-align: center;
    margin: 0;
}

/* ----- WHY-BUILT (gradient bg, title + items) ----- */
.ak-why-built {
    padding: 97px 0 95px;
    background-image: linear-gradient(265.24deg, rgb(229, 249, 255) 20.44%, rgba(227, 244, 247, .608) 46.52%, rgba(227, 240, 247, 0) 70.35%);
}
.ak-why-built__title {
    color: #193552;
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 46.8px;
    margin: 0 0 40px;
}
.ak-why-built__subtitle {
    color: #193552;
    font-size: 18px;
    font-weight: 500;
    line-height: 23.4px;
    margin: 0 0 15px;
}
.ak-why-built__text {
    color: #000;
    font-size: 16px;
    font-weight: 400;
    line-height: 23.36px;
    margin: 0 0 80px;
}
.ak-why-built__title-extra {
    color: #278299;
    font-size: 20px;
    font-weight: 600;
    line-height: 26px;
    text-align: center;
    margin: 0 0 25px;
}
.ak-why-built__wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 20px;
    max-width: 928px;
    margin: 0 auto;
}
.ak-why-built__item {
    flex: 1 1 0;
    max-width: 290px;
    background: #fff;
    padding: 18px 12px 21px 16px;
    border-radius: 1px;
    display: flex;
    align-items: center;
    gap: 14px;
}
.ak-why-built__item-img {
    flex: 0 0 42px;
    width: 42px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #B9F1DD 0%, #17ABB1 100%);
    border-radius: 50%;
    position: relative;
}
.ak-why-built__item-img::before {
    content: "\f00c";   /* Font Awesome check */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: #305C6A;
    font-size: 22px;
}
.ak-why-built__item-title {
    color: #10363F;
    font-size: 14px;
    font-weight: 600;
    line-height: 19.6px;
}
.ak-why-built__item-subtitle {
    color: #686D6F;
    font-size: 13px;
    font-weight: 400;
    line-height: 18.2px;
}

/* ----- MISSION-BUILT (3 illustrated cards) ----- */
.ak-mission-built {
    padding: 85px 0 96px;
    background: #fff;
}
.ak-mission-built__title {
    color: #000;
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 46.8px;
    text-align: center;
    margin: 0 0 10px;
}
.ak-mission-built__subtitle {
    color: #278299;
    font-size: 20px;
    font-weight: 600;
    line-height: 26px;
    text-align: center;
    margin: 0 0 61px;
}
.ak-mission-built__wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 48px;
}
.ak-mission-built__item {
    flex: 1 1 0;
    text-align: center;
}
.ak-mission-built__item-img {
    width: 200px;
    height: 200px;
    margin: 0 auto 16px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.ak-mission-built__item-title {
    color: #26507D;
    font-size: 20px;
    font-weight: 600;
    line-height: 26px;
    text-align: center;
    margin: 0 0 6px;
}
.ak-mission-built__item-text {
    color: #193552;
    font-size: 14px;
    font-weight: 400;
    line-height: 20.16px;
    text-align: center;
    margin: 0;
}

/* ----- WHO-BUILT (bg image) ----- */
.ak-who-built {
    padding: 97px 0 154px;
    background-image: url('/images/add/built-for-purpose/who-built-bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.ak-who-built__title {
    color: #193552;
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 46.8px;
    margin: 58px 0 40px;
}
.ak-who-built__text {
    color: #000;
    font-size: 16px;
    font-weight: 400;
    line-height: 23.36px;
    margin: 0;
    max-width: 700px;
}

/* ----- Built-for-purpose responsive ----- */
@media (max-width: 991.98px) {
    .ak-main-built { padding: 90px 0 0; }
    .ak-main-built__title { font-size: 32px; line-height: 1.2; }
    .ak-main-built__wrapper { flex-direction: column; }
    .ak-why-built__wrapper { flex-direction: column; max-width: 480px; }
    .ak-why-built__item { max-width: 100%; }
    .ak-mission-built__wrapper { flex-direction: column; gap: 32px; }
    .ak-mission-built__title,
    .ak-why-built__title,
    .ak-who-built__title { font-size: 28px; line-height: 1.25; }
    .ak-who-built { padding: 60px 0 100px; }
}

/* =========================================================
   /testimonials page
   ========================================================= */
.ak-testimonials-main { padding: 174px 0 75px; background: #fff; }
.ak-testimonials-main__title {
    color: #0D1C2B;
    font-family: 'Poppins', sans-serif;
    font-size: 44px;
    font-weight: 500;
    line-height: 61.6px;
    margin: 0 0 25px;
}
.ak-testimonials-main__text {
    color: #193552;
    font-size: 16px;
    font-weight: 400;
    line-height: 23.36px;
    max-width: 680px;
    margin: 0 0 35px;
}
.ak-testimonials-main__extra {
    color: #000;
    font-size: 20px;
    font-weight: 500;
    line-height: 26px;
    margin: 0 0 45px;
}
.ak-testimonials-main__wrapper {
    display: flex;
    flex-direction: column;
    gap: 30px;
    max-width: 1025px;
}
.ak-testimonials-main__item {
    background: #fff;
    border: 0.8px solid #CFE6ED;
    padding: 37px 29px;
    border-radius: 32px 8px 8px 8px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 32px;
}
/* Alternate every second item: image on the right instead of left */
.ak-testimonials-main__item:nth-child(even) { flex-direction: row-reverse; }
.ak-testimonials-main__item-img {
    flex: 0 0 126px;
    width: 126px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ak-testimonials-main__item-img img { max-width: 100%; height: auto; }
.ak-testimonials-main__item-info { flex: 1; min-width: 0; }
.ak-testimonials-main__item-title {
    color: #143861;
    font-size: 18px;
    font-weight: 600;
    line-height: 26px;
    margin: 0 0 6px;
}
.ak-testimonials-main__item-text {
    color: #193552;
    font-size: 16px;
    font-weight: 400;
    line-height: 23.36px;
    margin: 0 0 12px;
}
.ak-testimonials-main__item-name {
    color: #278299;
    font-size: 15px;
    font-weight: 600;
}

.ak-testimonials-feedback {
    padding: 50px 0 82px;
    background-image: url('/images/add/built-for-purpose/who-built-bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.ak-testimonials-feedback .container {
    display: flex;
    flex-direction: row;
    gap: 60px;
    align-items: center;
}
.ak-testimonials-feedback__image {
    flex: 0 0 464px;
    display: flex;
    justify-content: flex-end;
}
.ak-testimonials-feedback__image img { max-width: 100%; height: auto; }
.ak-testimonials-feedback__content { flex: 1 1 580px; max-width: 580px; }
.ak-testimonials-feedback__title {
    color: #193552;
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 46.8px;
    margin: 0 0 40px;
}
.ak-testimonials-feedback__text {
    color: #000;
    font-size: 16px;
    font-weight: 400;
    line-height: 23.36px;
    max-width: 515px;
    margin: 0;
}

.ak-testimonials-want { padding: 79px 0 96px; background: #fff; }
.ak-testimonials-want__wrapper {
    background: #F6FBFD;
    padding: 19px 36px;
    border-radius: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    max-width: 940px;
    margin: 0 auto;
}
.ak-testimonials-want__left { flex: 1 1 600px; max-width: 600px; }
.ak-testimonials-want__title {
    color: #278299;
    font-size: 16px;
    font-weight: 600;
    line-height: 20.8px;
    margin: 0 0 8px;
}
.ak-testimonials-want__text {
    color: #4886C7;
    font-size: 14px;
    font-weight: 400;
    line-height: 19.6px;
    margin: 0;
}
.ak-testimonials-want__right {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid #E2ECF6;
    border-radius: 16px;
    padding: 14px 18px;
    text-decoration: none;
    flex: 0 0 265px;
}
.ak-testimonials-want__right-img { flex: 0 0 56px; }
.ak-testimonials-want__right-img img { width: 56px; height: auto; }
.ak-testimonials-want__right-label { color: #278299; font-size: 14px; font-weight: 600; }
.ak-testimonials-want__right-email { color: #143861; font-size: 14px; font-weight: 500; }

@media (max-width: 991.98px) {
    .ak-testimonials-main { padding: 90px 0 60px; }
    .ak-testimonials-main__title { font-size: 32px; line-height: 1.2; }
    .ak-testimonials-main__item { flex-direction: column; }
    .ak-testimonials-feedback .container { flex-direction: column; }
    .ak-testimonials-feedback__title { font-size: 28px; line-height: 1.25; }
    .ak-testimonials-want__wrapper { flex-direction: column; align-items: stretch; }
}

/* =========================================================
   /news-events page
   ========================================================= */
.ak-news-main { padding: 174px 0 75px; background: #fff; }
.ak-news-main__title {
    color: #0D1C2B;
    font-family: 'Poppins', sans-serif;
    font-size: 44px;
    font-weight: 500;
    line-height: 57.2px;
    margin: 0 0 5px;
}
.ak-news-main__subtitle {
    color: #3269A4;
    font-size: 20px;
    font-weight: 500;
    line-height: 26px;
    margin: 0 0 21px;
}
.ak-news-main__text {
    color: #193552;
    font-size: 16px;
    font-weight: 400;
    line-height: 23.36px;
    max-width: 680px;
    margin: 16px 0 19px;
}

.ak-news-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 20px 0 40px;
}
.ak-news-filter-btn {
    background: transparent;
    border: 1.6px solid #4886C7;
    color: #4886C7;
    padding: 8px 22px;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
}
.ak-news-filter-btn.active,
.ak-news-filter-btn:hover { background: #4886C7; color: #fff; }

.ak-news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.ak-news-card {
    background: #fff;
    border: 1px solid #E2ECF6;
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    transition: transform .15s ease, box-shadow .15s ease;
}
.ak-news-card:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(20, 56, 97, .10); }
.ak-news-card__img {
    height: 180px;
    background: linear-gradient(135deg, #E3F0F7, #C9E0F0);
    background-size: cover;
    background-position: center;
}
.ak-news-card__body { padding: 20px 22px; flex: 1; display: flex; flex-direction: column; }
.ak-news-card__date {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #4886C7;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 10px;
}
.ak-news-card__title {
    color: #143861;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    margin: 0 0 10px;
}
.ak-news-card__excerpt {
    color: #61717B;
    font-size: 14px;
    line-height: 1.55;
    margin: 0;
    flex: 1;
}
.ak-news-card__type {
    display: inline-block;
    margin-top: 14px;
    color: #278299;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.ak-news-email {
    position: relative;
    padding: 79px 0 96px;
    background-color: #F6FBFD;
    background-image: url('/images/add/news/updates-bg.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}
.ak-news-email .container { position: relative; z-index: 1; }
.ak-news-email__content { max-width: 760px; margin: 0 auto; text-align: center; }
.ak-news-email__title {
    color: #143861;
    font-family: 'Poppins', sans-serif;
    font-size: 32px;
    font-weight: 500;
    margin: 0 0 16px;
}
.ak-news-email__text {
    color: #61717B;
    font-size: 16px;
    line-height: 1.6;
    margin: 0 0 28px;
}
.ak-news-email-form {
    display: flex;
    gap: 12px;
    max-width: 520px;
    margin: 0 auto;
}
.ak-news-email-input {
    flex: 1;
    border: 1px solid #E2ECF6;
    border-radius: 999px;
    padding: 12px 22px;
    font-size: 15px;
    background: #fff;
}
.ak-news-email-input:focus {
    outline: none;
    border-color: #4886C7;
}
.ak-news-email-btn {
    background: #01A2BB;
    color: #fff;
    border: 0;
    border-radius: 999px;
    padding: 12px 24px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
}
.ak-news-email-btn:hover { background: #018ea4; }

@media (max-width: 991.98px) {
    .ak-news-main { padding: 90px 0 60px; }
    .ak-news-main__title { font-size: 32px; line-height: 1.2; }
    .ak-news-grid { grid-template-columns: 1fr; }
    .ak-news-email-form { flex-direction: column; }
}

/* =========================================================
   /contact-us page
   ========================================================= */
.ak-contact { padding: 174px 0 98px; background: #fff; }
.ak-contact__title {
    color: #0D1C2B;
    font-family: 'Poppins', sans-serif;
    font-size: 44px;
    font-weight: 500;
    line-height: 57.2px;
    margin: 0 0 21px;
}
.ak-contact__subtitle {
    color: #3269A4;
    font-size: 20px;
    font-weight: 500;
    line-height: 26px;
    margin: 0 0 45px;
}
.ak-contact__wrapper {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}
.ak-contact-form {
    background: #fff;
    border: 1px solid #E2ECF6;
    border-radius: 8px;
    padding: 26px 32px;
    box-shadow: 0 6px 24px rgba(20, 56, 97, .06);
    flex: 0 0 602px;
    max-width: 602px;
}
.ak-contact-form-control { margin-bottom: 18px; }
.ak-contact-form-control label {
    display: block;
    color: #193552;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 6px;
}
.ak-contact-form-control input,
.ak-contact-form-control textarea {
    width: 100%;
    border: 1px solid #E2ECF6;
    border-radius: 6px;
    padding: 10px 14px;
    font-size: 15px;
    font-family: inherit;
    background: #fff;
}
.ak-contact-form-control textarea { min-height: 120px; resize: vertical; }
.ak-contact-form-control input:focus,
.ak-contact-form-control textarea:focus {
    outline: none;
    border-color: #4886C7;
    box-shadow: 0 0 0 .2rem rgba(72, 134, 199, .15);
}
.ak-contact-form__btn-wrapper { text-align: right; margin-top: 8px; }
.ak-contact-form__btn {
    background: #01A2BB;
    color: #fff;
    border: 0;
    border-radius: 999px;
    padding: 12px 36px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
}
.ak-contact-form__btn:hover { background: #018ea4; }
.ak-contact-form__under-btn-text {
    color: #61717B;
    font-size: 12px;
    line-height: 1.6;
    margin-top: 14px;
}
.ak-contact-info {
    flex: 1;
    background: #F6FBFD;
    border-radius: 8px;
    padding: 28px 32px;
}
.ak-contact-info__item {
    color: #193552;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 18px;
}
.ak-contact-info__item:last-child { margin-bottom: 0; }
.ak-contact-info__label {
    color: #278299;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 4px;
}
.ak-contact-info__value { color: #143861; font-weight: 500; }

@media (max-width: 991.98px) {
    .ak-contact { padding: 90px 0 60px; }
    .ak-contact__title { font-size: 32px; line-height: 1.2; }
    .ak-contact__wrapper { flex-direction: column; }
    .ak-contact-form,
    .ak-contact-info { flex: 1 1 100%; max-width: 100%; }
}

/* =========================================================
   /vergleich wizard
   ========================================================= */
.ak-wizard { background: #F6FBFD; min-height: calc(100vh - 82px); padding: 40px 0; }
.ak-wizard__layout {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 32px;
    max-width: 1200px;
    margin: 0 auto;
}
.ak-wizard__side {
    background: #fff;
    border-radius: 16px;
    padding: 32px 26px;
    box-shadow: 0 6px 24px rgba(20, 56, 97, .06);
    align-self: flex-start;
    position: sticky;
    top: 100px;
}
.ak-wizard__side-title {
    color: var(--ak-navy);
    font-family: 'Poppins', sans-serif;
    font-size: 24px;
    font-weight: 600;
    margin: 0 0 8px;
}
.ak-wizard__side-text { color: var(--ak-slate); font-size: 14px; line-height: 1.55; margin: 0 0 24px; }
.ak-wizard__steps { list-style: none; padding: 0; margin: 0; }
.ak-wizard__step {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 8px;
    color: var(--ak-slate);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background .15s ease, color .15s ease;
}
.ak-wizard__step span {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #E2ECF6;
    color: var(--ak-navy);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 13px;
}
.ak-wizard__step:hover { background: #F0F6FC; }
.ak-wizard__step.active { background: var(--ak-light-blue); color: var(--ak-navy); font-weight: 600; }
.ak-wizard__step.active span { background: var(--ak-blue); color: #fff; }
.ak-wizard__step.done span { background: #01A2BB; color: #fff; }
.ak-wizard__main {
    background: #fff;
    border-radius: 16px;
    padding: 40px;
    box-shadow: 0 6px 24px rgba(20, 56, 97, .06);
}
.ak-wizard__panel { display: none; }
.ak-wizard__panel.active { display: block; animation: ak-fadein .25s ease; }
@keyframes ak-fadein { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.ak-wizard__heading {
    color: var(--ak-navy);
    font-family: 'Poppins', sans-serif;
    font-size: 28px;
    font-weight: 600;
    margin: 0 0 24px;
}
.ak-q { margin-bottom: 24px; }
.ak-q__label { display: block; color: var(--ak-navy); font-size: 16px; font-weight: 600; margin-bottom: 12px; }
.ak-q__hint { color: var(--ak-slate); font-size: 14px; margin: -16px 0 16px; }
.ak-q-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }

.ak-input {
    width: 100%;
    border: 1px solid #E2ECF6;
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 15px;
    background: #fff;
    font-family: inherit;
}
.ak-input:focus {
    outline: none;
    border-color: var(--ak-blue);
    box-shadow: 0 0 0 .2rem rgba(72, 134, 199, .12);
}
.ak-input--inline { display: inline-block; width: auto; min-width: 160px; max-width: 220px; padding: 6px 10px; font-size: 14px; }

.ak-radios, .ak-checks { display: flex; flex-direction: column; gap: 10px; }
.ak-radios--grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; }

.ak-radio, .ak-check {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid #E2ECF6;
    border-radius: 8px;
    background: #fff;
    color: var(--ak-navy);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease;
}
.ak-radio:hover, .ak-check:hover { background: #F6FBFD; }
.ak-radio input[type=radio], .ak-check input[type=checkbox] { width: 16px; height: 16px; accent-color: var(--ak-blue); margin: 0; }
.ak-radio:has(input:checked), .ak-check:has(input:checked) {
    border-color: var(--ak-blue);
    background: rgba(72, 134, 199, .06);
}

.ak-wizard__nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid #E2ECF6;
}
.ak-wizard__progress { color: var(--ak-slate); font-size: 14px; }

@media (max-width: 991.98px) {
    .ak-wizard { padding: 20px 0; }
    .ak-wizard__layout { grid-template-columns: 1fr; }
    .ak-wizard__side { position: static; }
    .ak-wizard__main { padding: 24px; }
    .ak-q-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   /vergleich-ergebnis results
   ========================================================= */
.ak-results { padding: 60px 0 100px; background: #F6FBFD; min-height: calc(100vh - 82px); }
.ak-results__title {
    color: var(--ak-navy);
    font-family: 'Poppins', sans-serif;
    font-size: 32px;
    font-weight: 600;
    text-align: center;
    margin: 0 0 8px;
}
.ak-results__subtitle { color: var(--ak-slate); font-size: 16px; text-align: center; margin: 0 0 40px; }
.ak-results__group { margin-bottom: 48px; }
.ak-results__group-title {
    color: var(--ak-navy);
    font-family: 'Poppins', sans-serif;
    font-size: 22px;
    font-weight: 500;
    margin: 0 0 20px;
}
.ak-results__group-title strong { color: var(--ak-blue); font-weight: 700; }
.ak-results__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; }

.ak-produkt {
    background: #fff;
    border: 1px solid #E2ECF6;
    border-radius: 16px;
    padding: 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    box-shadow: 0 4px 14px rgba(20, 56, 97, .06);
}
.ak-produkt__logo { height: 40px; display: flex; align-items: center; }
.ak-produkt__logo img { max-height: 36px; width: auto; }
.ak-produkt__logo-text { color: var(--ak-navy); font-weight: 700; font-size: 18px; }
.ak-produkt__name { color: var(--ak-navy); font-size: 20px; font-weight: 600; margin: 0; }
.ak-produkt__price { color: var(--ak-navy); font-size: 30px; font-weight: 700; line-height: 1; }
.ak-produkt__price-currency { font-size: 16px; font-weight: 500; margin-right: 4px; }
.ak-produkt__price-period { color: var(--ak-slate); font-size: 13px; }
.ak-produkt__desc { color: var(--ak-slate); font-size: 14px; line-height: 1.55; margin: 0; flex: 1; }
.ak-produkt__cta {
    background: #01A2BB;
    color: #fff;
    border: 0;
    border-radius: 999px;
    padding: 10px 22px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    align-self: flex-start;
}
.ak-produkt__cta:hover { background: #018ea4; }

/* ===== Legal pages ===== */
.ak-legal h2 { font-size: 20px; color: var(--ak-navy); margin-top: 2rem; margin-bottom: .5rem; font-weight: 600; }
.ak-alert { border-radius: 12px; border-width: 0; }

/* ===== Responsive ===== */
@media (max-width: 991.98px) {
    .ak-hero { padding: 60px 0 60px; }
    .ak-hero::before { opacity: .25; }
    .ak-hero-title { font-size: 36px; line-height: 1.2; }
    .ak-hero-subtitle { font-size: 18px; line-height: 1.5; }
    .ak-why-section { padding: 60px 0; }
    .ak-how-section { padding: 60px 0 30px; }
    .ak-how-section .ak-section-title { font-size: 36px; margin-bottom: 50px; }
    .ak-insurance { padding: 60px 0; }
    .ak-peace-wrapper { flex-direction: column; }
    .ak-peace-info { padding: 40px 28px; }
    .ak-peace-img { min-height: 240px; }
    .ak-nav-right {
        flex-direction: column;
        align-items: stretch !important;
        gap: .75rem !important;
        margin-top: 1rem;
        padding-bottom: .5rem;
    }
    .ak-btn-nav { text-align: center; }
}
@media (max-width: 575px) {
    .ak-why-item { height: auto; }
    .ak-why-item-img { flex: 0 0 80px; width: 80px; height: 80px; }
    .ak-reviews-slide { flex-direction: column; text-align: center; }
    .ak-reviews-carousel { padding: 0 35px; }
    .ak-section-title { font-size: 28px; margin-bottom: 32px; }
}
