:root{--ink:#302b24;--paper:#e7decf;--stone:#d5c8b5;--warm:#917347;--gold:#80613b;--muted:#6b6053;--line:rgba(65,51,32,.22)}
body{background:var(--paper);color:var(--ink)}
header{background:var(--paper)}
.intro{color:#5c5145}.facts .fact p{color:#6b6053}
.manifesto,dialog,.dialog-bar{background:#302b24}.manifesto{color:#e7decf}
.material-home header,.material-home header.scrolled{position:absolute;background:transparent;color:#302b24;backdrop-filter:none;text-shadow:none}.material-home header .brand{visibility:hidden}
.material-home .hero{position:relative;isolation:isolate;background:transparent;overflow:clip;min-height:850px}
.material-home .hero-content{min-height:850px;padding-top:115px;padding-bottom:95px;background:none;justify-content:center;z-index:2;pointer-events:none}
.material-home .hero-content a{pointer-events:auto}
.material-home .hero-text{width:49%;max-width:700px;background:none}
.material-home .hero h1{font-family:"Italiana",serif;font-weight:400;-webkit-text-stroke:0;font-size:clamp(52px,6.5vw,96px);line-height:1.02;letter-spacing:-.035em;margin:24px 0 32px}
.material-home .hero-logo{width:clamp(230px,25vw,340px);margin-bottom:22px}
.material-relief{position:absolute;z-index:1;width:min(54vw,760px);right:-1%;top:80px;transform:perspective(1600px) rotateY(var(--ry,0deg)) rotateX(var(--rx,0deg)) translateY(var(--lift,0px));transform-origin:center;transition:transform .35s ease-out;filter:drop-shadow(12px 24px 18px rgba(50,36,17,.24));will-change:transform}
.material-relief img{width:100%;height:auto;display:block}
.material-home .hero-location{background:none;padding:0;color:#514536;text-shadow:none;font-weight:400}
@media(min-width:1500px){.material-home .hero,.material-home .hero-content{min-height:1000px}}
@media(max-width:820px){
.material-home .hero{min-height:0;overflow:clip;padding-bottom:32px;display:flex;flex-direction:column}
.material-home .hero-content{min-height:0;padding-top:95px;padding-bottom:20px;display:flex;order:0;width:92%;background:none}
.material-home .hero-text{width:100%;max-width:none}
.material-home .hero h1{font-size:clamp(52px,11.5vw,78px);line-height:1.04;margin:22px 0 28px}
.material-home .hero-logo{width:240px;margin-bottom:14px}
.material-home .hero-copy{font-size:19px;max-width:580px}
.material-home .hero-location{position:static;margin-top:30px;font-size:13px}
.material-relief{position:relative;order:1;top:auto;right:auto;width:106%;max-width:620px;align-self:center;margin:-5px 0 -35px;filter:drop-shadow(8px 16px 13px rgba(50,36,17,.22))}
.material-home .hero-scroll{display:none}
}
@media(prefers-reduced-motion:reduce){.material-relief{transform:none;transition:none;will-change:auto}}
/* Keep the master logo intact while blending its white paper into the page. */
.material-home .hero{background:var(--paper);overflow:visible;min-height:900px}
.material-home .hero-content{mix-blend-mode:multiply;min-height:900px}
.material-home .hero-logo{mix-blend-mode:multiply;background:transparent}
.material-relief{width:min(44vw,620px);right:4%;top:95px;filter:drop-shadow(5px 9px 4px rgba(49,35,20,.26)) drop-shadow(16px 26px 15px rgba(49,35,20,.32))}
@media(min-width:1500px){.material-home .hero,.material-home .hero-content{min-height:1000px}}
@media(max-width:820px){.material-home .hero{min-height:0;padding-bottom:65px;overflow:visible}.material-home .hero-content{min-height:0}.material-relief{position:relative;width:86%;max-width:530px;right:auto;top:auto;align-self:center;margin:12px auto 0;filter:drop-shadow(4px 7px 3px rgba(49,35,20,.3)) drop-shadow(12px 19px 10px rgba(49,35,20,.35))}}
/* Header follows the approved logo-left / navigation-right composition. */
.material-home header,.material-home header.scrolled{mix-blend-mode:multiply;z-index:20}
.material-home header .nav{height:auto;min-height:0;padding-top:26px;align-items:flex-start;gap:35px}
.material-home header .brand,.material-home header:not(.scrolled) .brand,.material-home .nav>.brand{display:block;visibility:visible;flex:0 0 auto}
.material-home .header-master-logo{width:250px;height:auto;max-width:none;mix-blend-mode:multiply}
.material-home .nav-actions{padding-top:8px;justify-content:flex-end;width:auto}
.material-home .hero-content{justify-content:flex-start;padding-top:295px}
.material-relief{filter:none;isolation:isolate}
.material-relief:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(44,31,17,.53);-webkit-mask:url('/assets/material-palette-user-texture.png') center/contain no-repeat;mask:url('/assets/material-palette-user-texture.png') center/contain no-repeat;transform:translate(22px,29px);filter:blur(13px)}
.material-relief img{filter:drop-shadow(4px 7px 3px rgba(43,29,16,.32))}
@media(max-width:820px){
.material-home header .nav{padding-top:22px;gap:18px;align-items:flex-start}
.material-home .header-master-logo{width:132px}
.material-home .nav-actions{width:auto;flex:1;display:flex;flex-direction:column;align-items:flex-end;gap:10px;padding-top:0}
.material-home .links{display:grid;grid-template-columns:auto auto;gap:10px 15px;text-align:right;font-size:13px;letter-spacing:.01em}
.material-home .links a:nth-child(2){max-width:none;line-height:1.4}
.material-home .language-switch{align-self:flex-end}
.material-home .hero-content{padding-top:190px}
.material-relief{width:84%;margin:14px auto 15px;filter:none}
.material-relief:before{transform:translate(15px,20px);filter:blur(8px);background:rgba(44,31,17,.58)}
}
@media(max-width:360px){.material-home .header-master-logo{width:112px}.material-home .links{font-size:12px;gap:10px}.material-home .hero-content{padding-top:180px}}
.material-home .hero:before{content:"";position:absolute;z-index:0;pointer-events:none;top:0;left:0;width:min(86vw,1250px);height:800px;background:url('/assets/olive-branch-shadows.png') left top/100% auto no-repeat;opacity:.3;mix-blend-mode:multiply}
.material-home .links{display:flex;flex-wrap:nowrap;align-items:center}
.material-home .links a{white-space:nowrap;max-width:none}
@media(max-width:820px){
.material-home header .nav{display:flex;flex-wrap:wrap;gap:14px}
.material-home .nav-actions{width:100%;flex:0 0 100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding-top:0}
.material-home .links{display:flex;flex:1;justify-content:space-between;gap:10px;font-size:13px;line-height:1.4;text-align:left;letter-spacing:0}
.material-home .links a:nth-child(2){white-space:nowrap;max-width:none;line-height:1.4}
.material-home .language-switch{align-self:auto;flex-shrink:0;font-size:12px;gap:0}
.material-home .language-switch a{min-width:25px;padding:4px}
.material-home .hero-content{padding-top:230px}
.material-home .hero:before{width:100%;height:550px;background-size:auto 550px;opacity:.27}
}
@media(max-width:360px){.material-home .links{font-size:12px;gap:7px}.material-home .nav-actions{gap:8px}.material-home .language-switch a{min-width:23px}.material-home .hero-content{padding-top:215px}}

/* Continue the leaf shadows behind the lower material composition. */
.material-home .hero:after{content:"";position:absolute;z-index:0;pointer-events:none;right:0;bottom:0;width:58%;height:85%;background:url('/assets/olive-branch-shadows.png') center/100% 100% no-repeat;opacity:.3;mix-blend-mode:multiply}
@media(max-width:820px){.material-home .hero:after{left:0;right:auto;bottom:0;width:100%;height:calc(112vw + 120px);background-size:100% 100%;opacity:.3}}
/* Final spacing and natural shadow refinement. */
.material-relief:before{content:none}
.material-relief img{filter:drop-shadow(3px 5px 5px rgba(43,29,16,.18)) drop-shadow(8px 13px 15px rgba(43,29,16,.23))}
.material-home .hero:before{opacity:.24}
.material-home .hero:after{opacity:.19;transform:scaleX(-1);background-size:125% 110%;background-position:right center;-webkit-mask-image:linear-gradient(to bottom,transparent,black 24%,black 82%,transparent);mask-image:linear-gradient(to bottom,transparent,black 24%,black 82%,transparent)}
.material-home .links a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:820px){
.material-home .hero{gap:0;padding-bottom:34px}
.material-home .hero-content{padding-bottom:0}
.material-home .hero-location{margin-top:22px}
.material-relief{margin:-12px auto 0}
.material-relief img{filter:drop-shadow(2px 4px 4px rgba(43,29,16,.19)) drop-shadow(6px 9px 11px rgba(43,29,16,.23))}
.material-home .hero:after{height:calc(112vw + 85px);opacity:.22;background-size:145% 110%}
.material-home .nav-actions{gap:10px}
.material-home .links{gap:8px;font-size:clamp(12px,3.4vw,14px);font-weight:400}
.material-home .language-switch{font-weight:400}
}
@media(max-width:360px){.material-home .nav-actions{gap:7px}.material-home .links{gap:6px;font-size:12px}}
/* Align the complete header and tighten the transition into the portfolio. */
.material-home header .nav{align-items:center}
.material-home .nav-actions{padding-top:0}
.material-home #progetti{padding-top:clamp(40px,5vw,75px)}
@media(max-width:820px){
.material-home header .nav{flex-wrap:nowrap;align-items:center;gap:10px;padding-top:20px}
.material-home .header-master-logo{width:clamp(64px,18vw,120px)}
.material-home .nav-actions{width:auto;flex:1 1 auto;min-width:0;flex-direction:row;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none}
.material-home .nav-actions::-webkit-scrollbar{display:none}
.material-home .links{flex:1 0 auto;gap:6px;font-size:12px;justify-content:space-between;letter-spacing:0}
.material-home .language-switch{flex:0 0 auto;font-size:12px}
.material-home .language-switch a{min-width:21px;padding:3px}
.material-home .hero-content{padding-top:125px}
.material-home .hero{padding-bottom:0}
.material-relief{margin:-12px auto -24px}
.material-home #progetti{padding-top:38px}
.material-home #progetti .section-head{gap:22px;margin-bottom:38px}
}
@media(max-width:360px){.material-home header .nav{gap:7px}.material-home .nav-actions{gap:4px}.material-home .links{gap:5px}.material-home .hero-content{padding-top:115px}}
/* Short navigation label leaves more space for the original master logo. */
@media(max-width:820px){
.material-home header .nav{width:96vw;gap:8px}
.material-home .header-master-logo{width:clamp(104px,28vw,160px)}
.material-home .nav-actions{gap:5px}
.material-home .links{font-size:13px;gap:5px;font-weight:400}
.material-home .language-switch{font-size:12px}
.material-home .language-switch a{min-width:20px;padding:2px}
.material-home .hero-content{padding-top:145px}
}
@media(max-width:360px){.material-home .header-master-logo{width:94px}.material-home header .nav{gap:6px}.material-home .links{font-size:12px;gap:4px}.material-home .hero-content{padding-top:130px}}
/* Render the descriptor as readable type rather than shrinking it with the image. */
.material-home .header-logo-crop{display:block;width:250px;aspect-ratio:850/590;overflow:hidden}
.material-home .header-logo-crop .header-master-logo{width:100%;height:auto;max-width:none}
.material-home .header-descriptor{font-family:"DM Sans",sans-serif;font-size:12px;line-height:1.5;font-weight:400;letter-spacing:.08em;margin-top:8px;margin-bottom:0;color:var(--ink)}
@media(max-width:820px){
.material-home .header-logo-crop{width:clamp(104px,28vw,160px)}
.material-home .header-descriptor{width:92vw;font-size:12px;letter-spacing:.065em;margin-top:12px}
.material-home .hero-content{padding-top:170px}
.material-relief{width:88%;max-width:550px;margin:-14px auto -20px}
}
@media(max-width:360px){.material-home .header-logo-crop{width:94px}.material-home .header-descriptor{letter-spacing:.025em}.material-home .hero-content{padding-top:160px}}
/* More discreet descriptor, as requested. */
.material-home .header-descriptor{font-size:10.5px;letter-spacing:.04em;line-height:1.5;margin-top:6px}
@media(max-width:820px){.material-home .header-descriptor{font-size:10.5px;letter-spacing:.035em;margin-top:8px}}
@media(max-width:360px){.material-home .header-descriptor{letter-spacing:.02em}}

/* Readable descriptor accompanying the existing master logo. */
.material-home .header-descriptor{font-size:12px;line-height:1.5;letter-spacing:.025em}
@media(max-width:820px){.material-home .header-descriptor{font-size:11px;letter-spacing:.015em}}
