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

body{
font-family:'Inter',sans-serif;
background:#f7f3ef;
color:#111;
line-height:1.6;
}

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

.container{
max-width:1200px;
margin:auto;
padding:0 30px;
}


/* HEADER */

.header{
position:fixed;
top:0;
width:100%;
background:white;
border-bottom:1px solid #eee;
z-index:100;
}

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

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


/* SOCIAL */

.header-social{
display:flex;
gap:60px;
}

.header-social a{
color:#333;
font-size:30px;
transition:.3s;
}

.header-social a:hover{
opacity:.6;
}



/* HERO */

.hero{
height:100vh;
position:relative;
color:white;
overflow:hidden;
}

.hero-image{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}

.hero-image picture,
.hero-image img{
display:block;
width:100%;
height:100%;
}

.hero-image img{
object-fit:cover;
object-position:50% 30%;
}

/* GRADIENT OVERLAY */

.hero-overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;

background:linear-gradient(
90deg,
rgba(0,0,0,.65) 0%,
rgba(0,0,0,.45) 35%,
rgba(0,0,0,.2) 70%,
rgba(0,0,0,0) 100%
);

}


/* HERO LAYOUT */

.hero-content{
position:relative;
z-index:2;
height:100%;

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


/* HERO LEFT */

.hero-left{
display:flex;
flex-direction:column;
gap:45px;

margin-left:6%;
max-width:420px;
}


/* HERO TEXT */

.hero-text{
font-family:'Cormorant Garamond',serif;
font-size:44px;
line-height:1.3;
}


/* HERO ICON MENU */

.hero-icons{
display:flex;
gap:20px;
}

/* jednotné glass buttons */

.hero-icons a{

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

width:90px;
height:90px;

color:white;
text-decoration:none;
font-size:13px;

border-radius:14px;

background:rgba(255,255,255,0.08);
backdrop-filter:blur(8px);

transition:.25s;
}

.hero-icons a:hover{
transform:translateY(-6px);
background:rgba(255,255,255,0.15);
}

.hero-icons i{
font-size:24px;
margin-bottom:6px;
}


/* EVENT CARD */

.hero-event{
margin-right:-1%;
}

.hero-event-inner{

background:rgba(0,0,0,.65);
backdrop-filter:blur(8px);

color:white;

padding:35px;
border-radius:14px;

width:270px;

box-shadow:
0 20px 60px rgba(0,0,0,.35);
}


.hero-event-label{
font-size:11px;
letter-spacing:2px;
text-transform:uppercase;
opacity:.7;
margin-bottom:12px;
}

.hero-event-date{
font-size:42px;
font-weight:700;
margin-bottom:6px;
}

.hero-event-place{
margin-bottom:18px;
opacity:.9;
}


/* BUTTON */

.btn{
display:inline-flex;
align-items:center;
gap:8px;

text-decoration:none;

background:#6a30ff;
color:white;

padding:10px 16px;
border-radius:6px;

font-size:14px;

transition:.3s;
}

.btn:hover{
background:#4c21cc;
}


/* SECTIONS */

.section{
padding:110px 0;
}

.section-title{
text-align:center;
font-size:36px;
margin-bottom:50px;
}


/* QUOTE */

.quote{
background:#111;
color:white;

text-align:center;

padding:70px 20px;

font-family:'Cormorant Garamond',serif;
font-size:32px;
}



/* ABOUT */

.about{
display:flex;
flex-direction:column;
gap:35px;

text-align:center;
}

.about-icons{
display:flex;
justify-content:center;
gap:45px;
}

.about-item i{
font-size:26px;
margin-bottom:6px;
}



/* EVENTS */

/* EVENTS */

.events-section{
background:#f5f2ef;
}

.events-list{
max-width:700px;
margin:60px auto 0;
display:flex;
flex-direction:column;
gap:18px;
}

/* jednotlivý event */

.event-row{

display:flex;
align-items:center;
gap:30px;

background:white;

padding:24px 28px;

border-radius:14px;

box-shadow:0 8px 25px rgba(0,0,0,.05);

transition:.25s;
}

.event-row:hover{
transform:translateY(-3px);
}

/* datum */

.event-date{

font-size:22px;
font-weight:700;

color:#6a30ff;

min-width:80px;
}

/* text */

.event-info{
display:flex;
flex-direction:column;
gap:4px;
}

.event-place{
font-size:18px;
font-weight:700;
}

.event-action{
font-size:15px;
opacity:.6;
}

/* tlačítko pod seznamem */

.events-cta{
text-align:center;
margin-top:45px;
}



/* CARDS */

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:35px;
}

