/* =======================================
   LINKS-GRÜNER PETER
   Landingpage
======================================= */

:root {

    --red: #ae2b2c;
    --redDark: #8f1d1f;

    --bg: #f7f9f5;

    --text: #242424;

    --light: #ffffff;

    --border: rgba(0,0,0,.08);

    --shadow:
        0 25px 60px rgba(0,0,0,.12);

    --radius:24px;

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Inter',sans-serif;

background:var(--bg);

color:var(--text);

overflow-x:hidden;

line-height:1.7;

}

img{

display:block;

max-width:100%;

}

a{

text-decoration:none;

color:inherit;

}

.container{

width:min(1200px,92%);

margin:auto;

}

/* ===========================
BACKGROUND
=========================== */

.background-decoration{

position:fixed;

top:0;
left:0;

width:100%;
height:100%;

pointer-events:none;

z-index:-5;

background:

radial-gradient(circle at 20% 20%,
rgba(174,43,44,.06),
transparent 30%),

radial-gradient(circle at 80% 70%,
rgba(174,43,44,.05),
transparent 25%),

linear-gradient(var(--bg),var(--bg));

}

.background-decoration::before{

content:"";

position:absolute;

bottom:-80px;

left:-5%;

width:110%;

height:320px;

background:

radial-gradient(ellipse at center,
rgba(174,43,44,.04),
transparent 70%);

filter:blur(40px);

}

/* ===========================
HEADER
=========================== */

header{

position:sticky;

top:0;

backdrop-filter:blur(18px);

background:rgba(247,249,245,.82);

border-bottom:1px solid rgba(0,0,0,.05);

z-index:100;

}

.nav{

display:flex;

justify-content:space-between;

align-items:center;

padding:18px 0;

}

.logo{

font-family:'Playfair Display',serif;

font-size:28px;

font-weight:800;

color:var(--red);

letter-spacing:.5px;

}

.navButton{

padding:12px 24px;

background:var(--red);

color:white;

border-radius:999px;

font-weight:600;

transition:.3s;

box-shadow:

0 8px 24px rgba(174,43,44,.25);

}

.navButton:hover{

transform:translateY(-3px);

background:var(--redDark);

}

/* ===========================
HERO
=========================== */

.hero{

padding:90px 0;

}

.heroGrid{

display:grid;

grid-template-columns:1.1fr .9fr;

align-items:center;

gap:80px;

}

.badge{

display:inline-block;

padding:10px 18px;

background:white;

border-radius:999px;

font-size:13px;

font-weight:700;

letter-spacing:2px;

border:1px solid rgba(0,0,0,.08);

margin-bottom:24px;

color:var(--red);

}

/* ===========================
1. AUFLAGE
=========================== */

