/* =========================================================
   DRIP Studio v10.9.7 — Editorial / interaction correction
   ========================================================= */
:root{
  --paper:#F3EFE8;
  --ink:#0D0D0D;
  --powder-blue:#83B4D1;
  --powder-pink:#D6A6B3;
  --cobalt:#3150FF;
  --orange:#EF643C;
  --green:#66866F;
  --yellow:#E2BD53;
  --red:#D64C53;
  --warm:#EEE5DB;
}
html,body,#app,.page{max-width:100%;overflow-x:clip}
body{background:var(--paper);color:var(--ink)}

/* Keep the site clean: no random animated rectangles, circles, lines or Lottie decorations. */
.ambient-lottie,.motion-break,.glare-break,.motion-break-grid,.motion-lottie-live,.motion-system,.motion-decoration,.decorative-shape,
.page:before,.page:after,.hero:before,.hero:after,.section:before,.section:after{pointer-events:none}
.ambient-lottie,.motion-break,.glare-break,.motion-break-grid,.motion-lottie-live,.motion-system,.motion-decoration,.decorative-shape{display:none!important}

/* Intentional coloured blocks only. */
.tone-paper{background:var(--paper)!important;color:var(--ink)!important}
.tone-warm{background:var(--warm)!important;color:var(--ink)!important}
.tone-blue{background:var(--powder-blue)!important;color:var(--ink)!important}
.tone-pink{background:var(--powder-pink)!important;color:var(--ink)!important}
.tone-green{background:var(--green)!important;color:var(--paper)!important}
.tone-yellow{background:var(--yellow)!important;color:var(--ink)!important}
.tone-red{background:var(--red)!important;color:var(--paper)!important}
.tone-green .label,.tone-green h2,.tone-green h3,.tone-green p,.tone-green a,
.tone-red .label,.tone-red h2,.tone-red h3,.tone-red p,.tone-red a{color:var(--paper)!important}
.section{padding-block:clamp(120px,9.6vw,180px)!important}
.section.big{padding-block:clamp(150px,12vw,220px)!important}
.section-inner{width:min(calc(100% - 2 * var(--edge)),1540px)!important;margin-inline:auto!important}
.grid58{gap:clamp(55px,6vw,120px)!important;align-items:start!important}
.section-copy{max-width:720px!important}
.section-copy p{font-size:clamp(18px,1.18vw,22px)!important;line-height:1.58!important;margin:0 0 1.3em!important;opacity:1!important}
.section-head{margin-bottom:clamp(55px,6vw,100px)!important}
.section-head h2,.h2{overflow:visible!important;text-wrap:balance!important}

/* Header / logo / language. */
.header-logo img,#headerLogo{height:clamp(31px,2.25vw,40px)!important;width:auto!important;max-width:94px!important;object-fit:contain!important}
.main-nav{gap:clamp(20px,2.25vw,44px)!important}
.menu-lang1097{display:flex;align-items:center;gap:14px;justify-self:end;color:var(--menu-ink,currentColor)}
.menu-lang1097>span{font-size:11px;opacity:.62}
.menu-lang1097>div{display:flex;gap:6px;flex-wrap:wrap}
.menu-lang1097 button{appearance:none;border:1px solid color-mix(in srgb,currentColor 26%,transparent);background:transparent;color:inherit;border-radius:999px;padding:8px 10px;font:inherit;font-size:10px;font-weight:800;line-height:1;transition:background .2s,color .2s,transform .2s}
.menu-lang1097 button:hover,.menu-lang1097 button.active{background:currentColor;color:var(--menu-tone,var(--powder-blue));transform:translateY(-1px)}

/* Hero clipping correction: Brand and all display titles keep their full glyphs. */
.hero{overflow:hidden!important}
.hero-content{overflow:visible!important}
.hero h1,.hero h1 em,.page-brand .hero h1,.page-brand .hero h1 em{overflow:visible!important;clip-path:none!important;text-wrap:balance!important;padding-bottom:.08em!important}
.page-brand .hero h1{font-size:clamp(60px,7.2vw,126px)!important;line-height:.79!important;max-width:9.8ch!important}
.page-brand .hero-copy{align-self:end!important}
.hero-copy p{line-height:1.24!important}

/* Only one controlled typography morph. */
.type-shift:not(.morph-word1097),.morph-word1096{animation:none!important;color:inherit!important;font-family:inherit!important;font-style:inherit!important;transform:none!important}
.morph-word1097{display:inline-block!important;animation:morph1097 4.8s cubic-bezier(.22,.8,.22,1) infinite;animation-delay:var(--morph-delay,0s);transform-origin:left bottom;will-change:transform,color}
@keyframes morph1097{
  0%,25%,100%{font-family:var(--ginto)!important;font-style:normal;font-weight:700;color:inherit;letter-spacing:-.055em;transform:translateY(0)}
  42%,64%{font-family:var(--play)!important;font-style:italic;font-weight:700;color:var(--powder-blue)!important;letter-spacing:-.042em;transform:translateY(-.02em)}
}

