.elementor-29 .elementor-element.elementor-element-2151bce{--display:flex;--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;}.elementor-29 .elementor-element.elementor-element-5dac191{--display:flex;--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;--padding-top:0px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-29 .elementor-element.elementor-element-d5ab90c{--display:flex;--justify-content:center;--border-radius:50px 50px 50px 50px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-870e224{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-6c2463c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-29 .elementor-element.elementor-element-6492a3b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-29 .elementor-element.elementor-element-69daa3a{--grid-columns:4;--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-69daa3a > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-29 .elementor-element.elementor-element-69daa3a.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-69daa3a:hover .elementor-widget-container{border-style:none;}.elementor-29 .elementor-element.elementor-element-69daa3a .elementor-loop-container{grid-auto-rows:1fr;}.elementor-29 .elementor-element.elementor-element-69daa3a .e-loop-item > .elementor-section, .elementor-29 .elementor-element.elementor-element-69daa3a .e-loop-item > .elementor-section > .elementor-container, .elementor-29 .elementor-element.elementor-element-69daa3a .e-loop-item > .e-con, .elementor-29 .elementor-element.elementor-element-69daa3a .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-29 .elementor-element.elementor-element-69daa3a .e-load-more-message{font-family:"Pretendard", Sans-serif;font-weight:400;}.elementor-29 .elementor-element.elementor-element-7c0adc4{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-d26a512{--grid-columns:4;--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-d26a512 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-29 .elementor-element.elementor-element-d26a512.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-d26a512:hover .elementor-widget-container{border-style:none;}.elementor-29 .elementor-element.elementor-element-d26a512 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-29 .elementor-element.elementor-element-d26a512 .e-loop-item > .elementor-section, .elementor-29 .elementor-element.elementor-element-d26a512 .e-loop-item > .elementor-section > .elementor-container, .elementor-29 .elementor-element.elementor-element-d26a512 .e-loop-item > .e-con, .elementor-29 .elementor-element.elementor-element-d26a512 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-29 .elementor-element.elementor-element-d26a512 .e-load-more-message{font-family:"Pretendard", Sans-serif;font-weight:400;}.elementor-29 .elementor-element.elementor-element-86c9b73{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-8736fbf{--grid-columns:4;--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-8736fbf > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-29 .elementor-element.elementor-element-8736fbf.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-8736fbf:hover .elementor-widget-container{border-style:none;}.elementor-29 .elementor-element.elementor-element-8736fbf .elementor-loop-container{grid-auto-rows:1fr;}.elementor-29 .elementor-element.elementor-element-8736fbf .e-loop-item > .elementor-section, .elementor-29 .elementor-element.elementor-element-8736fbf .e-loop-item > .elementor-section > .elementor-container, .elementor-29 .elementor-element.elementor-element-8736fbf .e-loop-item > .e-con, .elementor-29 .elementor-element.elementor-element-8736fbf .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-29 .elementor-element.elementor-element-8736fbf .e-load-more-message{font-family:"Pretendard", Sans-serif;font-weight:400;}.elementor-29 .elementor-element.elementor-element-a17c5d0{--display:flex;}.elementor-29 .elementor-element.elementor-element-f308e1c{--grid-columns:4;--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-f308e1c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-29 .elementor-element.elementor-element-f308e1c.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-f308e1c:hover .elementor-widget-container{border-style:none;}.elementor-29 .elementor-element.elementor-element-f308e1c .elementor-loop-container{grid-auto-rows:1fr;}.elementor-29 .elementor-element.elementor-element-f308e1c .e-loop-item > .elementor-section, .elementor-29 .elementor-element.elementor-element-f308e1c .e-loop-item > .elementor-section > .elementor-container, .elementor-29 .elementor-element.elementor-element-f308e1c .e-loop-item > .e-con, .elementor-29 .elementor-element.elementor-element-f308e1c .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-29 .elementor-element.elementor-element-f308e1c .e-load-more-message{font-family:"Pretendard", Sans-serif;font-weight:400;}.elementor-29 .elementor-element.elementor-element-697fdbc{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-d22b7cc{--grid-columns:4;--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-d22b7cc > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-29 .elementor-element.elementor-element-d22b7cc.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-d22b7cc:hover .elementor-widget-container{border-style:none;}.elementor-29 .elementor-element.elementor-element-d22b7cc .elementor-loop-container{grid-auto-rows:1fr;}.elementor-29 .elementor-element.elementor-element-d22b7cc .e-loop-item > .elementor-section, .elementor-29 .elementor-element.elementor-element-d22b7cc .e-loop-item > .elementor-section > .elementor-container, .elementor-29 .elementor-element.elementor-element-d22b7cc .e-loop-item > .e-con, .elementor-29 .elementor-element.elementor-element-d22b7cc .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-29 .elementor-element.elementor-element-d22b7cc .e-load-more-message{font-family:"Pretendard", Sans-serif;font-weight:400;}.elementor-29 .elementor-element.elementor-element-e6cec85{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-938d423{--grid-columns:4;--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-938d423 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-29 .elementor-element.elementor-element-938d423.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-938d423:hover .elementor-widget-container{border-style:none;}.elementor-29 .elementor-element.elementor-element-938d423 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-29 .elementor-element.elementor-element-938d423 .e-loop-item > .elementor-section, .elementor-29 .elementor-element.elementor-element-938d423 .e-loop-item > .elementor-section > .elementor-container, .elementor-29 .elementor-element.elementor-element-938d423 .e-loop-item > .e-con, .elementor-29 .elementor-element.elementor-element-938d423 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-29 .elementor-element.elementor-element-938d423 .e-load-more-message{font-family:"Pretendard", Sans-serif;font-weight:400;}.elementor-29 .elementor-element.elementor-element-abed531{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-e3b1ae9{--grid-columns:4;--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-e3b1ae9 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-29 .elementor-element.elementor-element-e3b1ae9.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-e3b1ae9:hover .elementor-widget-container{border-style:none;}.elementor-29 .elementor-element.elementor-element-e3b1ae9 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-29 .elementor-element.elementor-element-e3b1ae9 .e-loop-item > .elementor-section, .elementor-29 .elementor-element.elementor-element-e3b1ae9 .e-loop-item > .elementor-section > .elementor-container, .elementor-29 .elementor-element.elementor-element-e3b1ae9 .e-loop-item > .e-con, .elementor-29 .elementor-element.elementor-element-e3b1ae9 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-29 .elementor-element.elementor-element-e3b1ae9 .e-load-more-message{font-family:"Pretendard", Sans-serif;font-weight:400;}.elementor-29 .elementor-element.elementor-element-2541cab{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-e79e417{--grid-columns:4;--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-e79e417 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-29 .elementor-element.elementor-element-e79e417.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-e79e417:hover .elementor-widget-container{border-style:none;}.elementor-29 .elementor-element.elementor-element-e79e417 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-29 .elementor-element.elementor-element-e79e417 .e-loop-item > .elementor-section, .elementor-29 .elementor-element.elementor-element-e79e417 .e-loop-item > .elementor-section > .elementor-container, .elementor-29 .elementor-element.elementor-element-e79e417 .e-loop-item > .e-con, .elementor-29 .elementor-element.elementor-element-e79e417 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-29 .elementor-element.elementor-element-e79e417 .e-load-more-message{font-family:"Pretendard", Sans-serif;font-weight:400;}.elementor-29 .elementor-element.elementor-element-38bce8e{--n-tabs-heading-justify-content:initial;--n-tabs-title-width:100%;--n-tabs-title-height:initial;--n-tabs-title-align-items:center;--n-tabs-title-flex-grow:1;--n-tabs-heading-wrap:nowrap;--n-tabs-heading-overflow-x:scroll;--n-tabs-title-white-space:nowrap;--n-tabs-title-gap:10px;--n-tabs-gap:50px;--n-tabs-title-padding-top:0px;--n-tabs-title-padding-right:0px;--n-tabs-title-padding-bottom:0px;--n-tabs-title-padding-left:0px;--n-tabs-title-font-size:0.9vw;--n-tabs-title-color:var( --e-global-color-primary );--n-tabs-title-color-active:#604BDB;}.elementor-29 .elementor-element.elementor-element-38bce8e > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected='false']:not( :hover ){background:#02010100;}.elementor-29 .elementor-element.elementor-element-38bce8e.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#604BDB00;border-style:solid;border-width:3px 0px 0px 0px;border-color:#614DDA;}.elementor-29 .elementor-element.elementor-element-38bce8e.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-29 .elementor-element.elementor-element-38bce8e.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#604BDB00;border-style:solid;border-width:3px 0px 0px 0px;border-color:#604BDB;}.elementor-29 .elementor-element.elementor-element-38bce8e.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:not( :hover ){border-style:solid;border-width:3px 0px 0px 0px;border-color:#604BDB00;}.elementor-29 .elementor-element.elementor-element-38bce8e.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-family:"Pretendard", Sans-serif;font-weight:600;text-transform:uppercase;}.elementor-29 .elementor-element.elementor-element-38bce8e [data-touch-mode="false"] .e-n-tab-title[aria-selected="false"]:hover{--n-tabs-title-color-hover:#604BDB;}.elementor-29 .elementor-element.elementor-element-289ee6c{--spacer-size:50px;}@media(max-width:1366px){.elementor-29 .elementor-element.elementor-element-2151bce{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-5dac191{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-29 .elementor-element.elementor-element-d5ab90c{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-870e224{--padding-top:20px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-29 .elementor-element.elementor-element-69daa3a{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-69daa3a > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-29 .elementor-element.elementor-element-69daa3a .e-load-more-message{letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-d26a512{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-d26a512 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-29 .elementor-element.elementor-element-d26a512 .e-load-more-message{letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-8736fbf{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-8736fbf > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-29 .elementor-element.elementor-element-8736fbf .e-load-more-message{letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-f308e1c{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-f308e1c > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-29 .elementor-element.elementor-element-f308e1c .e-load-more-message{letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-d22b7cc{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-d22b7cc > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-29 .elementor-element.elementor-element-d22b7cc .e-load-more-message{letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-938d423{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-938d423 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-29 .elementor-element.elementor-element-938d423 .e-load-more-message{letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-e3b1ae9{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-e3b1ae9 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-29 .elementor-element.elementor-element-e3b1ae9 .e-load-more-message{letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-e79e417{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-29 .elementor-element.elementor-element-e79e417 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-29 .elementor-element.elementor-element-e79e417 .e-load-more-message{letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-38bce8e{--n-tabs-title-font-size:1.4vw;}.elementor-29 .elementor-element.elementor-element-38bce8e.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){letter-spacing:-0.03rem;}.elementor-29 .elementor-element.elementor-element-289ee6c{--spacer-size:15vh;}}@media(max-width:1200px){.elementor-29 .elementor-element.elementor-element-69daa3a{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-d26a512{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-8736fbf{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-f308e1c{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-d22b7cc{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-938d423{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-e3b1ae9{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-e79e417{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-38bce8e{--n-tabs-title-font-size:1.6vw;}}@media(max-width:1024px){.elementor-29 .elementor-element.elementor-element-d5ab90c{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-69daa3a{--grid-columns:2;}.elementor-29 .elementor-element.elementor-element-d26a512{--grid-columns:2;}.elementor-29 .elementor-element.elementor-element-8736fbf{--grid-columns:2;}.elementor-29 .elementor-element.elementor-element-f308e1c{--grid-columns:2;}.elementor-29 .elementor-element.elementor-element-d22b7cc{--grid-columns:2;}.elementor-29 .elementor-element.elementor-element-938d423{--grid-columns:2;}.elementor-29 .elementor-element.elementor-element-e3b1ae9{--grid-columns:2;}.elementor-29 .elementor-element.elementor-element-e79e417{--grid-columns:2;}.elementor-29 .elementor-element.elementor-element-38bce8e{--n-tabs-title-font-size:1.9vw;}}@media(max-width:880px){.elementor-29 .elementor-element.elementor-element-38bce8e{--n-tabs-title-gap:15px;--n-tabs-title-font-size:2.5vw;}.elementor-29 .elementor-element.elementor-element-289ee6c{--spacer-size:10vh;}}@media(max-width:600px){.elementor-29 .elementor-element.elementor-element-d5ab90c{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-69daa3a{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:5px;}.elementor-29 .elementor-element.elementor-element-d26a512{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:5px;}.elementor-29 .elementor-element.elementor-element-8736fbf{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:5px;}.elementor-29 .elementor-element.elementor-element-f308e1c{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:5px;}.elementor-29 .elementor-element.elementor-element-d22b7cc{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:5px;}.elementor-29 .elementor-element.elementor-element-938d423{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:5px;}.elementor-29 .elementor-element.elementor-element-e3b1ae9{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:5px;}.elementor-29 .elementor-element.elementor-element-e79e417{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:5px;}.elementor-29 .elementor-element.elementor-element-38bce8e{--n-tabs-title-font-size:3.9vw;}.elementor-29 .elementor-element.elementor-element-289ee6c{--spacer-size:8vh;}}@media(min-width:601px){.elementor-29 .elementor-element.elementor-element-6c2463c{--width:71%;}}@media(max-width:1366px) and (min-width:601px){.elementor-29 .elementor-element.elementor-element-6c2463c{--width:100%;}}/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-69daa3a *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d26a512 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-8736fbf *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-f308e1c *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-d22b7cc *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-938d423 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e3b1ae9 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e79e417 *//* ===== Loop Grid(c4ce72b) : Chrome-친화 보더 애니메이션 ===== */
.elementor-element-c4ce72b{
  /* 커스터마이즈 변수 */
  --r: 2rem;          /* 라운드 */
  --bw: 1px;              /* 테두리 두께 */
  --speed: 8s;            /* 색 순환 속도 */
  --card-bg: #fff;        /* 카드 배경 */

  /* 팔레트(고급/은은) */
  --c1: #F2F4FF;          /* 색상1 */
  --c2: #E9EDFF;          /* 색상2 */
  --c3: #E1E7FF;          /* 색상3 */

  --hover-color: #7B86F6; /* 호버 시 고정 테두리 색 */

  /* 이동할 그라디언트 정의 */
  --grad: linear-gradient(90deg, var(--c1), var(--c2), var(--c3), var(--c1));
}

/* 카드 래퍼 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element{
  position: relative;
  overflow: hidden;
  border-radius: var(--r);

  /* ‘보더만’ 그라디언트: 2중 배경 클립 트릭 */
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box, /* 안쪽 채움 */
    var(--grad) border-box;                                      /* 테두리 그라디언트 */
  /* 두 레이어 크기/위치 (2번째 레이어만 움직임) */
  background-size: 100% 100%, 300% 100%;
  background-position: 0 0, 0 0;

  /* 2번째 레이어만 좌→우로 이동 */
  animation: borderPan var(--speed) linear infinite;

  /* 합성 안정화 */
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  contain: paint;
  will-change: background-position;
}

/* 호버 시: 고정 단색 보더 오버레이로 부드럽게 덮기 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  border: var(--bw) solid transparent;
  background:
    linear-gradient(var(--card-bg), var(--card-bg)) padding-box,
    linear-gradient(0deg, var(--hover-color), var(--hover-color)) border-box;
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element:hover::after{
    opacity: 1; /* 아래 움직이는 보더는 계속 있지만, 위에서 고정색이 덮임 */
  }
}

/* 콘텐츠가 항상 위로 */
.elementor-element-c4ce72b .e-loop-item > .elementor-element > *{
  position: relative; z-index: 1;
}

/* 이미지 둥근 모서리 유지(옵션) */
.elementor-element-c4ce72b .elementor-widget-theme-post-featured-image img{
  border-radius: calc(var(--r) - var(--bw));
}

/* 접근성: 모션 최소화 환경에서는 정지 */
@media (prefers-reduced-motion: reduce){
  .elementor-element-c4ce72b .e-loop-item > .elementor-element{
    animation: none;
    background-position: 0 0, 0 0;
  }
  .elementor-element-c4ce72b .e-loop-item > .elementor-element::after{
    opacity: 0;
  }
}

/* 배경 이동 애니메이션(2번째 레이어만) */
@keyframes borderPan{
  to{ background-position: 0 0, 300% 0; }
}

/* 모바일(≤880px): 라운드 1rem로 축소 */
@media (max-width: 880px){
  .elementor-element-c4ce72b{
    --r: 1rem;
  }
}/* End custom CSS */