*{margin:0;padding:0;box-sizing:border-box}
.forecast{display:grid;grid-template-columns:repeat(7,1fr);gap:.75rem}
.forecast-day{
background:rgba(255,255,255,.15);
padding:.75rem;border-radius:1rem;text-align:center
}
.marine{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.marine-box{background:#e0f2fe;padding:1.25rem;border-radius:1rem;text-align:center}


/* =========================
FORMS
========================= */
.form{
max-width:420px;margin:auto
}
.form input{
width:100%;padding:.9rem 1.25rem;
border-radius:999px;border:1px solid var(--border);
margin-bottom:1rem
}
.form input:focus{outline:none;border-color:var(--blue)}
.form button{
width:100%;padding:1rem;border-radius:999px;
background:var(--blue);color:white;font-weight:600
}


/* =========================
REVIEWS
========================= */
.review-stars{color:var(--gold)}
.review-card{padding:1.5rem}
.review-author{font-weight:600}


/* =========================
ACCOUNT
========================= */
.dashboard{display:grid;grid-template-columns:1fr 2fr;gap:2rem}
.profile-box{padding:2rem}


/* =========================
FOOTER
========================= */
footer{
background:white;border-top:1px solid var(--border);
padding:3rem 0;text-align:center;color:var(--muted)
}


/* =========================
ANIMATIONS
========================= */
.fade-in{animation:fade .6s ease forwards}
@keyframes fade{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}


/* =========================
SCROLLBAR
========================= */
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-thumb{background:var(--blue);border-radius:999px}


/* =========================
RESPONSIVE
========================= */
@media(max-width:1024px){
h1{font-size:2.75rem}
.hero{min-height:85vh}
}
@media(max-width:768px){
.grid{grid-template-columns:1fr}
.forecast{grid-template-columns:repeat(4,1fr)}
.marine{grid-template-columns:1fr}
.dashboard{grid-template-columns:1fr}
}
@media(max-width:480px){
h1{font-size:2.25rem}
h2{font-size:1.75rem}
}