:root{
    --olive-dark:#39432E;
    --olive:#4E5B3D;
    --olive-light:#6B7855;
    --cream:#F5F1E6;
    --beige:#E8DFC9;
    --gold:#B79B63;
    --text:#2D2D2D;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Inter',sans-serif;
    background:var(--cream);
    color:var(--text);
    line-height:1.8;
    overflow-x:hidden;
}

img{
    width:100%;
    display:block;
}

.container{
    width:min(1200px,90%);
    margin:auto;
}

section{
    padding:120px 0;
}

/* NAV */



.logo{
    font-family:'Cormorant Garamond',serif;
    font-size:32px;
    color:var(--olive-dark);
}

.nav-links{
    display:flex;
    gap:40px;

}

.nav-links a{
    text-decoration:none;
    color:var(--olive-dark);
    transition:0.3s;
    font-weight: 900;
}

.nav-links a:hover{
    color:var(--gold);
}

.logo{
    display:flex;
    align-items:center;
    gap:14px;

    font-family:'Cormorant Garamond',serif;
    font-size:34px;
    color:#313923;
    font-weight:600;
}

.logo img{
    width:50px;
    height:auto;
    display:block;
}

/* NAV */

nav{
    position:fixed;
    top:0;
    left:0;

    width:100%;

    z-index:1000;

    padding:1px 0;

    transition:0.4s ease;

    background:transparent;
}

nav.scrolled{
    background:rgba(245,241,230,0.82);

    backdrop-filter:blur(12px);

    border-bottom:1px solid rgba(0,0,0,0.05);


    box-shadow:0 10px 30px rgba(0,0,0,0.04);
}

.nav-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.nav-links{
    display:flex;
    align-items:center;
    gap:34px;
}

.nav-links a{
    text-decoration:none;

    color:#39412D;

    font-size:16px;

    letter-spacing:0.5px;

    transition:0.3s ease;

    position:relative;
}

/* hover underline */

.nav-links a:not(.nav-cta)::after{
    content:'';

    position:absolute;

    left:0;
    bottom:-8px;

    width:0%;
    height:1px;

    background:#B8914D;

    transition:0.35s ease;
}

.nav-links a:not(.nav-cta):hover::after{
    width:100%;
}

.nav-links a:hover{
    color:#222;
}

/* CTA */

.nav-cta{
    margin-left:14px;

    padding:15px 28px;

    border-radius:100px;

    background:#3E482F;

    color:#fff !important;

    font-size:14px;

    letter-spacing:1px;

    box-shadow:
            0 10px 30px rgba(0,0,0,0.08);

    transition:0.35s ease;

    border:1px solid rgba(255,255,255,0.15);
}

.nav-cta:hover{
    transform:
            translateY(-2px);

    background:#4A5638;

    box-shadow:
            0 18px 40px rgba(0,0,0,0.12);
}

/* MOBILE */

@media(max-width:1000px){

    .nav-links{
        gap:18px;
    }

    .nav-cta{
        padding:13px 22px;
    }

}

@media(max-width:800px){

    .nav-links{
        display:none;
    }

}
.nav-order-btn{
    display:flex;
    align-items:center;
    justify-content:center;

    height:52px;

    padding:0 30px;

    border-radius:100px;

    text-decoration:none;

    background:#3F4A31;

    color:#F8F3E8 !important;

    font-size:13px;

    letter-spacing:2.5px;

    font-weight:600;

    border:1px solid rgba(255,255,255,0.08);

    transition:0.35s ease;

    box-shadow:
            0 10px 28px rgba(48,58,37,0.22);

    position:relative;

    overflow:hidden;
}

/* gold accent */



/* hover */

.nav-order-btn:hover{
    transform:translateY(-2px);

    background:#4B593B;

    box-shadow:
            0 18px 38px rgba(48,58,37,0.28);
}

.hero{
    position:relative;
    min-height:100vh;

    background-image:url('img/bg6.png');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;

    display:flex;
    align-items:center;

    overflow:hidden;
}

.hero-overlay{
    position:absolute;
    inset:0;

    background:
            linear-gradient(
                    to bottom,
                    rgba(245,241,230,0.3),
                    rgba(245,241,230,0.7)
            );
}