.editionNotice{

    display:inline-flex;

    align-items:center;

    gap:18px;

    margin-bottom:32px;

    padding:18px 24px;

    background:white;

    border-left:6px solid #ae2b2c;

    border-radius:18px;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.editionTitle{

    background:#ae2b2c;

    color:white;

    padding:10px 16px;

    border-radius:12px;

    font-weight:700;

    white-space:nowrap;

}

.editionText{

    font-size:16px;

    line-height:1.5;

}

.heroText h1{

font-family:'Playfair Display',serif;

font-size:72px;

line-height:1.05;

margin-bottom:28px;

}

.heroText span{

color:var(--red);

}

.lead{

font-size:23px;

font-weight:500;

margin-bottom:24px;

color:#444;

}

.heroText p{

margin-bottom:20px;

font-size:18px;

}

.heroButtons{

display:flex;

gap:18px;

margin-top:40px;

flex-wrap:wrap;

}

.buttonPrimary{

background:var(--red);

color:white;

padding:18px 36px;

border-radius:999px;

font-weight:700;

transition:.3s;

box-shadow:

0 15px 35px rgba(174,43,44,.35);

}

.buttonPrimary:hover{

transform:translateY(-4px);

background:var(--redDark);

}

.buttonGhost{

padding:18px 36px;

border-radius:999px;

background:white;

border:1px solid rgba(0,0,0,.08);

font-weight:600;

transition:.3s;

}

.buttonGhost:hover{

transform:translateY(-4px);

box-shadow:var(--shadow);

}

/* ===========================
BILD
=========================== */

.heroImage{

position:relative;

display:flex;

justify-content:center;

}

.cardShadow{

position:absolute;

width:88%;

height:88%;

border-radius:40px;

background:rgba(174,43,44,.12);

filter:blur(70px);

top:8%;

z-index:-1;

}

.heroImage img{

width:430px;

border-radius:28px;

box-shadow:

0 30px 70px rgba(0,0,0,.22);

border:8px solid white;

transform:rotate(-2deg);

transition:.5s;

}

.heroImage img:hover{

transform:

rotate(0deg)

scale(1.03);

}
/* ===========================
FEATURES
=========================== */

.features{

    padding:100px 0;
    
    }
    
    .features h2{
    
    font-family:'Playfair Display',serif;
    
    font-size:54px;
    
    text-align:center;
    
    margin-bottom:60px;
    
    color:var(--red);
    
    }
    
    .cards{
    
    display:grid;
    
    grid-template-columns:repeat(3,1fr);
    
    gap:32px;
    
    }
    
    .card{
    
    background:white;
    
    padding:38px;
    
    border-radius:var(--radius);
    
    box-shadow:var(--shadow);
    
    border:1px solid var(--border);
    
    transition:.35s;
    
    position:relative;
    
    overflow:hidden;
    
    }
    
    .card::before{
    
    content:"";
    
    position:absolute;
    
    left:0;
    top:0;
    
    width:100%;
    height:5px;
    
    background:var(--red);
    
    transform:scaleX(0);
    
    transform-origin:left;
    
    transition:.35s;
    
    }
    
    .card:hover{
    
    transform:translateY(-10px);
    
    }
    
    .card:hover::before{
    
    transform:scaleX(1);
    
    }
    
    .card h3{
    
    font-size:24px;
    
    margin-bottom:18px;
    
    }
    
    .card p{
    
    color:#555;
    
    font-size:17px;
    
    }
    
    /* ===========================
    CTA
    =========================== */
    
    .cta{
    
    padding:120px 0;
    
    text-align:center;
    
    position:relative;
    
    overflow:hidden;
    
    }
    
    .cta::before{
    
    content:"";
    
    position:absolute;
    
    left:50%;
    
    top:50%;
    
    transform:translate(-50%,-50%);
    
    width:900px;
    
    height:900px;
    
    background:
    
    radial-gradient(circle,
    rgba(174,43,44,.08),
    transparent 65%);
    
    z-index:-1;
    
    }
    
    .cta h2{
    
    font-family:'Playfair Display',serif;
    
    font-size:60px;
    
    margin-bottom:25px;
    
    line-height:1.1;
    
    }
    
    .cta p{
    
    font-size:22px;
    
    margin-bottom:45px;
    
    color:#555;
    
    }
    
    .buyButton{
    
    display:inline-block;
    
    padding:22px 48px;
    
    background:var(--red);
    
    color:white;
    
    border-radius:999px;
    
    font-size:20px;
    
    font-weight:700;
    
    transition:.35s;
    
    box-shadow:
    
    0 18px 40px rgba(174,43,44,.35);
    
    }
    
    .buyButton:hover{
    
    background:var(--redDark);
    
    transform:
    
    translateY(-5px)
    
    scale(1.02);
    
    }
    
    /* ===========================
    FOOTER
    =========================== */
    
    footer{
    
    margin-top:100px;
    
    padding:35px 0;
    
    border-top:1px solid rgba(0,0,0,.08);
    
    background:white;
    
    }
    
    .footer{
    
    display:flex;
    
    justify-content:space-between;
    
    align-items:center;
    
    gap:20px;
    
    font-size:15px;
    
    color:#666;
    
    }
    
    /* ===========================
    SCROLL ANIMATION
    =========================== */
    
    .reveal{
    
    opacity:0;
    
    transform:translateY(40px);
    
    transition:
    
    opacity .8s ease,
    
    transform .8s ease;
    
    }
    
    .reveal.visible{
    
    opacity:1;
    
    transform:none;
    
    }
    
    /* ===========================
    RESPONSIVE
    =========================== */
    
    @media(max-width:1050px){
    
    .heroGrid{
    
    grid-template-columns:1fr;
    
    text-align:center;
    
    }
    
    .heroButtons{
    
    justify-content:center;
    
    }
    
    .heroImage{
    
    order:-1;
    
    }
    
    .heroImage img{
    
    width:360px;
    
    }
    
    .heroText h1{
    
    font-size:58px;
    
    }
    
    .cards{
    
    grid-template-columns:1fr;
    
    }
    
    .footer{
    
    flex-direction:column;
    
    text-align:center;
    
    }
    
    }
    
    @media(max-width:700px){
    
    .hero{
    
    padding:60px 0;
    
    }
    
    .heroText h1{
    
    font-size:46px;
    
    }
    
    .features h2{
    
    font-size:42px;
    
    }
    
    .cta h2{
    
    font-size:42px;
    
    }
    
    .lead{
    
    font-size:20px;
    
    }
    
    .heroText p{
    
    font-size:17px;
    
    }
    
    .heroImage img{
    
    width:300px;
    
    }
    
    .buttonPrimary,
    .buttonGhost,
    .buyButton{
    
    width:100%;
    
    text-align:center;
    
    }
    
    .logo{
    
    font-size:24px;
    
    }
    
    .nav{
    
    flex-direction:column;
    
    gap:20px;
    
    }
    
    }
    
    /* ===========================
    EXTRAS
    =========================== */
    
    ::selection{
    
    background:var(--red);
    
    color:white;
    
    }
    
    ::-webkit-scrollbar{
    
    width:10px;
    
    }
    
    ::-webkit-scrollbar-thumb{
    
    background:var(--red);
    
    border-radius:20px;
    
    }
    
    ::-webkit-scrollbar-track{
    
    background:#eceee8;
    
    }

    /* ===========================
PREIS-STICKER
=========================== */

.heroImage{

    position:relative;

}

.priceSticker{

    position:absolute;

    right:-20px;

    bottom:25px;

    width:150px;
    height:90px;

    background:#ae2b2c;

    color:white;

    border-radius:18px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    transform:rotate(8deg);

    box-shadow:
        0 18px 45px rgba(0,0,0,.28);

    border:6px solid white;

    transition:.35s;

    z-index:20;

}

.priceSticker:hover{

    transform:
        rotate(6deg)
        scale(1.08);

}

.currency{

    font-size:16px;

    font-weight:700;

    letter-spacing:2px;

    opacity:.95;

}

.price{

    font-size:38px;

    font-weight:800;

    line-height:1;

}