/*!*****************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./src/style.scss ***!
  \*****************************************************************************************************************************************************************/
@charset "UTF-8";
/*  gutenberg-block-helper/src/style.scss */
.flag-icon-background, .flag-icon {
  background-size: contain;
  background-position: 50%;
  background-repeat: no-repeat;
}

.flag-icon {
  position: relative;
  display: inline-block;
  width: 1.333333em;
  line-height: 1em;
}
.flag-icon:before {
  content: " ";
}
.flag-icon.flag-icon-squared {
  width: 1em;
}

.flag-icon-ad {
  background-image: url(../flags/4x3/ad.svg);
}
.flag-icon-ad.flag-icon-squared {
  background-image: url(../flags/1x1/ad.svg);
}

.flag-icon-ae {
  background-image: url(../flags/4x3/ae.svg);
}
.flag-icon-ae.flag-icon-squared {
  background-image: url(../flags/1x1/ae.svg);
}

.flag-icon-af {
  background-image: url(../flags/4x3/af.svg);
}
.flag-icon-af.flag-icon-squared {
  background-image: url(../flags/1x1/af.svg);
}

.flag-icon-ag {
  background-image: url(../flags/4x3/ag.svg);
}
.flag-icon-ag.flag-icon-squared {
  background-image: url(../flags/1x1/ag.svg);
}

.flag-icon-ai {
  background-image: url(../flags/4x3/ai.svg);
}
.flag-icon-ai.flag-icon-squared {
  background-image: url(../flags/1x1/ai.svg);
}

.flag-icon-al {
  background-image: url(../flags/4x3/al.svg);
}
.flag-icon-al.flag-icon-squared {
  background-image: url(../flags/1x1/al.svg);
}

.flag-icon-am {
  background-image: url(../flags/4x3/am.svg);
}
.flag-icon-am.flag-icon-squared {
  background-image: url(../flags/1x1/am.svg);
}

.flag-icon-ao {
  background-image: url(../flags/4x3/ao.svg);
}
.flag-icon-ao.flag-icon-squared {
  background-image: url(../flags/1x1/ao.svg);
}

.flag-icon-aq {
  background-image: url(../flags/4x3/aq.svg);
}
.flag-icon-aq.flag-icon-squared {
  background-image: url(../flags/1x1/aq.svg);
}

.flag-icon-ar {
  background-image: url(../flags/4x3/ar.svg);
}
.flag-icon-ar.flag-icon-squared {
  background-image: url(../flags/1x1/ar.svg);
}

.flag-icon-as {
  background-image: url(../flags/4x3/as.svg);
}
.flag-icon-as.flag-icon-squared {
  background-image: url(../flags/1x1/as.svg);
}

.flag-icon-at {
  background-image: url(../flags/4x3/at.svg);
}
.flag-icon-at.flag-icon-squared {
  background-image: url(../flags/1x1/at.svg);
}

.flag-icon-au {
  background-image: url(../flags/4x3/au.svg);
}
.flag-icon-au.flag-icon-squared {
  background-image: url(../flags/1x1/au.svg);
}

.flag-icon-aw {
  background-image: url(../flags/4x3/aw.svg);
}
.flag-icon-aw.flag-icon-squared {
  background-image: url(../flags/1x1/aw.svg);
}

.flag-icon-ax {
  background-image: url(../flags/4x3/ax.svg);
}
.flag-icon-ax.flag-icon-squared {
  background-image: url(../flags/1x1/ax.svg);
}

.flag-icon-az {
  background-image: url(../flags/4x3/az.svg);
}
.flag-icon-az.flag-icon-squared {
  background-image: url(../flags/1x1/az.svg);
}

.flag-icon-ba {
  background-image: url(../flags/4x3/ba.svg);
}
.flag-icon-ba.flag-icon-squared {
  background-image: url(../flags/1x1/ba.svg);
}

.flag-icon-bb {
  background-image: url(../flags/4x3/bb.svg);
}
.flag-icon-bb.flag-icon-squared {
  background-image: url(../flags/1x1/bb.svg);
}

.flag-icon-bd {
  background-image: url(../flags/4x3/bd.svg);
}
.flag-icon-bd.flag-icon-squared {
  background-image: url(../flags/1x1/bd.svg);
}

.flag-icon-be {
  background-image: url(../flags/4x3/be.svg);
}
.flag-icon-be.flag-icon-squared {
  background-image: url(../flags/1x1/be.svg);
}

.flag-icon-bf {
  background-image: url(../flags/4x3/bf.svg);
}
.flag-icon-bf.flag-icon-squared {
  background-image: url(../flags/1x1/bf.svg);
}

.flag-icon-bg {
  background-image: url(../flags/4x3/bg.svg);
}
.flag-icon-bg.flag-icon-squared {
  background-image: url(../flags/1x1/bg.svg);
}

.flag-icon-bh {
  background-image: url(../flags/4x3/bh.svg);
}
.flag-icon-bh.flag-icon-squared {
  background-image: url(../flags/1x1/bh.svg);
}

.flag-icon-bi {
  background-image: url(../flags/4x3/bi.svg);
}
.flag-icon-bi.flag-icon-squared {
  background-image: url(../flags/1x1/bi.svg);
}

.flag-icon-bj {
  background-image: url(../flags/4x3/bj.svg);
}
.flag-icon-bj.flag-icon-squared {
  background-image: url(../flags/1x1/bj.svg);
}

.flag-icon-bl {
  background-image: url(../flags/4x3/bl.svg);
}
.flag-icon-bl.flag-icon-squared {
  background-image: url(../flags/1x1/bl.svg);
}

.flag-icon-bm {
  background-image: url(../flags/4x3/bm.svg);
}
.flag-icon-bm.flag-icon-squared {
  background-image: url(../flags/1x1/bm.svg);
}

.flag-icon-bn {
  background-image: url(../flags/4x3/bn.svg);
}
.flag-icon-bn.flag-icon-squared {
  background-image: url(../flags/1x1/bn.svg);
}

.flag-icon-bo {
  background-image: url(../flags/4x3/bo.svg);
}
.flag-icon-bo.flag-icon-squared {
  background-image: url(../flags/1x1/bo.svg);
}

.flag-icon-bq {
  background-image: url(../flags/4x3/bq.svg);
}
.flag-icon-bq.flag-icon-squared {
  background-image: url(../flags/1x1/bq.svg);
}

.flag-icon-br {
  background-image: url(../flags/4x3/br.svg);
}
.flag-icon-br.flag-icon-squared {
  background-image: url(../flags/1x1/br.svg);
}

.flag-icon-bs {
  background-image: url(../flags/4x3/bs.svg);
}
.flag-icon-bs.flag-icon-squared {
  background-image: url(../flags/1x1/bs.svg);
}

.flag-icon-bt {
  background-image: url(../flags/4x3/bt.svg);
}
.flag-icon-bt.flag-icon-squared {
  background-image: url(../flags/1x1/bt.svg);
}

.flag-icon-bv {
  background-image: url(../flags/4x3/bv.svg);
}
.flag-icon-bv.flag-icon-squared {
  background-image: url(../flags/1x1/bv.svg);
}

.flag-icon-bw {
  background-image: url(../flags/4x3/bw.svg);
}
.flag-icon-bw.flag-icon-squared {
  background-image: url(../flags/1x1/bw.svg);
}

.flag-icon-by {
  background-image: url(../flags/4x3/by.svg);
}
.flag-icon-by.flag-icon-squared {
  background-image: url(../flags/1x1/by.svg);
}

.flag-icon-bz {
  background-image: url(../flags/4x3/bz.svg);
}
.flag-icon-bz.flag-icon-squared {
  background-image: url(../flags/1x1/bz.svg);
}

.flag-icon-ca {
  background-image: url(../flags/4x3/ca.svg);
}
.flag-icon-ca.flag-icon-squared {
  background-image: url(../flags/1x1/ca.svg);
}

.flag-icon-cc {
  background-image: url(../flags/4x3/cc.svg);
}
.flag-icon-cc.flag-icon-squared {
  background-image: url(../flags/1x1/cc.svg);
}

.flag-icon-cd {
  background-image: url(../flags/4x3/cd.svg);
}
.flag-icon-cd.flag-icon-squared {
  background-image: url(../flags/1x1/cd.svg);
}

.flag-icon-cf {
  background-image: url(../flags/4x3/cf.svg);
}
.flag-icon-cf.flag-icon-squared {
  background-image: url(../flags/1x1/cf.svg);
}

.flag-icon-cg {
  background-image: url(../flags/4x3/cg.svg);
}
.flag-icon-cg.flag-icon-squared {
  background-image: url(../flags/1x1/cg.svg);
}

.flag-icon-ch {
  background-image: url(../flags/4x3/ch.svg);
}
.flag-icon-ch.flag-icon-squared {
  background-image: url(../flags/1x1/ch.svg);
}

.flag-icon-ci {
  background-image: url(../flags/4x3/ci.svg);
}
.flag-icon-ci.flag-icon-squared {
  background-image: url(../flags/1x1/ci.svg);
}

.flag-icon-ck {
  background-image: url(../flags/4x3/ck.svg);
}
.flag-icon-ck.flag-icon-squared {
  background-image: url(../flags/1x1/ck.svg);
}

.flag-icon-cl {
  background-image: url(../flags/4x3/cl.svg);
}
.flag-icon-cl.flag-icon-squared {
  background-image: url(../flags/1x1/cl.svg);
}

.flag-icon-cm {
  background-image: url(../flags/4x3/cm.svg);
}
.flag-icon-cm.flag-icon-squared {
  background-image: url(../flags/1x1/cm.svg);
}

.flag-icon-cn {
  background-image: url(../flags/4x3/cn.svg);
}
.flag-icon-cn.flag-icon-squared {
  background-image: url(../flags/1x1/cn.svg);
}

.flag-icon-co {
  background-image: url(../flags/4x3/co.svg);
}
.flag-icon-co.flag-icon-squared {
  background-image: url(../flags/1x1/co.svg);
}

.flag-icon-cr {
  background-image: url(../flags/4x3/cr.svg);
}
.flag-icon-cr.flag-icon-squared {
  background-image: url(../flags/1x1/cr.svg);
}

.flag-icon-cu {
  background-image: url(../flags/4x3/cu.svg);
}
.flag-icon-cu.flag-icon-squared {
  background-image: url(../flags/1x1/cu.svg);
}

.flag-icon-cv {
  background-image: url(../flags/4x3/cv.svg);
}
.flag-icon-cv.flag-icon-squared {
  background-image: url(../flags/1x1/cv.svg);
}

.flag-icon-cw {
  background-image: url(../flags/4x3/cw.svg);
}
.flag-icon-cw.flag-icon-squared {
  background-image: url(../flags/1x1/cw.svg);
}

.flag-icon-cx {
  background-image: url(../flags/4x3/cx.svg);
}
.flag-icon-cx.flag-icon-squared {
  background-image: url(../flags/1x1/cx.svg);
}

.flag-icon-cy {
  background-image: url(../flags/4x3/cy.svg);
}
.flag-icon-cy.flag-icon-squared {
  background-image: url(../flags/1x1/cy.svg);
}

.flag-icon-cz {
  background-image: url(../flags/4x3/cz.svg);
}
.flag-icon-cz.flag-icon-squared {
  background-image: url(../flags/1x1/cz.svg);
}

.flag-icon-de {
  background-image: url(../flags/4x3/de.svg);
}
.flag-icon-de.flag-icon-squared {
  background-image: url(../flags/1x1/de.svg);
}

.flag-icon-dj {
  background-image: url(../flags/4x3/dj.svg);
}
.flag-icon-dj.flag-icon-squared {
  background-image: url(../flags/1x1/dj.svg);
}

.flag-icon-dk {
  background-image: url(../flags/4x3/dk.svg);
}
.flag-icon-dk.flag-icon-squared {
  background-image: url(../flags/1x1/dk.svg);
}

.flag-icon-dm {
  background-image: url(../flags/4x3/dm.svg);
}
.flag-icon-dm.flag-icon-squared {
  background-image: url(../flags/1x1/dm.svg);
}

.flag-icon-do {
  background-image: url(../flags/4x3/do.svg);
}
.flag-icon-do.flag-icon-squared {
  background-image: url(../flags/1x1/do.svg);
}

.flag-icon-dz {
  background-image: url(../flags/4x3/dz.svg);
}
.flag-icon-dz.flag-icon-squared {
  background-image: url(../flags/1x1/dz.svg);
}

