.elementor-kit-6{--e-global-color-primary:#0B2A1D;--e-global-color-secondary:#C8202F;--e-global-color-text:#1B1A17;--e-global-color-accent:#F2C14E;--e-global-color-ji_cream:#FFF6E7;--e-global-color-ji_snow:#FFFDF8;--e-global-color-ji_muted:#5C665F;--e-global-typography-primary-font-family:"DM Serif Display";--e-global-typography-primary-font-size:48px;--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Figtree";--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Figtree";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Figtree";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-ji_script-font-family:"Yellowtail";--e-global-typography-ji_script-font-size:30px;--e-global-typography-ji_script-font-weight:400;background-color:#FFFDF8;color:#1B1A17;font-family:"Figtree", Sans-serif;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root { --ji-pine: #0B2A1D; --ji-pine-2: #123B29; --ji-pine-3: #1C5038; --ji-red: #C8202F; --ji-red-d: #A3121F; --ji-gold: #F2C14E; --ji-gold-l: #FFE7A3; --ji-cream: #FFF6E7; --ji-snow: #FFFDF8; --ji-white: #FFFFFF; --ji-ink: #1B1A17; --ji-muted: #5C665F; --ji-line: #EADFCB; --ji-serif: "DM Serif Display",Georgia,serif; --ji-sans: "Figtree",system-ui,-apple-system,"Segoe UI",sans-serif; --ji-script: "Yellowtail",cursive; --ji-r: 24px; --ji-r-lg: 32px; --ji-shadow: 0 18px 50px rgba(11,42,29,.12); --ji-shadow-lg: 0 30px 80px rgba(11,42,29,.22); --ji-sec: 112px; }
@media (max-width: 1024px) {
  :root { --ji-sec: 88px; }
}
@media (max-width: 767px) {
  :root { --ji-sec: 64px; }
}
body { font-family: var(--ji-sans); color: var(--ji-ink); background: var(--ji-snow); -webkit-font-smoothing: antialiased; }
body .elementor a { transition: color 0.2s; }
.elementor .e-con.ji-sec { --padding-top: var(--ji-sec); --padding-bottom: var(--ji-sec); --padding-left: 24px; --padding-right: 24px; position: relative; overflow: hidden; }
.elementor .e-con.ji-sec-tight { --padding-top: 64px; --padding-bottom: 64px; }
.elementor .ji-bg-snow { background: var(--ji-snow); }
.elementor .ji-bg-cream { background: var(--ji-cream); }
.elementor .ji-bg-white { background: rgb(255, 255, 255); }
.elementor .ji-bg-pine { background: radial-gradient(1200px 500px at 85% 0%,rgba(242,193,78,.10),transparent 60%),radial-gradient(900px 500px at 0% 100%,rgba(200,32,47,.12),transparent 60%),var(--ji-pine); color: rgb(243, 235, 221); }
.elementor .ji-bg-red { background: var(--ji-red); color: rgb(255, 255, 255); }
.elementor .e-con > .e-con-inner { position: relative; z-index: 2; }
.elementor .ji-eyebrow .elementor-heading-title { font-family: var(--ji-script); font-size: 30px; line-height: 1.1; color: var(--ji-red); font-weight: 400; letter-spacing: 0px; text-transform: none; }
.elementor .ji-on-dark .ji-eyebrow .elementor-heading-title, .elementor .ji-eyebrow.ji-gold .elementor-heading-title { color: var(--ji-gold); }
.elementor .ji-kicker .elementor-heading-title { font-family: var(--ji-sans); font-size: 13px; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ji-red); }
.elementor .ji-h1 .elementor-heading-title { letter-spacing: -0.01em; color: rgb(255, 255, 255); font-family: var(--ji-serif); font-weight: 400; font-size: 64px; line-height: 1.04; }
.elementor .ji-h2 .elementor-heading-title { letter-spacing: -0.01em; color: var(--ji-pine); font-family: var(--ji-serif); font-weight: 400; font-size: 50px; line-height: 1.08; }
.elementor .ji-h3 .elementor-heading-title { color: var(--ji-pine); font-family: var(--ji-serif); font-weight: 400; font-size: 28px; line-height: 1.15; }
.elementor .ji-h2 .elementor-heading-title em, .elementor .ji-h1 .elementor-heading-title em, .elementor .ji-h3 .elementor-heading-title em { font-style: normal; color: var(--ji-red); }
.elementor .ji-on-dark .ji-h2 .elementor-heading-title, .elementor .ji-on-dark .ji-h3 .elementor-heading-title { color: rgb(255, 255, 255); }
.elementor .ji-on-dark .ji-h2 .elementor-heading-title em, .elementor .ji-on-dark .ji-h1 .elementor-heading-title em { color: var(--ji-gold); }
.elementor .ji-lead, .elementor .ji-lead p { font-size: 18px; line-height: 1.7; color: var(--ji-muted); }
.elementor .ji-body, .elementor .ji-body p { font-size: 16px; line-height: 1.7; color: var(--ji-muted); }
.elementor .ji-lead p:last-child, .elementor .ji-body p:last-child { margin-bottom: 0px; }
.elementor .ji-on-dark .ji-lead, .elementor .ji-on-dark .ji-lead p, .elementor .ji-on-dark .ji-body, .elementor .ji-on-dark .ji-body p { color: rgba(243, 235, 221, 0.82); }
.elementor .ji-center { text-align: center; }
.elementor .ji-center .elementor-heading-title { text-align: center; }
.elementor .ji-measure { max-width: 640px; margin-left: auto; margin-right: auto; }
@media (max-width: 1024px) {
  .elementor .ji-h1 .elementor-heading-title { font-size: 52px; }
  .elementor .ji-h2 .elementor-heading-title { font-size: 42px; }
}
@media (max-width: 767px) {
  .elementor .ji-h1 .elementor-heading-title { font-size: 40px; }
  .elementor .ji-h2 .elementor-heading-title { font-size: 34px; }
  .elementor .ji-h3 .elementor-heading-title { font-size: 24px; }
  .elementor .ji-lead, .elementor .ji-lead p { font-size: 17px; }
  .elementor .ji-eyebrow .elementor-heading-title { font-size: 26px; }
}
.elementor .ji-btn .elementor-button { font-family: var(--ji-sans); font-weight: 700; font-size: 16px; line-height: 1; padding: 18px 28px; border-radius: 999px; border: 2px solid transparent; transition: transform 0.25s, box-shadow 0.25s, background 0.25s, color 0.25s; display: inline-flex; align-items: center; }
.elementor .ji-btn .elementor-button:hover { transform: translateY(-2px); }
.elementor .ji-btn .elementor-button-content-wrapper { gap: 10px; align-items: center; }
.elementor .ji-btn .elementor-button-icon { font-size: 15px; margin: 0px !important; }
.elementor .ji-btn .elementor-button-icon svg { width: 15px; height: 15px; fill: currentcolor; }
.elementor .ji-btn-red .elementor-button { background: var(--ji-red); color: rgb(255, 255, 255); box-shadow: rgba(200, 32, 47, 0.35) 0px 12px 30px; }
.elementor .ji-btn-red .elementor-button:hover { background: var(--ji-red-d); color: rgb(255, 255, 255); }
.elementor .ji-btn-white .elementor-button { background: rgb(255, 255, 255); color: var(--ji-pine); box-shadow: rgba(0, 0, 0, 0.12) 0px 12px 30px; }
.elementor .ji-btn-white .elementor-button:hover { background: var(--ji-gold); color: var(--ji-pine); }
.elementor .ji-btn-pine .elementor-button { background: var(--ji-pine); color: rgb(255, 255, 255); }
.elementor .ji-btn-pine .elementor-button:hover { background: var(--ji-pine-3); color: rgb(255, 255, 255); }
.elementor .ji-btn-ghost .elementor-button { background: transparent; color: rgb(255, 255, 255); border-color: rgba(255, 255, 255, 0.55); }
.elementor .ji-btn-ghost .elementor-button:hover { background: rgb(255, 255, 255); color: var(--ji-pine); border-color: rgb(255, 255, 255); }
.elementor .ji-btn-outline .elementor-button { background: transparent; color: var(--ji-pine); border-color: var(--ji-pine); }
.elementor .ji-btn-outline .elementor-button:hover { background: var(--ji-pine); color: rgb(255, 255, 255); }
.elementor .ji-btn-link .elementor-button { background: none; padding: 0px; color: var(--ji-red); font-weight: 700; box-shadow: none; }
.elementor .ji-btn-link .elementor-button:hover { color: var(--ji-pine); transform: none; }
.elementor .ji-btn-sm .elementor-button { padding: 13px 22px; font-size: 15px; }
@media (max-width: 767px) {
  .elementor .ji-btns > .e-con-inner, .elementor .e-con.ji-btns { --flex-direction: column; --align-items: stretch; }
  .elementor .ji-btns .ji-btn .elementor-button { width: 100%; justify-content: center; }
}
.elementor .e-con.ji-card { background: rgb(255, 255, 255); border-radius: var(--ji-r); box-shadow: var(--ji-shadow); --padding-top: 32px; --padding-bottom: 32px; --padding-left: 32px; --padding-right: 32px; transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.35s; position: relative; overflow: hidden; }
.elementor .e-con.ji-card:hover { transform: translateY(-6px); box-shadow: var(--ji-shadow-lg); }
.elementor .e-con.ji-card-flat { box-shadow: none; border: 1px solid var(--ji-line); }
.elementor .e-con.ji-card-glass { background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.16); backdrop-filter: blur(8px); box-shadow: none; }
.elementor .e-con.ji-card-glass:hover { background: rgba(255, 255, 255, 0.12); }
.elementor .e-con.ji-nopad { --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; }
.elementor .e-con.ji-grid-2, .elementor .e-con.ji-grid-3, .elementor .e-con.ji-grid-4, .elementor .e-con.ji-grid-6 { gap: 28px; display: grid !important; }
.elementor .e-con.ji-grid-2 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.elementor .e-con.ji-grid-3 { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.elementor .e-con.ji-grid-4 { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
.elementor .e-con.ji-grid-6 { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.elementor .e-con.ji-grid-2 > .e-con, .elementor .e-con.ji-grid-3 > .e-con, .elementor .e-con.ji-grid-4 > .e-con, .elementor .e-con.ji-grid-6 > .e-con { width: auto; max-width: none; }
@media (max-width: 1024px) {
  .elementor .e-con.ji-grid-3, .elementor .e-con.ji-grid-4, .elementor .e-con.ji-grid-6 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (max-width: 767px) {
  .elementor .e-con.ji-grid-2, .elementor .e-con.ji-grid-3, .elementor .e-con.ji-grid-4, .elementor .e-con.ji-grid-6 { grid-template-columns: 1fr; gap: 20px; }
}
.elementor .e-con.ji-split { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 72px; align-items: center; display: grid !important; }
.elementor .e-con.ji-split.ji-split-wide { grid-template-columns: minmax(0px, 1.1fr) minmax(0px, 0.9fr); }
.elementor .e-con.ji-split.ji-split-narrow { grid-template-columns: minmax(0px, 0.85fr) minmax(0px, 1.15fr); }
.elementor .e-con.ji-split > .e-con { width: auto; }
@media (max-width: 1024px) {
  .elementor .e-con.ji-split, .elementor .e-con.ji-split.ji-split-wide, .elementor .e-con.ji-split.ji-split-narrow { grid-template-columns: 1fr; gap: 48px; }
}
.elementor .e-con.ji-head { max-width: 760px; margin: 0px auto 56px; text-align: center; align-items: center; }
.elementor .e-con.ji-head-left { margin-bottom: 48px; }
@media (max-width: 767px) {
  .elementor .e-con.ji-head { margin-bottom: 36px; }
}
.elementor .ji-ibox .elementor-icon-box-icon { margin-bottom: 18px !important; }
.elementor .ji-ibox .elementor-icon { width: 60px; height: 60px; border-radius: 18px; background: rgba(200, 32, 47, 0.1); color: var(--ji-red); align-items: center; justify-content: center; transition: transform 0.3s; display: inline-flex !important; font-size: 24px; }
.elementor .ji-ibox .elementor-icon svg { width: 24px; height: 24px; fill: currentcolor; }
.elementor .ji-ibox .elementor-icon-box-title { font-family: var(--ji-sans); font-weight: 800; font-size: 19px; line-height: 1.3; color: var(--ji-pine); margin: 0px 0px 8px; }
.elementor .ji-ibox .elementor-icon-box-title a { color: inherit; }
.elementor .ji-ibox .elementor-icon-box-description { font-size: 15.5px; line-height: 1.65; color: var(--ji-muted); margin: 0px; }
.elementor .ji-ibox.ji-ibox-gold .elementor-icon { background: rgba(242, 193, 78, 0.18); color: rgb(176, 127, 18); }
.elementor .ji-ibox.ji-ibox-green .elementor-icon { background: rgba(28, 80, 56, 0.1); color: var(--ji-pine-3); }
.elementor .ji-on-dark .ji-ibox .elementor-icon { background: rgba(242, 193, 78, 0.16); color: var(--ji-gold); }
.elementor .ji-on-dark .ji-ibox .elementor-icon-box-title { color: rgb(255, 255, 255); }
.elementor .ji-on-dark .ji-ibox .elementor-icon-box-description { color: rgba(243, 235, 221, 0.78); }
.elementor .e-con.ji-card:hover .ji-ibox .elementor-icon { transform: rotate(-6deg) scale(1.06); }
.elementor .ji-checks .elementor-icon-list-items { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 14px 28px; }
.elementor .ji-checks.ji-checks-1 .elementor-icon-list-items { grid-template-columns: 1fr; }
.elementor .ji-checks .elementor-icon-list-item { margin: 0px !important; padding: 0px; align-items: center !important; }
.elementor .ji-checks .elementor-icon-list-item::after { display: none !important; }
.elementor .ji-checks .elementor-icon-list-icon { width: 26px; height: 26px; min-width: 26px; border-radius: 50%; background: var(--ji-red); color: rgb(255, 255, 255); display: inline-flex; align-items: center; justify-content: center; margin-right: 12px; }
.elementor .ji-checks .elementor-icon-list-icon svg, .elementor .ji-checks .elementor-icon-list-icon i { height: 12px; fill: rgb(255, 255, 255); color: rgb(255, 255, 255); width: 12px; font-size: 12px; }
.elementor .ji-checks .elementor-icon-list-text { font-weight: 600; font-size: 16px; color: var(--ji-ink); }
.elementor .ji-on-dark .ji-checks .elementor-icon-list-text { color: rgb(255, 255, 255); }
@media (max-width: 767px) {
  .elementor .ji-checks .elementor-icon-list-items { grid-template-columns: 1fr; }
}
.elementor .ji-pill .elementor-heading-title { display: inline-flex; align-items: center; gap: 10px; padding: 9px 18px; border-radius: 999px; background: rgba(242, 193, 78, 0.14); border: 1px solid rgba(242, 193, 78, 0.45); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ji-gold); font: 800 12.5px/1 var(--ji-sans); }
.elementor .ji-pill .elementor-heading-title::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--ji-gold); box-shadow: rgba(242, 193, 78, 0.25) 0px 0px 0px 4px; animation: 1.8s ease-in-out 0s infinite normal none running ji-pulse; }
.elementor .ji-chips .elementor-icon-list-items { display: flex; flex-wrap: wrap; gap: 12px; }
.elementor .ji-chips .elementor-icon-list-item { border-radius: 999px; background: rgb(255, 255, 255); border: 1px solid var(--ji-line); box-shadow: rgba(11, 42, 29, 0.06) 0px 6px 16px; margin: 0px !important; padding: 10px 18px; }
.elementor .ji-chips .elementor-icon-list-item::after { display: none !important; }
.elementor .ji-chips .elementor-icon-list-icon { color: var(--ji-red); margin-right: 8px; }
.elementor .ji-chips .elementor-icon-list-icon svg { width: 14px; height: 14px; fill: var(--ji-red); }
.elementor .ji-chips .elementor-icon-list-text { font-weight: 700; color: var(--ji-pine); font-size: 15px; }
.elementor .ji-img img { border-radius: var(--ji-r-lg); width: 100%; object-fit: cover; display: block; box-shadow: var(--ji-shadow-lg); }
.elementor .ji-img-arch img { border-radius: 999px 999px var(--ji-r-lg) var(--ji-r-lg); }
.elementor .ji-img-round img { border-radius: 50%; aspect-ratio: 1 / 1; }
.elementor .ji-ratio-43 img { aspect-ratio: 4 / 3; }
.elementor .ji-ratio-45 img { aspect-ratio: 4 / 5; }
.elementor .ji-ratio-169 img { aspect-ratio: 16 / 10; }
.elementor .ji-ratio-1 img { aspect-ratio: 1 / 1; }
.elementor .ji-frame img { border: 8px solid rgb(255, 255, 255); }
@keyframes ji-pulse { 
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(0.7); opacity: 0.6; }
}
@keyframes ji-tw { 
  0%, 100% { opacity: 1; }
  50% { opacity: 0.35; }
}
@keyframes ji-glow { 
  0%, 100% { opacity: 0.15; transform: scale(0.8); }
  50% { opacity: 0.6; transform: scale(1.35); }
}
@keyframes ji-snowfall { 
  0% { background-position: 0px 0px, 0px 0px, 0px 0px; }
  100% { background-position: 120px 900px, -80px 900px, 40px 900px; }
}
@keyframes ji-float { 
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-12px); }
}
@keyframes ji-sway { 
  0%, 100% { transform: rotate(-6deg); }
  50% { transform: rotate(4deg); }
}
@keyframes ji-shine { 
  100% { background-position: 200% center; }
}
.elementor .ji-float { animation: 5s ease-in-out 0s infinite normal none running ji-float; }
.elementor .e-con.ji-snowfall::before { content: ""; position: absolute; inset: 0px; z-index: 1; pointer-events: none; opacity: 0.85; background-image: radial-gradient(2.5px 2.5px at 20px 30px, rgb(255, 255, 255) 50%, transparent 51%), radial-gradient(2px 2px at 90px 120px, rgba(255, 255, 255, 0.9) 50%, transparent 51%), radial-gradient(3px 3px at 160px 60px, rgba(255, 255, 255, 0.8) 50%, transparent 51%); background-size: 180px 180px, 240px 240px, 300px 300px; animation: 22s linear 0s infinite normal none running ji-snowfall; }
.elementor .e-con.ji-drift::after { content: ""; position: absolute; left: 0px; right: 0px; bottom: -1px; height: 70px; z-index: 3; pointer-events: none; background: var(--ji-drift,#FFFDF8); mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath d='M0 40C120 10 220 52 340 34S560 0 700 26s260 30 380 10 260-26 360 6V70H0Z'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat; }
.elementor .e-con.ji-drift-cream { --ji-drift: #FFF6E7; }
.elementor .e-con.ji-drift-white { --ji-drift: #FFFFFF; }
.elementor .e-con.ji-drift-pine { --ji-drift: #0B2A1D; }
.elementor .e-con.ji-trees { --padding-bottom: calc(var(--ji-sec) + 70px); }
.elementor .e-con.ji-trees::after { content: ""; position: absolute; left: 0px; right: 0px; bottom: 0px; height: 150px; z-index: 1; pointer-events: none; opacity: 0.9; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 150'%3E%3Cg fill='%23DDE8E2'%3E%3Cpath d='M40 150l30-58H55l24-40H66l22-40 22 40H97l24 40h-15l30 58z'/%3E%3Cpath d='M300 150l22-44h-11l18-30h-10l17-30 17 30h-10l18 30h-11l22 44z'/%3E%3C/g%3E%3Cg fill='%23fff'%3E%3Cpath d='M74 92l14-22 14 22-7-3-7 4-7-4zM79 52l9-16 9 16-5-2-4 3-4-3z'/%3E%3C/g%3E%3Cpath fill='%23ECF2EE' d='M0 150c60-14 120-14 200-4s140 10 200-2v6z'/%3E%3C/svg%3E") left bottom / 400px 150px repeat-x; }
.elementor .ji-reindeer { right: 2%; bottom: 20px; z-index: 2; pointer-events: none; position: absolute !important; width: 170px; }
.elementor .ji-reindeer img { width: 100%; animation: 4s ease-in-out 0s infinite normal none running ji-sway; transform-origin: center bottom; }
@media (max-width: 1024px) {
  .elementor .ji-reindeer { display: none; }
}
.elementor .e-con.ji-hero { min-height: 760px; background-color: var(--ji-pine); background-size: cover; background-position: right center; --padding-top: 110px; --padding-bottom: 170px; --padding-left: 24px; --padding-right: 24px; position: relative; overflow: hidden; }
.elementor .e-con.ji-hero > .e-con-inner::before { content: ""; position: absolute; inset: -300px -2000px; z-index: -1; background: linear-gradient(90deg, rgba(7, 28, 19, 0.94) 0%, rgba(7, 28, 19, 0.84) 38%, rgba(7, 28, 19, 0.32) 70%, rgba(7, 28, 19, 0.12) 100%); }
.elementor .e-con.ji-hero > .e-con-inner::before { left: calc(-24px + (-1 * max(0px, -600px + 50vw))); right: calc(-24px + (-1 * max(0px, -600px + 50vw))); }
.elementor .ji-hero-copy { max-width: 640px; }
.elementor .ji-script-h1 .elementor-heading-title { position: relative; display: inline-block; text-shadow: rgba(0, 0, 0, 0.35) 0px 8px 30px; padding-right: 20px; font-family: var(--ji-script); font-weight: 400; font-size: 132px; line-height: 0.95; color: rgb(255, 255, 255); }
.elementor .ji-hat .elementor-heading-title::after { content: ""; position: absolute; width: 118px; height: 96px; right: -38px; top: -52px; transform: rotate(14deg); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 100'%3E%3Cdefs%3E%3ClinearGradient id='r' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23F04545'/%3E%3Cstop offset='1' stop-color='%23A3121F'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M14 74C20 40 44 10 74 8c18-1 30 10 32 28 1 9-2 18-6 24-3-12-9-22-20-24-14-2-24 10-30 22z' fill='url(%23r)'/%3E%3Cpath d='M78 14c14-2 26 8 28 22 0 6-1 12-4 16-2-10-8-18-18-22z' fill='%23000' opacity='.12'/%3E%3Crect x='4' y='66' width='88' height='22' rx='11' fill='%23fff'/%3E%3Cpath d='M10 72c8 3 18 2 26 4M44 70c10 2 20 3 30 1' stroke='%23E8E4DA' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3Ccircle cx='104' cy='66' r='12' fill='%23fff'/%3E%3Ccircle cx='100' cy='62' r='4' fill='%23F1EEE6'/%3E%3C/svg%3E") center center / contain no-repeat; filter: drop-shadow(rgba(0, 0, 0, 0.35) 0px 8px 12px); }
.elementor .ji-hero-sub .elementor-heading-title { letter-spacing: 0.02em; text-transform: uppercase; background: linear-gradient(90deg, rgb(242, 193, 78) 0%, rgb(255, 231, 163) 25%, rgb(242, 193, 78) 50%, rgb(255, 231, 163) 75%, rgb(242, 193, 78) 100%) 0% 0% / 200% auto text; animation: 5s linear 0s infinite normal none running ji-shine; font-family: var(--ji-serif); font-size: 52px; line-height: 1; font-weight: 400; color: transparent; }
.elementor .ji-hero-tag .elementor-heading-title { font: 700 22px/1.3 var(--ji-sans); color: rgb(255, 255, 255); }
@media (max-width: 1024px) {
  .elementor .e-con.ji-hero { min-height: 0px; --padding-top: 80px; --padding-bottom: 150px; }
  .elementor .ji-script-h1 .elementor-heading-title { font-size: 104px; }
  .elementor .ji-hero-sub .elementor-heading-title { font-size: 42px; }
  .elementor .e-con.ji-hero > .e-con-inner::before { background: linear-gradient(90deg, rgba(7, 28, 19, 0.92), rgba(7, 28, 19, 0.6)); }
}
@media (max-width: 767px) {
  .elementor .e-con.ji-hero { --padding-top: 56px; --padding-bottom: 130px; }
  .elementor .ji-script-h1 .elementor-heading-title { font-size: 76px; }
  .elementor .ji-hat .elementor-heading-title::after { width: 78px; height: 64px; right: -22px; top: -34px; }
  .elementor .ji-hero-sub .elementor-heading-title { font-size: 30px; }
  .elementor .ji-hero-tag .elementor-heading-title { font-size: 18px; }
  .elementor .e-con.ji-hero > .e-con-inner::before { background: rgba(7, 28, 19, 0.78); }
}
.elementor .e-con.ji-trust-wrap { --padding-top: 0; --padding-bottom: 0; --padding-left: 24px; --padding-right: 24px; margin-top: -86px; position: relative; z-index: 5; background: transparent; }
.elementor .e-con.ji-trust { background: rgb(255, 255, 255); border-radius: var(--ji-r); box-shadow: var(--ji-shadow-lg); grid-template-columns: repeat(4, minmax(0px, 1fr)); --padding-top: 28px; --padding-bottom: 28px; --padding-left: 16px; --padding-right: 16px; gap: 0px; display: grid !important; }
.elementor .e-con.ji-trust > .elementor-element { padding: 0px 20px; border-right: 1px solid var(--ji-line); }
.elementor .e-con.ji-trust > .elementor-element:last-child { border-right: 0px; }
.elementor .ji-trust .elementor-icon-box-wrapper { align-items: center; gap: 14px; display: flex !important; text-align: left; }
.elementor .ji-trust .elementor-icon-box-icon { margin: 0px !important; }
.elementor .ji-trust .elementor-icon { width: 52px; height: 52px; border-radius: 50%; background: var(--ji-red); color: rgb(255, 255, 255); align-items: center; justify-content: center; box-shadow: rgba(200, 32, 47, 0.3) 0px 8px 20px; display: inline-flex !important; font-size: 20px; }
.elementor .ji-trust .elementor-icon svg { width: 20px; height: 20px; fill: rgb(255, 255, 255); }
.elementor .ji-trust .elementor-icon-box-title { font: 800 16px/1.25 var(--ji-sans); color: var(--ji-pine); margin: 0px; }
.elementor .ji-trust .elementor-icon-box-description { font-size: 13.5px; color: var(--ji-muted); margin: 2px 0px 0px; }
@media (max-width: 1024px) {
  .elementor .e-con.ji-trust { grid-template-columns: repeat(2, minmax(0px, 1fr)); row-gap: 22px; }
  .elementor .e-con.ji-trust > .elementor-element:nth-child(2) { border-right: 0px; }
}
@media (max-width: 767px) {
  .elementor .e-con.ji-trust-wrap { margin-top: -70px; --padding-left: 16px; --padding-right: 16px; }
  .elementor .e-con.ji-trust { grid-template-columns: 1fr; row-gap: 16px; --padding-left: 8px; --padding-right: 8px; }
  .elementor .e-con.ji-trust > .elementor-element { border-right: 0px; border-bottom: 1px solid var(--ji-line); padding-bottom: 16px; }
  .elementor .e-con.ji-trust > .elementor-element:last-child { border-bottom: 0px; padding-bottom: 0px; }
}
.elementor .e-con.ji-phero { background-color: var(--ji-pine); background-size: cover; background-position: center center; --padding-top: 120px; --padding-bottom: 150px; --padding-left: 24px; --padding-right: 24px; position: relative; overflow: hidden; text-align: center; }
.elementor .e-con.ji-phero > .e-con-inner::before { content: ""; position: absolute; inset: -300px -2000px; z-index: -1; background: linear-gradient(rgba(7, 28, 19, 0.78), rgba(7, 28, 19, 0.88)); }
.elementor .e-con.ji-phero .ji-h1 .elementor-heading-title { text-align: center; }
.elementor .e-con.ji-perm-hero { text-align: left; }
.elementor .e-con.ji-perm-hero .ji-h1 .elementor-heading-title { text-align: left; }
.elementor .e-con.ji-perm-hero > .e-con-inner::before { background: linear-gradient(90deg, rgba(7, 28, 19, 0.95), rgba(7, 28, 19, 0.78)); }
.elementor .ji-crumb .elementor-heading-title { letter-spacing: 0.16em; text-transform: uppercase; font: 700 13px/1 var(--ji-sans); color: rgba(243, 235, 221, 0.75); }
@media (max-width: 767px) {
  .elementor .e-con.ji-phero { --padding-top: 72px; --padding-bottom: 110px; }
}
.elementor .e-con.ji-collage { position: relative; --padding-bottom: 80px; --padding-right: 70px; }
.elementor .ji-collage-main img { border-radius: var(--ji-r-lg); aspect-ratio: 4 / 4.4; object-fit: cover; box-shadow: var(--ji-shadow-lg); width: 100%; }
.elementor .ji-collage-small { right: 0px; bottom: 0px; z-index: 3; position: absolute !important; width: 46%; }
.elementor .ji-collage-small img { border-radius: var(--ji-r); border: 8px solid rgb(255, 255, 255); aspect-ratio: 4 / 5; object-fit: cover; box-shadow: var(--ji-shadow-lg); width: 100%; }
.elementor .e-con.ji-badge { left: -18px; bottom: 110px; z-index: 4; background: rgb(255, 255, 255); border-radius: 20px; box-shadow: var(--ji-shadow-lg); --padding-top: 16px; --padding-bottom: 16px; --padding-left: 18px; --padding-right: 22px; position: absolute !important; width: auto; }
.elementor .ji-badge .elementor-icon-box-wrapper { align-items: center; gap: 12px; display: flex !important; text-align: left; }
.elementor .ji-badge .elementor-icon-box-icon { margin: 0px !important; }
.elementor .ji-badge .elementor-icon { width: 44px; height: 44px; border-radius: 50%; background: var(--ji-red); color: rgb(255, 255, 255); align-items: center; justify-content: center; display: inline-flex !important; font-size: 18px; }
.elementor .ji-badge .elementor-icon svg { width: 18px; height: 18px; fill: rgb(255, 255, 255); }
.elementor .ji-badge .elementor-icon-box-title { font: 800 15px/1.2 var(--ji-sans); color: var(--ji-pine); margin: 0px; }
.elementor .ji-badge .elementor-icon-box-description { font-size: 13px; color: var(--ji-muted); margin: 2px 0px 0px; }
.elementor .e-con.ji-badge-year { inset: 24px -10px auto auto; background: var(--ji-red); text-align: center; --padding-left: 22px; --padding-right: 22px; }
.elementor .ji-badge-year .ji-year-small .elementor-heading-title { font: 400 22px/1 var(--ji-script); color: var(--ji-gold); }
.elementor .ji-badge-year .ji-year-big .elementor-heading-title { font: 400 44px/1 var(--ji-serif); color: rgb(255, 255, 255); }
@media (max-width: 767px) {
  .elementor .e-con.ji-collage { --padding-right: 28px; --padding-bottom: 60px; }
  .elementor .e-con.ji-badge { left: -6px; bottom: 80px; }
  .elementor .e-con.ji-badge-year { right: -4px; }
}
.elementor .e-con.ji-svc { --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; background: rgb(255, 255, 255); border-radius: var(--ji-r-lg); overflow: hidden; box-shadow: var(--ji-shadow); transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.35s; justify-content: flex-start; }
.elementor .e-con.ji-svc:hover { transform: translateY(-8px); box-shadow: var(--ji-shadow-lg); }
.elementor .ji-svc-img { overflow: hidden; }
.elementor .ji-svc-img img { width: 100%; aspect-ratio: 16 / 11; object-fit: cover; display: block; transition: transform 0.8s cubic-bezier(0.2, 0.7, 0.2, 1); }
.elementor .e-con.ji-svc:hover .ji-svc-img img { transform: scale(1.06); }
.elementor .e-con.ji-svc-body { --padding-top: 30px; --padding-bottom: 32px; --padding-left: 30px; --padding-right: 30px; position: relative; flex-grow: 1; }
.elementor .e-con.ji-svc-body .ji-ibox { margin-top: -62px; }
.elementor .e-con.ji-svc-body .ji-ibox .elementor-icon { width: 64px; height: 64px; border-radius: 50%; background: var(--ji-red); color: rgb(255, 255, 255); border: 5px solid rgb(255, 255, 255); box-shadow: rgba(200, 32, 47, 0.3) 0px 10px 24px; }
.elementor .e-con.ji-svc-body .ji-ibox .elementor-icon svg { fill: rgb(255, 255, 255); }
.elementor .e-con.ji-svc-body .ji-ibox .elementor-icon-box-title { font-family: var(--ji-serif); font-weight: 400; font-size: 26px; line-height: 1.15; }
.elementor .e-con.ji-svc-body .ji-btn-link { margin-top: auto; }
.elementor .ji-tag { top: -46px; right: 24px; z-index: 3; position: absolute !important; width: auto; }
.elementor .ji-tag .elementor-heading-title { display: inline-block; letter-spacing: 0.14em; text-transform: uppercase; background: var(--ji-gold); padding: 8px 12px; border-radius: 999px; box-shadow: rgba(0, 0, 0, 0.18) 0px 8px 18px; font: 800 11px/1 var(--ji-sans); color: var(--ji-pine); }
.elementor .e-con.ji-steps { position: relative; }
.elementor .e-con.ji-steps::before { content: ""; position: absolute; left: 12%; right: 12%; top: 62px; border-top: 2px dashed rgba(200, 32, 47, 0.35); z-index: 0; }
.elementor .e-con.ji-step { text-align: center; align-items: center; position: relative; z-index: 1; --padding-left: 8px; --padding-right: 8px; }
.elementor .ji-step-ico .elementor-icon-box-icon { margin-bottom: 20px !important; }
.elementor .ji-step-ico .elementor-icon { width: 96px; height: 96px; border-radius: 50%; background: rgb(255, 255, 255); color: var(--ji-red); align-items: center; justify-content: center; border: 2px solid rgba(200, 32, 47, 0.18); box-shadow: rgba(200, 32, 47, 0.06) 0px 0px 0px 10px, rgba(11, 42, 29, 0.12) 0px 18px 40px; position: relative; display: inline-flex !important; font-size: 34px; }
.elementor .ji-step-ico .elementor-icon svg { width: 34px; height: 34px; fill: var(--ji-red); }
.elementor .ji-step-ico .elementor-icon-box-title { font: 400 26px/1.15 var(--ji-serif); color: var(--ji-pine); margin: 0px 0px 8px; }
.elementor .ji-step-ico .elementor-icon-box-description { font-size: 15.5px; line-height: 1.6; color: var(--ji-muted); max-width: 240px; margin: 0px auto; }
.elementor .ji-stepnum .elementor-heading-title { display: inline-block; letter-spacing: 0.14em; background: var(--ji-pine); padding: 7px 12px; border-radius: 999px; margin-bottom: -6px; position: relative; z-index: 2; font: 800 12px/1 var(--ji-sans); color: rgb(255, 255, 255); }
@media (max-width: 1024px) {
  .elementor .e-con.ji-steps::before { display: none; }
}
.elementor .e-con.ji-photo-dark { background-size: cover; background-position: center center; position: relative; }
.elementor .e-con.ji-photo-dark > .e-con-inner::before { content: ""; position: absolute; inset: -300px -2000px; z-index: -1; background: linear-gradient(90deg, rgba(7, 28, 19, 0.95) 0%, rgba(7, 28, 19, 0.86) 50%, rgba(7, 28, 19, 0.62) 100%); }
.elementor .ji-num .elementor-heading-title { font: 400 46px/1 var(--ji-serif); color: rgba(242, 193, 78, 0.35); }
.elementor .ji-num { top: 24px; right: 28px; position: absolute !important; width: auto; }
.elementor .e-con.ji-gallery { grid-template-columns: repeat(4, minmax(0px, 1fr)); grid-auto-rows: 240px; gap: 20px; grid-auto-flow: dense; display: grid !important; }
.elementor .e-con.ji-gallery > .elementor-element { height: 100%; width: auto; margin: 0px !important; }
.elementor .ji-gallery .elementor-widget-image a { height: 100%; display: block; }
.elementor .ji-gallery img { object-fit: cover; transition: transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1); display: block; width: 100%; height: 100%; }
.elementor .ji-gallery .elementor-widget-image { overflow: hidden; border-radius: var(--ji-r); box-shadow: var(--ji-shadow); }
.elementor .ji-gallery .elementor-widget-image:hover img { transform: scale(1.06); }
.elementor .ji-g-tall { grid-row: span 2; }
.elementor .ji-g-wide { grid-column: span 2; }
.elementor .e-con.ji-g-cta { background: var(--ji-gold); border-radius: var(--ji-r); justify-content: flex-end; --padding-top: 28px; --padding-bottom: 28px; --padding-left: 28px; --padding-right: 28px; }
.elementor .ji-g-cta .ji-h3 .elementor-heading-title { color: var(--ji-pine); }
.elementor .ji-g-cta .ji-btn-link .elementor-button { color: var(--ji-pine); }
@media (max-width: 1024px) {
  .elementor .e-con.ji-gallery { grid-template-columns: repeat(2, minmax(0px, 1fr)); grid-auto-rows: 220px; }
}
@media (max-width: 767px) {
  .elementor .e-con.ji-gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: 160px; gap: 12px; }
  .elementor .ji-g-wide { grid-column: span 2; }
  .elementor .ji-g-tall { grid-row: span 1; }
}
.elementor .e-con.ji-quote { --padding-top: 34px; --padding-bottom: 30px; --padding-left: 32px; --padding-right: 32px; }
.elementor .ji-stars .elementor-heading-title { letter-spacing: 4px; color: var(--ji-gold); font-size: 18px; }
.elementor .ji-quote-text, .elementor .ji-quote-text p { font-size: 16.5px; line-height: 1.75; color: var(--ji-ink); }
.elementor .ji-quote-text p { margin: 0px; }
.elementor .e-con.ji-quote::after { content: "“"; position: absolute; right: 26px; top: 6px; font: 400 120px/1 var(--ji-serif); color: rgba(200, 32, 47, 0.1); }
.elementor .e-con.ji-author { border-top: 1px dashed var(--ji-line); --padding-top: 18px; margin-top: auto; }
.elementor .ji-avatar .elementor-heading-title { width: 46px; height: 46px; border-radius: 50%; background: var(--ji-red); display: flex; align-items: center; justify-content: center; color: rgb(255, 255, 255); font: 800 18px/1 var(--ji-sans); }
.elementor .ji-avatar.ji-av-pine .elementor-heading-title { background: var(--ji-pine); }
.elementor .ji-avatar.ji-av-gold .elementor-heading-title { background: var(--ji-gold); color: var(--ji-pine); }
.elementor .ji-who .elementor-heading-title { font: 800 16px/1.2 var(--ji-sans); color: var(--ji-pine); }
.elementor .ji-where .elementor-heading-title { margin-top: 3px; font: 500 13.5px/1.2 var(--ji-sans); color: var(--ji-muted); }
.elementor .e-con.ji-quote.ji-quote-feat { background: var(--ji-pine); }
.elementor .ji-quote-feat .ji-quote-text, .elementor .ji-quote-feat .ji-quote-text p, .elementor .ji-quote-feat .ji-who .elementor-heading-title { color: rgb(255, 255, 255); }
.elementor .ji-quote-feat .ji-where .elementor-heading-title { color: rgba(243, 235, 221, 0.7); }
.elementor .ji-quote-feat .e-con.ji-author { border-color: rgba(255, 255, 255, 0.18); }
.elementor .e-con.ji-quote.ji-quote-feat::after { color: rgba(242, 193, 78, 0.18); }
.elementor .ji-faq .elementor-toggle-item { background: rgb(255, 255, 255); border-radius: 18px; margin-bottom: 14px; box-shadow: rgba(11, 42, 29, 0.07) 0px 8px 24px; overflow: hidden; border: 1px solid transparent; transition: border-color 0.2s; }
.elementor .ji-faq .elementor-toggle-item:hover { border-color: rgba(200, 32, 47, 0.25); }
.elementor .ji-faq .elementor-tab-title { display: flex; align-items: center; gap: 14px; border: 0px; padding: 22px 26px; }
.elementor .ji-faq .elementor-tab-title a, .elementor .ji-faq .elementor-toggle-title { flex: 1 1 0%; font: 700 17px/1.35 var(--ji-sans); color: var(--ji-pine); }
.elementor .ji-faq .elementor-toggle-icon { order: 2; height: 34px; min-width: 34px; border-radius: 50%; background: rgba(200, 32, 47, 0.1); align-items: center; justify-content: center; font-size: 13px; width: 34px; display: inline-flex !important; color: var(--ji-red); float: none !important; }
.elementor .ji-faq .elementor-toggle-icon svg { width: 13px; height: 13px; fill: var(--ji-red); }
.elementor .ji-faq .elementor-tab-title.elementor-active .elementor-toggle-icon { background: var(--ji-red); }
.elementor .ji-faq .elementor-tab-title.elementor-active .elementor-toggle-icon svg { fill: rgb(255, 255, 255); }
.elementor .ji-faq .elementor-tab-content { font-size: 16px; line-height: 1.7; color: var(--ji-muted); border: 0px; padding: 0px 26px 24px; }
.elementor .ji-faq .elementor-tab-content p:last-child { margin: 0px; }
.elementor .e-con.ji-help { background: var(--ji-pine); border-radius: var(--ji-r-lg); --padding-top: 34px; --padding-bottom: 34px; --padding-left: 34px; --padding-right: 34px; position: relative; overflow: hidden; }
.elementor .e-con.ji-help::before { content: ""; position: absolute; width: 180px; height: 180px; border-radius: 50%; background: var(--ji-red); right: -60px; top: -60px; opacity: 0.9; }
.elementor .ji-help .ji-h3, .elementor .ji-help .ji-help-links { position: relative; z-index: 2; }
.elementor .ji-help-links .elementor-icon-list-item { margin-bottom: 10px !important; }
.elementor .ji-help-links .elementor-icon-list-text { font-weight: 700; font-size: 17px; color: rgb(255, 255, 255); }
.elementor .ji-help-links .elementor-icon-list-item:first-child .elementor-icon-list-text { color: var(--ji-gold); font-size: 20px; }
.elementor .ji-help-links .elementor-icon-list-icon svg { fill: var(--ji-gold); width: 16px; }
.elementor .ji-help-links a:hover .elementor-icon-list-text { text-decoration: underline; }
.elementor .e-con.ji-map { position: relative; --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; }
.elementor .ji-map-img img { border-radius: 50%; aspect-ratio: 1 / 1; object-fit: cover; border: 12px solid rgb(255, 255, 255); box-shadow: 0 0 0 1px var(--ji-line),var(--ji-shadow-lg); width: 100%; }
.elementor .ji-pin { z-index: 3; position: absolute !important; width: auto; }
.elementor .ji-pin .elementor-heading-title { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 999px; background: var(--ji-red); box-shadow: rgba(200, 32, 47, 0.35) 0px 10px 24px; white-space: nowrap; color: rgb(255, 255, 255); font: 800 13.5px/1 var(--ji-sans); }
.elementor .ji-pin .elementor-heading-title::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: rgb(255, 255, 255); box-shadow: rgba(255, 255, 255, 0.35) 0px 0px 0px 4px; animation: 1.8s ease 0s infinite normal none running ji-pulse; }
.elementor .ji-pin.ji-pin-pine .elementor-heading-title { background: var(--ji-pine); }
.elementor .ji-pin.ji-pin-gold .elementor-heading-title { background: var(--ji-gold); color: var(--ji-pine); }
.elementor .ji-pin-1 { top: 24%; left: 30%; }
.elementor .ji-pin-2 { top: 50%; left: 8%; }
.elementor .ji-pin-3 { top: 64%; left: 52%; }
.elementor .ji-pin-4 { bottom: 6%; right: -2%; }
.elementor .e-con.ji-stat { text-align: center; align-items: center; --padding-top: 30px; --padding-bottom: 30px; }
.elementor .ji-stat-num .elementor-heading-title { font: 400 52px/1 var(--ji-serif); color: var(--ji-gold); }
.elementor .ji-stat-label .elementor-heading-title { letter-spacing: 0.08em; text-transform: uppercase; margin-top: 8px; font: 700 14px/1.3 var(--ji-sans); color: rgba(243, 235, 221, 0.8); }
.elementor .ji-govee img { background: rgb(255, 255, 255); border-radius: 16px; padding: 10px 16px; box-shadow: var(--ji-shadow); width: 150px; }
.elementor .e-con.ji-stepcard .ji-num .elementor-heading-title { color: rgba(200, 32, 47, 0.16); }
.elementor .e-con.ji-info { --padding-top: 24px; --padding-bottom: 24px; --padding-left: 24px; --padding-right: 24px; }
.elementor .ji-info .elementor-icon-box-wrapper { align-items: center; gap: 18px; display: flex !important; text-align: left; }
.elementor .ji-info .elementor-icon-box-icon { margin: 0px !important; }
.elementor .ji-info .elementor-icon { width: 58px; height: 58px; border-radius: 18px; background: var(--ji-red); color: rgb(255, 255, 255); align-items: center; justify-content: center; display: inline-flex !important; font-size: 22px; }
.elementor .ji-info .elementor-icon svg { width: 22px; height: 22px; fill: rgb(255, 255, 255); }
.elementor .ji-info .elementor-icon-box-title { font: 700 13px/1 var(--ji-sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ji-muted); margin: 0px 0px 6px; }
.elementor .ji-info .elementor-icon-box-description { font: 800 19px/1.3 var(--ji-sans); color: var(--ji-pine); margin: 0px; word-break: break-word; }
.elementor .ji-info .elementor-icon-box-description a { color: inherit; }
.elementor .e-con.ji-formcard { background: rgb(255, 255, 255); border-radius: var(--ji-r-lg); box-shadow: var(--ji-shadow-lg); --padding-top: 44px; --padding-bottom: 44px; --padding-left: 44px; --padding-right: 44px; border-top: 6px solid var(--ji-red); }
@media (max-width: 767px) {
  .elementor .e-con.ji-formcard { --padding-top: 30px; --padding-bottom: 30px; --padding-left: 22px; --padding-right: 22px; }
}
.elementor .ji-form .elementor-field-group { margin-bottom: 16px !important; }
.elementor .ji-form .elementor-field-group > label { font: 700 14px/1.2 var(--ji-sans); color: var(--ji-pine); margin-bottom: 8px !important; }
.elementor .ji-form .elementor-field-textual, .elementor .ji-form select { min-height: 52px; transition: border-color 0.2s, box-shadow 0.2s; background: rgb(251, 248, 242); border: 1.5px solid var(--ji-line); border-radius: 14px; padding: 14px 16px; font: 500 15.5px/1.4 var(--ji-sans); color: var(--ji-ink); }
.elementor .ji-form .elementor-field-textual:focus, .elementor .ji-form select:focus { outline: 0px; border-color: var(--ji-red); box-shadow: rgba(200, 32, 47, 0.12) 0px 0px 0px 4px; background: rgb(255, 255, 255); }
.elementor .ji-form .elementor-select-wrapper::before { color: var(--ji-red); }
.elementor .ji-form .elementor-button { box-shadow: rgba(200, 32, 47, 0.35) 0px 12px 30px; width: 100%; transition: background 0.2s, transform 0.2s; background: var(--ji-red); border-radius: 999px; padding: 18px 30px; font: 800 16px/1 var(--ji-sans); }
.elementor .ji-form .elementor-button:hover { transform: translateY(-2px); background: var(--ji-red-d); }
.elementor .ji-cutout img { filter: drop-shadow(rgba(11, 42, 29, 0.25) 0px 24px 40px); border-radius: 0px; box-shadow: none; object-fit: contain !important; aspect-ratio: auto !important; border: 0px; }
@media (prefers-reduced-motion: reduce) {
  *, ::before, ::after { animation: auto ease 0s 1 normal none running none !important; transition: none !important; }
}
.elementor .e-con.ji-head-left > .e-con { width: auto; }
.elementor .e-con.ji-split.ji-top { align-items: start; }
@media (min-width: 1025px) {
  .elementor .ji-top > .e-con:first-child { position: sticky; top: 150px; }
}
.elementor .e-con.ji-quote::after { font-size: 96px; top: 14px; right: 24px; z-index: 0; }
.elementor .e-con.ji-quote > .elementor-element { position: relative; z-index: 1; }
.elementor .e-con.ji-trees.ji-has-deer { --padding-bottom: calc(var(--ji-sec) + 120px); }
.elementor .ji-trees .ji-reindeer { bottom: 6px; right: 3%; width: 130px; }
.elementor .e-con.ji-photo-dark > .e-con-inner::before { background: linear-gradient(90deg, rgba(7, 28, 19, 0.92) 0%, rgba(7, 28, 19, 0.8) 50%, rgba(7, 28, 19, 0.55) 100%); }
.elementor .e-con.ji-badge.ji-badge-year { right: -10px; top: 24px; left: auto !important; bottom: auto !important; }
@media (max-width: 767px) {
  .elementor .e-con.ji-badge.ji-badge-year { right: -4px; top: 16px; }
  .elementor .e-con.ji-g-cta { grid-column: span 2; }
  .elementor .ji-g-cta .ji-h3 .elementor-heading-title { font-size: 22px; }
}
.elementor .e-con.ji-help::before { inset: auto -60px -80px auto; width: 170px; height: 170px; opacity: 0.85; }
.elementor .ji-svc-body .ji-ibox .elementor-icon-box-wrapper { text-align: left; }
.elementor .ji-svc-body .ji-ibox .elementor-icon-box-icon { display: block; }
.elementor .e-con.ji-steps::before { left: 12.5%; right: auto; width: 75%; }
.elementor .ji-trust .elementor-icon-box-wrapper, .elementor .ji-info .elementor-icon-box-wrapper, .elementor .ji-badge .elementor-icon-box-wrapper { flex-direction: row !important; }
@media (max-width: 1024px) {
  .elementor .e-con.ji-map { max-width: 520px; margin: 0px auto; width: 100%; }
  .elementor .e-con.ji-collage { max-width: 560px; margin: 0px auto; width: 100%; }
}
.elementor .e-con.ji-header { background: linear-gradient(rgb(7, 33, 26) 0%, rgb(11, 42, 29) 100%); --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; border-bottom: 1px solid rgba(242, 193, 78, 0.18); box-shadow: rgba(0, 0, 0, 0.22) 0px 12px 30px; z-index: 999; }
.elementor .ji-garland { height: 44px; overflow: hidden; line-height: 0; pointer-events: none; transition: height 0.35s, opacity 0.35s; }
.elementor .ji-garland svg { display: block; width: 100%; height: 44px; }
.elementor .ji-garland .tw { animation: 2.4s ease-in-out 0s infinite normal none running ji-tw; }
.elementor .ji-garland .gl { transform-box: fill-box; transform-origin: center center; animation: 2.4s ease-in-out 0s infinite normal none running ji-glow; }
.elementor .e-con.ji-header-bar { --padding-top: 4px; --padding-bottom: 14px; --padding-left: 24px; --padding-right: 24px; --flex-wrap: nowrap; transition: padding 0.3s; }
.elementor .ji-header-bar > .e-con-inner { flex-wrap: nowrap !important; align-items: center !important; }
.elementor .ji-header-bar .ji-logo { flex: 0 0 auto !important; width: auto; margin: 0px !important; }
.elementor .ji-header-bar .ji-logo img { display: block; filter: drop-shadow(rgba(0, 0, 0, 0.4) 0px 6px 14px); transition: height 0.3s; height: 72px; width: auto; max-width: none; }
.elementor .ji-header-bar .ji-nav { min-width: 0px; flex: 1 1 auto !important; width: auto; }
.elementor .ji-nav .elementor-nav-menu--main .elementor-nav-menu { display: flex; justify-content: center; gap: 4px; flex-wrap: nowrap !important; }
.elementor .ji-nav .elementor-nav-menu--main .elementor-item { position: relative; letter-spacing: 0.01em; white-space: nowrap; border-radius: 0px; font: 700 15px/1 var(--ji-sans); color: rgb(243, 235, 221); padding: 12px 14px; background: none; }
.elementor .ji-nav .elementor-nav-menu--main .elementor-item::before { display: none !important; }
.elementor .ji-nav .elementor-nav-menu--main .elementor-item::after { position: absolute; left: 50%; bottom: 0px; width: 7px; height: 7px; margin-left: -3.5px; border-radius: 50%; background: var(--ji-gold); box-shadow: rgba(242, 193, 78, 0) 0px 0px 0px 0px; opacity: 0; transform: scale(0.4); transition: 0.25s; content: "" !important; display: block !important; }
.elementor .ji-nav .elementor-nav-menu--main .elementor-item:hover { color: var(--ji-gold); }
.elementor .ji-nav .elementor-nav-menu--main .elementor-item:hover::after { opacity: 0.6; transform: scale(0.8); }
.elementor .ji-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { color: var(--ji-gold); }
.elementor .ji-nav .elementor-nav-menu--main .elementor-item.elementor-item-active::after { opacity: 1; transform: scale(1); box-shadow: rgba(242, 193, 78, 0.55) 0px 0px 10px 3px; }
.elementor .ji-header-bar .ji-hcta { --gap: 16px; gap: 16px; flex: 0 0 auto !important; width: auto; }
.elementor .ji-phone .elementor-button { background: none; box-shadow: none; padding: 0px; color: rgb(255, 255, 255); font: 700 15px/1 var(--ji-sans); border: 0px; }
.elementor .ji-phone .elementor-button:hover { color: var(--ji-gold); transform: none; }
.elementor .ji-phone .elementor-button-content-wrapper { gap: 10px; align-items: center; }
.elementor .ji-phone .elementor-button-icon { width: 38px; height: 38px; border-radius: 50%; background: rgba(242, 193, 78, 0.14); border: 1px solid rgba(242, 193, 78, 0.5); display: inline-flex; align-items: center; justify-content: center; margin: 0px !important; }
.elementor .ji-phone .elementor-button-icon svg { width: 14px; height: 14px; fill: var(--ji-gold); }
.elementor .ji-hcta .ji-btn-red .elementor-button { padding: 14px 22px; font-size: 15px; box-shadow: rgba(200, 32, 47, 0.4) 0px 10px 24px; }
.elementor .ji-nav .elementor-menu-toggle { width: 46px; height: 46px; border-radius: 14px; font-size: 22px; align-items: center; justify-content: center; margin-left: auto; box-shadow: rgba(200, 32, 47, 0.35) 0px 8px 20px; background: var(--ji-red); color: rgb(255, 255, 255); }
.elementor .ji-nav .elementor-menu-toggle svg { width: 22px; height: 22px; fill: rgb(255, 255, 255); }
.elementor .ji-nav .elementor-nav-menu--dropdown { border-top: 1px solid rgba(242, 193, 78, 0.2); box-shadow: rgba(0, 0, 0, 0.35) 0px 20px 40px; background: rgb(15, 51, 36); margin-top: 14px !important; }
.elementor .ji-nav .elementor-nav-menu--dropdown .elementor-item { border-bottom: 1px solid rgba(255, 255, 255, 0.07); color: rgb(243, 235, 221); font: 700 16px/1 var(--ji-sans); padding: 18px 24px; background: none; }
.elementor .ji-nav .elementor-nav-menu--dropdown .elementor-item:hover, .elementor .ji-nav .elementor-nav-menu--dropdown .elementor-item.elementor-item-active { color: var(--ji-gold); background: rgba(242, 193, 78, 0.08); }
.ji-scrolled .elementor .ji-header .ji-garland { height: 0px; opacity: 0; }
.ji-scrolled .elementor .ji-header .ji-header-bar { --padding-top: 10px; --padding-bottom: 10px; }
.ji-scrolled .elementor .ji-header .ji-logo img { height: 56px; }
@media (max-width: 1200px) {
  .elementor .ji-phone .elementor-button-text { display: none; }
  .elementor .ji-nav .elementor-nav-menu--main .elementor-item { padding: 12px 10px; font-size: 14.5px; }
}
@media (max-width: 1024px) {
  .elementor .ji-header-bar .ji-nav { order: 3; flex: 0 0 auto !important; }
  .elementor .ji-header-bar .ji-hcta { order: 2; margin-left: auto; }
  .elementor .ji-header-bar .ji-logo img { height: 62px; }
  .elementor .e-con.ji-header-bar { --padding-bottom: 12px; }
}
@media (max-width: 767px) {
  .elementor .ji-garland, .elementor .ji-garland svg { height: 34px; }
  .elementor .e-con.ji-header-bar { --padding-left: 16px; --padding-right: 16px; --padding-top: 2px; --padding-bottom: 10px; }
  .elementor .ji-header-bar .ji-logo img { height: 54px; }
  .ji-scrolled .elementor .ji-header .ji-logo img { height: 46px; }
  .elementor .ji-nav .elementor-menu-toggle { width: 44px; height: 44px; }
}
.elementor .ji-header-bar .ji-nav { align-self: center; }
.elementor .ji-nav .elementor-nav-menu--main { background: none; border: 0px; padding: 0px; }
@media (min-width: 1025px) {
  .elementor .ji-nav .elementor-menu-toggle { display: none !important; }
}
@media (max-width: 1024px) {
  .elementor .ji-nav .elementor-menu-toggle { display: flex !important; }
}
.elementor .e-con.ji-header-bar { padding: 4px 24px 14px; }
.ji-scrolled .elementor .e-con.ji-header-bar { padding: 10px 24px; }
@media (max-width: 767px) {
  .elementor .e-con.ji-header-bar { padding: 4px 16px 10px; }
  .ji-scrolled .elementor .e-con.ji-header-bar { padding: 8px 16px; }
}
.elementor .ji-header-bar > .e-con-inner { padding: 0px; }
.elementor .ji-header-bar .ji-logo, .elementor .ji-header-bar .ji-logo a { line-height: 0; display: block; }
/* ================= FOOTER ================= */
html{scroll-behavior:smooth}
.elementor .e-con.ji-footer2{position:relative;overflow:hidden;--padding-top:96px;--padding-bottom:0;--padding-left:0;--padding-right:0;padding-top:96px;color:#F3EBDD;
 background:radial-gradient(900px 420px at 10% 0%,rgba(200,32,47,.18),transparent 60%),radial-gradient(900px 500px at 95% 30%,rgba(242,193,78,.10),transparent 60%),linear-gradient(180deg,#0B2A1D 0%,#071D14 100%)}
.elementor .e-con.ji-footer2:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:radial-gradient(1.5px 1.5px at 20px 30px,rgba(255,255,255,.55) 50%,transparent 51%),radial-gradient(1px 1px at 120px 80px,rgba(255,255,255,.4) 50%,transparent 51%),radial-gradient(2px 2px at 200px 150px,rgba(255,255,255,.35) 50%,transparent 51%);background-size:240px 240px,300px 300px,360px 360px}
.elementor .e-con.ji-footer2:after{content:"Jolly";position:absolute;left:50%;bottom:-.28em;transform:translateX(-50%);font:400 clamp(160px,24vw,360px)/1 var(--ji-script);color:rgba(242,193,78,.045);pointer-events:none;white-space:nowrap;z-index:0}
.elementor .ji-footer2>.e-con{position:relative;z-index:2}
/* CTA card */
.elementor .e-con.ji-fcta-wrap{--padding-left:24px;--padding-right:24px;padding:0 24px}
.elementor .e-con.ji-fcta-card{position:relative;overflow:visible;border-radius:32px;padding:56px 64px;--padding-top:56px;--padding-bottom:56px;--padding-left:64px;--padding-right:64px;
 background:radial-gradient(600px 300px at 85% 120%,rgba(242,193,78,.35),transparent 60%),linear-gradient(120deg,#A3121F 0%,#C8202F 45%,#E0353F 100%);box-shadow:0 30px 70px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.18)}
.elementor .e-con.ji-fcta-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:.35;background-image:radial-gradient(2px 2px at 30px 40px,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 140px 90px,#fff 50%,transparent 51%),radial-gradient(2.5px 2.5px at 220px 20px,#fff 50%,transparent 51%);background-size:260px 140px}
.elementor .e-con.ji-fcta-card:after{content:"";position:absolute;right:220px;top:-60px;width:220px;height:220px;border-radius:50%;border:30px solid rgba(255,255,255,.07);pointer-events:none}
.elementor .ji-fcta-copy{flex:1 1 auto;max-width:640px;width:auto;position:relative;z-index:2}
.elementor .ji-fpill .elementor-heading-title{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);font:800 12px/1 var(--ji-sans);letter-spacing:.14em;text-transform:uppercase;color:#fff}
.elementor .ji-fpill .elementor-heading-title:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ji-gold);box-shadow:0 0 10px 2px rgba(242,193,78,.8)}
.elementor .ji-fcta-title .elementor-heading-title{font:400 52px/1.05 var(--ji-serif);color:#fff;letter-spacing:-.01em}
.elementor .ji-fcta-title .elementor-heading-title em{font-style:normal;font-family:var(--ji-script);color:var(--ji-gold);font-size:1.15em}
.elementor .ji-fcta-text,.elementor .ji-fcta-text p{color:rgba(255,255,255,.88);font-size:17px;line-height:1.65;margin:0}
.elementor .ji-fcta-card .ji-btn-white .elementor-button{color:var(--ji-red-d)}
.elementor .ji-fcta-deer{flex:0 0 auto!important;width:230px;margin:-120px 0 -56px!important;position:relative;z-index:2}
.elementor .ji-fcta-deer img{width:100%;height:auto;filter:drop-shadow(0 20px 30px rgba(0,0,0,.35));animation:ji-sway 4s ease-in-out infinite;transform-origin:bottom center}
/* main */
.elementor .e-con.ji-fmain{padding:80px 24px 0;--padding-top:80px;--padding-left:24px;--padding-right:24px}
.elementor .e-con.ji-fcols{display:grid!important;grid-template-columns:1.35fr .8fr 1.1fr 1.25fr;gap:48px}
.elementor .e-con.ji-fcols>.e-con{width:auto}
.elementor .ji-flogo,.elementor .ji-flogo a{line-height:0;text-align:left}
.elementor .ji-flogo img{height:92px;width:auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.45))}
.elementor .ji-ftext,.elementor .ji-ftext p{color:rgba(243,235,221,.72);font-size:15px;line-height:1.75;margin:0}
.elementor .ji-fbadges .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:8px}
.elementor .ji-fbadges .elementor-icon-list-item{margin:0!important;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.elementor .ji-fbadges .elementor-icon-list-item:after{display:none!important}
.elementor .ji-fbadges .elementor-icon-list-text{color:#F3EBDD;font:700 12.5px/1 var(--ji-sans)}
.elementor .ji-fbadges .elementor-icon-list-icon svg{fill:var(--ji-gold);width:12px}
.elementor .ji-ftitle .elementor-heading-title{font:400 22px/1 var(--ji-serif);color:#fff;position:relative;padding-bottom:14px}
.elementor .ji-ftitle .elementor-heading-title:after{content:"";position:absolute;left:0;bottom:0;width:34px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--ji-red),var(--ji-gold))}
.elementor .ji-flinks .elementor-icon-list-item{margin:0 0 12px!important;padding:0}
.elementor .ji-flinks .elementor-icon-list-item:after{display:none!important}
.elementor .ji-flinks .elementor-icon-list-icon svg{fill:var(--ji-gold);width:10px;transition:transform .25s}
.elementor .ji-flinks .elementor-icon-list-text{color:rgba(243,235,221,.78);font-size:15.5px;transition:color .25s}
.elementor .ji-flinks a:hover .elementor-icon-list-text{color:var(--ji-gold)}
.elementor .ji-flinks a:hover .elementor-icon-list-icon svg{transform:translateX(4px)}
.elementor .ji-fcontact{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:14px 16px;transition:background .25s,border-color .25s,transform .25s}
.elementor .ji-fcontact:hover{background:rgba(255,255,255,.09);border-color:rgba(242,193,78,.4);transform:translateY(-2px)}
.elementor .ji-fcontact .elementor-icon-box-wrapper{display:flex!important;flex-direction:row!important;align-items:center;gap:14px;text-align:left}
.elementor .ji-fcontact .elementor-icon-box-icon{margin:0!important;line-height:0}
.elementor .ji-fcontact .elementor-icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--ji-red),#E0353F);display:inline-flex!important;align-items:center;justify-content:center;font-size:16px;box-shadow:0 8px 18px rgba(200,32,47,.35)}
.elementor .ji-fcontact .elementor-icon svg{fill:#fff;width:16px;height:16px}
.elementor .ji-fcontact .elementor-icon-box-title{margin:0 0 4px!important;font:800 11px/1 var(--ji-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ji-gold)}
.elementor .ji-fcontact .elementor-icon-box-title a{color:inherit}
.elementor .ji-fcontact .elementor-icon-box-description{margin:0!important;font:700 15px/1.35 var(--ji-sans);color:#fff;word-break:break-word}
/* bottom bar */
.elementor .e-con.ji-fbottom{margin-top:64px;border-top:1px solid rgba(255,255,255,.1);padding:26px 0 30px;--padding-top:26px;--padding-bottom:30px}
.elementor .ji-fcopy,.elementor .ji-fcopy p{margin:0;font-size:14px;color:rgba(243,235,221,.55)}
.elementor .ji-totop .elementor-button{padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#F3EBDD;font:700 13px/1 var(--ji-sans);box-shadow:none}
.elementor .ji-totop .elementor-button:hover{background:var(--ji-gold);color:var(--ji-pine);border-color:var(--ji-gold)}
.elementor .ji-totop .elementor-button-icon svg{width:12px;height:12px;fill:currentColor}
@media (max-width:1024px){
 .elementor .e-con.ji-fcols{grid-template-columns:1fr 1fr;gap:40px 32px}
 .elementor .e-con.ji-fcta-card{padding:48px 40px}
 .elementor .ji-fcta-deer{width:180px;margin:-90px 0 -48px!important}
 .elementor .ji-fcta-title .elementor-heading-title{font-size:42px}
 .elementor .e-con.ji-fcta-card:after{display:none}
}
@media (max-width:767px){
 .elementor .e-con.ji-footer2{padding-top:72px}
 .elementor .e-con.ji-fcta-wrap{padding:0 16px}
 .elementor .e-con.ji-fcta-card{flex-direction:column!important;padding:36px 24px 0;text-align:left;border-radius:26px}
 .elementor .ji-fcta-title .elementor-heading-title{font-size:34px}
 .elementor .ji-fcta-deer{width:150px;margin:4px auto -1px!important;align-self:center}
 .elementor .e-con.ji-fmain{padding:56px 16px 0}
 .elementor .e-con.ji-fcols{grid-template-columns:1fr;gap:36px}
 .elementor .e-con.ji-fbottom{flex-direction:column!important;align-items:flex-start!important;margin-top:44px}
 .elementor .ji-fmade{display:none}
}

.elementor .ji-fcontact .elementor-icon-box-title,.elementor .ji-fcontact .elementor-icon-box-title a,.elementor .ji-fcontact .elementor-icon-box-title span{font:800 11px/1.2 var(--ji-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ji-gold)}
.elementor .ji-fcontact .elementor-icon-box-description{font-size:15px}
.elementor .ji-fcontact .elementor-icon-box-content{min-width:0}
.elementor .e-con.ji-fmain{padding-top:64px}
.elementor .ji-fcta-title .elementor-heading-title em{padding:0 .12em 0 .02em;display:inline-block}
.elementor .e-con.ji-fcta-card:after{right:auto;left:52%;top:auto;bottom:-90px}
@media (max-width:767px){
 .elementor .e-con.ji-footer2{padding-top:56px}
 .elementor .e-con.ji-fcta-card{padding:32px 22px 0}
 .elementor .ji-fcta-deer{width:120px}
 .elementor .ji-fcta-text,.elementor .ji-fcta-text p{font-size:15.5px}
 .elementor .e-con.ji-fmain{padding-top:48px}
 .elementor .e-con.ji-fcols{grid-template-columns:1fr 1fr;gap:32px 20px}
 .elementor .ji-fcols>.ji-fbrand,.elementor .ji-fcols>.e-con:last-child{grid-column:1/-1}
 .elementor .ji-flinks .elementor-icon-list-text{font-size:14.5px}
 .elementor .ji-flogo img{height:76px}
 .elementor .e-con.ji-fbottom{flex-direction:row!important;align-items:center!important;justify-content:space-between!important}
 .elementor .ji-fcopy,.elementor .ji-fcopy p{font-size:12.5px}
}

.elementor .e-con.ji-fcta-card:after{display:none!important}

/* Colors & fonts follow Site Settings > Global Colors / Global Fonts */
body{--ji-pine:var(--e-global-color-primary,#0B2A1D);--ji-red:var(--e-global-color-secondary,#C8202F);--ji-gold:var(--e-global-color-accent,#F2C14E);--ji-ink:var(--e-global-color-text,#1B1A17);--ji-cream:var(--e-global-color-ji_cream,#FFF6E7);--ji-snow:var(--e-global-color-ji_snow,#FFFDF8);--ji-muted:var(--e-global-color-ji_muted,#5C665F);--ji-serif:var(--e-global-typography-primary-font-family,"DM Serif Display"),Georgia,serif;--ji-sans:var(--e-global-typography-text-font-family,"Figtree"),system-ui,sans-serif;--ji-script:var(--e-global-typography-ji_script-font-family,"Yellowtail"),cursive}

/* Shape dividers: span full screen width even inside boxed sections */
.elementor .e-con-inner>.elementor-shape{left:calc(50% - 50vw)!important;width:100vw!important;z-index:1}
.elementor .e-con-inner>.elementor-shape svg{width:100%!important}

/* ===== 4 easy steps: snake dotted glowing line + glowing floating circles ===== */
.elementor .ji-steps-sec .ji-reindeer{right:auto;left:39%;bottom:96px;width:150px!important}
.elementor .e-con.ji-steps:before{left:12.5%!important;right:auto!important;width:75%!important;top:34px!important;height:60px;border:0!important;
 background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 60' preserveAspectRatio='none'%3E%3Cpath d='M0 30 C25 2 75 2 100 30 S175 58 200 30 S275 2 300 30' fill='none' stroke='%23C8202F' stroke-width='2.5' stroke-linecap='round' stroke-dasharray='1 9' vector-effect='non-scaling-stroke'%3E%3Canimate attributeName='stroke-dashoffset' from='0' to='-20' dur='1.2s' repeatCount='indefinite'/%3E%3C/path%3E%3C/svg%3E") center/100% 100% no-repeat;filter:drop-shadow(0 0 3px rgba(242,193,78,.9)) drop-shadow(0 0 8px rgba(200,32,47,.45));animation:ji-wave-glow 2.4s ease-in-out infinite}
@keyframes ji-wave-glow{0%,100%{opacity:.75}50%{opacity:1}}
@keyframes ji-xmas-glow{0%,100%{box-shadow:0 0 0 8px rgba(200,32,47,.10),0 0 22px 6px rgba(226,59,59,.55),0 18px 40px rgba(11,42,29,.12)}
 33%{box-shadow:0 0 0 8px rgba(242,193,78,.14),0 0 22px 6px rgba(242,193,78,.65),0 18px 40px rgba(11,42,29,.12)}
 66%{box-shadow:0 0 0 8px rgba(63,174,90,.12),0 0 22px 6px rgba(63,174,90,.55),0 18px 40px rgba(11,42,29,.12)}}
@keyframes ji-step-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.elementor .ji-steps .ji-step{animation:ji-step-float 4s ease-in-out infinite}
.elementor .ji-steps .ji-step:nth-child(2){animation-delay:-1s}
.elementor .ji-steps .ji-step:nth-child(3){animation-delay:-2s}
.elementor .ji-steps .ji-step:nth-child(4){animation-delay:-3s}
.elementor .ji-steps .ji-step-ico .elementor-icon{border-color:rgba(200,32,47,.35);animation:ji-xmas-glow 3.6s ease-in-out infinite}
.elementor .ji-steps .ji-step:nth-child(2) .elementor-icon{animation-delay:-.9s}
.elementor .ji-steps .ji-step:nth-child(3) .elementor-icon{animation-delay:-1.8s}
.elementor .ji-steps .ji-step:nth-child(4) .elementor-icon{animation-delay:-2.7s}
@media (max-width:1024px){.elementor .e-con.ji-steps:before{display:none}}

/* No underlines on links anywhere */
body a,body a:hover,body a:focus,body a:visited,.elementor a,.elementor a:hover,.elementor-toggle .elementor-toggle-title,.elementor-tab-title a{text-decoration:none!important}

.elementor .e-con.ji-trees-bg>.e-con-inner{padding-bottom:calc(15.6vw + 70px)!important}
@media (max-width:767px){.elementor .e-con.ji-trees-bg>.e-con-inner{padding-bottom:calc(28vw + 24px)!important}}
.elementor .ji-steps-sec .ji-reindeer{left:calc(50% + 20.8vw - min(70px,4.5vw))!important;right:auto!important;bottom:1.6vw!important;width:min(140px,9vw)!important}

/* Red snowflake sections (background set in Elementor > Style > Background) */
.elementor .e-con.ji-red-snow{color:#fff}
.elementor .ji-red-snow .ji-eyebrow .elementor-heading-title,.elementor .ji-red-snow .ji-stat-num .elementor-heading-title{color:var(--ji-gold)!important}
.elementor .ji-red-snow .e-con.ji-card-glass{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25)}
.elementor .ji-red-snow .ji-ibox .elementor-icon{background:rgba(255,255,255,.16);color:#fff}
.elementor .ji-red-snow .ji-ibox .elementor-icon svg{fill:#fff}
.elementor .ji-red-snow .ji-num .elementor-heading-title{color:rgba(255,255,255,.3)!important}
.elementor .ji-red-snow .ji-ibox .elementor-icon-box-description,.elementor .ji-red-snow .ji-stat-label .elementor-heading-title{color:rgba(255,255,255,.88)!important}
.elementor .ji-red-snow .ji-h2 .elementor-heading-title em{color:var(--ji-gold)}
.elementor .e-con.ji-fcta-card{background-image:url("https://jollyillumination.com/wp-content/uploads/2026/10/Festive-Red-Snowflake-Background.png"),radial-gradient(600px 300px at 85% 120%,rgba(242,193,78,.35),transparent 60%),linear-gradient(120deg,#A3121F 0%,#C8202F 45%,#E0353F 100%);background-size:cover,auto,auto;background-position:center}
.elementor .e-con.ji-fcta-card:before{display:none}

/* 5-city grid + St. George map pin */
.elementor .e-con.ji-grid-5{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
.elementor .e-con.ji-grid-5>.e-con{width:auto!important;max-width:none!important}
.elementor .ji-grid-5 .e-con.ji-svc-body{--padding-left:22px;--padding-right:22px}
@media (max-width:1024px){.elementor .e-con.ji-grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.elementor .e-con.ji-grid-5{grid-template-columns:1fr}}
.elementor .ji-pin-5{top:6%;right:-2%}/* End custom CSS */