/* MYEONGRIGYEOL_CMS_FOOTER_V1 */

.mg-public-footer{
  margin:72px 0 0;
  padding:34px 28px 38px;
  border-top:1px solid rgba(255,255,255,.09);
  text-align:left;
  color:rgba(232,238,241,.68);
  font-size:13px;
  line-height:1.75;
}

.mg-footer-brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:20px;
}

.mg-footer-mark{
  width:38px;
  height:38px;
  border:1px solid rgba(199,151,77,.52);
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#d9b16c;
  font-family:serif;
  font-size:18px;
}

.mg-footer-brand strong{
  display:block;
  color:#f4f0e8;
  font-size:15px;
}

.mg-footer-brand small{
  display:block;
  color:rgba(232,238,241,.44);
  letter-spacing:.08em;
}

.mg-footer-company{
  display:flex;
  flex-wrap:wrap;
  gap:5px 16px;
  margin-bottom:15px;
}

.mg-footer-company span:empty{
  display:none;
}

.mg-footer-notice{
  max-width:850px;
  margin:0 0 18px;
  color:rgba(232,238,241,.56);
}

.mg-footer-links{
  display:flex;
  flex-wrap:wrap;
  gap:8px 20px;
  padding:16px 0;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}

.mg-footer-links a{
  color:#e1c18a;
  text-decoration:none;
}

.mg-footer-links a:hover{
  text-decoration:underline;
}

.mg-footer-copy{
  margin-top:15px;
  color:rgba(232,238,241,.38);
}


/* CMS page */

body.mg-cms-view .shell > :not(header):not(footer):not(.mg-cms-page){
  display:none !important;
}

.mg-cms-page{
  width:min(1040px,calc(100% - 32px));
  margin:54px auto 40px;
}

.mg-cms-hero{
  padding:38px 0 34px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.mg-cms-eyebrow{
  display:block;
  color:#c7974d;
  font-size:12px;
  font-weight:700;
  letter-spacing:.15em;
  margin-bottom:12px;
}

.mg-cms-hero h1{
  margin:0;
  color:#f7f4ee;
  font-size:clamp(30px,5vw,52px);
  line-height:1.12;
}

.mg-cms-hero p{
  max-width:720px;
  margin:17px 0 0;
  color:rgba(239,242,244,.66);
  font-size:16px;
  line-height:1.75;
}

.mg-service-tabs{
  display:flex;
  gap:8px;
  overflow:auto;
  padding:24px 0 8px;
}

.mg-service-tab{
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:rgba(245,245,245,.66);
  padding:10px 17px;
  cursor:pointer;
}

.mg-service-tab.active{
  border-color:rgba(199,151,77,.62);
  background:rgba(199,151,77,.10);
  color:#e6c78f;
}

.mg-service-visual{
  margin:26px 0;
}

.mg-service-visual img{
  display:block;
  max-width:100%;
  max-height:460px;
  object-fit:cover;
  border-radius:20px;
}

.mg-pipeline{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:30px 0 42px;
}

.mg-pipeline-card{
  position:relative;
  min-height:130px;
  padding:20px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
  border-radius:18px;
}

.mg-pipeline-card b{
  display:block;
  color:#c7974d;
  font-size:11px;
  letter-spacing:.12em;
  margin-bottom:14px;
}

.mg-pipeline-card strong{
  display:block;
  color:#f3f1ec;
  margin-bottom:8px;
}

.mg-pipeline-card p{
  margin:0;
  color:rgba(236,240,242,.58);
  font-size:13px;
  line-height:1.65;
}

.mg-cms-rich{
  max-width:860px;
  color:rgba(239,242,244,.72);
  font-size:15px;
  line-height:1.9;
}

.mg-cms-rich h2{
  margin:42px 0 12px;
  color:#f6f2eb;
  font-size:24px;
}

.mg-cms-rich h3{
  margin:30px 0 10px;
  color:#eee9df;
  font-size:19px;
}

.mg-cms-rich a{
  color:#d7ad67;
}

.mg-cms-rich blockquote{
  margin:24px 0;
  padding:16px 20px;
  border-left:3px solid #b98b45;
  background:rgba(199,151,77,.06);
}

.mg-cms-rich img{
  max-width:100%;
  border-radius:18px;
}


/* Admin CMS */

.mg-cms-admin{
  display:grid;
  gap:18px;
}

.mg-cms-admin-card{
  padding:18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(255,255,255,.025);
}

.mg-cms-admin-card h3{
  margin:0 0 14px;
}

.mg-cms-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.mg-cms-field{
  display:grid;
  gap:6px;
}

.mg-cms-field.full{
  grid-column:1/-1;
}

.mg-cms-field label{
  font-size:12px;
  opacity:.66;
}

.mg-cms-field input,
.mg-cms-field textarea,
.mg-cms-field select{
  width:100%;
  box-sizing:border-box;
  padding:10px 11px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:9px;
  background:#0b161d;
  color:#f3f3f3;
}

.mg-cms-field textarea{
  min-height:110px;
  resize:vertical;
}

.mg-cms-editor-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-bottom:7px;
}

.mg-cms-editor-toolbar button{
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:7px;
  background:#14232c;
  color:#eee;
  cursor:pointer;
}

.mg-cms-editor{
  min-height:240px;
  padding:14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  background:#081219;
  color:#eee;
  line-height:1.7;
  overflow:auto;
}

.mg-cms-admin-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.mg-cms-admin-actions button{
  padding:9px 14px;
  border:0;
  border-radius:9px;
  background:#b98b45;
  color:#fff;
  cursor:pointer;
}

.mg-cms-admin-actions button.secondary{
  background:#263844;
}

.mg-cms-admin-actions button.danger{
  background:#8f4040;
}

.mg-cms-list{
  display:grid;
  gap:8px;
}

.mg-cms-list button{
  text-align:left;
  padding:12px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  background:#101d25;
  color:#eee;
  cursor:pointer;
}


@media(max-width:760px){

  .mg-public-footer{
    padding:26px 6px 32px;
  }

  .mg-pipeline{
    grid-template-columns:1fr;
  }

  .mg-cms-grid{
    grid-template-columns:1fr;
  }

  .mg-cms-field.full{
    grid-column:auto;
  }

  .mg-cms-page{
    margin-top:28px;
  }
}