/* Main horizontal storytelling system: vertical scroll drives horizontal movement. */
.hs1097{position:relative!important;overflow:clip!important;margin:0!important;background:var(--paper);color:var(--ink)}
.hs1097.tone-paper{background:var(--paper)}
.hs1097.tone-warm{background:var(--warm)}
.hs1097.tone-blue{background:var(--powder-blue)}
.hs1097.tone-pink{background:var(--powder-pink)}
.hs1097.tone-green{background:var(--green);color:var(--paper)}
.hs1097.tone-yellow{background:var(--yellow)}
.hs1097.tone-red{background:var(--red);color:var(--paper)}
.hs1097-pin{position:sticky;top:0;height:100svh;min-height:680px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-content:center;padding:clamp(92px,8vh,125px) 0 clamp(42px,5vh,64px);overflow:hidden}
.hs1097-head{display:grid;grid-template-columns:3.6fr 8.4fr;gap:55px;align-items:start;margin-bottom:clamp(30px,4vh,56px)!important}
.hs1097-head>div{max-width:920px}
.hs1097-head h2{font-size:clamp(48px,5.35vw,96px);line-height:.86;letter-spacing:-.065em;margin:0 0 18px;text-wrap:balance;overflow:visible}
.hs1097-head p{font-size:clamp(17px,1.15vw,21px);line-height:1.46;max-width:46em;margin:0}
.hs1097-viewport{overflow:hidden;padding-left:var(--edge);padding-right:var(--edge)}
.hs1097-track{height:100%;display:flex;gap:clamp(21px,2vw,34px);align-items:stretch;width:max-content;transform:translate3d(0,0,0);will-change:transform}
.hs1097-card{flex:0 0 min(72vw,980px);height:100%;min-height:0;display:grid;grid-template-columns:minmax(0,8fr) minmax(250px,4fr);background:color-mix(in srgb,currentColor 4%,transparent);border:1px solid color-mix(in srgb,currentColor 15%,transparent);border-radius:28px;overflow:hidden;scroll-snap-align:start;box-shadow:none!important;transform:none!important;margin:0!important}
.hs1097-media{min-height:0;height:100%;margin:0;background:color-mix(in srgb,var(--paper) 76%,transparent);overflow:hidden;display:grid;place-items:center}
.hs1097-media img{width:100%;height:100%;object-fit:var(--fit,cover);object-position:var(--fx,50%) var(--fy,50%);display:block;transform:scale(1.001);transition:transform .75s var(--ease)}
.hs1097-media.contain img{object-fit:contain!important;padding:clamp(20px,3vw,48px)}
.hs1097-media.transparent{background:transparent!important}
.hs1097-media.transparent img{padding:clamp(18px,2vw,34px)!important}
.hs1097-card:hover .hs1097-media img{transform:scale(1.025)}
.hs1097-copy{display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(28px,3vw,48px)}
.hs1097-copy small{font-size:11px;font-weight:800;opacity:.64;margin-bottom:auto}
.hs1097-copy h3{font-size:clamp(34px,3.15vw,58px);line-height:.89;letter-spacing:-.055em;margin:24px 0 14px;text-wrap:balance}
.hs1097-copy p{font-size:clamp(16px,1.05vw,19px);line-height:1.46;margin:0;max-width:27em}
.hs1097-foot{display:flex;align-items:center;gap:20px;margin-top:clamp(24px,3vh,42px)!important}
.hs1097-progress{height:2px;flex:1;background:color-mix(in srgb,currentColor 18%,transparent);overflow:hidden}
.hs1097-progress i{display:block;width:100%;height:100%;background:currentColor;transform:scaleX(0);transform-origin:left center;will-change:transform}
.hs1097-foot span{font-size:11px;font-weight:700;opacity:.58;white-space:nowrap}
.hs1097.compact .hs1097-card{flex-basis:min(62vw,820px)}
.hs1097.compact .hs1097-track{justify-content:flex-start}
.hs1097.compact .hs1097-media{min-height:420px}
.legacy-hs1097>.hs1097-pin{background:inherit}
.legacy-hs1097 .legacy-card1097{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}
.legacy-hs1097 .legacy-card1097>.hs1097-copy{min-height:150px}
.legacy-hs1097 .staggered-media,.legacy-hs1097 .photo-sequence-v1094{display:flex!important;gap:clamp(21px,2vw,34px)!important;width:max-content!important;transform:translate3d(0,0,0)!important}
.legacy-hs1097 .staggered-media>*:nth-child(n),.legacy-hs1097 .photo-sequence-v1094>*:nth-child(n){margin:0!important;transform:none!important;position:relative!important;inset:auto!important}

