:root{color-scheme:dark;--bg:#141413;--paper:#eee8de;--peach:#dbab88;--muted:#bcb7af;--line:#eee8de30;--panel:#1c1c1a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--paper);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button{background:transparent;border:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Syne,sans-serif;font-weight:500;letter-spacing:-.04em;line-height:1.17}h1{font-size:clamp(2rem,5.1vw,4.375rem);max-width:19ch;text-wrap:balance}h2{font-size:clamp(1.875rem,3.7vw,3.125rem);max-width:24ch;text-wrap:balance}h3{font-size:clamp(1.375rem,2.3vw,1.75rem);letter-spacing:-.025em;line-height:1.28}p{max-width:67ch;color:var(--muted)}p+p{margin-top:1.1em}a,button{min-height:44px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--peach);outline-offset:5px}[hidden]{display:none!important}main:focus{outline:none}.skip-link{position:absolute;top:-100px;left:16px;z-index:100;padding:12px 20px;background:var(--paper);color:var(--bg)}.skip-link:focus{top:10px}.main-header{position:relative;z-index:10;padding:24px 5%;border-bottom:1px solid #eee8de16;display:flex;align-items:center;justify-content:space-between;gap:28px}.signature{font:500 21px/1.25 Syne,sans-serif;letter-spacing:-.035em;display:block;white-space:nowrap}.signature span{display:block;color:var(--peach);font:400 12px/1.6 'DM Sans',sans-serif;letter-spacing:.28em;margin-top:5px}nav{display:flex;align-items:center;gap:28px;font-size:14px}nav>a,.nav-group>a{display:flex;align-items:center;padding-block:10px}nav a:hover{color:var(--peach)}.nav-group{position:relative;display:flex;align-items:center;gap:3px}.nav-toggle{width:36px;min-height:44px;color:var(--peach);font-size:21px}.nav-panel{position:absolute;top:100%;left:-15px;min-width:290px;padding:12px;background:#1c1c1a;border:1px solid var(--line);box-shadow:0 16px 38px #0005;display:none}.nav-group:hover .nav-panel,.nav-group:focus-within .nav-panel{display:block}.nav-panel a{display:flex;align-items:center;padding:9px 12px;line-height:1.5;min-height:44px}.nav-panel a:last-child{border-top:1px solid var(--line);margin-top:5px}.js .nav-panel{display:block}.mobile-toggle{display:none;font-size:14px}.hero{position:relative;isolation:isolate;overflow:hidden;padding:62px 5% 65px}.hero-content{position:relative;z-index:1;max-width:1160px}.hero p{margin-top:25px;max-width:61ch}.home-hero{min-height:485px;display:flex;align-items:center}.home-hero h1{max-width:23ch;font-size:clamp(1.7rem,5.1vw,3.875rem)}.home-hero h1::first-line{color:var(--paper)}.home-hero h1{color:var(--peach)}.home-hero p{max-width:58ch}.page-hero{padding-block:55px 62px}.page-hero h1{max-width:24ch}.page-hero p{font-size:18px}.light-rays{position:absolute;inset:-30% -10%;overflow:hidden;pointer-events:none;z-index:-1;opacity:.65;mask-image:linear-gradient(90deg,transparent,#000 50%,transparent)}.light-rays i{position:absolute;width:3px;height:120%;background:linear-gradient(transparent,#dbab8840,transparent);left:75%;top:-20%;transform:rotate(35deg);filter:blur(3px);animation:ray-enter 1.6s both}.light-rays i:nth-child(2){width:140px;left:70%;opacity:.25;filter:blur(26px);animation-delay:.15s}.light-rays i:nth-child(3){width:1px;left:85%;filter:blur(0);opacity:.65;animation-delay:.3s}@keyframes ray-enter{from{translate:70px -60px;opacity:0}to{translate:0 0}}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 27px;margin-top:28px}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--paper);color:var(--bg);padding:13px 24px;border-radius:30px;font-size:15px;line-height:1.5;transition:background .2s}.button:hover{background:var(--peach)}.text-link{display:inline-flex;align-items:center;padding-block:10px;border-bottom:1px solid #eee8de70;font-size:15px;line-height:1.5}.text-link:hover{color:var(--peach)}.section{padding:60px 5%;border-top:1px solid var(--line)}.section>h2{margin-bottom:30px}.eyebrow{display:block;font-size:14px;letter-spacing:.035em;margin-bottom:18px;color:var(--peach)}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:end;margin-bottom:32px}.section-head h2{max-width:20ch}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.content-grid article{min-width:0;padding-top:22px;border-top:1px solid var(--line)}.content-grid h3{margin-bottom:15px}.content-grid p{font-size:16px}.four .content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prose{max-width:790px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:35px}.split>h2{margin-bottom:0}.secondary h2{font-size:clamp(1.7rem,2.8vw,2.4rem)}.service-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 22px}.service-tile{grid-column:span 2;min-width:0}.service-tile:nth-child(n+4){grid-column:span 3}.service-title{position:relative;isolation:isolate;display:flex;align-items:end;padding:25px 22px;min-height:200px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(130deg,#27241f,#181817);overflow:hidden}.service-title::after{content:'';position:absolute;left:25px;right:25px;top:24px;height:1px;background:linear-gradient(90deg,var(--peach),transparent);opacity:.5;transition:transform .4s;transform-origin:left}.service-title:hover::after{transform:scaleX(.65)}.service-title h3{max-width:18ch;line-height:1.23;color:var(--paper)}.service-tile p{margin:17px 0 9px}.work-cards{display:grid;grid-template-columns:1fr 1fr;gap:26px}.work-card{min-width:0}.work-card h3{margin:19px 0 10px}.category{font-size:14px;color:var(--peach);line-height:1.6;margin-bottom:9px}.media-slot{aspect-ratio:16/9;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,#29251f,#191918 75%);border:1px solid #eee8de1a;overflow:hidden}.media-slot span{font:500 clamp(1.375rem,3.2vw,2.875rem)/1.2 Syne,sans-serif;color:#dbab8860;padding:25px;text-align:center;letter-spacing:-.03em}.media-slot::after{content:'';position:absolute;inset:16px;border:1px solid #eee8de0b;pointer-events:none}.work-card>a{display:block}.work-card:hover .media-slot{border-color:#dbab8870}.vertical{aspect-ratio:9/16;max-height:480px}.steps{counter-reset:steps}.steps article::before{counter-increment:steps;content:counter(steps,decimal-leading-zero);display:block;font-size:14px;letter-spacing:.05em;color:var(--peach);margin-bottom:23px}.faq-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:40px}.faq-list{min-width:0}.faq-item{border-bottom:1px solid var(--line)}.faq-item h3{font-family:'DM Sans',sans-serif;font-size:17px;font-weight:400;letter-spacing:0}.faq-button{display:flex;align-items:center;justify-content:space-between;text-align:left;gap:20px;padding:21px 0;width:100%;line-height:1.5;min-height:66px}.faq-button span{font-size:23px;color:var(--peach);flex-shrink:0;transition:transform .2s}.faq-button[aria-expanded=true] span{transform:rotate(45deg)}.faq-answer{padding:0 0 24px}.complementary{background:linear-gradient(145deg,#211f1b,var(--bg) 70%)}.contact-section>p{margin-bottom:35px}.project-form{max-width:880px;display:grid;gap:27px;margin-top:32px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-field{min-width:0}.form-field label{display:block;margin-bottom:8px;font-size:15px}.form-field small{color:var(--muted);font-size:13px;margin-left:6px}input:not([type=checkbox]),textarea{display:block;width:100%;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:3px;min-width:0;font-size:16px}textarea{resize:vertical;min-height:150px}fieldset{border:0;padding:0;margin:0;min-width:0}legend{padding:0;margin-bottom:4px;font-size:17px}.helper{font-size:14px;margin-bottom:14px}.service-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-choice{display:flex;gap:12px;align-items:center;padding:13px 15px;border:1px solid var(--line);background:var(--panel);border-radius:3px;font-size:14px;line-height:1.5;min-height:59px;cursor:pointer}.service-choice input{width:19px;height:19px;flex-shrink:0;accent-color:var(--peach);margin:0}.service-choice:has(input:checked){background:#302a24;border-color:var(--peach)}.project-form>.button{justify-self:start}.availability{font-size:14px;border-left:2px solid var(--peach);padding-left:14px}.form-status:empty{display:none}.form-status[data-state=error]{color:#f5b8a5}.form-status[data-state=success]{color:var(--paper)}.site-footer{padding:36px 5% 28px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:26px}.site-footer .signature{font-size:18px;margin-bottom:14px}.site-footer p{font-size:14px}.site-footer p+p{margin-top:0}.footer-secondary{font-size:14px;color:var(--muted)}.copyright{grid-column:1/-1;margin-top:18px;font-size:12px!important}.work-dossier{margin:0 5% 42px;padding:30px;border:1px solid var(--line);border-radius:6px;background:#191918;scroll-margin-top:24px}.dossier-heading{margin:0 0 27px}.dossier-heading h2{margin-bottom:14px}.dossier-media{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:22px;align-items:center;margin:26px 0 35px}.dossier-media.marvelli{grid-template-columns:minmax(0,2fr) minmax(0,.64fr)}.dossier-info{display:grid;grid-template-columns:1fr 1fr;gap:35px}.dossier-info h3{margin-bottom:16px}.dossier-info article:last-child:nth-child(odd){grid-column:1/-1}.dossier-info p{max-width:64ch}.method-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:32px}.method-section>h2{margin-bottom:0}.home-contact{position:relative}.home-contact::before{content:'';height:1px;width:35%;background:linear-gradient(90deg,var(--peach),transparent);position:absolute;top:-1px;left:5%}section[id]{scroll-margin-top:24px}img,video{display:block;max-width:100%;height:auto}video{aspect-ratio:16/9}img{object-fit:contain}
@media(min-width:1500px){.main-header,.hero,.section,.site-footer{padding-inline:max(5%,calc((100vw - 1320px)/2))}.work-dossier{max-width:1320px;margin-inline:auto}}
@media(max-width:900px){.main-header{flex-wrap:wrap;gap:15px}nav{width:100%;justify-content:space-between;gap:18px}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid article:last-child:nth-child(odd){grid-column:1/-1}.service-tile,.service-tile:nth-child(n+4){grid-column:span 3}.section-head,.split,.method-section{grid-template-columns:1fr;gap:24px}.faq-section{grid-template-columns:1fr;gap:10px}.home-hero{min-height:430px}.service-title{min-height:175px}}
@media(max-width:600px){.main-header{padding:20px 5%}.signature{font-size:19px;white-space:normal}.signature span{font-size:12px;letter-spacing:.22em}.mobile-toggle{display:none}.js nav{display:none}.js nav.is-open{display:flex}.js .mobile-toggle{display:block}nav{flex-wrap:wrap;gap:3px 20px}.nav-group{position:static}.nav-panel{top:auto;left:5%;right:5%;min-width:0;max-height:70vh;overflow:auto;margin-top:44px;align-self:start}.hero{padding:35px 5% 44px}.home-hero{min-height:0}.home-hero h1{font-size:clamp(2rem,7.5vw,3rem);max-width:25ch}.page-hero h1{font-size:clamp(2rem,8vw,3rem)}.page-hero p{font-size:16px}.hero p{margin-top:22px}.section{padding:38px 5%}.section>h2{margin-bottom:25px}.actions{gap:15px 22px;margin-top:24px}.content-grid,.four .content-grid,.work-cards,.form-pair,.service-choices,.dossier-info,.dossier-media,.dossier-media.marvelli{grid-template-columns:1fr}.content-grid{gap:28px}.content-grid article:last-child:nth-child(odd),.dossier-info article:last-child:nth-child(odd){grid-column:auto}.service-grid{grid-template-columns:1fr;gap:30px}.service-tile,.service-tile:nth-child(n+4){grid-column:auto}.service-title{min-height:155px}.service-title h3{font-size:27px}.work-cards{gap:35px}.faq-section{gap:0}.faq-item h3{font-size:16px}.form-pair{gap:24px}.site-footer{grid-template-columns:1fr;gap:23px}.work-dossier{padding:20px;margin-bottom:30px}.vertical{width:65%;margin-inline:auto;max-height:none}.dossier-media{gap:20px}.dossier-info{gap:28px}.light-rays{opacity:.4}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{body{background:#fff;color:#111}p{color:#333}.main-header,.site-footer,.light-rays,.actions,.project-form{display:none}.section{break-inside:avoid}h1,h2,h3{color:#111!important}.faq-answer[hidden]{display:block!important}}

/* Reserved real-media layer: neutral until an authorized asset is supplied. */
.hero-media-slot{position:absolute;right:0;top:0;width:45%;height:100%;pointer-events:none;z-index:0}.hero-media-slot img,.hero-media-slot video{width:100%;height:100%;object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 25%)}
@media(max-width:600px){.hero-media-slot{width:100%;opacity:.35}}

/* Real project media — September 2026 */
.work-cover{overflow:hidden;aspect-ratio:16/9;background:#20201e;border-radius:4px}.work-cover img{width:100%;height:100%;object-fit:contain;transition:filter .35s}.work-card:hover .work-cover img{filter:brightness(1.08)}
.work-dossier{padding:clamp(20px,3.5vw,52px);background:linear-gradient(145deg,#1e1e1c,#171716);border-radius:10px;margin-bottom:70px}.dossier-heading{position:relative;padding-right:230px;min-height:125px;margin-bottom:32px}.dossier-heading h2{font-size:clamp(2rem,4.6vw,4rem);max-width:none}.client-logo{position:absolute;right:0;top:0;width:195px;height:112px;background:#f6f4ef;border-radius:4px;padding:18px;display:flex;align-items:center;justify-content:center}.client-logo img{width:100%;height:100%;object-fit:contain}.project-feature{margin-bottom:44px}.project-video{width:100%;height:auto;aspect-ratio:16/9;background:#090909;border-radius:4px;object-fit:contain}.dossier-info{gap:36px 60px}.dossier-info article{padding-top:22px;border-top:1px solid var(--line)}.dossier-info h3{color:var(--peach);font-size:clamp(1.4rem,2.3vw,1.9rem)}.dossier-intro{margin-bottom:42px}.portrait-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:42px 0}.portrait-gallery figure,.reel-gallery figure{margin:0;min-width:0}.portrait-gallery img{width:100%;height:auto;border-radius:3px}.portrait-gallery .tall{display:flex;justify-content:center;background:#111110;border-radius:4px}.portrait-gallery .tall img{max-height:600px;width:auto;max-width:100%;object-fit:contain}.reel-gallery{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr) minmax(0,1fr);gap:24px;margin:45px 0;align-items:start}.portrait-video{aspect-ratio:9/16}.reel-heading h3{margin-bottom:24px}.reel-heading img{width:100%;max-height:420px;object-fit:contain;object-position:left;border-radius:3px}
@media(max-width:900px){.dossier-heading{padding-right:170px}.client-logo{width:150px;height:96px}.dossier-info{gap:28px}.reel-gallery{gap:15px}}
@media(max-width:600px){.work-dossier{margin-inline:4%;padding:20px 16px;margin-bottom:38px}.dossier-heading{padding-right:0}.client-logo{position:static;width:142px;height:82px;margin-bottom:25px;padding:12px}.dossier-heading h2{font-size:2.25rem}.project-feature{margin-inline:-16px;margin-bottom:28px}.project-video{border-radius:0}.portrait-gallery{gap:14px;grid-template-columns:1fr}.portrait-gallery .tall{background:transparent}.portrait-gallery .tall img{width:100%;max-height:none}.reel-gallery{grid-template-columns:1fr;margin-block:30px;gap:28px}.reel-heading img{max-height:420px;width:100%;object-position:center}.reel-gallery figure{width:100%;max-width:360px;margin-inline:auto}.dossier-intro{margin-bottom:30px}.dossier-info{gap:26px}}

/* Portfolio editorial rhythm and frosted Home covers */
.portrait-gallery{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(20px,3vw,42px);align-items:center;margin-block:52px 64px}
.portrait-gallery figure{background:none!important;border:0;border-radius:0;display:block!important}
.portrait-gallery figure:nth-child(1){grid-column:1/9;grid-row:1}
.portrait-gallery figure:nth-child(3){grid-column:10/13;grid-row:1}
.portrait-gallery figure:nth-child(4){grid-column:2/5;grid-row:2}
.portrait-gallery figure:nth-child(2){grid-column:6/13;grid-row:2}
.portrait-gallery figure img,.portrait-gallery .tall img{display:block;width:100%;height:auto;max-height:none;max-width:100%;border:0;border-radius:2px;object-fit:contain}
.work-card>a{position:relative;isolation:isolate}.work-cover{aspect-ratio:16/10;border:1px solid #eee8de20;border-radius:6px}.work-cover img{filter:blur(2px) brightness(.78);transition:filter .45s;object-fit:cover}.work-card>a>h3{position:absolute;left:7%;right:7%;top:50%;transform:translateY(-50%);margin:0;padding:24px 20px;background:rgba(248,246,241,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid #ffffff80;box-shadow:0 8px 30px #00000012;color:#242422;font-size:clamp(1.5rem,2.9vw,2.6rem);text-align:center;line-height:1.15;border-radius:3px}.work-card .category{margin-top:18px}.work-card:hover .work-cover img,.work-card>a:focus-visible .work-cover img{filter:blur(0) brightness(.92)}
@media(max-width:900px) and (min-width:601px){.portrait-gallery figure:nth-child(1){grid-column:1/8}.portrait-gallery figure:nth-child(3){grid-column:9/13}.portrait-gallery figure:nth-child(4){grid-column:1/5}.portrait-gallery figure:nth-child(2){grid-column:6/13}}
@media(max-width:600px){.portrait-gallery{grid-template-columns:1fr 1fr;gap:16px;margin-block:30px 38px;align-items:start}.portrait-gallery figure:nth-child(1){grid-column:1/-1;grid-row:1}.portrait-gallery figure:nth-child(3){grid-column:1;grid-row:2}.portrait-gallery figure:nth-child(4){grid-column:2;grid-row:2;margin-top:28px}.portrait-gallery figure:nth-child(2){grid-column:1/-1;grid-row:3}.work-card>a>h3{padding:20px 14px;font-size:clamp(1.6rem,7vw,2.4rem)}.work-cover{aspect-ratio:16/10}}

/* New Home direction: photographic project stages, continuous graphic light */
.portfolio-home{overflow-x:clip}.portfolio-home .home-hero{min-height:540px;padding-top:76px;padding-bottom:80px;overflow:hidden;background:radial-gradient(ellipse at 100% 30%,#dbab8812,transparent 62%)}.portfolio-home .home-hero .hero-content{max-width:1000px}.portfolio-home .home-hero h1{font-size:clamp(2.2rem,5.6vw,5rem);max-width:21ch;line-height:1.08;letter-spacing:-.045em}.portfolio-home .home-hero .light-rays{opacity:.9;inset:-40% -10%;mask-image:linear-gradient(90deg,transparent 35%,#000 75%)}.portfolio-home .light-rays i{animation:home-light 13s ease-in-out infinite alternate;height:150%;top:-25%;background:linear-gradient(transparent 10%,#dbab8820 30%,#ffe7cd99 53%,#dbab880d 75%,transparent)}.portfolio-home .light-rays i:nth-child(1){width:2px;filter:blur(1px);left:72%}.portfolio-home .light-rays i:nth-child(2){width:170px;left:79%;opacity:.4;filter:blur(40px);animation-delay:-5s}.portfolio-home .light-rays i:nth-child(3){width:10px;left:83%;filter:blur(5px);animation-delay:-8s}@keyframes home-light{from{transform:translate(-35px,25px) rotate(31deg);opacity:.25}to{transform:translate(55px,-25px) rotate(38deg);opacity:.85}}
.portfolio-home .selected-work-stage{position:relative;isolation:isolate;padding-top:45px;border-top:0;overflow:hidden;background:radial-gradient(ellipse at 0 48%,#dbab8809,transparent 52%)}.selected-work-stage::before{content:'';position:absolute;left:5%;right:5%;top:0;height:1px;background:linear-gradient(90deg,#eee8de0a,#dbab8870,transparent)}.selected-work-stage .section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:38px}.selected-work-stage .section-head h2{font-size:clamp(2.2rem,4.8vw,4.2rem);max-width:none}.selected-work-stage .work-cards{display:block}.selected-work-stage .work-scene{position:relative;margin-bottom:56px}.selected-work-stage .work-scene>a{position:relative;display:block;min-height:440px;isolation:isolate;border:0;padding:58px 0 38px}.selected-work-stage .work-cover{position:absolute;z-index:-2;inset:0 0 0 23%;height:100%;aspect-ratio:auto;border:0;border-radius:0;overflow:hidden;background:none;mask-image:linear-gradient(90deg,transparent,#000 28%,#000 88%,transparent)}.selected-work-stage .work-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#141413 0%,#14141305 28%,#14141300 72%,#14141355),linear-gradient(90deg,#141413aa,#1414130d 65%)}.selected-work-stage .work-cover img{height:100%;width:100%;object-fit:cover;object-position:center;filter:brightness(.82) saturate(.85);transform:translateY(var(--drift,0px)) scale(1.05);transition:filter .7s;will-change:transform}.selected-work-stage .work-scene:hover .work-cover img,.selected-work-stage .work-scene>a:focus-visible .work-cover img{filter:brightness(.98) saturate(1)}
.selected-work-stage .work-card>a>h3{position:relative;inset:auto;transform:none;margin:60px 0 24px;padding:0;width:min-content;min-width:9ch;max-width:80%;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border:0;box-shadow:none;color:var(--paper);font-size:clamp(3rem,6.8vw,6.5rem);line-height:.95;letter-spacing:-.045em;text-align:left;text-shadow:0 3px 35px #0004;border-radius:0}.selected-work-stage .work-card .category{position:absolute;top:23px;left:0;margin:0;font-size:13px;max-width:37ch;color:var(--peach)}.selected-work-stage .work-summary{max-width:33ch;font-size:15px;line-height:1.65;color:#eee8decc;position:relative}.scene-rule{position:absolute;bottom:25px;left:0;width:58px;height:1px;background:var(--peach);transition:width .8s}.scene-visible .scene-rule,.work-scene:hover .scene-rule{width:115px}.selected-work-stage .work-scene:nth-child(2)>a{padding-left:57%}.selected-work-stage .work-scene:nth-child(2) .work-cover{inset:0 23% 0 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 65%,transparent)}.selected-work-stage .work-scene:nth-child(2) .work-cover img{object-position:46% center}.selected-work-stage .work-scene:nth-child(2) .work-cover::after{background:linear-gradient(0deg,#141413,#14141300 28%,#14141300 75%,#14141330),linear-gradient(90deg,#14141300 35%,#141413aa)}.selected-work-stage .work-scene:nth-child(2) .category,.selected-work-stage .work-scene:nth-child(2) .scene-rule{left:57%}.selected-work-stage .actions{justify-content:flex-end;margin-top:-20px}
.portfolio-home .graphic-section{position:relative;isolation:isolate;overflow:hidden}.portfolio-home .graphic-section::after{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(122deg,transparent 66%,#dbab8820 66.1%,transparent 66.3%),radial-gradient(ellipse at 90% 80%,#dbab8810,transparent 50%);opacity:.8}.portfolio-home #servizi .service-title{border-radius:0;background:linear-gradient(145deg,#2c261f80,#18181700);border:0;border-bottom:1px solid #eee8de40}.portfolio-home #servizi .service-title::after{top:0;left:0;right:0;opacity:.8}.portfolio-home #servizi .service-title:hover{background:linear-gradient(130deg,#dbab881a,#141413)}.portfolio-home .faq-section{position:relative;background:radial-gradient(ellipse at 0 100%,#dbab880a,transparent 55%)}
@media(min-width:1600px){.selected-work-stage .work-scene>a{min-height:500px}}
@media(max-width:900px){.selected-work-stage .work-scene>a{min-height:380px}.selected-work-stage .work-card>a>h3{font-size:clamp(3.1rem,7.2vw,4.8rem)}.selected-work-stage .work-scene:nth-child(2)>a{padding-left:49%}.selected-work-stage .work-scene:nth-child(2) .category,.selected-work-stage .work-scene:nth-child(2) .scene-rule{left:49%}.selected-work-stage .work-scene:nth-child(2) .work-cover{right:18%}}
@media(max-width:600px){.portfolio-home .home-hero{min-height:0;padding-top:40px;padding-bottom:55px}.portfolio-home .home-hero h1{font-size:clamp(2rem,8.8vw,3.25rem);line-height:1.1}.portfolio-home .home-hero .light-rays{mask-image:linear-gradient(90deg,transparent,#000);opacity:.5}.selected-work-stage .section-head{margin-bottom:28px}.selected-work-stage .work-scene{margin-bottom:35px}.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:380px;padding:170px 0 44px}.selected-work-stage .work-cover,.selected-work-stage .work-scene:nth-child(2) .work-cover{inset:0 -5.6%;mask-image:linear-gradient(0deg,transparent,#000 40%,#000 88%,transparent)}.selected-work-stage .work-cover img{object-position:center;filter:brightness(.78) saturate(.85)}.selected-work-stage .work-cover::after,.selected-work-stage .work-scene:nth-child(2) .work-cover::after{background:linear-gradient(0deg,#141413 0%,#141413b0 32%,#14141300 80%)}.selected-work-stage .work-card>a>h3{font-size:clamp(2.9rem,12.2vw,4.5rem);margin:22px 0 15px;max-width:95%;line-height:.97}.selected-work-stage .work-card .category,.selected-work-stage .work-scene:nth-child(2) .category{left:0;top:5px;max-width:32ch;font-size:12px}.selected-work-stage .work-summary{font-size:14px;max-width:32ch}.selected-work-stage .work-scene:nth-child(2) .scene-rule{left:0}.selected-work-stage .actions{justify-content:flex-start}.selected-work-stage .work-cover img{will-change:auto}}
@media(prefers-reduced-motion:reduce){.portfolio-home .light-rays i{animation:none!important;opacity:.5}.selected-work-stage .work-cover img{transform:none;transition:none}.scene-rule{transition:none;width:80px}}

/* Compact reading scale */
.main-header{padding-block:17px}.hero{padding-block:40px 44px}.page-hero{padding-block:38px 44px}.section{padding-block:44px}h1{font-size:clamp(2rem,4.3vw,3.65rem)}h2{font-size:clamp(1.7rem,3.1vw,2.65rem)}h3{font-size:clamp(1.25rem,1.9vw,1.55rem)}body{line-height:1.65}.hero p{margin-top:18px}.section-head{margin-bottom:25px}.eyebrow{margin-bottom:12px}.content-grid{gap:24px}.actions{margin-top:22px}.portfolio-home .home-hero{min-height:410px;padding-block:48px}.portfolio-home .home-hero h1{font-size:clamp(2rem,4.5vw,3.8rem);max-width:24ch}.selected-work-stage .section-head h2{font-size:clamp(2rem,3.8vw,3.2rem)}.selected-work-stage .work-scene>a{min-height:340px;padding-block:42px 32px}.selected-work-stage .work-card>a>h3{font-size:clamp(2.7rem,5.4vw,4.8rem);margin:45px 0 20px}.selected-work-stage .work-scene{margin-bottom:35px}.service-title{min-height:155px}.work-dossier{padding:clamp(18px,2.7vw,36px);margin-bottom:42px}.dossier-heading h2{font-size:clamp(2rem,3.7vw,3rem)}.dossier-heading{min-height:108px;margin-bottom:24px}.project-feature{max-width:900px;margin:0 auto 30px}.project-video{max-height:65vh}.portrait-video{max-height:none}.dossier-info{gap:26px 40px}.dossier-info h3{font-size:clamp(1.25rem,2vw,1.6rem);margin-bottom:12px}.dossier-intro{margin-bottom:30px}.reel-gallery{max-width:900px;margin:32px auto;gap:20px}.faq-button{padding-block:16px;min-height:58px}.form-field label{margin-bottom:6px}.project-form{gap:22px}.service-choice{min-height:51px;padding-block:10px}
.photo-viewer{margin:34px 0 42px;display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:30px;align-items:center}.photo-current{margin:0;display:flex;justify-content:center;align-items:center;min-width:0}.photo-current img{display:block;width:auto;height:auto;max-width:100%;max-height:480px;border:0;border-radius:0;background:none}.photo-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.photo-thumb{display:block;padding:0;border:0;background:none;min-width:0;min-height:44px;opacity:.55;transition:opacity .2s}.photo-thumb img{display:block;width:100%;height:auto;border:0;border-radius:0}.photo-thumb[aria-pressed=true]{opacity:1;outline:1px solid var(--peach);outline-offset:4px}.photo-thumb:hover{opacity:1}.photo-thumb:focus-visible{outline:2px solid var(--paper);outline-offset:5px}.photo-note{grid-column:1/-1;font-size:14px;color:var(--muted);text-align:center}
@media(min-width:1500px){.main-header,.hero,.section,.site-footer{padding-inline:max(5%,calc((100vw - 1180px)/2))}.work-dossier{max-width:1180px}.selected-work-stage .work-scene>a{min-height:380px}}
@media(max-width:600px){.main-header{padding-block:15px}.section{padding-block:30px}.hero,.page-hero{padding-block:28px 32px}.portfolio-home .home-hero{min-height:0;padding-block:32px 38px}.portfolio-home .home-hero h1{font-size:clamp(1.9rem,7.8vw,2.8rem)}.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:330px;padding:130px 0 40px}.selected-work-stage .work-card>a>h3{font-size:clamp(2.6rem,10.5vw,3.8rem);margin:22px 0 15px}.selected-work-stage .work-scene{margin-bottom:24px}.work-dossier{padding:18px 16px;margin-bottom:28px}.dossier-heading h2{font-size:2rem}.project-feature{margin-inline:-16px}.photo-viewer{grid-template-columns:1fr;gap:20px;margin-block:28px}.photo-current img{max-height:52vh;max-height:52svh}.photo-thumbs{display:flex;justify-content:center;gap:14px;align-items:center}.photo-thumb{width:58px}.photo-thumb img{max-height:82px;width:auto;max-width:58px;margin:auto}.client-logo{width:128px;height:70px;margin-bottom:20px}.reel-gallery{max-width:300px}.service-title{min-height:130px}.service-title h3{font-size:24px}}

/* Uncropped project video, consistent horizontal portraits */
.project-feature .project-video{display:block;width:100%;height:auto;max-height:none;aspect-ratio:16/9;object-fit:contain}
.uniform-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:34px 0 40px;align-items:start}.uniform-portraits figure{margin:0;padding:0;border:0;background:none}.uniform-portraits img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;border:0;border-radius:0}
.selected-work-stage .work-scene>a{min-height:440px;padding-block:58px 38px}.selected-work-stage .work-card>a>h3{font-size:clamp(3rem,6.8vw,6.5rem);margin:60px 0 24px}.selected-work-stage .work-scene{margin-bottom:56px}.selected-work-stage .work-cover img{object-fit:contain;object-position:center;transform:none;will-change:auto}
@media(min-width:1600px){.selected-work-stage .work-scene>a{min-height:500px}}
@media(max-width:900px){.uniform-portraits{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-work-stage .work-scene>a{min-height:400px}.selected-work-stage .work-card>a>h3{font-size:clamp(3.1rem,7.2vw,4.8rem)}}
@media(max-width:600px){.uniform-portraits{grid-template-columns:1fr;gap:18px;margin-block:28px}.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:410px;padding:190px 0 44px}.selected-work-stage .work-card>a>h3{font-size:clamp(2.9rem,12.2vw,4.5rem);margin:22px 0 15px}.selected-work-stage .work-cover,.selected-work-stage .work-scene:nth-child(2) .work-cover{bottom:auto;height:260px;mask-image:linear-gradient(0deg,transparent,#000 25%,#000 92%,transparent)}.selected-work-stage .work-cover img,.selected-work-stage .work-scene:nth-child(2) .work-cover img{object-fit:contain;object-position:center top;transform:none}.selected-work-stage .work-cover::after,.selected-work-stage .work-scene:nth-child(2) .work-cover::after{background:linear-gradient(0deg,#141413,transparent 65%)}.selected-work-stage .work-scene{margin-bottom:35px}}

/* Requested refinements: readable client logo, one service link, compact contact */
#studio-marvelli .client-logo{padding:3px}.client-logo img[src$="marvelli-logo-display.svg"]{height:100%;width:100%}
.selected-work-stage .work-scene:first-child>a{padding-left:57%}.selected-work-stage .work-scene:first-child .work-cover{inset:0 23% 0 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 65%,transparent)}.selected-work-stage .work-scene:first-child .work-cover::after{background:linear-gradient(0deg,#141413,#14141300 28%,#14141300 75%,#14141330),linear-gradient(90deg,#14141300 35%,#141413aa)}.selected-work-stage .work-scene:first-child .category,.selected-work-stage .work-scene:first-child .scene-rule{left:57%}
.home-contact{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:50px;align-items:start}.home-contact .contact-intro h2{font-size:clamp(1.9rem,3vw,2.75rem);margin-bottom:22px}.home-contact .contact-intro p{max-width:32ch;font-size:16px}.home-contact .project-form{margin:0;gap:18px;width:100%}.home-contact .form-pair{gap:14px 18px}.home-contact input:not([type=checkbox]){padding:9px 12px;min-height:44px}.home-contact .form-field label{font-size:14px;margin-bottom:5px}.home-contact .form-field small{font-size:12px}.home-contact .service-choices{gap:6px 14px}.home-contact .service-choice{padding:7px 0;border:0;background:none;min-height:44px;gap:9px;font-size:14px}.home-contact .service-choice:has(input:checked){background:none;color:var(--peach)}.home-contact textarea{min-height:112px;padding:10px 12px}.home-contact .helper{margin-bottom:8px;font-size:13px}.home-contact .project-form>.button{padding:10px 20px}.home-contact .availability{font-size:13px}.service-tile>p{margin-bottom:0}
@media(max-width:900px){.selected-work-stage .work-scene:first-child>a{padding-left:49%}.selected-work-stage .work-scene:first-child .category,.selected-work-stage .work-scene:first-child .scene-rule{left:49%}.selected-work-stage .work-scene:first-child .work-cover{right:18%}.home-contact{grid-template-columns:1fr;gap:28px}.home-contact .contact-intro p{max-width:55ch}.home-contact .project-form{max-width:760px}}
@media(max-width:600px){.selected-work-stage .work-scene:first-child>a{padding:190px 0 44px}.selected-work-stage .work-scene:first-child .work-cover{inset:0 -5.6% auto;height:260px;mask-image:linear-gradient(0deg,transparent,#000 25%,#000 92%,transparent)}.selected-work-stage .work-scene:first-child .work-cover::after{background:linear-gradient(0deg,#141413,transparent 65%)}.selected-work-stage .work-scene:first-child .category,.selected-work-stage .work-scene:first-child .scene-rule{left:0}.home-contact{gap:24px}.home-contact .service-choices{grid-template-columns:1fr 1fr;gap:5px 12px}.home-contact .service-choice{font-size:13px;line-height:1.4}.home-contact .service-choice:nth-last-child(2){grid-column:1/-1}.home-contact .form-pair{gap:14px}}

/* Hero photograph and Marvelli social composition */
.portfolio-home .home-hero{isolation:isolate;min-height:460px;background:var(--bg)}
.portfolio-home .home-hero .hero-content{z-index:3;width:100%;pointer-events:auto}
.portfolio-home .home-hero h1{max-width:23ch;text-shadow:0 2px 24px #14141366}
.portfolio-home .home-hero p{max-width:54ch}
.hero-art{position:absolute;inset:0 0 0 24%;z-index:0;pointer-events:none;overflow:hidden}
.hero-art>img{width:100%;height:100%;object-fit:cover;object-position:50% 53%;opacity:.74;animation:hero-photo-arrive 1.6s ease-out both,hero-photo-drift 18s 1.6s ease-in-out infinite alternate}
.hero-art-shade{position:absolute;inset:0;background:linear-gradient(90deg,#141413 0%,#141413d9 24%,#14141338 64%,#14141310 85%,#14141344),linear-gradient(0deg,#141413 0%,transparent 32%,transparent 75%,#1414139c 100%)}
.hero-trace{position:absolute;display:block;height:1px;background:linear-gradient(90deg,transparent,#dbab88bb,transparent);transform-origin:right center;animation:hero-trace-enter 1.7s .3s both}
.trace-one{width:75%;top:28%;right:0;rotate:-21deg;opacity:.65}.trace-two{width:56%;bottom:25%;right:4%;rotate:-21deg;opacity:.35}
.portfolio-home .home-hero .light-rays{z-index:1;opacity:.8}
@keyframes hero-photo-arrive{from{opacity:0;translate:30px 0}to{opacity:.74;translate:0 0}}
@keyframes hero-photo-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
@keyframes hero-trace-enter{from{scale:0 1;opacity:0}to{scale:1 1}}
#studio-marvelli .social-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;max-width:720px;margin:42px auto;padding-top:25px;border-top:1px solid var(--line)}
#studio-marvelli .social-showcase .reel-heading{grid-column:1/-1}
#studio-marvelli .social-showcase .reel-heading h3{margin:0}
#studio-marvelli .social-showcase figure{margin:0;width:100%;max-width:none;min-width:0}
#studio-marvelli .social-showcase video{display:block;width:100%;height:auto;max-height:none;aspect-ratio:9/16;object-fit:contain;border:0;border-radius:4px;background:var(--bg)}
@media(max-width:900px){.hero-art{left:18%}.hero-art-shade{background:linear-gradient(90deg,#141413 0%,#141413d9 30%,#14141350 100%),linear-gradient(0deg,#141413,transparent 55%)}}
@media(max-width:600px){.portfolio-home .home-hero{min-height:0;padding-block:42px 40px}.hero-art{inset:0 -22% 0 0}.hero-art>img{object-position:56% center;opacity:.55;animation-name:hero-photo-arrive-mobile,hero-photo-drift}.hero-art-shade{background:linear-gradient(90deg,#141413e0,#14141380 62%,#14141320),linear-gradient(0deg,#141413,transparent 70%)}.portfolio-home .home-hero p{color:var(--paper)}.hero-trace{right:10%}.trace-one{top:22%}.trace-two{bottom:17%}#studio-marvelli .social-showcase{grid-template-columns:minmax(0,1fr);max-width:340px;gap:24px;margin-block:28px}#studio-marvelli .social-showcase .reel-heading{grid-column:auto}#studio-marvelli .social-showcase figure{max-width:300px;margin-inline:auto}}
@keyframes hero-photo-arrive-mobile{from{opacity:0;translate:20px 0}to{opacity:.55;translate:0 0}}
@media(prefers-reduced-motion:reduce){.hero-art>img,.hero-trace{animation:none!important;transform:none!important;translate:none!important}.portfolio-home .home-hero .light-rays i{animation:none!important}}

/* Neutral light composition and higher quality Marvelli cover */
.hero-light-composition{inset:0 0 0 28%;mask-image:linear-gradient(90deg,transparent,#000 35%),linear-gradient(#000,#000);mask-composite:intersect;background:radial-gradient(ellipse at 72% 52%,#dbab8818,transparent 60%)}
.light-plane{position:absolute;display:block;inset:-50% -5%;transform:rotate(-26deg);animation:light-plane-drift 16s ease-in-out infinite alternate}
.plane-back{background:linear-gradient(90deg,transparent 45%,#dbab8808 53%,#dbab8844 64%,#f7e2cd88 65%,#dbab8814 67%,transparent 80%);filter:blur(13px);opacity:.75}
.plane-front{background:linear-gradient(90deg,transparent 68%,#dbab8805 71%,#f7e2cd88 72%,transparent 72.3%);animation-delay:-7s}
.light-contour{position:absolute;display:block;width:78%;height:56%;right:-9%;top:18%;border:1px solid #dbab8840;border-radius:50%;transform:rotate(-29deg);mask-image:linear-gradient(125deg,transparent 15%,#000 55%,transparent 95%)}
.contour-two{width:90%;height:73%;right:-12%;top:11%;opacity:.35}
@keyframes light-plane-drift{from{translate:-18px 12px;opacity:.5}to{translate:28px -15px;opacity:.95}}
.selected-work-stage .work-scene:nth-child(2) .work-cover img{filter:brightness(.96) saturate(1);object-fit:contain;object-position:center;transform:none}
@media(max-width:600px){.hero-light-composition{inset:0 -20% 0 8%;opacity:.8}.selected-work-stage .work-scene:nth-child(2) .work-cover img{filter:brightness(.92) saturate(1)}}
@media(prefers-reduced-motion:reduce){.light-plane{animation:none!important}}

/* Continuous opening and photographic project names */
.opening-flow{position:relative;isolation:isolate;overflow:hidden;background:var(--bg)}
.opening-flow>.hero-light-composition{position:absolute;inset:0 -10% 0 12%;z-index:-1;opacity:.8;mask-image:linear-gradient(180deg,#000 0%,#000 20%,#0009 46%,#0004 72%,transparent 100%);mask-composite:add}
.opening-flow>.hero-light-composition .light-plane{inset:-25% -5%;height:125%}
.portfolio-home .opening-flow .home-hero{background:transparent;overflow:visible;isolation:auto}
.portfolio-home .opening-flow .home-hero .light-rays{display:none}
.opening-flow .selected-work-stage{background:transparent;border-top:0;position:relative}
.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:nth-child(2)>a{display:flex;align-items:flex-end;justify-content:flex-end;min-height:clamp(340px,43vw,540px);padding:0 6% 7%;overflow:visible}
.selected-work-stage .work-scene .work-cover,.selected-work-stage .work-scene:first-child .work-cover,.selected-work-stage .work-scene:nth-child(2) .work-cover{inset:0 -2%;height:100%;width:auto;mask-image:linear-gradient(0deg,transparent 0%,#000 26%,#000 85%,transparent 100%);background:transparent}
.selected-work-stage .work-scene .work-cover img,.selected-work-stage .work-scene:nth-child(2) .work-cover img{object-fit:contain;object-position:center;filter:brightness(.95);height:100%;width:100%}
.selected-work-stage .work-scene .work-cover::after,.selected-work-stage .work-scene:first-child .work-cover::after,.selected-work-stage .work-scene:nth-child(2) .work-cover::after{background:linear-gradient(0deg,#141413e6 0%,#14141388 20%,transparent 53%),linear-gradient(90deg,#141413 0%,transparent 13%,transparent 70%,#141413d9 100%)}
.selected-work-stage .work-scene>a>h3,.selected-work-stage .work-scene:nth-child(2)>a>h3{position:relative;inset:auto;margin:0;padding:0;min-width:0;width:auto;max-width:80%;font-size:clamp(3rem,6.5vw,6rem);line-height:1.05;text-align:right;z-index:2;text-shadow:0 3px 30px #0009}
.selected-work-stage .scene-rule{display:none}
@media(max-width:600px){.opening-flow>.hero-light-composition{inset:0 -50% 0 -10%;opacity:.55}.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:290px;padding:0 1% 8%}.selected-work-stage .work-scene .work-cover,.selected-work-stage .work-scene:first-child .work-cover,.selected-work-stage .work-scene:nth-child(2) .work-cover{inset:0 -5.6%;height:100%;mask-image:linear-gradient(0deg,transparent,#000 32%,#000 80%,transparent)}.selected-work-stage .work-scene>a>h3,.selected-work-stage .work-scene:nth-child(2)>a>h3{font-size:clamp(2.6rem,10.5vw,4rem);max-width:92%}.selected-work-stage .work-scene{margin-bottom:20px}}
.selected-work-stage .work-scene:first-child>a{padding:0 6% 7%}
@media(max-width:600px){.selected-work-stage .work-scene:first-child>a{padding:0 1% 8%}}
/* More restrained Home project scenes — keep faces and dissolves */
.selected-work-stage .work-cards{max-width:1000px;margin-inline:auto}
.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:first-child>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:clamp(280px,32vw,390px);padding:0 7% 5%}
.selected-work-stage .work-scene>a>h3,.selected-work-stage .work-scene:nth-child(2)>a>h3{font-size:clamp(2.5rem,4.6vw,4.25rem);max-width:80%}
.selected-work-stage .work-scene{margin-bottom:22px}
@media(max-width:600px){.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:first-child>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:240px;padding:0 3% 7%}.selected-work-stage .work-scene>a>h3,.selected-work-stage .work-scene:nth-child(2)>a>h3{font-size:clamp(2.15rem,8.4vw,3.1rem);max-width:90%}.selected-work-stage .work-scene{margin-bottom:12px}}

/* Approved Studio identity and opening subtitle */
.main-header .signature{font-size:20px;white-space:nowrap;letter-spacing:-.035em}
.main-header .signature span{font-size:12px;letter-spacing:.12em;text-transform:none;margin-top:5px}
.portfolio-home .home-hero .hero-subtitle{font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.6;max-width:44ch;color:var(--muted)}
@media(max-width:600px){.main-header{gap:10px}.main-header .signature{font-size:16px}.main-header .signature span{font-size:12px;letter-spacing:.04em}.site-footer .signature{font-size:18px;white-space:normal}.portfolio-home .home-hero .hero-subtitle{font-size:16px}}

/* Service cards: approved illustrative monitor and continuous light */
.services-light-section{position:relative;isolation:isolate;overflow:clip;background:transparent}
.services-ambient{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;mask-image:linear-gradient(0deg,transparent,#000 20%,#000 78%,transparent)}
.services-ambient span{position:absolute;inset:-25% -10%;display:block;transform:rotate(-24deg);animation:service-light-drift 18s ease-in-out infinite alternate}
.services-ambient .ambient-soft{background:linear-gradient(90deg,transparent 40%,#dbab880c 53%,#dbab882a 60%,transparent 77%);filter:blur(30px)}
.services-ambient .ambient-line{background:linear-gradient(90deg,transparent 65%,#dbab8855 65.2%,transparent 65.5%);animation-delay:-8s;opacity:.6}
.services-light-section .service-title{background:linear-gradient(135deg,#242420b3,#14141355);border-color:#eee8de20;min-height:190px}
.services-light-section .service-title.service-with-image{min-height:245px;background:var(--bg);border-radius:6px;overflow:hidden;isolation:isolate}
.service-with-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;transition:transform .7s ease}
.services-light-section .service-with-image::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#141413f5 0%,#141413bd 25%,#14141320 62%,#14141322)}
.services-light-section .service-with-image::after{display:none}
.service-with-image:hover>img{transform:scale(1.025)}
.service-with-image h3{max-width:20ch;text-shadow:0 2px 12px #0008}
@keyframes service-light-drift{from{translate:-25px 15px;opacity:.35}to{translate:30px -20px;opacity:.8}}
@media(max-width:600px){.services-light-section .service-title{min-height:150px}.services-light-section .service-title.service-with-image{min-height:230px}.services-ambient{opacity:.6}}
@media(prefers-reduced-motion:reduce){.services-ambient span{animation:none!important}.service-with-image>img{transition:none}.service-with-image:hover>img{transform:none}}

/* Global fixed light and seamless photographic surfaces */
body{position:relative;isolation:isolate;background:#141413}
.site-light-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 82% 35%,#dbab8812,transparent 60%)}
.site-light-backdrop span{position:absolute;inset:-55% -30%;transform:rotate(-27deg);animation:global-light-breathe 20s ease-in-out infinite alternate;will-change:transform}
.site-light-backdrop .ray-wash{background:linear-gradient(90deg,transparent 48%,#dbab880c 55%,#dbab8838 64%,#f6dfc544 66%,transparent 76%);filter:blur(28px)}
.site-light-backdrop .ray-fine{background:linear-gradient(90deg,transparent 63%,#f8dec388 63.1%,transparent 63.3%);opacity:.65;animation-delay:-7s}
.site-light-backdrop .ray-secondary{background:linear-gradient(90deg,transparent 76%,#dbab8838 76.2%,transparent 76.7%);animation-delay:-13s}
@keyframes global-light-breathe{from{transform:translate(-15px,8px) rotate(-27deg);opacity:.5}to{transform:translate(20px,-10px) rotate(-25deg);opacity:.9}}
body .opening-flow,body .hero,body .section,body .selected-work-stage,body .site-footer,.portfolio-home .opening-flow .home-hero{background:transparent}
body .opening-flow{isolation:auto;overflow:visible}
body .work-dossier{background:transparent;border:0;box-shadow:none;border-radius:0}
.selected-work-stage .work-scene .work-cover,.selected-work-stage .work-scene:first-child .work-cover,.selected-work-stage .work-scene:nth-child(2) .work-cover{mask-image:none;overflow:visible;background:transparent}
.selected-work-stage .work-scene .work-cover img,.selected-work-stage .work-scene:nth-child(2) .work-cover img{position:absolute;left:50%;top:50%;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transform:translate(-50%,-50%);border:0;border-radius:0;mask-image:linear-gradient(90deg,transparent,#000 13%,#000 75%,transparent),linear-gradient(0deg,transparent,#000 30%,#000 93%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.selected-work-stage .work-scene .work-cover::after,.selected-work-stage .work-scene:first-child .work-cover::after,.selected-work-stage .work-scene:nth-child(2) .work-cover::after{display:none}
.uniform-portraits figure{background:transparent;border:0;box-shadow:none}
.uniform-portraits img{border:0;border-radius:0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(0deg,transparent,#000 14%,#000 96%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.service-photo-hero{min-height:420px;display:flex;align-items:center;position:relative;overflow:hidden;isolation:isolate}
.service-photo-hero .hero-content{max-width:60%;z-index:2}
.service-photo-hero .hero-content p{max-width:45ch}
.service-page-photo{position:absolute;inset:8% 1% 0 38%;z-index:-1;pointer-events:none}
.service-page-photo img{position:absolute;right:0;top:50%;transform:translateY(-50%);width:auto;height:auto;max-height:100%;max-width:100%;object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 24%,#000 89%,transparent),linear-gradient(0deg,transparent,#000 24%,#000 91%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in;opacity:.76}
.service-title.service-with-image{border:0!important;background:transparent!important;border-radius:0!important}
.service-with-image>img{mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent),linear-gradient(0deg,transparent,#000 38%,#000 90%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
@media(max-width:900px){.service-photo-hero .hero-content{max-width:75%}.service-page-photo{left:30%;opacity:.8}}
@media(max-width:600px){.site-light-backdrop{opacity:.7}.site-light-backdrop span{inset:-30% -100%}.service-photo-hero{min-height:440px;align-items:flex-start;padding-bottom:170px}.service-photo-hero .hero-content{max-width:100%}.service-page-photo{inset:38% -5% -2% 12%;opacity:.65}.service-page-photo img{max-height:100%;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 88%,transparent),linear-gradient(0deg,transparent,#000 30%,#000 75%,transparent)}.selected-work-stage .work-scene .work-cover img,.selected-work-stage .work-scene:nth-child(2) .work-cover img{mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent),linear-gradient(0deg,transparent,#000 28%,#000 92%,transparent)}}
@media(prefers-reduced-motion:reduce){.site-light-backdrop span{animation:none!important;will-change:auto}}

/* Home composition trial and complete service imagery */
.main-header .signature{position:relative;z-index:20;pointer-events:auto;display:block}
.services-light-section .service-title.service-with-image{min-height:230px}
.services-light-section .service-title.service-with-image img{object-fit:cover;object-position:center 38%}
.services-light-section .service-title.service-with-image h3{position:relative;z-index:2;font-size:clamp(1.3rem,2.1vw,1.85rem)}
.portfolio-home .hero-composition-trial{min-height:510px;display:flex;align-items:center;gap:24px}
.portfolio-home .hero-composition-trial .hero-content{max-width:57%;flex:0 0 57%}
.portfolio-home .hero-composition-trial h1{font-size:clamp(2rem,3.7vw,3.8rem);max-width:22ch}
.hero-mosaic{position:relative;width:43%;height:370px;pointer-events:none;flex:1;isolation:isolate}
.mosaic-frame{position:absolute;overflow:hidden;border:1px solid #eee8de12;border-radius:3px;box-shadow:0 16px 35px #0003;animation:mosaic-float 12s ease-in-out infinite alternate}
.mosaic-1{width:88%;height:52%;right:0;top:0;z-index:1}.mosaic-2{width:36%;height:62%;left:0;bottom:0;z-index:3;animation-delay:-5s}.mosaic-3{width:69%;height:44%;right:-2%;bottom:0;z-index:2;animation-delay:-8s}
.mosaic-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;animation:mosaic-dissolve 14s linear infinite;filter:brightness(.86)}
.mosaic-image.slide-1{animation-delay:-7s}.mosaic-image.slide-2{animation-delay:0s}
.mosaic-2 .mosaic-image{animation-duration:18s}.mosaic-2 .slide-1{animation-delay:-9s}
.mosaic-3 .mosaic-image{animation-duration:16s}.mosaic-3 .slide-1{animation-delay:-8s}
@keyframes mosaic-float{from{transform:translateY(-6px) rotate(-1deg)}to{transform:translateY(7px) rotate(.7deg)}}
@keyframes mosaic-dissolve{0%,40%{opacity:1}50%,90%{opacity:0}100%{opacity:1}}
.selected-work-stage .work-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1180px}
.selected-work-stage .work-scene{margin:0;min-width:0}
.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:first-child>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:290px;padding:0 5% 8%;display:flex;align-items:flex-end;justify-content:flex-start}
.selected-work-stage .work-scene>a>h3,.selected-work-stage .work-scene:nth-child(2)>a>h3{font-size:clamp(2rem,3.4vw,3.6rem);text-align:left;max-width:100%;line-height:1.1}
.selected-work-stage .work-scene .work-cover,.selected-work-stage .work-scene:first-child .work-cover,.selected-work-stage .work-scene:nth-child(2) .work-cover{inset:0;height:100%}
.selected-work-stage .work-scene .work-cover img,.selected-work-stage .work-scene:nth-child(2) .work-cover img{width:100%;height:auto;max-height:100%;object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent),linear-gradient(0deg,transparent,#000 38%,#000 96%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.project-extra-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;max-width:720px;margin:40px auto 0;align-items:center}
.project-extra-images img{display:block;width:auto;height:auto;max-width:100%;max-height:440px;margin:auto;object-fit:contain;mask-image:linear-gradient(0deg,transparent,#000 12%,#000 96%,transparent)}
.project-image-detail{max-width:470px;margin:38px auto 0}.project-image-detail img{width:100%;max-height:450px;object-fit:contain;mask-image:linear-gradient(0deg,transparent,#000 15%,#000 92%,transparent)}
@media(max-width:900px){.portfolio-home .hero-composition-trial .hero-content{max-width:60%;flex-basis:60%}.hero-mosaic{height:300px}.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:first-child>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:245px}}
@media(max-width:600px){.portfolio-home .hero-composition-trial{display:block;min-height:0;padding-bottom:30px}.portfolio-home .hero-composition-trial .hero-content{max-width:100%}.portfolio-home .hero-composition-trial h1{font-size:clamp(1.9rem,7.8vw,2.8rem)}.hero-mosaic{width:94%;height:230px;margin:30px auto 0}.mosaic-1{width:72%;height:60%}.mosaic-2{width:31%;height:68%}.mosaic-3{width:59%;height:44%}.selected-work-stage .work-cards{grid-template-columns:1fr;gap:12px}.selected-work-stage .work-scene>a,.selected-work-stage .work-scene:first-child>a,.selected-work-stage .work-scene:nth-child(2)>a{min-height:260px;padding-bottom:8%}.selected-work-stage .work-scene>a>h3,.selected-work-stage .work-scene:nth-child(2)>a>h3{font-size:clamp(2.2rem,8.5vw,3rem)}.project-extra-images{gap:16px}.project-extra-images img{max-height:300px}}
@media(prefers-reduced-motion:reduce){.mosaic-frame,.mosaic-image{animation:none!important}.mosaic-image.slide-2{display:none}}

/* Distinct Home imagery, uncropped frames and feathered edges */
.hero-mosaic .mosaic-frame{overflow:visible;border:0;border-radius:0;box-shadow:none;background:transparent;animation:mosaic-float-visible 9s ease-in-out infinite alternate}
.hero-mosaic .mosaic-2{animation-delay:-3s}.hero-mosaic .mosaic-3{animation-delay:-6s}
.hero-mosaic .mosaic-image{inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;filter:brightness(.93);-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent),linear-gradient(0deg,transparent,#000 10%,#000 98%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent),linear-gradient(0deg,transparent,#000 10%,#000 98%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
@keyframes mosaic-float-visible{from{translate:-8px -12px;rotate:-1deg}to{translate:9px 13px;rotate:1deg}}
.selected-work-stage .work-scene .work-cover img,.selected-work-stage .work-scene:nth-child(2) .work-cover img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transform:translate(-50%,-50%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(0deg,transparent,#000 25%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(0deg,transparent,#000 25%,#000 96%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
.work-dossier .uniform-portraits img,.work-dossier .project-extra-images img,.work-dossier .project-image-detail img{-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(0deg,transparent,#000 12%,#000 98%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(0deg,transparent,#000 12%,#000 98%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
.site-light-backdrop,.hero-mosaic,.work-cover,.service-title img,main::before,main::after,.section::before,.section::after{pointer-events:none}
a[href],button:not(:disabled){pointer-events:auto}
@media(prefers-reduced-motion:reduce){.hero-mosaic .mosaic-frame{animation:none!important;translate:none;rotate:none}}
/* Preserve complete framing in Home service cards too. */
.portfolio-home .service-title.service-with-image img{inset:auto;left:50%;top:50%;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transform:translate(-50%,-50%)}
.portfolio-home .service-title.service-with-image:hover img{transform:translate(-50%,-50%)}

/* Fixed-format media: every card filled, no changing frame geometry. */
.portfolio-home #servizi .service-title.service-with-image{aspect-ratio:16/9;min-height:0;height:auto;padding:18px;overflow:hidden}
.portfolio-home #servizi .service-title.service-with-image img{inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:50% 35%;transform:none;mask-image:linear-gradient(0deg,transparent,#000 40%);-webkit-mask-image:linear-gradient(0deg,transparent,#000 40%)}
.portfolio-home #servizi .service-title.service-with-image:hover img{transform:none}
.portfolio-home #servizi .service-title h3{font-size:clamp(1.2rem,1.8vw,1.7rem);max-width:95%}
.portfolio-home .hero-composition-trial{min-height:570px;gap:20px}
.portfolio-home .hero-composition-trial .hero-content{flex-basis:53%;max-width:53%}
.hero-mosaic{width:47%;height:435px;flex:1}
.hero-mosaic .mosaic-1{width:82%;height:auto;aspect-ratio:16/9;top:0;right:0}
.hero-mosaic .mosaic-2{width:30%;height:auto;aspect-ratio:9/16;left:0;bottom:2%}
.hero-mosaic .mosaic-3{width:77%;height:auto;aspect-ratio:16/9;right:-1%;bottom:0}
.hero-mosaic .mosaic-image{inset:0;width:100%;height:100%;max-width:none;max-height:none;transform:none;object-fit:cover}
.hero-mosaic .mosaic-single .mosaic-image{animation:none;opacity:1}
.service-photo-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;min-height:0;align-items:center}
.service-photo-hero .hero-content{max-width:100%}
.service-page-photo{position:relative;inset:auto;width:100%;aspect-ratio:var(--photo-ratio);z-index:0;opacity:.85}
.service-page-photo img{inset:0;transform:none;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
.service-portrait-hero .service-page-photo{width:min(100%,290px);justify-self:center}
@media(max-width:900px){.hero-mosaic{height:355px}.portfolio-home .hero-composition-trial{min-height:490px}.service-photo-hero{gap:20px}}
@media(max-width:600px){.portfolio-home .hero-composition-trial{display:block;min-height:0}.portfolio-home .hero-composition-trial .hero-content{max-width:100%}.hero-mosaic{width:100%;height:300px;margin:35px auto 15px}.hero-mosaic .mosaic-1{width:80%}.hero-mosaic .mosaic-2{width:31%}.hero-mosaic .mosaic-3{width:77%}.service-photo-hero{display:grid;grid-template-columns:1fr;padding-bottom:35px}.service-page-photo{inset:auto;width:100%;opacity:.9}.service-portrait-hero .service-page-photo{width:65%;max-width:290px}.portfolio-home #servizi .service-title h3{font-size:1.5rem}}

/* Transparent glass framing and restrained, consistent image feathering. */
.hero-mosaic .mosaic-frame{border:1px solid #f6e7d957;border-radius:12px;background:linear-gradient(135deg,#fff1,#fff03 45%,#dbab8814);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 #fff3,0 15px 35px #0002;overflow:hidden}
.hero-mosaic .mosaic-frame::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 1px 0 0 #ffffff20,inset -1px -1px 0 #dbab8820;background:linear-gradient(125deg,#fff08,transparent 25%,transparent 85%,#ffffff08);z-index:3}
.hero-mosaic .mosaic-image{inset:5px;width:calc(100% - 10px);height:calc(100% - 10px);border-radius:7px;mask-image:none;-webkit-mask-image:none}
.portfolio-home #servizi .service-title.service-with-image img{-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent),linear-gradient(0deg,transparent,#000 24%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent),linear-gradient(0deg,transparent,#000 24%,#000 96%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
.work-dossier .uniform-portraits img{-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent),linear-gradient(0deg,transparent,#000 5%,#000 98%,transparent);mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent),linear-gradient(0deg,transparent,#000 5%,#000 98%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect;filter:none;transform:none}

/* Photographer collaboration — verified identity, pending media kept empty. */
.photographer-profile{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:42px;align-items:center}
.photographer-profile h2{font-size:clamp(2rem,3.5vw,3.4rem);max-width:20ch}.photographer-profile .category{color:var(--peach);margin:12px 0 20px}.photographer-profile .photographer-bio:empty{display:none}
.photographer-portrait{aspect-ratio:4/5;max-height:360px;background:transparent}
.selected-work-stage .wedding-preview{grid-column:1/-1}.selected-work-stage .wedding-preview>a{min-height:190px;border-top:1px solid var(--line);padding:25px 5%}
.wedding-card-label h3{font-size:clamp(2rem,3.4vw,3.6rem)}.wedding-card-label p{font-size:14px;color:var(--peach);margin-top:14px}
.wedding-feature{aspect-ratio:16/9;max-height:340px;background:transparent;border-bottom:1px solid var(--line)}
.wedding-sections{display:grid;grid-template-columns:1fr 1fr;gap:30px}.wedding-detail{padding-top:22px;border-top:1px solid var(--line)}.wedding-detail h3{margin-bottom:18px}.pending-copy:empty{min-height:35px}
@media(max-width:600px){.photographer-profile{grid-template-columns:1fr;gap:0}.photographer-portrait:empty{display:none}.wedding-sections{grid-template-columns:1fr;gap:22px}.selected-work-stage .wedding-preview>a{min-height:180px}.wedding-feature{max-height:210px}}

.occasion-services .content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.occasion-services .text-link{margin-top:14px}#matrimoni,#eventi{scroll-margin-top:30px}@media(max-width:600px){.occasion-services .content-grid{grid-template-columns:1fr}}
