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

html{
scroll-behavior:smooth;
}

body{
font-family:'Inter',sans-serif;
background:#f4efe7;
color:#1f2d24;
}

.hero{
position:relative;
overflow:hidden;
height:100vh;
background:
linear-gradient(
rgba(0,0,0,.45),
rgba(0,0,0,.45)
),
url('../images/hero.jpg');

background-size:cover;
background-position:center;
color:white;
}
.hero-tags{
font-size:12px;
letter-spacing:4px;
text-transform:uppercase;
margin-bottom:25px;
opacity:.85;
}

.navbar{
display:flex;
justify-content:space-between;
align-items:flex-start;

padding:20px 50px;

position:fixed;
top:0;
left:0;
width:100%;
z-index:1000;

background:linear-gradient(
to bottom,
rgba(0,0,0,.65),
rgba(0,0,0,0)
);
}
.navbar.scrolled{

background:rgba(16,37,28,.92);

backdrop-filter:blur(12px);

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

.navbar ul{
display:flex;
gap:35px;
list-style:none;
}

.navbar a{
text-decoration:none;
color:white;
font-size:14px;
letter-spacing:1px;
text-transform:uppercase;
  position:relative;
  
}
.navbar a::after{
content:"";
position:absolute;
left:0;
bottom:-6px;
width:0;
height:1px;
background:white;
transition:.3s;
}

.navbar a:hover::after{
width:100%;
}

.hero-content{
height:80vh;
display:flex;
flex-direction:column;
justify-content:center;
padding-left:100px;
max-width:700px;
}

.hero-content h1{
font-family:'Cormorant Garamond',serif;
font-size:78px;
font-weight:400;
line-height:1.05;
margin-bottom:25px;
}

.hero-content p{
font-size:18px;
max-width:500px;
line-height:1.8;
margin-bottom:40px;
}

.btn{
display:inline-block;
padding:15px 35px;
background:#38493e;
color:white;
text-decoration:none;
width:fit-content;
  transition:all .35s ease;
}
.btn:hover{
background:#4a5f51;
transform:translateY(-2px);
}

.manifesto,
.categories,
.journal,
.rituals,
.newsletter{
padding:120px 10%;
}

.manifesto{
text-align:center;
}

.manifesto h2,
.categories h2,
.journal h2,
.rituals h2,
.newsletter h2{
font-family:'Cormorant Garamond',serif;
font-size:52px;
font-weight:400;
margin-bottom:30px;
}
.manifesto p{
font-size:18px;
line-height:1.9;
}

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:25px;
margin-top:50px;
}
.section-intro{
max-width:700px;
margin:0 auto 60px;
text-align:center;
line-height:1.8;
color:#666;
}
.card{
background:white;
text-align:center;
border:1px solid rgba(0,0,0,.05);
overflow:hidden;
padding-bottom:35px;

transition:
transform .45s ease,
box-shadow .45s ease;
}
.card:hover{
transform:translateY(-12px);
box-shadow:0 30px 60px rgba(0,0,0,.12);
}

.card img{
width:100%;
height:320px;
object-fit:cover;
display:block;
margin-bottom:25px;
transition:transform .8s ease;
}

.card:hover img{
transform:scale(1.08);
}
.card img{
filter:brightness(.96);
}
.card h3{
font-family:'Cormorant Garamond',serif;
font-size:24px;
font-weight:400;
margin-bottom:15px;
padding:0 25px;
}

.card p{
padding:0 25px;
margin-bottom:20px;
line-height:1.7;
font-size:15px;
color:#666;
}

.card span{
display:block;
letter-spacing:2px;
font-size:12px;
text-transform:uppercase;
color:#7c7c7c;
}
.journal-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
margin-top:50px;
}

.journal-card{
background:#10251c;
overflow:hidden;
transition:all .4s ease;
}

