.elementor-11287 .elementor-element.elementor-element-f721f5a{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;}.elementor-11287 .elementor-element.elementor-element-f721f5a:not(.elementor-motion-effects-element-type-background), .elementor-11287 .elementor-element.elementor-element-f721f5a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://mairiprint.com.br/wp-content/uploads/2025/11/vic-002.png");background-position:top center;background-repeat:no-repeat;background-size:auto;}.elementor-11287 .elementor-element.elementor-element-f721f5a.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-11287 .elementor-element.elementor-element-9547b26{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:30px 30px;--row-gap:30px;--column-gap:30px;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-11287 .elementor-element.elementor-element-9547b26.e-con{--align-self:center;}.elementor-11287 .elementor-element.elementor-element-a2f0e72 .elementor-heading-title{font-family:"Alike Angular", Sans-serif;letter-spacing:6px;text-shadow:0px 0px 14px rgba(0,0,0,0.3);color:#76607B;}.elementor-11287 .elementor-element.elementor-element-c8927b2.elementor-element{--align-self:center;}.elementor-11287 .elementor-element.elementor-element-c8927b2{text-align:center;}.elementor-11287 .elementor-element.elementor-element-c8927b2 .elementor-heading-title{font-family:"Amsterdam", Sans-serif;font-size:82px;font-weight:300;text-shadow:0px 0px 14px rgba(0,0,0,0.3);color:#934CA3;}.elementor-11287 .elementor-element.elementor-element-85773ae{--display:flex;--position:absolute;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;bottom:0px;}body:not(.rtl) .elementor-11287 .elementor-element.elementor-element-85773ae{left:0px;}body.rtl .elementor-11287 .elementor-element.elementor-element-85773ae{right:0px;}.elementor-11287 .elementor-element.elementor-element-250253f > .elementor-widget-container{margin:-10px 0px 0px 0px;}.elementor-11287 .elementor-element.elementor-element-250253f img{width:34%;}.elementor-11287 .elementor-element.elementor-element-c2d3efb{--display:flex;}.elementor-11287 .elementor-element.elementor-element-6d4216d img{width:43%;}.elementor-11287 .elementor-element.elementor-element-2a9e4b9{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:-60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-11287 .elementor-element.elementor-element-8435944 .elementor-icon-wrapper{text-align:center;}.elementor-11287 .elementor-element.elementor-element-8435944.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-8435944.elementor-view-framed .elementor-icon, .elementor-11287 .elementor-element.elementor-element-8435944.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-8435944.elementor-view-framed .elementor-icon, .elementor-11287 .elementor-element.elementor-element-8435944.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-549bd6f .elementor-icon-wrapper{text-align:center;}.elementor-11287 .elementor-element.elementor-element-549bd6f.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-549bd6f.elementor-view-framed .elementor-icon, .elementor-11287 .elementor-element.elementor-element-549bd6f.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-549bd6f.elementor-view-framed .elementor-icon, .elementor-11287 .elementor-element.elementor-element-549bd6f.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-f680dff .elementor-icon-wrapper{text-align:center;}.elementor-11287 .elementor-element.elementor-element-f680dff.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-f680dff.elementor-view-framed .elementor-icon, .elementor-11287 .elementor-element.elementor-element-f680dff.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-f680dff.elementor-view-framed .elementor-icon, .elementor-11287 .elementor-element.elementor-element-f680dff.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-11287 .elementor-element.elementor-element-bbf440d > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-11287 .elementor-element.elementor-element-38d71f1 > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-11287 .elementor-element.elementor-element-b3bdc42 > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-11287 .elementor-element.elementor-element-61a52a3{--display:flex;}.elementor-11287 .elementor-element.elementor-element-384d186{--display:flex;}.elementor-11287 .elementor-element.elementor-element-e8ffbd5 img{width:43%;}.elementor-11287 .elementor-element.elementor-element-1f4f361{--display:flex;}.elementor-11287 .elementor-element.elementor-element-935cc14{--display:flex;}@media(max-width:1024px){.elementor-11287 .elementor-element.elementor-element-9547b26{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-11287 .elementor-element.elementor-element-a2f0e72 .elementor-heading-title{font-size:24px;}.elementor-11287 .elementor-element.elementor-element-c8927b2 .elementor-heading-title{font-size:80px;}.elementor-11287 .elementor-element.elementor-element-2a9e4b9{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-11287 .elementor-element.elementor-element-f721f5a{--width:45.101%;}.elementor-11287 .elementor-element.elementor-element-2a9e4b9{--content-width:969px;}}@media(min-width:1025px){.elementor-11287 .elementor-element.elementor-element-f721f5a:not(.elementor-motion-effects-element-type-background), .elementor-11287 .elementor-element.elementor-element-f721f5a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}@media(max-width:767px){.elementor-11287 .elementor-element.elementor-element-f721f5a:not(.elementor-motion-effects-element-type-background), .elementor-11287 .elementor-element.elementor-element-f721f5a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://mairiprint.com.br/wp-content/uploads/2025/11/vic-001.png");background-position:top center;background-size:753px auto;}.elementor-11287 .elementor-element.elementor-element-9547b26{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-11287 .elementor-element.elementor-element-a2f0e72 .elementor-heading-title{font-size:20px;letter-spacing:4.2px;}.elementor-11287 .elementor-element.elementor-element-c8927b2 > .elementor-widget-container{margin:-13px 0px 0px 0px;}.elementor-11287 .elementor-element.elementor-element-c8927b2 .elementor-heading-title{font-size:39px;}.elementor-11287 .elementor-element.elementor-element-85773ae{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-11287 .elementor-element.elementor-element-250253f > .elementor-widget-container{margin:-100px 0px 0px 0px;}.elementor-11287 .elementor-element.elementor-element-250253f img{width:76%;}.elementor-11287 .elementor-element.elementor-element-6d4216d > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-11287 .elementor-element.elementor-element-6d4216d img{width:89%;}.elementor-11287 .elementor-element.elementor-element-2a9e4b9{--content-width:500px;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-11287 .elementor-element.elementor-element-e8ffbd5 img{width:82%;}.elementor-11287 .elementor-element.elementor-element-1f4f361:not(.elementor-motion-effects-element-type-background), .elementor-11287 .elementor-element.elementor-element-1f4f361 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://mairiprint.com.br/wp-content/uploads/2025/11/vic-003.png");background-position:top center;background-repeat:no-repeat;background-size:640px auto;}.elementor-11287 .elementor-element.elementor-element-1f4f361{--content-width:500px;--min-height:746px;}}/* Start custom CSS for container, class: .elementor-element-f721f5a */:root {
  --invite-purple: #8F738C;
}