/* Explicitly kill old staggered-photo behaviour everywhere else. */
.staggered-media>*:nth-child(n),.photo-sequence-v1094>*:nth-child(n){margin-top:0!important;translate:none!important;rotate:0deg!important}
.media-grid>*:nth-child(n){margin-top:0!important;transform:none!important}

/* Placeholder remains useful until the real photo is supplied. */
.media-placeholder1097{width:100%;height:100%;min-height:320px;background:linear-gradient(135deg,color-mix(in srgb,var(--powder-blue) 24%,var(--paper)),color-mix(in srgb,var(--powder-pink) 26%,var(--paper)));display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:34px;gap:5px;color:var(--ink);text-align:left}
.media-placeholder1097 span,.media-placeholder1097 small{font-size:11px;font-weight:700;opacity:.6}
.media-placeholder1097 strong{font-size:clamp(24px,2.2vw,38px);line-height:1;word-break:break-word}
body.editor-mode .media-placeholder1097{outline:2px dashed var(--cobalt);outline-offset:-8px;cursor:pointer!important}

/* Foundation: long, editorial, not a short AI landing page. */
.foundation-hero1097{min-height:88svh;background:var(--paper);padding:calc(var(--header) + clamp(70px,8vw,130px)) 0 clamp(70px,8vw,120px);display:flex;align-items:flex-end;border-bottom:1px solid rgba(13,13,13,.12)}
.foundation-hero1097-grid{display:grid;grid-template-columns:3.8fr 8.2fr;gap:clamp(55px,7vw,130px);align-items:end}
.foundation-lock1097{align-self:start}.foundation-lock1097 img{height:44px;width:auto;max-width:250px;object-fit:contain;filter:brightness(0) saturate(100%)!important}
.foundation-hero1097 h1{font-size:clamp(74px,9.4vw,160px);line-height:.78;letter-spacing:-.07em;margin:20px 0 34px;max-width:7.5ch;text-wrap:balance}
.foundation-hero1097 p{font-size:clamp(21px,1.75vw,31px);line-height:1.3;max-width:29em;margin:0}
.metrics1097{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:55px;border-top:1px solid rgba(13,13,13,.14);padding-top:18px}
.metrics1097 b{display:block;font-size:clamp(23px,2vw,34px);line-height:1;margin-bottom:6px}.metrics1097 span{font-size:12px;opacity:.6}
.foundation .foundation-subnav{background:var(--paper)!important}

/* Rows: strong editorial rhythm, no fake cards. */
.rows1097{display:grid;grid-template-columns:1fr;border-top:1px solid color-mix(in srgb,currentColor 22%,transparent)}
.rows1097 article{display:grid;grid-template-columns:100px minmax(0,1fr);gap:34px;padding:clamp(28px,3vw,48px) 0;border-bottom:1px solid color-mix(in srgb,currentColor 18%,transparent);align-items:start}
.rows1097 article>span{font-size:12px;font-weight:800;opacity:.55}
.rows1097 h3{font-size:clamp(34px,3vw,58px);line-height:.9;letter-spacing:-.055em;margin:0 0 10px;max-width:12em}
.rows1097 p{font-size:clamp(17px,1.1vw,20px);line-height:1.48;margin:0;max-width:46em}