.flag-icon-ec {
  background-image: url(../flags/4x3/ec.svg);
}
.flag-icon-ec.flag-icon-squared {
  background-image: url(../flags/1x1/ec.svg);
}

.flag-icon-ee {
  background-image: url(../flags/4x3/ee.svg);
}
.flag-icon-ee.flag-icon-squared {
  background-image: url(../flags/1x1/ee.svg);
}

.flag-icon-eg {
  background-image: url(../flags/4x3/eg.svg);
}
.flag-icon-eg.flag-icon-squared {
  background-image: url(../flags/1x1/eg.svg);
}

.flag-icon-eh {
  background-image: url(../flags/4x3/eh.svg);
}
.flag-icon-eh.flag-icon-squared {
  background-image: url(../flags/1x1/eh.svg);
}

.flag-icon-er {
  background-image: url(../flags/4x3/er.svg);
}
.flag-icon-er.flag-icon-squared {
  background-image: url(../flags/1x1/er.svg);
}

.flag-icon-es {
  background-image: url(../flags/4x3/es.svg);
}
.flag-icon-es.flag-icon-squared {
  background-image: url(../flags/1x1/es.svg);
}

.flag-icon-et {
  background-image: url(../flags/4x3/et.svg);
}
.flag-icon-et.flag-icon-squared {
  background-image: url(../flags/1x1/et.svg);
}

.flag-icon-fi {
  background-image: url(../flags/4x3/fi.svg);
}
.flag-icon-fi.flag-icon-squared {
  background-image: url(../flags/1x1/fi.svg);
}

.flag-icon-fj {
  background-image: url(../flags/4x3/fj.svg);
}
.flag-icon-fj.flag-icon-squared {
  background-image: url(../flags/1x1/fj.svg);
}

.flag-icon-fk {
  background-image: url(../flags/4x3/fk.svg);
}
.flag-icon-fk.flag-icon-squared {
  background-image: url(../flags/1x1/fk.svg);
}

.flag-icon-fm {
  background-image: url(../flags/4x3/fm.svg);
}
.flag-icon-fm.flag-icon-squared {
  background-image: url(../flags/1x1/fm.svg);
}

.flag-icon-fo {
  background-image: url(../flags/4x3/fo.svg);
}
.flag-icon-fo.flag-icon-squared {
  background-image: url(../flags/1x1/fo.svg);
}

.flag-icon-fr {
  background-image: url(../flags/4x3/fr.svg);
}
.flag-icon-fr.flag-icon-squared {
  background-image: url(../flags/1x1/fr.svg);
}

.flag-icon-ga {
  background-image: url(../flags/4x3/ga.svg);
}
.flag-icon-ga.flag-icon-squared {
  background-image: url(../flags/1x1/ga.svg);
}

.flag-icon-gb {
  background-image: url(../flags/4x3/gb.svg);
}
.flag-icon-gb.flag-icon-squared {
  background-image: url(../flags/1x1/gb.svg);
}

.flag-icon-gd {
  background-image: url(../flags/4x3/gd.svg);
}
.flag-icon-gd.flag-icon-squared {
  background-image: url(../flags/1x1/gd.svg);
}

.flag-icon-ge {
  background-image: url(../flags/4x3/ge.svg);
}
.flag-icon-ge.flag-icon-squared {
  background-image: url(../flags/1x1/ge.svg);
}

.flag-icon-gf {
  background-image: url(../flags/4x3/gf.svg);
}
.flag-icon-gf.flag-icon-squared {
  background-image: url(../flags/1x1/gf.svg);
}

.flag-icon-gg {
  background-image: url(../flags/4x3/gg.svg);
}
.flag-icon-gg.flag-icon-squared {
  background-image: url(../flags/1x1/gg.svg);
}

.flag-icon-gh {
  background-image: url(../flags/4x3/gh.svg);
}
.flag-icon-gh.flag-icon-squared {
  background-image: url(../flags/1x1/gh.svg);
}

.flag-icon-gi {
  background-image: url(../flags/4x3/gi.svg);
}
.flag-icon-gi.flag-icon-squared {
  background-image: url(../flags/1x1/gi.svg);
}

.flag-icon-gl {
  background-image: url(../flags/4x3/gl.svg);
}
.flag-icon-gl.flag-icon-squared {
  background-image: url(../flags/1x1/gl.svg);
}

.flag-icon-gm {
  background-image: url(../flags/4x3/gm.svg);
}
.flag-icon-gm.flag-icon-squared {
  background-image: url(../flags/1x1/gm.svg);
}

.flag-icon-gn {
  background-image: url(../flags/4x3/gn.svg);
}
.flag-icon-gn.flag-icon-squared {
  background-image: url(../flags/1x1/gn.svg);
}

.flag-icon-gp {
  background-image: url(../flags/4x3/gp.svg);
}
.flag-icon-gp.flag-icon-squared {
  background-image: url(../flags/1x1/gp.svg);
}

.flag-icon-gq {
  background-image: url(../flags/4x3/gq.svg);
}
.flag-icon-gq.flag-icon-squared {
  background-image: url(../flags/1x1/gq.svg);
}

.flag-icon-gr {
  background-image: url(../flags/4x3/gr.svg);
}
.flag-icon-gr.flag-icon-squared {
  background-image: url(../flags/1x1/gr.svg);
}

.flag-icon-gs {
  background-image: url(../flags/4x3/gs.svg);
}
.flag-icon-gs.flag-icon-squared {
  background-image: url(../flags/1x1/gs.svg);
}

.flag-icon-gt {
  background-image: url(../flags/4x3/gt.svg);
}
.flag-icon-gt.flag-icon-squared {
  background-image: url(../flags/1x1/gt.svg);
}

.flag-icon-gu {
  background-image: url(../flags/4x3/gu.svg);
}
.flag-icon-gu.flag-icon-squared {
  background-image: url(../flags/1x1/gu.svg);
}

.flag-icon-gw {
  background-image: url(../flags/4x3/gw.svg);
}
.flag-icon-gw.flag-icon-squared {
  background-image: url(../flags/1x1/gw.svg);
}

.flag-icon-gy {
  background-image: url(../flags/4x3/gy.svg);
}
.flag-icon-gy.flag-icon-squared {
  background-image: url(../flags/1x1/gy.svg);
}

.flag-icon-hk {
  background-image: url(../flags/4x3/hk.svg);
}
.flag-icon-hk.flag-icon-squared {
  background-image: url(../flags/1x1/hk.svg);
}

.flag-icon-hm {
  background-image: url(../flags/4x3/hm.svg);
}
.flag-icon-hm.flag-icon-squared {
  background-image: url(../flags/1x1/hm.svg);
}

.flag-icon-hn {
  background-image: url(../flags/4x3/hn.svg);
}
.flag-icon-hn.flag-icon-squared {
  background-image: url(../flags/1x1/hn.svg);
}

.flag-icon-hr {
  background-image: url(../flags/4x3/hr.svg);
}
.flag-icon-hr.flag-icon-squared {
  background-image: url(../flags/1x1/hr.svg);
}

.flag-icon-ht {
  background-image: url(../flags/4x3/ht.svg);
}
.flag-icon-ht.flag-icon-squared {
  background-image: url(../flags/1x1/ht.svg);
}

.flag-icon-hu {
  background-image: url(../flags/4x3/hu.svg);
}
.flag-icon-hu.flag-icon-squared {
  background-image: url(../flags/1x1/hu.svg);
}

.flag-icon-id {
  background-image: url(../flags/4x3/id.svg);
}
.flag-icon-id.flag-icon-squared {
  background-image: url(../flags/1x1/id.svg);
}

.flag-icon-ie {
  background-image: url(../flags/4x3/ie.svg);
}
.flag-icon-ie.flag-icon-squared {
  background-image: url(../flags/1x1/ie.svg);
}

.flag-icon-il {
  background-image: url(../flags/4x3/il.svg);
}
.flag-icon-il.flag-icon-squared {
  background-image: url(../flags/1x1/il.svg);
}

.flag-icon-im {
  background-image: url(../flags/4x3/im.svg);
}
.flag-icon-im.flag-icon-squared {
  background-image: url(../flags/1x1/im.svg);
}

.flag-icon-in {
  background-image: url(../flags/4x3/in.svg);
}
.flag-icon-in.flag-icon-squared {
  background-image: url(../flags/1x1/in.svg);
}

.flag-icon-io {
  background-image: url(../flags/4x3/io.svg);
}
.flag-icon-io.flag-icon-squared {
  background-image: url(../flags/1x1/io.svg);
}

.flag-icon-iq {
  background-image: url(../flags/4x3/iq.svg);
}
.flag-icon-iq.flag-icon-squared {
  background-image: url(../flags/1x1/iq.svg);
}

.flag-icon-ir {
  background-image: url(../flags/4x3/ir.svg);
}
.flag-icon-ir.flag-icon-squared {
  background-image: url(../flags/1x1/ir.svg);
}

.flag-icon-is {
  background-image: url(../flags/4x3/is.svg);
}
.flag-icon-is.flag-icon-squared {
  background-image: url(../flags/1x1/is.svg);
}

.flag-icon-it {
  background-image: url(../flags/4x3/it.svg);
}
.flag-icon-it.flag-icon-squared {
  background-image: url(../flags/1x1/it.svg);
}

.flag-icon-je {
  background-image: url(../flags/4x3/je.svg);
}
.flag-icon-je.flag-icon-squared {
  background-image: url(../flags/1x1/je.svg);
}

.flag-icon-jm {
  background-image: url(../flags/4x3/jm.svg);
}
.flag-icon-jm.flag-icon-squared {
  background-image: url(../flags/1x1/jm.svg);
}

.flag-icon-jo {
  background-image: url(../flags/4x3/jo.svg);
}
.flag-icon-jo.flag-icon-squared {
  background-image: url(../flags/1x1/jo.svg);
}

.flag-icon-jp {
  background-image: url(../flags/4x3/jp.svg);
}
.flag-icon-jp.flag-icon-squared {
  background-image: url(../flags/1x1/jp.svg);
}

.flag-icon-ke {
  background-image: url(../flags/4x3/ke.svg);
}
.flag-icon-ke.flag-icon-squared {
  background-image: url(../flags/1x1/ke.svg);
}

.flag-icon-kg {
  background-image: url(../flags/4x3/kg.svg);
}
.flag-icon-kg.flag-icon-squared {
  background-image: url(../flags/1x1/kg.svg);
}

.flag-icon-kh {
  background-image: url(../flags/4x3/kh.svg);
}
.flag-icon-kh.flag-icon-squared {
  background-image: url(../flags/1x1/kh.svg);
}

.flag-icon-ki {
  background-image: url(../flags/4x3/ki.svg);
}
.flag-icon-ki.flag-icon-squared {
  background-image: url(../flags/1x1/ki.svg);
}

.flag-icon-km {
  background-image: url(../flags/4x3/km.svg);
}
.flag-icon-km.flag-icon-squared {
  background-image: url(../flags/1x1/km.svg);
}

.flag-icon-kn {
  background-image: url(../flags/4x3/kn.svg);
}
.flag-icon-kn.flag-icon-squared {
  background-image: url(../flags/1x1/kn.svg);
}

.flag-icon-kp {
  background-image: url(../flags/4x3/kp.svg);
}
.flag-icon-kp.flag-icon-squared {
  background-image: url(../flags/1x1/kp.svg);
}

.flag-icon-kr {
  background-image: url(../flags/4x3/kr.svg);
}
.flag-icon-kr.flag-icon-squared {
  background-image: url(../flags/1x1/kr.svg);
}

.flag-icon-kw {
  background-image: url(../flags/4x3/kw.svg);
}
.flag-icon-kw.flag-icon-squared {
  background-image: url(../flags/1x1/kw.svg);
}

.flag-icon-ky {
  background-image: url(../flags/4x3/ky.svg);
}
.flag-icon-ky.flag-icon-squared {
  background-image: url(../flags/1x1/ky.svg);
}

.flag-icon-kz {
  background-image: url(../flags/4x3/kz.svg);
}
.flag-icon-kz.flag-icon-squared {
  background-image: url(../flags/1x1/kz.svg);
}

.flag-icon-la {
  background-image: url(../flags/4x3/la.svg);
}
.flag-icon-la.flag-icon-squared {
  background-image: url(../flags/1x1/la.svg);
}

