.elementor-10 .elementor-element.elementor-element-8593548 > .elementor-container{min-height:400px;}.elementor-10 .elementor-element.elementor-element-8593548:not(.elementor-motion-effects-element-type-background), .elementor-10 .elementor-element.elementor-element-8593548 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://mariafumacagramado.com/wp-content/uploads/2026/03/tour-uva-e-vinho-com-maria-fumaca-compressed.jpg");background-position:center center;background-size:cover;}.elementor-10 .elementor-element.elementor-element-8593548 > .elementor-background-overlay{background-color:transparent;background-image:linear-gradient(184deg, #BEA292 0%, #92BEB000 100%);opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-10 .elementor-element.elementor-element-8593548{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-10 .elementor-element.elementor-element-37cb6a0:not(.elementor-motion-effects-element-type-background), .elementor-10 .elementor-element.elementor-element-37cb6a0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#173514CC;}.elementor-10 .elementor-element.elementor-element-37cb6a0{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:-107px;margin-bottom:0px;padding:2px 2px 2px 2px;}.elementor-10 .elementor-element.elementor-element-37cb6a0 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-10 .elementor-element.elementor-element-d1b21cf.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-10 .elementor-element.elementor-element-d1b21cf > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:10px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-10 .elementor-element.elementor-element-4110a8b{text-align:center;margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-10 .elementor-element.elementor-element-4110a8b .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:38px;font-weight:600;color:#FFFFFF;}.elementor-10 .elementor-element.elementor-element-1870368{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -15px) 0px;padding:8px 8px 8px 8px;width:auto;max-width:auto;z-index:9999;background-color:#EFCE6E;border-radius:3px 3px 3px 3px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-10 .elementor-element.elementor-element-1870368 .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:28px;font-weight:600;color:#173514;}.elementor-10 .elementor-element.elementor-element-00b7a11 > .elementor-container{max-width:600px;}.elementor-10 .elementor-element.elementor-element-00b7a11:not(.elementor-motion-effects-element-type-background), .elementor-10 .elementor-element.elementor-element-00b7a11 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FDEBEB;}.elementor-10 .elementor-element.elementor-element-00b7a11{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:20px 20px 20px 20px;}.elementor-10 .elementor-element.elementor-element-00b7a11 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-10 .elementor-element.elementor-element-76306f8.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-10 .elementor-element.elementor-element-76306f8 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:8px;}.elementor-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );background-color:var( --e-global-color-accent );}.elementor-10 .elementor-element.elementor-element-57f2718 .elementor-button-content-wrapper{flex-direction:row;}.elementor-10 .elementor-element.elementor-element-57f2718 .elementor-button .elementor-button-content-wrapper{gap:14px;}.elementor-10 .elementor-element.elementor-element-57f2718 .elementor-button{font-family:"Roboto", Sans-serif;font-size:25px;font-weight:500;background-color:#173514;border-radius:30px 30px 30px 30px;}.elementor-10 .elementor-element.elementor-element-57f2718 .elementor-button:hover, .elementor-10 .elementor-element.elementor-element-57f2718 .elementor-button:focus{background-color:#276221;}.elementor-10 .elementor-element.elementor-element-18160c1{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -40px) 0px;padding:8px 8px 8px 8px;width:auto;max-width:auto;background-color:#FFD4A4;border-radius:3px 3px 3px 3px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-10 .elementor-element.elementor-element-18160c1 .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:16px;font-weight:400;line-height:23px;color:#173514;}.elementor-10 .elementor-element.elementor-element-cdea462 > .elementor-container{max-width:900px;}.elementor-10 .elementor-element.elementor-element-cdea462{margin-top:40px;margin-bottom:0px;}.elementor-10 .elementor-element.elementor-element-6fb546a{text-align:center;margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-10 .elementor-element.elementor-element-6fb546a .elementor-heading-title{font-family:"Rosario", Sans-serif;font-size:38px;font-weight:800;color:#173514;}.elementor-10 .elementor-element.elementor-element-d3bc0fe{margin-top:20px;margin-bottom:0px;}.elementor-bc-flex-widget .elementor-10 .elementor-element.elementor-element-9c40b98.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-10 .elementor-element.elementor-element-9c40b98.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-10 .elementor-element.elementor-element-616502d .elementor-icon-list-icon i{color:#173514;transition:color 0.3s;}.elementor-10 .elementor-element.elementor-element-616502d .elementor-icon-list-icon svg{fill:#173514;transition:fill 0.3s;}.elementor-10 .elementor-element.elementor-element-616502d{--e-icon-list-icon-size:22px;--icon-vertical-offset:0px;}.elementor-10 .elementor-element.elementor-element-616502d .elementor-icon-list-item > .elementor-icon-list-text, .elementor-10 .elementor-element.elementor-element-616502d .elementor-icon-list-item > a{font-family:"Roboto", Sans-serif;font-size:23px;font-weight:400;}.elementor-10 .elementor-element.elementor-element-616502d .elementor-icon-list-text{color:#173514;transition:color 0.3s;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-10 .elementor-element.elementor-element-cbbc071{text-align:start;font-family:"Rosario", Sans-serif;font-size:18px;font-weight:400;color:#383838;width:var( --container-widget-width, 101.628% );max-width:101.628%;--container-widget-width:101.628%;--container-widget-flex-grow:0;}.elementor-10 .elementor-element.elementor-element-1e09ba4 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-widget-gallery .elementor-gallery-item__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-gallery .elementor-gallery-item__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-gallery{--galleries-title-color-normal:var( --e-global-color-primary );--galleries-title-color-hover:var( --e-global-color-secondary );--galleries-pointer-bg-color-hover:var( --e-global-color-accent );--gallery-title-color-active:var( --e-global-color-secondary );--galleries-pointer-bg-color-active:var( --e-global-color-accent );}.elementor-widget-gallery .elementor-gallery-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-10 .elementor-element.elementor-element-7581a6e{--image-border-radius:8px;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-10 .elementor-element.elementor-element-7581a6e .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-10 .elementor-element.elementor-element-7581a6e .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-10 .elementor-element.elementor-element-ee2538d{--image-border-radius:8px;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-10 .elementor-element.elementor-element-ee2538d .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-10 .elementor-element.elementor-element-ee2538d .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-10 .elementor-element.elementor-element-012c783{margin-top:20px;margin-bottom:0px;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-10 .elementor-element.elementor-element-c93408a .elementor-icon-box-wrapper{align-items:start;gap:15px;}.elementor-10 .elementor-element.elementor-element-c93408a.elementor-view-stacked .elementor-icon{background-color:#F3CE23;}.elementor-10 .elementor-element.elementor-element-c93408a.elementor-view-framed .elementor-icon, .elementor-10 .elementor-element.elementor-element-c93408a.elementor-view-default .elementor-icon{fill:#F3CE23;color:#F3CE23;border-color:#F3CE23;}.elementor-10 .elementor-element.elementor-element-c93408a .elementor-icon-box-title{color:#173514;}.elementor-10 .elementor-element.elementor-element-c93408a .elementor-icon-box-description{color:#173514;}.elementor-10 .elementor-element.elementor-element-769f7c4 .elementor-icon-box-wrapper{align-items:start;gap:15px;}.elementor-10 .elementor-element.elementor-element-769f7c4.elementor-view-stacked .elementor-icon{background-color:#F3CE23;}.elementor-10 .elementor-element.elementor-element-769f7c4.elementor-view-framed .elementor-icon, .elementor-10 .elementor-element.elementor-element-769f7c4.elementor-view-default .elementor-icon{fill:#F3CE23;color:#F3CE23;border-color:#F3CE23;}.elementor-10 .elementor-element.elementor-element-769f7c4 .elementor-icon-box-title{color:#173514;}.elementor-10 .elementor-element.elementor-element-769f7c4 .elementor-icon-box-description{color:#173514;}.elementor-10 .elementor-element.elementor-element-72ac7d4 .elementor-icon-box-wrapper{align-items:start;gap:15px;}.elementor-10 .elementor-element.elementor-element-72ac7d4.elementor-view-stacked .elementor-icon{background-color:#F3CE23;}.elementor-10 .elementor-element.elementor-element-72ac7d4.elementor-view-framed .elementor-icon, .elementor-10 .elementor-element.elementor-element-72ac7d4.elementor-view-default .elementor-icon{fill:#F3CE23;color:#F3CE23;border-color:#F3CE23;}.elementor-10 .elementor-element.elementor-element-72ac7d4 .elementor-icon-box-title{color:#173514;}.elementor-10 .elementor-element.elementor-element-72ac7d4 .elementor-icon-box-description{color:#173514;}.elementor-10 .elementor-element.elementor-element-5294d4b{margin-top:20px;margin-bottom:0px;}.elementor-10 .elementor-element.elementor-element-7040dc4{text-align:center;margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-10 .elementor-element.elementor-element-7040dc4 .elementor-heading-title{font-family:"Rosario", Sans-serif;font-size:38px;font-weight:800;color:#173514;}.elementor-10 .elementor-element.elementor-element-a54939b{margin-top:20px;margin-bottom:30px;}.elementor-10 .elementor-element.elementor-element-99d60b7{text-align:center;margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-10 .elementor-element.elementor-element-99d60b7 .elementor-heading-title{font-family:"Rosario", Sans-serif;font-size:38px;font-weight:800;color:#173514;}.elementor-widget-accordion .elementor-accordion-icon, .elementor-widget-accordion .elementor-accordion-title{color:var( --e-global-color-primary );}.elementor-widget-accordion .elementor-accordion-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-accordion .elementor-active .elementor-accordion-icon, .elementor-widget-accordion .elementor-active .elementor-accordion-title{color:var( --e-global-color-accent );}.elementor-widget-accordion .elementor-active .elementor-accordion-icon svg{fill:var( --e-global-color-accent );}.elementor-widget-accordion .elementor-accordion-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-accordion .elementor-tab-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-10 .elementor-element.elementor-element-c5ca4b4 .elementor-accordion-icon, .elementor-10 .elementor-element.elementor-element-c5ca4b4 .elementor-accordion-title{color:#173514CC;}.elementor-10 .elementor-element.elementor-element-c5ca4b4 .elementor-accordion-icon svg{fill:#173514CC;}.elementor-10 .elementor-element.elementor-element-c5ca4b4 .elementor-active .elementor-accordion-icon, .elementor-10 .elementor-element.elementor-element-c5ca4b4 .elementor-active .elementor-accordion-title{color:#E3C000;}.elementor-10 .elementor-element.elementor-element-c5ca4b4 .elementor-active .elementor-accordion-icon svg{fill:#E3C000;}.elementor-10 .elementor-element.elementor-element-b03d08b:not(.elementor-motion-effects-element-type-background), .elementor-10 .elementor-element.elementor-element-b03d08b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#173514CC;}.elementor-10 .elementor-element.elementor-element-b03d08b{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-10 .elementor-element.elementor-element-b03d08b > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-10 .elementor-element.elementor-element-e74b9fe > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:5px;}.elementor-10 .elementor-element.elementor-element-81062f8{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-10 .elementor-element.elementor-element-81062f8 .elementor-heading-title{font-family:"Rosario", Sans-serif;font-size:15px;font-weight:300;color:#F6F6F6;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-10 .elementor-element.elementor-element-9fbc30a{--divider-border-style:solid;--divider-color:#D5D5D5;--divider-border-width:1px;}.elementor-10 .elementor-element.elementor-element-9fbc30a .elementor-divider-separator{width:100%;}.elementor-10 .elementor-element.elementor-element-9fbc30a .elementor-divider{padding-block-start:6px;padding-block-end:6px;}.elementor-10 .elementor-element.elementor-element-b15a4a3{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-10 .elementor-element.elementor-element-b15a4a3 .elementor-heading-title{font-family:"Rosario", Sans-serif;font-size:15px;font-weight:300;color:#F6F6F6;}body.elementor-page-10:not(.elementor-motion-effects-element-type-background), body.elementor-page-10 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFF7F7;}@media(min-width:768px){.elementor-10 .elementor-element.elementor-element-9c40b98{width:67.054%;}.elementor-10 .elementor-element.elementor-element-1e09ba4{width:32%;}}@media(max-width:767px){.elementor-10 .elementor-element.elementor-element-8593548 > .elementor-container{min-height:300px;}.elementor-10 .elementor-element.elementor-element-1870368{z-index:999;}.elementor-10 .elementor-element.elementor-element-57f2718 .elementor-button{font-size:14px;}.elementor-10 .elementor-element.elementor-element-616502d .elementor-icon-list-item > .elementor-icon-list-text, .elementor-10 .elementor-element.elementor-element-616502d .elementor-icon-list-item > a{font-size:17px;}.elementor-10 .elementor-element.elementor-element-cbbc071{text-align:center;}.elementor-10 .elementor-element.elementor-element-1e09ba4 > .elementor-element-populated{padding:10px 10px 10px 10px;}}/* Start custom CSS for button, class: .elementor-element-57f2718 */.movimento {
  animation: pulseSoft 2.5s ease-in-out infinite;
}

