/*
Theme Name: Andrea Cencini Photography
Theme URI: https://www.andreacencini.com/
Author: Andrea Cencini
Description: Portfolio fotografico editoriale bilingue, responsive e cinematografico.
Version: 1.0.3
Text Domain: andrea-cencini
WPVibe: yes
*/
:root{--dark:#0d0d0c;--cream:#eceae4;--ink:#151515;--muted:#817e78;--ease:cubic-bezier(.22,1,.36,1);--serif:'Italiana',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:75px}body{padding:0!important;margin:0;background:var(--dark);color:#edeae4;font-family:var(--sans);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}body.admin-bar{padding-top:0!important}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:5px}.skip-link{position:fixed;left:18px;top:-100px;background:#fff;color:#000;padding:15px;z-index:500}.skip-link:focus{top:18px}.content-wrap{width:min(100% - 11.5vw,1560px);margin:auto}.serif{font-family:var(--serif);font-weight:400;letter-spacing:-.047em}.section-index,.heading-meta,.hero-meta{font-size:10px;letter-spacing:.17em;text-transform:uppercase;font-weight:500}.section-index{display:inline-block}.inverse{color:#b9b7b1}.site-header{z-index:99;position:absolute;top:0;left:0;right:0;color:#fff;transition:background .4s,box-shadow .4s}.site-header.stuck{position:fixed;background:rgba(14,14,14,.93);backdrop-filter:blur(24px);box-shadow:0 1px 0 rgba(255,255,255,.11)}.admin-bar .site-header.stuck{top:32px}.nav-inner{height:93px;padding:0 5.75vw;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;flex-direction:column;gap:4px;white-space:nowrap;letter-spacing:.145em}.brand-main{font-weight:400;font-size:18px;line-height:1}.brand-sub{font-size:7px;letter-spacing:.41em;opacity:.8}.desktop-nav{display:flex;align-items:center;gap:clamp(20px,3vw,58px);margin-left:auto}.desktop-nav a{font-size:9px;font-weight:600;letter-spacing:.16em;transition:opacity .3s}.desktop-nav a:hover{opacity:.56}.nav-right{display:flex;align-items:center;gap:30px}.langs{display:flex;gap:9px;align-items:center;font-size:10px;letter-spacing:.08em}.langs span{opacity:.38}.lang-btn{background:none;color:#fff;border:0;padding:7px 0;opacity:.45;font-size:10px}.lang-btn.active{opacity:1;font-weight:700}.mobile-toggle{width:34px;height:34px;background:none;border:0;padding:8px 1px;display:none;flex-direction:column;justify-content:center;gap:6px}.mobile-toggle span{width:26px;height:1px;background:#fff;transition:transform .3s}.mobile-toggle.is-open span:first-child{transform:translateY(3.5px) rotate(45deg)}.mobile-toggle.is-open span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{position:absolute;left:0;right:0;top:100%;padding:16px 6vw 32px;background:#10100f;display:flex;flex-direction:column;box-shadow:0 35px 40px #0008}.mobile-menu[hidden]{display:none}.mobile-menu a{padding:15px 0;border-bottom:1px solid #35332f;font:35px var(--serif)}
.hero{height:100svh;min-height:690px;max-height:1250px;position:relative;background:#171513;isolation:isolate;overflow:hidden}.hero-media,.hero-overlay{position:absolute;inset:0}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center 36%;filter:brightness(.67) saturate(.70);animation:herozoom 1.9s var(--ease) both}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.59),rgba(0,0,0,.12) 70%),linear-gradient(0deg,rgba(0,0,0,.77),transparent 45%,rgba(0,0,0,.2))}@keyframes herozoom{from{transform:scale(1.06);opacity:.6}to{transform:scale(1);opacity:1}}.hero-inner{height:100%;position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;padding:143px 5.75vw 35px}.hero-meta,.hero-meta>span:first-child{display:flex;align-items:center;gap:15px}.meta-line{width:24px;height:1px;background:#fff}.hero-meta>span:last-child{color:#ded9d2}.hero-title-wrap{margin:auto 0 0;max-width:1160px;padding-bottom:9vh}.hero-kicker{font-size:11px;letter-spacing:.19em;margin:0 0 33px}.hero-kicker span{opacity:.5}.hero h1{font:400 clamp(77px,11.6vw,196px)/.92 var(--serif);letter-spacing:-.043em;margin:0;color:#f4f1eb}.hero h1 em,.vision h2 em,.section-heading h2 em,.projects h2 em,.about h2 em,.contact-big em{font-style:normal;color:#a5a19b}.hero-end{display:flex;align-items:end;justify-content:space-between;gap:70px;margin-top:38px;max-width:930px}.hero-end p{color:#dfdcd6;max-width:340px;font-size:13px;line-height:1.75;margin:0}.outline-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-width:180px;border-bottom:1px solid currentColor;padding:12px 0 13px;font-size:10px;letter-spacing:.17em;font-weight:600;white-space:nowrap}.outline-link b{font-size:21px;font-weight:300}.outline-link.light{color:#fff}.outline-link.dark{color:var(--ink)}.hero-bottom{display:flex;align-items:end;justify-content:space-between;font-size:9px;letter-spacing:.15em}.hero-bottom>a{display:flex;align-items:center;flex-direction:column;gap:12px}.scroll-line{height:46px;width:1px;background:#f2f2ee;display:block;transform-origin:top;animation:scrollpulse 1.6s ease-in-out infinite alternate}@keyframes scrollpulse{to{transform:scaleY(.5);opacity:.5}}.appear{animation:fadeup 1.2s var(--ease) both;animation-delay:.3s}.appear-delay{animation-delay:.48s}.appear-delay2{animation-delay:.7s}@keyframes fadeup{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}
.vision{background:var(--cream);color:var(--ink);padding:clamp(125px,13vw,218px) 0}.vision-layout{display:grid;grid-template-columns:1fr 3.35fr;gap:5%}.vision-right{min-width:0}.vision-statement{font-size:clamp(55px,6.6vw,114px);line-height:1.02;margin:0 0 clamp(60px,6vw,110px)}.fine-rule{height:1px;background:currentColor;opacity:.22}.vision-desc{display:grid;grid-template-columns:1fr 2.6fr;gap:30px;margin-top:29px}.asterisk{font-size:31px;line-height:1}.vision-desc p{max-width:480px;font-size:14px;line-height:1.9;color:#64615c;margin:0}.portfolio{background:var(--cream);color:#171717;padding:45px 0 clamp(130px,12vw,200px)}.heading-meta{display:flex;align-items:center;justify-content:space-between;gap:25px}.heading-meta span:last-child{color:#898781}.heading-meta.inverse span:last-child{color:#99958d}.section-heading{margin-bottom:58px}.section-heading h2{font-size:clamp(90px,10vw,170px);line-height:.98;margin:79px 0 0}.works-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:490px 390px 350px;gap:20px}.work-card{position:relative;isolation:isolate;padding:0;border:0;text-align:left;background:#383634;color:#fff;overflow:hidden;min-width:0}.work-card>img{width:100%;height:100%;object-fit:cover;transition:transform 1.3s var(--ease),filter .7s;filter:brightness(.9)}.work-card:hover>img{transform:scale(1.045);filter:brightness(1)}.card-fashion{grid-area:1/1/3/6}.card-fashion>img{object-position:center 33%}.card-auto{grid-area:1/6/2/13}.card-glamour{grid-area:2/6/3/13}.card-still{grid-area:3/1/4/8}.card-editorial{grid-area:3/8/4/13}.work-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.74),transparent 52%)}.work-caption{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:baseline;gap:19px;padding:30px}.work-index{font-size:10px;letter-spacing:.17em;color:#ddd}.work-name{font:400 clamp(35px,3vw,55px)/1 var(--serif)}.work-arrow{font-size:27px;line-height:1;margin-left:auto;transition:transform .3s}.work-card:hover .work-arrow{transform:translate(4px,-4px)}.work-end{display:flex;justify-content:space-between;gap:20px;color:#828079;font-size:9px;letter-spacing:.15em;margin-top:25px}.marquee-band{background:#111;color:#d6d2c9;overflow:hidden;padding:27px 0}.marquee-run{width:max-content;white-space:nowrap;font:400 clamp(40px,5vw,86px) var(--serif);letter-spacing:-.03em;opacity:.65;animation:marquee 30s linear infinite}.marquee-run i{font-style:normal;font-size:.45em;margin:0 28px}@keyframes marquee{to{transform:translateX(-40%)}}
.projects{background:#111;color:#f1ede7;padding:clamp(120px,12vw,190px) 0}.projects-title{font-size:clamp(92px,11vw,181px);line-height:.89;margin:82px 0 69px}.project-cover{width:100%;height:clamp(530px,52vw,740px);padding:0;border:0;background:#252321;color:#fff;position:relative;text-align:left;overflow:hidden}.project-cover>img{width:100%;height:100%;object-fit:cover;transition:transform 1.3s var(--ease)}.project-cover:hover>img{transform:scale(1.045)}.project-cover-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82),transparent 65%)}.project-content{position:absolute;bottom:clamp(28px,5vw,76px);left:clamp(28px,5vw,76px);right:clamp(28px,5vw,76px);display:flex;flex-direction:column;gap:29px}.project-mini{font-size:10px;letter-spacing:.19em}.project-content strong{font-size:clamp(65px,8.4vw,132px);font-weight:400;line-height:.9}.project-content em{font-style:normal;color:#dbd5cb}.project-link{display:flex;align-items:center;gap:40px;font-size:10px;letter-spacing:.17em;font-weight:500}.project-link b{font-size:23px;font-weight:300}.projects-note{color:#aaa6a0;max-width:420px;font-size:13px;line-height:1.9;margin:28px 0 0}
.about{background:var(--cream);color:var(--ink);padding:clamp(130px,13vw,220px) 0}.about-layout{display:grid;grid-template-columns:1.17fr .83fr;gap:clamp(65px,9vw,175px)}.about h2{font-size:clamp(70px,7.1vw,127px);line-height:.92;margin:83px 0 58px}.about-photo{width:75%;max-width:485px;aspect-ratio:.92;background:#242424;overflow:hidden}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;filter:grayscale(1) contrast(1.1)}.about-right{padding-top:45%;font-size:14px;line-height:1.9;color:#65625b}.about-right p{margin:0 0 25px}.about-right .about-intro{font-size:clamp(23px,2.3vw,35px);line-height:1.4;margin:32px 0 31px;color:#191919}.about-stats{display:flex;gap:42px;border-top:1px solid #b4b2aa;margin-top:48px;padding-top:28px}.about-stats>div{display:flex;flex-direction:column;gap:9px}.about-stats strong{font:400 30px var(--serif);color:var(--ink)}.about-stats span{font-size:10px;letter-spacing:.14em}.about .outline-link{margin-top:62px}
.contact{background:#111;color:#f0ede7;padding:clamp(120px,12vw,215px) 0 120px}.contact-small{font-size:clamp(16px,2vw,27px);color:#aba7a0;margin:130px 0 32px}.contact-big{font-size:clamp(93px,12vw,200px);line-height:.9;display:block;white-space:nowrap}.contact-big b{font:400 .68em var(--sans);vertical-align:top;display:inline-block;transition:transform .4s}.contact-big:hover b{transform:translate(10px,-10px)}.contact-line{border-top:1px solid #5a5854;padding-top:28px;margin-top:115px;display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.1em}.contact-line a:hover{text-decoration:underline}.site-footer{background:#111;border-top:1px solid #393733;color:#aaa7a1;padding:48px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-inner a:not(.footer-brand),.footer-inner>span{font-size:10px;letter-spacing:.12em}.footer-brand{color:#eee;font-size:15px;letter-spacing:.16em}.footer-brand small{font-size:8px;letter-spacing:.2em;display:block;margin-top:4px}.lightbox{position:fixed;inset:0;z-index:200;background:rgba(5,5,5,.97);padding:5vh 8vw;display:grid;place-items:center}.lightbox[hidden]{display:none}.lightbox-body{max-height:90vh;display:flex;align-items:center;flex-direction:column;gap:12px}.lightbox-body img{max-height:78vh;max-width:84vw;width:auto;object-fit:contain}.lightbox-body p{font-size:10px;letter-spacing:.2em;text-transform:uppercase}.lightbox-close{position:absolute;right:35px;top:20px;background:none;border:0;font:42px Arial;color:#fff}.fallback-page{padding:150px 8vw;min-height:90vh;background:var(--cream);color:#111}.fallback-page h1{font:75px var(--serif)}.fallback-page p{font-size:18px}.fallback-page .mini-brand{letter-spacing:.15em;font-size:16px}.fallback-page small{display:block;font-size:9px}.page-content{max-width:760px;line-height:1.8}.reveal{transition:opacity 1s var(--ease),transform 1s var(--ease)}.js-ready .reveal:not(.visible){opacity:0;transform:translateY(33px)}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1100px){.nav-inner{height:80px}.desktop-nav{gap:21px}.works-grid{grid-template-rows:370px 325px 270px;gap:15px}.about-layout{gap:7vw}.about-right{padding-top:54%}}
@media(max-width:750px){html{scroll-padding-top:65px}.content-wrap{width:calc(100% - 44px)}.nav-inner{height:72px;padding:0 22px}.brand-main{font-size:15px}.brand-sub{font-size:6px}.desktop-nav{display:none}.mobile-toggle{display:flex}.nav-right{gap:23px}.hero{min-height:660px;max-height:950px}.hero-media{left:8%}.hero-image{object-position:65% center;filter:brightness(.58) saturate(.65)}.hero-inner{padding:111px 23px 27px}.hero-meta{font-size:8px}.hero-meta>span:last-child{display:none}.hero-title-wrap{padding-bottom:8vh}.hero-kicker{font-size:9px;margin-bottom:22px}.hero h1{font-size:clamp(66px,12vw,100px)}.hero-end{display:block;margin-top:28px}.hero-end p{font-size:12px;max-width:320px}.hero-end a{margin-top:14px}.hero-bottom{font-size:8px}.hero-bottom>span:first-child{display:none}.hero-bottom>a{flex-direction:row;align-items:center;gap:13px}.scroll-line{height:1px;width:38px}.hero-bottom>span:last-child{margin-left:auto}.vision{padding:110px 0}.vision-layout{display:block}.vision-layout .section-index{margin-bottom:42px}.vision-statement{font-size:clamp(53px,9vw,79px);margin-bottom:54px}.vision-desc{grid-template-columns:.25fr 1fr}.vision-desc p{font-size:13px}.portfolio{padding:30px 0 110px}.heading-meta{font-size:8px}.section-heading{margin-bottom:40px}.section-heading h2{font-size:clamp(83px,12vw,110px);margin-top:47px}.works-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:510px 230px 290px 240px;gap:12px}.card-fashion{grid-area:1/1/2/3}.card-auto{grid-area:2/1/3/3}.card-glamour{grid-area:3/1/4/3}.card-still{grid-area:4/1/5/2}.card-editorial{grid-area:4/2/5/3}.work-caption{padding:14px;gap:8px}.work-name{font-size:29px}.card-still .work-name,.card-editorial .work-name{font-size:22px}.work-index{font-size:8px}.work-arrow{font-size:21px}.work-end span:last-child{display:none}.marquee-band{padding:20px 0}.marquee-run{font-size:42px}.projects{padding:110px 0}.projects-title{font-size:clamp(72px,11.4vw,113px);margin:54px 0 44px}.project-cover{height:470px}.project-cover>img{object-position:60% center}.project-content{bottom:28px;left:24px;right:24px;gap:22px}.project-content strong{font-size:clamp(57px,10vw,87px)}.project-mini,.project-link{font-size:9px}.about{padding:105px 0}.about-layout{display:block}.about h2{font-size:clamp(62px,11vw,100px);margin:50px 0 48px}.about-photo{width:72%;aspect-ratio:1}.about-right{padding-top:59px}.about-right .about-intro{font-size:25px}.about-stats strong{font-size:28px}.contact{padding:110px 0 95px}.contact-small{margin:120px 0 26px;font-size:16px}.contact-big{font-size:clamp(66px,12vw,110px)}.contact-line{margin-top:105px;flex-wrap:wrap;font-size:10px}.contact-line>span{width:100%}.footer-inner{flex-wrap:wrap}.footer-inner>span{order:3;width:100%}}
@media(max-width:390px){.brand-main{font-size:13px}.hero h1{font-size:61px}.heading-meta>span:last-child{display:none}.projects-title{font-size:67px}.contact-big{font-size:60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-ready .reveal:not(.visible){opacity:1;transform:none}}