.journal-card img{
width:100%;
height:280px;
object-fit:cover;
display:block;
}
.read-time{
color:rgba(255,255,255,.65);
font-size:12px;
letter-spacing:2px;
text-transform:uppercase;
padding:25px 30px 0;
}

.journal-card{
overflow:hidden;
cursor:pointer;
transition:all .4s ease;
}

.journal-card img{
transition:transform .8s ease;
}

.journal-card:hover img{
transform:scale(1.05);
}
.journal-card h3{
padding:10px 30px 30px;
color:white;
font-family:'Cormorant Garamond',serif;
font-size:32px;
font-weight:400;
line-height:1.2;
}

.journal-card:hover{
transform:translateY(-6px);
}
.categories h2,
.journal h2,
.rituals h2{
text-align:center;
margin-bottom:60px;
}

.newsletter{
padding:140px 10%;
text-align:center;
background:#e7dfd3;
}

.newsletter h2{
font-family:'Cormorant Garamond',serif;
font-size:64px;
font-weight:400;
margin-bottom:30px;
}

.newsletter-copy{
max-width:700px;
margin:0 auto 50px;
line-height:1.9;
font-size:18px;
color:#555;
}

.newsletter-form{
display:flex;
justify-content:center;
align-items:center;
gap:12px;
margin-bottom:25px;
}

.newsletter-form input{

width:420px;

padding:18px 22px;

background:white;

border:none;

outline:none;

font-size:15px;

font-family:'Inter',sans-serif;
}

.newsletter-form button{

padding:18px 32px;

background:#1f2d24;

color:white;

border:none;

cursor:pointer;

font-size:14px;

letter-spacing:1px;

text-transform:uppercase;

transition:.35s;
}

.newsletter-form button:hover{

background:#38493e;

transform:translateY(-2px);
}

.newsletter-note{

font-size:13px;

letter-spacing:1px;

text-transform:uppercase;

color:#8a8a8a;
}
.newsletter{
position:relative;
overflow:hidden;
}
.newsletter::before{

content:"✦";

position:absolute;

left:50%;

top:50px;

transform:translateX(-50%);

font-size:24px;

opacity:.25;

color:#38493e;
}


footer{
background:#1f2d24;
color:white;
text-align:center;
padding:50px;
line-height:2;
}

@media(max-width:768px){

.navbar{
padding:15px 20px;
flex-direction:column;
align-items:center;
gap:15px;
}

.navbar.scrolled{
background:rgba(16,37,28,.95);
backdrop-filter:blur(12px);
padding:15px 20px;
}

.logo img{
height:70px;
}

.btn{
padding:14px 24px;
font-size:15px;
}

.navbar ul{
flex-wrap:wrap;
justify-content:center;
gap:18px;
}

.navbar a{
font-size:12px;
letter-spacing:1.5px;
}

.hero{
height:100vh;
}

.hero-content{
padding:25px;
padding-top:140px;
max-width:100%;
}

.hero-tags{
font-size:10px;
letter-spacing:2px;
}

.hero-content h1{
font-size:36px;
line-height:1.15;
}

.hero-content p{
font-size:16px;
line-height:1.7;
max-width:100%;
}

.manifesto,
.categories,
.journal,
.rituals,
.newsletter{
padding:80px 7%;
}

.manifesto h2,
.categories h2,
.journal h2,
.rituals h2,
.newsletter h2{
font-size:42px;
line-height:1.15;
}
  .manifesto,
.categories,
.journal,
.rituals,
.newsletter{
padding:80px 7%;
}

.manifesto p{
font-size:18px;
line-height:1.8;
}

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

.journal-grid{
grid-template-columns:1fr;
gap:30px;
}

.card img{
height:240px;
}

.card:hover,
.journal-card:hover{
transform:none;
box-shadow:none;
}

.journal-card img{
height:220px;
}

.newsletter-copy{
font-size:16px;
}

.newsletter-form{
flex-direction:column;
max-width:100%;
}

.newsletter-form input{
width:100%;
}

.newsletter-form button{
width:100%;
}

.logo img{
height:70px;
}

.navbar{
padding:15px 20px;
}

.navbar ul{
gap:18px;
}

.navbar a{
font-size:12px;
letter-spacing:1.5px;
}

.hero-content{
padding:30px;
}

.hero-content h1{
font-size:36px;
line-height:1.15;
}

.btn{
padding:14px 24px;
font-size:15px;
}

.manifesto,
.categories,
.journal,
.rituals,
.newsletter{
padding:80px 7%;
}

.manifesto h2,
.categories h2,
.journal h2,
.rituals h2,
.newsletter h2{
font-size:42px;
line-height:1.15;
}

.manifesto p{
font-size:18px;
line-height:1.9;
}

.newsletter-form input,
.newsletter-form button{
width:100%;
}

.card:hover,
.journal-card:hover{
transform:none;
box-shadow:none;
}
  
.footer-logo{
height:55px;
}



}
.reveal{

opacity:0;

transform:translateY(60px);

transition:
opacity 1s ease,
transform 1s ease;

}