/* Brand type system / colours. */
.type-system1097{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.type-system1097 article{padding-top:21px;border-top:1px solid rgba(13,13,13,.16)}
.type-system1097 small{font-size:11px;font-weight:800;color:var(--cobalt)}
.type-system1097 h3{font-size:clamp(42px,4vw,72px);line-height:.86;letter-spacing:-.06em;margin:20px 0}
.type-system1097 h3.play{font-family:var(--play);font-style:italic}
.type-system1097 p{font-size:17px;line-height:1.5}
.brand-swatches1097{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.brand-swatches1097 .swatch{min-height:180px!important;border-radius:0!important}

/* FiscoFlow */
.pills1097{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}
.pills1097 span{padding:10px 13px;border:1px solid rgba(13,13,13,.18);border-radius:999px;font-size:14px;font-weight:700;background:rgba(255,255,255,.2)}
.pricing1097{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}
.pricing1097 article{padding:clamp(30px,3vw,50px);border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);min-height:480px}
.pricing1097 article>span{font-size:11px;opacity:.55}.pricing1097 h3{font-size:clamp(36px,3.2vw,56px);margin:60px 0 12px}.pricing1097 b{font-size:clamp(28px,2.4vw,42px);display:block;margin-bottom:34px}.pricing1097 ul{padding-left:18px}.pricing1097 li{margin:0 0 11px;line-height:1.4}

/* Trenitalia: only one transparent phone mockup. */
.trenitalia-replay1097{overflow:hidden}
.single-device1097{min-height:560px;display:grid;place-items:center;background:transparent!important;margin:0}
.single-device1097 img{width:100%;height:100%;max-height:680px;object-fit:contain!important;background:transparent!important;padding:0!important;filter:drop-shadow(0 28px 38px rgba(13,13,13,.13))}

/* Kick Off: football graphic is a field/system, not a toy sticker collage. */
.pitch-section1097{background:var(--paper)!important;padding-block:clamp(100px,8vw,140px)!important}
.pitch1097{position:relative;aspect-ratio:16/7;min-height:520px;background:linear-gradient(180deg,#247D4E,#17663D);border-radius:28px;overflow:hidden;box-shadow:0 30px 80px rgba(13,13,13,.16)}
.pitch1097:before{content:'';position:absolute;inset:24px;border:2px solid rgba(243,239,232,.94);border-radius:17px}
.pitch1097:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 9%,rgba(0,0,0,.025) 9% 18%);pointer-events:none}
.pitch-line.half{position:absolute;left:50%;top:24px;bottom:24px;border-left:2px solid rgba(243,239,232,.94);z-index:2}
.pitch-circle{position:absolute;left:50%;top:50%;width:18%;aspect-ratio:1;border:2px solid rgba(243,239,232,.94);border-radius:50%;transform:translate(-50%,-50%);z-index:2}
.pitch-box{position:absolute;top:30%;bottom:30%;width:13%;border:2px solid rgba(243,239,232,.94);z-index:2}.pitch-box.left{left:24px;border-left:0}.pitch-box.right{right:24px;border-right:0}
.play-route{position:absolute;z-index:4;display:flex;align-items:center;gap:10px;background:rgba(13,13,13,.7);backdrop-filter:blur(8px);color:white;padding:10px 13px;font-size:12px;font-weight:800;border:1px solid rgba(255,255,255,.18)}
.play-route i{width:8px;height:8px;border-radius:50%;background:var(--powder-blue)}
.play-route.r1{left:8%;top:15%}.play-route.r2{left:28%;bottom:14%}.play-route.r3{right:28%;top:16%}.play-route.r4{right:8%;bottom:15%}
.ball1097{position:absolute;left:50%;top:50%;z-index:5;width:82px;height:82px;border-radius:50%;background:var(--paper);border:6px solid var(--ink);display:grid;place-items:center;font-size:18px;font-weight:900;transform:translate(-50%,-50%);box-shadow:0 12px 24px rgba(13,13,13,.22)}
.pitch-caption1097{font-size:14px;opacity:.64;margin:24px 0 0}

/* Newsroom: magazine-like but aligned, no staggered photos. */
.newsroom1097 .section-inner{width:min(calc(100% - 2 * var(--edge)),1500px)!important}
.news-lead1097{display:grid;grid-template-columns:minmax(0,7.3fr) minmax(300px,4.7fr);gap:clamp(34px,5vw,82px);align-items:end;color:inherit;text-decoration:none;padding-bottom:70px;border-bottom:1px solid rgba(13,13,13,.16);margin-bottom:70px}
.news-lead1097 figure{height:clamp(420px,50vw,760px);margin:0;overflow:hidden;background:var(--warm)}
.news-lead1097 figure img,.news-item1097 figure img,.article-cover1097 img{width:100%;height:100%;object-fit:var(--fit,cover);object-position:var(--fx,50%) var(--fy,50%);display:block}
.news-lead1097 h2{font-size:clamp(48px,5vw,92px);line-height:.88;letter-spacing:-.065em;margin:16px 0;text-wrap:balance}
.news-lead1097 p{font-size:clamp(18px,1.2vw,22px);line-height:1.5;max-width:32em}
.news-grid1097{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px 34px}
.news-item1097{display:grid;grid-template-rows:auto auto;color:inherit;text-decoration:none;border-top:1px solid rgba(13,13,13,.16);padding-top:18px}
.news-item1097 figure{height:clamp(300px,32vw,520px);margin:0 0 24px;overflow:hidden;background:var(--warm)}
.news-item1097 h3{font-size:clamp(34px,3.1vw,56px);line-height:.91;letter-spacing:-.055em;margin:9px 0 13px}
.news-item1097 p{font-size:17px;line-height:1.5;max-width:38em}
.article-hero1097{padding:calc(var(--header) + 100px) 0 110px;background:var(--ink);color:var(--paper)}
.article-hero1097 h1{font-size:clamp(66px,8vw,138px);line-height:.8;letter-spacing:-.07em;max-width:10ch;margin:26px 0 34px;text-wrap:balance}
.article-hero1097 p{font-size:clamp(21px,1.7vw,30px);line-height:1.4;max-width:34em}
.article-cover1097{height:min(82vh,900px);background:var(--warm);overflow:hidden}
.article-layout1097{display:grid;grid-template-columns:minmax(0,8fr) minmax(300px,4fr);gap:clamp(55px,7vw,120px);align-items:start}
.article-body1097{max-width:860px}.article-body1097 p{font-size:clamp(19px,1.25vw,23px);line-height:1.75;margin:0 0 1.6em}.article-body1097 p.lead{font-size:clamp(27px,2vw,37px);line-height:1.45}.article-body1097 h2{font-size:clamp(42px,4vw,72px);line-height:.9;letter-spacing:-.06em;margin:1.2em 0 .5em}.article-body1097 blockquote{font-family:var(--play);font-style:italic;font-size:clamp(36px,4vw,68px);line-height:1.03;margin:1.2em 0;padding-left:32px;border-left:4px solid var(--powder-blue)}
.article-media1097{margin:60px 0}.article-media1097 img{width:100%;max-height:720px;object-fit:cover}.article-media1097 figcaption{font-size:13px;opacity:.6;margin-top:12px}
.article-meta1097{position:sticky;top:calc(var(--header) + 34px)}.article-meta1097>div{padding:20px 0;border-top:1px solid rgba(13,13,13,.14)}

/* Stickers only where runtime allows them: Foundation + individual case studies. */
.drip-sticker{display:none!important}.drip-peel-sticker.sticker1097{position:absolute!important;left:var(--st-x)!important;top:var(--st-y)!important;width:var(--st-size)!important;height:var(--st-size)!important;z-index:90!important;transform:translate3d(var(--drag-x,0),var(--drag-y,0),0) rotate(var(--st-r))!important;touch-action:none;user-select:none;filter:drop-shadow(0 18px 28px rgba(13,13,13,.17))}
.drip-peel-sticker.sticker1097:before{content:'';position:absolute;inset:0;background:var(--st-art) center/contain no-repeat}
.drip-peel-sticker.sticker1097.dragging{filter:drop-shadow(0 28px 38px rgba(13,13,13,.25));scale:1.05}
body:not([data-route^="foundation"]):not([data-route^="projects-"]) .drip-peel-sticker{display:none!important}

/* Cursor: actual pointer position is written by inline transform. */
@media(hover:hover) and (pointer:fine){body.cursor1097-on,body.cursor1097-on *{cursor:none!important}}
.cursor1097{position:fixed!important;left:0!important;top:0!important;width:18px;height:18px;z-index:9999999!important;pointer-events:none!important;mix-blend-mode:difference;color:white;will-change:transform;transform:translate3d(50vw,50vh,0) translate(-50%,-50%)}
.cursor1097 i{position:absolute;inset:0;border-radius:999px;background:white;transition:scale .18s var(--ease),border-radius .18s var(--ease),background .18s}
.cursor1097 span{position:absolute;left:28px;top:50%;translate:0 -50%;white-space:nowrap;font-size:11px;font-weight:800;opacity:0;transition:opacity .15s}
.cursor1097.active i{scale:2.8}.cursor1097.active span{opacity:1}.cursor1097[data-kind="drag"] i{border-radius:5px;scale:3.1}.cursor1097[data-kind="read"] i{scale:4.1 2;border-radius:999px}.cursor1097[data-kind="view"] i{background:var(--powder-blue)}.cursor1097.down i{scale:1.6!important}

/* Site Manager applied element animations. */
[data-editor-animation="fade"]{animation:managedFade1097 .7s var(--ease) both}
[data-editor-animation="slide"]{animation:managedSlide1097 .75s var(--ease) both}
[data-editor-animation="morph"]{animation:morph1097 4.8s cubic-bezier(.22,.8,.22,1) infinite}
@keyframes managedFade1097{from{opacity:0}to{opacity:1}}
@keyframes managedSlide1097{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
.managed1097 blockquote{font-family:var(--play);font-size:clamp(44px,5vw,86px);font-style:italic;line-height:1.03;margin:0}
.managed-media1097{min-height:500px;margin:0;background:var(--warm);overflow:hidden}.managed-media1097 img{width:100%;height:100%;object-fit:cover}

/* Big footer statement restored. */
.footer1097{background:var(--ink)!important;color:var(--paper)!important;padding-block:clamp(80px,8vw,130px) 50px!important;overflow:hidden}
.footer1097 .footer-inner{display:block!important;width:min(calc(100% - 2 * var(--edge)),1540px)!important;margin:auto!important}
.footer1097 .origin-kicker{display:flex;justify-content:space-between;gap:30px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.13);font-size:12px;color:var(--paper)!important;opacity:.72}
.footer1097 .origin-word{padding:clamp(60px,7vw,110px) 0 clamp(70px,8vw,130px)!important;margin:0!important;overflow:visible!important}
.footer1097 .origin-word span,.footer1097 .origin-word em{display:block!important;color:var(--paper)!important;letter-spacing:-.075em!important;line-height:.76!important;white-space:normal!important;text-transform:none!important;overflow:visible!important}
.footer1097 .origin-word span{font-family:var(--ginto)!important;font-style:normal!important;font-size:clamp(72px,10.4vw,182px)!important;font-weight:700!important;opacity:1!important}
.footer1097 .origin-word em{font-family:var(--play)!important;font-style:italic!important;font-size:clamp(74px,10.8vw,190px)!important;margin-top:.08em!important;transform:none!important;animation:none!important}
.footer1097 .footer-top{display:grid!important;grid-template-columns:6fr 3fr 3fr!important;gap:55px;padding:34px 0;border-top:1px solid rgba(255,255,255,.13)!important}
.footer1097 .footer-top p,.footer1097 .footer-top a{color:var(--paper)!important;line-height:1.55!important}
.footer1097 .footer-bottom{display:flex;justify-content:space-between;gap:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.13)!important;color:var(--paper)!important;font-size:12px}

