:root{

--pearl-white:#FAF6F3;
--rose-dust:#F3DBD9;
--rose-deep:#C4A39B;
--warm-beige:#F0E6DC;
--soft-taupe:#C4AFA5;
--deep-taupe:#6B5A52;
--espresso:#4A3730;

}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'DM Sans',sans-serif;

color:var(--deep-taupe);

background:var(--pearl-white);

line-height:1.8;

overflow-x:hidden;

}

/* ---------------- */
/* NAVBAR */
/* ---------------- */

.navbar{

position:fixed;

top:0;
left:0;

width:100%;

padding:24px 7%;

display:flex;
justify-content:space-between;
align-items:center;

background:rgba(250,246,243,.82);

backdrop-filter:blur(18px);

z-index:1000;

transition:.4s;

}

.nav-logo{

text-decoration:none;

color:var(--deep-taupe);

font-family:'Libre Baskerville',serif;

font-weight:700;

font-size:1.15rem;

}

.nav-links{

display:flex;
gap:30px;

}

.nav-links a{

text-decoration:none;

color:var(--deep-taupe);

font-size:.92rem;

transition:.3s;

}

.nav-links a:hover{

opacity:.6;

}

/* ---------------- */
/* LANGUAGE */
/* ---------------- */

.language-switcher{

display:flex;

align-items:center;

gap:10px;

font-family:'Libre Baskerville',serif;

font-size:.95rem;

position:relative;

}

.lang-link{

position:relative;

cursor:pointer;

opacity:.35;

transition:.35s ease;

}

.lang-link::after{

content:'';

position:absolute;

left:0;
bottom:-4px;

width:0;

height:1px;

background:var(--deep-taupe);

transition:.35s ease;

}

.lang-link.active::after{

width:100%;

}

.lang-link:hover{

opacity:.8;

}

.lang-link.active{

opacity:1;

}

.lang-separator{

opacity:.25;

}

.lang-link{

cursor:pointer;

opacity:.45;

transition:.3s;

}

.lang-link:hover{

opacity:1;

}

.lang-link.active{

opacity:1;

}

.lang-separator{

opacity:.35;

}

/* ---------------- */
/* HERO */
/* ---------------- */

.hero{

min-height:100vh;

background:var(--rose-dust);

display:flex;
flex-direction:column;

justify-content:center;
align-items:center;

text-align:center;

padding:140px 20px 100px;

}

.hero-logo{

font-family:'Libre Baskerville',serif;

font-weight:700;

font-size:clamp(4rem,8vw,7rem);

color:var(--deep-taupe);

margin-bottom:20px;

}

.hero-tagline{

font-family:'Libre Baskerville',serif;

font-weight:400;

font-size:1.4rem;

color:var(--deep-taupe);

margin-bottom:30px;

}

.hero-description{

max-width:620px;

font-size:1.1rem;

color:var(--deep-taupe);

margin-bottom:45px;

opacity:.85;

}

/* ---------------- */
/* BUTTON */
/* ---------------- */

.hero-button{

display:inline-block;

padding:18px 36px;

background:var(--espresso);

color:white;

text-decoration:none;

border-radius:999px;

font-size:1rem;

transition:.35s;

box-shadow:
0 10px 30px rgba(74,55,48,.12);

}

.hero-button:hover{

transform:translateY(-2px);

}

/* ---------------- */
/* PHONE */
/* ---------------- */

.phone-wrapper{

margin-top:80px;

animation:float 6s ease-in-out infinite;

}

.phone{

width:320px;
height:640px;

background:#111;

padding:10px;

border-radius:45px;

box-shadow:
0 30px 70px rgba(74,55,48,.18);

}

.screen{

height:100%;

background:var(--pearl-white);

border-radius:35px;

padding:24px;

}

.welcome span{

font-size:.85rem;

opacity:.7;

}

.welcome h3{

font-family:'Libre Baskerville',serif;

margin-top:5px;

}

.energy-card,
.focus-card{

background:var(--rose-dust);

border-radius:20px;

padding:20px;

margin-top:20px;

display:flex;
justify-content:space-between;

}

.mini-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:12px;

margin-top:20px;

}

.mini-card{

background:var(--warm-beige);

padding:20px;

border-radius:18px;

}

/* ---------------- */
/* SECTIONS */
/* ---------------- */

.section{

padding:140px 8%;

}

.container{

max-width:1100px;

margin:auto;

}

.white{

background:var(--pearl-white);

}

.beige{

background:var(--warm-beige);

}

.rose{

background:var(--rose-dust);

}

.rose-deep{

background:var(--rose-deep);

}

.section h2{

font-family:'Libre Baskerville',serif;

font-size:clamp(2.4rem,5vw,4rem);

line-height:1.3;

margin-bottom:35px;

}

.section p{

max-width:760px;

margin-bottom:18px;

}

/* ---------------- */
/* FEATURES */
/* ---------------- */

.features{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:25px;

margin-top:50px;

}

.feature{

background:white;

padding:40px;

border-radius:28px;

box-shadow:
0 10px 40px rgba(74,55,48,.05);

}

.feature h3{

font-family:'Libre Baskerville',serif;

margin-bottom:15px;

}

/* ---------------- */
/* MANIFESTO */
/* ---------------- */

.manifesto{

text-align:center;

display:flex;

flex-direction:column;

align-items:center;

}

.manifesto h2{

margin-bottom:40px;

}

/* ---------------- */
/* WAITLIST */
/* ---------------- */

.waitlist{

text-align:center;

}

.waitlist form{

display:flex;

justify-content:center;

align-items:center;

gap:16px;

margin-top:35px;

flex-wrap:wrap;

}

.waitlist input{

width:420px;

max-width:90vw;

padding:20px 28px;

border:none;

border-radius:999px;

background:rgba(250,246,243,.95);

font-size:1rem;

font-family:'DM Sans',sans-serif;

color:var(--deep-taupe);

outline:none;

box-shadow:
0 10px 30px rgba(74,55,48,.08);

}

.waitlist button{

padding:20px 34px;

border:none;

border-radius:999px;

background:var(--espresso);

color:white;

font-size:1rem;

cursor:pointer;

font-family:'DM Sans',sans-serif;

transition:.35s;

box-shadow:
0 10px 30px rgba(74,55,48,.15);

}

.waitlist button:hover{

transform:translateY(-2px);

}

/* ---------------- */
/* FOOTER */
/* ---------------- */

footer{

background:var(--espresso);

color:white;

padding:70px 20px;

text-align:center;

}

.footer-logo{

font-family:'Libre Baskerville',serif;

font-size:2rem;

margin-bottom:15px;

}

/* ---------------- */
/* ANIMATIONS */
/* ---------------- */

.reveal{

opacity:0;

transform:translateY(40px);

transition:
opacity .8s ease,
transform .8s ease;

}

.reveal.active{

opacity:1;

transform:translateY(0);

}

@keyframes float{

0%{
transform:translateY(0);
}

50%{
transform:translateY(-12px);
}

100%{
transform:translateY(0);
}

}

/* ---------------- */
/* MOBILE */
/* ---------------- */

@media(max-width:950px){

.nav-links{

display:none;

}

.hero{

padding-top:180px;

}

.features{

grid-template-columns:1fr;

}

.phone{

width:280px;
height:560px;

}

}

.language-fade{

opacity:.2;

transition:
opacity .25s ease,
transform .25s ease;

}