
@font-face{
    font-family:"Inter";
    src:url("../fonts/inter-var.woff2") format("woff2");
    font-weight:100 900;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:"Oswald";
    src:url("../fonts/oswald-var.woff2") format("woff2");
    font-weight:200 700;
    font-style:normal;
    font-display:swap;
}

:root{
    --rw-font-body:"Inter",-apple-system,"Segoe UI",Arial,Helvetica,sans-serif;
    --rw-font-head:"Oswald","Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
    --rw-black:#05080c;
    --rw-black-soft:#0a1119;
    --rw-navy:#0d2844;
    --rw-blue:#0a4b9f;
    --rw-blue-light:#1f67b7;
    --rw-blue-soft:#6ea8e6;
    --rw-white:#ffffff;
    --rw-bg:#0a0e13;
    --rw-bg-soft:#0f151c;
    --rw-panel:#121a24;
    --rw-line-dark:rgba(255,255,255,.08);
    --rw-surface:#0f151c;
    --rw-surface-2:#121a24;
    --rw-text:#e8edf2;
    --rw-muted:#93a1b0;
    --rw-line:rgba(255,255,255,.10);
    --rw-shadow:0 12px 35px rgba(0,0,0,.35);
    --rw-shadow-strong:0 18px 50px rgba(0,0,0,.45);
    --rw-container:1320px;
}

/* =========================================================
   BASIS
========================================================= */

*,
*::before,
*::after{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
    background:var(--rw-bg);
}