.hero-content{
    position:relative;
    z-index:2;
}

.hero-text{
    animation:fadeUp 1.4s ease;
}

.hero-top-text{
    text-align:center;

    color:#5E624D;

    letter-spacing:6px;

    font-size:15px;

    margin-bottom:18px;
}

.hero-divider{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;

    margin-bottom:28px;
}

.hero-divider span{
    width:90px;
    height:1px;

    background:#B79B63;
}

.hero-divider .dot{
    width:8px;
    height:8px;

    background:#C39B55;

    border-radius:50%;
}

.hero h1{
    font-family:'Cormorant Garamond',serif;

    text-align:center;

    font-size:60px;

    line-height:0.9;

    color:#313923;

    font-weight:600;

    margin-bottom:24px;
}

.hero-subtitle{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;

    font-family:'Cormorant Garamond',serif;

    color:#6B5A32;

    font-size:44px;

    margin-bottom:8px;
}

.hero-subtitle span{
    width:60px;
    height:1px;

    background:#C5A25B;

    position:relative;
}

.hero-subtitle span::before{
    content:'';

    position:absolute;

    right:-4px;
    top:-2px;

    width:5px;
    height:5px;

    border-radius:50%;

    background:#C5A25B;
}

.hero-small{
    text-align:center;

    letter-spacing:6px;

    color:#4F523D;

    font-size:20px;

    margin-bottom:38px;
}

.hero p{
    text-align:center;

    max-width:700px;

    margin:auto;

    color:#4D4D4D;

    font-size:25px;

    line-height:1.8;

    margin-bottom:50px;
}

.hero-buttons{
    display:flex;
    justify-content:center;
    gap:24px;
}

.btn{
    padding:18px 38px;

    border-radius:100px;

    text-decoration:none;

    transition:0.35s ease;

    font-size:15px;

    letter-spacing:1px;
}
.btn-primary{
    position:relative;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:18px 34px;

    border-radius:100px;

    background:
            linear-gradient(
                    135deg,
                    #3F4A31 0%,
                    #556344 100%
            );

    color:#F8F3E8;

    border:1px solid rgba(255,255,255,0.08);

    text-decoration:none;

    letter-spacing:1.5px;

    font-size:14px;

    font-weight:600;

    overflow:hidden;

    transition:
            transform .35s ease,
            box-shadow .35s ease,
            background .35s ease;

    box-shadow:
            0 14px 34px rgba(47,58,39,0.18),
            inset 0 1px 0 rgba(255,255,255,0.08);
}

.virtues-flow {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
    margin: 40px 0;
}

.virtues-flow > div {
    padding: 12px 18px;
    border-radius: 12px;
    background: #f8f8f8;
    text-align: center;
}

.virtues-flow > div:nth-child(even) {
    background: none;
    padding: 0;
    font-size: 24px;
    font-weight: 900;
}.virtues-garden {
     display: flex;
     justify-content: center;
     gap: 30px;
     flex-wrap: wrap;
     margin: 40px 0;
     font-size: 1.1rem;
     font-style: italic;
     color: #5a503d;
 }

.virtues-garden span {
    white-space: nowrap;
}


.contact-details {
    margin: 35px 0 45px;
    text-align: center;
}

.contact-person {
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 8px;
}

.contact-role {
    opacity: .7;
    margin-bottom: 20px;
    font-style: italic;
}

.contact-details a {
    display: block;
    margin: 10px 0;
    color: inherit;
    text-decoration: none;
    transition: .3s;
}

.contact-details a:hover {
    opacity: .7;
}

/* subtle gold glow */

.btn-primary::before{
    content:'';

    position:absolute;

    inset:0;

    background:
            linear-gradient(
                    120deg,
                    transparent,
                    rgba(212,174,104,0.16),
                    transparent
            );

    transform:translateX(-120%);

    transition:0.8s ease;
}

.btn-primary:hover::before{
    transform:translateX(120%);
}

/* golden dot */