.flag-icon-lb {
  background-image: url(../flags/4x3/lb.svg);
}
.flag-icon-lb.flag-icon-squared {
  background-image: url(../flags/1x1/lb.svg);
}

.flag-icon-lc {
  background-image: url(../flags/4x3/lc.svg);
}
.flag-icon-lc.flag-icon-squared {
  background-image: url(../flags/1x1/lc.svg);
}

.flag-icon-li {
  background-image: url(../flags/4x3/li.svg);
}
.flag-icon-li.flag-icon-squared {
  background-image: url(../flags/1x1/li.svg);
}

.flag-icon-lk {
  background-image: url(../flags/4x3/lk.svg);
}
.flag-icon-lk.flag-icon-squared {
  background-image: url(../flags/1x1/lk.svg);
}

.flag-icon-lr {
  background-image: url(../flags/4x3/lr.svg);
}
.flag-icon-lr.flag-icon-squared {
  background-image: url(../flags/1x1/lr.svg);
}

.flag-icon-ls {
  background-image: url(../flags/4x3/ls.svg);
}
.flag-icon-ls.flag-icon-squared {
  background-image: url(../flags/1x1/ls.svg);
}

.flag-icon-lt {
  background-image: url(../flags/4x3/lt.svg);
}
.flag-icon-lt.flag-icon-squared {
  background-image: url(../flags/1x1/lt.svg);
}

.flag-icon-lu {
  background-image: url(../flags/4x3/lu.svg);
}
.flag-icon-lu.flag-icon-squared {
  background-image: url(../flags/1x1/lu.svg);
}

.flag-icon-lv {
  background-image: url(../flags/4x3/lv.svg);
}
.flag-icon-lv.flag-icon-squared {
  background-image: url(../flags/1x1/lv.svg);
}

.flag-icon-ly {
  background-image: url(../flags/4x3/ly.svg);
}
.flag-icon-ly.flag-icon-squared {
  background-image: url(../flags/1x1/ly.svg);
}

.flag-icon-ma {
  background-image: url(../flags/4x3/ma.svg);
}
.flag-icon-ma.flag-icon-squared {
  background-image: url(../flags/1x1/ma.svg);
}

.flag-icon-mc {
  background-image: url(../flags/4x3/mc.svg);
}
.flag-icon-mc.flag-icon-squared {
  background-image: url(../flags/1x1/mc.svg);
}

.flag-icon-md {
  background-image: url(../flags/4x3/md.svg);
}
.flag-icon-md.flag-icon-squared {
  background-image: url(../flags/1x1/md.svg);
}

.flag-icon-me {
  background-image: url(../flags/4x3/me.svg);
}
.flag-icon-me.flag-icon-squared {
  background-image: url(../flags/1x1/me.svg);
}

.flag-icon-mf {
  background-image: url(../flags/4x3/mf.svg);
}
.flag-icon-mf.flag-icon-squared {
  background-image: url(../flags/1x1/mf.svg);
}

.flag-icon-mg {
  background-image: url(../flags/4x3/mg.svg);
}
.flag-icon-mg.flag-icon-squared {
  background-image: url(../flags/1x1/mg.svg);
}

.flag-icon-mh {
  background-image: url(../flags/4x3/mh.svg);
}
.flag-icon-mh.flag-icon-squared {
  background-image: url(../flags/1x1/mh.svg);
}

.flag-icon-mk {
  background-image: url(../flags/4x3/mk.svg);
}
.flag-icon-mk.flag-icon-squared {
  background-image: url(../flags/1x1/mk.svg);
}

.flag-icon-ml {
  background-image: url(../flags/4x3/ml.svg);
}
.flag-icon-ml.flag-icon-squared {
  background-image: url(../flags/1x1/ml.svg);
}

.flag-icon-mm {
  background-image: url(../flags/4x3/mm.svg);
}
.flag-icon-mm.flag-icon-squared {
  background-image: url(../flags/1x1/mm.svg);
}

.flag-icon-mn {
  background-image: url(../flags/4x3/mn.svg);
}
.flag-icon-mn.flag-icon-squared {
  background-image: url(../flags/1x1/mn.svg);
}

.flag-icon-mo {
  background-image: url(../flags/4x3/mo.svg);
}
.flag-icon-mo.flag-icon-squared {
  background-image: url(../flags/1x1/mo.svg);
}

.flag-icon-mp {
  background-image: url(../flags/4x3/mp.svg);
}
.flag-icon-mp.flag-icon-squared {
  background-image: url(../flags/1x1/mp.svg);
}

.flag-icon-mq {
  background-image: url(../flags/4x3/mq.svg);
}
.flag-icon-mq.flag-icon-squared {
  background-image: url(../flags/1x1/mq.svg);
}

.flag-icon-mr {
  background-image: url(../flags/4x3/mr.svg);
}
.flag-icon-mr.flag-icon-squared {
  background-image: url(../flags/1x1/mr.svg);
}

.flag-icon-ms {
  background-image: url(../flags/4x3/ms.svg);
}
.flag-icon-ms.flag-icon-squared {
  background-image: url(../flags/1x1/ms.svg);
}

.flag-icon-mt {
  background-image: url(../flags/4x3/mt.svg);
}
.flag-icon-mt.flag-icon-squared {
  background-image: url(../flags/1x1/mt.svg);
}

.flag-icon-mu {
  background-image: url(../flags/4x3/mu.svg);
}
.flag-icon-mu.flag-icon-squared {
  background-image: url(../flags/1x1/mu.svg);
}

.flag-icon-mv {
  background-image: url(../flags/4x3/mv.svg);
}
.flag-icon-mv.flag-icon-squared {
  background-image: url(../flags/1x1/mv.svg);
}

.flag-icon-mw {
  background-image: url(../flags/4x3/mw.svg);
}
.flag-icon-mw.flag-icon-squared {
  background-image: url(../flags/1x1/mw.svg);
}

.flag-icon-mx {
  background-image: url(../flags/4x3/mx.svg);
}
.flag-icon-mx.flag-icon-squared {
  background-image: url(../flags/1x1/mx.svg);
}

.flag-icon-my {
  background-image: url(../flags/4x3/my.svg);
}
.flag-icon-my.flag-icon-squared {
  background-image: url(../flags/1x1/my.svg);
}

.flag-icon-mz {
  background-image: url(../flags/4x3/mz.svg);
}
.flag-icon-mz.flag-icon-squared {
  background-image: url(../flags/1x1/mz.svg);
}

.flag-icon-na {
  background-image: url(../flags/4x3/na.svg);
}
.flag-icon-na.flag-icon-squared {
  background-image: url(../flags/1x1/na.svg);
}

.flag-icon-nc {
  background-image: url(../flags/4x3/nc.svg);
}
.flag-icon-nc.flag-icon-squared {
  background-image: url(../flags/1x1/nc.svg);
}

.flag-icon-ne {
  background-image: url(../flags/4x3/ne.svg);
}
.flag-icon-ne.flag-icon-squared {
  background-image: url(../flags/1x1/ne.svg);
}

.flag-icon-nf {
  background-image: url(../flags/4x3/nf.svg);
}
.flag-icon-nf.flag-icon-squared {
  background-image: url(../flags/1x1/nf.svg);
}

.flag-icon-ng {
  background-image: url(../flags/4x3/ng.svg);
}
.flag-icon-ng.flag-icon-squared {
  background-image: url(../flags/1x1/ng.svg);
}

.flag-icon-ni {
  background-image: url(../flags/4x3/ni.svg);
}
.flag-icon-ni.flag-icon-squared {
  background-image: url(../flags/1x1/ni.svg);
}

.flag-icon-nl {
  background-image: url(../flags/4x3/nl.svg);
}
.flag-icon-nl.flag-icon-squared {
  background-image: url(../flags/1x1/nl.svg);
}

.flag-icon-no {
  background-image: url(../flags/4x3/no.svg);
}
.flag-icon-no.flag-icon-squared {
  background-image: url(../flags/1x1/no.svg);
}

.flag-icon-np {
  background-image: url(../flags/4x3/np.svg);
}
.flag-icon-np.flag-icon-squared {
  background-image: url(../flags/1x1/np.svg);
}

.flag-icon-nr {
  background-image: url(../flags/4x3/nr.svg);
}
.flag-icon-nr.flag-icon-squared {
  background-image: url(../flags/1x1/nr.svg);
}

.flag-icon-nu {
  background-image: url(../flags/4x3/nu.svg);
}
.flag-icon-nu.flag-icon-squared {
  background-image: url(../flags/1x1/nu.svg);
}

.flag-icon-nz {
  background-image: url(../flags/4x3/nz.svg);
}
.flag-icon-nz.flag-icon-squared {
  background-image: url(../flags/1x1/nz.svg);
}

.flag-icon-om {
  background-image: url(../flags/4x3/om.svg);
}
.flag-icon-om.flag-icon-squared {
  background-image: url(../flags/1x1/om.svg);
}

.flag-icon-pa {
  background-image: url(../flags/4x3/pa.svg);
}
.flag-icon-pa.flag-icon-squared {
  background-image: url(../flags/1x1/pa.svg);
}

.flag-icon-pe {
  background-image: url(../flags/4x3/pe.svg);
}
.flag-icon-pe.flag-icon-squared {
  background-image: url(../flags/1x1/pe.svg);
}

.flag-icon-pf {
  background-image: url(../flags/4x3/pf.svg);
}
.flag-icon-pf.flag-icon-squared {
  background-image: url(../flags/1x1/pf.svg);
}

.flag-icon-pg {
  background-image: url(../flags/4x3/pg.svg);
}
.flag-icon-pg.flag-icon-squared {
  background-image: url(../flags/1x1/pg.svg);
}

.flag-icon-ph {
  background-image: url(../flags/4x3/ph.svg);
}
.flag-icon-ph.flag-icon-squared {
  background-image: url(../flags/1x1/ph.svg);
}

.flag-icon-pk {
  background-image: url(../flags/4x3/pk.svg);
}
.flag-icon-pk.flag-icon-squared {
  background-image: url(../flags/1x1/pk.svg);
}

.flag-icon-pl {
  background-image: url(../flags/4x3/pl.svg);
}
.flag-icon-pl.flag-icon-squared {
  background-image: url(../flags/1x1/pl.svg);
}

.flag-icon-pm {
  background-image: url(../flags/4x3/pm.svg);
}
.flag-icon-pm.flag-icon-squared {
  background-image: url(../flags/1x1/pm.svg);
}

.flag-icon-pn {
  background-image: url(../flags/4x3/pn.svg);
}
.flag-icon-pn.flag-icon-squared {
  background-image: url(../flags/1x1/pn.svg);
}

.flag-icon-pr {
  background-image: url(../flags/4x3/pr.svg);
}
.flag-icon-pr.flag-icon-squared {
  background-image: url(../flags/1x1/pr.svg);
}

.flag-icon-ps {
  background-image: url(../flags/4x3/ps.svg);
}
.flag-icon-ps.flag-icon-squared {
  background-image: url(../flags/1x1/ps.svg);
}

.flag-icon-pt {
  background-image: url(../flags/4x3/pt.svg);
}
.flag-icon-pt.flag-icon-squared {
  background-image: url(../flags/1x1/pt.svg);
}

.flag-icon-pw {
  background-image: url(../flags/4x3/pw.svg);
}
.flag-icon-pw.flag-icon-squared {
  background-image: url(../flags/1x1/pw.svg);
}

.flag-icon-py {
  background-image: url(../flags/4x3/py.svg);
}
.flag-icon-py.flag-icon-squared {
  background-image: url(../flags/1x1/py.svg);
}

.flag-icon-qa {
  background-image: url(../flags/4x3/qa.svg);
}
.flag-icon-qa.flag-icon-squared {
  background-image: url(../flags/1x1/qa.svg);
}

.flag-icon-re {
  background-image: url(../flags/4x3/re.svg);
}
.flag-icon-re.flag-icon-squared {
  background-image: url(../flags/1x1/re.svg);
}

.flag-icon-ro {
  background-image: url(../flags/4x3/ro.svg);
}
.flag-icon-ro.flag-icon-squared {
  background-image: url(../flags/1x1/ro.svg);
}

.flag-icon-rs {
  background-image: url(../flags/4x3/rs.svg);
}
.flag-icon-rs.flag-icon-squared {
  background-image: url(../flags/1x1/rs.svg);
}

.flag-icon-ru {
  background-image: url(../flags/4x3/ru.svg);
}
.flag-icon-ru.flag-icon-squared {
  background-image: url(../flags/1x1/ru.svg);
}

