@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Montserrat:wght@400;500;600&display=swap');
:root{--paper:#f7f3ec;--cream:#eee7dd;--ink:#403a33;--muted:#726a60;--line:#d5ccbf;--serif:'Cormorant Garamond',Georgia,serif;--sans:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid #6a4e37;outline-offset:6px}img{width:100%;height:100%;object-fit:cover;display:block}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05}em{font-weight:400}p{color:var(--muted)}.header{max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:28px 6%;border-bottom:1px solid var(--line);gap:24px}.brand{font-family:var(--serif);font-size:30px;line-height:1.2}.brand span{display:block;font-family:var(--sans);font-size:10px;letter-spacing:2.2px;margin-top:8px}.header nav{display:flex;gap:30px;font-size:14px}.header nav a{padding:7px 0;position:relative}.header nav a:hover:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--ink)}.menu-toggle{display:none}.hero{max-width:1440px;margin:auto;position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:55px 8% 62px;gap:5%}.eyebrow{font-size:12px;letter-spacing:2.3px;font-weight:500;margin-bottom:26px}.hero h1{font-size:clamp(65px,7.2vw,112px);letter-spacing:-3px;margin-bottom:23px}.hero-role{font-family:var(--serif);font-size:28px;color:var(--ink);margin-bottom:21px}.intro{font-size:16px;margin-bottom:29px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;background:var(--ink);color:var(--paper);font-size:13px;padding:14px 29px;letter-spacing:.8px;border:1px solid var(--ink);transition:background .2s}.button:hover{background:#625447}.hero-note{display:block;font-family:var(--serif);font-style:italic;font-size:20px;margin-top:30px;color:var(--muted)}.hero-photo{height:620px;position:relative}.hero-photo img{object-position:50% 40%}.hero-photo figcaption{position:absolute;bottom:22px;left:22px;right:22px;color:white;font-size:10px;letter-spacing:2.5px;text-shadow:0 1px 6px #000}.vertical-note{position:absolute;right:2.8%;writing-mode:vertical-rl;font-size:10px;letter-spacing:2.4px}.ribbon{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;gap:9%;padding:22px 5%;font-family:var(--serif);font-size:23px;font-style:italic}.section{max-width:1280px;margin:auto;padding:100px 7%}.about{display:grid;grid-template-columns:.82fr 1fr;gap:11%;align-items:center}.about-photo{height:455px;position:relative;margin:0 20px}.about-photo:before{content:'';position:absolute;inset:20px -20px -20px 20px;border:1px solid var(--line);z-index:-1}.about-photo img{object-position:50% 27%}.about-photo figcaption{position:absolute;bottom:-37px;left:0;font-family:var(--serif);font-size:22px;font-style:italic}.about h2{font-size:57px;margin-bottom:25px}.about-copy p:not(.eyebrow){font-size:15px}.text-link{display:inline-block;border-bottom:1px solid var(--ink);font-size:14px;padding-bottom:4px;margin-top:9px}.signature{font-family:var(--serif);font-style:italic;font-size:31px;margin-top:25px}.metrics{background:var(--cream);display:grid;grid-template-columns:repeat(3,1fr);text-align:center;padding:42px max(7%,calc((100vw - 1100px)/2));gap:12px}.metrics>div+div{border-left:1px solid var(--line)}.metrics strong{font-family:var(--serif);font-size:49px;font-weight:400;display:block;line-height:1.2}.metrics span{font-size:12px;letter-spacing:1.2px;text-transform:uppercase}.metrics p{grid-column:1/-1;font-size:12px;margin:12px 0 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:46px}.section-heading h2{font-size:60px;margin-bottom:0}.section-heading .eyebrow{margin-bottom:17px}.section-heading>p{font-size:14px;margin:0 0 4px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.services-grid article{border-top:1px solid var(--line);padding-top:24px}.number{font-family:var(--serif);font-size:23px;color:#8b7d6b}.services h3{font-size:32px;margin:25px 0 19px}.services article p{font-size:15px}.service-tags{font-size:10px;letter-spacing:1.5px;display:block;margin-top:27px}.portfolio{padding-top:24px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.work-art{aspect-ratio:3/4;background:#e9e1d6;border:1px solid #d9cfc1;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;position:relative;padding:24px}.work-card:nth-child(2) .work-art{background:#dfd5c8}.work-card:nth-child(3) .work-art{background:#ede6dc}.work-art .work-index{position:absolute;top:18px;left:20px;font-family:var(--serif);font-size:22px}.work-art .work-category{font-family:var(--serif);font-size:clamp(32px,3.2vw,48px);font-style:italic}.work-art small{font-size:10px;letter-spacing:2px;margin-top:14px}.work-art img{position:absolute;inset:0}.work-card h3{font-size:26px;margin:20px 0 6px}.work-card p{font-size:12px;letter-spacing:.6px}.contact{background:var(--cream);text-align:center;padding:90px 24px}.contact h2{font-size:clamp(48px,6vw,80px);margin-bottom:27px}.contact>p:not(.eyebrow){font-size:15px}.contact .button{margin-top:17px}.contact-placeholder{opacity:.65}.contact-note{font-size:12px!important;margin-top:17px;margin-bottom:0}.socials{display:flex;justify-content:center;gap:25px;margin-top:20px}.socials a{border-bottom:1px solid var(--ink);font-size:14px}footer{padding:36px 7%;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand{font-family:var(--serif);font-size:27px}footer p,footer>span{font-size:10px;letter-spacing:1px;margin:0}
@media(min-width:1500px){.hero{padding-top:70px;padding-bottom:70px}}@media(max-width:900px){.header{padding:22px 5%}.brand{font-size:26px}.header nav{gap:19px}.hero{padding:40px 6% 50px;gap:5%}.hero-photo{height:510px}.hero h1{font-size:72px;letter-spacing:-2px}.hero-role{font-size:24px}.vertical-note{display:none}.section{padding:75px 6%}.about{gap:7%;grid-template-columns:1fr 1fr}.about-photo{height:410px;margin-left:0}.about h2{font-size:45px}.section-heading h2{font-size:49px}.services-grid{gap:23px}.services h3{font-size:29px}.portfolio{padding-top:20px}footer p{display:none}}
@media(max-width:640px){html{scroll-padding-top:20px}.header{flex-wrap:wrap;gap:16px;padding:20px 6%}.brand{font-size:25px}.brand span{font-size:8px;letter-spacing:1.8px}.menu-toggle{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:transparent;padding:9px 12px;font-size:13px;color:var(--ink)}.header nav{display:none;width:100%;flex-direction:column;gap:4px;padding:12px 0 4px;border-top:1px solid var(--line)}.header nav.open{display:flex}.header nav a{padding:10px 0}.hero{grid-template-columns:1fr;padding:39px 6% 38px;gap:33px}.eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:20px}.hero h1{font-size:clamp(60px,15vw,92px);letter-spacing:-2px;margin-bottom:17px}.hero-role{font-size:25px;margin-bottom:17px}.intro{font-size:15px}.hero-note{font-size:18px;margin-top:22px}.hero-photo{height:auto;aspect-ratio:4/5}.ribbon{gap:0;justify-content:space-around;padding:19px 12px;font-size:16px}.ribbon span:last-child{display:none}.section{padding:65px 7%}.about{grid-template-columns:1fr;gap:60px}.about-photo{height:auto;aspect-ratio:4/5;margin-right:20px}.about h2{font-size:48px}.about-copy p:not(.eyebrow){font-size:16px}.metrics{padding:32px 5%;gap:5px}.metrics strong{font-size:38px}.metrics span{font-size:10px;letter-spacing:.6px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:47px}.section-heading>p{margin-top:20px;font-size:14px}.services-grid{grid-template-columns:1fr;gap:32px}.services article{padding-top:18px}.services h3{font-size:34px;margin-top:15px}.services article p{font-size:16px}.service-tags{margin-top:18px}.portfolio{padding-top:0}.work-grid{grid-template-columns:1fr;gap:30px}.work-art{aspect-ratio:4/4.4}.work-art .work-category{font-size:48px}.work-card h3{font-size:29px}.contact{padding:65px 7%}.contact h2{font-size:49px}.contact br{display:none}.contact h2 br{display:block}footer{flex-direction:column;text-align:center;padding:30px 6%;gap:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Home imersiva: cenário estendido de ponta a ponta. */
.header{position:absolute;inset:0 0 auto;z-index:10;max-width:none;color:#fff8ef;border-bottom:1px solid #fff8ef40;background:linear-gradient(#13202970,transparent)}
.header nav a:hover:after{background:#fff8ef}
.hero{isolation:isolate;max-width:none;min-height:100vh;min-height:100svh;display:flex;align-items:center;padding:150px 8% 75px;gap:0;color:#fff8ef;background:#253a43}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;z-index:-2;aspect-ratio:auto}
.hero-photo picture{display:block;width:100%;height:100%}
.hero-photo img{object-position:72% center}
.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#172421b3 0%,#17242173 33%,#1724210a 65%),linear-gradient(0deg,#14201b40,transparent 35%);pointer-events:none}
.hero-copy{width:48%;max-width:620px;text-shadow:0 2px 20px #10202040}
.hero h1{font-size:clamp(70px,8.5vw,140px);letter-spacing:-2px}
.hero p,.hero-role,.hero-note{color:#fff8ef}
.hero .button{background:#f7f3ec;color:#403a33;border-color:#f7f3ec;text-shadow:none}
.hero .button:hover{background:#e9dfd0}
.hero-photo figcaption{left:auto;right:5%;bottom:27px;font-size:11px}
.vertical-note{right:3%;color:#fff8ef}
@media(max-width:900px){.hero{padding:145px 6% 70px}.hero-copy{width:53%}.hero h1{font-size:clamp(66px,9vw,95px)}.hero-photo img{object-position:70% center}.hero-note{max-width:260px}.hero:after{background:linear-gradient(90deg,#172421b3,#17242160 42%,transparent 80%)}}
@media(max-width:640px){.header{padding:20px 6%;background:linear-gradient(#16232f90,transparent)}.menu-toggle{color:#fff8ef;border-color:#fff8ef80}.header nav.open{background:#283932f5;padding:14px 20px;border:1px solid #fff8ef40}.hero{min-height:max(780px,100svh);padding:350px 7% 40px;align-items:flex-end}.hero-copy{width:100%;max-width:none}.hero h1{font-size:clamp(58px,16vw,85px);margin-bottom:13px;letter-spacing:-1.5px}.hero .eyebrow{margin-bottom:15px}.hero-role{font-size:24px;margin-bottom:13px}.hero .intro{font-size:15px;margin-bottom:20px}.hero-note{display:none}.hero-photo img{object-position:50% 25%}.hero:after{background:linear-gradient(0deg,#101d17ed 0%,#101d17a6 33%,#101d1720 64%,#101d1720 100%)}.hero-photo figcaption{display:none}}
/* O centro está na própria fotografia; sem ampliação nem deslocamento. */
@media(min-width:641px){
.hero-photo{inset:0;width:100%;height:100%;aspect-ratio:auto}
.hero-photo img{object-position:50% 50%}
.hero-copy{width:35%;max-width:540px}
.hero h1{font-size:clamp(58px,7vw,110px)}
.hero:after{background:linear-gradient(90deg,#172421b8 0%,#17242170 24%,#17242105 47%,transparent 76%),linear-gradient(0deg,#14201b40,transparent 35%)}
}
@media(min-width:641px) and (max-width:900px){.hero{padding-left:5%}.hero-copy{width:36%}.hero h1{font-size:clamp(44px,7vw,63px)}.hero-role{font-size:21px}.hero-note{font-size:17px}}
.language-switcher{display:flex;gap:5px;margin-left:auto;align-items:center;flex-shrink:0}.language-switcher button{cursor:pointer;color:#fff8ef;background:transparent;border:1px solid #fff8ef60;padding:8px 11px;font-size:12px;min-height:38px}.language-switcher button[aria-pressed="true"]{background:#fff8ef;color:#403a33;border-color:#fff8ef}.language-switcher button:hover{border-color:#fff8ef}.header nav{order:2}.menu-toggle{order:1}
@media(max-width:640px){.header{gap:10px}.brand{font-size:22px}.brand span{font-size:7px}.language-switcher{gap:3px}.language-switcher button{padding:6px 7px;min-height:34px}.menu-toggle{padding:6px 8px;gap:6px}.header nav{order:3}}
@media(max-width:380px){.header{padding-left:4%;padding-right:4%}.brand{font-size:20px}.brand span{letter-spacing:1px}.menu-toggle{font-size:12px}.language-switcher button{font-size:11px}}
/* Tipografia inspirada na referência Creator Portfolio. */
:root{--serif:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--sans:Montserrat,Arial,sans-serif}
body{font-family:var(--sans)}
h1,h2,h3{font-family:var(--serif);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;line-height:.98}
h1 em,h2 em,h3 em{font-style:normal;font-weight:inherit}
.hero h1{font-weight:800;letter-spacing:-.02em;line-height:.95;font-size:clamp(64px,8vw,128px)}
.brand,.footer-brand{font-family:var(--sans);text-transform:uppercase;font-weight:400;letter-spacing:.06em;font-size:20px;line-height:1.35}
.brand span{font-size:9px;letter-spacing:1.7px}
.hero-role{font-family:var(--sans);font-size:20px;font-weight:400;line-height:1.5}
.hero-note,.ribbon,.about-photo figcaption,.signature{font-family:var(--sans);font-style:normal}
.hero-note{font-size:15px;line-height:1.6}
.ribbon{font-size:16px;text-transform:uppercase;letter-spacing:.07em}
.about-photo figcaption{font-size:15px;letter-spacing:.03em}
.signature{font-size:20px;letter-spacing:.04em}
.metrics strong{font-family:var(--serif);font-weight:700}
.number,.work-art .work-index{font-family:var(--serif);font-weight:600}
.work-art .work-category{font-family:var(--serif);font-weight:700;font-style:normal;text-transform:uppercase}
.services h3{line-height:1.1}
.section-heading h2,.about h2{line-height:1.05}
.contact h2{line-height:1.02}
@media(max-width:900px){.brand{font-size:17px}.hero h1{font-size:clamp(55px,8vw,82px)}.hero-role{font-size:17px}.hero-note{font-size:13px}.ribbon{font-size:13px}}
@media(max-width:640px){.brand{font-size:15px;letter-spacing:.03em}.brand span{font-size:7px;letter-spacing:1px}.hero h1{font-size:clamp(62px,17vw,96px)}.hero-role{font-size:18px}.ribbon{font-size:12px;letter-spacing:.04em}.about h2{font-size:48px}.section-heading h2{font-size:48px}.services h3{font-size:36px}.contact h2{font-size:50px}.footer-brand{font-size:18px}}
@media(max-width:380px){.brand{font-size:13px}.brand span{font-size:6px;letter-spacing:.7px}}
.about{grid-template-columns:1.08fr .92fr;gap:7%;align-items:center}.about-copy{grid-column:1;grid-row:1}.about-photo{grid-column:2;grid-row:1;height:auto;aspect-ratio:4/5;margin:0}.about h2{margin-bottom:30px}.about-block{margin-bottom:23px;padding-left:21px;border-left:1px solid var(--line)}.about-block h3{font-family:var(--sans);font-weight:600;font-size:15px;line-height:1.4;letter-spacing:.03em;margin:0 0 10px}.about-block p{font-size:15px;line-height:1.65;margin:0}.about .signature{margin-top:18px}
@media(max-width:900px){.about{gap:5%;grid-template-columns:1.15fr .85fr}.about-block p{font-size:14px}.about-photo{aspect-ratio:3/5}}
@media(max-width:640px){.about{grid-template-columns:1fr;gap:40px}.about-copy{grid-column:1;grid-row:1}.about-photo{grid-column:1;grid-row:2;aspect-ratio:4/5;margin-right:20px}.about-block p{font-size:16px}.about-block h3{font-size:16px}}
/* Cenário prolongado à esquerda; a pessoa foi deslocada na imagem, sem zoom. */
@media(min-width:641px){.hero-photo{inset:0;width:100%;height:100%}.hero-photo img{object-position:65% center}.hero-copy{width:38%;max-width:560px}.hero h1{font-size:clamp(58px,7vw,110px)}}
@media(min-width:641px) and (max-width:900px){.hero-copy{width:40%}.hero h1{font-size:clamp(44px,7vw,63px)}}
/* Fotografia fornecida pela utilizadora, sem nova geração. */
@media(min-width:641px){.hero-photo img{object-position:72% center}}
.about-photo figcaption{left:32px;bottom:-54px;line-height:1.5}
@media(max-width:640px){.about-photo{margin-bottom:25px}.about-photo figcaption{left:28px;bottom:-54px}}

.about-photo img{object-position:50% 35%}
.services-grid{row-gap:45px}.service-tags:empty{display:none}.services h3{font-size:30px;line-height:1.1;overflow-wrap:break-word}
@media(min-width:641px) and (max-width:900px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.services-grid{grid-template-columns:1fr;row-gap:32px}.services h3{font-size:34px}}

.metrics p:empty{display:none}.metrics div span{display:block;padding:0 8px}
.metrics{grid-template-columns:repeat(4,minmax(0,1fr));padding-left:6%;padding-right:6%}.metrics strong{font-size:clamp(35px,4vw,49px)}.metrics div span{line-height:1.6}
@media(max-width:640px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 0;padding:35px 5%}.metrics>div:nth-child(3){border-left:0}.metrics strong{font-size:38px}.metrics div span{font-size:10px}}

.work-brand-link{display:inline-block;font-size:13px;border-bottom:1px solid var(--line);padding-bottom:3px}.work-brand-link:hover{border-color:var(--ink)}.work-card>a .work-art{transition:border-color .2s}.work-card>a:hover .work-art{border-color:var(--ink)}
.work-art.instagram-embed{display:block;padding:0;aspect-ratio:auto;height:610px;background:white;overflow:hidden}.instagram-embed iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:640px){.work-art.instagram-embed{height:650px}}

.instagram-direct-link{display:block;width:fit-content;margin:12px 0;font-size:14px;text-decoration:underline;text-underline-offset:4px}

.work-brand-link{max-width:100%;overflow-wrap:anywhere}
/* Quatro trabalhos lado a lado em desktop. */
.portfolio{max-width:1600px;padding-left:5%;padding-right:5%}
.work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.work-card{min-width:0}.work-card h3{font-size:25px;overflow-wrap:break-word}
@media(min-width:641px) and (max-width:1050px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}}
@media(max-width:640px){.portfolio{padding-left:7%;padding-right:7%}.work-grid{grid-template-columns:minmax(0,1fr);gap:30px}.work-card h3{font-size:29px}}
.work-art.local-video{display:block;padding:0;aspect-ratio:auto;height:610px;background:#151515;overflow:hidden}.local-video video{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:640px){.work-art.local-video{height:auto;aspect-ratio:9/16}}
/* Menu sempre visível e contactos reais. */
html{scroll-padding-top:var(--header-height,110px)}
.header{position:fixed;inset:0 0 auto;z-index:100;background:#223039eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 2px 12px #00000015}
.socials{flex-wrap:wrap;gap:15px 25px}.contact-note{overflow-wrap:anywhere}
@media(max-width:640px){.header{position:fixed;background:#223039f5}.header nav.open{max-height:60svh;overflow-y:auto}}
/* Barra fixa transparente, sem fundo, sombra ou desfocagem. */
.header{background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
@media(max-width:640px){.header{background:transparent}}
/* Contraste do menu transparente sobre as secções claras. */
.header.over-light{color:var(--ink);border-bottom-color:var(--line)}
.header.over-light nav a:hover:after{background:var(--ink)}
.header.over-light .menu-toggle{color:var(--ink);border-color:var(--line)}
.header.over-light .language-switcher button{color:var(--ink);border-color:var(--line)}
.header.over-light .language-switcher button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.header.over-light .language-switcher button:hover{border-color:var(--ink)}
@media(max-width:640px){.header.over-light nav.open{background:var(--paper);border-color:var(--line)}}