.btn-primary::after{
    content:'';

    width:7px;
    height:7px;

    border-radius:50%;

    background:#D4AE68;

    margin-left:14px;

    box-shadow:
            0 0 12px rgba(212,174,104,0.55);
}

/* hover */

.btn-primary:hover{
    transform:
            translateY(-4px);

    background:
            linear-gradient(
                    135deg,
                    #47553A 0%,
                    #60714D 100%
            );

    box-shadow:
            0 24px 54px rgba(47,58,39,0.24),
            inset 0 1px 0 rgba(255,255,255,0.08);
}

.btn-secondary{
    border:1px solid rgba(61,71,47,0.3);

    background:rgba(255,255,255,0.5);

    backdrop-filter:blur(6px);

    color:#3D472F;
}

.btn-secondary:hover{
    background:white;

    transform:translateY(-3px);
}

@keyframes fadeUp{

    from{
        opacity:0;
        transform:translateY(40px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/* MOBILE */

@media(max-width:900px){

    .hero{
        padding:140px 0 100px;
    }

    .hero h1{
        font-size:68px;
    }

    .hero-subtitle{
        font-size:28px;
    }

    .hero-small{
        font-size:14px;
        letter-spacing:4px;
    }

    .hero p{
        font-size:18px;
    }

    .hero-buttons{
        flex-direction:column;
        align-items:center;
    }

}
/* QUOTE */

.quote{
    background:var(--beige);
    text-align:center;
}

.quote h2{
    font-family:'Cormorant Garamond',serif;
    font-size:56px;
    max-width:900px;
    margin:auto;
    line-height:1.2;
    color:var(--beige);
}

.quote p{
    margin-top:25px;
    color:var(--gold);
}

/* FEATURES */

.features-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px;
}

.feature{
    background:white;
    padding:50px 40px;
    border-radius:30px;
    transition:0.4s;
}

.feature:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 40px rgba(0,0,0,0.05);
}

.feature-number{
    color:var(--gold);
    margin-bottom:20px;
}

.feature h3{
    font-family:'Cormorant Garamond',serif;
    font-size:40px;
    margin-bottom:15px;
    color:var(--olive-dark);
}

.feature p{
    color:#666;
}

/* STORY */

.story{
    background:white;
}

.story-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

.story-image img{
    border-radius:30px;
}

.section-subtitle{
    color:var(--gold);
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:20px;
}

.section-title{
    font-family:'Cormorant Garamond',serif;
    font-size:64px;
    line-height:1;
    margin-bottom:30px;
    color:var(--olive-dark);
}

.story-text p{
    margin-bottom:20px;
    color:#555;
}

.story-points {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.story-points li {
    margin-bottom: 1px;
}

.how-final {
    margin-top: 60px;
    text-align: center;
    font-size: 1.8rem;
    font-family: var(--font-heading);
    line-height: 1.4;
}

.how-final-sub {
    margin-top: 15px;
    text-align: center;
    font-style: italic;
    opacity: .8;
}

.cards-message {
    margin: 35px auto;
    text-align: center;
}

.cards-message p:first-child {
    font-size: 1.2rem;
    margin-bottom: 15px;
}

.cards-message p:last-child {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.6;
}

.cards-for {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 35px;
}

.cards-for-item {
    padding: 12px 20px;
    border-radius: 999px;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.08);
}

.author-section{
    padding:120px 0;
}

.author-grid{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:80px;
    align-items:center;
}

.author-image{
    position:relative;
}

.author-image img{
    width:100%;
    display:block;
    border-radius:30px;
    box-shadow:0 30px 80px rgba(0,0,0,.15);
}

.author-role{
    margin:20px 0 30px;
    opacity:.7;
    line-height:1.8;
    font-style:italic;
}

.author-content p{
    margin-bottom:22px;
    line-height:1.9;
}

.author-content blockquote{
    margin-top:40px;
    padding:30px;
    border-radius:20px;
    background:rgba(255,255,255,.05);
    font-size:1.2rem;
    line-height:1.8;
    font-style:italic;
}

@media(max-width:992px){

    .author-grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .author-image{
        max-width:420px;
        margin:0 auto;
    }
}

/* CARDS */

.cards{
    text-align:center;
}

.cards h2{
    font-family:'Cormorant Garamond',serif;
    font-size:64px;
    margin-bottom:20px;
    color:var(--olive-dark);
}

.cards p{
    margin-bottom:60px;
    color:#666;
}

.cards-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.card-item{
    overflow:hidden;
    border-radius:24px;
}

.card-item img{
    transition:0.8s;
}

.card-item:hover img{
    transform:scale(1.05);
}

/* SUPPORT */

.support{
    background:var(--olive-dark);
    color:white;
    text-align:center;
}

.support h2{
    font-family:'Cormorant Garamond',serif;
    font-size:58px;
    margin-bottom:30px;
}

/* CONTACT */

.contact{
    text-align:center;
}

.contact h2{
    font-family:'Cormorant Garamond',serif;
    font-size:58px;
    margin-bottom:20px;
    color:var(--olive-dark);
}

.contact p{
    max-width:700px;
    margin:auto;
    margin-bottom:40px;
    color:#666;
}

.contact a{
    text-decoration:none;
    color:var(--olive-dark);
    font-size:24px;
}

/* FOOTER */

footer{
    padding:40px 0;
    border-top:1px solid rgba(0,0,0,0.08);
    text-align:center;
    color:var(--gold) !important;
}

/* REVEAL */

.reveal{
    opacity:0;
    transform:translateY(40px);
    transition:1s;
}

.reveal.active{
    opacity:1;
    transform:translateY(0);
}

/* MOBILE */

@media(max-width:900px){

    .hero-content,
    .story-grid,
    .features-grid,
    .cards-grid{
        grid-template-columns:1fr;
    }

    .hero{
        padding-top:120px;
    }

    .hero-text h1{
        font-size:56px;
    }

    .section-title,
    .cards h2,
    .quote h2,
    .support h2,
    .contact h2{
        font-size:42px;
    }

    .nav-links{
        display:none;
    }

}

.virtues-section{
    padding:140px 0;

    background:#F6F0E3;

    position:relative;

    overflow:hidden;
}

/* jemná textura */

.virtues-section::before{
    content:'';

    position:absolute;
    inset:0;

    opacity:0.08;

    background-image:
            radial-gradient(rgba(0,0,0,0.04) 1px, transparent 1px);

    background-size:22px 22px;

    pointer-events:none;
}

.virtues-section .container{
    position:relative;
    z-index:2;
}

/* TOP */

.virtues-top{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:26px;

    margin-bottom:28px;
}

.virtues-top img{
    width:72px;

    opacity:0.95;
}

.virtues-line{
    width:120px;
    height:1px;

    background:#C8A45F;
}

/* TITLE */

.virtues-section h2{
    text-align:center;

    font-family:'Cormorant Garamond',serif;

    font-size:56px;

    line-height:1.25;

    color:#39412D;

    font-weight:600;

    letter-spacing:1px;

    margin-bottom:34px;
}

/* DIVIDER */

.virtues-divider{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;

    margin-bottom:90px;
}

.virtues-divider span{
    width:120px;
    height:1px;

    background:#C8A45F;
}

.virtues-divider .dot{
    width:10px;
    height:10px;

    border-radius:50%;

    background:#C8A45F;
}

/* GRID */

.virtues-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
}

