:root{--color-bg: #FAF7F2;--color-primary: #F5F0E8;--color-gold: #C9A84C;--color-gold-soft: #B8956A;--color-text: #1A1714;--color-text-muted: #4E4A47;--color-border: rgba(201,168,76,.2);--font-serif: "Cormorant Garamond", Georgia, serif;--font-sans: "Jost", system-ui, sans-serif;--max-w: 1280px;--section-pad: clamp(80px, 10vw, 140px);--ease-out: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-weight:300;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 clamp(24px,5vw,80px)}.t-eyebrow{font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--color-gold)}.t-display{font-family:var(--font-serif);font-size:clamp(52px,8vw,110px);font-weight:300;line-height:1;letter-spacing:-.01em}.t-headline{font-family:var(--font-serif);font-size:clamp(36px,5vw,64px);font-weight:300;line-height:1.1;letter-spacing:-.01em}.t-title{font-family:var(--font-serif);font-size:clamp(24px,3vw,38px);font-weight:400;line-height:1.2}.t-body{font-family:var(--font-sans);font-size:clamp(14px,1.5vw,16px);font-weight:300;line-height:1.8;color:var(--color-text-muted)}.t-quote{font-family:var(--font-serif);font-style:italic;font-size:clamp(20px,2.5vw,28px);font-weight:300;line-height:1.5;color:var(--color-text)}.reveal{opacity:0;transform:translateY(32px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.15s}.reveal-delay-2{transition-delay:.3s}.reveal-delay-3{transition-delay:.45s}.reveal-delay-4{transition-delay:.6s}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:28px 0;transition:background .4s ease,padding .4s ease,backdrop-filter .4s ease}.nav.scrolled{background:#faf7f2eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:18px 0;border-bottom:1px solid var(--color-border)}.nav__inner{display:flex;align-items:center;justify-content:space-between}.nav__brand{font-family:var(--font-serif);font-size:22px;font-weight:400;letter-spacing:.05em;color:var(--color-text)}.nav__brand span{display:block;font-family:var(--font-sans);font-size:9px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--color-gold);margin-top:2px}.nav__links{display:flex;gap:40px;list-style:none}.nav__links a{font-family:var(--font-sans);font-size:12px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text);position:relative;transition:color .3s ease}.nav__links a:after{content:"";position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--color-gold);transition:width .3s ease}.nav__links a:hover{color:var(--color-gold)}.nav__links a:hover:after{width:100%}.nav__links a.active{color:var(--color-gold)}.nav__links a.active:after{width:100%}.nav__burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}.nav__burger span{display:block;width:24px;height:1px;background:var(--color-text);transition:all .3s ease}.nav__burger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav__burger.open span:nth-child(2){opacity:0}.nav__burger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.nav__mobile{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:40px;display:none}.nav__mobile.open{display:flex}.nav__mobile a{font-family:var(--font-serif);font-size:36px;font-weight:300;color:var(--color-text);transition:color .3s ease}.nav__mobile a:hover{color:var(--color-gold)}.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:clamp(60px,8vw,100px);position:relative;overflow:hidden;background:var(--color-primary)}.hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 80% at 70% 40%,rgba(201,168,76,.08) 0%,transparent 70%),radial-gradient(ellipse 40% 60% at 20% 80%,rgba(184,149,106,.06) 0%,transparent 60%)}.hero__ornament{position:absolute;top:15%;right:8%;width:clamp(180px,25vw,360px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(201,168,76,.15);pointer-events:none}.hero__ornament:before{content:"";position:absolute;top:20px;right:20px;bottom:20px;left:20px;border-radius:50%;border:1px solid rgba(201,168,76,.1)}.hero__ornament:after{content:"";position:absolute;top:40px;right:40px;bottom:40px;left:40px;border-radius:50%;border:1px solid rgba(201,168,76,.07)}.hero__content{position:relative;z-index:2}.hero__eyebrow{margin-bottom:24px}.hero__headline{margin-bottom:32px;word-break:break-word;overflow-wrap:break-word}.hero__sub{max-width:480px;margin-bottom:48px}.hero__cta{display:inline-flex;align-items:center;gap:16px;font-family:var(--font-sans);font-size:12px;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text);transition:gap .3s ease,color .3s ease}.hero__cta:after{content:"";display:block;width:48px;height:1px;background:var(--color-gold);transition:width .4s var(--ease-out)}.hero__cta:hover{color:var(--color-gold);gap:24px}.hero__cta:hover:after{width:72px}.hero__scroll{position:absolute;bottom:40px;right:clamp(24px,5vw,80px);display:flex;flex-direction:column;align-items:center;gap:12px;z-index:2}.hero__scroll span{font-family:var(--font-sans);font-size:9px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);writing-mode:vertical-rl}.hero__scroll-line{width:1px;height:60px;background:linear-gradient(to bottom,var(--color-gold),transparent);animation:scrollLine 2s ease-in-out infinite}@keyframes scrollLine{0%,to{opacity:.4;transform:scaleY(1)}50%{opacity:1;transform:scaleY(.6)}}.storytelling{padding:var(--section-pad) 0;background:var(--color-bg)}.storytelling__inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,8vw,120px);align-items:center}.storytelling__visual{position:relative;aspect-ratio:3/4;background:var(--color-primary);overflow:hidden}.storytelling__visual-inner{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 60% at 50% 60%,rgba(201,168,76,.12) 0%,transparent 70%),linear-gradient(160deg,var(--color-primary) 0%,#EDE8DF 100%);display:flex;align-items:center;justify-content:center}.storytelling__shape{width:55%;aspect-ratio:2/3;border-radius:50%/60% 60% 40% 40%;background:linear-gradient(160deg,#c9a84c40,#b8956a26);border:1px solid rgba(201,168,76,.3);position:relative}.storytelling__shape:after{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%/60% 60% 40% 40%;border:1px solid rgba(201,168,76,.15)}.storytelling__gold-line{position:absolute;bottom:0;left:0;width:100%;height:3px;background:linear-gradient(to right,var(--color-gold),transparent)}.storytelling__label{margin-bottom:20px}.storytelling__title{margin-bottom:32px}.storytelling__body p{margin-bottom:20px}.storytelling__body p:last-child{margin-bottom:0}.opere-preview{padding:var(--section-pad) 0;background:var(--color-primary)}.opere-preview__header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:clamp(48px,6vw,80px);gap:24px}.opere-preview__link{font-family:var(--font-sans);font-size:11px;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:var(--color-gold);display:inline-flex;align-items:center;gap:12px;white-space:nowrap;transition:gap .3s ease}.opere-preview__link:after{content:"";display:block;width:32px;height:1px;background:var(--color-gold);transition:width .3s ease}.opere-preview__link:hover{gap:18px}.opere-preview__link:hover:after{width:48px}.opere-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.opera-card{position:relative;aspect-ratio:3/4;background:var(--color-bg);overflow:hidden;cursor:pointer}.opera-card__visual{position:absolute;top:0;right:0;bottom:0;left:0;transition:transform .8s var(--ease-out)}.opera-card:hover .opera-card__visual{transform:scale(1.04)}.opera-card__bg{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.opera-card__shape{width:50%;aspect-ratio:1;border-radius:50%;opacity:.6;transition:opacity .5s ease}.opera-card:hover .opera-card__shape{opacity:.9}.opera-card__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(26,23,20,.75) 0%,transparent 50%);opacity:0;transition:opacity .5s ease}.opera-card:hover .opera-card__overlay{opacity:1}.opera-card__info{position:absolute;bottom:0;left:0;right:0;padding:28px 24px;transform:translateY(8px);opacity:0;transition:all .5s var(--ease-out)}.opera-card:hover .opera-card__info{transform:translateY(0);opacity:1}.opera-card__title{font-family:var(--font-serif);font-size:22px;font-weight:300;color:#faf7f2;margin-bottom:4px}.opera-card__meta{font-family:var(--font-sans);font-size:11px;font-weight:300;letter-spacing:.1em;color:#faf7f2a6}.opera-card__num{position:absolute;top:20px;right:20px;font-family:var(--font-serif);font-size:11px;font-weight:300;color:#c9a84c99;letter-spacing:.1em}.gallery-section{padding:var(--section-pad) 0;background:var(--color-bg)}.gallery-section__header{text-align:center;margin-bottom:clamp(48px,6vw,80px)}.gallery-section__label,.gallery-section__title{margin-bottom:16px}.gallery-section__sub{max-width:480px;margin:0 auto}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto;gap:3px}.gallery-item{position:relative;overflow:hidden;background:var(--color-primary);cursor:pointer}.gallery-item:nth-child(1){grid-column:span 2;aspect-ratio:16/9}.gallery-item:nth-child(2){aspect-ratio:3/4}.gallery-item:nth-child(3){aspect-ratio:3/4}.gallery-item:nth-child(4){aspect-ratio:3/4}.gallery-item:nth-child(5){grid-column:span 2;aspect-ratio:16/9}.gallery-item:nth-child(6){aspect-ratio:1;grid-column:span 1}.gallery-item__inner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;transition:transform .8s var(--ease-out)}.gallery-item:hover .gallery-item__inner{transform:scale(1.04)}.gallery-item__shape{border-radius:50%;opacity:.55;transition:opacity .5s ease}.gallery-item:hover .gallery-item__shape{opacity:.85}.gallery-item__label{position:absolute;bottom:16px;left:20px;font-family:var(--font-serif);font-size:15px;font-weight:300;color:#1a17148c;letter-spacing:.05em;transition:color .3s ease}.gallery-item:hover .gallery-item__label{color:var(--color-gold)}.processo{padding:var(--section-pad) 0;background:var(--color-bg)}.processo__header{text-align:center;margin-bottom:clamp(60px,8vw,100px)}.processo__label{margin-bottom:16px}.processo__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--color-border)}.processo__step{background:var(--color-bg);padding:clamp(32px,4vw,56px) clamp(24px,3vw,40px);position:relative}.processo__step-num{font-family:var(--font-serif);font-size:48px;font-weight:300;color:#c9a84c33;line-height:1;margin-bottom:20px;display:block}.processo__step-title{font-family:var(--font-serif);font-size:22px;font-weight:400;margin-bottom:16px;color:var(--color-text)}.processo__step-text{font-size:14px;line-height:1.8;color:var(--color-text-muted)}.processo__step:before{content:"";position:absolute;top:0;left:0;width:0;height:2px;background:var(--color-gold);transition:width .6s var(--ease-out)}.processo__step:hover:before{width:100%}.about-page{padding-top:calc(var(--section-pad) + 80px);padding-bottom:var(--section-pad)}.about-page__hero{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,8vw,120px);align-items:start;margin-bottom:clamp(80px,10vw,140px)}.about-page__visual{position:relative;aspect-ratio:3/4;background:var(--color-primary);overflow:hidden}.about-page__visual-inner{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(160deg,var(--color-primary) 0%,#E8E0D4 100%);display:flex;align-items:center;justify-content:center}.about-page__portrait-shape{width:65%;aspect-ratio:2/3;border-radius:50% 50% 45% 45%/55% 55% 45% 45%;background:linear-gradient(160deg,#c9a84c33,#b8956a1a);border:1px solid rgba(201,168,76,.25)}.about-page__gold-accent{position:absolute;bottom:32px;right:32px;width:80px;height:80px;border-radius:50%;border:1px solid rgba(201,168,76,.3)}.about-page__text{padding-top:20px}.about-page__eyebrow{margin-bottom:16px}.about-page__title{word-break:break-word;overflow-wrap:break-word;margin-bottom:40px}.about-page__bio p{margin-bottom:24px;font-size:15px;line-height:1.9;color:var(--color-text-muted)}.about-page__bio p:last-child{margin-bottom:0}.about-page__quote-section{background:var(--color-primary);padding:clamp(60px,8vw,100px) 0;text-align:center}.about-page__quote{max-width:700px;margin:0 auto 16px}.about-page__quote-author{font-family:var(--font-sans);font-size:11px;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:var(--color-gold)}.opere-page{padding-top:calc(var(--section-pad) + 80px);padding-bottom:var(--section-pad)}.opere-page__header{text-align:center;margin-bottom:clamp(60px,8vw,100px)}.opere-page__eyebrow{margin-bottom:16px}.opere-page__title{margin-bottom:20px}.opere-page__sub{max-width:500px;margin:0 auto}.opere-full-grid{display:grid;grid-template-columns:1fr;gap:clamp(48px,6vw,80px)}.opera-full-card{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,4vw,56px);align-items:start;padding-bottom:clamp(48px,6vw,80px);border-bottom:1px solid var(--color-border)}.opera-full-card:last-child{border-bottom:none;padding-bottom:0}.opera-full-card:nth-child(2n) .opera-full-card__visual{order:2}.opera-full-card:nth-child(2n) .opera-full-card__text{order:1}.opera-full-card__visual{aspect-ratio:3/4;background:var(--color-primary);position:relative;overflow:hidden}.opera-full-card__visual-inner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.opera-full-card__shape{width:55%;aspect-ratio:1;border-radius:50%;opacity:.7}.opera-full-card__text{padding-top:16px}.opera-full-card__num{font-family:var(--font-serif);font-size:13px;font-weight:300;color:#c9a84c80;letter-spacing:.1em;margin-bottom:12px;display:block}.opera-full-card__title{font-family:var(--font-serif);font-size:clamp(28px,3vw,40px);font-weight:300;margin-bottom:8px;line-height:1.1}.opera-full-card__material{font-family:var(--font-sans);font-size:11px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--color-gold);margin-bottom:20px}.opera-full-card__desc{font-size:14px;line-height:1.9;color:var(--color-text-muted)}.opera-full-card__year{margin-top:24px;font-family:var(--font-serif);font-size:13px;font-style:italic;color:#1a171459}.contatti-page{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:120px;padding-bottom:var(--section-pad);background:var(--color-primary);position:relative;overflow:hidden}.contatti-page__bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 50% 70% at 80% 30%,rgba(201,168,76,.07) 0%,transparent 60%),radial-gradient(ellipse 40% 50% at 10% 80%,rgba(184,149,106,.05) 0%,transparent 50%);pointer-events:none}.contatti-page__inner{position:relative;z-index:2;max-width:640px}.contatti-page__title{word-break:break-word;overflow-wrap:break-word;margin-bottom:32px}.contatti-page__sub{margin-bottom:48px;max-width:480px}.contatti-page__cta{display:inline-flex;align-items:center;gap:16px;padding:18px 40px;border:1px solid var(--color-gold);font-family:var(--font-sans);font-size:12px;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text);background:transparent;transition:color .4s ease;position:relative;isolation:isolate;overflow:hidden}.contatti-page__cta:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-gold);transform:translate(-100%);transition:transform .4s var(--ease-out);z-index:-1}.contatti-page__cta:hover{color:var(--color-bg)}.contatti-page__cta:hover:before{transform:translate(0)}.contatti-page__note{margin-top:32px;font-size:12px;letter-spacing:.08em;color:var(--color-text-muted)}.contatti-page__ornament{position:absolute;bottom:10%;right:8%;width:clamp(200px,28vw,400px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(201,168,76,.12);pointer-events:none}.contatti-page__ornament:before{content:"";position:absolute;top:30px;right:30px;bottom:30px;left:30px;border-radius:50%;border:1px solid rgba(201,168,76,.08)}.footer{background:var(--color-text);color:#faf7f280;padding:48px 0}.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer__brand{font-family:var(--font-serif);font-size:20px;font-weight:300;color:#faf7f2e6;letter-spacing:.05em}.footer__tagline{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#c9a84c99;margin-top:4px}.footer__copy{font-size:11px;letter-spacing:.05em}.footer__link a{font-family:var(--font-sans);font-size:11px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:#c9a84cb3;transition:color .3s ease}.footer__link a:hover{color:var(--color-gold)}.gold-divider{width:48px;height:1px;background:var(--color-gold);margin:24px 0}@media (max-width: 1024px){.opere-grid,.processo__steps,.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-item:nth-child(1){grid-column:span 2;aspect-ratio:16/9}.gallery-item:nth-child(5){grid-column:span 2;aspect-ratio:16/9}.gallery-item:nth-child(6){grid-column:span 1}.opera-full-card{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.nav__links{display:none}.nav__burger{display:flex}.storytelling__inner{grid-template-columns:1fr}.storytelling__visual{aspect-ratio:4/3}.opere-grid{grid-template-columns:1fr}.opere-preview__header{flex-direction:column;align-items:flex-start}.processo__steps,.gallery-grid{grid-template-columns:1fr}.gallery-item:nth-child(1),.gallery-item:nth-child(5){grid-column:span 1;aspect-ratio:4/3}.gallery-item:nth-child(6){grid-column:span 1}.about-page__hero{grid-template-columns:1fr}.about-page__visual{aspect-ratio:4/3}.footer__inner{flex-direction:column;text-align:center}.opera-full-card{grid-template-columns:1fr}.opera-full-card:nth-child(2n) .opera-full-card__visual{order:0}.opera-full-card:nth-child(2n) .opera-full-card__text{order:0}}