.card{

background:white;

border-radius:12px;

overflow:hidden;

text-align:center;

box-shadow:0 15px 40px rgba(0,0,0,.06);

transition:.3s;
}

.card:hover{
transform:translateY(-6px);
}

.card img{
width:100%;
height:auto;
object-fit:contain;
}

.card h3{
margin:20px 0;
}



/* CONTACT */

.contact{
text-align:center;
}

.contact-links{
display:flex;
justify-content:center;
gap:30px;

margin-top:30px;
}

.contact-links a{
display:flex;
gap:8px;

text-decoration:none;
color:#333;

font-weight:600;
}



/* FOOTER */

.footer{
text-align:center;

padding:40px;

border-top:1px solid #eee;

margin-top:50px;
}



/* MOBILE */

@media(max-width:768px){

.logo img{
height:130px;
}

/* HERO */

.hero{
height:auto;
padding-top:140px;
padding-bottom:80px;
}

.hero-content{
flex-direction:column;
align-items:flex-start;
gap:35px;
}

.hero-text{
font-size:30px;
}


/* ICON GRID */

.hero-icons{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:25px;
}


/* EVENT */

.hero-event{
margin-right:0;
}

.hero-event-inner{
width:100%;
max-width:320px;
}

.header-social{
display:flex;
gap:30px;
justify-content:center;
margin-bottom:10px;
}

.header-social a{
font-size:26px;
}


.header-social a:hover{
opacity:.6;
}
}

.about-photo{
margin:30px 0;
}

.about-photo img{
width:100%;
max-width:420px;
border-radius:12px;
display:block;
margin:auto;
}
/* BOOKS */

.books-section{
background:#fff;
}

.book-item{

display:grid;
grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

margin-bottom:120px;
}

.book-item.reverse .book-image{
order:2;
}

.book-item.reverse .book-text{
order:1;
}

.book-image img{

width:100%;
max-width:360px;
height:auto;
display:block;
margin:auto;

border-radius:10px;

box-shadow:0 20px 60px rgba(0,0,0,.15);
}

.book-text h3{

font-size:30px;
margin-bottom:20px;

font-family:'Cormorant Garamond',serif;
}

.book-text p{
margin-bottom:15px;
max-width:500px;
}

.book-btn{
margin-top:10px;
display:inline-block;
}
@media(max-width:768px){

.book-item{
grid-template-columns:1fr;
gap:30px;
margin-bottom:70px;
}

.book-image{
text-align:center;
}

.book-image img{
max-width:260px;
}

.book-text{
text-align:center;
}

.nav{
flex-direction:column;
height:auto;
gap:10px;
padding:10px 0;
}

.logo img{
    margin-top: -40px;
height:130px;
width:auto;

}

.header-social{
order:2;
margin-top:-50px;

}
}
@media(max-width:768px){

.hero-icons{
visibility:hidden;
margin-top:120px;
}


.fab-menu{
display:none;
}

.fab-menu{

display:flex;

position:fixed;

right:15px;
bottom:110px;

flex-direction:column;
gap:16px;

z-index:200;
}

.fab-menu a{

width:50px;
height:50px;

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

border-radius:50%;

background:rgba(15, 12, 12, 0.619);
backdrop-filter:blur(10px);

color:white;

font-size:18px;

border:1px solid rgba(255,255,255,.2);

box-shadow:0 10px 25px rgba(0,0,0,.25);

text-decoration:none;
}
}
.card{
text-decoration:none;
color:inherit;
display:block;
}

.merch-btn{
display:flex;
justify-content:center;
margin-top:40px;
}