/* ITEM */

.virtue-item{
    text-align:center;

    padding:0 38px;

    position:relative;
}

.virtue-item:not(:last-child)::after{
    content:'';

    position:absolute;

    right:0;
    top:15px;

    width:1px;
    height:240px;

    background:rgba(180,150,90,0.35);
}

/* ICON */

.virtue-icon{
    width:110px;
    height:110px;


    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    margin:auto;

    margin-bottom:30px;
}

.virtue-icon img{
    width:150px;
    height:auto;

    opacity:0.85;
}

/* HEADLINE */

.virtue-item h3{
    font-family:'Cormorant Garamond',serif;

    font-size:30px;

    line-height:1.4;

    color:#39412D;

    margin-bottom:24px;

    font-weight:600;
}

/* MINI DIVIDER */

.mini-divider{
    width:54px;
    height:1px;

    background:#C8A45F;

    margin:auto;

    margin-bottom:24px;

    position:relative;
}

.mini-divider::before{
    content:'';

    position:absolute;

    left:50%;
    top:50%;

    transform:translate(-50%,-50%);

    width:7px;
    height:7px;

    border-radius:50%;

    background:#39412D;
}

/* TEXT */

.virtue-item p{
    font-size:20px;

    line-height:1.8;

    color:#4F4F4F;
}