/* FADES DAS FOTOS */
.hero-invite,
.bottom-photo {
  position: relative;
  overflow: hidden;
}

.hero-invite::before,
.bottom-photo::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background: linear-gradient(
    to bottom,
    #ffffff 0%,
    rgba(255, 255, 255, 0) 20%,
    rgba(255, 255, 255, 0) 80%,
    #ffffff 100%
  );
}

.hero-invite > .elementor-container,
.bottom-photo > .elementor-container {
  position: relative;
  z-index: 1;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-248ec4e */.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-info {
  text-align: center;
  color: #777;
  padding: 24px 24px 14px;
  font-family: "Playfair Display", serif;
}

/* LINHA COM DATA E HORÁRIO */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-date-time {
  display: flex;
  justify-content: center;
  gap: 52px;
  margin-bottom: 22px;
  color: var(--invite-purple);
}

/* “SEXTA-FEIRA” (em cima do 23 JANEIRO) */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-weekday {
  display: block;
  font-size: 13px;
  letter-spacing: 2px;
  margin-bottom: 6px;
}

/* DIA GRANDE */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-day {
  display: block;
  font-size: 52px;
  line-height: 1;
}

/* MÊS */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-month {
  display: block;
  font-size: 15px;
  letter-spacing: 2px;
}

/* “A PARTIR DAS” – menor, numa linha acima */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-label {
  display: block;
  font-size: 13px;
  letter-spacing: 2px;
  margin-bottom: 4px;
}

/* “19H30” – maior embaixo */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-hour {
  display: block;
  font-size: 30px;
  line-height: 1.2;
}

/* NOME DO LOCAL */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-location-title {
  margin: 18px 0 4px;
  font-size: 14px;
  letter-spacing: 2px;
  color: var(--invite-purple);
}

/* ENDEREÇO */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-location-text {
  margin: 0 0 12px;
  font-size: 13.5px;
  line-height: 1.6;
}

/* TRAJE */
.elementor-11287 .elementor-element.elementor-element-248ec4e .invite-dress-code {
  margin: 4px 0 0;
  font-size: 12px;
  letter-spacing: 2px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2a9e4b9 *//* Container geral dos ícones */
.elementor-11287 .elementor-element.elementor-element-2a9e4b9 {
  text-align: center;
  padding: 20px 10px 30px;
}

/* Ícones redondinhos com sombra suave */
.elementor-11287 .elementor-element.elementor-element-2a9e4b9 .elementor-icon {
  background: var(--invite-purple);
  color: #fff;
  border-radius: 50%;
  padding: 20px;
  border: 2px solid rgba(255, 255, 255, 0.85);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.16);
  margin-bottom: 8px;

  /* animações suaves */
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    background 0.25s ease,
    border-color 0.25s ease;
}

/* Hover do ícone – cresce e "flutua" um pouquinho */
.elementor-11287 .elementor-element.elementor-element-2a9e4b9 .elementor-widget-icon:hover .elementor-icon {
  transform: scale(1.08) translateY(-4px);
  box-shadow: 0 14px 26px rgba(0, 0, 0, 0.22);
  background: linear-gradient(135deg, var(--invite-purple), #cfa9da);
  border-color: rgba(255, 255, 255, 1);
}

/* Título abaixo do ícone */
.elementor-11287 .elementor-element.elementor-element-2a9e4b9 .elementor-heading-title {
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--invite-purple);
  text-transform: uppercase;
  font-weight: 500;

  transition:
    color 0.25s ease,
    transform 0.25s ease;
}

/* Efeito no texto quando passa o mouse por cima dele */
.elementor-11287 .elementor-element.elementor-element-2a9e4b9 .elementor-widget-heading:hover .elementor-heading-title {
  color: #b083c6;
  transform: translateY(-2px);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a3d17ea *//* Paleta */
:root {
  --lilac: #8b6a9d;
  --lilac-dark: #6a4c80;
  --pink-soft: #fbe9f3;
  --pink-soft-2: #f8dfe9;
  --text-soft: #7a5b80;
}

/* deixa o ícone com carinha de botão */
.js-btn-sugestoes {
  cursor: pointer;
}

/* SEÇÃO DA BOX DE PRESENTES (começa fechada) */
#gift-box {
  max-width: 520px;
  margin: 24px auto 40px;
  background: linear-gradient(145deg, var(--pink-soft), #ffffff);
  border-radius: 26px;
  box-shadow: 0 18px 45px rgba(139,106,157,0.18);
  overflow: hidden;
  text-align: center;

  max-height: 0;
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
  transition:
    max-height 0.55s ease,
    opacity 0.45s ease,
    transform 0.45s ease;
}

/* conteúdo interno */
#gift-box .gift-box-inner {
  padding: 18px 22px 22px;
}

/* quando aberta */
#gift-box.is-open {
  max-height: 600px; /* grande o suficiente p/ o conteúdo */
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* título da box */
.gift-box-title {
  font-family: "Playfair Display","Cormorant Garamond",serif;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lilac-dark);
  margin: 4px 0 8px;
}