/* EVENTS */

.events-section{
background:#f5f2ef;
}

.events-list{
max-width:720px;
margin:60px auto 0;
display:flex;
flex-direction:column;
gap:22px;
}

/* EVENT CARD */

.event-row{

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

background:white;

padding:26px 32px;

border-radius:16px;

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

transition:.25s;
}

.event-row:hover{
transform:translateY(-4px);
}

/* LEFT SIDE */

.event-left{
display:flex;
align-items:center;
gap:30px;
}

/* DATE */

.event-date{
font-size:24px;
font-weight:700;
color:#6a30ff;
min-width:80px;
}

/* TEXT */

.event-info{
display:flex;
flex-direction:column;
}

.event-place{
font-size:18px;
font-weight:700;
}

.event-action{
font-size:15px;
opacity:.6;
}

/* BUTTON */

.event-btn{
background:#6a30ff;
color:white;

padding:10px 18px;

border-radius:8px;

text-decoration:none;

font-size:14px;

transition:.25s;
}

.event-btn:hover{
background:#4c21cc;
}

/* MOBILE */

@media(max-width:768px){

.event-row{
flex-direction:column;
align-items:flex-start;
gap:15px;
}

.event-left{
gap:20px;
}

.event-btn{
align-self:flex-start;
}

}

@media(max-width:768px){

.event-left{
gap:12px;
}

.event-date{
min-width:auto;
font-size:20px;
}

.event-row{
padding:20px;
}

.event-btn{
margin-top:6px;
}

section{
scroll-margin-top:80px;
}
}

/* SCROLL TOP */

.scroll-top{

position:fixed;

right:20px;
bottom:25px;

width:46px;
height:46px;

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

background:#6a30ff;
color:white;

border-radius:50%;

font-size:18px;

text-decoration:none;

box-shadow:0 10px 25px rgba(0,0,0,.25);

opacity:0;
pointer-events:none;

transition:.3s;

z-index:300;
}

.scroll-top.show{
opacity:1;
pointer-events:auto;
}

.scroll-top:hover{
transform:scale(1.08);
}

.footer{
border-top:1px solid #eee;
padding:40px 0;
font-size:14px;
}

.footer-inner{
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;
gap:10px;
}

.footer-right{
display:flex;
align-items:center;
gap:10px;
}

.footer-right a{
text-decoration:none;
color:#333;
}

.footer-made img{
height:18px;
vertical-align:middle;
margin-left:6px;
}

.footer-sep{
opacity:.4;
}

.footer-made a{
font-weight:600;
text-decoration:none;
color:#6a30ff;
}

.footer-made a:hover{
text-decoration:underline;
}

@media(max-width:768px){

.footer-inner{
flex-direction:column;
text-align:center;
gap:8px;
}

.footer-left{
width:100%;
text-align:center;
}

}
.event-btn.disabled{
background:#ddd;
color:#555;
cursor:default;
}

.book-placeholder{
background:white;
border-radius:10px;
padding:30px;
box-shadow:0 20px 60px rgba(0,0,0,.08);
text-align:center;
}

.book-placeholder img{
box-shadow:none;
object-fit:contain;
max-height:330px;
}


.merch-extra-links{
display:flex;
flex-wrap:wrap;
gap:14px;
justify-content:center;
margin-top:22px;
}

.merch-extra-btn{
font-size:15px;
padding:13px 18px;
}


.jewelry-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:28px;
max-width:980px;
margin:36px auto 0;
}

.jewelry-card{
background:white;
border-radius:14px;
padding:18px;
box-shadow:0 14px 35px rgba(0,0,0,.08);
text-align:center;
}

.jewelry-card img{
width:100%;
height:auto;
aspect-ratio:auto;
object-fit:contain;
border-radius:12px;
display:block;
margin-bottom:18px;
}

.jewelry-btn{
display:inline-block;
}

@media(max-width:768px){
.jewelry-grid{
grid-template-columns:1fr;
max-width:340px;
}
}

/* EVENTS – upravený přehled akcí */
.events-list{
max-width:760px;
margin:46px auto 0;
gap:16px;
}