/* MOBILE */

@media(max-width:1000px){

    .virtues-grid{
        grid-template-columns:1fr 1fr;

        gap:70px 0;
    }

    .virtue-item:nth-child(2)::after{
        display:none;
    }

}

@media(max-width:700px){

    .virtues-grid{
        grid-template-columns:1fr;
    }

    .virtue-item::after{
        display:none;
    }

    .virtues-section{
        padding:100px 0;
    }

    .virtues-section h2{
        font-size:36px;
    }

    .virtue-item{
        padding:0;
    }

}

.bg-theme{
    background-image:url('img/bg2.png');

    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;

    position:relative;

    overflow:hidden;
}

/* jemný světlý overlay */

.bg-theme::before{
    content:'';

    position:absolute;
    inset:0;

    background:rgba(246,240,227,0.72);

    pointer-events:none;
}

/* aby content byl nad overlayem */

.bg-theme > *{
    position:relative;
    z-index:2;
}

.bg-theme2{
    background-image:url('img/bg5.png');

    background-position:center;


}


.hero-divider-left{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:14px;

    margin-bottom:28px;
}

.hero-divider-left span{
    width:90px;
    height:1px;

    background:#B79B63;
}

.hero-divider-left .dot{
    width:8px;
    height:8px;

    background:#C39B55;

    border-radius:50%;
}

.how-it-works{
    padding:150px 0;

    position:relative;
}

/* CENTER */

.section-center{
    text-align:center;

    max-width:900px;

    margin:auto;

    margin-bottom:100px;
}

.section-title.center{
    text-align:center;
}

.section-description{
    max-width:760px;

    margin:auto;

    margin-top:30px;

    font-size:22px;

    line-height:1.9;

    color:#555;
}

/* STEPS */

.steps-wrapper{
    display:flex;
    align-items:flex-start;
    justify-content:center;

    gap:34px;
}

/* ITEM */

.step-item{
    flex:1;

    text-align:center;

    position:relative;

    padding:0 20px;
}

/* NUMBER */

.step-number{
    font-size:14px;

    letter-spacing:4px;

    color:#B8914D;

    margin-bottom:18px;
}

/* ICON */

.step-icon{
    width:130px;
    height:130px;

    margin:auto;

    margin-bottom:34px;

    border-radius:50%;

    border:1px solid rgba(184,145,77,0.3);

    background:rgba(255,255,255,0.45);

    backdrop-filter:blur(8px);

    display:flex;
    align-items:center;
    justify-content:center;

    box-shadow:
            0 10px 30px rgba(0,0,0,0.04),
            inset 0 1px 0 rgba(255,255,255,0.7);
}

.step-icon img{
    width:56px;

    opacity:0.85;
}

/* TITLE */

.step-item h3{
    font-family:'Cormorant Garamond',serif;

    font-size:30px;

    color:#39412D;

    margin-bottom:20px;

    font-weight:600;
}

/* TEXT */

.step-item p{
    font-size:18px;

    line-height:1.3;

    color:#555;

    max-width:320px;

    margin:auto;
}

/* LINE */

.step-line{
    width:120px;
    height:1px;

    background:#C8A45F;

    margin-top:120px;

    position:relative;
}

.step-line::before{
    content:'';

    position:absolute;

    left:50%;
    top:50%;

    transform:translate(-50%,-50%);

    width:10px;
    height:10px;

    border-radius:50%;

    background:#C8A45F;
}