/* Responsive */
@media(max-width:1000px){
  .section{padding-block:100px!important}.section.big{padding-block:120px!important}.section-inner{width:calc(100% - 42px)!important}.grid58{grid-template-columns:1fr!important;gap:44px!important}
  .main-nav{display:none!important}.header-logo img,#headerLogo{height:31px!important}
  .hs1097{height:auto!important;padding-block:100px!important}.hs1097-pin{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;display:block!important;padding:0!important}.hs1097-head{grid-template-columns:1fr!important;gap:20px!important;margin-bottom:42px!important}.hs1097-viewport{overflow-x:auto!important;padding-inline:21px!important;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.hs1097-track{transform:none!important;gap:14px!important}.hs1097-card{flex-basis:86vw!important;height:auto!important;min-height:70vh!important;grid-template-columns:1fr!important;grid-template-rows:minmax(48vh,1fr) auto!important}.hs1097-media{min-height:48vh!important}.hs1097-foot{display:none!important}
  .foundation-hero1097{min-height:auto;padding:calc(var(--header) + 72px) 0 76px}.foundation-hero1097-grid{grid-template-columns:1fr!important;gap:55px}.foundation-hero1097 h1{font-size:clamp(68px,18vw,104px)}.metrics1097{grid-template-columns:1fr 1fr!important}
  .rows1097 article{grid-template-columns:54px 1fr!important;gap:18px!important}
  .type-system1097,.pricing1097,.news-grid1097{grid-template-columns:1fr!important}.brand-swatches1097{grid-template-columns:1fr 1fr!important}.pricing1097 article{min-height:0!important}
  .news-lead1097,.article-layout1097{grid-template-columns:1fr!important}.news-lead1097 figure{height:56vh!important}.article-meta1097{position:relative;top:auto}
  .pitch1097{min-height:620px;aspect-ratio:auto}.play-route.r1{left:8%;top:10%}.play-route.r2{left:8%;bottom:20%}.play-route.r3{right:8%;top:21%}.play-route.r4{right:8%;bottom:9%}
  .footer1097 .origin-kicker{display:block}.footer1097 .origin-kicker span{display:block;margin-bottom:8px}.footer1097 .origin-word span,.footer1097 .origin-word em{font-size:clamp(62px,18vw,102px)!important;line-height:.8!important}.footer1097 .footer-top{grid-template-columns:1fr!important;gap:28px!important}.footer1097 .footer-bottom{display:grid!important;gap:10px!important}
  .drip-peel-sticker.sticker1097{display:none!important}
  .menu-lang1097{grid-column:1/-1;justify-self:start!important;order:3}
}
@media(prefers-reduced-motion:reduce){.morph-word1097,[data-editor-animation]{animation:none!important}.cursor1097{display:none!important}.hs1097-track{transform:none!important}}
/* v10.9.7 final specificity + alignment corrections */
.footer.footer1097.origin-footer .origin-word>span{font-family:var(--ginto)!important;font-style:normal!important;font-size:clamp(82px,11.2vw,190px)!important;line-height:.74!important;letter-spacing:-.075em!important;font-weight:700!important;opacity:1!important;color:var(--paper)!important}
.footer.footer1097.origin-footer .origin-word>em{font-family:var(--play)!important;font-style:italic!important;font-size:clamp(86px,11.8vw,202px)!important;line-height:.73!important;letter-spacing:-.075em!important;color:var(--powder-blue)!important;opacity:1!important}
.page-brand .hero h1{max-width:11.2ch!important;width:auto!important;font-size:clamp(58px,6.15vw,108px)!important;padding-right:.16em!important;overflow:visible!important}
.page-brand .hero-content,.page-brand .hero-content>div,.page-brand .hero-copy{overflow:visible!important;min-width:0}
.morph-word1097{padding-right:.08em}
/* No stagger survives the final layer. */
.media-grid,.media-grid.three,.media-grid-contained,.staggered-media{align-items:stretch!important}
.media-grid>*:nth-child(n),.media-grid.three>*:nth-child(n),.media-grid-contained>*:nth-child(n),.staggered-media>*:nth-child(n){margin-top:0!important;margin-bottom:0!important;transform:none!important;translate:none!important;rotate:0deg!important;inset:auto!important}
.work-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:34px!important;align-items:start!important}
.work-grid .project-card:nth-child(n){grid-column:auto!important;margin:0!important;transform:none!important}.work-grid .project-card .media,.work-grid .project-card:nth-child(n) .media{height:clamp(390px,46vw,720px)!important}
.newsroom-grid .news-card:nth-child(n){margin-top:0!important;transform:none!important}
/* Section controls in Site Manager: neutral unless a deliberate background is set. */
[data-manager-glare="on"]{box-shadow:inset 0 0 110px rgba(131,180,209,.10)}
@media(max-width:1000px){.footer.footer1097.origin-footer .origin-word>span,.footer.footer1097.origin-footer .origin-word>em{font-size:clamp(64px,18vw,112px)!important}.work-grid{grid-template-columns:1fr!important}.page-brand .hero h1{font-size:clamp(54px,14.8vw,86px)!important;max-width:9.5ch!important}}