.flag-icon-rw {
  background-image: url(../flags/4x3/rw.svg);
}
.flag-icon-rw.flag-icon-squared {
  background-image: url(../flags/1x1/rw.svg);
}

.flag-icon-sa {
  background-image: url(../flags/4x3/sa.svg);
}
.flag-icon-sa.flag-icon-squared {
  background-image: url(../flags/1x1/sa.svg);
}

.flag-icon-sb {
  background-image: url(../flags/4x3/sb.svg);
}
.flag-icon-sb.flag-icon-squared {
  background-image: url(../flags/1x1/sb.svg);
}

.flag-icon-sc {
  background-image: url(../flags/4x3/sc.svg);
}
.flag-icon-sc.flag-icon-squared {
  background-image: url(../flags/1x1/sc.svg);
}

.flag-icon-sd {
  background-image: url(../flags/4x3/sd.svg);
}
.flag-icon-sd.flag-icon-squared {
  background-image: url(../flags/1x1/sd.svg);
}

.flag-icon-se {
  background-image: url(../flags/4x3/se.svg);
}
.flag-icon-se.flag-icon-squared {
  background-image: url(../flags/1x1/se.svg);
}

.flag-icon-sg {
  background-image: url(../flags/4x3/sg.svg);
}
.flag-icon-sg.flag-icon-squared {
  background-image: url(../flags/1x1/sg.svg);
}

.flag-icon-sh {
  background-image: url(../flags/4x3/sh.svg);
}
.flag-icon-sh.flag-icon-squared {
  background-image: url(../flags/1x1/sh.svg);
}

.flag-icon-si {
  background-image: url(../flags/4x3/si.svg);
}
.flag-icon-si.flag-icon-squared {
  background-image: url(../flags/1x1/si.svg);
}

.flag-icon-sj {
  background-image: url(../flags/4x3/sj.svg);
}
.flag-icon-sj.flag-icon-squared {
  background-image: url(../flags/1x1/sj.svg);
}

.flag-icon-sk {
  background-image: url(../flags/4x3/sk.svg);
}
.flag-icon-sk.flag-icon-squared {
  background-image: url(../flags/1x1/sk.svg);
}

.flag-icon-sl {
  background-image: url(../flags/4x3/sl.svg);
}
.flag-icon-sl.flag-icon-squared {
  background-image: url(../flags/1x1/sl.svg);
}

.flag-icon-sm {
  background-image: url(../flags/4x3/sm.svg);
}
.flag-icon-sm.flag-icon-squared {
  background-image: url(../flags/1x1/sm.svg);
}

.flag-icon-sn {
  background-image: url(../flags/4x3/sn.svg);
}
.flag-icon-sn.flag-icon-squared {
  background-image: url(../flags/1x1/sn.svg);
}

.flag-icon-so {
  background-image: url(../flags/4x3/so.svg);
}
.flag-icon-so.flag-icon-squared {
  background-image: url(../flags/1x1/so.svg);
}

.flag-icon-sr {
  background-image: url(../flags/4x3/sr.svg);
}
.flag-icon-sr.flag-icon-squared {
  background-image: url(../flags/1x1/sr.svg);
}

.flag-icon-ss {
  background-image: url(../flags/4x3/ss.svg);
}
.flag-icon-ss.flag-icon-squared {
  background-image: url(../flags/1x1/ss.svg);
}

.flag-icon-st {
  background-image: url(../flags/4x3/st.svg);
}
.flag-icon-st.flag-icon-squared {
  background-image: url(../flags/1x1/st.svg);
}

.flag-icon-sv {
  background-image: url(../flags/4x3/sv.svg);
}
.flag-icon-sv.flag-icon-squared {
  background-image: url(../flags/1x1/sv.svg);
}

.flag-icon-sx {
  background-image: url(../flags/4x3/sx.svg);
}
.flag-icon-sx.flag-icon-squared {
  background-image: url(../flags/1x1/sx.svg);
}

.flag-icon-sy {
  background-image: url(../flags/4x3/sy.svg);
}
.flag-icon-sy.flag-icon-squared {
  background-image: url(../flags/1x1/sy.svg);
}

.flag-icon-sz {
  background-image: url(../flags/4x3/sz.svg);
}
.flag-icon-sz.flag-icon-squared {
  background-image: url(../flags/1x1/sz.svg);
}

.flag-icon-tc {
  background-image: url(../flags/4x3/tc.svg);
}
.flag-icon-tc.flag-icon-squared {
  background-image: url(../flags/1x1/tc.svg);
}

.flag-icon-td {
  background-image: url(../flags/4x3/td.svg);
}
.flag-icon-td.flag-icon-squared {
  background-image: url(../flags/1x1/td.svg);
}

.flag-icon-tf {
  background-image: url(../flags/4x3/tf.svg);
}
.flag-icon-tf.flag-icon-squared {
  background-image: url(../flags/1x1/tf.svg);
}

.flag-icon-tg {
  background-image: url(../flags/4x3/tg.svg);
}
.flag-icon-tg.flag-icon-squared {
  background-image: url(../flags/1x1/tg.svg);
}

.flag-icon-th {
  background-image: url(../flags/4x3/th.svg);
}
.flag-icon-th.flag-icon-squared {
  background-image: url(../flags/1x1/th.svg);
}

.flag-icon-tj {
  background-image: url(../flags/4x3/tj.svg);
}
.flag-icon-tj.flag-icon-squared {
  background-image: url(../flags/1x1/tj.svg);
}

.flag-icon-tk {
  background-image: url(../flags/4x3/tk.svg);
}
.flag-icon-tk.flag-icon-squared {
  background-image: url(../flags/1x1/tk.svg);
}

.flag-icon-tl {
  background-image: url(../flags/4x3/tl.svg);
}
.flag-icon-tl.flag-icon-squared {
  background-image: url(../flags/1x1/tl.svg);
}

.flag-icon-tm {
  background-image: url(../flags/4x3/tm.svg);
}
.flag-icon-tm.flag-icon-squared {
  background-image: url(../flags/1x1/tm.svg);
}

.flag-icon-tn {
  background-image: url(../flags/4x3/tn.svg);
}
.flag-icon-tn.flag-icon-squared {
  background-image: url(../flags/1x1/tn.svg);
}

.flag-icon-to {
  background-image: url(../flags/4x3/to.svg);
}
.flag-icon-to.flag-icon-squared {
  background-image: url(../flags/1x1/to.svg);
}

.flag-icon-tr {
  background-image: url(../flags/4x3/tr.svg);
}
.flag-icon-tr.flag-icon-squared {
  background-image: url(../flags/1x1/tr.svg);
}

.flag-icon-tt {
  background-image: url(../flags/4x3/tt.svg);
}
.flag-icon-tt.flag-icon-squared {
  background-image: url(../flags/1x1/tt.svg);
}

.flag-icon-tv {
  background-image: url(../flags/4x3/tv.svg);
}
.flag-icon-tv.flag-icon-squared {
  background-image: url(../flags/1x1/tv.svg);
}

.flag-icon-tw {
  background-image: url(../flags/4x3/tw.svg);
}
.flag-icon-tw.flag-icon-squared {
  background-image: url(../flags/1x1/tw.svg);
}

.flag-icon-tz {
  background-image: url(../flags/4x3/tz.svg);
}
.flag-icon-tz.flag-icon-squared {
  background-image: url(../flags/1x1/tz.svg);
}

.flag-icon-ua {
  background-image: url(../flags/4x3/ua.svg);
}
.flag-icon-ua.flag-icon-squared {
  background-image: url(../flags/1x1/ua.svg);
}

.flag-icon-ug {
  background-image: url(../flags/4x3/ug.svg);
}
.flag-icon-ug.flag-icon-squared {
  background-image: url(../flags/1x1/ug.svg);
}

.flag-icon-um {
  background-image: url(../flags/4x3/um.svg);
}
.flag-icon-um.flag-icon-squared {
  background-image: url(../flags/1x1/um.svg);
}

.flag-icon-us {
  background-image: url(../flags/4x3/us.svg);
}
.flag-icon-us.flag-icon-squared {
  background-image: url(../flags/1x1/us.svg);
}

.flag-icon-uy {
  background-image: url(../flags/4x3/uy.svg);
}
.flag-icon-uy.flag-icon-squared {
  background-image: url(../flags/1x1/uy.svg);
}

.flag-icon-uz {
  background-image: url(../flags/4x3/uz.svg);
}
.flag-icon-uz.flag-icon-squared {
  background-image: url(../flags/1x1/uz.svg);
}

.flag-icon-va {
  background-image: url(../flags/4x3/va.svg);
}
.flag-icon-va.flag-icon-squared {
  background-image: url(../flags/1x1/va.svg);
}

.flag-icon-vc {
  background-image: url(../flags/4x3/vc.svg);
}
.flag-icon-vc.flag-icon-squared {
  background-image: url(../flags/1x1/vc.svg);
}

.flag-icon-ve {
  background-image: url(../flags/4x3/ve.svg);
}
.flag-icon-ve.flag-icon-squared {
  background-image: url(../flags/1x1/ve.svg);
}

.flag-icon-vg {
  background-image: url(../flags/4x3/vg.svg);
}
.flag-icon-vg.flag-icon-squared {
  background-image: url(../flags/1x1/vg.svg);
}

.flag-icon-vi {
  background-image: url(../flags/4x3/vi.svg);
}
.flag-icon-vi.flag-icon-squared {
  background-image: url(../flags/1x1/vi.svg);
}

.flag-icon-vn {
  background-image: url(../flags/4x3/vn.svg);
}
.flag-icon-vn.flag-icon-squared {
  background-image: url(../flags/1x1/vn.svg);
}

.flag-icon-vu {
  background-image: url(../flags/4x3/vu.svg);
}
.flag-icon-vu.flag-icon-squared {
  background-image: url(../flags/1x1/vu.svg);
}

.flag-icon-wf {
  background-image: url(../flags/4x3/wf.svg);
}
.flag-icon-wf.flag-icon-squared {
  background-image: url(../flags/1x1/wf.svg);
}

.flag-icon-ws {
  background-image: url(../flags/4x3/ws.svg);
}
.flag-icon-ws.flag-icon-squared {
  background-image: url(../flags/1x1/ws.svg);
}

.flag-icon-ye {
  background-image: url(../flags/4x3/ye.svg);
}
.flag-icon-ye.flag-icon-squared {
  background-image: url(../flags/1x1/ye.svg);
}

.flag-icon-yt {
  background-image: url(../flags/4x3/yt.svg);
}
.flag-icon-yt.flag-icon-squared {
  background-image: url(../flags/1x1/yt.svg);
}

.flag-icon-za {
  background-image: url(../flags/4x3/za.svg);
}
.flag-icon-za.flag-icon-squared {
  background-image: url(../flags/1x1/za.svg);
}

.flag-icon-zm {
  background-image: url(../flags/4x3/zm.svg);
}
.flag-icon-zm.flag-icon-squared {
  background-image: url(../flags/1x1/zm.svg);
}

.flag-icon-zw {
  background-image: url(../flags/4x3/zw.svg);
}
.flag-icon-zw.flag-icon-squared {
  background-image: url(../flags/1x1/zw.svg);
}

.flag-icon-ac {
  background-image: url(../flags/4x3/ac.svg);
}
.flag-icon-ac.flag-icon-squared {
  background-image: url(../flags/1x1/ac.svg);
}

.flag-icon-cp {
  background-image: url(../flags/4x3/cp.svg);
}
.flag-icon-cp.flag-icon-squared {
  background-image: url(../flags/1x1/cp.svg);
}

.flag-icon-dg {
  background-image: url(../flags/4x3/dg.svg);
}
.flag-icon-dg.flag-icon-squared {
  background-image: url(../flags/1x1/dg.svg);
}

.flag-icon-ea {
  background-image: url(../flags/4x3/ea.svg);
}
.flag-icon-ea.flag-icon-squared {
  background-image: url(../flags/1x1/ea.svg);
}

.flag-icon-es-ct {
  background-image: url(../flags/4x3/es-ct.svg);
}
.flag-icon-es-ct.flag-icon-squared {
  background-image: url(../flags/1x1/es-ct.svg);
}

.flag-icon-es-ga {
  background-image: url(../flags/4x3/es-ga.svg);
}
.flag-icon-es-ga.flag-icon-squared {
  background-image: url(../flags/1x1/es-ga.svg);
}