.step-icon{
    width:130px;
    height:130px;

    margin:auto;
    margin-bottom:34px;

    border-radius:50%;

    border:1px solid rgba(184,145,77,0.3);

    background:
            rgba(255,255,255,0.45);

    backdrop-filter:blur(8px);

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:54px;

    color:#39412D;

    box-shadow:
            0 10px 30px rgba(0,0,0,0.04),
            inset 0 1px 0 rgba(255,255,255,0.7);
}
/* MOBILE */

@media(max-width:1000px){

    .steps-wrapper{
        flex-direction:column;

        align-items:center;
    }

    .step-line{
        width:1px;
        height:80px;

        margin:0;
    }

    .step-line::before{
        left:50%;
        top:50%;
    }

}

@media(max-width:700px){

    .how-it-works{
        padding:100px 0;
    }

    .step-item h3{
        font-size:34px;
    }

    .section-description,
    .step-item p{
        font-size:18px;
    }

}
.faq-section{
    padding:150px 0;

    position:relative;
}

.faq-top{
    text-align:center;

    margin-bottom:80px;
}

/* WRAPPER */

.faq-wrapper{
    max-width:950px;

    margin:auto;
}

/* ITEM */

.faq-item{
    background:rgba(255,255,255,0.5);

    backdrop-filter:blur(8px);

    border:1px solid rgba(180,150,90,0.18);

    border-radius:28px;

    margin-bottom:24px;

    overflow:hidden;

    transition:0.35s ease;

    box-shadow:
            0 10px 30px rgba(0,0,0,0.03),
            inset 0 1px 0 rgba(255,255,255,0.6);
}

.faq-item:hover{
    transform:translateY(-2px);
}

/* QUESTION */

.faq-question{
    width:100%;

    background:none;
    border:none;

    padding:34px 38px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    cursor:pointer;

    text-align:left;
}

.faq-question span{
    font-family:'Cormorant Garamond',serif;

    font-size:34px;

    color:#39412D;

    font-weight:600;

    line-height:1.3;
}

/* ICON */

.faq-icon{
    position:relative;

    width:28px;
    height:28px;

    flex-shrink:0;
}

.faq-icon::before,
.faq-icon::after{
    content:'';

    position:absolute;

    top:50%;
    left:50%;

    background:#B8914D;

    transform:translate(-50%,-50%);

    transition:0.3s ease;
}

.faq-icon::before{
    width:20px;
    height:1.5px;
}

.faq-icon::after{
    width:1.5px;
    height:20px;
}

.faq-item.active .faq-icon::after{
    opacity:0;
}

/* ANSWER */

.faq-answer{
    max-height:0;

    overflow:hidden;

    transition:max-height 0.45s ease;
}

.faq-answer p{
    padding:
            0 38px 34px;

    font-size:20px;

    line-height:1.9;

    color:#555;

    max-width:760px;
}

/* ACTIVE */

.faq-item.active .faq-answer{
    max-height:400px;
}

/* MOBILE */

@media(max-width:700px){

    .faq-section{
        padding:100px 0;
    }

    .faq-question{
        padding:26px;
    }

    .faq-question span{
        font-size:26px;
    }

    .faq-answer p{
        padding:
                0 26px 26px;

        font-size:17px;
    }

}

.cards-showcase{
    padding:150px 0;

    background:#F7F2E8;

    position:relative;

    overflow:hidden;
}

/* background texture */

.cards-showcase::before{
    content:'';

    position:absolute;
    inset:0;

    opacity:0.07;

    background-image:
            radial-gradient(rgba(0,0,0,0.05) 1px, transparent 1px);

    background-size:24px 24px;

    pointer-events:none;
}

.cards-showcase .container{
    position:relative;
    z-index:2;
}

/* TOP */

.cards-top{
    text-align:center;

    max-width:900px;

    margin:auto;

    margin-bottom:90px;
}

/* SLIDER */

.cards-slider{
    display:grid;
    grid-template-columns:repeat(3,1fr);

    gap:34px;
}

/* CARD */

.showcase-card{
    background:rgba(255,255,255,0.58);

    backdrop-filter:blur(10px);

    border-radius:34px;

    overflow:hidden;

    border:1px solid rgba(180,150,90,0.18);

    transition:0.45s ease;

    box-shadow:
            0 20px 50px rgba(0,0,0,0.04),
            inset 0 1px 0 rgba(255,255,255,0.7);
}