/* =========================================================
   v10.9.8 visual refinement patch
   ========================================================= */
:root{--glass-dark:rgba(8,8,8,.62);--glass-paper:rgba(243,239,232,.84);--glass-line:rgba(255,255,255,.09);--glass-line-dark:rgba(13,13,13,.11)}
.site-head.header1098{background:var(--glass-dark)!important;border-bottom:1px solid var(--glass-line)!important;backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);box-shadow:0 10px 40px rgba(0,0,0,.14)}
.site-head.header1098.header1098-light,.site-head.header1098.header1098-foundation{background:var(--glass-paper)!important;border-bottom-color:var(--glass-line-dark)!important;box-shadow:0 10px 36px rgba(13,13,13,.06)}
body[data-route^="foundation"] .site-head.header1098,body[data-route="contact"] .site-head.header1098,body[data-route^="newsroom"] .site-head.header1098{color:var(--ink)!important}
body[data-route^="foundation"] .site-head.header1098 a,body[data-route="contact"] .site-head.header1098 a,body[data-route^="newsroom"] .site-head.header1098 a,body[data-route^="foundation"] .site-head.header1098 button,body[data-route="contact"] .site-head.header1098 button,body[data-route^="newsroom"] .site-head.header1098 button{color:var(--ink)!important}
.site-head.header1098 .foundation-head-mark img{filter:brightness(0)!important}
.brand img,#headerLogo,.menu-logo img{height:clamp(34px,2.5vw,44px)!important;max-width:116px!important;width:auto!important}
.brand-cluster{gap:18px!important}
.site-head .brand-divider{opacity:.18!important}
.site-head .menu-lang1097,.site-head .menu-lang1098,.site-head .lang-switch,.site-head [data-lang1097],.site-head [data-lang1098]{display:none!important}
.menu-top{display:grid!important;grid-template-columns:auto 1fr auto!important;gap:20px!important;align-items:center!important}
.menu-lang1098{display:flex;align-items:center;gap:14px;justify-self:end;color:var(--menu-ink,currentColor)}
.menu-lang1098>span{font-size:11px;opacity:.62}
.menu-lang1098>div{display:flex;gap:6px;flex-wrap:wrap}
.menu-lang1098 button{appearance:none;border:1px solid color-mix(in srgb,currentColor 26%,transparent);background:transparent;color:inherit;border-radius:999px;padding:8px 10px;font:inherit;font-size:10px;font-weight:800;line-height:1;transition:background .2s,color .2s,transform .2s}
.menu-lang1098 button:hover,.menu-lang1098 button.active{background:currentColor;color:var(--menu-tone,var(--ink));transform:translateY(-1px)}
.menu-links a[href="#/studio"]{--link-accent:var(--powder-blue)}
.menu-links a[href="#/work"]{--link-accent:var(--orange)}
.menu-links a[href="#/brand"]{--link-accent:var(--powder-pink)}
.menu-links a[href="#/projects/fiscoflow"]{--link-accent:var(--green)}
.menu-links a[href="#/foundation"]{--link-accent:var(--ink)}
.menu-links a[href="#/contact"]{--link-accent:var(--cobalt)}
.menu-links a{transition:color .18s var(--ease)}
.menu-links a:hover{color:var(--link-accent,currentColor)!important}