body{
    margin:0;
    background:var(--rw-bg);
    color:var(--rw-text);
    font-family:var(--rw-font-body);
    font-size:16px;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

img{
    display:block;
    max-width:100%;
    height:auto;
}

a{
    color:inherit;
}

.uk-container-large{
    max-width:var(--rw-container);
}

.rw-skip-link{
    position:fixed;
    left:20px;
    top:-100px;
    z-index:99999;
    padding:12px 18px;
    background:#fff;
    color:#000;
    font-weight:700;
}

.rw-skip-link:focus{
    top:20px;
}

/* =========================================================
   TYPOGRAFIE
========================================================= */

h1,
h2,
h3,
h4,
.rw-hero h1,
.rw-section-head h2,
.rw-cta h2{
    font-family:var(--rw-font-head);
    font-weight:600;
    letter-spacing:.015em;
}

h1,
h2,
h3,
h4{
    color:#fff;
}

.rw-kicker{
    margin-bottom:10px;
    color:var(--rw-blue-soft);
    font-size:12px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.rw-lead{
    margin:0 0 26px;
    color:#c9d4de;
    font-size:clamp(1.18rem,2vw,1.55rem);
    line-height:1.45;
    font-weight:600;
}

.rw-prose{
    color:rgba(232,237,242,.78);
    font-size:1.04rem;
    line-height:1.75;
}

.rw-prose a{
    color:var(--rw-blue-soft);
}

.rw-prose a:hover{
    color:#9cc4ef;
}

.rw-prose h2{
    margin:2.1em 0 .7em;
    font-size:clamp(1.7rem,2.6vw,2.3rem);
    line-height:1.12;
    text-transform:uppercase;
}

.rw-prose h3{
    margin:1.7em 0 .55em;
    font-size:1.35rem;
    line-height:1.15;
    text-transform:uppercase;
}

.rw-prose p{
    margin:0 0 1.2em;
}

.rw-prose ul{
    margin:1.2em 0;
    padding-left:0;
    list-style:none;
}

.rw-prose li{
    position:relative;
    margin:.55rem 0;
    padding-left:27px;
}

.rw-prose li::before{
    content:"✓";
    position:absolute;
    left:0;
    top:0;
    display:grid;
    place-items:center;
    width:18px;
    height:18px;
    border-radius:50%;
    background:var(--rw-blue);
    color:#fff;
    font-size:11px;
    font-weight:800;
    line-height:1;
}

/* =========================================================
   HEADER / NAVIGATION
========================================================= */

.rw-site-header{
    position:absolute;
    inset:0 0 auto;
    z-index:1000;
    padding:0;
    background:rgba(2,5,8,.97);
    border-bottom:1px solid rgba(255,255,255,.06);
}

.rw-site-header.uk-sticky-fixed{
    background:rgba(2,5,8,.98);
    box-shadow:0 8px 24px rgba(0,0,0,.24);
}

body:not(.has-hero) .rw-site-header{
    position:relative;
}

.rw-nav-wrap{
    min-height:88px;
    display:flex;
    align-items:center;
    gap:28px;
}

.rw-brand{
    display:flex;
    align-items:center;
    flex:0 0 auto;
    margin-right:auto;
}

.rw-brand img{
    width:auto;
    height:58px;
    object-fit:contain;
}

.rw-desktop-nav{
    display:flex;
    align-items:center;
}

.rw-desktop-nav>ul{
    display:flex;
    align-items:center;
    gap:30px;
    margin:0;
    padding:0;
    list-style:none;
}

.rw-desktop-nav>ul>li{
    position:relative;
    display:flex;
    align-items:center;
    min-height:88px;
}

.rw-desktop-nav>ul>li>a{
    position:relative;
    display:flex;
    align-items:center;
    min-height:88px;
    color:#fff;
    font-size:14px;
    font-weight:700;
    text-decoration:none;
    white-space:nowrap;
}

.rw-desktop-nav>ul>li>a::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:18px;
    height:2px;
    background:var(--rw-blue-light);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .2s ease;
}

.rw-desktop-nav>ul>li:hover>a::after,
.rw-desktop-nav>ul>li.is-active>a::after{
    transform:scaleX(1);
}

.rw-desktop-nav>ul>li.is-active>a,
.rw-desktop-nav>ul>li:hover>a{
    color:#7eb4ee;
}

.rw-dropdown-toggle{
    margin-left:3px;
    padding:0;
    background:none;
    border:0;
    color:#fff;
    cursor:pointer;
}

.rw-dropdown{
    min-width:250px;
    padding:10px;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
    box-shadow:var(--rw-shadow-strong);
}

.rw-dropdown .uk-nav a{
    padding:11px 13px!important;
    color:#fff!important;
    font-size:14px;
    font-weight:700;
}

.rw-dropdown .uk-nav a:hover,
.rw-dropdown .uk-active>a{
    background:rgba(31,103,183,.18);
    color:var(--rw-blue-soft)!important;
}

.rw-nav-cta,
.rw-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 22px;
    border:1px solid transparent;
    border-radius:2px;
    font-size:14px;
    font-weight:800;
    letter-spacing:.01em;
    text-decoration:none;
    text-transform:uppercase;
    transition:all .18s ease;
}

.rw-nav-cta{
    margin-left:8px;
    background:var(--rw-blue);
    color:#fff;
}

.rw-nav-cta:hover{
    background:var(--rw-blue-light);
    color:#fff;
    transform:translateY(-1px);
}

.rw-mobile-toggle{
    display:none;
    padding:8px;
    border:0;
    background:transparent;
    color:#fff;
}

.rw-mobile-panel{
    width:330px;
    background:var(--rw-black);
}

.rw-mobile-brand img{
    height:54px;
    margin-bottom:34px;
}

.rw-mobile-panel .uk-nav a{
    color:#fff;
    font-size:1rem;
    font-weight:700;
}

/* =========================================================
   HERO
========================================================= */

.rw-hero{
    position:relative;
    min-height:640px;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:
        radial-gradient(circle at 75% 35%,rgba(31,103,183,.20),transparent 32%),
        linear-gradient(115deg,#03070c 0%,#0a1724 60%,#111820 100%);
    color:#fff;
}

.rw-hero.has-image{
    background-image:
        linear-gradient(90deg,rgba(2,6,10,.96) 0%,rgba(2,6,10,.82) 42%,rgba(2,6,10,.20) 100%),
        var(--rw-hero-image);
    background-size:cover;
    background-position:center;
}

.rw-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.12));
}