.showcase-card:hover{
    transform:
            translateY(-10px)
            rotate(-1deg);

    box-shadow:
            0 30px 70px rgba(0,0,0,0.08);
}

/* IMAGE */

.card-image{
    position:relative;

    overflow:hidden;
}

.card-image img{
    width:100%;

    display:block;

    transition:0.8s ease;
}

.showcase-card:hover .card-image img{
    transform:scale(1.05);
}

/* CONTENT */

.card-content{
    padding:38px;
}

/* CATEGORY */

.card-category{
    font-size:13px;

    letter-spacing:3px;

    text-transform:uppercase;

    color:#B8914D;

    margin-bottom:18px;
}

/* TITLE */

.showcase-card h3{
    font-family:'Cormorant Garamond',serif;

    font-size:42px;

    line-height:1.2;

    color:#39412D;

    margin-bottom:24px;

    font-weight:600;
}

/* TEXT */

.showcase-card p{
    font-size:19px;

    line-height:1.9;

    color:#555;
}

/* MOBILE */

@media(max-width:1000px){

    .cards-slider{
        grid-template-columns:1fr;
    }

}

@media(max-width:700px){

    .cards-showcase{
        padding:100px 0;
    }

    .showcase-card h3{
        font-size:34px;
    }

    .showcase-card p{
        font-size:17px;
    }

}

.cards-carousel-section{
    padding:150px 0;

    background:#F7F2E8;

    overflow:hidden;
}

/* WRAPPER */

.cards-carousel-wrapper{
    position:relative;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:30px;
}

/* CAROUSEL */

.cards-carousel{
    width:100%;

    overflow:hidden;
}

/* TRACK */

.carousel-track{
    display:flex;

    transition:transform 0.6s ease;
}

/* SLIDE */

.carousel-slide{
    min-width:33.333%;

    padding:18px;

    transition:0.4s ease;
}

.carousel-slide img{
    width:100%;

    display:block;

    border-radius:30px;

    box-shadow:
            0 25px 60px rgba(0,0,0,0.08);

    transition:0.5s ease;
}

.carousel-slide:hover img{
    transform:
            translateY(-8px)
            rotate(-1deg);

    box-shadow:
            0 35px 80px rgba(0,0,0,0.12);
}

/* BUTTONS */

.carousel-btn{
    width:68px;
    height:68px;

    border-radius:50%;

    border:none;

    background:rgba(255,255,255,0.7);

    backdrop-filter:blur(10px);

    cursor:pointer;

    font-size:28px;

    color:#39412D;

    transition:0.3s ease;

    flex-shrink:0;

    box-shadow:
            0 10px 30px rgba(0,0,0,0.06);
}

.carousel-btn:hover{
    transform:scale(1.08);

    background:white;
}

/* MOBILE */

@media(max-width:1000px){

    .carousel-slide{
        min-width:50%;
    }

}

@media(max-width:700px){

    .cards-carousel-section{
        padding:100px 0;
    }

    .carousel-slide{
        min-width:100%;
    }

    .carousel-btn{
        display:none;
    }

}

.package-section{

    padding:150px 0;

}

.package-grid{

    display:grid;

    grid-template-columns:400px 1fr;

    gap:100px;

    align-items:start;

}

.package-image{

    position:sticky;

    top:100px;

    height:max-content;

}

.package-image img{

    display:block;

    width:100%;

}

/* IMAGE */

.package-image{

    position: sticky;

    top: 120px; /* vzdálenost od horního okraje */

    align-self: start;

}

.package-image img{
    width:100%;

    max-width:100%;



    filter:
            drop-shadow(0 30px 60px rgba(0,0,0,0.12));

    animation:floatPackage 7s ease-in-out infinite;
}

@keyframes floatPackage{

    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-10px);
    }

    100%{
        transform:translateY(0px);
    }

}

/* TEXT */

.package-text{
    font-size:21px;

    line-height:1.9;

    color:#555;

    margin-bottom:45px;
}

/* ITEMS */

