/* Camadas, transparências e movimento — mantém conteúdo e navegação. */
:root{--ease-float:cubic-bezier(.22,.75,.25,1);--glass-line:rgba(255,255,255,.65)}
body{background:radial-gradient(ellipse at 5% 5%,#d6c5a838,transparent 30%),radial-gradient(ellipse at 96% 26%,#9aab9325,transparent 35%),#f5f1e9}
header{top:14px;margin:14px auto 0;width:calc(100% - 48px);max-width:1380px;padding:12px 24px;border:1px solid var(--glass-line);border-radius:999px;background:#f7f3ebc9;backdrop-filter:blur(22px) saturate(125%);-webkit-backdrop-filter:blur(22px) saturate(125%);box-shadow:0 8px 32px #40322608,inset 0 1px 0 #fff9}
.monogram{border-color:#40322645;border-radius:15px;background:#ffffff50;transition:transform .4s var(--ease-float),box-shadow .4s}
nav{gap:12px}nav a{border:0;padding:9px 14px;border-radius:30px;transition:background .3s,transform .4s var(--ease-float),box-shadow .3s}
nav a.active{background:#69745b13;box-shadow:inset 0 0 0 1px #69745b18}
.hero{position:relative;isolation:isolate;min-height:calc(100svh - 96px)}
.hero:before{content:'';position:absolute;inset:5% 0 0 45%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse,#c9ad7150 0%,#bdc7ae25 40%,transparent 68%);filter:blur(30px)}
.portrait{border:1px solid #806c4b45;border-radius:48% 48% 35px 35px;box-shadow:0 25px 70px #40322616,0 0 0 9px #ffffff40}
.hero .portrait-wrap .badge{background:#faf6ecd9;border:1px solid #fff9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:23px;box-shadow:0 12px 28px #49382014,inset 0 1px 0 #fff8;animation:badge-drift 7s ease-in-out infinite}
.hero .badge-top{animation-delay:-1.5s!important}.hero .badge-bottom{animation-delay:-3s!important}.hero .badge-projects{animation-delay:-4.5s!important}.hero .badge-work{animation-delay:-.5s!important}.hero .badge-location{animation-delay:-5.5s!important}
.pill{background:linear-gradient(135deg,#7c886b,#647353);border:1px solid #ffffff50;box-shadow:0 8px 20px #52633c22,inset 0 1px 0 #ffffff40;transition:transform .4s var(--ease-float),box-shadow .4s,background .4s}
.about,.contact{margin:18px 24px;border:1px solid #ffffff45;border-radius:48px;box-shadow:0 20px 50px #28382c13;position:relative;isolation:isolate}
.about{background:radial-gradient(ellipse at 100% 0%,#6f9b9e3b,transparent 65%),linear-gradient(140deg,#21465e,#1c384e)}
.contact{background:radial-gradient(ellipse at 0 100%,#a6af6833,transparent 65%),linear-gradient(135deg,#3b4934,#2d3a2c)}
.projects{background:linear-gradient(160deg,#eae2d280,#f5f1e933);border-radius:48px;margin:12px 16px}
.journey{background:linear-gradient(145deg,#e8e0cd65,#f5f1e930);border-radius:48px;margin:12px 16px}
.project-group{padding:12px 8px 20px;gap:28px}
.project-card{background:linear-gradient(145deg,#fffdf8c9,#fffdf680);border:1px solid #fffc;border-radius:30px;padding:32px;box-shadow:0 8px 24px #59462d08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .45s var(--ease-float),box-shadow .45s,border-color .45s}
.project-card:before{display:none}
.history{border:1px solid #ffffffb0;border-radius:24px;background:#fffcf49e;box-shadow:0 5px 18px #59462d06;transition:box-shadow .4s,background .4s}
.tags span{background:#69745b16;color:#4f5c40;border:1px solid #69745b20;padding:5px 10px}
.text-button{border:1px solid #69745b25;background:#fff9;padding:9px 16px;border-radius:999px;text-decoration:none;transition:transform .35s var(--ease-float),box-shadow .35s,background .35s}
.document-buttons{gap:10px}
.arrow{background:#ffffff45;border-color:#4032262a;box-shadow:0 5px 14px #40322607;transition:transform .35s var(--ease-float),background .35s,box-shadow .35s}
.about .arrow{background:#ffffff0e;border-color:#ffffff50}
.carousel-controls{border-color:#40322618}.about .carousel-controls{border-color:#ffffff20}
.contact-mark{border-radius:34px;border-color:#ffffff65;background:#ffffff09;box-shadow:inset 0 1px 0 #ffffff25,0 12px 25px #0000000a}
.contact-links a{background:#f5f1e9e6;box-shadow:0 8px 22px #10180d25,inset 0 1px 0 white;transition:transform .4s var(--ease-float),box-shadow .4s}
footer{background:transparent;color:var(--ink);padding:22px 6% 32px}
.footer-quote{color:#40322666}
dialog{border-radius:28px;border:1px solid #ffffff90;box-shadow:0 25px 90px #0005}
dialog::backdrop{background:#182520c4;backdrop-filter:blur(12px)}
.reader-toolbar,.reader-footer{background:#f8f4eceb}
.close,.zoom{transition:transform .3s var(--ease-float),background .3s;border-radius:50%}
.instagram-post blockquote.instagram-media{border-radius:26px!important;box-shadow:0 10px 30px #0002}
@media(hover:hover) and (pointer:fine){
nav a:hover{background:#ffffffa0;transform:translateY(-2px);box-shadow:0 6px 15px #40322608}
.monogram:hover{transform:rotate(-5deg) translateY(-2px);box-shadow:0 6px 14px #40322615}
.pill:hover{transform:translateY(-4px);box-shadow:0 15px 25px #52633c30}
.project-card:hover,.project-card:focus-within{transform:translateY(-7px);box-shadow:0 20px 38px #59462d14;border-color:#fff}
.text-button:hover{transform:translateY(-3px);background:white;box-shadow:0 7px 16px #40322612}
.arrow:hover:not(:disabled){transform:translateY(-3px) scale(1.06);background:#ffffff90;box-shadow:0 8px 18px #40322613}
.about .arrow:hover:not(:disabled){background:#ffffff25}
.contact-links a:hover{transform:translateY(-7px) rotate(-5deg);box-shadow:0 17px 26px #10180d35}
.close:hover,.zoom:hover{transform:translateY(-2px);background:#69745b12}
}
.pill:active,.text-button:active,.arrow:active:not(:disabled),.contact-links a:active{transform:translateY(1px) scale(.97)}
@keyframes badge-drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:1000px){header{padding:10px 16px}nav{gap:2px}nav a{padding:8px 10px}.about,.contact{margin:14px 16px;border-radius:36px}}
@media(max-width:640px){
header{top:8px;margin-top:8px;width:calc(100% - 20px);padding:9px 12px;gap:12px;border-radius:25px}
nav{gap:4px}nav a{padding:8px 10px}.hero{padding-top:52px}.hero:before{inset:40% 0 0}
.about,.contact{margin:12px 10px;padding:45px 6%;border-radius:30px}
.projects,.journey{margin:8px 4px;border-radius:30px}
.project-group{padding:10px 3px 16px;gap:20px}.project-card{padding:25px;border-radius:26px}
.hero .portrait-wrap .badge{border-radius:20px}.portrait{border-radius:48% 48% 24px 24px}
.history{padding:22px;border-radius:22px}.contact-mark{border-radius:20px}footer{padding-bottom:28px}
}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.pill:hover,.project-card:hover,.project-card:focus-within,.text-button:hover,.arrow:hover,.contact-links a:hover,nav a:hover,.monogram:hover,.close:hover,.zoom:hover{transform:none!important}
}
/* Entrada suave ao alcançar cada conteúdo. */
@keyframes content-rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
.reveal-pending{opacity:0}
.reveal-entering{animation:content-rise .85s var(--ease-float) both;animation-delay:var(--reveal-delay,0ms)}
}

/* Identidade NB + girassol e seleção de idiomas. */
header{gap:12px}
header .monogram{width:60px;height:60px;padding:0;flex-shrink:0;display:grid;place-items:center}
.monogram img{display:block;width:58px;height:58px}
header nav{min-width:0;overflow-x:auto;scrollbar-width:none;white-space:nowrap;margin-left:auto}
#site-language{flex-shrink:0;width:130px;padding:10px 8px;border:1px solid #69745b30;border-radius:22px;background:#ffffff70;color:var(--ink);font:12px Arial,Helvetica,sans-serif;cursor:pointer}
#site-language:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.contact-mark{display:grid;place-items:center;padding:0!important}
.contact-mark img{width:100%;height:100%;display:block}
.hero h1{overflow-wrap:normal}
@media(max-width:1100px){header nav{gap:2px}header nav a{padding:8px 9px;font-size:12px}#site-language{width:114px}}
@media(max-width:640px){header{gap:7px}header .monogram{width:42px;height:44px;border-radius:12px}.monogram img{width:42px;height:42px}header nav{flex:1}header nav a{padding:8px;font-size:12px}#site-language{width:61px;padding:8px 2px;font-size:11px}.hero .badge strong,.hero .badge small{overflow-wrap:normal}}
/* Logo original fornecida pela autora, com cores preservadas. */
.monogram,.contact-mark{overflow:hidden}
.contact-mark{background:transparent;border:0;box-shadow:none}.monogram{background:transparent;border:0;box-shadow:none}