/* Animação bem sutil */
@keyframes pulseSoft {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.03); /* bem leve */
  }
  100% {
    transform: scale(1);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d00fb1c */.train-scene {
  position: relative;
  width: 100%;
  height: 50px;
  overflow: hidden;
}

/* ===== TRILHO ===== */
.track {
  position: absolute;
  bottom: 0;
  width: 200%;
  height: 20px;
  z-index: 1;
}

.rail {
  position: absolute;
  width: 100%;
  height: 3px;
  background: linear-gradient(#ccc, #ccc);
}

.rail-top { top: 4px; }
.rail-bottom { top: 12px; }

.sleepers {
  position: absolute;
  width: 200%;
  height: 100%;
  background: repeating-linear-gradient(
    to right,
    transparent 0px,
    transparent 18px,
    #999 18px,
    #333 26px
  );
  animation: trackMove 1.2s linear infinite;
}

/* ===== TREM ===== */
.train {
  position: absolute;
  bottom: 14px;
  display: flex;
  align-items: flex-end;
  gap: 8px;
  animation: moveTrain 18s linear infinite; /* MAIS DEVAGAR */
  z-index: 2; /* AGORA FICA POR CIMA */
}

/* Locomotiva */
.engine {
  position: relative;
  width: 65px;
  height: 32px;
}

/* Corpo */
.body {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 18px;
  background: linear-gradient(#444, #222);
  border-radius: 3px;
}

/* Cabine */
.cabin {
  position: absolute;
  right: 6px;
  top: 0;
  width: 24px;
  height: 16px;
  background: linear-gradient(#555, #333);
  border-radius: 2px;
}

/* Janelas */
.window {
  width: 6px;
  height: 6px;
  background: #aee1ff;
  margin: 2px;
  display: inline-block;
  border-radius: 1px;
}

/* Chaminé */
.chimney {
  position: absolute;
  left: 10px;
  top: -8px;
  width: 8px;
  height: 10px;
  background: #222;
}

/* Vagões */
.wagon {
  width: 55px;
  height: 20px;
  background: linear-gradient(#2c3e50, #1a252f);
  border-radius: 3px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 2px;
}

/* Rodas */
.wheel {
  position: absolute;
  bottom: -6px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: radial-gradient(circle at center, #111 40%, #444 41%);
}

.wheel::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: #222;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  animation: wheelMove 0.8s linear infinite;
}

.w1 { left: 6px; }
.w2 { right: 6px; }

/* ===== FUMAÇA ===== */
.smoke {
  position: absolute;
  left: 12px;
  top: -10px;
  width: 6px;
  height: 6px;
  background: rgba(200,200,200,0.7);
  border-radius: 50%;
  opacity: 0;
}

.s1 { animation: smoke 2.5s linear infinite; }
.s2 { animation: smoke 2.5s 0.6s linear infinite; }
.s3 { animation: smoke 2.5s 1.2s linear infinite; }

/* ===== ANIMAÇÕES ===== */
@keyframes moveTrain {
  0% { transform: translateX(110vw); }
  100% { transform: translateX(-300px); }
}


@keyframes trackMove {
  from { transform: translateX(0); }
  to { transform: translateX(26px); }
}

@keyframes wheelMove {
  from { transform: translateY(-50%) rotate(0deg); }
  to { transform: translateY(-50%) rotate(360deg); }
}

@keyframes smoke {
  0% {
    transform: translate(0,0) scale(0.5);
    opacity: 0.7;
  }
  50% {
    transform: translate(-12px, -18px) scale(1);
    opacity: 0.4;
  }
  100% {
    transform: translate(-24px, -36px) scale(1.6);
    opacity: 0;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2f8cefc */.train-scene {
  position: relative;
  width: 100%;
  height: 50px;
  overflow: hidden;
}

/* ===== TRILHO ===== */
.track {
  position: absolute;
  bottom: 0;
  width: 200%;
  height: 20px;
  z-index: 1;
}

.rail {
  position: absolute;
  width: 100%;
  height: 3px;
  background: linear-gradient(#ccc, #ccc);
}

.rail-top { top: 4px; }
.rail-bottom { top: 12px; }

.sleepers {
  position: absolute;
  width: 200%;
  height: 100%;
  background: repeating-linear-gradient(
    to right,
    transparent 0px,
    transparent 18px,
    #999 18px,
    #333 26px
  );
  animation: trackMove 1.2s linear infinite;
}

/* ===== TREM ===== */
.train {
  position: absolute;
  bottom: 14px;
  display: flex;
  align-items: flex-end;
  gap: 8px;
  animation: moveTrain 18s linear infinite; /* MAIS DEVAGAR */
  z-index: 2; /* AGORA FICA POR CIMA */
}

/* Locomotiva */
.engine {
  position: relative;
  width: 65px;
  height: 32px;
}

/* Corpo */
.body {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 18px;
  background: linear-gradient(#444, #222);
  border-radius: 3px;
}

/* Cabine */
.cabin {
  position: absolute;
  right: 6px;
  top: 0;
  width: 24px;
  height: 16px;
  background: linear-gradient(#555, #333);
  border-radius: 2px;
}

/* Janelas */
.window {
  width: 6px;
  height: 6px;
  background: #aee1ff;
  margin: 2px;
  display: inline-block;
  border-radius: 1px;
}

/* Chaminé */
.chimney {
  position: absolute;
  left: 10px;
  top: -8px;
  width: 8px;
  height: 10px;
  background: #222;
}

/* Vagões */
.wagon {
  width: 55px;
  height: 20px;
  background: linear-gradient(#2c3e50, #1a252f);
  border-radius: 3px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 2px;
}

/* Rodas */
.wheel {
  position: absolute;
  bottom: -6px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: radial-gradient(circle at center, #111 40%, #444 41%);
}

.wheel::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: #222;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  animation: wheelMove 0.8s linear infinite;
}

.w1 { left: 6px; }
.w2 { right: 6px; }

/* ===== FUMAÇA ===== */
.smoke {
  position: absolute;
  left: 12px;
  top: -10px;
  width: 6px;
  height: 6px;
  background: rgba(200,200,200,0.7);
  border-radius: 50%;
  opacity: 0;
}

.s1 { animation: smoke 2.5s linear infinite; }
.s2 { animation: smoke 2.5s 0.6s linear infinite; }
.s3 { animation: smoke 2.5s 1.2s linear infinite; }

/* ===== ANIMAÇÕES ===== */
@keyframes moveTrain {
  0% { transform: translateX(110vw); }
  100% { transform: translateX(-300px); }
}


@keyframes trackMove {
  from { transform: translateX(0); }
  to { transform: translateX(26px); }
}

@keyframes wheelMove {
  from { transform: translateY(-50%) rotate(0deg); }
  to { transform: translateY(-50%) rotate(360deg); }
}

@keyframes smoke {
  0% {
    transform: translate(0,0) scale(0.5);
    opacity: 0.7;
  }
  50% {
    transform: translate(-12px, -18px) scale(1);
    opacity: 0.4;
  }
  100% {
    transform: translate(-24px, -36px) scale(1.6);
    opacity: 0;
  }
}/* End custom CSS */