.event-row{
display:flex;
align-items:center;
justify-content:space-between;
gap:22px;
padding:20px 24px;
border-radius:18px;
box-shadow:0 12px 32px rgba(0,0,0,.055);
}

.event-main{
display:flex;
align-items:center;
gap:24px;
min-width:0;
}

.event-date{
width:82px;
min-width:82px;
height:54px;
display:flex;
align-items:center;
justify-content:center;
background:#f5f2ef;
border-radius:14px;
font-size:21px;
line-height:1;
}

.event-info{
gap:3px;
min-width:0;
}

.event-place{
font-size:19px;
line-height:1.25;
}

.event-action{
font-size:14px;
line-height:1.35;
}

.event-btn{
white-space:nowrap;
border-radius:999px;
padding:11px 18px;
font-weight:700;
}

.events-more{
display:flex;
justify-content:center;
margin-top:18px;
}

.events-more-btn{
border:0;
cursor:pointer;
font-family:inherit;
}

.event-extra[hidden]{
display:none !important;
}

@media(max-width:768px){
.event-row{
flex-direction:column;
align-items:stretch;
gap:14px;
padding:18px;
}

.event-main{
gap:14px;
align-items:center;
}

.event-date{
width:72px;
min-width:72px;
height:48px;
font-size:19px;
}

.event-place{
font-size:18px;
}

.event-btn{
align-self:flex-start;
}
}



/* TERMS PAGE */
.terms-page{
background:#f7f3ef;
min-height:100vh;
padding-top:140px;
}

.terms-hero{
padding:70px 0 30px;
text-align:center;
}

.terms-hero h1{
font-family:'Cormorant Garamond',serif;
font-size:46px;
line-height:1.15;
margin-bottom:14px;
}

.terms-hero p{
max-width:720px;
margin:0 auto;
color:#555;
font-size:17px;
}

.terms-card{
max-width:900px;
margin:30px auto 80px;
background:white;
border-radius:22px;
padding:42px;
box-shadow:0 18px 55px rgba(0,0,0,.07);
}

.terms-card h2{
font-family:'Cormorant Garamond',serif;
font-size:30px;
margin:28px 0 10px;
}

.terms-card h2:first-child{
margin-top:0;
}

.terms-card p,
.terms-card li{
color:#333;
font-size:16px;
}

.terms-card ul{
margin:12px 0 0 22px;
}

.terms-note{
margin-top:30px;
padding:18px 20px;
border-radius:16px;
background:#f7f3ef;
font-weight:600;
}

.terms-back{
text-align:center;
margin-top:-45px;
margin-bottom:75px;
}

@media(max-width:768px){
.book-item .book-image,
.book-item.reverse .book-image{
order:1;
}

.book-item .book-text,
.book-item.reverse .book-text{
order:2;
}

.terms-page{
padding-top:120px;
}

.terms-hero{
padding:45px 0 20px;
}

.terms-hero h1{
font-size:34px;
}

.terms-card{
padding:28px 22px;
border-radius:18px;
margin-bottom:60px;
}

}


/* Mobile: u knih je obrázek vždy nad textem */
@media(max-width:768px){
  .book-item .book-image,
  .book-item.reverse .book-image{order:1;}
  .book-item .book-text,
  .book-item.reverse .book-text{order:2;}
}


/* EVENTS – moderní přehled */
.events-section{
position:relative;
overflow:hidden;
background:#f7f3ef;
color:#111;
padding:105px 0 115px;
}

.events-section::before{
display:none;
}

.events-shell{
position:relative;
z-index:1;
}

.events-heading{
max-width:760px;
margin:0 auto;
text-align:center;
}

.events-kicker{
display:inline-flex;
align-items:center;
gap:8px;
margin-bottom:18px;
color:#6a30ff;
font-size:14px;
font-weight:700;
}

.events-title{
color:#111;
font-family:'Cormorant Garamond',serif;
font-size:48px;
line-height:1.05;
margin-bottom:14px;
}

.events-copy{
max-width:560px;
margin:0 auto;
color:#5f5650;
font-size:17px;
}