.flag-icon-eu {
  background-image: url(../flags/4x3/eu.svg);
}
.flag-icon-eu.flag-icon-squared {
  background-image: url(../flags/1x1/eu.svg);
}

.flag-icon-gb-eng {
  background-image: url(../flags/4x3/gb-eng.svg);
}
.flag-icon-gb-eng.flag-icon-squared {
  background-image: url(../flags/1x1/gb-eng.svg);
}

.flag-icon-gb-nir {
  background-image: url(../flags/4x3/gb-nir.svg);
}
.flag-icon-gb-nir.flag-icon-squared {
  background-image: url(../flags/1x1/gb-nir.svg);
}

.flag-icon-gb-sct {
  background-image: url(../flags/4x3/gb-sct.svg);
}
.flag-icon-gb-sct.flag-icon-squared {
  background-image: url(../flags/1x1/gb-sct.svg);
}

.flag-icon-gb-wls {
  background-image: url(../flags/4x3/gb-wls.svg);
}
.flag-icon-gb-wls.flag-icon-squared {
  background-image: url(../flags/1x1/gb-wls.svg);
}

.flag-icon-ic {
  background-image: url(../flags/4x3/ic.svg);
}
.flag-icon-ic.flag-icon-squared {
  background-image: url(../flags/1x1/ic.svg);
}

.flag-icon-ta {
  background-image: url(../flags/4x3/ta.svg);
}
.flag-icon-ta.flag-icon-squared {
  background-image: url(../flags/1x1/ta.svg);
}

.flag-icon-un {
  background-image: url(../flags/4x3/un.svg);
}
.flag-icon-un.flag-icon-squared {
  background-image: url(../flags/1x1/un.svg);
}

.flag-icon-xk {
  background-image: url(../flags/4x3/xk.svg);
}
.flag-icon-xk.flag-icon-squared {
  background-image: url(../flags/1x1/xk.svg);
}

.flag-icon-xx {
  background-image: url(../flags/4x3/xx.svg);
}
.flag-icon-xx.flag-icon-squared {
  background-image: url(../flags/1x1/xx.svg);
}

/* gutenberg-block-helper/src/blocks/tabs/style.scss */
.jsneo-tab-group .jsneo-tab {
  display: none;
}
.jsneo-tab-group .jsneo-tab.active {
  display: block;
}
.jsneo-tab-group .jsneo-tab-nav {
  display: flex;
  gap: 10px;
  list-style: none;
  padding: 0;
  flex-wrap: nowrap;
  margin-bottom: 10px;
}
.jsneo-tab-group .jsneo-tab-nav li {
  padding: 8px 12px;
  background: #f0f0f0;
  border-radius: 6px;
  cursor: pointer;
  font-weight: bold;
}
.jsneo-tab-group .jsneo-tab-nav li.active {
  background: #007cba;
  color: white;
}

@media (max-width: 768px) {
  .jsneo-tab-group .jsneo-tab-nav {
    flex-wrap: wrap;
    width: 100%;
  }
}
.jsneo-accordion-inner-wrap {
  margin: 14px;
}

.jsneo-accordion-item {
  border: 1px solid #BBBBBB;
  border-radius: 0;
  margin-bottom: 4px;
  overflow: hidden;
  background: #fff;
}
.jsneo-accordion-item.open {
  border-left: none;
  border-right: none;
  background-color: #f0f0f0;
}
.jsneo-accordion-item .jsneo-accordion-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background: #fff;
  cursor: pointer;
  font-weight: normal;
  border: none;
  transition: background 0.3s ease-in-out;
}
.jsneo-accordion-item .jsneo-accordion-toggle .accordion-indicator {
  font-size: 18px;
}
.jsneo-accordion-item .jsneo-accordion-toggle .components-button {
  margin-left: 8px;
}
.jsneo-accordion-item.open .jsneo-accordion-toggle {
  background: #f0f0f0;
  font-weight: bold;
}
.jsneo-accordion-item .jsneo-accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
  will-change: max-height;
}

/*
 * File: src/blocks/cpt-list/style.scss
 */
.jsneo-cpt-list {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}
.jsneo-cpt-list li {
  margin-bottom: 20px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
}
.jsneo-cpt-list li img {
  margin-right: 15px;
}
.jsneo-cpt-list li h4 {
  margin: 0 0 5px;
  font-size: 1.2em !important;
  font-weight: 600;
}
.jsneo-cpt-list li div {
  font-size: 0.9em;
  color: #666;
}

/*전체타입공동요소*/
.fab:hover {
  color: var(--wp-admin-theme-color);
}

.cpt-search-bar {
  display: flex;
  justify-content: flex-end;
  gap: 6px;
}

#cpt-search-input {
  border: none;
  border-bottom: 1px solid #c0c0c0 !important;
  border-radius: 0px;
}

.cpt-back-buttons {
  position: absolute;
  right: 0px;
  top: 0px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  top: 0px;
  text-align: right;
  padding: 5px 14px;
  margin-bottom: 0;
  margin-right: 0px;
  z-index: 2;
  flex-direction: column;
}

.cpt-back-buttons button {
  color: black;
  cursor: pointer;
}

.cpt-back-buttons:hover {
  color: var(--wp-admin-theme-color);
}

.peopleimg {
  flex: 0 0 180px;
}

/* 기본은 숨김 */
.cpt-tab-filter-wrapper .scroll-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  align-items: center;
  justify-content: center;
  display: none; /* 기본 숨김, has-overflow일 때만 노출 */
}

/* 리스트가 넘칠 때만 화살표 노출 */
.cpt-tab-filter-wrapper.has-overflow .scroll-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
}

.cpt-tab-filter-wrapper .scroll-arrow.left {
  left: 0;
}

.cpt-tab-filter-wrapper .scroll-arrow.right {
  right: 0;
}

/* 스크롤 양끝에서 해당 방향 화살표 숨김 */
.cpt-tab-filter-wrapper.hide-left .scroll-arrow.left {
  display: none;
}

.cpt-tab-filter-wrapper.hide-right .scroll-arrow.right {
  display: none;
}

/* (선택) 트랙 가독성용 마스크 그라데이션 */
.cpt-tab-filter-wrapper {
  position: relative;
}

.cpt-tab-filter-wrapper.has-overflow::before,
.cpt-tab-filter-wrapper.has-overflow::after {
  content: "";
  position: absolute;
  top: 0;
  width: 24px;
  height: 100%;
  pointer-events: none;
}

/*type1*/
.cpt-tab-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  list-style: none;
  padding: 0;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  width: 100%;
  background-color: white;
}

.cpt-tab-filter-wrapper {
  display: flex;
  align-items: center;
  border-bottom: none;
  border-top: none;
  position: sticky;
  top: 0px;
  z-index: 1;
}

.people-list {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(392px, 1fr));
  gap: 3rem;
}
@media (max-width: 480px) {
  .people-list {
    grid-template-columns: 1fr !important;
  }
}

.people-list-item {
  display: flex;
  max-width: 600px;
  min-width: 360px;
  width: 100%;
  padding: 0 1rem 0 1rem;
  border-bottom: 1px solid #ddd;
  align-items: flex-end;
  height: 180px;
  position: relative;
  flex: 1 0 50%;
}

.people-list-item > a {
  position: absolute;
  inset: 0;
}

.people-list-item:hover .people-info-wrapper * {
  transition: all 0.3s;
}

.people-list-item:hover h4, .people-list-item:hover p, .people-list-item:hover .people-info-wrapper p span {
  color: lightgray;
  transition: all 0.3s;
}

.people-list-item:hover .people-thumb {
  opacity: 0.65;
  transition: all 0.3s;
}

.people-list-item .people-info-wrapper span {
  font-weight: 300;
  color: gray;
}

.people-list-item .people-info-wrapper h4 {
  line-height: 1.3;
  padding: 10px 0;
  margin: 6px 0px;
  font-weight: 600;
  font-size: 1.25rem;
  transition: all 0.3s;
}

.people-thumb {
  max-width: 140px;
  width: 100%;
  aspect-ratio: 16/20;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  flex-shrink: 0;
  background-position: 50% 10%;
  transition: all 0.3s;
}

.people-info-wrapper {
  padding: 0 0 0 10px;
}

.type1 .people-info-wrapper p {
  line-height: 1.3;
  padding: 0;
  margin: 6px 0px;
  display: flex;
  gap: 6px;
}

.type1 .people-info-wrapper p.nationality {
  flex-direction: row;
  align-items: center;
}

.type1 .people-info-wrapper p.position {
  line-height: 1.3;
  padding: 0;
  margin: 6px 0px;
  display: flex;
  gap: 6px;
  flex-direction: column;
}

.people-info-wrapper p span:first-child {
  text-transform: uppercase;
  white-space: nowrap;
  color: #c0c0c0;
  font-size: 0.94rem;
  padding-top: 0.06rem;
}

.people-info-wrapper p span:nth-child(2) {
  color: black;
  font-weight: 300;
}

.people-info-wrapper > p:nth-child(3) {
  min-height: 40px;
}

.flag-title {
  text-transform: uppercase;
  font-size: 0.7rem;
  font-weight: 300;
  color: #c0c0c0 !important;
}

.cpt-tab-filter li {
  display: flex;
  padding: 0.4rem 1rem;
  cursor: pointer;
  font-size: 0.95rem;
  border: 1px solid transparent;
  transition: all 0.2s ease-in-out;
  color: #555;
  margin-bottom: 0;
}

/* All 버튼 스타일 */
.cpt-tab-filter li.cpt-all-button {
  background-color: #f8f9fa;
  border: 1px solid #dee2e6;
  color: #6c757d;
  font-weight: 500;
  margin-left: auto; /* 맨 오른쪽에 배치 */
}

.cpt-tab-filter li.cpt-all-button:hover {
  background-color: #e9ecef;
  border-color: #adb5bd;
  color: #495057;
}

.cpt-tab-filter li.cpt-all-button.active {
  background-color: #007bff;
  border-color: #007bff;
  color: #fff;
  font-weight: 600;
}

/* 🔥 현재 선택된 탭 */
.cpt-tab-filter li.active {
  background-color: #000;
  color: #fff;
  font-weight: 600;
  border-color: rgba(0, 0, 0, 0);
}

/* 페이지네이션 */
.cpt-pagination {
  margin-top: 2rem;
  text-align: center;
}

.cpt-pagination ul {
  display: inline-flex;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 0.5rem;
}

.cpt-pagination li a {
  display: block;
  padding: 0.4rem 0.8rem;
  border: 1px solid #000;
  text-decoration: none;
  transition: background-color 0.2s ease-in-out;
}

.cpt-pagination li a:hover {
  background-color: #f0f0f0;
}

/* 🔥 현재 페이지 강조 */
.cpt-pagination li a.active {
  background-color: #000;
  color: #fff;
  border-color: #000;
  font-weight: 600;
}

.type1.cpt-detail-view {
  position: relative;
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.15);
}

.detail-wrapper {
  width: 100%;
  display: flex;
  gap: 2vw;
  position: relative;
}

