/* Atelier: photographic material study and a distinct motion language per page. */
.hero-atelier{background:#061e21}.hero-atelier:before{display:none}
.hero-atelier .hero-inner{grid-template-columns:.82fr 1.18fr;gap:46px;min-height:720px;padding-block:66px 85px}
.hero-atelier h1{font-size:clamp(62px,5.8vw,88px);letter-spacing:-.065em}.hero-atelier h1 span{color:#e4a084}
.hero-atelier .hero-copy>p:not(.eyebrow){color:#c4d1cd}.hero-atelier .hero-actions{gap:12px}.hero-atelier .hero-actions .button{padding:14px 18px;gap:15px}
.atelier-scene{min-width:0;position:relative}.atelier-heading{font-size:8px;letter-spacing:.18em;color:#c9d5ce;display:flex;gap:10px;align-items:center;margin-bottom:24px}.atelier-heading .live-dot{background:#e4a084}
.atelier-perspective{position:relative;transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .7s var(--ease-out);isolation:isolate}
.atelier-window{position:relative;overflow:hidden;aspect-ratio:3/2;background:#062528;box-shadow:0 30px 60px #0004;border:1px solid #c5c8b51a}
.atelier-image{width:100%;height:100%;object-fit:cover;transform:scale(1.035);transform-origin:50% 55%}
.atelier-light{position:absolute;inset:-60%;background:linear-gradient(115deg,transparent 42%,#ffe7ca12 48%,#fff3da21 50%,transparent 58%);transform:translateX(-40%);mix-blend-mode:screen;pointer-events:none}
.atelier-signature{position:absolute;bottom:-17px;right:22px;padding:9px 17px;background:#f0e6d5;color:#183638;font-size:11px;letter-spacing:.015em;box-shadow:0 5px 20px #0002}
.atelier-materials{display:flex;margin-top:42px;flex-wrap:wrap;gap:12px 18px}.atelier-materials a{display:flex;align-items:center;gap:7px;font-size:11px;color:#d4ded8;min-height:36px;border-bottom:1px solid #bdc9c53b;transition:color .3s,border-color .3s}.atelier-materials a>span{width:5px;height:5px;border-radius:50%;background:#d78667}.atelier-materials a:nth-child(2)>span{background:#b39168}.atelier-materials a:nth-child(3)>span{background:#5f98a3}.atelier-materials a:nth-child(4)>span{background:#c44758}.atelier-materials a:nth-child(5)>span{background:#dfc695}.atelier-materials a i{font-style:normal;margin-left:8px;color:#9db4ac}.atelier-materials a:hover{color:#fff;border-color:#e4a084}
.motion-enabled .is-in-view .atelier-image{animation:atelier-drift 14s ease-in-out infinite alternate}.motion-enabled .is-in-view .atelier-light{animation:atelier-light 11s ease-in-out infinite}.motion-enabled .is-in-view .atelier-signature{animation:atelier-float 7s ease-in-out infinite alternate}
@keyframes atelier-drift{from{transform:scale(1.035) translate(-.4%,.4%)}to{transform:scale(1.085) translate(.4%,-.5%)}}
@keyframes atelier-light{0%,15%{transform:translateX(-40%)}85%,100%{transform:translateX(40%)}}
@keyframes atelier-float{to{transform:translateY(-6px)}}
.home-sector-grid{row-gap:48px}.home-sector-grid .sector-photo{height:auto;aspect-ratio:3/2}.home-sector-grid .sector-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-out)}.home-sector-grid .sector-card:hover img{transform:scale(1.055)}.home-sector-grid .sector-text h3{font-size:24px}.home-sector-grid .sector-text p{max-width:100%}
.scene-kicker{position:absolute;top:8px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:.17em;color:#64756a}
.mixing-lab{height:340px;position:relative;isolation:isolate;max-width:440px;width:100%;margin:auto;overflow:hidden}.mixing-orbit{position:absolute;inset:45px 35px 20px;border:1px solid #b5beb240;border-radius:50%;transform:rotate(-25deg)}
.mixing-bowl{position:absolute;width:250px;height:170px;left:50%;top:130px;transform:translateX(-50%);border-radius:50%;background:linear-gradient(130deg,#fbf9f1,#bcbeb4 30%,#f7f6ed 60%,#8a948c);padding:9px;box-shadow:0 15px 0 -5px #b6bcb3,0 35px 35px -16px #253c3544;overflow:hidden}.mixing-paint{position:relative;height:100%;border-radius:50%;background:conic-gradient(from 0deg,#943a42,#da8b70,#e9bc98,#b85753,#943a42);box-shadow:inset 0 6px 15px #501d3345;overflow:hidden}.mixing-paint:after{content:'';position:absolute;inset:15px 25px;border-radius:50%;border:1px solid #fff7;border-left-color:transparent;border-bottom-width:8px;transform:rotate(-15deg)}
.mixing-jets{position:absolute;left:calc(50% - 90px);top:55px;display:flex;gap:55px;z-index:2}.mixing-jets i{width:20px;height:31px;border-radius:50% 50% 50% 5%;transform:rotate(-45deg);background:#a63240;box-shadow:inset 4px 2px 6px #fff4}.mixing-jets i:nth-child(2){background:#e5bc8b;top:20px;position:relative}.mixing-jets i:nth-child(3){background:#397b81}
.mixing-notes{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:24px;font-size:9px;color:#5f7067}.mixing-notes span+span:before{content:'·';margin-right:24px;color:#b5715c}
.motion-enabled .is-in-view .mixing-jets i{animation:pigment-arrival 4s ease-in-out infinite}.motion-enabled .is-in-view .mixing-jets i:nth-child(2){animation-delay:1.3s}.motion-enabled .is-in-view .mixing-jets i:nth-child(3){animation-delay:2.6s}.motion-enabled .is-in-view .mixing-paint:after{animation:paint-stir 12s linear infinite}.motion-enabled .is-in-view .mixing-paint{animation:paint-colour 10s ease-in-out infinite alternate}
@keyframes pigment-arrival{0%,15%{transform:translateY(0) rotate(-45deg);opacity:1}70%{transform:translateY(115px) rotate(-45deg) scale(.6);opacity:1}80%,100%{transform:translateY(125px) rotate(-45deg) scale(.1);opacity:0}}
@keyframes paint-stir{to{transform:rotate(345deg)}}@keyframes paint-colour{to{filter:hue-rotate(-18deg)}}
.colour-spectrum{height:420px;position:relative;overflow:hidden;background:#102e32;isolation:isolate}.colour-spectrum .scene-kicker{top:30px;color:#d8e1d5}.spectrum-ribbons{position:absolute;inset:90px 13% 90px;display:flex;gap:8px;align-items:center;perspective:600px}.spectrum-ribbons i{display:block;width:16.666%;height:90%;background:linear-gradient(100deg,#fff4,transparent 35%,#0002),var(--hue);border-radius:55% 55% 8px 8px;transform:translateY(calc((var(--i) - 2.5)*9px)) rotateY(-12deg);box-shadow:8px 12px 15px #0003}.spectrum-foot{position:absolute;bottom:32px;left:10%;right:10%;display:flex;justify-content:space-between;color:#e3e2d2;font-size:12px}.motion-enabled .is-in-view .spectrum-ribbons i{animation:spectrum-wave 6s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.8s)}@keyframes spectrum-wave{to{transform:translateY(calc((2.5 - var(--i))*9px)) rotateY(12deg)}}
.destination-scene{position:relative;height:340px;max-width:440px;width:100%;margin:auto;overflow:hidden}.destination-city{position:absolute;top:55px;left:10px;color:#214f52;font-size:56px;letter-spacing:-.07em;line-height:1}.destination-city>span{display:block;font-size:11px;letter-spacing:0;line-height:1.8;margin-top:15px;color:#6f7c6f}.destination-route{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.route-base,.route-flow{stroke-width:2;stroke-linecap:round}.route-base{stroke:#b7c2b7}.route-flow{stroke:#bb583f;stroke-dasharray:16 420}.route-point{fill:#b72b39}.route-halo{stroke:#b72b3933;transform-origin:320px 85px}.destination-address{position:absolute;bottom:22px;right:12px;padding:17px 22px;border-left:2px solid #b72b39;background:#fffdf6;box-shadow:0 10px 30px #203b2910;min-width:205px}.destination-address>span{display:block;font-size:9px;color:#6e7d70;letter-spacing:.08em}.destination-address strong{font-size:17px;color:#294c47;font-weight:600}.motion-enabled .is-in-view .route-flow{animation:route-travel 8s linear infinite}.motion-enabled .is-in-view .route-halo{animation:destination-pulse 4s ease-out infinite}@keyframes route-travel{to{stroke-dashoffset:-436}}@keyframes destination-pulse{0%{transform:scale(.55);opacity:.9}100%{transform:scale(1.8);opacity:0}}
@media(min-width:1600px){.hero-atelier .hero-inner{min-height:740px}.hero-atelier h1{font-size:92px}}
@media(max-width:1200px){.hero-atelier .hero-inner{gap:25px;min-height:650px}.hero-atelier h1{font-size:66px}.hero-atelier .hero-actions{max-width:none}.hero-atelier .hero-actions .button{min-width:0;font-size:10px;padding:12px;gap:10px}.atelier-heading{font-size:7px}.atelier-materials{gap:6px 13px}.atelier-materials a{font-size:10px}.home-sector-grid .sector-text h3{font-size:21px}}
@media(max-width:900px) and (min-width:761px){.hero-atelier .hero-inner{grid-template-columns:1fr 1.1fr;min-height:600px}.hero-atelier h1{font-size:58px}.hero-atelier .hero-actions{flex-direction:column;align-items:flex-start}.atelier-heading{line-height:1.8}.home-sector-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.hero-atelier .hero-inner{grid-template-columns:1fr;gap:38px;padding-block:42px 72px;min-height:0}.hero-atelier h1{font-size:clamp(53px,12vw,76px)}.hero-atelier .hero-actions{flex-direction:row;max-width:none}.hero-atelier .hero-actions .button{font-size:11px;padding:13px 15px;gap:12px}.atelier-heading{font-size:7px;margin-bottom:15px}.atelier-signature{right:12px;font-size:10px;bottom:-15px;padding:8px 12px}.atelier-materials{margin-top:33px;gap:5px 13px}.atelier-materials a{font-size:10px;min-height:40px}.atelier-materials a i{margin-left:1px}.home-sector-grid{row-gap:36px}.home-sector-grid .sector-text h3{font-size:25px}.mixing-lab,.destination-scene{height:315px;margin-top:15px;max-width:400px}.mixing-bowl{width:230px;height:150px}.mixing-notes{bottom:5px;font-size:8px;gap:15px}.mixing-notes span+span:before{margin-right:15px}.colour-spectrum{height:340px}.spectrum-ribbons{inset:65px 12% 75px}.spectrum-foot{font-size:10px}.destination-city{font-size:50px;top:45px}.destination-address{min-width:180px;right:0;bottom:8px;padding:12px 18px}.destination-address strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){.atelier-perspective{transform:none}.atelier-image{transform:none}}
html.motion-paused .atelier-perspective{transform:none}

/* Homepage: spray su misura, distinto dalla sezione tintometrica. */
.custom-colour-section{padding:70px 0;background:#f5f2eb}.custom-colour-card{display:grid;grid-template-columns:1fr 1fr;background:#fff;color:var(--ink);border:1px solid #deded4;overflow:hidden}.custom-colour-copy{padding:55px 54px;align-self:center}.custom-colour-copy .eyebrow{color:#68695d;font-size:9px}.custom-colour-copy .eyebrow span{background:var(--red)}.custom-colour-copy h2{font-size:clamp(35px,3.1vw,48px);margin-bottom:22px;max-width:490px}.custom-colour-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;color:#5a605b;max-width:470px}.custom-colour-tags{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0}.custom-colour-tags span{font-size:10px;padding:7px 12px;border:1px solid #d6d9cf;border-radius:30px;color:#586254}.custom-colour-visual{position:relative;min-height:460px;background:#e6e2da}.custom-colour-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.custom-colour-card:hover .custom-colour-visual img{transform:scale(1.035)}.custom-colour-copy .button{font-size:12px;gap:22px}
@media(max-width:1000px){.custom-colour-copy{padding:36px 30px}.custom-colour-copy h2{font-size:37px}.custom-colour-copy .button{padding:14px 17px}}
@media(max-width:760px){.custom-colour-section{padding:35px 0}.custom-colour-card{grid-template-columns:1fr}.custom-colour-copy{padding:30px 24px}.custom-colour-copy h2{font-size:35px}.custom-colour-copy>p:not(.eyebrow){font-size:13px}.custom-colour-visual{min-height:245px}.custom-colour-tags{margin:22px 0}.custom-colour-tags span{font-size:9px}.custom-colour-copy .button{font-size:10px;gap:12px;padding:14px 15px}}