.events-list{
max-width:860px;
margin:52px auto 0;
display:flex;
flex-direction:column;
gap:18px;
}

.event-row{
display:grid;
grid-template-columns:104px minmax(0, 1fr);
align-items:stretch;
gap:22px;
min-height:0;
padding:22px;
background:#fff;
color:#111;
border:1px solid #eadfd7;
border-radius:8px;
box-shadow:0 18px 45px rgba(57,42,31,.08);
transition:transform .25s, box-shadow .25s, border-color .25s;
}

.event-row:hover{
transform:translateY(-5px);
box-shadow:0 24px 55px rgba(57,42,31,.12);
border-color:rgba(106,48,255,.32);
}

.event-featured{
grid-template-columns:120px minmax(0, 1fr);
min-height:0;
padding:30px;
border-color:rgba(106,48,255,.28);
}

.events-section .event-date{
width:auto;
min-width:0;
height:auto;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:3px;
align-self:stretch;
padding:18px 12px;
background:#111;
color:#fff;
border-radius:8px;
}

.event-featured .event-date{
background:#6a30ff;
}

.event-day{
font-size:38px;
line-height:1;
font-weight:800;
}

.event-month{
font-size:14px;
line-height:1;
font-weight:800;
}

.event-content{
display:flex;
flex-direction:column;
justify-content:space-between;
gap:22px;
min-width:0;
}

.event-main{
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:18px;
min-width:0;
}

.event-info{
display:flex;
flex-direction:column;
gap:7px;
min-width:0;
}

.event-place{
margin:0;
font-size:23px;
line-height:1.15;
font-weight:800;
}

.event-featured .event-place{
font-size:31px;
}

.event-action{
color:#6d635c;
font-size:15px;
line-height:1.35;
font-weight:600;
}

.event-status{
flex:0 0 auto;
color:#6a30ff;
font-size:13px;
line-height:1.2;
font-weight:800;
}

.event-footer{
display:flex;
align-items:center;
justify-content:space-between;
gap:16px;
flex-wrap:wrap;
}

.event-meta,
.event-no-link{
display:inline-flex;
align-items:center;
gap:8px;
font-size:14px;
line-height:1.35;
}

.event-meta{
color:#6d635c;
}

.event-no-link{
color:#6a30ff;
font-weight:800;
}

.event-btn{
display:inline-flex;
align-items:center;
justify-content:center;
gap:8px;
white-space:nowrap;
background:#111;
color:#fff;
padding:11px 16px;
border-radius:6px;
text-decoration:none;
font-size:14px;
font-weight:800;
transition:background .25s, transform .25s;
}

.event-btn:hover{
background:#6a30ff;
transform:translateY(-2px);
}

.events-more{
display:flex;
justify-content:center;
margin-top:18px;
}

.events-more-btn{
border:0;
cursor:pointer;
font-family:inherit;
font-weight:800;
}

.event-extra[hidden]{
display:none !important;
}

.events-empty{
padding:28px;
background:#fff;
color:#111;
border-radius:8px;
text-align:center;
font-weight:700;
border:1px solid #eadfd7;
}

@media(max-width:900px){
.events-list{
max-width:720px;
}

.event-featured{
grid-template-columns:104px minmax(0, 1fr);
padding:22px;
}

.event-featured .event-place{
font-size:23px;
}
}

@media(max-width:640px){
.events-section{
padding:82px 0 90px;
}

.events-heading{
text-align:left;
}

.events-title{
font-size:38px;
}

.events-copy{
margin:0;
font-size:16px;
}

.events-list{
margin-top:34px;
gap:14px;
}

.event-row,
.event-featured{
grid-template-columns:1fr;
gap:16px;
min-height:0;
padding:18px;
}

.events-section .event-date{
flex-direction:row;
justify-content:flex-start;
align-self:auto;
padding:14px 16px;
}

.event-day{
font-size:30px;
}

.event-month{
font-size:13px;
}

.event-main,
.event-footer{
flex-direction:column;
align-items:flex-start;
}

.event-status{
order:-1;
}

.event-btn{
width:100%;
}
}