.detail-wrapper > div {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.cpt-detail-content {
  display: flex;
  min-height: 420px;
}

.term-wrapper {
  padding: 2rem;
  gap: 0 !important;
}

.term-wrapper h1, .term-wrapper h6 {
  color: rgb(210, 210, 210);
}

.term-wrapper h1 {
  font-size: 4rem;
  line-height: 1.02;
}

.term-wrapper h6 {
  font-size: 0.9rem;
  padding-left: 4px;
}

.detail-info {
  padding: 2rem 0rem;
  justify-content: center;
}
@media (max-width: 480px) {
  .detail-info {
    padding: 2rem 2rem;
  }
}

.detail-info > h5 {
  font-size: 1.4rem;
  font-weight: 600;
  padding-bottom: 3rem;
}

.detail-info .meta-group {
  margin-bottom: 2rem;
}

.type1 .detail-info p.nationality {
  display: flex;
  align-items: center;
  gap: 6px;
}

.type1 .detail-info p .label {
  text-transform: uppercase;
}

.type1 .detail-info p .label, .detail-info p .divider {
  color: #c0c0c0;
}

.detail-info .meta-group-title {
  font-size: 0.8em;
  font-weight: bold;
  margin-bottom: 1rem;
  border-bottom: 1px solid #c0c0c0;
  padding-bottom: 0.3rem;
  color: #c0c0c0;
}

.detail-info .social-icons {
  display: flex;
  gap: 12px;
}
@media (max-width: 480px) {
  .detail-info .social-icons {
    gap: 24px;
  }
}

.detail-info .social-icons {
  display: flex;
  gap: 12px;
}
@media (max-width: 480px) {
  .detail-info .social-icons {
    gap: 24px;
  }
}

.detail-info .social-icons .fab {
  font-size: 1.4rem;
}

.detail-thumbnail-wrapper {
  height: 100%;
  border-left: 1px solid;
  border-right: 1px solid;
  display: flex;
  align-items: center;
  justify-content: center;
}

.detail-thumb {
  width: 180px;
  max-width: 260px;
  aspect-ratio: 3/4; /* 또는 height: 300px; */
  background-size: cover;
  background-position: center;
  margin-bottom: 1rem;
  flex-shrink: 0;
}

.faculty-list .wp-block-cover {
  aspect-ratio: 3/4 !important;
  flex-shrink: 0;
}

.cpt-tab-filter-wrapper .scroll-arrow {
  display: none;
  align-items: center;
}

@media (max-width: 768px) {
  .cpt-tab-filter {
    border-bottom: none;
    border-top: none;
  }
  .cpt-tab-filter-wrapper {
    border-bottom: 1px solid #ddd;
    border-top: 1px solid #ddd;
    top: 65px;
    background-color: white;
    transition: top 0.3s ease;
  }
  .people-info-wrapper p.position {
    flex-direction: column;
    gap: 0px;
  }
  .people-info-wrapper p.position .divider {
    display: none;
  }
  .cpt-tab-filter {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    gap: 0.5rem;
    padding: 0.5rem 0;
    margin: 0;
    overflow-x: hidden !important;
    -ms-overflow-style: none;
    touch-action: none;
  }
  .cpt-tab-filter::-webkit-scrollbar {
    display: none;
  }
  .cpt-tab-filter li {
    flex: 0 0 calc(33.3% - 0.3333333333rem);
    max-width: 33.3333%;
    scroll-snap-align: start;
    text-align: center;
    user-select: none;
    cursor: pointer;
    align-items: center;
    justify-content: center;
  }
  .people-list-item {
    max-width: 100%;
  }
  .people-thumb {
    max-width: 110px;
  }
  .detail-wrapper {
    flex-direction: column;
  }
  .detail-wrapper .detail-info > h2 {
    font-size: 1.8rem;
  }
}
.type2 .people-thumb {
  background-position: center center;
}

.type2 .share-buttons {
  position: absolute;
  top: 6px;
}

.type2 .share-buttons .share-icons {
  display: flex;
  gap: 6px;
}
@media (max-width: 480px) {
  .type2 .share-buttons .share-icons {
    gap: 24px;
  }
}

.type2 .fab {
  font-weight: 400;
  font-size: 1.4rem;
  color: black;
}
@media (max-width: 480px) {
  .type2 .fab {
    font-size: 1.2rem;
  }
}

.cpt-detail-view.type2 {
  position: relative;
  border-top: 1px solid;
  border-bottom: 1px solid;
  box-shadow: none;
  padding: 52px 0px;
}

.detail-wrapper.type2 {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.type2 .detail-wrapper .detail-header {
  display: flex;
  flex-direction: row;
  gap: 2vw;
  align-items: flex-end;
  border-bottom: 1px solid;
  border-top: 1px solid lightgray;
  justify-content: space-between;
  margin-bottom: 3rem;
}

.type2 .detail-wrapper .detail-header .post-title {
  font-size: 2rem;
  margin-bottom: 14px;
}

.type2 .detail-wrapper .detail-header .post-term-name {
  font-size: 1.2rem;
  color: #c0c0c0;
}

.type2 .detail-wrapper .post-thumbnail {
  height: 100%;
  width: 100%;
  overflow: hidden;
  max-height: 320px;
  max-width: 48.1%;
}

.type2 .detail-wrapper .post-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.type2 .detail-wrapper .detail-fields {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.type2 .detail-wrapper .detail-fields .post-content {
  column-count: 2;
  column-gap: 40px;
}

.type2 .people-info-wrapper {
  width: 100%;
}

.type2 .people-info-wrapper .people-info-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1rem;
}

.type2 .people-info-wrapper .people-info-header .post-date {
  color: #c0c0c0;
  font-size: 0.8rem;
}

.type2 .people-info-wrapper .term-name {
  color: #c0c0c0;
  font-weight: 500;
}

.type2 .people-list-item .people-info-wrapper h4 {
  margin: 0 !important;
}

.type2 .people-list {
  padding: unset !important;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 3rem;
}
@media (max-width: 480px) {
  .type2 .people-list {
    grid-template-columns: 1fr;
  }
}

.type2 .people-list-item {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 100%;
  max-width: 600px;
  height: 300px;
  padding: 0;
  border-bottom: 0;
  text-align: left;
  align-items: flex-start;
}

.type2 .people-list-item .people-info-wrapper {
  padding: 0;
}

.type2 .people-list-item h4 {
  font-size: 1rem;
  font-weight: 500;
}

.type2 .people-list-item .people-thumb {
  position: relative;
  max-width: 100%;
  height: 70%;
}

.type2 .people-thumb {
  width: 100%;
  min-width: 170px;
  background-size: 120%;
  height: 80%;
}

@media (max-width: 768px) {
  .type2 .people-list-item {
    max-width: 100%;
  }
  .type2 .detail-wrapper .detail-header {
    flex-direction: column;
  }
  .type2 .detail-wrapper .detail-header .img-cover-wrap {
    max-width: 60%;
  }
  .type2 .detail-wrapper .detail-fields .post-content {
    column-count: 1;
  }
}
.type3 .cpt-detail-content {
  padding: 3rem;
}

.type3 .people-list {
  padding: unset !important;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.type3 .people-list-item {
  width: 100%;
  max-width: 100%;
  padding: unset !important;
  display: flex;
  padding: 16px 0px !important;
}

.type3 .people-list-item .people-info-wrapper {
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: space-between;
  padding: unset;
}

.type3 .people-list-item .people-info-wrapper h4 {
  max-width: 80%;
  text-align: right;
}

@media (max-width: 768px) {
  .type3 .people-list-item {
    max-width: 100%;
  }
  .type3 .cpt-detail-content {
    padding: 2rem;
  }
  .type3 .people-list-item .people-info-wrapper {
    align-items: flex-start;
    flex-direction: column;
  }
}
.type4 .cpt-sidebar {
  max-width: 300px;
  padding-left: 3rem;
  margin-top: 3rem;
}

.type4 .sns-menu {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0;
  margin-top: 2rem;
  list-style: none;
  justify-content: center;
}

.type4 .sns-menu li {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.type4 .sns-menu a {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: #222;
  font-size: 14px;
  transition: color 0.2s;
}

.type4 .sns-menu a:hover {
  color: #0073aa;
}

.type4 .sns-menu-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 6px;
  width: 32px;
  height: 32px;
}

.type4 .sns-menu-icon svg {
  width: auto;
  height: auto;
  display: block;
}

.type4 .sns-menu-icon svg path {
  fill: #222 !important;
}

.type4 .cpt-sidebar-contants {
  position: sticky;
  top: 160px;
}

.type4 .cpt-sidebar-contants h5 {
  text-align: center;
  width: 100%;
}

.cpt-list-container.type4 {
  display: flex;
}

.cpt-list-container.type4 .type4.cpt-list-block {
  flex: 1 1 auto;
  min-width: 0;
}

.type4 .cpt-detail-content {
  padding: 3rem 0;
}

.type4.cpt-detail-view .share-buttons {
  position: absolute;
  top: 6px;
}

.type4 .cpt-detail-view .share-buttons .share-icons {
  display: flex;
  gap: 6px;
}

.type4.cpt-detail-view .fa-brands, .fab {
  font-weight: 400;
  font-size: 1.3rem;
  color: black;
}

.type4 .people-thumb {
  background-position: center center;
}

.type4 .people-list .share-buttons {
  position: absolute;
  bottom: 0px;
  right: 6px;
  margin-buttom: 0px;
  height: 22px;
}

.type4 .share-buttons .share-icons {
  display: flex;
  gap: 6px;
}

.type4 .fab {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1;
  color: #c0c0c0;
}

.type4 .cpt-detail-view .fab {
  color: black;
}

.type4 .cpt-detail-view {
  position: relative;
  border-top: 1px solid;
  border-bottom: 1px solid;
  box-shadow: none;
  padding: 52px 0px;
}

.type4 .post-term-name {
  font-size: 1.2rem;
  color: #c0c0c0;
}

.type4 h5.post-title {
  padding-bottom: 2rem;
  border-bottom: 1px solid #c0c0c0;
  margin-bottom: 2rem;
  font-size: 1.4rem;
}

.type4 .post-thumbnail {
  height: 70%;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
  margin-bottom: 3rem;
}

.type4 .post-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.type4 .detail-wrapper > div {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.type4 .people-info-wrapper {
  width: 100%;
}

.type4 .people-info-wrapper .people-info-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1rem;
}

.type4 .people-info-wrapper .people-info-header .post-date {
  color: #c0c0c0;
  font-size: 0.8rem;
}

.type4 .people-info-wrapper .term-name {
  color: #c0c0c0;
  font-weight: 500;
}

.type4 .people-list-item .people-info-wrapper h4 {
  margin: 0 !important;
}

.type4 .people-list {
  position: relative;
  padding: unset !important;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 3rem;
}
@media (max-width: 480px) {
  .type4 .people-list {
    grid-template-columns: 1fr;
  }
}

.type4 .people-list-item {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 100%;
  max-width: 600px;
  max-height: 450px;
  height: auto;
  padding: 0;
  border-bottom: 0;
  text-align: left;
  align-items: flex-start;
}

.type4 .people-list-item .people-info-wrapper {
  padding: 0;
}

.type4 .people-list-item h4 {
  font-size: 1rem;
  font-weight: 500;
}

.type4 .people-list-item .people-thumb {
  position: relative;
  max-width: 100%;
  height: 50%;
}

.type4 .people-thumb {
  width: 100%;
  min-width: 170px;
  background-size: 120%;
  height: 80%;
}

.type4 .people-list-item:hover .people-thumb {
  background-size: 130%;
}

@media (max-width: 768px) {
  .type4 .people-list-item {
    max-width: 100%;
  }
  .type4 .cpt-detail-content {
    padding: 0rem;
  }
  .type4 .cpt-sidebar {
    display: none;
  }
  .type4 .cpt-detail-view .share-buttons .share-icons {
    gap: 24px;
  }
}
.type5 .people-list {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(390px, 1fr));
  gap: 3rem;
}
@media (max-width: 480px) {
  .type5 .people-list {
    grid-template-columns: 1fr !important;
  }
}

.type5 .people-list-item {
  display: flex;
  max-width: 520px;
  min-width: 360px;
  width: 100%;
  padding: 0 1rem 0 1rem;
  border-bottom: 1px solid #ddd;
  align-items: flex-end;
  height: 180px;
  position: relative;
  flex: 1 0 50%;
}

.type5 .people-list-item > a {
  position: absolute;
  inset: 0;
}

.type5 .people-list-item:hover .people-info-wrapper * {
  transition: all 0.3s;
}

.type5 .people-list-item .people-info-wrapper span {
  font-weight: 300;
  color: gray;
}

.type5 .people-list-item .people-info-wrapper h4 {
  line-height: 1.3;
  padding: 10px 0;
  margin: 6px 0px;
  font-weight: 600;
  font-size: 1.25rem;
  transition: all 0.3s;
}

.type5 .people-thumb {
  max-width: 140px;
  width: 100%;
  aspect-ratio: 16/20;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  flex-shrink: 0;
  background-position: 50% 10%;
  transition: all 0.3s;
}

.type5 .people-info-wrapper {
  padding: 0 0 0 10px;
}

.type5 .people-info-wrapper p {
  line-height: 1.3;
  padding: 0;
  margin: 6px 0px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.type5 .people-info-wrapper p span:first-child {
  text-transform: uppercase;
  white-space: nowrap;
  color: #c0c0c0;
  font-size: 0.94rem;
  padding-top: 0.06rem;
}

.type5 .people-info-wrapper p span:nth-child(2) {
  color: black;
  font-weight: 300;
}

.type5 .people-info-wrapper > p:nth-child(3) {
  min-height: 40px;
}

.type5 .flag-title {
  text-transform: uppercase;
  font-size: 0.7rem;
  font-weight: 300;
  color: #c0c0c0 !important;
}

.type5 .cpt-detail-view {
  position: relative;
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.15);
}

.type5 .detail-wrapper {
  width: 100%;
  display: flex;
  gap: 2vw;
  position: relative;
}

.type5 .detail-wrapper > div {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.type5 .cpt-detail-content {
  display: flex;
  min-height: 420px;
  padding: 3rem;
}

.type5 .cpt-detail-content .post-thumbnail img {
  width: 300px;
}

.type5 .term-wrapper {
  padding: 2rem;
  gap: 0 !important;
}

.type5 .term-wrapper h1, .term-wrapper h6 {
  color: rgb(210, 210, 210);
}

.type5 .term-wrapper h1 {
  font-size: 4rem;
  line-height: 1.02;
}

.type5 .term-wrapper h6 {
  font-size: 0.9rem;
  padding-left: 4px;
}

.type5 .detail-info {
  padding: 2rem 0rem;
  justify-content: center;
}
@media (max-width: 480px) {
  .type5 .detail-info {
    padding: 2rem 2rem;
  }
}

.type5 .detail-info > h5 {
  font-size: 1.4rem;
  font-weight: 600;
  padding-bottom: 3rem;
}

.type5 .detail-info .meta-group {
  margin-bottom: 2rem;
}

.type5 .detail-info p.nationality {
  display: flex;
  align-items: center;
  gap: 6px;
}

.type5 .detail-info p.position .label {
  text-transform: uppercase;
}

.type5 .detail-info p.position .label, .detail-info p.position .divider {
  color: #c0c0c0;
}

.type5 .detail-info .meta-group-title {
  font-size: 0.8em;
  font-weight: bold;
  margin-bottom: 1rem;
  border-bottom: 1px solid #c0c0c0;
  padding-bottom: 0.3rem;
  color: #c0c0c0;
}

.type5 .detail-info .social-icons {
  display: flex;
  gap: 12px;
}
@media (max-width: 480px) {
  .type5 .detail-info .social-icons {
    gap: 24px;
  }
}

.type5 .detail-info .social-icons {
  display: flex;
  gap: 12px;
}
@media (max-width: 480px) {
  .type5 .detail-info .social-icons {
    gap: 24px;
  }
}

.type5 .detail-info .social-icons .fab {
  font-size: 1.4rem;
}

.type5 .detail-thumbnail-wrapper {
  height: 100%;
  border-left: 1px solid;
  border-right: 1px solid;
  display: flex;
  align-items: center;
  justify-content: center;
}

.type5 .detail-thumb {
  width: 180px;
  max-width: 260px;
  aspect-ratio: 3/4; /* 또는 height: 300px; */
  background-size: cover;
  background-position: center;
  margin-bottom: 1rem;
  flex-shrink: 0;
}

@media (max-width: 768px) {
  .type5 .cpt-tab-filter {
    border-bottom: none;
    border-top: none;
  }
  .type5 .cpt-tab-filter-wrapper {
    border-bottom: 1px solid #ddd;
    border-top: 1px solid #ddd;
    top: 65px;
    background-color: white;
    transition: top 0.3s ease;
  }
  .type5 .people-info-wrapper p.position {
    flex-direction: column;
    gap: 0px;
  }
  .type5 .people-info-wrapper p.position .divider {
    display: none;
  }
  .type5 .cpt-tab-filter-wrapper .scroll-arrow {
    display: flex;
  }
  .type5 .cpt-tab-filter {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    gap: 0.5rem;
    padding: 0.5rem 0;
    margin: 0;
    overflow-x: hidden !important;
    -ms-overflow-style: none;
    touch-action: none;
  }
  .type5 .cpt-tab-filter::-webkit-scrollbar {
    display: none;
  }
  .type5 .cpt-tab-filter li {
    flex: 0 0 calc(33.3% - 0.3333333333rem);
    max-width: 33.3333%;
    scroll-snap-align: start;
    text-align: center;
    user-select: none;
    cursor: pointer;
  }
  .type5 .people-list-item {
    max-width: 100%;
  }
  .type5 .people-thumb {
    max-width: 110px;
  }
  .type5 .detail-wrapper {
    flex-direction: column;
  }
  .type5 .detail-wrapper .detail-info > h2 {
    font-size: 1.8rem;
  }
}
.type6 .people-list {
  display: grid;
  gap: 1.4rem;
  flex-wrap: wrap;
  justify-content: space-between;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.type6 .people-list-item {
  border: 1px solid #222;
  background: #fff;
  min-width: 180px;
  max-width: 400px;
  display: flex;
  flex-direction: column;
  margin-bottom: 2rem;
  box-sizing: border-box;
  height: auto;
  padding: 0;
}

.type6 .people-thumb {
  border-bottom: 1px solid #222;
  max-width: 100%;
  width: 100%;
  aspect-ratio: 1/1;
  background-size: cover;
  background-position: center;
}

.type6 .people-info-wrapper {
  padding: 1.5rem 1rem 1rem 1rem;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
}

.type6 .people-title {
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
}

.type6 .people-country {
  color: #bbb;
  font-size: 0.95rem;
  margin-bottom: 0.7rem;
  text-transform: uppercase;
}

.type6 .people-desc {
  font-size: 1rem;
  margin-bottom: 1.2rem;
}

.type6 .profile-btn {
  align-self: flex-end;
  background: #000;
  color: #fff;
  padding: 0.5rem 1.2rem;
  font-size: 1rem;
  border: none;
  cursor: pointer;
  margin-top: auto;
}

.type6.cpt-detail-view {
  position: relative;
  box-shadow: none !important;
  border-radius: 0px;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  overflow: hidden;
  background: white;
}

.type6 .detail-wrapper {
  width: 100%;
  display: flex;
  gap: 2vw;
  position: relative;
}

.type6 .detail-wrapper > div {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.type6 .cpt-detail-content {
  display: flex;
  min-height: 420px;
  padding: 3rem 0;
}

.type6 .cpt-detail-content .post-thumbnail img {
  width: 300px;
  border-radius: 12px;
}

.type6 .detail-info {
  padding: 2rem 0rem;
  justify-content: center;
}
@media (max-width: 480px) {
  .type6 .detail-info {
    padding: 2rem 0rem;
  }
}

.type6 .detail-info > h5 {
  font-size: 2rem;
  font-weight: 600;
  padding-bottom: 3rem;
}

.type6 .detail-info .meta-group {
  margin-bottom: 2rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #c0c0c0;
}

.type6 .detail-info p .label {
  text-transform: uppercase;
}

.type6 .detail-info p .label, .type6 .detail-info p .divider {
  color: #c0c0c0;
}

.type6 .detail-info .meta-group-title {
  font-size: 0.8em;
  font-weight: bold;
  margin-bottom: 1rem;
  border-bottom: 1px solid #c0c0c0;
  padding-bottom: 0.3rem;
  color: #c0c0c0;
}

.type6 .detail-info .social-icons {
  display: flex;
  gap: 12px;
}
@media (max-width: 480px) {
  .type6 .detail-info .social-icons {
    gap: 24px;
  }
}

.type6 .detail-info .social-icons .fab {
  font-size: 1.4rem;
}

.type6 .detail-thumbnail-wrapper {
  height: 100%;
  border-left: 1px solid;
  border-right: 1px solid;
  display: flex;
  align-items: center;
  justify-content: center;
}

.type6 .detail-thumb {
  width: 180px;
  max-width: 260px;
  aspect-ratio: 3/4;
  background-size: cover;
  background-position: center;
  margin-bottom: 1rem;
  flex-shrink: 0;
  border-radius: 12px;
}

@media (max-width: 768px) {
  .type6 .detail-wrapper {
    flex-direction: column;
  }
  .type6 .detail-wrapper .detail-info > h2 {
    font-size: 1.8rem;
  }
  .type6 .cpt-detail-content {
    padding: 2rem 0rem;
  }
}
/* 통계 정보 스타일 */
.cpt-statistics-info {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #000;
  text-align: center;
}

.cpt-statistics-info .statistics-content {
  display: flex;
  justify-content: center;
  gap: 2rem;
  font-size: 0.9rem;
  font-weight: 500;
  color: #495057;
}

.cpt-statistics-info .graduates-count,
.cpt-statistics-info .countries-count {
  padding: 0.25rem 0.75rem;
  background-color: #fff;
  border-radius: 0.25rem;
  min-width: 120px;
}

.thumbnail-selector-block {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.thumbnail-selector-block img {
  border: 2px solid transparent;
  transition: border 0.3s;
  cursor: pointer;
}

.thumbnail-selector-block img:hover,
.thumbnail-selector-block img.active {
  border: 2px solid #007cba;
}

.thumbnail-display-block img {
  display: block;
  margin-bottom: 10px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  max-width: 100%;
  height: auto;
}

.thumbnail-display-block p {
  font-weight: bold;
  margin: 0;
  margin-top: 8px;
  font-size: 14px;
  text-align: center;
}

.thumbnail-display-block[data-initial-display] img {
  opacity: 0;
  animation: fadeIn 0.5s ease-in-out forwards;
}

@keyframes fadeIn {
  to {
    opacity: 1;
  }
}
/* Font Awesome 아이콘 블록 스타일 */
.icon-block {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.icon-block i {
  transition: all 0.3s ease;
}
.icon-block i:hover {
  transform: scale(1.1);
}
.icon-block a {
  text-decoration: none;
  color: inherit;
}
.icon-block a:hover {
  text-decoration: none;
}
.icon-block.icon-block-left {
  text-align: left;
}
.icon-block.icon-block-center {
  text-align: center;
  display: block;
}
.icon-block.icon-block-right {
  text-align: right;
}
@media (max-width: 768px) {
  .icon-block i {
    font-size: 0.9em !important;
  }
}
@media (max-width: 480px) {
  .icon-block i {
    font-size: 0.8em !important;
  }
}

.wp-block-gutenberg-block-helper-icon-block .icon-block {
  border: 1px dashed #ccc;
  padding: 10px;
  border-radius: 4px;
  background: #f9f9f9;
}
.wp-block-gutenberg-block-helper-icon-block .icon-block:hover {
  border-color: #007cba;
  background: #f0f8ff;
}

.icon-block.animate-on-hover i {
  transition: transform 0.3s ease, color 0.3s ease;
}
.icon-block.animate-on-hover i:hover {
  transform: scale(1.2) rotate(5deg);
}
.icon-block.pulse i {
  animation: pulse 2s infinite;
}
.icon-block.bounce i {
  animation: bounce 2s infinite;
}

@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-10px);
  }
  60% {
    transform: translateY(-5px);
  }
}
.jsneo-reveal {
  opacity: 0;
  transition: opacity var(--jsneo-animate-duration, 600ms) ease, transform var(--jsneo-animate-duration, 600ms) ease;
  transition-delay: var(--jsneo-animate-delay, 0ms);
}

.jsneo-reveal.jsneo-animate-in {
  opacity: 1;
  transform: none;
}

.jsneo-reveal {
  opacity: 0;
  transition: opacity var(--jsneo-animate-duration, 600ms) ease-out, transform var(--jsneo-animate-duration, 600ms) ease-out;
  transition-delay: var(--jsneo-animate-delay, 0ms);
}

/* 각각의 애니메이션 초기 상태 정의 */
.jsneo-reveal.fade-up {
  transform: translateY(20px);
}

.jsneo-reveal.fade-left {
  transform: translateX(-20px);
}

.jsneo-reveal.fade-right {
  transform: translateX(20px);
}

.jsneo-reveal.zoom-in {
  transform: scale(0.8);
}

/* 애니메이션 발동 후 상태 */
.jsneo-reveal.jsneo-animate-in {
  opacity: 1;
  transform: none;
}

.orgchart-container {
  padding: 20px;
}

.orgchart-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.orgchart-root-block {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.orgchart-level {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 20px;
}

.orgchart-node {
  background: #fff;
  border: 1px solid #ccc;
  padding: 10px 14px;
  border-radius: 6px;
  text-align: center;
  min-width: 100px;
}

.orgchart-label {
  font-weight: bold;
}

.jsneo-marquee {
  overflow: hidden;
  width: 100%;
  display: flex;
  align-items: center;
  padding: 18px 0;
}

.jsneo-marquee__track {
  display: flex;
  align-items: center;
  will-change: transform;
  animation: none;
}

.jsneo-marquee__track img {
  flex: 0 0 auto;
  width: 160px;
  margin-right: 32px;
  height: auto;
  object-fit: contain;
}

@keyframes marquee-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
/*
.block-editor-page .block-editor-block-list__layout .block-editor-block-list__block[data-type="core/columns"] {
    border: 1px solid rgba(240, 240, 240, 1) ;
    background-color: rgba(245, 245, 245, 1) ; 
    padding: 20px ;
}

.block-editor-page .block-editor-block-list__layout .block-editor-block-list__block[data-type="core/columns"] > .block-core-columns{
    border: 1px solid rgba(240, 240, 240, 1) ;
    background-color: rgba(255, 255, 255, 1) ; 
}

*/
/* ========== 공통 스크롤바 스타일 ========== */
.jsneo-overflow {
  scrollbar-width: thin; /* Firefox 얇게 */
  scrollbar-color: #888 #f0f0f0; /* Firefox thumb, track */
}

/* WebKit 기반 브라우저 (Chrome, Safari, Edge) */
.jsneo-overflow::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

.jsneo-overflow::-webkit-scrollbar-track {
  background: #f0f0f0; /* 트랙 배경 */
  border-radius: 10px;
  box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.05); /* 은은한 안쪽 그림자 */
}

.jsneo-overflow::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #999, #777); /* 부드러운 그라데이션 */
  border-radius: 10px;
  border: 2px solid #f0f0f0; /* 트랙과 thumb 경계 부드럽게 */
  transition: background 0.3s ease;
}

.jsneo-overflow::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #888, #555); /* hover 시 진해짐 */
}

/* ========== 반응형 오버플로우 설정 ========== */
/* 모바일 전용 */
@media (max-width: 768px) {
  .jsneo-overflow--mobile[data-overflow=auto] {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  .jsneo-overflow--mobile[data-overflow=scroll] {
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .jsneo-overflow--mobile[data-overflow=hidden] {
    overflow: hidden;
  }
  .jsneo-overflow--mobile[data-overflow=visible] {
    overflow: visible;
  }
}
/* PC 전용 */
@media (min-width: 769px) {
  .jsneo-overflow--desktop[data-overflow=auto] {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  .jsneo-overflow--desktop[data-overflow=scroll] {
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .jsneo-overflow--desktop[data-overflow=hidden] {
    overflow: hidden;
  }
  .jsneo-overflow--desktop[data-overflow=visible] {
    overflow: visible;
  }
}
.wp-block-separator,
.wp-block-separator.has-background,
.wp-block-separator.is-style-default,
.wp-block-separator.is-style-wide {
  all: unset;
  display: block;
  height: 1px;
  background-color: currentColor;
  margin: 0;
}

.wp-block-separator.has-background {
  padding: 0;
}

.is-style-wide {
  all: unset;
  width: 100%;
}

.wp-block-image img[src$=".svg"] {
  max-width: 100%;
  max-height: 100%;
}

/*이미지사이즈 리스펀시브*/
/* 태블릿 */
.wp-block-image.jsneo-image-resp img,
.wp-block-image.jsneo-image-resp .inline-svg,
.wp-block-image.jsneo-image-resp .inline-svg svg {
  width: auto;
  height: auto;
}

@media (min-width: 769px) and (max-width: 1024px) {
  .wp-block-image.jsneo-image-resp img, .wp-block-image.jsneo-image-resp .inline-svg, .wp-block-image.jsneo-image-resp .inline-svg svg {
    width: var(--img-w-tablet, auto) !important;
    height: var(--img-h-tablet, auto) !important;
    max-width: none !important;
  }
}
/* 모바일 */
@media (max-width: 768px) {
  .wp-block-image.jsneo-image-resp img, .wp-block-image.jsneo-image-resp .inline-svg, .wp-block-image.jsneo-image-resp .inline-svg svg {
    width: var(--img-w-mobile, auto) !important;
    height: var(--img-h-mobile, auto) !important;
    max-width: none !important;
  }
  /* 옵션: 모바일 풀블리드 */
  .wp-block-image.jsneo-image-resp.jsneo-img-mobile-full {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    max-width: 100vw;
  }
  .wp-block-image.jsneo-image-resp.jsneo-img-mobile-full img {
    width: 100vw;
    height: auto;
  }
}
/* 정렬 */
@media (min-width: 769px) and (max-width: 1024px) {
  .t-align-left {
    text-align: left !important;
  }
  .t-align-center {
    text-align: center !important;
  }
  .t-align-right {
    text-align: right !important;
  }
  .t-align-justify {
    text-align: justify !important;
  }
}
@media (max-width: 768px) {
  .m-align-left {
    text-align: left !important;
  }
  .m-align-center {
    text-align: center !important;
  }
  .m-align-right {
    text-align: right !important;
  }
  .m-align-justify {
    text-align: justify !important;
  }
}
/* 보이기/숨기기 */
@media (min-width: 1025px) {
  .hide-desktop {
    display: none !important;
  }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .hide-tablet {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .hide-mobile {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .has-mobile-font {
    font-size: var(--m-font-size) !important;
  }
}
/*spacer scale*/
.jsneo-spacer-scale {
  transform: scale(1);
  transform-origin: top left;
  display: inline-block;
}

@media (max-width: 1024px) {
  .jsneo-spacer-scale {
    transform: scale(var(--scale-t, 1));
  }
}
@media (max-width: 768px) {
  .jsneo-spacer-scale {
    transform: scale(var(--scale-m, 1));
  }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .wp-block-spacer.jsneo-spacer-height {
    height: var(--h-t, auto) !important;
  }
}
@media (max-width: 768px) {
  .wp-block-spacer.jsneo-spacer-height {
    height: var(--h-m, auto) !important;
  }
}
/*table builder*/
.table-builder {
  font-size: 0.88rem;
  line-height: 1.35;
  min-width: auto;
}

.wp-block-gutenberg-block-helper-table-builder {
  display: block;
  width: auto;
  overflow-x: none;
}

@media (max-width: 768px) {
  .wp-block-gutenberg-block-helper-table-builder {
    display: block;
    width: auto;
    overflow-x: scroll;
  }
  .table-builder {
    min-width: 900px;
  }
}
/*animation counter*/
.wp-block-jsneo-animated-counter {
  flex: 0 0 auto !important;
  width: auto !important;
  display: block;
  font-weight: 100;
  min-width: 2ch; /* 숫자 너무 좁지 않게 */
}

/*table builder*/
.card-table {
  display: none;
}

@media (max-width: 768px) {
  table.table-builder {
    display: none;
  }
  .card-table {
    display: block;
  }
  .card-row {
    margin-bottom: 1rem;
    border-top: 1px solid;
    border-bottom: 1px solid;
  }
  .card-row .card-cell:not(:first-child) > div {
    border-top: 0 !important;
  }
  .card-cell {
    align-items: center;
    position: relative;
    overflow: hidden;
  }
  .card-cell div {
    margin-top: 0.5rem;
  }
  .card-row div span, .card-row div span * {
    font-size: 70%;
    line-height: 70%;
    display: flex;
    align-items: center;
    min-width: 20%;
    font-weight: 600;
    margin-bottom: 0.4rem;
    background-color: #dcdcdc;
    color: white;
    padding: 4px;
    position: absolute;
    top: 0px;
    left: 0px;
  }
}
/*group function*/
.is-no-wide {
  display: inline-flex !important;
  width: auto !important;
  max-width: 100%;
}

@media (max-width: 768px) {
  .is-mobile-stack.is-layout-flex {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}
.pie-chart-frontend-wrap {
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.pie-chart-canvas-wrap {
  width: 100%;
  aspect-ratio: 1/1;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  max-height: 100vw;
  min-height: 200px;
}

.pie-chart-canvas {
  width: 100% !important;
  height: 100% !important;
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.custom-pie-legend {
  margin-top: 16px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
}

@media (max-width: 768px) {
  .pie-chart-frontend-wrap {
    max-width: 100%;
  }
  .pie-chart-canvas-wrap {
    max-width: 90vw;
    max-height: 90vw;
  }
}
/* 만국기 모드(국기모드) 프론트엔드 스타일 */
.flag-marquee {
  overflow: hidden;
  width: 100%;
  display: flex;
  align-items: center;
  padding: 18px 0;
}

.flag-marquee-track {
  display: flex;
  align-items: center;
  will-change: transform;
  animation: none;
}

.flag-marquee-track img {
  flex: 0 0 auto;
  height: auto;
  object-fit: contain;
}

/* 부모 기준 절대 위치 스타일 */
.absolute-parent-relative {
  position: absolute !important;
}

/* 부모 기준 절대 위치 블록의 부모 요소에 relative 적용 */
.absolute-parent-relative .wp-block {
  position: relative !important;
}

.wp-block-column {
  position: relative;
}

.full-width {
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  box-sizing: border-box;
}

@media (max-width: 768px) {
  .columns-sticky.sticky-mobile-off {
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    z-index: auto !important;
  }
}
/* sticky 오프셋(거리) 분기 */
/* Columns Sticky (with device-specific offset) */
.wp-block-columns.columns-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: var(--columns-sticky-offset-desktop, 0px) !important;
  bottom: unset;
}

.wp-block-columns.columns-sticky.sticky-bottom {
  position: -webkit-sticky;
  position: sticky;
  top: unset;
  bottom: var(--columns-sticky-offset-desktop, 0px) !important;
}

@media (max-width: 1024px) {
  .wp-block-columns.columns-sticky {
    top: var(--columns-sticky-offset-tablet, var(--columns-sticky-offset-desktop, 0px)) !important;
  }
  .wp-block-columns.columns-sticky.sticky-bottom {
    top: unset;
    bottom: var(--columns-sticky-offset-tablet, var(--columns-sticky-offset-desktop, 0px)) !important;
  }
}
@media (max-width: 768px) {
  .wp-block-columns.columns-sticky {
    top: var(--columns-sticky-offset-mobile, var(--columns-sticky-offset-desktop, 0px)) !important;
  }
  .wp-block-columns.columns-sticky.sticky-bottom {
    top: unset;
    bottom: var(--columns-sticky-offset-mobile, var(--columns-sticky-offset-desktop, 0px)) !important;
  }
}
/* Responsive min-height for columns */
.wp-block-columns {
  min-height: var(--columns-min-height-desktop, auto) !important;
}

@media (max-width: 1024px) {
  .wp-block-columns {
    min-height: var(--columns-min-height-tablet, auto) !important;
  }
}
@media (max-width: 768px) {
  .wp-block-columns {
    min-height: var(--columns-min-height-mobile, auto) !important;
  }
}
/* Column Sticky (with device-specific offset) */
.wp-block-column.is-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: var(--column-sticky-offset-desktop, 32px) !important;
  bottom: unset;
}

.wp-block-column.is-sticky.sticky-bottom {
  position: -webkit-sticky;
  position: sticky;
  top: unset;
  bottom: var(--column-sticky-offset-desktop, 32px) !important;
}

@media (max-width: 1024px) {
  .wp-block-column.is-sticky {
    top: var(--column-sticky-offset-tablet, var(--column-sticky-offset-desktop, 32px)) !important;
  }
  .wp-block-column.is-sticky.sticky-bottom {
    top: unset;
    bottom: var(--column-sticky-offset-tablet, var(--column-sticky-offset-desktop, 32px)) !important;
  }
}
@media (max-width: 768px) {
  .wp-block-column.is-sticky {
    top: var(--column-sticky-offset-mobile, var(--column-sticky-offset-desktop, 32px)) !important;
  }
  .wp-block-column.is-sticky.sticky-bottom {
    top: unset;
    bottom: var(--column-sticky-offset-mobile, var(--column-sticky-offset-desktop, 32px)) !important;
  }
}
/* Responsive min-height for columns */
.wp-block-column {
  min-height: var(--min-height-desktop, auto) !important;
}

@media (max-width: 1024px) {
  .wp-block-column {
    min-height: var(--min-height-tablet, auto) !important;
  }
}
@media (max-width: 768px) {
  .wp-block-column {
    min-height: var(--min-height-mobile, auto) !important;
  }
}
@media (max-width: 768px) {
  .columns-sticky.sticky-mobile-off,
  .is-sticky.sticky-mobile-off {
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    z-index: auto !important;
  }
}
@media (max-width: 768px) {
  .wp-block-columns.columns-sticky.sticky-mobile-off {
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    z-index: auto !important;
    /* 필요하다면 left/right도 auto로 */
    left: auto !important;
    right: auto !important;
  }
}
.absolute-parent-relative {
  position: relative;
}
