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

:root{
color-scheme:light dark;
}

/* ================= BASE ================= */

html,body{
background:#ffeb3b;
}

body{
font-family:"Georgia","Times New Roman",serif;
color:#111;
line-height:1.7;
max-width:1200px;
margin:0 auto;
scroll-behavior:smooth;
overflow-x:hidden;
}

/* ================= HEADER ================= */

header{
min-height:100vh;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
padding:20px;
}

.perfil{
width:150px;
height:150px;
object-fit:cover;
border-radius:50%;
border:4px solid #111;
margin-bottom:20px;
transition:transform .3s;
}

.perfil:hover{
transform:scale(1.05);
}

header h1{
font-size:2.8rem;
margin-bottom:10px;
}

.subtitle{
font-size:1rem;
color:#333;
margin-bottom:20px;
}

/* ================= NAV ================= */

nav{
margin-bottom:50px;
}

nav a{
text-decoration:none;
color:#111;
margin:0 15px;
font-weight:bold;
position:relative;
}

nav a::after{
content:'';
display:block;
height:2px;
width:0;
background:#111;
transition:.3s;
position:absolute;
bottom:-5px;
left:0;
}

nav a:hover::after{
width:100%;
}

/* ================= SECTIONS ================= */

section{
min-height:100vh;
padding:40px 20px;
}

section h2{
font-size:3rem;
margin-bottom:20px;
}

section p{
font-size:1.3rem;
line-height:1.8;
}

/* ================= TRABALHOS ================= */

.experiences{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:30px;
margin-top:40px;
}

.experience-item{
background:#fff;
padding:20px;
border-radius:14px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
text-align:center;
transition:.3s;
}

.experience-item:hover{
transform:translateY(-5px);
}

.experience-item strong{
font-size:18px;
}

.experience-item p{
font-size:15px;
}

/* ================= VIDEO ================= */

.video-thumb{
position:relative;
cursor:pointer;
height:200px;
overflow:hidden;
}

.video-thumb img{
width:100%;
height:100%;
object-fit:cover;
border-radius:10px;
transition:transform .4s;
}

.video-thumb:hover img{
transform:scale(1.08);
}

/* PLAY BUTTON */

.play-button{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
width:40px;
height:40px;
background:rgba(0,0,0,.65);
color:#fff;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:18px;
transition:.25s;
}

.video-thumb:hover .play-button{
transform:translate(-50%,-50%) scale(1.15);
}

/* ================= MODAL VIDEO ================= */

#video-modal{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.9);
justify-content:center;
align-items:center;
z-index:1000;
}

.video-container{
position:relative;
width:80%;
max-width:900px;
}

.video-container iframe{
width:100%;
height:500px;
border-radius:10px;
}

#close-video{
position:absolute;
top:-40px;
right:0;
color:#fff;
font-size:30px;
cursor:pointer;
}

/* ================= BOTÃO ================= */

.botao{
display:inline-block;
background:#111;
color:#fff;
padding:12px 25px;
border-radius:5px;
text-decoration:none;
font-weight:bold;
margin-top:15px;
transition:.3s;
}

/* ================= LINKS ================= */

#links-uteis{
background:#fff9c4;
text-align:center;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
}

.footer-links{
display:flex;
flex-wrap:wrap;
gap:20px;
justify-content:center;
}

.footer-links a{
text-decoration:none;
color:#000;
font-weight:bold;
padding:10px 20px;
border:2px solid #000;
border-radius:5px;
transition:.3s;
}

.footer-links a:hover{
background:#000;
color:#fff;
}

/* ================= CONTATO ================= */

#contato{
text-align:center;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
}

/* ================= FOOTER ================= */

footer{
text-align:center;
padding:30px 0;
font-size:.9rem;
color:#333;
border-top:1px solid #ccc;
}

/* ================= RESPONSIVO ================= */

@media (max-width:768px){

header h1{
font-size:2.2rem;
}

section{
min-height:auto;
}

}

/* ================= DARK MODE ================= */

@media (prefers-color-scheme:dark){

html,body{
background:#0a0a0a;
}

body{
color:#f5f5f5;
}

h1,h2{
color:#ffeb3b;
}

.subtitle{
color:#bbb;
}

nav a{
color:#ffeb3b;
}

nav a::after{
background:#ffeb3b;
}

#links-uteis{
background:#111;
}

.experience-item{
background:#1c1c1c;
box-shadow:0 10px 25px rgba(0,0,0,.8);
}

.botao{
background:#ffeb3b;
color:#000;
}

.footer-links a{
color:#ffeb3b;
border:2px solid #ffeb3b;
}

.footer-links a:hover{
background:#ffeb3b;
color:#000;
}

footer{
color:#888;
border-top:1px solid #222;
}

}