.section{padding-block:clamp(112px,10vw,168px)!important}
.section.big{padding-block:clamp(132px,11vw,192px)!important}
.section-inner,.footer1097 .footer-inner{width:min(calc(100% - 2 * var(--edge)),1580px)!important}
.grid58{gap:clamp(52px,5vw,96px)!important}
.section-copy p,.section-copy li{line-height:1.58!important}
.section-copy p + p{margin-top:1.15em!important}
.hero{padding-bottom:clamp(44px,5vw,82px)!important}
.hero .media,.hero figure,.hero-image,.hero-visual,.hero-media{border-radius:34px!important;overflow:hidden!important}
.hero-content{gap:clamp(56px,5vw,110px)!important;align-items:end!important}
.hero h1,.hero h1 em{overflow:visible!important;text-wrap:balance!important}
.page-brand .hero h1,.page-trenitalia .hero h1,.page-kickoff .hero h1,.page-fiscoflow .hero h1{max-width:12ch!important}

.hs1097{padding-block:clamp(118px,11vw,176px)!important}
.hs1097-pin{padding:clamp(110px,10vh,144px) 0 clamp(58px,6vh,78px)!important}
.hs1097-head{margin-bottom:clamp(36px,4vh,62px)!important}
.hs1097-viewport{padding-inline:var(--edge)!important}
.hs1097-track{gap:clamp(26px,2.3vw,40px)!important}
.hs1097-card{flex:0 0 min(71vw,1020px)!important;height:min(68vh,760px)!important;grid-template-columns:minmax(0,7.6fr) minmax(300px,4.4fr)!important;padding:18px!important;gap:18px!important;border-radius:34px!important;background:color-mix(in srgb,currentColor 4%,transparent)!important;border:1px solid color-mix(in srgb,currentColor 14%,transparent)!important;box-shadow:0 24px 70px rgba(13,13,13,.08)!important}
.hs1097-media{border-radius:24px!important;overflow:hidden!important;min-height:100%!important;background:color-mix(in srgb,var(--paper) 82%,transparent)!important}
.hs1097-media img{border-radius:24px!important}
.hs1097-media.transparent{background:transparent!important}
.hs1097-media.transparent img{filter:drop-shadow(0 26px 34px rgba(13,13,13,.18));padding:clamp(16px,1.7vw,30px)!important}
.hs1097-copy{padding:clamp(18px,2vw,34px)!important;justify-content:center!important}
.hs1097-copy small{margin-bottom:18px!important}
.hs1097-copy h3{font-size:clamp(38px,3.15vw,60px)!important;line-height:.92!important;margin:0 0 14px!important}
.hs1097-copy p{font-size:clamp(16px,1.04vw,19px)!important;line-height:1.5!important;max-width:28em!important}
.hs1097.tone-blue .hs1097-card{background:rgba(255,255,255,.18)!important}
.hs1097.tone-green .hs1097-card,.hs1097.tone-red .hs1097-card{background:rgba(255,255,255,.08)!important}
.hs1097.tone-warm .hs1097-card{background:rgba(255,255,255,.36)!important}
.single-device1097{background:transparent!important;border:none!important;box-shadow:none!important}
.single-device1097 img{object-fit:contain!important;filter:drop-shadow(0 34px 44px rgba(13,13,13,.18))}