.rw-hero-inner{
    position:relative;
    z-index:2;
    width:100%;
    padding-top:155px;
    padding-bottom:80px;
}

.rw-hero-copy{
    max-width:790px;
}

.rw-breadcrumb{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:24px;
    color:rgba(255,255,255,.65);
    font-size:13px;
}

.rw-breadcrumb a{
    color:inherit;
    text-decoration:none;
}

.rw-breadcrumb a:hover{
    color:#fff;
}

.rw-hero .rw-kicker{
    color:#6ea8e6;
}

.rw-hero h1{
    max-width:900px;
    margin:0 0 22px;
    color:#fff;
    font-size:clamp(2.9rem,6.4vw,6.2rem);
    line-height:1.02;
    text-transform:uppercase;
}

.rw-hero p{
    max-width:650px;
    margin:0 0 30px;
    color:rgba(255,255,255,.82);
    font-size:clamp(1.05rem,1.8vw,1.32rem);
    line-height:1.55;
}

.rw-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.rw-button-primary{
    background:var(--rw-blue);
    color:#fff;
}

.rw-button-primary:hover{
    background:var(--rw-blue-light);
    color:#fff;
}

.rw-button-ghost{
    border-color:rgba(255,255,255,.62);
    background:rgba(255,255,255,.02);
    color:#fff;
}

.rw-button-ghost:hover{
    background:#fff;
    color:#000;
}

.rw-button-light{
    background:#fff;
    color:#07101a;
}

.rw-button-light:hover{
    background:#e8f0f8;
    color:#07101a;
}

/* =========================================================
   SECTIONS
========================================================= */

.rw-section{
    padding:78px 0;
}

.rw-section-muted{
    background:var(--rw-bg-soft);
}

.rw-section-dark{
    background:var(--rw-black);
    color:#fff;
}

.rw-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    margin-bottom:32px;
}

.rw-section-head h2{
    margin:0;
    font-size:clamp(2rem,3.4vw,3.4rem);
    line-height:1.05;
    text-transform:uppercase;
}

.rw-content-image{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border:1px solid var(--rw-line-dark);
    box-shadow:var(--rw-shadow-strong);
}

/* =========================================================
   CARDS
========================================================= */

.rw-card{
    height:100%;
    overflow:hidden;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
    box-shadow:0 8px 24px rgba(0,0,0,.30);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.rw-card:hover{
    transform:translateY(-4px);
    border-color:rgba(110,168,230,.45);
    box-shadow:var(--rw-shadow);
}

.rw-card-media{
    display:block;
    overflow:hidden;
    aspect-ratio:16/9;
    background:var(--rw-bg-soft);
}

.rw-card-media picture{
    display:block;
    width:100%;
    height:100%;
}

.rw-card-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .3s ease;
}

/* Karten ohne Bild: dezenter Gradient statt Foto */
.rw-card-media.is-empty{
    position:relative;
}

.rw-media-gradient{
    display:block;
    width:100%;
    height:100%;
    background:
        radial-gradient(circle at 80% 130%,rgba(31,103,183,.38),transparent 55%),
        radial-gradient(circle at 12% -25%,rgba(31,103,183,.16),transparent 45%),
        linear-gradient(135deg,#16263a 0%,#0d151f 60%,#0a0e13 100%);
}

.rw-card-media.is-empty::after{
    content:"";
    position:absolute;
    right:-44px;
    bottom:-78px;
    width:210px;
    height:210px;
    border:26px solid rgba(110,168,230,.13);
    border-radius:50%;
}

.rw-card:hover .rw-card-media img{
    transform:scale(1.035);
}

.rw-card-body{
    position:relative;
    padding:24px 24px 26px;
}

.rw-card-num{
    position:absolute;
    right:22px;
    top:18px;
    color:rgba(110,168,230,.55);
    font-family:var(--rw-font-head);
    font-size:1.6rem;
    font-weight:600;
    letter-spacing:.04em;
}

.rw-card h3{
    margin:0 0 10px;
    padding-right:52px;
    font-family:var(--rw-font-body);
    font-size:1.2rem;
    font-weight:600;
    line-height:1.3;
    letter-spacing:-.01em;
}

.rw-card h3 a{
    color:#fff;
    text-decoration:none;
}

.rw-card h3 a:hover{
    color:var(--rw-blue-soft);
}

.rw-card p{
    margin:0 0 19px;
    color:var(--rw-muted);
    font-size:.95rem;
    line-height:1.55;
}

.rw-text-link{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:var(--rw-blue-soft);
    font-size:.9rem;
    font-weight:800;
    text-decoration:none;
}

.rw-text-link:hover{
    color:#9cc4ef;
}

/* Startseite kompakter und näher am Mockup */
.template-home .rw-section-muted{
    background:var(--rw-bg);
}

.template-home #main-content>.rw-section-muted:nth-of-type(1){
    padding-top:72px;
    padding-bottom:40px;
}