.package-items{
    display:flex;
    flex-direction:column;

    gap:26px;
}

/* ITEM */

.package-item{
    display:flex;
    align-items:flex-start;

    gap:22px;

    padding:28px;

    border-radius:28px;

    background:
            rgba(255,255,255,0.48);

    backdrop-filter:blur(10px);

    border:1px solid rgba(184,145,77,0.15);

    box-shadow:
            0 10px 30px rgba(0,0,0,0.03),
            inset 0 1px 0 rgba(255,255,255,0.7);

    transition:0.35s ease;
}

.package-item:hover{
    transform:translateY(-4px);

    box-shadow:
            0 18px 40px rgba(0,0,0,0.05);
}

/* ICON */

.package-icon{
    width:58px;
    height:58px;

    border-radius:50%;

    flex-shrink:0;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#F4E8CC;

    color:#39412D;

    font-size:24px;

    border:1px solid rgba(184,145,77,0.25);
}

/* TITLE */

.package-item h3{
    font-family:'Cormorant Garamond',serif;

    font-size:32px;

    line-height:1.2;

    color:#39412D;

    margin-bottom:10px;
}

/* TEXT */

.package-item p{
    font-size:18px;

    line-height:1.8;

    color:#666;
}

/* MOBILE */

@media(max-width:1000px){

    .package-grid{
        grid-template-columns:1fr;

        gap:70px;
    }

}

@media(max-width:700px){

    .package-section{
        padding:100px 0;
    }

    .package-item{
        padding:22px;
    }

    .package-item h3{
        font-size:28px;
    }

    .package-text,
    .package-item p{
        font-size:17px;
    }

}

.footer{
    position:relative;

    padding:
            120px 0 40px;

    overflow:hidden;
}

/* TOP */

.footer-top{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;

    gap:80px;

    padding-bottom:60px;

    border-bottom:
            1px solid rgba(184,145,77,0.18);
}

/* LOGO */

.footer-logo{
    display:flex;
    align-items:center;

    gap:16px;

    margin-bottom:26px;
}

.footer-logo img{
    width:54px;
}

.footer-logo span{
    font-family:'Cormorant Garamond',serif;

    font-size:25px;

    color:var(--beige);

    font-weight:600;
}

.package-price{
    margin:35px 0 45px;
}

.price-label{
    font-size:.9rem;
    text-transform:uppercase;
    letter-spacing:2px;
    opacity:.6;
}

.price-value{
    font-size:3rem;
    font-family:‘Cormorant Garamond’, serif;
    font-weight:600;
    margin-bottom: 0 !important;
}

.price-note{
    opacity:.7;
    margin-bottom:25px;
}
/* TEXT */

.footer-brand p{

    font-size:13px;

    line-height:1.9;

    color:var(--beige);
}

/* TITLES */

.footer-links h3,
.footer-contact h3{
    font-family:'Cormorant Garamond',serif;

    font-size:34px;

    color:var(--beige);

    margin-bottom:26px;
}

/* LINKS */

.footer-links{
    display:flex;
    flex-direction:column;

    gap:14px;
}

.footer-links a,
.footer-contact a{
    text-decoration:none;

    color:var(--beige);

    font-size:17px;

    transition:0.3s ease;
}

.footer-links a:hover,
.footer-contact a:hover{
    color:var(--gold);
}

/* QUOTE */

.footer-quote{
    margin-top:30px;

    font-family:'Cormorant Garamond',serif;

    font-size:28px;

    line-height:1.5;

    color:#7C6840;
}

/* BOTTOM */

.footer-bottom{
    padding-top:34px;

    display:flex;
    justify-content:space-between;
    align-items:center;

    color:var(--beige);

    font-size:15px;

    letter-spacing:0.5px;
}

/* MOBILE */

@media(max-width:1000px){

    .footer-top{
        grid-template-columns:1fr;
        gap:50px;
    }

}

@media(max-width:700px){

    .footer{
        padding:
                90px 0 30px;
    }

    .footer-logo span{
        font-size:34px;
    }

    .footer-bottom{
        flex-direction:column;

        gap:12px;

        text-align:center;
    }

}