/* =========================================================
   DRIP Studio v10.9.6 — final visual overrides
   ========================================================= */
:root{--paper:#F3EFE8;--warm:#EEE5DB;--ink:#0D0D0D;--blue:#83B4D1;--pink:#D6A6B3;--cobalt:#3150FF;--header:86px;--ease:cubic-bezier(.16,1,.3,1)}
html,body,#app,.page{overflow-x:clip}

/* Kill decorative geometric motion. Motion is now typography, image, scroll and interaction. */
.ambient-lottie,.motion-break,.glare-break,.motion-break-grid,.motion-lottie-live,.motion-system,[data-lottie-slot].ambient-lottie{display:none!important}
.interactive-section:before,.statement:before,.page-cta:before,.news-card:before,.project-card:before{display:none!important;content:none!important}

/* Header/logo and stable contrast. */
.brand{width:88px!important;height:38px!important}.brand img{height:33px!important;max-width:88px!important;object-fit:contain!important}
.menu-logo{width:94px!important;height:42px!important}.menu-logo img{height:35px!important;max-width:94px!important}
.foundation-head-mark img{filter:brightness(0) saturate(100%)!important}

/* More whitespace, cleaner hierarchy. */
.section{padding-top:clamp(132px,9vw,190px)!important;padding-bottom:clamp(132px,9vw,190px)!important}
.section.big{padding-top:clamp(156px,11vw,226px)!important;padding-bottom:clamp(156px,11vw,226px)!important}
.section-inner{width:min(100%,1500px)!important}
.section-head{margin-bottom:clamp(58px,5.5vw,96px)!important}
.section-copy p{max-width:37em}

/* No clipped hero typography. */
.hero,.hero-content,.hero-content>div{overflow:visible!important}
.hero h1,.page-brand .hero h1{overflow:visible!important;padding-bottom:.08em!important;line-height:.82!important;max-width:9.3ch!important;text-wrap:balance!important}
.page-brand .hero h1{font-size:clamp(62px,7vw,120px)!important;max-width:8.9ch!important}
.page-brand .hero .hero-content{grid-template-columns:minmax(0,6fr) minmax(0,5fr)!important;gap:64px!important}
.page-brand .hero .hero-media{width:min(55vw,930px)!important}

/* Main morph animation: Ginto -> Playfair Bold Italic powder blue -> Ginto. */
.morph-word1096{display:inline-block;animation:morph1096 4.6s var(--ease) infinite;animation-delay:var(--morph-delay,0s);transform-origin:left bottom;will-change:transform,color}
@keyframes morph1096{0%,28%,100%{font-family:var(--ginto)!important;font-style:normal;font-weight:800;color:inherit;letter-spacing:inherit;transform:translateY(0)}42%,68%{font-family:var(--play)!important;font-style:italic;font-weight:700;color:var(--blue);letter-spacing:-.035em;transform:translateY(-.02em)}}

/* Images are rectangular, orderly, correctly fitted. */
img[data-slot]{max-width:100%}
.media,.hero-media,.menu-preview,.hscroll1096-media,.news-lead1096 figure,.news-item1096 figure,.article-cover1096{overflow:hidden;background:#ddd6ce}
.media img,.hero-media img,.menu-preview img,.hscroll1096-media img,.news-lead1096 figure img,.news-item1096 figure img,.article-cover1096 img{width:100%!important;height:100%!important;object-fit:var(--fit,cover)!important;object-position:var(--fx,50%) var(--fy,50%)!important}
.hscroll1096-media.contain-media,.hscroll1096-media.transparent-device{background:#ded8cf!important}
.hscroll1096-media.contain-media img{object-fit:contain!important;padding:clamp(18px,2vw,34px)!important}
.hscroll1096-media.transparent-device{background:transparent!important}
.hscroll1096-media.transparent-device img{object-fit:contain!important;padding:0!important;background:transparent!important}

/* Existing legacy rails: no random vertical offsets, equal editorial rhythm. */
.rail{gap:28px!important}
.rail-card,.rail-card:nth-child(3n+2),.rail-card:nth-child(3n+3){flex-basis:min(74vw,900px)!important;transform:none!important;margin-top:0!important;min-height:570px!important;border-radius:22px!important;background:var(--warm)!important}
.scroll-linked-rail{top:16vh!important;height:68vh!important;min-height:520px!important}
.scroll-linked-rail .rail-card{height:100%!important}

/* Dedicated vertical-to-horizontal galleries. */
.hscroll1096{position:relative;background:var(--paper);color:var(--ink)}
.hscroll1096.warm{background:var(--warm)}.hscroll1096.dark{background:var(--ink);color:var(--paper)}.hscroll1096.blue{background:var(--blue)}
.hscroll1096-pin{position:sticky;top:0;height:100svh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-items:center;overflow:hidden;padding:calc(var(--header) + 32px) 0 30px}
.hscroll1096-head{display:grid;grid-template-columns:4fr 8fr;gap:55px;align-items:end;margin-bottom:24px}
.hscroll1096-head h2{font-size:clamp(52px,5vw,84px);line-height:.9;letter-spacing:-.055em;margin:0 0 14px;max-width:14ch}
.hscroll1096-head p{font-size:18px;line-height:1.5;max-width:42em;margin:0}
.hscroll1096-viewport{overflow:hidden;padding-left:var(--edge);padding-right:var(--edge);min-height:0}
.hscroll1096-track{display:flex;width:max-content;gap:28px;height:100%;will-change:transform;transform:translate3d(0,0,0)}
.hscroll1096-card{width:min(70vw,930px);height:100%;display:grid;grid-template-columns:minmax(0,8fr) minmax(260px,4fr);background:color-mix(in srgb,currentColor 5%,transparent);border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:24px;overflow:hidden;flex:none}
.hscroll1096-media{height:100%;min-height:380px}
.hscroll1096-copy{padding:30px;display:flex;flex-direction:column;justify-content:flex-end}
.hscroll1096-copy small{font-size:12px;opacity:.62}.hscroll1096-copy h3{font-size:clamp(34px,3.1vw,56px);line-height:.91;letter-spacing:-.045em;margin:13px 0}.hscroll1096-copy p{font-size:17px;line-height:1.5;opacity:.78;margin:0}
.hscroll1096-progress{display:flex;align-items:center;gap:16px;margin-top:18px}.hscroll1096-progress:before{content:'';height:1px;background:color-mix(in srgb,currentColor 20%,transparent);flex:1}.hscroll1096-progress i{position:absolute;left:var(--edge);width:calc(100% - var(--edge)*2);height:2px;background:currentColor;transform-origin:left center;transform:scaleX(0)}.hscroll1096-progress span{font-size:11px;margin-left:auto;opacity:.55;background:inherit;padding-left:12px}

/* Foundation: longer, editorial, photographic. */
.foundation-hero1096{min-height:84svh;padding:calc(var(--header) + 82px) var(--edge) 72px;background:var(--paper);display:flex;align-items:flex-end;border-bottom:1px solid rgba(13,13,13,.12)}
.foundation-hero1096-grid{display:grid;grid-template-columns:4fr 8fr;gap:72px;align-items:end}.foundation-hero1096-brand{align-self:start}.foundation-hero1096-brand img{height:46px;max-width:220px;object-fit:contain;filter:brightness(0) saturate(100%)}
.foundation-hero1096 h1{font-size:clamp(72px,8.6vw,142px);line-height:.8;letter-spacing:-.065em;margin:18px 0 32px}.foundation-hero1096 p{font-size:clamp(22px,1.75vw,30px);line-height:1.25;max-width:27em}
.stats1096{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:44px;padding-top:22px;border-top:1px solid rgba(13,13,13,.14)}.stats1096 b{display:block;font-size:26px}.stats1096 span{display:block;font-size:12px;margin-top:5px;opacity:.62}
.editorial-rows1096{border-top:1px solid color-mix(in srgb,currentColor 18%,transparent)}.editorial-rows1096 article{display:grid;grid-template-columns:54px 4fr 6fr;gap:28px;padding:32px 0;border-bottom:1px solid color-mix(in srgb,currentColor 18%,transparent);align-items:start}.editorial-rows1096 article>span{font-size:12px;color:var(--cobalt)}.editorial-rows1096 h3{font-size:clamp(30px,3vw,52px);line-height:.94;margin:0}.editorial-rows1096 p{font-size:18px;line-height:1.55;margin:0;max-width:42em}
.foundation-fst1096 .btn{margin-top:22px}

/* Type system. */
.type-system1096{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.type-system1096 article{padding-top:22px;border-top:1px solid rgba(13,13,13,.16)}.type-system1096 small{font-size:11px;color:var(--cobalt)}.type-system1096 h3{font-size:clamp(40px,4vw,66px);line-height:.9;margin:18px 0}.type-system1096 h3.play{font-family:var(--play);font-style:italic}.type-system1096 p{font-size:17px;line-height:1.5}.brand-swatches1096{grid-template-columns:repeat(6,1fr)!important}

/* Kick Off: static football graphic, meaningful rather than decorative motion. */
.kickoff-pitch1096{background:#F3EFE8!important;padding-top:76px!important;padding-bottom:110px!important}.pitch1096{position:relative;aspect-ratio:16/7;min-height:470px;background:#1D7D4A;border:2px solid #F3EFE8;outline:14px solid #1D7D4A;box-shadow:0 30px 70px rgba(13,13,13,.18);overflow:hidden}.pitch1096:before{content:'';position:absolute;inset:22px;border:2px solid rgba(243,239,232,.9)}.pitch1096-line.halfway{position:absolute;left:50%;top:22px;bottom:22px;border-left:2px solid rgba(243,239,232,.9)}.pitch1096-circle{position:absolute;left:50%;top:50%;width:18%;aspect-ratio:1;border:2px solid rgba(243,239,232,.9);border-radius:50%;transform:translate(-50%,-50%)}.pitch1096-box{position:absolute;top:31%;bottom:31%;width:13%;border:2px solid rgba(243,239,232,.9)}.pitch1096-box.left{left:22px;border-left:0}.pitch1096-box.right{right:22px;border-right:0}.pitch1096-step{position:absolute;background:#F3EFE8;color:#0D0D0D;padding:10px 13px;display:flex;gap:9px;align-items:center;font-size:12px;font-weight:800;box-shadow:4px 4px 0 rgba(13,13,13,.55)}.pitch1096-step b{color:#3150FF}.pitch1096-step.s1{left:8%;top:14%}.pitch1096-step.s2{left:29%;bottom:16%}.pitch1096-step.s3{right:28%;top:17%}.pitch1096-step.s4{right:8%;bottom:14%}.pitch1096-ball{position:absolute;left:50%;top:50%;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;transform:translate(-50%,-50%);background:#F3EFE8;color:#0D0D0D;font-weight:900;border:5px solid #0D0D0D}.pitch1096-caption{font-size:13px;margin:28px 0 0;opacity:.62}

/* Newsroom: real editorial page. */
.newsroom1096{padding-top:120px!important}.news-lead1096{display:grid;grid-template-columns:7fr 5fr;gap:42px;align-items:end;color:inherit;text-decoration:none;border-bottom:1px solid rgba(13,13,13,.14);padding-bottom:64px;margin-bottom:72px}.news-lead1096 figure{height:clamp(440px,48vw,720px);border-radius:24px}.news-lead1096 h2{font-size:clamp(52px,5.2vw,92px);line-height:.88;letter-spacing:-.06em;margin:17px 0}.news-lead1096 p{font-size:20px;line-height:1.5;max-width:28em}.news-lead1096 b{display:inline-block;margin-top:18px}
.news-grid1096{display:grid;grid-template-columns:repeat(12,1fr);gap:64px 32px}.news-item1096{color:inherit;text-decoration:none}.news-item1096:nth-child(4n+1){grid-column:1/7}.news-item1096:nth-child(4n+2){grid-column:7/13}.news-item1096:nth-child(4n+3){grid-column:2/8}.news-item1096:nth-child(4n){grid-column:8/13}.news-item1096 figure{height:clamp(320px,34vw,520px);border-radius:20px;margin:0 0 22px}.news-item1096 h3{font-size:clamp(34px,3.5vw,58px);line-height:.92;letter-spacing:-.045em;margin:12px 0}.news-item1096 p{font-size:17px;line-height:1.5;max-width:36em}.news-item1096 small{opacity:.58}
.article-hero1096{padding:calc(var(--header) + 110px) var(--edge) 110px;background:var(--paper)}.article-hero1096 .section-inner{max-width:1280px!important}.article-hero1096 h1{font-size:clamp(64px,8vw,126px);line-height:.82;letter-spacing:-.065em;max-width:10ch;margin:18px 0 34px}.article-hero1096 p{font-size:clamp(22px,1.7vw,30px);max-width:30em;line-height:1.3}.article-cover1096{height:min(74vh,820px);margin:0 var(--edge);border-radius:26px}.article-layout1096{display:grid;grid-template-columns:minmax(0,8fr) minmax(270px,3fr);gap:72px;align-items:start;max-width:1260px!important}.article-body1096{font-size:20px;line-height:1.75}.article-body1096>p:first-child{font-size:clamp(27px,2vw,36px);line-height:1.45}.article-body1096 h2{font-size:clamp(42px,4vw,68px);line-height:.92;margin:2em 0 .55em}.article-body1096 blockquote{font-family:var(--play);font-style:italic;font-weight:700;font-size:clamp(36px,4vw,64px);line-height:1.02;margin:1.7em 0;color:var(--blue)}.article-body1096 hr{border:0;border-top:1px solid rgba(13,13,13,.16);margin:70px 0}.article-block-image1096{margin:68px 0}.article-block-image1096 img{width:100%;max-height:680px;object-fit:cover;border-radius:22px}.article-block-image1096 figcaption{font-size:12px;margin-top:10px;opacity:.58}.article-meta1096{position:sticky;top:calc(var(--header) + 32px)}.article-meta1096>div{padding:18px 0;border-top:1px solid rgba(13,13,13,.14)}.article-meta1096 p{margin:5px 0 0;font-size:15px;line-height:1.45}.article-meta1096 .btn{margin-top:24px}

/* Work/project-only graphic stickers. */
.drip-sticker{display:none!important}.drip-peel-sticker.sticker1096{display:block!important;position:absolute!important;width:var(--sticker-size,110px)!important;height:var(--sticker-size,110px)!important;left:var(--sticker-x,82%)!important;top:var(--sticker-y,28%)!important;z-index:80!important;transform:translate3d(var(--drag-x,0px),var(--drag-y,0px),0) rotate(var(--sticker-r,0deg))!important;touch-action:none;user-select:none;filter:drop-shadow(0 17px 25px rgba(13,13,13,.18));transition:filter .25s var(--ease),scale .25s var(--ease)}.drip-peel-sticker.sticker1096:before{content:'';position:absolute;inset:0;background-image:var(--sticker-art);background-size:contain;background-position:center;background-repeat:no-repeat}.drip-peel-sticker.sticker1096:hover{filter:drop-shadow(0 28px 35px rgba(13,13,13,.25));scale:1.04}.drip-peel-sticker.sticker1096.dragging{scale:1.08;z-index:120}
body[data-route="studio"] .drip-peel-sticker,body[data-route="brand"] .drip-peel-sticker,body[data-route="contact"] .drip-peel-sticker,body[data-route="ecosystem"] .drip-peel-sticker,body[data-route^="services"] .drip-peel-sticker{display:none!important}

/* Fixed custom cursor: left/top are real pixel coordinates, no invalid calc multiplication. */
@media(hover:hover) and (pointer:fine){body.cursor1096-on,body.cursor1096-on *,body.cursor1096-on a,body.cursor1096-on button,body.cursor1096-on input,body.cursor1096-on textarea,body.cursor1096-on select{cursor:none!important}}
.drip-cursor-v1096{position:fixed;left:50%;top:50%;width:18px;height:18px;z-index:999999;pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:difference;color:white;will-change:left,top}.drip-cursor-v1096 i{position:absolute;inset:0;border-radius:999px;background:#fff;transition:transform .2s var(--ease),border-radius .2s var(--ease),background .2s ease}.drip-cursor-v1096 span{position:absolute;left:28px;top:50%;transform:translateY(-50%);font-size:11px;font-weight:700;white-space:nowrap;opacity:0;transition:opacity .16s}.drip-cursor-v1096.active i{transform:scale(2.8)}.drip-cursor-v1096.active span{opacity:1}.drip-cursor-v1096[data-kind="drag"] i{border-radius:6px;transform:scale(3.2) rotate(5deg)}.drip-cursor-v1096[data-kind="read"] i{border-radius:999px;transform:scaleX(4.3) scaleY(2.1)}.drip-cursor-v1096[data-kind="media"] i{background:#83B4D1}.drip-cursor-v1096.down i{transform:scale(1.75)!important}
#dripCursor{display:none!important}

/* Full-menu language control. */
.menu-top{display:grid!important;grid-template-columns:auto 1fr auto;gap:24px!important;align-items:center!important}.menu-lang1096{justify-self:end;display:flex;align-items:center;gap:14px;font-size:11px}.menu-lang1096>span{opacity:.6}.menu-lang1096>div{display:flex;gap:5px}.menu-lang1096 button{appearance:none;border:1px solid color-mix(in srgb,currentColor 22%,transparent);background:transparent;color:inherit;padding:7px 9px;border-radius:999px;font-size:10px;font-weight:800}.menu-lang1096 button.active,.menu-lang1096 button:hover{background:currentColor;color:var(--menu-tone)}

/* Manager-injected blocks. */
.managed-image1096 img{width:100%;max-height:760px;object-fit:cover}.managed-image1096 figcaption{font-size:12px;margin-top:10px;opacity:.6}.managed-block1096 blockquote{font-family:var(--play);font-style:italic;font-size:clamp(42px,5vw,78px);line-height:1.02;margin:0}.managed-spacer1096{width:100%}
[data-editor-animation="fade"]{animation:editorFade1096 .8s var(--ease) both}[data-editor-animation="slide"]{animation:editorSlide1096 .9s var(--ease) both}[data-editor-animation="morph"]{animation:morph1096 4.6s var(--ease) infinite}@keyframes editorFade1096{from{opacity:0}to{opacity:1}}@keyframes editorSlide1096{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}

/* Footer stays dark and legible. */
.footer.origin-footer,.footer{background:#0D0D0D!important;color:#F3EFE8!important}.footer a,.footer p,.footer span,.footer em{color:#F3EFE8!important}.footer .origin-kicker,.footer .footer-bottom{border-color:rgba(255,255,255,.12)!important}

@media(max-width:1000px){
  .section,.section.big{padding:110px 21px!important}
  .page-brand .hero .hero-content,.foundation-hero1096-grid,.hscroll1096-head,.news-lead1096,.article-layout1096{grid-template-columns:1fr!important}
  .foundation-hero1096{padding:calc(var(--header) + 60px) 21px 60px}.foundation-hero1096-grid{gap:50px}.foundation-hero1096-brand img{height:34px}.stats1096{grid-template-columns:1fr 1fr}
  .editorial-rows1096 article{grid-template-columns:34px 1fr;gap:12px 18px}.editorial-rows1096 h3,.editorial-rows1096 p{grid-column:2}
  .type-system1096{grid-template-columns:1fr}.brand-swatches1096{grid-template-columns:1fr 1fr!important}
  .hscroll1096{height:auto!important;padding:110px 0}.hscroll1096-pin{position:relative;top:auto;height:auto;padding:0}.hscroll1096-head{padding:0 21px;margin-bottom:40px}.hscroll1096-viewport{padding:0 21px;overflow-x:auto;scroll-snap-type:x mandatory}.hscroll1096-track{transform:none!important;gap:14px}.hscroll1096-card{width:86vw;grid-template-columns:1fr;grid-template-rows:52vh auto;scroll-snap-align:center}.hscroll1096-progress{display:none}
  .pitch1096{aspect-ratio:4/5;min-height:600px}.pitch1096-step.s1{left:7%;top:10%}.pitch1096-step.s2{left:8%;bottom:15%}.pitch1096-step.s3{right:7%;top:17%}.pitch1096-step.s4{right:7%;bottom:8%}
  .news-lead1096 figure{height:52vh}.news-grid1096{display:block}.news-item1096{display:block!important;margin-bottom:60px}.news-item1096 figure{height:48vh}.article-cover1096{margin:0 21px;height:52vh}.article-meta1096{position:static;margin-top:50px}.article-hero1096{padding:calc(var(--header) + 70px) 21px 70px}
  .drip-peel-sticker.sticker1096{display:none!important}
  .menu-top{grid-template-columns:auto auto!important}.menu-lang1096{grid-column:1/-1;justify-self:start;order:3}.menu-close{justify-self:end}
}
@media(prefers-reduced-motion:reduce){.morph-word1096,[data-editor-animation]{animation:none!important}.drip-cursor-v1096{display:none!important}}

/* v10.9.6b — global media order + stronger contrast */
.media-grid,.media-grid.three,.media-grid-contained,.staggered-media{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px!important;align-items:stretch!important}
.media-grid.three>*:nth-child(n),.media-grid>*:nth-child(n),.staggered-media>*:nth-child(n){grid-column:auto!important;margin-top:0!important;transform:none!important}
.media-grid.three .media,.media-grid .media,.staggered-media-item{min-height:clamp(360px,38vw,610px)!important;height:auto!important;border-radius:22px!important;overflow:hidden!important}
.media-grid.three>div,.media-grid>div{min-width:0}
.dark,.section.dark,.hscroll1096.dark{color:var(--paper)!important}.dark h1,.dark h2,.dark h3,.dark p,.dark small,.dark .label,.section.dark h1,.section.dark h2,.section.dark h3,.section.dark p,.section.dark small,.section.dark .label{color:var(--paper)!important}
.blue,.section.blue{color:var(--ink)!important}.red,.section.red{color:#fff!important}.red h1,.red h2,.red h3,.red p,.red small,.red .label{color:#fff!important}
.pink,.section.pink,.yellow,.section.yellow,.warm,.section.warm{color:var(--ink)!important}
.section-copy p,.hscroll1096-copy p,.editorial-rows1096 p{opacity:1!important}
.page-maya{--route-accent:#75C9C0}.page-rosa-pezzella{--route-accent:#D6A6B3}.page-golden-village{--route-accent:#E2BD53}.page-kickoff{--route-accent:#3150FF}.page-trenitalia{--route-accent:#D64C53}.page-fiscoflow{--route-accent:#66866F}
.page-v1096 .btn{transition:transform .3s var(--ease),background-color .3s ease,color .3s ease}.page-v1096 .btn:hover{transform:translateY(-3px)}
.page-v1096 .hscroll1096-card{transition:transform .5s var(--ease),border-color .4s ease}.page-v1096 .hscroll1096-card:hover{transform:translateY(-6px);border-color:color-mix(in srgb,currentColor 32%,transparent)}
.work-view .loop .rail-card{overflow:hidden!important}.work-view .loop .rail-card .media{min-height:320px!important}
@media(max-width:1000px){.media-grid,.media-grid.three,.media-grid-contained,.staggered-media{grid-template-columns:1fr!important}.media-grid.three .media,.media-grid .media,.staggered-media-item{min-height:48vh!important}}

/* v10.9.6c — disciplined motion only */
.type-shift:not(.morph-word1096){animation:none!important;color:inherit!important;font-family:inherit!important;font-style:inherit!important;transform:none!important}
.hscroll1096-media img,.news-lead1096 figure img,.news-item1096 figure img{transform:translate3d(var(--depth-x,0px),calc(var(--depth-y,0px) + var(--depth-scroll,0px)),0) scale(1.045);transition:transform .9s var(--ease);will-change:transform}
.reveal1096{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease) var(--reveal1096-delay,0ms),transform .85s var(--ease) var(--reveal1096-delay,0ms)}.reveal1096.in1096{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal1096{opacity:1!important;transform:none!important}.hscroll1096-media img,.news-lead1096 figure img,.news-item1096 figure img{transform:none!important}}