.template-home #main-content>.rw-section-muted:nth-of-type(2){
    padding-top:24px;
    padding-bottom:58px;
    background:var(--rw-bg);
}

.template-home #main-content>.rw-section-muted:nth-of-type(3){
    padding-top:62px;
    padding-bottom:72px;
    background:var(--rw-bg-soft);
}

.template-home .rw-section-head{
    justify-content:center;
    text-align:center;
}

.template-home .rw-section-head .rw-kicker{
    text-align:center;
}

.template-home .rw-section-head h2{
    font-size:clamp(2.15rem,3vw,3.4rem);
}

/* =========================================================
   VALUES / USP
========================================================= */

.rw-value{
    height:100%;
    padding:30px;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
}

.rw-value [uk-icon]{
    color:#4d91d6;
}

.rw-value h3{
    margin:15px 0 8px;
    color:#fff;
    font-size:1.2rem;
    text-transform:uppercase;
}

.rw-value p{
    margin:0;
    color:rgba(255,255,255,.70);
}

/* =========================================================
   CTA
========================================================= */

.rw-cta{
    position:relative;
    overflow:hidden;
    padding:62px 0;
    background:
        radial-gradient(circle at 85% 50%,rgba(255,255,255,.09),transparent 27%),
        linear-gradient(90deg,#0a2947,#173f68);
    color:#fff;
}

.rw-cta::after{
    content:"";
    position:absolute;
    right:-60px;
    bottom:-130px;
    width:420px;
    height:420px;
    border:70px solid rgba(255,255,255,.04);
    border-radius:50%;
}

.rw-cta-inner{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
}

.rw-cta h2{
    margin:0 0 8px;
    color:#fff;
    font-size:clamp(2rem,3.4vw,3.3rem);
    line-height:1.05;
    text-transform:uppercase;
}

.rw-cta p{
    margin:0;
    color:rgba(255,255,255,.76);
}

.rw-cta-actions{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:12px;
    min-width:240px;
}

.rw-phone-link{
    color:#fff;
    font-size:1.15rem;
    font-weight:800;
    text-decoration:none;
}

/* =========================================================
   KONTAKT
========================================================= */

.rw-contact-box{
    position:sticky;
    top:110px;
    padding:38px;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
    color:#fff;
    box-shadow:var(--rw-shadow);
}

.rw-contact-box h2{
    margin-top:0;
    color:#fff;
    text-transform:uppercase;
}

.rw-contact-box a{
    color:#7bb2e8;
}

/* =========================================================
   KONTAKTFORMULAR
========================================================= */

.rw-form{
    margin-top:38px;
}

.rw-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 18px;
}

.rw-form-field{
    margin-bottom:20px;
}

.rw-form-field label{
    display:block;
    margin-bottom:7px;
    color:#c9d4de;
    font-size:.9rem;
    font-weight:600;
}