.pitch-line,.pitch-circle,.pitch-box,.field-circle,.field-half,.hero [class*="decorative"],.hero [class*="floating"],.hero [class*="shape"],.hero [class*="glare"],.hero [class*="box"],.hero [class*="circle"],.hero [class*="line"]{display:none!important}
.pitch1097{aspect-ratio:16/6.6!important;min-height:500px!important;border-radius:34px!important;background:linear-gradient(180deg,#248351,#1b6a42)!important;box-shadow:0 30px 80px rgba(13,13,13,.14)!important}
.pitch1097:before{inset:24px!important;border-radius:24px!important}
.pitch1097:after{background:repeating-linear-gradient(90deg,rgba(255,255,255,.028) 0 10%,rgba(0,0,0,.018) 10% 20%)!important}
.ball1097{box-shadow:0 14px 28px rgba(13,13,13,.18)!important}
.play-route span{background:rgba(243,239,232,.92)!important;color:var(--ink)!important;border-radius:999px!important;padding:8px 12px!important}

.route-note1098{position:relative;z-index:2}
.route-note1098 .section-copy p strong{display:inline-block;min-width:6.5ch}

.cursor1097{width:18px!important;height:18px!important;transform:translate(-50%,-50%)!important;mix-blend-mode:difference!important}
.cursor1097 i{position:absolute;inset:0;border-radius:999px;background:white;transition:scale .16s var(--ease),border-radius .16s var(--ease),background .16s}
.cursor1097 span{position:absolute;left:28px;top:50%;translate:0 -50%;white-space:nowrap;font-size:11px;font-weight:800;opacity:0;transition:opacity .12s var(--ease)}
.cursor1097.active i{scale:2.8}.cursor1097.active span{opacity:1}.cursor1097[data-kind="drag"] i{border-radius:5px;scale:3.05}.cursor1097[data-kind="read"] i{scale:4 1.9}.cursor1097[data-kind="view"] i{background:var(--powder-blue)}.cursor1097.down i{scale:1.55!important}

@media(max-width:1000px){
  .menu-top{grid-template-columns:1fr auto!important}
  .menu-lang1098{grid-column:1/-1;justify-self:start!important}
  .section{padding-block:96px!important}.section.big{padding-block:112px!important}
  .hero-content{gap:34px!important}
  .hs1097-card{flex-basis:84vw!important;height:auto!important;grid-template-columns:1fr!important;grid-template-rows:minmax(48vh,1fr) auto!important;padding:14px!important;gap:14px!important}
  .hs1097-media,.hs1097-media img{border-radius:20px!important}
}
