:root{
    --ink:#f6f7ef;
    --muted:#b0b3a9;
    --night:#10120f;
    --panel:#191c17;
    --line:#34382e;
    --acid:#d7f75b;
    --shell:1240px;
    --radius:16px;
    color-scheme:dark
}
*{
    box-sizing:border-box
}
html{
    scroll-behavior:smooth;
    scroll-padding-top:100px
}
body{
    margin:0;
    background:var(--night);
    color:var(--ink);
    font-family:Arial,Helvetica,sans-serif;
    font-size:16px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased
}
a{
    color:inherit;
    text-underline-offset:4px
}
img{
    max-width:100%;
    display:block;
    height:auto
}
button{
    font:inherit
}
button,a,summary{
    -webkit-tap-highlight-color:transparent
}
button{
    cursor:pointer
}
[hidden]{
    display:none!important
}
:focus-visible{
    outline:3px solid var(--acid);
    outline-offset:5px
}
::selection{
    color:var(--night);
    background:var(--acid)
}
.shell{
    width:min(calc(100% - 80px),var(--shell));
    margin-inline:auto
}
h1,h2,h3,p{
    margin-top:0
}
h1,h2,h3{
    line-height:1.06;
    letter-spacing:-.055em
}
h1{
    font-size:clamp(3.3rem,5.7vw,5.5rem);
    margin-bottom:26px;
    font-weight:800
}
h2{
    font-size:clamp(2.6rem,4.5vw,4.25rem);
    margin-bottom:24px
}
h3{
    font-size:1.7rem;
    letter-spacing:-.035em;
    margin-bottom:18px
}
em{
    color:var(--acid);
    font-style:normal
}
.skip-link{
    position:fixed;
    top:10px;
    left:10px;
    z-index:100;
    padding:12px 20px;
    background:var(--acid);
    color:var(--night);
    transform:translateY(-180%)
}
.skip-link:focus{
    transform:none
}
.offer-bar{
    background:var(--acid);
    color:var(--night);
    padding:10px 20px;
    text-align:center;
    font-size:.875rem;
    letter-spacing:.01em
}
.offer-bar>span{
    margin-inline:14px;
    opacity:.5
}
.offer-bar a{
    margin-left:24px;
    font-weight:bold
}
.site-header{
    position:relative;
    z-index:20;
    background:var(--night);
    border-bottom:1px solid var(--line)
}
.site-header__inner{
    min-height:94px;
    display:flex;
    gap:28px;
    align-items:center;
    justify-content:space-between
}
.brand{
    display:inline-flex;
    align-items:center;
    gap:11px;
    text-decoration:none;
    font-size:1.45rem;
    letter-spacing:-.065em;
    font-weight:900;
    white-space:nowrap;
    line-height:1
}
.brand>span:last-child>span{
    color:var(--acid)
}
.brand small{
    font-size:.875rem;
    font-weight:400;
    letter-spacing:-.04em;
    color:var(--muted)
}
.brand__mark{
    display:flex;
    align-items:center;
    height:28px;
    gap:3px
}
.brand__mark i{
    background:var(--acid);
    width:3px;
    height:10px;
    border-radius:2px
}
.brand__mark i:nth-child(2),.brand__mark i:nth-child(4){
    height:20px
}
.brand__mark i:nth-child(3){
    height:28px
}
.main-nav{
    display:flex;
    gap:26px
}
.main-nav a{
    font-size:.875rem;
    color:var(--muted);
    text-decoration:none;
    white-space:nowrap
}
.main-nav a:hover{
    color:var(--acid)
}
.button{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:24px;
    min-height:56px;
    padding:16px 24px;
    border:1px solid transparent;
    border-radius:6px;
    text-decoration:none;
    line-height:1.35;
    font-weight:700;
    transition:background .2s,transform .2s
}
.button:hover{
    transform:translateY(-2px)
}
.button--primary{
    background:var(--acid);
    color:var(--night)
}
.button--primary:hover{
    background:#e6ff91
}
.button--small{
    font-size:.875rem;
    min-height:44px;
    padding:11px 17px;
    background:transparent;
    border-color:#59604d
}
.button--small:hover{
    border-color:var(--acid)
}
.button--dark{
    background:var(--night);
    color:var(--ink)
}
.text-link{
    display:inline-flex;
    align-items:center;
    gap:12px;
    font-weight:700;
    text-decoration:none
}
.text-link:hover{
    text-decoration:underline
}
.eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:.875rem;
    line-height:1.5;
    font-weight:700;
    letter-spacing:.1em;
    margin-bottom:24px;
    color:var(--muted)
}
.eyebrow>span{
    width:7px;
    height:7px;
    background:var(--acid);
    border-radius:50%
}
.hero{
    padding:78px 0 74px;
    overflow:hidden
}
.hero__grid{
    display:grid;
    grid-template-columns:1.05fr 1fr;
    gap:54px;
    align-items:center
}
.hero__lead{
    max-width:560px;
    font-size:1.1rem;
    color:var(--muted);
    line-height:1.75;
    margin-bottom:30px
}
.hero__actions{
    display:flex;
    gap:23px;
    align-items:center;
    flex-wrap:wrap
}
.hero__actions .text-link{
    font-size:.875rem
}
.affiliate-note{
    font-size:.8125rem;
    color:var(--muted);
    max-width:530px;
    margin:18px 0 0;
    line-height:1.6
}
.quick-facts{
    display:flex;
    flex-wrap:wrap;
    gap:9px 22px;
    margin:30px 0 0;
    padding:0;
    list-style:none;
    font-size:.875rem;
    color:#c8ccbf
}
.hero__visual{
    min-width:0;
    position:relative;
    align-self:stretch;
    display:flex;
    flex-direction:column;
    justify-content:center
}
.visual-label{
    font-size:.75rem;
    letter-spacing:.065em;
    color:var(--muted);
    display:flex;
    gap:9px;
    align-items:center;
    padding:0 0 15px
}
.status-dot{
    display:inline-block;
    width:7px;
    height:7px;
    flex-shrink:0;
    background:var(--acid);
    border-radius:50%
}
.hero-art{
    overflow:hidden;
    border-radius:90px 16px 16px 16px;
    border:1px solid #565e44;
    background:#282a25
}
.hero-art img{
    width:100%;
    aspect-ratio:1.12;
    object-fit:cover
}
.visual-caption{
    display:flex;
    justify-content:space-between;
    gap:15px;
    font-size:.75rem;
    letter-spacing:.05em;
    color:var(--muted);
    padding:16px 0
}
.hero-benefit{
    border-top:1px solid var(--line);
    display:flex;
    gap:20px;
    align-items:center;
    padding:21px 0 0
}
.hero-benefit>span{
    font-size:2.5rem;
    line-height:1;
    color:var(--acid)
}
.hero-benefit strong{
    font-size:1rem
}
.hero-benefit p{
    color:var(--muted);
    font-size:.875rem;
    margin:3px 0 0
}
.trust-strip{
    border-block:1px solid var(--line)
}
.trust-strip>.shell{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    padding-block:30px
}
.trust-strip p{
    font-size:.75rem;
    line-height:1.5;
    color:var(--muted);
    margin:0
}
.trust-strip strong{
    color:var(--acid);
    font-size:.875rem
}
.trust-strip .shell>span{
    font-size:.875rem;
    color:#dce0d3
}
.section{
    padding:100px 0
}
.section-heading{
    margin-bottom:45px
}
.heading-split{
    display:grid;
    grid-template-columns:1.5fr 1fr;
    gap:70px;
    align-items:end
}
.heading-split>p{
    max-width:400px;
    color:var(--muted);
    margin-bottom:28px
}
.section-heading h2{
    margin-bottom:0
}
.heading-split .eyebrow{
    margin-bottom:22px
}
.steps-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    margin:50px 0 55px;
    border-block:1px solid var(--line)
}
.steps-grid article{
    padding:34px 30px 30px 0
}
.steps-grid article+article{
    padding-left:30px;
    border-left:1px solid var(--line)
}
.step-number{
    display:block;
    color:var(--acid);
    font-size:.875rem;
    margin-bottom:22px
}
.steps-grid p{
    color:var(--muted);
    margin:0
}
.editor-panel{
    background:#252920;
    border:1px solid #4d5540;
    border-radius:12px;
    overflow:hidden
}
.editor-top{
    display:flex;
    align-items:center;
    gap:12px;
    padding:16px 24px
}
.editor-top strong{
    font-size:.875rem
}
.editor-top>span:last-child{
    margin-left:auto;
    color:var(--muted);
    font-size:.875rem
}
.editor-panel>img{
    width:100%;
    height:auto;
    border-block:1px solid var(--line)
}
.editor-caption{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
    padding:25px
}
.editor-caption p{
    margin:0;
    color:var(--muted);
    font-size:.875rem
}
.editor-caption strong{
    color:var(--ink);
    font-size:1rem
}
.editor-caption a{
    color:var(--acid);
    font-size:.875rem
}
.features-section{
    background:#181b15;
    border-block:1px solid var(--line)
}
.features-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
.feature-card{
    border:1px solid #3a4031;
    padding:38px;
    background:#1d2119;
    border-radius:12px;
    min-width:0
}
.feature-card>p:not(.eyebrow){
    color:var(--muted);
    max-width:500px;
    margin-bottom:0
}
.feature-icon{
    display:block;
    color:var(--acid);
    font-size:2.2rem;
    line-height:1;
    margin-bottom:34px
}
.feature-card h3{
    font-size:2rem
}
.feature-card--wide{
    background:#262d1b
}
.feature-card--accent{
    background:var(--acid);
    color:var(--night)
}
.feature-card--accent .eyebrow,.feature-card--accent .feature-icon,.feature-card--accent>p:not(.eyebrow){
    color:#36421e
}
.feature-tag{
    display:inline-block;
    border-top:1px solid #525e3d;
    padding-top:20px;
    margin-top:24px;
    color:#dce9c3;
    font-size:.875rem
}
.source-note{
    font-size:.875rem;
    color:var(--muted);
    max-width:850px;
    margin:24px 0 0
}
.audience-layout{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:85px
}
.audience-layout>div>p:not(.eyebrow){
    max-width:450px;
    color:var(--muted)
}
.audience-list article{
    display:flex;
    gap:28px;
    padding:28px 0;
    border-top:1px solid var(--line)
}
.audience-list article:last-child{
    border-bottom:1px solid var(--line)
}
.audience-list article>span{
    font-size:.875rem;
    color:var(--acid)
}
.audience-list h3{
    font-size:1.45rem;
    letter-spacing:-.025em;
    margin-bottom:12px
}
.audience-list p{
    margin:0;
    color:var(--muted)
}
.people-section{
    background:#eef0e7;
    color:#161b12
}
.people-section em{
    color:#586d27
}
.people-section .eyebrow{
    color:#57614e
}
.people-section .heading-split>p{
    color:#56604e
}
.people-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px
}
.person{
    display:grid;
    grid-template-columns:42% 1fr;
    background:#e0e5d6;
    border:1px solid #ced6c1;
    border-radius:12px;
    overflow:hidden;
    min-width:0
}
.person img{
    height:100%;
    width:100%;
    object-fit:cover;
    object-position:center;
    min-height:250px
}
.person>div{
    padding:32px 26px;
    align-self:center
}
.person .eyebrow{
    font-size:.75rem;
    letter-spacing:.05em;
    margin-bottom:16px;
    display:block
}
.person h3{
    font-size:1.6rem
}
.person p{
    font-size:.875rem;
    color:#4d5745;
    margin:0
}
.offer-section{
    padding:90px 0
}
.offer-card{
    padding:60px;
    background:var(--acid);
    color:var(--night);
    display:grid;
    grid-template-columns:1.7fr 1fr;
    gap:50px;
    align-items:center;
    border-radius:14px
}
.offer-card h2{
    font-size:clamp(2.4rem,4vw,3.65rem)
}
.offer-card em{
    color:#4c631c
}
.offer-card .eyebrow{
    color:#405322
}
.offer-card p:not(.eyebrow){
    max-width:570px;
    color:#36451e
}
.offer-card .offer-fineprint{
    font-size:.8125rem;
    margin:18px 0 0
}
.discount-display{
    border-left:1px solid #abc245;
    padding-left:44px
}
.discount-display>strong{
    font-size:clamp(5rem,10vw,9rem);
    line-height:1;
    letter-spacing:-.1em;
    display:block
}
.discount-display>strong>span{
    font-size:.45em;
    letter-spacing:-.065em
}
.discount-display>span{
    display:block;
    margin-top:15px;
    font-size:.875rem;
    font-weight:700;
    letter-spacing:.045em
}
.discount-display>div{
    margin-top:40px;
    padding-top:18px;
    border-top:1px solid #abc245;
    font-size:.875rem
}
.faq-section{
    padding-top:30px
}
.faq-grid{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:90px
}
.faq-intro>p:last-child{
    color:var(--muted);
    max-width:330px
}
.faq-list{
    min-width:0
}
.faq-list details{
    border-bottom:1px solid var(--line)
}
.faq-list details:first-child{
    border-top:1px solid var(--line)
}
.faq-list summary{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    cursor:pointer;
    padding:23px 0;
    font-weight:700;
    list-style:none;
    line-height:1.5
}
.faq-list summary::-webkit-details-marker{
    display:none
}
.faq-list summary>span{
    font-size:1.5rem;
    color:var(--acid);
    line-height:1;
    transition:transform .2s
}
.faq-list details[open] summary>span{
    transform:rotate(45deg)
}
.faq-list p{
    color:var(--muted);
    padding-right:28px;
    line-height:1.75
}
.final-cta{
    text-align:center;
    padding:80px 0 105px;
    border-top:1px solid var(--line);
    background:radial-gradient(ellipse at 50% 100%,#273119 0,transparent 65%)
}
.final-cta .eyebrow{
    justify-content:center
}
.final-cta h2{
    font-size:clamp(3.2rem,6vw,5.7rem)
}
.final-cta p:not(.eyebrow){
    color:var(--muted)
}
.final-cta .button{
    margin-top:15px
}
.final-cta small{
    display:block;
    margin-top:18px;
    font-size:.8125rem;
    color:var(--muted)
}
.site-footer{
    padding-top:60px;
    background:#0b0d09;
    border-top:1px solid var(--line)
}
.site-footer__top{
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:50px;
    padding-bottom:40px
}
.site-footer__top p{
    font-size:.875rem;
    color:var(--muted);
    margin:22px 0 0
}
.site-footer__links{
    display:grid;
    align-content:start;
    gap:11px;
    font-size:.875rem
}
.site-footer__links strong{
    margin-bottom:9px
}
.site-footer__links a{
    color:var(--muted);
    text-decoration:none
}
.site-footer__links a:hover{
    color:var(--acid)
}
.affiliate-disclosure{
    font-size:.8125rem;
    color:var(--muted);
    padding-block:25px;
    border-block:1px solid var(--line)
}
.affiliate-disclosure strong{
    color:var(--ink)
}
.site-footer__bottom{
    display:flex;
    justify-content:space-between;
    gap:25px;
    font-size:.8125rem;
    color:var(--muted);
    padding-block:22px
}
.sticky-offer{
    position:fixed;
    z-index:40;
    bottom:18px;
    left:50%;
    transform:translateX(-50%);
    width:min(calc(100% - 32px),750px);
    display:flex;
    align-items:center;
    gap:24px;
    justify-content:space-between;
    padding:14px 16px 14px 24px;
    background:#20251bf5;
    border:1px solid #5d6948;
    border-radius:10px;
    box-shadow:0 10px 35px #0008
}
.sticky-offer>div{
    display:flex;
    flex-direction:column
}
.sticky-offer strong{
    font-size:.95rem
}
.sticky-offer>div>span{
    font-size:.8125rem;
    color:var(--muted)
}
.sticky-offer .button{
    min-height:44px;
    font-size:.875rem;
    padding:12px 18px
}
.sticky-offer__close{
    background:none;
    color:var(--muted);
    border:0;
    width:44px;
    height:44px;
    flex-shrink:0;
    font-size:1.5rem
}
.menu-toggle{
    display:none
}
.mobile-nav{
    padding:10px 40px 20px;
    border-top:1px solid var(--line)
}
.mobile-nav a{
    display:block;
    padding:12px 0;
    text-decoration:none
}
/* Rechtliche Unterseiten */
.legal-page{
    background:#eef0e7;
    color:#202719;
    color-scheme:light
}
.legal-page .site-header{
    color:var(--ink)
}
.legal-back{
    font-size:.875rem;
    color:var(--ink)
}
.legal-main{
    padding:80px 0 110px
}
.legal-layout{
    display:grid;
    grid-template-columns:310px minmax(0,750px);
    justify-content:space-between;
    gap:70px
}
.legal-sidebar{
    position:sticky;
    top:30px;
    align-self:start
}
.legal-sidebar h1{
    font-size:3rem;
    overflow-wrap:anywhere;
    margin-bottom:20px
}
.legal-sidebar p,.legal-kicker{
    font-size:.875rem;
    color:#59634f
}
.legal-kicker{
    display:block;
    margin-bottom:20px;
    text-transform:uppercase;
    letter-spacing:.08em
}
.legal-content{
    min-width:0
}
.legal-content section{
    padding:28px 0;
    border-bottom:1px solid #c5ccb9
}
.legal-content h2{
    font-size:1.4rem;
    line-height:1.4;
    letter-spacing:-.025em;
    margin-bottom:16px
}
.legal-content p,.legal-content address{
    font-size:1rem;
    font-style:normal;
    color:#4c5743;
    overflow-wrap:anywhere
}
.legal-content mark{
    background:#fff0a0;
    color:#41350c;
    padding:2px 4px;
    box-decoration-break:clone;
    -webkit-box-decoration-break:clone
}
.placeholder-alert{
    padding:24px;
    background:#fff4bf;
    border:1px solid #c1a339;
    border-radius:8px
}
.placeholder-alert p{
    margin:9px 0 0;
    color:#564a22
}
.legal-footer{
    border-top:1px solid #c5ccb9;
    padding:26px 0;
    font-size:.875rem
}
.legal-footer>.shell{
    display:flex;
    justify-content:space-between;
    gap:25px
}
.legal-footer nav{
    display:flex;
    gap:24px
}
.legal-page :focus-visible{
    outline-color:#506815
}
@media(min-width:1001px){
    .mobile-nav{
        display:none!important
    }
}
@media(max-width:1100px){
    .main-nav{
        gap:16px
    }
    .site-header__inner{
        gap:18px
    }
    .brand{
        font-size:1.25rem
    }
    .hero__grid{
        gap:30px
    }
    .hero__actions{
        gap:18px
    }
    .hero__actions .button{
        padding-inline:18px
    }
    .person{
        grid-template-columns:40% 1fr
    }
    .person>div{
        padding:24px 18px
    }
    .person h3{
        font-size:1.35rem
    }
    .offer-card{
        padding:45px
    }
    .faq-grid{
        gap:55px
    }
}
@media(max-width:1000px){
    .main-nav{
        display:none
    }
    .site-header .button--small{
        margin-left:auto
    }
    .menu-toggle:not([hidden]){
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:6px;
        background:transparent;
        border:1px solid var(--line);
        border-radius:6px;
        width:44px;
        height:44px;
        flex-shrink:0
    }
    .menu-toggle span{
        width:19px;
        height:2px;
        background:var(--ink)
    }
    .menu-toggle[aria-expanded=true] span:first-child{
        transform:translateY(4px) rotate(45deg)
    }
    .menu-toggle[aria-expanded=true] span:last-child{
        transform:translateY(-4px) rotate(-45deg)
    }
    .hero{
        padding-block:60px
    }
    .hero__grid{
        grid-template-columns:1fr 1fr;
        gap:28px
    }
    .hero h1{
        font-size:clamp(3rem,6.7vw,4rem)
    }
    .hero__visual{
        align-self:center
    }
    .hero-art{
        border-top-left-radius:60px
    }
    .visual-label{
        font-size:.75rem;
        letter-spacing:0
    }
    .hero-benefit{
        gap:10px
    }
    .hero-benefit>span{
        display:none
    }
    .quick-facts{
        gap:8px 16px
    }
    .trust-strip>.shell{
        flex-wrap:wrap;
        justify-content:center
    }
    .trust-strip p{
        width:100%;
        text-align:center
    }
    .trust-strip br{
        display:none
    }
    .trust-strip strong{
        margin-left:8px
    }
    .heading-split{
        gap:35px
    }
    .section{
        padding-block:75px
    }
    .audience-layout{
        gap:40px
    }
    .people-grid{
        grid-template-columns:1fr
    }
    .person{
        grid-template-columns:220px 1fr
    }
    .person>div{
        padding:30px
    }
    .person img{
        min-height:210px;
        max-height:260px
    }
    .person h3{
        font-size:1.8rem
    }
    .offer-card{
        gap:30px;
        padding:40px;
        grid-template-columns:1.6fr 1fr
    }
    .discount-display{
        padding-left:28px
    }
    .legal-layout{
        grid-template-columns:1fr;
        gap:30px
    }
    .legal-sidebar{
        position:static
    }
}
@media(max-width:720px){
    .shell{
        width:calc(100% - 40px)
    }
    .offer-bar{
        font-size:.75rem;
        padding:10px 16px
    }
    .offer-bar>span{
        margin-inline:6px
    }
    .offer-bar a{
        display:none
    }
    .site-header__inner{
        min-height:77px;
        gap:14px
    }
    .brand{
        font-size:1.35rem
    }
    .site-header .button--small{
        display:none
    }
    .mobile-nav{
        padding-inline:20px
    }
    .hero{
        padding:45px 0
    }
    .hero__grid{
        grid-template-columns:1fr;
        gap:45px
    }
    .hero h1{
        font-size:clamp(3rem,10vw,4.6rem);
        letter-spacing:-.06em
    }
    .hero__lead{
        font-size:1.05rem
    }
    .hero__actions{
        gap:22px
    }
    .hero__visual{
        width:100%
    }
    .hero-art img{
        aspect-ratio:1.4;
        object-position:center 42%
    }
    .hero-art{
        border-top-left-radius:70px
    }
    .hero-benefit>span{
        display:block
    }
    .quick-facts{
        font-size:.8125rem
    }
    .trust-strip>.shell{
        display:grid;
        grid-template-columns:1fr 1fr;
        text-align:center;
        gap:18px 12px
    }
    .trust-strip p{
        grid-column:1/-1
    }
    .trust-strip .shell>span{
        font-size:.8125rem
    }
    .section{
        padding-block:62px
    }
    h2{
        font-size:clamp(2.3rem,8vw,3.5rem)
    }
    .heading-split{
        grid-template-columns:1fr;
        gap:24px
    }
    .heading-split>p{
        margin:0;
        max-width:none
    }
    .section-heading{
        margin-bottom:30px
    }
    .steps-grid{
        grid-template-columns:1fr;
        margin-block:32px
    }
    .steps-grid article,.steps-grid article+article{
        position:relative;
        padding:26px 0 26px 50px;
        border-left:0;
        border-bottom:1px solid var(--line)
    }
    .steps-grid article:last-child{
        border-bottom:0
    }
    .step-number{
        position:absolute;
        top:30px;
        left:0
    }
    .steps-grid h3{
        font-size:1.5rem;
        margin-bottom:14px
    }
    .editor-top{
        padding:14px;
        gap:8px
    }
    .editor-top>span:last-child{
        font-size:.75rem
    }
    .editor-caption{
        flex-direction:column;
        align-items:start;
        gap:20px;
        padding:20px
    }
    .features-grid{
        grid-template-columns:1fr
    }
    .feature-card{
        padding:30px
    }
    .feature-card h3{
        font-size:1.85rem
    }
    .feature-icon{
        margin-bottom:25px
    }
    .audience-layout{
        grid-template-columns:1fr;
        gap:25px
    }
    .audience-list article{
        gap:22px
    }
    .person{
        grid-template-columns:38% 1fr
    }
    .person>div{
        padding:22px 18px
    }
    .person h3{
        font-size:1.4rem;
        line-height:1.15
    }
    .person img{
        max-height:none;
        min-height:230px
    }
    .person .eyebrow{
        font-size:.75rem
    }
    .offer-card{
        padding:32px 26px;
        grid-template-columns:1fr;
        gap:35px
    }
    .offer-card h2{
        font-size:2.3rem
    }
    .discount-display{
        grid-row:1;
        border-left:0;
        border-bottom:1px solid #abc245;
        padding:0 0 25px
    }
    .discount-display>strong{
        font-size:5.3rem
    }
    .discount-display>span{
        font-size:.8125rem
    }
    .discount-display>div{
        display:none
    }
    .faq-grid{
        grid-template-columns:1fr;
        gap:20px
    }
    .faq-intro p{
        max-width:none
    }
    .faq-list summary{
        padding-block:21px
    }
    .final-cta{
        padding:65px 0
    }
    .final-cta h2{
        font-size:3.3rem
    }
    .site-footer__top{
        grid-template-columns:1fr 1fr;
        gap:32px
    }
    .site-footer__top>div:first-child{
        grid-column:1/-1
    }
    .site-footer__bottom{
        flex-direction:column;
        gap:8px
    }
    .sticky-offer{
        gap:8px;
        padding:12px;
        bottom:8px;
        width:calc(100% - 16px)
    }
    .sticky-offer>div{
        flex:1;
        min-width:0
    }
    .sticky-offer strong{
        font-size:.8125rem
    }
    .sticky-offer>div>span{
        font-size:.75rem
    }
    .sticky-offer .button{
        padding:11px 12px;
        gap:8px;
        font-size:.8125rem;
        flex-shrink:0
    }
    .sticky-offer__close{
        width:28px
    }
    .sticky-offer .button span{
        display:none
    }
    .legal-main{
        padding-block:45px
    }
    .legal-sidebar h1{
        font-size:2.8rem
    }
    .legal-footer>.shell{
        flex-direction:column
    }
    .legal-page .brand{
        font-size:1.15rem
    }
    .legal-back{
        font-size:.8125rem
    }
}
@media(max-width:370px){
    .shell{
        width:calc(100% - 32px)
    }
    .offer-bar{
        font-size:.75rem
    }
    .offer-bar>span{
        display:none
    }
    .offer-bar strong{
        display:block
    }
    .hero__actions{
        align-items:stretch;
        flex-direction:column
    }
    .hero__actions .text-link{
        justify-content:center
    }
    .person{
        grid-template-columns:1fr
    }
    .person img{
        height:250px;
        object-position:50% 35%
    }
    .sticky-offer>div>span{
        display:none
    }
    .button{
        padding-inline:16px
    }
    .legal-back{
        max-width:90px;
        text-align:right
    }
}
@media(prefers-reduced-motion:reduce){
    html{
        scroll-behavior:auto
    }
    *,*::before,*::after{
        transition:none!important;
        animation:none!important
    }
}