.rw-form-field input,
.rw-form-field textarea{
    width:100%;
    padding:13px 15px;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
    border-radius:2px;
    color:var(--rw-text);
    font-family:var(--rw-font-body);
    font-size:1rem;
    line-height:1.5;
    transition:border-color .15s ease;
}

.rw-form-field input:focus,
.rw-form-field textarea:focus{
    outline:none;
    border-color:var(--rw-blue-light);
}

.rw-form-field textarea{
    resize:vertical;
    min-height:140px;
}

.rw-form button[type="submit"]{
    border:0;
    cursor:pointer;
}

.rw-form-hint{
    margin:14px 0 0;
    color:var(--rw-muted);
    font-size:.85rem;
}

/* Honeypot: für Menschen unsichtbar, für Bots ein normales Feld */
.rw-form-trap{
    position:absolute;
    left:-9999px;
    top:auto;
    width:1px;
    height:1px;
    overflow:hidden;
}

.rw-form-success{
    margin-top:38px;
    padding:24px 26px;
    background:rgba(31,103,183,.16);
    border:1px solid rgba(110,168,230,.45);
    border-left:4px solid var(--rw-blue-light);
    color:#dbe7f3;
    line-height:1.6;
}

.rw-form-errors{
    margin:38px 0 22px;
    padding:18px 22px;
    background:rgba(183,49,31,.14);
    border:1px solid rgba(230,127,110,.40);
    border-left:4px solid #c0503c;
    color:#f0d9d4;
}

.rw-form-errors ul{
    margin:0;
    padding-left:18px;
}

.rw-form-errors li{
    margin:4px 0;
}

/* =========================================================
   FOOTER
========================================================= */

.rw-footer{
    padding:64px 0 24px;
    background:#020609;
    color:rgba(255,255,255,.70);
}

.rw-footer-logo{
    width:auto;
    height:62px;
    margin-bottom:18px;
}

.rw-footer h3{
    margin:0 0 18px;
    color:#fff;
    font-size:.95rem;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.rw-footer p{
    margin:0;
    line-height:1.7;
}

.rw-footer ul{
    margin:0;
    padding:0;
    list-style:none;
}

.rw-footer li{
    margin:7px 0;
}

.rw-footer a{
    color:rgba(255,255,255,.74);
    text-decoration:none;
}

.rw-footer a:hover{
    color:#fff;
}

.rw-footer-bottom{
    display:flex;
    justify-content:space-between;
    gap:20px;
    margin-top:46px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.09);
    font-size:.85rem;
}

.rw-footer-bottom div{
    display:flex;
    gap:18px;
}

/* =========================================================
   INHALT / TEXTBREITE
========================================================= */

.rw-content-narrow{
    max-width:860px;
}

/* =========================================================
   CHECKLISTE (Stichpunkte)
========================================================= */

.rw-section-dark .rw-section-head h2{
    color:#fff;
}

.rw-section-dark .rw-kicker{
    color:#6ea8e6;
}

.rw-checklist{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px 18px;
    margin:0;
    padding:0;
    list-style:none;
}

.rw-checklist li{
    position:relative;
    padding:18px 20px 18px 54px;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
    color:rgba(255,255,255,.88);
    font-weight:600;
    line-height:1.45;
}

.rw-checklist li::before{
    content:"✓";
    position:absolute;
    left:20px;
    top:19px;
    display:grid;
    place-items:center;
    width:20px;
    height:20px;
    border-radius:50%;
    background:var(--rw-blue);
    color:#fff;
    font-size:12px;
    font-weight:800;
    line-height:1;
}

/* =========================================================
   GALERIE
========================================================= */

.rw-gallery{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}

.rw-gallery a{
    display:block;
    overflow:hidden;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
}

.rw-gallery picture{
    display:block;
}

.rw-gallery img{
    width:100%;
    height:auto;
    aspect-ratio:4/3;
    object-fit:cover;
    transition:transform .3s ease;
}

.rw-gallery a:hover img{
    transform:scale(1.04);
}

/* =========================================================
   RATGEBER-ARTIKEL MIT INHALTSVERZEICHNIS
========================================================= */

