/* Shared visual system for the three order guides. */
.hero-lines{position:relative;z-index:2;display:grid;gap:8px;max-width:440px}
.hero-lines a{display:grid;grid-template-columns:62px minmax(0,1fr) 24px;align-items:center;gap:10px;min-height:54px;padding:4px 10px 4px 4px;border:1px solid #fff1df82;border-radius:12px;color:#fff8e8;background:#64103136;text-decoration:none;font-weight:700;transition:background .18s,color .18s}
.hero-lines img{width:100%;height:44px;object-fit:cover;border-radius:8px}
.hero-lines a:hover,.hero-lines a:focus-visible{background:#fff4df;color:#7b2147}
.hero-lines svg,.line-card svg,.line-jump svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.line-cards,.line-gallery,.line-process ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.line-card{display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:#fff8e8;color:#42182f;text-decoration:none;box-shadow:0 4px 0 #64103130}
.line-card img{width:100%;height:auto;aspect-ratio:1.45;object-fit:cover}
.line-card>div{display:grid;align-content:start;gap:10px;padding:22px}
.line-card h3,.line-process h3{margin:0;font-size:clamp(23px,3vw,37px);line-height:1.05}
.line-card p{margin:0;font-size:14px}.line-card strong{display:flex;align-items:center;gap:8px;font-size:13px;color:#913359}.line-card:hover strong{text-decoration:underline}
.line-page{--line-ink:#813354;--line-soft:#fae4ea;background:#fff8e8}
.line-page.line-eventos{--line-ink:#793957;--line-soft:#f3e3ed}.line-page.line-corporativo{--line-ink:#28604d;--line-soft:#deeee4}
.line-intro,.line-order,.line-video{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,6vw,84px);align-items:center}
.line-intro{background:var(--line-soft);color:#42182f}.line-back{display:inline-block;margin-bottom:30px;color:var(--line-ink);font-size:14px;text-decoration:underline;text-underline-offset:3px}
.line-intro h1{font-size:clamp(40px,6vw,86px);line-height:1;letter-spacing:-.055em;margin:0 0 18px}.line-intro p:not(.eyebrow),.line-order>div:first-child p:not(.eyebrow){max-width:42ch;line-height:1.65}.line-intro img,.line-video video{width:100%;height:auto;aspect-ratio:1.22;object-fit:cover;border-radius:24px;box-shadow:7px 8px 0 var(--line-ink)}
.line-jump{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:var(--line-ink);font-weight:700;text-underline-offset:4px}
.line-process h2,.line-work h2,.line-order h2,.line-video h2{font-size:clamp(34px,4.4vw,62px);line-height:1.03;margin-bottom:20px}
.line-process ol{margin:25px 0 0;padding:0;list-style:none}.line-process li{padding:20px 0 0;border-top:2px solid var(--line-ink)}.line-process li>span{display:block;margin-bottom:12px;color:var(--line-ink);font-weight:700}.line-process li p,.line-gallery p{line-height:1.6;font-size:14px}
.line-work,.line-order{background:var(--line-soft)}.line-gallery figure{min-width:0;margin:0}.line-gallery img{width:100%;height:auto;aspect-ratio:1.28;object-fit:cover;border-radius:18px}.line-gallery figcaption{padding:12px 0}.line-gallery figcaption>strong{display:block;font-size:20px}.line-corporativo .line-gallery{grid-template-columns:minmax(0,640px)}.line-video video{max-height:430px;object-fit:contain;background:#42182f}
.line-order{align-items:start}.line-order>div:first-child{padding-top:18px}.line-order .stepform{width:100%;max-width:650px;min-width:0;margin:0;border:1px solid #b8899a;border-radius:20px;box-shadow:0 8px 22px #40152d16;background:#fffdf5;color:#42182f;scroll-margin-top:20px}
.line-order .form-top{border-radius:18px 18px 0 0;box-shadow:none}.line-order .form-top:before,.line-order .form-top:after,.line-order .step-changing:after{display:none}.line-order #step-count{background:#fff8e8;color:#542139}.line-order .next-button{background:var(--line-ink);box-shadow:none;border-radius:10px}.line-order .form-journey b{border-radius:8px}.line-order .form-journey .current b{background:var(--line-ink);color:#fff}
.line-order .stepform h2{font-size:clamp(24px,3vw,37px);margin-bottom:18px}.line-order .field{min-width:0}.line-order .field input,.line-order .field select,.line-order .field textarea{width:100%;min-width:0;max-width:100%}
@media(max-width:760px){.hero-lines{order:3;margin-top:-12px;max-width:none}.line-cards,.line-gallery,.line-process ol,.line-intro,.line-order,.line-video{grid-template-columns:minmax(0,1fr)}.line-page .section-pad{padding-top:42px;padding-bottom:42px}.line-intro img{aspect-ratio:1.45}.line-order .stepform{padding:0 17px 16px}.line-order .form-top,.line-order .progress{margin-left:-17px;margin-right:-17px}.line-order .form-grid{grid-template-columns:minmax(0,1fr)}.line-order .field input,.line-order .field select,.line-order .field textarea{font-size:16px}.line-order .field.full,.line-order .flavor-multi-field{grid-column:1}.line-order .form-journey span{font-size:9px}.line-order .form-journey{flex-wrap:wrap}.line-order .next-button{min-height:46px}}

/* Keep the vertical corporate film in its own grid cell. */
.line-video video{display:block;justify-self:center;width:min(100%,340px);max-height:none;aspect-ratio:4/5;background:#42182f}

/* Each guide uses a different visual language for its order sequence. */
.line-process .line-timeline{position:relative;isolation:isolate;gap:clamp(14px,2.5vw,34px);margin-top:38px}
.line-timeline li{position:relative;min-width:0;border:0;padding:22px 20px 16px}
.line-timeline li>span{display:grid;place-items:center;width:46px;height:46px;margin-bottom:20px;font-variant-numeric:tabular-nums;transition:transform .3s ease}
.line-timeline li:hover>span{transform:translateY(-4px) rotate(-6deg)}
.line-timeline li:nth-child(2){transition-delay:.10s}.line-timeline li:nth-child(3){transition-delay:.20s}
.line-presentes .line-timeline::before{content:"";position:absolute;z-index:-1;top:44px;left:0;right:0;height:9px;background:repeating-linear-gradient(112deg,#d65480 0 15px,#f7a5bb 15px 25px);background-size:180px 100%;animation:ribbon-run 10s linear infinite}
.line-presentes .line-timeline li{background:#fff0e4;border-radius:8px 26px 20px 20px;border:1px solid #efc4ca;box-shadow:0 5px 0 #edc3c9}
.line-presentes .line-timeline li>span{background:#a52e5c;color:#fff;border-radius:9px 14px 9px 14px;outline:3px double #fbd0dc;outline-offset:-6px}
.line-presentes .line-timeline li>span::after{content:"";position:absolute;top:19px;left:58px;width:18px;height:10px;border:2px solid #a52e5c;border-radius:80% 50% 80% 50%;transform:rotate(-34deg);background:#ffc7d5}
.line-eventos .line-timeline{gap:30px;padding:12px 0}
.line-eventos .line-timeline::before{content:"";position:absolute;inset:36px 0 28px;z-index:-1;border:2px dashed #bd6c92;border-radius:48% 58% 42% 52%;transform:rotate(-4deg)}
.line-eventos .line-timeline li{padding:18px 20px;border-radius:36px 8px 34px 8px;background:#f6e6ef}
.line-eventos .line-timeline li:nth-child(2){margin-top:35px}
.line-eventos .line-timeline li>span{border-radius:50% 44% 52% 42%;background:#793957;color:#fff;outline:1px dashed #a1567d;outline-offset:4px}
.line-eventos .line-timeline li.visible>span{animation:event-bloom .75s ease-out both}
.line-corporativo .line-timeline{gap:12px;align-items:start}
.line-corporativo .line-timeline li{background:#e6f0e7;border:1px solid #a0bcae;border-left:4px solid #28604d;border-radius:6px;padding:19px 18px 14px}
.line-corporativo .line-timeline li:nth-child(2){margin-top:22px}.line-corporativo .line-timeline li:nth-child(3){margin-top:44px}
.line-corporativo .line-timeline li>span{border:1px solid #28604d;border-radius:4px;font-family:monospace;letter-spacing:.12em;color:#224e40}
.line-corporativo .line-timeline li::after{content:"";position:absolute;top:40px;left:77px;right:20px;height:1px;background:repeating-linear-gradient(90deg,#6d9f89 0 2px,transparent 2px 7px);transform-origin:left;transform:scaleX(0);transition:transform .65s ease .18s}
.line-corporativo .line-timeline li.visible::after{transform:scaleX(1)}
@keyframes ribbon-run{to{background-position:180px 0}}
@keyframes event-bloom{from{scale:.65;rotate:-18deg}to{scale:1;rotate:0deg}}
@media(max-width:760px){.line-process .line-timeline{gap:17px;margin-top:25px}.line-eventos .line-timeline li:nth-child(2),.line-corporativo .line-timeline li:nth-child(n){margin-top:0}.line-eventos .line-timeline li:nth-child(2){margin-left:13px}.line-eventos .line-timeline::before{inset:10px 14px}.line-presentes .line-timeline::before{top:0;bottom:0;left:9px;right:auto;width:9px;height:auto}.line-presentes .line-timeline li{margin-left:17px}.line-corporativo .line-timeline li:nth-child(2){margin-left:8px}.line-corporativo .line-timeline li:nth-child(3){margin-left:16px}}
@media(prefers-reduced-motion:reduce){.line-timeline li,.line-timeline li>span,.line-timeline li::after,.line-timeline::before{animation:none!important;transition:none!important}}

.line-intro .corporate-hero-video {
  display: block;
  justify-self: center;
  width: min(100%, 390px);
  aspect-ratio: 4 / 5;
  height: auto;
  border-radius: 24px;
  box-shadow: 7px 8px 0 var(--line-ink);
  background: #42182f;
}

.line-hero-video,.feature-video{
  display:block;
  width:min(100%,330px);
  height:auto;
  aspect-ratio:9/16;
  margin-inline:auto;
  object-fit:contain;
  border-radius:24px;
  background:#42182f;
}
.line-hero-video{box-shadow:7px 8px 0 var(--line-ink)}
.making-of{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:center;
  gap:clamp(28px,6vw,84px);
  background:#f9c4d9;
  color:#42182f;
}
.making-of h2,.product-contact h2{font-size:clamp(36px,5vw,68px);line-height:1.03}
.making-of p:not(.eyebrow){max-width:46ch}
.making-steps{display:grid;gap:8px;max-width:36ch;padding-left:30px}
.making-steps li{padding:4px 8px;border-bottom:1px solid #42182f48;font-weight:700}
.making-steps li::marker{color:#9e1957;font-weight:800}
.making-of .feature-video{box-shadow:7px 8px 0 #9e1957}
.making-videos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.portfolio-grid,.corporate-formats,.project-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(14px,2vw,24px);
}
.portfolio-project,.corporate-formats figure{
  margin:0;
  overflow:hidden;
  border-radius:20px;
  background:#fff8e8;
  color:#42182f;
}
.project-media{
  display:grid;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#42182f;
}
.project-pair{grid-template-rows:repeat(2,minmax(0,1fr));gap:3px}
.project-media img,.project-media video{width:100%;height:100%;min-height:0;object-fit:cover;border-radius:0}
.project-media video{object-fit:contain}
.project-copy,.corporate-formats figcaption{padding:16px 18px}
.project-copy h3,.project-gallery-title{font-size:clamp(24px,3vw,38px);line-height:1.1;margin:0 0 8px}
.project-copy p,.corporate-formats p{font-size:14px;margin:6px 0 0}
.corporate-formats img,.project-gallery img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.corporate-formats strong{font-size:18px}
.project-gallery-title{margin:42px 0 16px}
.project-gallery a{display:block;overflow:hidden;border-radius:14px}
.more-projects{margin-top:18px}
.more-projects summary{width:fit-content;padding:10px 0;cursor:pointer;font-weight:700}
.more-projects .project-gallery{margin-top:14px}
.product-barra{--line-ink:#57327c;--line-soft:#e9dcf7}
.product-bombolo{--line-ink:#8b3a23;--line-soft:#ffe1b9}
.bar-formats{grid-template-columns:repeat(4,minmax(0,1fr))}
.product-contact{background:var(--line-soft);color:#42182f}
.product-contact h2{margin-bottom:22px}
@media(max-width:900px){.header nav{gap:clamp(8px,2vw,18px)}}
@media(max-width:760px){
  .header nav{gap:16px}
  .making-of,.portfolio-grid,.corporate-formats{grid-template-columns:minmax(0,1fr)}
  .making-videos{grid-template-columns:minmax(0,1fr);gap:26px}
  .project-gallery,.bar-formats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .line-hero-video,.feature-video{width:min(100%,280px)}
}