.reveal.active{

opacity:1;

transform:translateY(0);

}

/* FIRELIES */

.fireflies{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
overflow:hidden;
pointer-events:none;
}

.fireflies span{
position:absolute;
width:5px;
height:5px;
background:rgba(255,220,140,.65);
border-radius:50%;

box-shadow:
0 0 6px rgba(255,220,140,.4),
0 0 12px rgba(255,220,140,.25);

opacity:.4;

animation:float 12s infinite ease-in-out;
}

.fireflies span:nth-child(1){left:10%;top:20%;animation-delay:0s;}
.fireflies span:nth-child(2){left:25%;top:60%;animation-delay:2s;}
.fireflies span:nth-child(3){left:35%;top:30%;animation-delay:4s;}
.fireflies span:nth-child(4){left:45%;top:75%;animation-delay:1s;}
.fireflies span:nth-child(5){left:55%;top:40%;animation-delay:5s;}
.fireflies span:nth-child(6){left:65%;top:25%;animation-delay:3s;}
.fireflies span:nth-child(7){left:75%;top:70%;animation-delay:7s;}
.fireflies span:nth-child(8){left:82%;top:35%;animation-delay:6s;}
.fireflies span:nth-child(9){left:15%;top:80%;animation-delay:8s;}
.fireflies span:nth-child(10){left:50%;top:15%;animation-delay:9s;}
.fireflies span:nth-child(11){left:70%;top:50%;animation-delay:10s;}
.fireflies span:nth-child(12){left:90%;top:60%;animation-delay:11s;}

.fireflies span:nth-child(3n){
width:3px;
height:3px;
}

.fireflies span:nth-child(4n){
width:6px;
height:6px;
}

.fireflies span:nth-child(odd){
animation-duration:10s;
}

.fireflies span:nth-child(even){
animation-duration:16s;
}

@keyframes float {

0%{
transform:translate(0px,0px);
opacity:0;
}

20%{
opacity:.25;
}

50%{
transform:translate(-8px,-15px);
opacity:.55;
}

80%{
opacity:.25;
}

100%{
transform:translate(12px,-30px);
opacity:0;
}

}
.mist{
position:absolute;
top:0;
left:-50%;
width:200%;
height:100%;

background:
radial-gradient(
circle,
rgba(255,255,255,.05) 0%,
rgba(255,255,255,0) 70%
);

pointer-events:none;

animation:movingMist 40s linear infinite;
}
@keyframes movingMist{

0%{
transform:translateX(0);
}

100%{
transform:translateX(20%);
}
}
.section-intro{
max-width:700px;
margin:0 auto 60px;
text-align:center;
line-height:1.8;
color:#666;
font-size:17px;
}
.footer-logo{
height:60px;
margin-bottom:25px;
}

footer p{
margin-bottom:12px;
opacity:.9;
}
}