.rw-article-layout{
    max-width:860px;
}

.rw-article-layout.has-toc{
    display:grid;
    grid-template-columns:280px minmax(0,1fr);
    gap:56px;
    align-items:start;
    max-width:none;
}

.rw-article-body{
    max-width:820px;
}

.rw-toc{
    position:sticky;
    top:112px;
}

.rw-toc-box{
    padding:24px 26px;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
}

.rw-toc-title{
    margin-bottom:14px;
    color:var(--rw-blue-soft);
    font-size:12px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.rw-toc ol{
    margin:0;
    padding:0;
    list-style:none;
}

.rw-toc a{
    display:block;
    padding:7px 0 7px 14px;
    border-left:2px solid rgba(255,255,255,.10);
    color:var(--rw-muted);
    font-size:.92rem;
    font-weight:600;
    line-height:1.4;
    text-decoration:none;
    transition:color .15s ease,border-color .15s ease;
}

.rw-toc li.is-sub a{
    padding-left:28px;
    font-size:.86rem;
    font-weight:400;
}

.rw-toc a:hover{
    color:#fff;
}

.rw-toc a.is-active{
    border-left-color:var(--rw-blue-light);
    color:#fff;
}

/* Sprungziele nicht unter dem festen Header verschwinden lassen */
.rw-prose h2[id],
.rw-prose h3[id]{
    scroll-margin-top:120px;
}

@media(max-width:1023px){
    .rw-article-layout.has-toc{
        display:block;
    }

    .rw-toc{
        position:static;
        margin-bottom:34px;
    }
}

/* =========================================================
   KEYFACTS (Ratgeberbeitrag)
========================================================= */

.rw-keyfacts{
    margin:0 0 36px;
    padding:28px 30px;
    background:var(--rw-panel);
    border:1px solid var(--rw-line-dark);
    border-left:4px solid var(--rw-blue);
}

.rw-keyfacts h2{
    margin:0 0 14px;
    font-size:1.1rem;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.rw-keyfacts ul{
    margin:0;
    padding-left:0;
    list-style:none;
}

.rw-keyfacts li{
    position:relative;
    margin:.5rem 0;
    padding-left:27px;
    color:rgba(232,237,242,.80);
}

.rw-keyfacts li::before{
    content:"✓";
    position:absolute;
    left:0;
    top:2px;
    display:grid;
    place-items:center;
    width:18px;
    height:18px;
    border-radius:50%;
    background:var(--rw-blue);
    color:#fff;
    font-size:11px;
    font-weight:800;
    line-height:1;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1120px){
    .rw-desktop-nav,
    .rw-nav-cta{
        display:none;
    }

    .rw-mobile-toggle{
        display:block;
    }

    .rw-nav-wrap{
        min-height:76px;
    }

    .rw-brand img{
        height:52px;
    }

    .rw-hero{
        min-height:580px;
    }
}

@media(max-width:768px){
    .rw-nav-wrap{
        min-height:70px;
    }

    .rw-brand img{
        height:46px;
    }

    .rw-hero{
        min-height:540px;
    }

    .rw-hero-inner{
        padding-top:120px;
        padding-bottom:64px;
    }

    .rw-hero h1{
        font-size:clamp(2.9rem,14vw,5.1rem);
    }

    .rw-section{
        padding:58px 0;
    }

    .rw-section-head{
        align-items:flex-start;
        flex-direction:column;
    }

    .rw-card-body{
        padding:21px;
    }

    .rw-cta-inner{
        align-items:flex-start;
        flex-direction:column;
    }

    .rw-cta-actions{
        align-items:flex-start;
    }

    .rw-footer-bottom{
        flex-direction:column;
    }

    .rw-checklist{
        grid-template-columns:1fr;
    }

    .rw-gallery{
        grid-template-columns:repeat(2,1fr);
    }

    .rw-keyfacts{
        padding:22px;
    }

    .rw-form-row{
        grid-template-columns:1fr;
        gap:0;
    }
}