/* texto introdutório */
.gift-box-text {
  font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--text-soft);
  margin: 0;
}

/* GRID dos chips */
.gift-grid {
  margin: 18px 0 10px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

@media (min-width: 480px) {
  .gift-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* cada chip */
.gift-chip {
  background: radial-gradient(circle at top left, var(--pink-soft-2), #ffffff);
  border-radius: 999px;
  border: 1px solid rgba(139,106,157,0.18);
  box-shadow: 0 6px 18px rgba(139,106,157,0.12);
  padding: 8px 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* texto do chip */
.gift-chip-label {
  font-family: "Montserrat", system-ui, sans-serif;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  color: var(--lilac-dark);
  text-align: center;
}

.gift-chip-label small {
  display: block;
  font-size: 0.7rem;
  text-transform: none;
  letter-spacing: 0.03em;
  color: var(--text-soft);
}

/* frase final */
.gift-box-footer {
  font-family: "Montserrat", system-ui, sans-serif;
  font-size: 0.85rem;
  color: var(--text-soft);
  margin: 8px 0 0;
}

/* estado ativo do botão de presentes (opcional) */
.js-btn-sugestoes.is-active {
  transform: translateY(-2px);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  box-shadow: 0 10px 24px rgba(139,106,157,0.35);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d94adfb *//* CONTAINER FIXO DAS LANTERNAS */
.lanterns-flying {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 3; /* ajusta se precisar ficar mais pra frente ou pra trás */
}

/* BASE DAS LANTERNAS */
.lantern {
  position: absolute;
  bottom: -24vh;        /* começam um pouco abaixo da viewport */
  width: 54px;          /* tamanho delicado */
  opacity: 0;
  filter: blur(0px);
  will-change: transform, opacity, filter;

  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-fill-mode: forwards;
  animation-duration: 30s; /* duração fixa p/ todas => padrão constante */
}

/* POSIÇÕES E DELAYS – AQUI ESTÁ O “UM DEPOIS DO OUTRO” */
.lantern--left {
  left: 8vw;
  animation-name: flyLantern1;
  animation-delay: 0s;     /* começa primeiro */
}

.lantern--center {
  left: 50%;
  transform: translateX(-50%);
  animation-name: flyLantern2;
  animation-delay: 10s;    /* entra ~quando a primeira está no meio */
}

.lantern--right {
  right: 7vw;
  animation-name: flyLantern3;
  animation-delay: 20s;    /* entra quando a segunda já está bem pra cima */
}

/* --------------- ANIMAÇÕES --------------- */
/* ESQUERDA – curva suave pra direita, sobe devagar e some com blur */
@keyframes flyLantern1 {
  0% {
    transform: translate(0vw, 4vh) rotate(-4deg);
    opacity: 0;
    filter: blur(0px);
  }
  5% {
    opacity: 1;             /* aparece rápido embaixo */
    filter: blur(0px);
  }
  25% {
    transform: translate(5vw, -18vh) rotate(-1deg);
    opacity: 1;
    filter: blur(0px);
  }
  55% {
    transform: translate(11vw, -45vh) rotate(2deg);
    opacity: 1;             /* bem visível mais ou menos no meio */
    filter: blur(0px);
  }
  80% {
    transform: translate(17vw, -82vh) rotate(3deg);
    opacity: 0.6;           /* começa o fade */
    filter: blur(2px);      /* começa o desfoque */
  }
  100% {
    transform: translate(21vw, -120vh) rotate(4deg);
    opacity: 0;             /* some lá em cima */
    filter: blur(4px);      /* bem desfocada */
  }
}

/* MEIO – zig zag mais forte, indo pra um lado e pro outro */
@keyframes flyLantern2 {
  0% {
    transform: translate(-3vw, 6vh) rotate(0deg);
    opacity: 0;
    filter: blur(0px);
  }
  6% {
    opacity: 1;
    filter: blur(0px);
  }
  20% {
    transform: translate(4vw, -10vh) rotate(3deg);
    opacity: 1;
    filter: blur(0px);
  }
  35% {
    transform: translate(-6vw, -26vh) rotate(-3deg);
    opacity: 1;
    filter: blur(0px);
  }
  55% {
    transform: translate(7vw, -50vh) rotate(2deg);
    opacity: 1;             /* meio da tela, ainda nítida */
    filter: blur(0px);
  }
  75% {
    transform: translate(-9vw, -82vh) rotate(-4deg);
    opacity: 0.6;           /* começa a sumir aqui */
    filter: blur(2px);      /* começa a desfocar */
  }
  100% {
    transform: translate(-13vw, -125vh) rotate(-1deg);
    opacity: 0;
    filter: blur(4px);      /* bem desfocada no fim */
  }
}

/* DIREITA – vindo da direita e aproximando do centro */
@keyframes flyLantern3 {
  0% {
    transform: translate(0vw, 4vh) rotate(3deg);
    opacity: 0;
    filter: blur(0px);
  }
  5% {
    opacity: 1;
    filter: blur(0px);
  }
  22% {
    transform: translate(-4vw, -14vh) rotate(0deg);
    opacity: 1;
    filter: blur(0px);
  }
  45% {
    transform: translate(-8vw, -38vh) rotate(1deg);
    opacity: 1;
    filter: blur(0px);
  }
  75% {
    transform: translate(-13vw, -80vh) rotate(2deg);
    opacity: 0.6;
    filter: blur(2px);
  }
  100% {
    transform: translate(-17vw, -120vh) rotate(0deg);
    opacity: 0;
    filter: blur(4px);
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Amsterdam';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://mairiprint.com.br/wp-content/uploads/2025/11/Amsterdam.ttf') format('truetype');
}
/* End Custom Fonts CSS */