@charset "utf-8";

/* Modern CSS Reset */

/* box-sizing 규칙을 명시합니다. */
*, *::before, *::after {box-sizing: border-box;}

/* 폰트 크기의 팽창을 방지합니다. */
html {-moz-text-size-adjust: none;-webkit-text-size-adjust: none;text-size-adjust: none;font-size:14px;}

body {font-family:'Pretendard','GmarketSans','NanumGothic','Malgun Gothic','Dotum','돋움';font-weight:400;font-size:1rem;color:#4a545d;background: #f9f9f9;-webkit-text-size-adjust:none;-ms-text-size-adjust:none;}

/* 기본 여백을 제거하여 작성된 CSS를 더 잘 제어할 수 있습니다. */
body, h1,h2, h3, h4, p, figure, blockquote, dl, dd {margin-block-end: 0;padding:0;margin:0;}

/* list를 role값으로 갖는 ul, ol 요소의 기본 목록 스타일을 제거합니다. */
ul[role='list'], ol[role='list'] {list-style: none;}

/* 핵심 body의 기본값을 설정합니다. */
body {min-height: 100vh;line-height: 1.5;overflow-x:hidden;}

/* 제목 요소와 상호작용하는 요소에 대해 line-height를 더 짧게 설정합니다. */
h1, h2, h3, h4, button, input, label {line-height: 1.1;}

/* 제목에 대한 text-wrap을 balance로 설정합니다. */
h1, h2, h3, h4 {text-wrap: balance;}

/* 클래스가 없는 기본 a 태그 요소는 기본 스타일을 가져옵니다. */
a:not([class]) {text-decoration-skip-ink: auto;color: currentColor;}

/* 이미지 관련 작업을 더 쉽게 합니다. */
img, picture {max-width: 100%;display: block;}

/* input 및 button 항목들이 글꼴을 상속하도록 합니다. */
input, button, textarea, select {font: inherit;color:#4a545d;}

/* 행 속성이 없는 textarea가 너무 작지 않도록 합니다. */
textarea:not([rows]) {min-height: 10em;}

/* 고정된 모든 항목에는 여분의 스크롤 여백이 있어야 합니다. */
:target {scroll-margin-block: 5ex;}

/* placeholder 스타일 */
input::placeholder {color: #C3C7C9;}
textarea::placeholder {color: #C3C7C9;}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance:none;
  margin: 0;
}

/* diabled */
input:disabled,
textarea:disabled,
select:disabled,
button:disabled {background-color: #E5E7ED;}

/* Firefox */
input[type=number] {
  -moz-appearance:textfield;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0px 1000px white inset !important; /* 배경색 유지 */
    -webkit-text-fill-color: #000 !important; /* 글자색 유지 */
    transition: background-color 5000s ease-in-out 0s; /* 깜빡임 방지 */
}

/* 스크롤바 디자인 */
/* ::-webkit-scrollbar{width:5px; height:6px;border:3px solid #f4f5f8;}
::-webkit-scrollbar-button:start:decrement, ::-webkit-scrollbar-button:end:increment {display:block;height:10px;background:#f4f5f8}
::-webkit-scrollbar-track{background:#f4f5f8; -webkit-border-radius: 10px;border-radius:10px;}
::-webkit-scrollbar-thumb{height:50px;width:6px;background:#e4e4e7;-webkit-border-radius: 8px;border-radius:8px; -webkit-box-shadow:inset 0 0 4px rgba(0,0,0,.1)} */

::-webkit-scrollbar, body::-webkit-scrollbar{width: 6px;  /* 스크롤바의 너비 */}
::-webkit-scrollbar-thumb, body::-webkit-scrollbar-thumb{height: 30%; /* 스크롤바의 길이 */background: linear-gradient(#b0b0b0, #777777); /* 스크롤바의 색상 */border-radius: 10px;}
::-webkit-scrollbar-track, body::-webkit-scrollbar-track{background: #e1e1e1;  /*스크롤바 뒷 배경 색상*/}

/* Margin Top */
.mt0 { margin-top: 0 !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }

/* Margin Bottom */
.mb0 { margin-bottom: 0 !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }

/* Margin Left */
.ml0 { margin-left: 0 !important; }
.ml5 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml40 { margin-left: 40px !important; }
.ml50 { margin-left: 50px !important; }

/* Margin Right */
.mr0 { margin-right: 0 !important; }
.mr5 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr40 { margin-right: 40px !important; }
.mr50 { margin-right: 50px !important; }

/* Padding Top */
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }

/* Padding Bottom */
.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }

/* Padding Left */
.pl5 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }
.pl40 { padding-left: 40px !important; }

/* Padding Right */
.pr5 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }
.pr40 { padding-right: 40px !important; }

/* font size */
.fs-10 {font-size: 10px !important;}
.fs-11 {font-size: 11px !important;}
.fs-12 {font-size: 12px !important;}
.fs-13 {font-size: 13px !important;}
.fs-14 {font-size: 14px !important;}
.fs-15 {font-size: 15px !important;}
.fs-16 {font-size: 16px !important;}
.fs-17 {font-size: 17px !important;}
.fs-18 {font-size: 18px !important;}
.fs-19 {font-size: 19px !important;}
.fs-20 {font-size: 20px !important;}

/* flex style */
.f-flex {display: flex !important;}
.f-flex-column {flex-direction: column !important;}
.f-justify-center {justify-content: center !important;}
.f-justify-space-between {justify-content: space-between !important;}
.f-align-center {align-items: center !important;}
.f-gap-10 {gap: 10px !important;}
.f-gap-15 {gap: 15px !important;}
.f-gap-20 {gap: 20px !important;}
.f-gap-25 {gap: 25px !important;}
.f-gap-30 {gap: 30px !important;}

/* text color */
.txt-color-green {color: #43AB94 !important;}
.txt-color-red {color: #de886f !important;}
.essential:after {content:" *";color:#42cd42;}

/* util css */
.infoMsg{font-size:0.9rem;font-weight:700;color:#8d8d8d;}
.emphasizeMsg{font-weight:700;color:#222222;}

/* text effect */
.strike-text {text-decoration: line-through;}

/* checkbox */
.chk {display: flex;align-items: center;}
.chk input {position: absolute;opacity: 0;width: 0;height: 0;}
.chk label {display: inline-flex;align-items: center;gap: 8px;cursor: pointer;user-select: none;line-height:20px;}
.chk span.chk-txt {padding-left:10px;font-weight:500;color:#222222;}
.chk.strong label {font-weight: 600;}
.box {width: 20px;height: 20px;border: 2px solid #DCDCDC;border-radius: 4px;display: inline-grid;place-items: center;box-sizing: border-box;background:#ffffff;}
.box::after {content: "";width: 8px;height: 8px;transform: scale(0);background: #35BF9F;border-radius: 2px;transition: transform 0.12s ease;}
.chk input:checked ~ label .box {border-color: #35BF9F;}
.chk input:checked ~ label .box::after {transform: scale(1);}
.chk input:focus+.box {box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.06);}
.all-chk-box {background:#ffffff;width:100%;padding:25px 30px;border-radius:50px;color:#222222;font-weight:700;font-size:1.429rem;margin-bottom:20px;}
.chkRow {width:100%;padding:5px 20px;border-radius:6px;font-weight:600;font-size:1.143rem;color:#222222;}
.chkRow button {text-decoration: underline;color:#35BF9F;}
.chkRow.grc font {color:#35BF9F;}

/* radio */
input[type="radio"] {display: none;}
.custom-radio {display: inline-block;width: 20px;height: 20px;border: 2px solid #555;border-radius: 50%;position: relative;cursor: pointer;}
input[type="radio"]:checked + .custom-radio::after {content: "";position: absolute;top: 50%;left: 50%;width: 10px;height: 10px;background: #555;border-radius: 50%;transform: translate(-50%, -50%);}
.custom-radio.gr {border: 2px solid #43AB94;}
input[type="radio"]:checked + .custom-radio::after {background: #43AB94;}
.custom-chk-radio {display: inline-block;width: 40px;height: 40px;border: 2px solid #DCDCDC;border-radius: 50%;position: relative;cursor: pointer;transition: background 0.5s, border 0.5s;}
.custom-chk-radio::after {content: '';position: absolute;width: 20px;height: 12px;border-left: 3px solid #ffffff;border-bottom: 3px solid #ffffff;top: 66%;left: 65%;transform: translate(-60%, -60%) rotate(-45deg) scaleX(0);transform-origin: left center;opacity: 0;transition: transform 0.3s ease, opacity 0.1s ease;transition-delay: 0.1s;}
input[type="radio"]:checked + .custom-chk-radio {border: 2px solid #35BF9F;background: #35BF9F;}
input[type="radio"]:checked + .custom-chk-radio::after {transform: translate(-60%, -60%) rotate(-45deg) scaleX(1);opacity: 1;}

/* select */
select{border:2px solid #e8e8e8;padding:0.5rem 1.4rem 0.4rem 1.4rem;border-radius:5px;outline-color:#43AB94;cursor:pointer;font-size:1rem;transition:0.3s;}
select option{cursor:pointer;border-radius:5px;font-size:1rem;}
select:hover{border:2px solid #43AB94;}

/* button */
button{cursor:pointer;border:0;background:none;}
button:disabled{cursor:not-allowed;background:silver !important;}
button:disabled:hover{opacity:1;color:#ffffff;}
button:hover{opacity:0.8;}
button.underlineBtn{background:none;border:0;color:#5c5c5c;font-weight:800;cursor:pointer;}
button.underlineBtn.white{background:none;border:0;color:#FFFFFF;font-weight:700;cursor:pointer;}
button.underlineBtn:hover{text-decoration: underline;}
button.underlineBtn.always{background:none;border:0;color:#5c5c5c;font-weight:800;cursor:pointer;text-decoration: underline;}
button.underlineBtn.always:hover{opacity:0.8;}
button.gr-link-btn {background:none !important;border:0 !important;color:#35BF9F;font-weight:500;cursor:pointer;text-decoration: underline;font-size:1.143rem !important;}
button.gr-link-btn:hover {color:#43AB94 !important;}
button.full{width:100% !important;}
.border-btn {border:1px solid #43AB94;font-size:0.9rem;color:#43AB94;padding:6px 13px 4px 13px;border-radius:5px;font-weight:700;}
.bg-btn {background:#43AB94;color:#ffffff;font-size:0.9rem;padding:6px 13px 4px 13px;border-radius:5px;}
.login-btn {background:#43AB94;font-size: 1rem;color:#ffffff;font-weight:700;transition: background 0.3s ease;padding:8px 15px 6px 15px;border-radius:4px;}
.login-btn:hover {background: silver;color:#4a545d;}
.long-btn {background:#43AB94;font-size: 1.2rem;color:#ffffff;font-weight:700;transition: background 0.3s ease;padding:8px 40px 6px 40px;border-radius:4px;}
.long-btn:hover {background: silver;color:#4a545d;}
.long-btn.type {background:#ffffff;border:1px solid #43AB94;font-size: 1.2rem;color:#43AB94;font-weight:700;transition: background 0.3s ease;padding:8px 40px 6px 40px;border-radius:4px;}
.long-btn.type:hover {background: #43AB94;color:#ffffff;}
.next-step-btn {padding:20px 120px;background:#43AB94;color:#ffffff;font-size:1.439rem;font-weight:700;border-radius:50px;box-shadow:0 0 10px #43AB947a;transition: background 0.3s ease;}

/* textarea 디자인 */
.charLengthChkTextarea {position: relative;display: inline-block;width:100%;}
.charLengthChkTextarea .charCounter {position: absolute;bottom: 20px;right: 30px;font-size: 0.857rem;font-weight:400px;color: #666666;background:#EBEDF3;padding:5px 12px;border-radius:15px;}

/* icon */
.check-icon {display: inline-block;width: 8px;height: 15px;border-bottom: 4px solid #77a4b0;border-right: 4px solid #77a4b0;transform: rotate(45deg);}

/* 공용 메시지 */
.msg-info {font-size: 0.9rem;color: #a1a1a1;font-weight: 500;}


/* header 포함 원형 메뉴 css */
.bean_area{z-index:99;position:fixed;right:30px;bottom:30px;display:flex;justify-content:flex-end;align-items:flex-end;opacity:0.4;}
.bean_menu{transition:0.3s;position:relative;width:50px;height:50px;border-radius:50%;background:conic-gradient(from 45deg, gray, #3f51b5, pink);cursor:pointer;box-shadow:0 0 5px #000000;}
.bean_menu:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;width:30px;height:30px;background:white;}
.top_btn{z-index:-2;transition:0.3s;position:absolute;transform:translate(-50%,-50%);top:50%;left:50%;width:50px;height:50px;border-radius:50%;background:#808080;background-size:30px;}
.top_btn:before{content:"";position:absolute;top:56%;left:50%;transform: translate(-50%, -50%) rotate(315deg);width: 18px; height: 18px;border-top: 5px solid #ffffff;border-right: 5px solid #ffffff;}
.top_btn:hover{background-color:#799dea;}
.left_btn{z-index:-2;transition:0.3s;position:absolute;transform:translate(-50%,-50%);top:50%;left:50%;width:50px;height:50px;/* background:url(../../images/dokebi/base/dark_moon.png) no-repeat 48% 48% #808080;background-size:40px; */border-radius:50%;}
.left_btn:hover{background-color:#2C2C2E;}

@keyframes menuup{0%{top:50%;}60%{top:-95%;}100%{top:-80%;}}
@keyframes menuleft{0%{left:50%;}60%{left:-95%;}100%{left:-80%;}}
@keyframes menuupR{0%{top:-80% }100%{top:50%;}}
@keyframes menuleftR{0%{left:-80%}100%{left:50%;}}

/* wrapper 레이아웃 */
.wrapper {min-height: 100vh;display: flex;flex-direction: column;}

/* header 스타일 */
header {position:fixed;top:0;left:0;width:100%;z-index:1001;}
header .header-container {width:100%;height:60px;background-color:#ffffff;padding:0 30px;}
header .link-wrapper {position:relative;width:100%;height:48px;background-color:#083340;display:flex;justify-content:center;align-items:center;cursor:pointer;}
header .link {position:relative;width:100%;height:24px;}
header .div-5 {height:19px;font-weight:400;color:transparent;font-size:1.143rem;text-align:center;letter-spacing:-0.15px;line-height:normal;white-space:nowrap;}
header .text-wrapper-86 {font-weight:700;color:#78ffe4;letter-spacing:-0.02px;}
header .text-wrapper-87 {font-weight:500;color:#ffffff;letter-spacing:-0.02px;}
header .header {display:flex;justify-content:space-between;align-items:center;max-width:1440px;height:60px;margin:0 auto;}
header .header a{text-decoration:none;}
header .header-left {display:flex;align-items:center;gap:100px;}
header .logo {width:120px;cursor:pointer;}
.nav-links {display:flex;align-items:center;gap:56px;}
.nav-links .nav-item {font-weight:500;font-size:1.143rem;color:#222222;line-height:22.5px;white-space:nowrap;cursor:pointer;font-weight:700;}
.nav-links .nav-item:first-child {font-weight:700;}
.nav-item.current {color:#43AB94;}
.dropdown {position:relative;display:flex;align-items:center;gap:9px;}
.dropdown-icon {width:9px;height:9px;border-top:1px solid #222;border-right:1px solid #222;transform:rotate(135deg);margin-bottom:6px;transition: transform 0.3s ease, margin 0.3s ease;}
.nav-item.current + .dropdown-icon {transform:rotate(315deg);margin-top:6px;margin-bottom:0;}
.dropdown .dropdown-content {display:none;position: absolute; top: 50px; left:50%;transform: translateX(-50%);box-shadow:0 4px 30px #0000000d;flex-direction:column;align-items:center;width:150px;padding:30px;border-radius:25px;gap:20px;font-size:16px;background:#ffffff;transition: opacity 0.3s ease, visibility 0.3s ease;}
.dropdown .dropdown-content:before {content:"";position:absolute;top:-19px;border-style: solid;border-width: 0 11px 11px 11px;border-color: transparent transparent #f1f0f6 transparent;}
.dropdown .dropdown-content .dropdown-item {position:relative;color:#222222;font-weight:500;}
.dropdown .dropdown-content .dropdown-item:hover {opacity:0.7;}
.header-right {display:flex;gap:11px;align-items: center;}
.header-right .login-info {font-weight:700;color:#666666;}
.btn-outline, .btn-primary, .btn-partner {display:inline-block;font-weight:500;font-size:1rem;text-align:center;line-height:43px;height:43px;border-radius:500px;text-decoration:none;}
.btn-outline:hover, .btn-primary:hover, .btn-partner:hover {opacity:0.8;}
.btn-outline {width:74px;color:#222222;border:1px solid #222222;background-color:#fff;}
.btn-primary {width:128px;color:#fff;background:linear-gradient(0deg,rgba(53,191,159,1) 0%,rgba(53,191,159,1) 100%);border-radius:20px;}
.btn-primary.type {width:128px;color:#fff;background:linear-gradient(0deg,rgb(31, 91, 109) 0%,rgb(31, 91, 109) 100%);border-radius:20px;}
.btn-partner {width:128px;color:#fff;background:linear-gradient(90deg, #35BF9F, #1F5B6D);border-radius:20px;}

/* 페이징 */
.pagination {display: flex;justify-content: center;align-items: center;gap: 8px;}
.page-btn {position:relative;padding-top:7px;border: none;background: none;cursor: pointer;border-radius: 50%;color: #222222;transition: all 0.2s ease;font-size:1.143rem;font-weight:400;}
.move-btn {border: none;background: none;cursor: pointer;border-radius: 50%;color: #222222;transition: all 0.2s ease;font-size:2rem;font-weight:500;}
.page-btn.active {color: #35BF9F;font-weight:700;}
.page-btn.disabled, .move-btn.disabled{color: #ccc;background:none !important;cursor: default;}

/* ========= 모바일 전환(≤1024px) ========= */
.hamburger {display:none;border:0;background:transparent;width:36px;height:36px;padding:0;position:relative;cursor:pointer;}
.hamburger span {position:absolute;left:6px;right:6px;height:2px;background:#222;border-radius:2px;transition:transform .3s, top .3s, opacity .3s;}
.hamburger span:nth-child(1){top:11px;}
.hamburger span:nth-child(2){top:17px;}
.hamburger span:nth-child(3){top:23px;}
.hamburger.is-active span:nth-child(1){top:17px;transform:rotate(45deg);}
.hamburger.is-active span:nth-child(2){opacity:0;}
.hamburger.is-active span:nth-child(3){top:17px;transform:rotate(-45deg);}

/* 드로어 */
.mobile-drawer {position:fixed;top:0;right:-85%;width:85%;max-width:420px;height:100vh;background:#fff;box-shadow:-6px 0 24px rgba(0,0,0,.08);transition:right .3s ease;z-index:1100;display:flex;flex-direction:column;}
.mobile-drawer.open {right:0;}
.mobile-drawer-header {display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 20px;border-bottom:1px solid #eee;}
.drawer-close {border:0;background:transparent;font-size:32px;line-height:1;cursor:pointer;}

.drawer-backdrop {position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:1090;}
/* hidden 속성 제어용 */
.drawer-backdrop[hidden]{display:none;}

/* 모바일 내비 */
.mobile-nav {display:flex;flex-direction:column;padding:12px 16px 24px 16px;gap:6px;overflow:auto;}
.mobile-item {display:flex;align-items:center;justify-content:space-between;padding:14px 12px;border-radius:12px;font-size:1.05rem;color:#222;text-decoration:none;background:#f8f9fa;}
.mobile-item:hover {background:#f1f3f5;}
.mobile-item.has-children {background:#fff;border:1px solid #eee;cursor:pointer;}
.mobile-submenu {display:flex;flex-direction:column;gap:8px;padding:10px 4px 4px 8px;}
.mobile-subitem {padding:10px;border-radius:10px;text-decoration:none;color:#222;background:#f8f9fa;}
.mobile-subitem:hover {background:#f1f3f5;}
.chevron {width:10px;height:10px;border-top:2px solid #222;border-right:2px solid #222;transform:rotate(45deg);transition:transform .2s;}
.mobile-item[aria-expanded="true"] .chevron {transform:rotate(-135deg);}

/* 모바일 CTA */
.mobile-cta {margin-top:auto;padding:16px;border-top:1px solid #eee;display:flex;flex-direction:column;gap:10px;}
.full {width:100%;text-align:center;display:block;}
.cta-row {display:flex;gap:10px;}
.cta-row .full {flex:1;}

/* 반응형 분기 */
@media (max-width: 1024px){
  .nav-links {display:none;}
  .header-right {display:none;}
  .header-left {gap:20px;}
  .hamburger {display:inline-block;}
  .dropdown:hover .dropdown-content {display:none;} /* 터치 환경 호버 비활성 */
  .login-info {display:none;}
}


.gradient,
.rectangle,
.gradient-2 {position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index: -1;}
.gradient {background-color: #F1F0F6;}
.rectangle {background: linear-gradient(180deg,rgba(241, 240, 246, 1) 0%,rgba(221, 231, 251, 1) 100%);opacity: 0.7;}
.gradient-2 {background: linear-gradient(180deg, rgba(241, 240, 246, 1) 0%, rgba(241, 240, 246, 1) 0%, rgba(241, 240, 246, 0) 17%, rgba(241, 240, 246, 0) 87%, rgba(241, 240, 246, 1) 97%);}
.footer {width:100%;background-color:#083340;color:#fff;box-sizing:border-box;min-height:300px;display:flex;align-items:center;}
.footer.partner {min-height:120px;}
.footer .footer-container {max-width:1300px;margin:0 auto;display:flex;flex-wrap:wrap;gap:60px;align-items:flex-start;padding:20px 30px;}
.footer .footer-logo {width:234px;height:46px;margin:auto;}
.footer .footer-contact {display:flex;gap:50px;}
.footer .contact-item {display:flex;flex-direction:column;align-items:flex-start;}
.footer .contact-title {font-weight:500;font-size:1.286rem;margin-bottom:8px;}
.footer .contact-info {font-weight:400;font-size:1rem;color:rgba(255,255,255,0.6);line-height:2.0;text-align:left;}
.footer .business-info {font-weight:400;font-size:1rem;color:rgba(255,255,255,0.8);line-height:2.0;margin-top:16px;}
.footer .footer-links {display:flex;align-items:center;gap:8px;}
.footer .footer-link {font-weight:600;font-size:1.286rem;color:#fff;text-decoration:none;}
.footer .divider {width:1px;height:14px;background-color:#fff;}
.footer.partner .footer-container {align-items:center;}
.footer.partner .footer-logo {width:120px;height:46px;margin:auto;}
.footer.partner .partner-info {color:rgba(255,255,255,0.6);font-weight:500;}
.footer.partner .partner-info span {font-size:1.143rem;color:#ffffff;margin:0 15px;}
.footer.partner .partner-info font {font-size:1rem;color:#ffffff;}

/* content 영역 (메인) */
.content {flex: 1; /* 남은 공간 채움 */padding: 1rem;margin-top:90px;}
.standard-container {max-width: 1640px;margin: 0 auto;padding: 1rem;display:flex;flex-direction: column;align-items: center;}

.content-title{font-size: 2rem;font-weight:700;}
.content-title strong{color:#43AB94;font-weight:700;}
.content-sub-title{font-size: 1.3rem;font-weight:500;}
.content-sub-title.center{text-align:center;}

/* datepicker input 디자인 */
.datePicker{position:relative;width:150px;height:30px;box-shadow:0 0 5px silver;border-radius:5px;}
.datePicker input{width:100%;height:30px;padding-left:5px;box-sizing:border-box;border:none;outline:none;padding-left:45px;font-weight:700;cursor:pointer;}
.datePicker:before{content:"📅";position:absolute;top:0;left:0;width:30px;height:30px;text-align:center;line-height:33px;background-color:#43AB94;border-radius:5px;box-shadow:0 0 5px silver;}

/* 홈페이지 로그인 화면 */
.loginContainer {display:flex;justify-content:center;align-items:center;}
.loginContainer .loginBox {max-width:640px;width:100%;min-height:292px;box-sizing:border-box;display:flex;flex-direction:column;margin:150px 0;}
.loginContainer .loginBox .logoArea {width:100%;margin-bottom:70px;display:flex;justify-content:center;align-items:center;}
.loginContainer .loginBox input[type="text"], input[type="password"] {width:100%;border-radius:50px;background:#ffffff;padding:12px 30px;border:none;margin-bottom:20px;font-size:1.143rem;font-weight:500;}
.loginContainer .loginBox button.loginBtn {width:100%;padding:20px 0;border-radius:10px;background:#35BF9F;color:#ffffff;font-weight:700;font-size:1.429rem;border-radius:50px;margin-bottom:30px;}
.loginContainer .loginBox button.loginBtn.gdGreen {background:linear-gradient(90deg, #35BF9F 0%, #1F5B6D 100%);}
.loginContainer .loginBox button.loginBtn:hover {opacity:0.8;}
.loginContainer .loginBox button.resetPassword {font-weight:500;color:#697077;margin-left:auto;text-decoration:underline;}
.loginContainer .loginBox button.resetPassword:hover {opacity:0.8;}
.loginContainer .loginBox button.joinMaha {font-size:14px;font-weight:500;color:#697077;margin-left:auto;}
.loginContainer .loginBox button.joinMaha:hover {opacity:0.8;}
.loginContainer .loginBox .infoArea {width:400px;height:auto;display:flex;flex-direction:column;align-items:center;margin:20px 0 40px 0;}
.loginContainer .loginBox .infoArea dt {font-family:'nanumb';font-size:24px;color:#43AB94;margin-bottom:70px;}
.loginContainer .loginBox .infoArea dd {font-family:'nanumb';font-size:16px;color:#697077;margin:10px 0;}
.loginContainer .loginBox .functionArea {font-size:1.143rem;width:100%;display:flex;justify-content:space-between;align-items:center;margin-bottom:50px;}
.loginContainer .loginBox p.joinRecomend {font-size:1.429rem;color:#222222;font-weight:500;display: flex;gap:20px;justify-content: center;align-items: center;}
.loginContainer .loginBox p.joinRecomend button {background:none;border:none;color:#35BF9F;font-weight:700;cursor:pointer;text-decoration:underline;}
.loginContainer .loginFailMsg {display: flex;justify-content: center;align-items: center;font-size: 1rem;color: red;margin-bottom: 10px;}

.form-group {margin-bottom: 10px;display: flex;align-items: center;}
.form-group label {font-size: 1.429rem;text-align: left;display: flex;flex-direction: column;justify-content: center;gap: 5px;margin-right: 100px;font-weight:700;}
.form-group label span.sub { font-size: 1rem; color: #35BF9F; }
.form-group div {display: flex;align-items: center;gap: 10px;}
.form-group select {width:15rem;padding:12px;border-radius:50px;color:#35BF9F;border:1px solid #DCDCDC;font-size:1.143rem;font-weight:700;}
.form-group select.full {width:100%;color:#222222;font-weight:500;text-align:left;}
.form-group input[type="text"],
.form-group input[type="number"] ,
.form-group input[type="password"] {font-size: 1.143rem;width: 100%;padding: 12px 30px;border: 1px solid #DCDCDC;border-radius: 50px;outline-color: #43AB94;outline-width: 1px;font-weight:500;color:#222222;}
.form-group .datebox {position:relative;}
.form-group .datebox:after {content:"";position:absolute;;top:50%;right:15px;transform:translate(-50%,-50%);background:url("/images/homepage/calendar_icon.svg") no-repeat;width:25px;height:25px;background-size:25px;}
.form-grid {display: grid;grid-template-columns: max-content 1fr;column-gap: 5rem;row-gap: 20px;align-items: center;}
.form-grid .form-group {display: contents !important;}
.form-grid label {display: flex;flex-direction: column;gap: 5px;margin-right: 0 !important;font-size: 1.429rem;}
.form-grid label .sub {font-size: 1rem;color: #35BF9F;}
.form-grid input[type="text"],
.form-grid input[type="password"] {width: 100%;font-size: 1.143rem;padding: 12px 30px;border: 1px solid #DCDCDC;border-radius: 50px;outline-color: #43AB94;outline-width: 1px;}
.form-group .button-group { display: flex;gap: 10px;align-items: center;flex-wrap: wrap;flex: 1;/* 남은 공간 모두 차지 */min-width: 0;/* flex 아이템이 줄어들 수 있게 */}
/* 버튼 텍스트 줄바꿈 방지 + 본문 폭만큼 최소폭 보장 */
.form-group .button-group .mail-test-btn {white-space: nowrap;flex: 0 0 auto;/* 버튼은 내용 폭 유지 */min-width: max-content;}
/* 옆의 인풋은 유동 폭, 100% 금지(전역 규칙 오버라이드) */
.form-group .button-group input[type="text"] {width: auto;/* ← 여기 핵심: 100% 해제 */flex: 1 1 260px;/* 기본 260px, 공간에 맞게 늘고 줄기 */min-width: 0;/* 내용이 길어도 줄어들 수 있게 */box-sizing: border-box;}
/* display: contents 미지원 브라우저(레거시) 대비 간단 폴백 */
@supports not (display: contents) {.form-grid .form-group {display: grid !important;grid-template-columns: max-content 1fr;align-items: center;column-gap: 20px;row-gap: 10px;margin-bottom: 0;}}


/* 다이얼로그 */
.dialogMsg {position:fixed;z-index:1001;width:100%;height:100%;top:50%;left:50%;transform:translate(-50%,-50%);/* background:rgb(0,0,0,0.7); */display:flex;justify-content:center;align-items:center;box-sizing:border-box;}
.dialogMsg:before{content:"";background:rgb(0,0,0,0.6)}
.dialogMsg > .dialog {width:450px;min-height:220px;background:#ffffff;box-shadow:0 0 10px #bababa;border-radius:10px;}
.dialogMsg > .dialog > .topArea {width:100%;height:45px;display:flex;justify-content:space-between;align-items:center;padding:0 10px;box-sizing:border-box;background:#1f5b6d;color: #ffffff;border-top-left-radius: 10px;border-top-right-radius: 10px;font-weight: 700;}
.dialogMsg > .dialog > .topArea > span {font-size:16px;font-weight:800;}
.dialogMsg > .dialog > .topArea > button {font-size:12pt;}
.dialogMsg > .dialog > .topArea > button:hover {opacity:0.6;}
.dialogMsg > .dialog > .contentArea {width:100%;min-height:120px;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;line-height:25px;padding:15px;text-align:center;box-sizing:border-box;font-size:14px;font-weight:700;}
.dialogMsg > .dialog > .contentArea > .subContent {position:relative;font-size:12px;color:#797979;display:flex;align-items:center;padding:0 0 0 20px;}
.dialogMsg > .dialog > .contentArea > .subContent:before {content:"";position:absolute;left:0;top:7px;width:12px;height:12px;background:url("/img/caution.png") no-repeat;background-size:12px;}
.dialogMsg > .dialog > .contentArea > .infoContent {text-align:left;font-size:12px;margin-top:5px;}
.dialogMsg > .dialog > .bottomArea {width:100%;height:55px;display:flex;justify-content:center;align-items:center;gap:10px;}
.dialogMsg > .dialog > .bottomArea > button {border:1px solid #D6E5E4;padding:6px 20px;border-radius:50px;min-width:90px;color:#8097B7;}
.dialogMsg > .dialog > .bottomArea > button:focus {outline:none;}
.dialogMsg > .dialog > .bottomArea > button:hover {opacity:0.7;}
.dialogMsg > .dialog > .bottomArea > button:nth-child(2) {background:#35bf9f;color:#ffffff;border:1px solid #35bf9f;}
.dialogMsg > .dialog > .bottomArea > button:nth-child(3) {background:#35bf9f;color:#ffffff;border:1px solid #35bf9f;}
.dialogMsg > .dialog > .bottomArea > button.chk {background:#35bf9f;color:#ffffff;border:1px solid #35bf9f;display:block !important;} 

/* 스낵바 */
.snackbar {position:fixed;bottom:30px;right:30px;display:flex;flex-direction:column;gap:10px;z-index:999;}
.snackbar > .snackbarMsg {display:none;padding:10px 20px;background:black;opacity:0.6;border-radius:5px;color:#ffffff;font-size:14px;}

/* 팝업 type1 */
.popup-overlay {position: fixed;top: 0;left: 0;right: 0;bottom: 0;background: rgba(0, 0, 0, 0.5);z-index: 1003;display:none;}
.popup-box {position: fixed;padding:50px 40px;top: 50%;left: 50%;transform: translate(-50%, -50%);background: #fff;max-width: 90%;border-radius: 30px;box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);z-index: 1004;display:none;}
.popup-box.type1 {height: 90vh;}
.popup-box .popup-header {display: flex;justify-content: space-between;align-items: center;height: 70px;padding-bottom:15px;border-bottom: 1px solid #DCDCDC;}
.popup-box .popup-header div {display: flex;align-items: center;gap:10px;color:#222222;}
.popup-box .popup-title {font-size: 24px;font-weight: 700;}
.popup-box .popup-close {position: relative;width: 32px;height: 32px;border: none;background: transparent;cursor: pointer;display: inline-block;}
.popup-box .popup-close::before,
.popup-box .popup-close::after {content: "";position: absolute;left: 50%;top: 50%;width: 60%;height: 2px;background-color: #222222;transform-origin: center;transition: background-color 0.2s ease;}
.popup-box .popup-close::before {transform: translate(-50%, -50%) rotate(45deg);}
.popup-box .popup-close::after {transform: translate(-50%, -50%) rotate(-45deg);}
.popup-box .popup-close:hover::before,
.popup-box .popup-close:hover::after {background-color: silver;}
.popup-box .popup-close:active {transform: scale(0.9);}
.popup-box .popup-content {font-weight: 500;height:90%;overflow-y:auto;box-sizing:border-box;}
.popup-box .popup-content .input-area {display: flex;gap: 10px;align-items: center;width: 100%;}
.popup-box .popup-content .input-area input[type="text"] {height: 40px;font-size: 1rem;border: 1px solid #ccc;border-radius: 4px;padding: 0 0.9rem;}
.popup-box .popup-content .input-area button {height: 40px;font-size: 1rem;padding: 0 0.9rem;}
.popup-box .popup-content .button-area {display: flex;gap: 10px;margin-top: 30px;justify-content: center;}
.popup-box .popup-content .button-area button:nth-child(even) {background-color: #e1e1e1;color: #333;border: none;padding: 0.7rem 2.5rem 0.5rem 2.5rem;border-radius: 4px;}
.popup-box .popup-content .button-area button:nth-child(odd) {background-color: #43AB94;color:#ffffff;border: none;padding: 0.7rem 2.5rem 0.5rem 2.5rem;border-radius: 4px;}
.popup-box button.email-btn {position:relative;height:35px;font-size:1rem;font-weight:500;border:1px solid #222222;border-radius:50px;background:#ffffff;color:#222222;cursor:pointer;display:flex;align-items:center;padding:0 15px 0 40px;}
.popup-box button.email-btn:before {content:"";position:absolute;top:50%;left:15px;transform:translateY(-50%);width:20px;height:20px;background:url("/images/homepage/email_send_icon.svg") no-repeat;background-size:20px;}
.popup-box button.print-btn {position:relative;height:35px;font-size:1rem;font-weight:500;border:1px solid #222222;border-radius:50px;background:#ffffff;color:#222222;cursor:pointer;display:flex;align-items:center;padding:0 15px 0 40px;}
.popup-box button.print-btn:before {content:"";position:absolute;top:50%;left:15px;transform:translateY(-50%);width:20px;height:20px;background:url("/images/homepage/print_icon.svg") no-repeat;background-size:20px;}
#secondPopup .popup-overlay {z-index: 1005;}
#secondPopup .popup-box {z-index: 1006;}

/* 팝업 type2 */
.popup-box-type2 {padding:40px;position: fixed;top: 50%;left: 50%;transform: translate(-50%, -50%);background: #fff;max-width: 90%;border-radius: 25px;box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);z-index: 1004;display:none;}
.popup-box-type2 .popup-header {display: flex;justify-content: center;align-items: center;flex-direction:column;gap:30px;}
.popup-box-type2 .popup-title {font-size: 1.714rem;font-weight: 700;color:#222222;width:100%;text-align:center;position:relative;}
.popup-box-type2 .popup-sub-title {font-size: 1.143rem;font-weight: 500;color:#666666;display:flex;justify-content:center;text-align:center;flex-direction:column;gap:5px;}
.popup-box-type2 .popup-sub-title font {color:#35BF9F;font-weight:600;}
.popup-box-type2 .popup-divide-line{width:100%;height:1px;background:#DCDCDC;margin:20px 0;}
.popup-box-type2 .popup-close {position: absolute;top: 40px;right: 40px;transform:translate(-50%, -50%); border: none;font-size: 2.5rem;font-weight:400;cursor: pointer;color:#222222;width: 22px;height: 22px;}
.popup-box-type2 .popup-close:hover{opacity:0.7;}
.popup-box-type2 .popup-content {font-weight: 500;overflow-y:auto;box-sizing:border-box;}
.popup-box-type2 .popup-content .input-area {display: flex;gap: 10px;align-items: center;width: 100%;}
.popup-box-type2 .popup-content .input-area input[type="text"] {height: 40px;font-size: 1rem;border: 1px solid #ccc;border-radius: 50px;padding: 0 0.9rem;}
.popup-box-type2 .popup-content .input-area select {border-radius: 50px;}
.popup-box-type2 .popup-content .input-area button {height: 40px;font-size: 1rem;padding: 0 0.9rem;}
.popup-box-type2 .popup-content .button-area {display: flex;gap: 10px;margin-top: 30px;justify-content: center;}
.popup-box-type2 .button-area {display: flex;gap:20px;justify-content:center;font-size:1.429rem;font-weight:700;margin-top:40px;}
.popup-box-type2 .button-area button.silver {background-color: #e1e1e1;color: #666666;border: none;border-radius: 50px;width:100%;padding:12px 0;}
.popup-box-type2 .button-area button.normal {background-color: #ffffff;color: #222222;border: 1px solid #222222;;border-radius: 50px;width:100%;padding:12px 0;}
.popup-box-type2 .button-area button.green {background-color: #43AB94;color:#ffffff;border: none;border-radius: 50px;width:100%;padding:12px 0;}
.popup-box-type2 .button-area button.gdGreen {background: linear-gradient(90deg, #35BF9F, #1F5B6D);color:#ffffff;border: none;border-radius: 50px;width:100%;padding:12px 0;}
.popup-box-type2 .button-area button.half {width:48%;}
.popup-box-type2 .info-msg {display: flex; align-items: center; gap:10px; font-size:1.143rem; color:#666666;line-height:22px;font-weight:500;}
#secondPopup .popup-overlay {z-index: 1005;}
#secondPopup .popup-box-type2 {z-index: 1006;}

/* 서비스 신청 메뉴바 */
.stepper {display: flex;margin-bottom: clamp(2rem, 8vw, 4.375rem);flex-wrap: wrap;justify-content: center;}
.stepper .step {position: relative;display: flex;align-items: center;color: #666666;font-size: clamp(1rem, 2.5vw, 1.429rem);font-weight: 500;margin-bottom: 1rem;}
.stepper .step .step-number {background: #C3C7C9;color: #ffffff;border-radius: 50%;width: clamp(2.5rem, 6vw, 3rem);height: clamp(2.5rem, 6vw, 3rem);display: flex;align-items: center;justify-content: center;font-size: clamp(0.875rem, 2vw, 1.143rem);margin-right: 0.857rem;}
.stepper.mini .step-number {margin-right:0;}
.stepper .step .step-label {font-size: clamp(1rem, 2.5vw, 1.429rem);font-weight: 400;}
.stepper .step::after {content: '';width: clamp(5rem, 15vw, 7.143rem);height: 3px;background: #D9D9D9;margin: 0 15px;}
.stepper.mini .step::after {width: 30px;}
.stepper .step.active .step-label {color: #35BF9F;font-weight: 600;}
.stepper .step.active .step-number {background: #fff;color: #35BF9F;animation: stepPulse 1.5s ease-in-out infinite;}
@keyframes stepPulse {
  0%, 100% { transform: scale(1); box-shadow: 0 0 12px #35bf9f70; }
  50% { transform: scale(1.05); box-shadow: 0 0 18px #35bf9f99; }
}
.stepper .step:last-child::after {display: none;}
.stepper .step.completed .step-label {color: #35BF9F;font-weight: 600;}
.stepper .step.completed::after {background: #35BF9F;}
.stepper .step.completed .step-number {background: #35BF9F;color: #ffffff;box-shadow: 0 0 12px #35bf9f70;position: relative;font-size: 0;}
.stepper .step.completed .step-number::after {content: '';position: absolute;width: clamp(12px, 2vw, 20px);height: clamp(8px, 1.5vw, 12px);border-left: 3px solid #ffffff;border-bottom: 3px solid #ffffff;transform: translate(-50%, -65%) rotate(-45deg);top: 50%;left: 50%;}
.step-title {width:100%;max-width:1440px;text-align:left;font-size:1.714rem;font-weight:700;color:#222222;}

.pricing-container {display: flex;gap: 1.2rem;flex-wrap: wrap;justify-content: center;padding: 1rem;}
.pricing-container .pricing-card {position:relative;border: 1px solid #ccc;border-radius: 8px;padding: 1rem;width: 240px;box-shadow: 0 2px 6px rgba(0,0,0,0.1);text-align: center;background: #fff;font-weight:700;cursor:pointer;transition:0.3s;}
.pricing-container .pricing-card.extend {width:auto;}
.pricing-container .pricing-card:hover{scale:1.1;transition:0.3s;box-shadow: 0 4px 12px #43ab9457;margin:0 1rem;border:1px solid #43AB94;}
.pricing-container .pricing-card.selected{scale:1.1;transition: transform 0.5s ease-in-out;box-shadow: 0 4px 12px #43ab9457;margin:0 1rem;border:1px solid #43AB94;}
.pricing-container .pricing-card label.radio-label{position:absolute;top:1rem;left:1rem;}
.pricing-container .pricing-title {font-weight: 700;color: #43AB94;font-size: 1.4rem;margin-bottom: 0.7rem;}
.pricing-container .pricing-price {font-size: 1.5rem;font-weight: bold;}
.pricing-container .pricing-sub {font-size: 1rem;margin-bottom: 1rem;}
.pricing-container .pricing-details {list-style: none;padding: 0;margin: 0;text-align: left;}
.pricing-container .pricing-details li {margin-bottom: 0.5rem;font-size: 0.9rem;display:flex;justify-content: space-between;}
	
.user-count-container {margin: 20px;}
.user-count-container .user-count-label {display: block;margin-bottom: 8px;font-weight: 700;font-size:1.2rem;}
.user-count-container .user-count-options {display: flex;flex-wrap: wrap;gap: 6px;align-items: center;}
.user-count-container .user-btn {padding: 6px 12px 4px 12px;border: 1px solid #ccc;background: #fff;cursor: pointer;border-radius: 4px;font-size: 1rem;font-weight:700;}
.user-count-container .user-btn.selected {background: #36a69b;color: #fff;border-color: #36a69b;}
.user-count-container .user-btn.control {width: 32px;padding: 6px 12px 4px 12px;text-align: center;}
.user-count-container .user-input {width: 80px;padding: 6px 12px 4px 12px;text-align: center;border: 1px solid #ccc;border-radius: 4px;font-size: 1rem;font-weight:700;}

.mail-server-container {display: flex;flex-direction:column;gap: 1.2rem;flex-wrap: wrap;justify-content: center;max-width: 1440px;width:100%;}
.mail-server-container .mail-server-card {position:relative;border: 1px solid #ccc;border-radius: 25px;padding: 2.857rem;width:100%;/* height:700px; */box-shadow: 0 2px 6px rgba(0,0,0,0.1);text-align: center;background: #fff;font-weight:700;cursor:pointer;transition:0.3s;}
.mail-server-container .mail-server-card:hover{/* scale:1.05; */transition:0.3s;margin:0 0 1rem 0;border:1px solid #35BF9F;}
.mail-server-container .mail-server-card.selected{/* scale:1.05; */transition: transform 0.5s ease-in-out;margin:0 0 1rem 0;border:1px solid #35BF9F;}
.mail-server-container .mail-server-card .radio-title{display:flex;align-items:center;gap:10px;}
.mail-server-container .mail-server-title {font-weight: 700;color: #222222;font-size: 1.429rem;padding-bottom:3px;}
.mail-server-container .mail-server-card.selected .mail-server-title {color: #35BF9F;}
.mail-server-container .mail-server-sub {font-size: 1.143rem;;margin-top:1.428rem;text-align:left;color:#666666;font-weight:500;}
.mail-server-container .mail-server-sub-title {font-weight: 500;font-size: 1.143rem;margin-bottom: 2.857rem;text-align:left;color:#222222;}
.mail-server-container .divide-line{width:100%;height:1px;background:#DCDCDC;margin:20px 0;}
.mail-server-container .mail-server-details {list-style: none;padding: 0;margin: 0;text-align: left;}
.mail-server-container .mail-server-details li {margin-bottom: 0.5rem;font-size: 0.9rem;display:flex;justify-content: space-between;}
.mail-server-container .mail-test-btn{padding:12px 30px;font-size:1.143rem;border:1px solid #35BF9F;color:#35BF9F;border-radius:50px;}

.add-product-container {display:flex;gap:clamp(10px,2vw,30px);flex-wrap:wrap;max-width:1440px;width:100%;}
.add-product-container .title {font-size:clamp(1rem,1.5vw,1.2rem);font-weight:700;}
.add-product-container .basic-product-area {background:#fff;border-radius:25px;box-shadow:0 7px 21px #00000014;padding:clamp(1.5rem,2vw,2.857rem);display:flex;flex-direction:column;gap:clamp(10px,2vw,20px);}
.add-product-container .basic-product-area .custom-price-box {padding:clamp(8px,1vw,12px) clamp(20px,3vw,30px);border:1px solid #DCDCDC;border-radius:50px;width:100%;display:flex;justify-content:space-between;align-items:center;color:#222;font-size:clamp(1rem,1.5vw,1.143rem);font-weight:500;}
.add-product-container .basic-product-area .custom-price-box .count-box {display:flex;gap:clamp(3px,0.5vw,5px);flex-wrap:nowrap;}
.add-product-container .basic-product-area .custom-price-box .count-box .count-btn {width:clamp(24px,2vw,28px);height:clamp(24px,2vw,28px);border-radius:50%;display:flex;justify-content:center;align-items:center;}
.add-product-container .basic-product-area .custom-price-box .count-box .count-input {width:auto;max-width:70px;height:clamp(24px,2vw,28px);display:flex;justify-content:center;align-items:center;padding:clamp(3px,0.5vw,5px);}
.add-product-container .basic-product-area .basic-list-box {width:100%;background:#EBEDF3;border-radius:30px;display:flex;flex-direction:column;padding:clamp(15px,2vw,20px) clamp(20px,3vw,30px);gap:clamp(5px,1vw,10px);}
.add-product-container .basic-product-area .basic-list-box .basic-list {width:100%;display:flex;justify-content:space-between;align-items:center;font-size:clamp(1rem,1.5vw,1.143rem);color:#222;font-weight:500;}
.add-product-container .basic-product-area .basic-list-box .basic-list span:first-child {font-weight:700;}
.add-product-container .basic-product-area .basic-price-box {text-align:right;font-size:clamp(1.5rem,2vw,1.857rem);font-weight:700;}
.add-product-container .basic-product-area .basic-price-box font {color:#35BF9F;}

.add-product-container .service-option-area {display:flex;flex-direction:column;gap:clamp(10px,1vw,20px);flex:1}
.add-product-container .service-option-area .add-product-area {display:flex;flex-direction:column;gap:clamp(5px,1vw,10px);}
.add-product-container .service-option-area .option-box {display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:clamp(15px,2vw,20px) clamp(20px,3vw,40px);box-shadow:0 7px 21px #00000014;border:1px solid #DCDCDC;border-radius:50px;font-size:clamp(1rem,1.5vw,1.1rem);font-weight:700;background:#fff;}
.add-product-container .service-option-area .option-box > span {width:clamp(8rem,10vw,12rem);text-align:center;font-weight:500;font-size:clamp(1rem,1.5vw,1.143rem);color:#222;}
.add-product-container .service-option-area .option-box span:first-child {color:#222;font-weight:700;text-align:left;font-size:clamp(1.2rem,2vw,1.429rem);}
.add-product-container .service-option-area .option-box .remove-btn {border:1px solid #222;color:#222;font-weight:500;font-size:clamp(0.9rem,1.5vw,1rem);padding:clamp(4px,1vw,6px) clamp(15px,2vw,22px);border-radius:50px;}
.add-product-container .service-option-area .add-option-box {display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:clamp(20px,3vw,40px);box-shadow:0 7px 21px #00000014;border:1px solid #DCDCDC;border-radius:30px;font-size:clamp(1rem,1.5vw,1.1rem);font-weight:700;background:#fff;}
.add-product-container .service-option-area .add-option-box:last-child {margin-bottom:150px;}
.add-product-container .service-option-area .add-option-box .title {color:#222;font-weight:700;text-align:left;font-size:clamp(1.2rem,2vw,1.429rem);width:100%;}
.add-product-container .service-option-area .add-option-box .add-option {display:flex;gap:clamp(10px,2vw,20px);flex-wrap:wrap;justify-content:flex-end;align-items:center;font-size:clamp(1.15rem,1.5vw,1.214rem);font-weight:500;width:100%;border-bottom:1px solid #DCDCDC;padding:clamp(15px,2vw,25px);color:#222;}
.add-product-container .service-option-area .add-option-box .add-option:last-child {border-bottom:0;padding-bottom:0;}
.add-product-container .service-option-area .add-option-box .add-option span {display:flex;align-items: center;}
.add-product-container .service-option-area .add-option-box .add-option > span:first-child {margin-right:auto;}
.add-product-container .service-option-area .add-option-box span:first-child {color:#5b5b5b;font-weight:700;text-align:left;}
.add-product-container .service-option-area .add-option-box .add-btn {border:1px solid #35BF9F;font-size:clamp(0.9rem,1.5vw,1rem);font-weight:500;color:#35BF9F;padding:clamp(4px,1vw,6px) clamp(15px,2vw,22px);border-radius:50px;}
.add-product-container .service-option-area .count-box {display:flex;gap:clamp(3px,0.5vw,5px);flex-wrap:nowrap;}
.add-product-container .service-option-area .count-btn {width:clamp(24px,2vw,32px);padding:clamp(2px,0.5vw,4px) clamp(8px,2vw,12px);border:1px solid #ccc;background:#fff;cursor:pointer;border-radius:50%;font-size:clamp(0.9rem,1.5vw,1rem);font-weight:700;text-align:center;display: flex;align-items:center;justify-content:center;}
.add-product-container .service-option-area .count-btn.selected {background:#36a69b;color:#fff;border-color:#36a69b;}
.add-product-container .service-option-area .count-btn:hover {border-color:#36a69b;color:#36a69b;}
.add-product-container .service-option-area .count-input {width:auto;max-width:70px;padding:clamp(2px,0.5vw,4px) clamp(8px,2vw,12px);text-align:center;border:1px solid #ccc;border-radius:50px;font-size:clamp(0.9rem,1.5vw,1rem);font-weight:700;}

.add-product-container .apply-detail-area{max-width:460px;flex:1;margin-bottom:150px;}
.add-product-container .apply-detail-area .sticky-box{position:sticky;top:150px;background:#ffffff;box-shadow:0px 7px 21px #00000014;border-radius:30px;padding:2.857rem;}
.add-product-container .apply-detail-area p.title{font-size:1.429rem;font-weight: 700;color:#222222;}
.add-product-container .apply-detail-area p.product-name{font-size:1.429rem;font-weight: 700;color:#36a69b;}
.add-product-container .apply-detail-area .select-service-box{display:flex;flex-direction:column;gap:5px;font-weight:700;}
.add-product-container .apply-detail-area dl{display:flex;justify-content:space-between;font-size:1.143rem;align-items:center;color:#222222;font-weight:500;}
.add-product-container .apply-detail-area dl dt{color:#666666 !important;}
.add-product-container .apply-detail-area dl .grc {color:#36a69b !important;}
.add-product-container .apply-detail-area dl .level2 {padding-left:20px;}
.add-product-container .apply-detail-area dl dd.subtotal {font-weight:700;}
.add-product-container .apply-detail-area dl dt font.title {color:#222222 !important;font-weight:700;}
.add-product-container .apply-detail-area dl dt span {color:#222222;font-weight:500;}
.add-product-container .apply-detail-area dl.total-amount dt {font-size:1.429rem;font-weight:700;color:#222222 !important;}
.add-product-container .apply-detail-area dl.total-amount dd {font-size:1.857rem;font-weight:700;color:#36a69b;}
.add-product-container .apply-detail-area p.line{width:100%;height:1px;background-color:#DCDCDC;margin:20px 0;}
.add-product-container .apply-detail-area p.line2{width:100%;height:1px;background-color:#DCDCDC;margin:15px 0;}
.add-product-container .apply-detail-area .terms-service{font-size:0.9rem;font-weight:500;font-size:1.143rem;color:#222222;}
.add-product-container .apply-detail-area .terms-service button{color:#36a69b;text-decoration:underline;}
.add-product-container .apply-detail-area .apply-btn-box {display:flex;gap:15px;align-items:center;margin-top:20px;}
.add-product-container .apply-detail-area .apply-btn-box button:first-child {font-size:1.429rem;font-weight:500;background:#ffffff;border:1px solid #222222;color:#222222;width:50%;padding:1.429rem 0;border-radius:50px;}
.add-product-container .apply-detail-area .apply-btn-box button:last-child {font-size:1.429rem;font-weight:700;background:#ffffff;background:#36a69b;color:#ffffff;width:50%;padding:1.429rem 0;border-radius:50px;border:0;}
.add-product-container .apply-detail-area .apply-btn-box button.full {width:100%;}


.discount-zone {color:#a1a1a1;}
.coupon-point-box {padding:40px;background:#ffffff;border-radius:30px;display:flex;flex-direction:column;gap:20px;box-shadow:0 7px 21px #00000014;}
.coupon-point-box .support-btn {font-size:1.143rem;padding:12px 2.5rem;border:1px solid #35BF9F;color:#35BF9F;word-break:keep-all;border-radius:50px;font-weight:500;}
.service-add-btn {border:1px solid #35BF9F;color:#35BF9F;font-weight:700;width:clamp(10rem,10vw,16rem);padding:1rem 0;border-radius:50px;font-size:clamp(1rem,1vw,1.429rem);margin: 0 auto;}
.coupon-box {display: flex;justify-content: space-between;align-items: center;font-weight: 500;align-items: center;}
.coupon-box dt {font-size: 1.429rem;color:#222222;}
.coupon-box dd {display: flex;align-items: center;gap: 10px;}
.coupon-box dd input[type="text"] {font-size: 1.1rem;width: 20rem;height: 40px;font-size: 1rem;border: 1px solid #ccc;border-radius: 50px;padding: 0 0.9rem;text-align: right;}
.coupon-box dd input[type="number"] {font-size: 1.1rem;width: 20rem;height: 40px;font-size: 1rem;border: 1px solid #ccc;border-radius: 50px;padding: 0 0.9rem;text-align: right;}
.coupon-box dd select {font-size: 1.1rem;width: 20rem;height: 40px;font-size: 1rem;border: 1px solid #ccc;border-radius: 50px;padding: 0 0.9rem;}
.charge-method-box {padding:40px;background:#ffffff;border-radius:30px;display:flex;flex-direction:column;gap:20px;box-shadow:0 7px 21px #00000014;margin-bottom:150px;}
.charge-method-box button {width: 100%;padding:12px 0;font-size: clamp(1rem,1vw,1.143rem);border: none;border-radius: 50px;color:#666666;background-color: #EBEDF3;cursor: pointer;font-weight: 500;}
.charge-method-box button.selected {background-color: #35BF9F;color: #ffffff;font-weight: 700;}

/* 회원가입 */
.joinBox {width:100%;max-width:640px;box-sizing:border-box;display:flex;flex-direction:column;}
.joinBox .tit {font-size:24px;font-family:'nanumb';font-weight:700;text-align:center;color:#35BF9F;margin-bottom:30px;display:none;}
.joinBox .subTit {font-size:1.429rem;font-weight:700;text-align:left;margin-bottom:10px;color:#222222;}
.joinBox .subTit font {color:#35BF9F;margin-right:8px;}
.joinBox .system-chk {font-weight:500;color:#666666;font-size:1.071rem;margin-left:10px;}
.joinBox .inputCont {width:100%;display:flex;flex-direction:column;gap:20px;margin-top:20px;}
.joinBox .inputCont dt {font-size:1.429rem;font-weight:700;color:#222222;}
.joinBox .inputCont dd {display:flex;gap:10px;}
.joinBox .inputCont dd input[type="text"] {font-size: 1.143rem;width: 100%;padding: 12px 30px;border: 1px solid #DCDCDC;border-radius: 50px;outline-color: #43AB94;outline-width: 1px;font-weight:500;color:#222222;}
.joinBox .inputCont dd > button {min-width: 7rem;padding:12px 0;font-size: 1rem;border: none;border-radius: 50px;color:#35BF9F;cursor: pointer;font-weight: 500;border:1px solid #35BF9F;}
.joinBox .inputCont dd > button:hover {opacity:0.7;background:#35BF9F;color:#ffffff;}
.joinBox .inputCont dd > button:disabled {border:1px solid #DCDCDC;color:#ffffff;cursor:not-allowed;}
.joinBox .inputCont dd .system-text{font-size: 1.143rem;width: 100%;padding: 12px 30px;border-radius: 50px;background:#EBEDF3;font-weight:500;color:#666666;}
.joinBox .inputCont .agreeBox {width:100%;background:#F8FCFC;border-radius:10px;padding:15px 25px;display:flex;flex-direction:column;justify-content:center; gap:15px;}
.joinBox .inputCont .agreeBox .agreeLine {height:1px;width:100%;background:#dfdfdf;}
.joinBox .inputCont .agreeBox .agreeElement {display:flex;align-items:center;}
.joinBox .inputCont .agreeBox button {color:#35BF9F;margin-left:auto;}
.joinBox .inputCont .agreeBox button:hover {opacity:0.7;}
.joinBox .btn-area {display:flex;justify-content:center;align-items:center;gap:20px;}
.joinBox .next-btn {width:100%;padding:20px 0;background:#35BF9F;color:#ffffff;font-size:1.429rem;font-weight:700;border:none;border-radius:50px;cursor:pointer;margin:50px 0 150px 0;}
.joinBox .prev-btn {width:100%;padding:20px 0;border:1px solid #222222;color:#222222;font-size:1.429rem;font-weight:700;border-radius:50px;cursor:pointer;margin:50px 0 150px 0;}
.joinBtn {width:150px;height:35px;line-height:35px;text-align:center;border-radius:5px;color:#ffffff;background:#35BF9F;margin:0 auto;margin-top:30px;font-weight:700;}
.joinBtn:hover {opacity:0.7;}
.check-circle-icon {width: 24px;height: 24px;background-color: #888; /* 회색 배경 */border-radius: 50%;    /* 원형 */position: relative;}
.check-circle-icon::after {content: "";position: absolute;left: 8px;top: 5px;width: 7px;height: 12px;border-right: 2px solid #fff; /* 흰색 체크 */border-bottom: 2px solid #fff;transform: rotate(45deg);}
.check-circle-icon.type{background-color:#8ac8ba;margin:0 auto;}
.check-circle-btn {display:flex;gap:10px;align-items:center;font-size:1.143rem;font-weight:700;cursor:pointer;background:#ffffff;width:50%;padding:12px 0;justify-content:center;border-radius:50px;}
.check-circle-btn:hover {background:#8ac8ba;color:#ffffff;border:1px solid #8ac8ba;}
.check-circle-btn:hover .check-circle-icon {background-color:#35BF9F;}
.check-circle-btn.selected {background:#8ac8ba;color:#ffffff;border:1px solid #8ac8ba;}
.check-circle-btn.selected .check-circle-icon {background-color:#35BF9F;}

/* 마하 홈페이지 */

.home-title {font-size:clamp(2rem,5vw,4.143rem);font-weight:700;color:#222222;;max-width:1440px;width:100%;}
.home-title.center {text-align:center;}
.home-title.regular {font-size:clamp(1.8rem,5vw,2.571rem);}
.home-title-logo {font-size:clamp(1.143rem,5vw,1.429rem);font-weight:700;color:#222222;;max-width:1440px;width:100%;display:flex;align-items:center;}
.home-title-logo:before {content: url('/images/homepage/title-maha-icon.svg');display: inline-block;vertical-align: middle;margin-right: 10px;width: auto;height: auto;}
.home-title .highlight {font-weight:700;color:#35bf9f;}
.home-sub-title {font-size:clamp(1.3rem,2vw,1.429rem);font-weight:500;color:#666666;max-width:1440px;width:100%;}
.home-sub-title.center {text-align:center;}

.message-wrapper, .message-wrapper .message, .message-wrapper .click-message {opacity: 0;transform: translateY(10px);}
.message-wrapper.show, .message-wrapper .message.show, .message-wrapper .click-message.show{animation: bubbleFadeIn 0.5s ease-out forwards;}
@keyframes bubbleFadeIn {
  0% {opacity: 0;transform: translateY(10px) scale(0.95);}
  100% {opacity: 1;transform: translateY(0) scale(1);}
}
.main-container {display:flex;flex-direction:column;align-items:center;padding:0 20px;}
.top-content {display:flex;flex-direction:column;gap:30px;padding-top:150px;width:100%;}
.top-content-title {font-weight:400;color:transparent;font-size:clamp(3.3rem,6vw,5.714rem);text-align:center;letter-spacing:-0.15px;line-height:normal;}
.top-content-title .text-wrapper {font-weight:700;color:#222222;letter-spacing:-0.12px;}
.top-content-title .span {font-weight:700;color:#35bf9f;letter-spacing:-0.12px;}
.top-content-desc {font-weight:500;color:#666666;font-size:clamp(1.3rem,2.5vw,1.429rem);text-align:center;letter-spacing:-0.15px;line-height:30px;}
.group-3 {display:flex;gap:20px;margin:0 auto;padding-top:20px;width:100%;justify-content:center;}
.item-link {width:15rem;height:5rem;border-radius:73px;overflow:hidden;border:1px solid;border-color:#222222;box-shadow:0px 7px 21px #00000014;font-weight:700;color:#222222;font-size:clamp(1.3rem,2.5vw,1.429rem);text-align:center;letter-spacing:-0.15px;line-height:5rem;white-space:nowrap;}
.div-wrapper {width:15rem;height:5rem;background-color:#35bf9f;border-radius:73px;overflow:hidden;font-weight:700;color:#ffffff;font-size:clamp(1.3rem,2.5vw,1.429rem);text-align:center;letter-spacing:-0.15px;line-height:5rem;white-space:nowrap;}

.screen { width: 100%; }
.screen .group-wrapper { max-width: 1440px; margin: 70px auto 0; padding: 0 16px; }
.screen .overlap-group { position: relative; width: 100%; aspect-ratio: 1440 / 730; }
.card { position: absolute; width: 24.306%; height: 57.397%; border-radius: 30px; overflow: hidden; box-shadow: 0px 4px 30px #0000000d; cursor: pointer; will-change: transform; }
.card-bg[class*="card0"] { position: relative; width: 100%; height: 100%; background-position: 50% 50%; background-repeat: no-repeat; transition: transform 0.6s, opacity 0.6s; }
.card-bg[class*="card0"]::before { content: ''; position: absolute; inset: 0; background-position: center; background-repeat: no-repeat; opacity: 0; transition: opacity 0.6s; }
.card-bg[class*="card0"]:hover { opacity: 0.9; transform: scale(1.05); z-index: 1000; }
.card-bg[class*="card0"]:hover::before { opacity: 1; z-index: 1000; }
.card-bg.card01 { background-image: url('/images/homepage/main_card_01.svg'); }
.card-bg.card01::before { background-image: url('/images/homepage/main_card_01_r.svg'); }
.card-bg.card02 { background-image: url('/images/homepage/main_card_02.svg'); }
.card-bg.card02::before { background-image: url('/images/homepage/main_card_02_r.svg'); }
.card-bg.card03 { background-image: url('/images/homepage/main_card_03.svg'); }
.card-bg.card03::before { background-image: url('/images/homepage/main_card_03_r.svg'); }
.card-bg.card04 { background-image: url('/images/homepage/main_card_04.svg'); }
.card-bg.card04::before { background-image: url('/images/homepage/main_card_04_r.svg'); }
.card-bg.card05 { background-image: url('/images/homepage/main_card_05.svg'); }
.card-bg.card05::before { background-image: url('/images/homepage/main_card_05_r.svg'); }
.card-engineer { top: 5.479%; left: 37.847%; }
.card-client { top: 5.479%; left: 75.625%; border-radius: 30px 150px 30px 200px; }
.card-mask { top: 31.233%; left: 18.125%; border-radius: 200px 200px 30px 30px; }
.card-executive { top: 5.479%; left: 0; border-radius: 500px; }
.card-business { top: 28.904%; left: 53.75%; width: 31.667%; height: 60%; box-shadow: none; }
.blur-circle { position: absolute; width: 14.444%; height: 28.493%; top: 71.507%; left: 78.333%; border-radius: 50%; box-shadow: 0px 7px 21px #00000014; filter: blur(15px); background: linear-gradient(97deg, rgba(189, 255, 240, 0.6) 0%, rgba(13, 145, 129, 0.6) 100%); }
.blur-circle.small { width: 10.278%; height: 20.274%; top: 0; left: 18.333%; }
.card-title-en { position: absolute; font-family: "Pretendard-Regular", Helvetica, Arial, sans-serif; font-weight: 400; color: #1f5b6d; letter-spacing: -0.15px; top: 6.575%; font-size: clamp(12px, 1.1vw, 18px); }
.card-title-ko { position: absolute; font-family: "Pretendard-Bold", Helvetica, Arial, sans-serif; font-weight: 700; color: #222; letter-spacing: -0.15px; top: 10.274%; font-size: clamp(16px, 3.2vw, 46px); }
.card-title-en.right, .card-title-ko.right { left: 3.542%; text-align: right; }
.card-title-en:not(.right), .card-title-ko:not(.right) { left: 9.722%; }
.mask-img { position: absolute; width: 24.514%; height: 57.671%; top: 0; left: -0.069%; object-fit: cover; }
.layer { position: absolute; width: 20.486%; height: 31.918%; top: 25.479%; left: 0; }

.conversation-card {width:100%;max-width:1440px;margin:0 auto;padding:4.286rem 4.286rem 3.5rem 4.286rem;background:#ffffff66;border-radius:30px;box-shadow:0 4px 30px #0000000d;display:flex;flex-direction:column;gap:1.5rem;}
.conversation-card .conversation-header {display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content: center;}
.conversation-card .conversation-header img {width:clamp(14rem, 1.4vw, 18rem);}
.conversation-card .title {font-size:clamp(1.2rem,2vw,1.714rem);color:#111c22;}
.conversation-card .chip {display:flex;align-items:center;gap:0.5rem;padding:0.5rem 1.2rem;border:1px solid #c3c7c9;border-radius:999px;background:#fff;color:#c3c7c9;font-size:clamp(1rem,1.8vw,1.714rem);cursor:pointer;justify-content:space-between;width:12rem;}
.conversation-card .chip.active {border-color:#35bf9f;color:#35bf9f;}
.conversation-card .chip-arrow {width:10px;height:10px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);}
.conversation-card .chip-arrow.disabled {color:#c3c7c9;}
.conversation-card .divide_line {border:none;border-top:1px solid #ddd;width:100%;}
.conversation-body {display:flex;flex-direction:column;gap:2rem;max-height:750px;overflow-y:auto;padding-right:10px;}
.conversation-card .message-wrapper {display:flex;flex-direction:column;gap:0.5rem;margin:10px;}
.conversation-card .message-wrapper.right {align-items:flex-end;}
.conversation-card .message {max-width:620px;padding:1rem 1.5rem;border-radius:16px;font-size:clamp(1.2rem,1.8vw,1.714rem);line-height:1.4;margin:0px 3.1rem;font-weight:500;color:#222222;}
.conversation-card .message:not(:first-child) {margin-top:1.643rem;}
.conversation-card .message.right {text-align:right;}
.conversation-card .message.white {background:#ffffff;}
.conversation-card .message.green {background:#35bf9f;color:#fff;}
.conversation-card .message-btn {display:flex;flex-wrap:wrap;gap:0.714rem;margin:1.643rem 3.1rem 0 3.1rem;}
.conversation-card .message-btn button {border:1px solid #35BF9F;padding:13px 20px;border-radius:50px;color:#35BF9F;font-size:clamp(1.2rem,1.8vw,1.714rem);font-weight:500;background:#ffffff;}
.conversation-card .click-message {width: 100%;max-width: 500px;border-radius: 16px;margin:1.643rem 3.1rem 0 3.1rem;box-sizing: border-box;}
.conversation-card .click-message .message-title {background: #35BF9F;border-top-left-radius: 16px;border-top-right-radius: 16px;padding: 1.5rem 2rem;font-size: clamp(1.2rem, 2vw, 1.714rem);color: #ffffff;position: relative;}
.conversation-card .click-message .message-title font {font-weight:700;}
.conversation-card .click-message .message-title.bg:after {content: "";background: url('/images/homepage/message-human_01.svg') no-repeat center center;background-size: contain;position: absolute;bottom: 0;right: 1.5rem;width: clamp(80px, 10vw, 140px);height: auto;aspect-ratio: 1.4;}
.conversation-card .click-message ul {list-style: none;padding: 0 2rem;margin: 0;background: #ffffff;border-bottom-left-radius: 16px;border-bottom-right-radius: 16px;}
.conversation-card .click-message ul li {padding: 1rem 0;border-bottom: 1px solid #DCDCDC;font-size: clamp(1rem, 2vw, 1.571rem);font-weight: 500;color: #222222;transition: 0.3s;}
.conversation-card .click-message ul li:last-child {border-bottom: none;}
.conversation-card .click-message ul li font {font-weight: 600;color: #35bf9f;}
.conversation-card .click-message ul li:hover {opacity:0.6;cursor:pointer;}
.conversation-card .author {display:flex;align-items:center;gap:0.5rem;}
.conversation-card .avatar {width:3.429rem;height:3.429rem;border-radius:50%;}
.conversation-card .author-name {font-weight:800;font-size:clamp(1.1rem,1.8vw,1.429rem);color:#222;}
.conversation-card .author-time {font-size:clamp(0.9rem,1.2vw,0.857rem);color:#35bf9f;}
.conversation-card .author-time.right {text-align:right;}
.conversation-title {font-size:clamp(2rem,5vw,4.143rem);font-weight:700;color:#222222;margin:150px 0 70px 0;max-width:1440px;width:100%;}
.conversation-title.center {text-align:center;}
.conversation-title .highlight {font-weight:700;color:#35bf9f;}

.font-regular { font-family: "Pretendard-Medium", Helvetica, Arial, sans-serif; font-weight: 500; }
.font-bold    { font-family: "Pretendard-Bold", Helvetica, Arial, sans-serif; font-weight: 700; }
.font-xbold   { font-family: "Pretendard-ExtraBold", Helvetica, Arial, sans-serif; font-weight: 800; }

.section-benefits {position: relative;max-width: 1440px;width: 100%;margin: 0 auto;padding: 0 20px;box-sizing: border-box;}
.section-benefits .headline {height: auto;font-size: clamp(2rem, 4vw, 4.143rem);letter-spacing: -0.15px;line-height: 1.2;margin-top: 80px;}
.section-benefits .headline .t1 {color: #222222;}
.section-benefits .headline .t2 {color: #111c22;}
.section-benefits .headline .t3 {color: #35bf9f;}
.section-benefits .benefits-body {width: 100%;display: grid;grid-template-columns: 1fr 1fr;grid-column-gap: 40px;margin-top: 70px;}
.section-benefits .card-hero {position: relative;width: 100%;height:auto;background:  #ffffff;border-radius: 30px;box-shadow: 0px 4px 30px #0000000d;overflow: hidden;}
.section-benefits .hero-visual {display: flex;justify-content: center;align-items: center;height: 500px;background: linear-gradient(0deg, rgba(240,243,251,1) 0%, rgba(240,243,251,1) 100%), linear-gradient(0deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.1) 100%);border-radius: 30px 30px 0 0;position: relative;}
.section-benefits .hero-visual video {width: 100%;height: 100%;}
.section-benefits .hero-copy {margin: 50px 0 0 40px;width: calc(100% - 80px);}
.section-benefits .hero-title {position: relative;font-size: clamp(1.8rem, 3vw, 2.571rem);letter-spacing: -0.15px;color: #222222;white-space: nowrap;}
.section-benefits .hero-desc {margin: 20px 0;font-size: clamp(1.2rem, 2vw, 1.429rem);line-height: 1.6;letter-spacing: -0.15px;color: #666666;}
.section-benefits .chip {margin-bottom: 10px;padding: 4px 16px;background: #f1f8ff;border-radius: 160px;position: relative;display: inline-block;align-items: center;box-sizing: border-box;}
.section-benefits .chip img {width: 17px;height: 17px;display: inline-block;position: absolute;top: 10px;}
.section-benefits .chip span {color: #35bf9f;font-size:  clamp(1rem, 2vw, 1.143rem);;line-height: 30px;padding-left: 22px;}
.section-benefits .benefit-list {width: 100%;display: flex;flex-direction: column;gap: 30px;}
.section-benefits .feature-row {width: 100%;min-height: 116px;border-radius: 30px;background: #ffffff66;padding: 20px 40px;box-shadow: 0px 4px 30px #00000014;cursor: pointer;display: flex;justify-content: space-between;align-items: center;}
.section-benefits .feature-title {font-size: clamp(1.4rem, 2vw, 1.9rem);letter-spacing: -0.15px;color: #222222;white-space: nowrap;}
.section-benefits .feature-row .plus-icon {position: relative;width: 30px;height: 30px;}
.section-benefits .feature-row .plus-icon:before,
.section-benefits .feature-row .plus-icon:after {content: "";position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 27px;height: 2px;background: #666666;}
.section-benefits .feature-row .plus-icon:after {transform: translate(-50%, -50%) rotate(90deg);}
.section-benefits .feature-row.is-strong {background:  #ffffff;border: 1px solid #35bf9f;}
.section-benefits .feature-row.is-strong .plus-icon:before,
.section-benefits .feature-row.is-strong .plus-icon:after {background: #35bf9f;}
.section-benefits .feature-row.is-strong .feature-title {color: #35bf9f;font-weight: 600;}
.section-benefits .feature-row:hover {background:  #ffffff;border: 1px solid #35bf9f;}
.section-benefits .feature-row:hover .feature-title {color: #35bf9f;font-weight: 600;}

.pricing_container { max-width: 1440px; margin-inline: auto;width:100%;}
.pricing_container .grid { display: grid; gap: 40px; }
.pricing_container .grid-3 { display: grid;grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));gap: 40px;}
.pricing_container .h1 { font-size: 2.286rem; font-weight: 700; color: #083340; margin: 0; }
.pricing_container .strong { color: #083340; font-weight: 700; }
.pricing_container .pill { border-radius: 999px; }
.pricing_container .btn { display: flex; align-items: center; justify-content: center; height: 70px; border-radius: 999px; font-size: 1.429rem; font-weight: 700; text-decoration: none; }
.pricing_container .btn--solid-blue { background: #1f5b6d; color: #fff; }
.pricing_container .btn--solid-green { background: #35bf9f; color: #fff; }
.pricing_container .btn--outline { background: #fff; color: #222222; border: 1px solid #222222; }
.pricing_container .pricing_divider { height: 1px; background: #e8e8e8;margin-bottom:24px;}
.pricing_container { position: relative; }
.pricing_container .plan-card { background: #ffffff; border-radius: 30px; box-shadow: 0 4px 30px #0000000d; padding: 40px; display: flex; flex-direction: column; /* gap: 24px; */ min-height: 640px; }
.pricing_container .plan-card {transition: opacity 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;opacity: 1;}
.pricing_container .plan-card:not(.selected):not(.blue):hover {transform: scale(1.05);box-shadow: 0 8px 40px #0000001a;}
.pricing_container .plan-card.selected {transform:translate(0, 0);box-shadow: 0 8px 40px #0000001a;animation: ribbon-bounce 3s ease-in-out infinite;}
.pricing_container:hover .plan-card {opacity: 0.5;}
.pricing_container:hover .plan-card:not(.selected):not(.blue):hover {opacity: 1;}
.pricing_container:hover .plan-card.selected  {opacity: 1;}
.pricing_container .plan-card__header { display: flex; align-items: center; justify-content: space-between;margin-bottom:24px;}
.pricing_container .plan-card__title { font-size: 1.714rem; font-weight: 800; margin: 0; }
.pricing_container .plan-card__title--blue { color: #1f5b6d; }
.pricing_container .plan-card__title--green { color: #35bf9f; }
.pricing_container .plan-card__title--ink { color: #083340; }
.pricing_container .plan-card_desc { font-size: 1.714rem; line-height: 1.6;color:#222222;margin-bottom:24px;}
.pricing_container .plan-card_desc .em { font-weight: 700; }
.pricing_container .plan-card:nth-child(1) .em { color: #083340; }
.pricing_container .plan-card:nth-child(2) .em { color: #1f5b6d; }
.pricing_container .plan-card:nth-child(3) .em { color: #35bf9f; }
.pricing_container .plan-card_meta { display: grid; grid-template-columns: 1fr auto; gap: 8px 24px; align-items: center;margin-bottom:24px;}
.pricing_container .plan-card_meta dt, .plan-card_meta dd { margin: 0; font-size: 1.143rem; }
.pricing_container .plan-card_meta dt { color: #222222; font-weight: 500; }
.pricing_container .plan-card_meta dt:before {content:"";width:17px;height:17px;background:url('/images/homepage/check_icon_green.svg') no-repeat center/contain;display:inline-block;margin-right:8px;vertical-align:middle;}
.pricing_container .plan-card:nth-child(1) .plan-card_meta dt:before {background:url('/images/homepage/check_icon_navy.svg') no-repeat center/contain;}
.pricing_container .plan-card:nth-child(2) .plan-card_meta dt:before {background:url('/images/homepage/check_icon_light_navy.svg') no-repeat center/contain;}
.pricing_container .plan-card:nth-child(3) .plan-card_meta dt:before {background:url('/images/homepage/check_icon_green.svg') no-repeat center/contain;}
.pricing_container .plan-card_meta dd { color: #222222; font-weight: 700; text-align: right; }
.pricing_container .plan-original-price {display:flex;gap:5px;align-items:center;justify-content:flex-end}
.pricing_container .plan-original-price .discount-percent {font-size:1.143rem;color:#1F5B6D;background:#1F5B6D24;padding:4px 11px;border-radius:30px;font-weight:700;text-align:center;}
.pricing_container .plan-original-price .discount-percent.m12 {background:rgba(53, 191, 159, 0.18);color:#35BF9F;}
.pricing_container .plan-original-price .original-amount {font-size:1.429rem;color:#C3C7C9;font-weight:500;text-decoration:line-through;}
.pricing_container .plan-original-price .free {font-weight:500;font-size:1.429rem;color:#222222;}
.pricing_container .plan-card_price { display: flex; align-items: baseline; justify-content:flex-end;gap:10px;margin-bottom:24px;}
.pricing_container .plan-card_price .amount { font-size: 3rem; font-weight: 800; }
.pricing_container .plan-card_price .unit { font-size: 1rem; color: #666666; }
.pricing_container .plan-card__badge { position: relative; }
.pricing_container .ribbon {position: absolute;transform:translate(0, 0);bottom:45px;right:-30px;background: #083340;color: #fff;padding: 13px 20px;border-radius: 30px;font-size: 1.143rem;font-weight: 400;box-shadow: 0 4px 30px #0000000d;white-space: nowrap;animation: ribbon-bounce 3s ease-in-out infinite;}
.pricing_container .ribbon::after {content: '';position: absolute;bottom: -6px;left:50%;width: 0;height: 0;transform:translate(-50%,0);border-style: solid;border-width: 6px 6px 0 6px;border-color: #083340 transparent transparent transparent;}
.pricing_container .ribbon .hi { color: #78ffe4; font-weight: 500; }
@keyframes ribbon-bounce {
  0%, 100% {transform: translate(0, 0);}
  50% {transform: translate(0, -10px);}
}
aside.note { background: #EBEDF3; border-radius: 30px; padding: 40px; margin-top: 48px; }
aside.note.full {width:100%;max-width:1440px;}
aside.note.full li {text-align:left;}
aside.note .note__title { display: flex; align-items: center; gap: 12px; font-size: 1.429rem; font-weight: 700; margin: 0 0 16px;color:#222222;}
aside.note .note__title:before {content:"";width:20px;height:20px;background:url('/images/homepage/info_icon_green.svg') no-repeat center/contain;display:inline-block;}
aside.note .note__list { margin: 0; padding-left: 24px; line-height: 1.7; list-style: disc; font-size: 1.143rem;}
aside.note .note__list li { color: #666666; }
aside.note .note__list li strong { color: #35bf9f; }
aside.note .chk-content {display:flex;flex-direction:column;gap:5px;}
aside.note .chk-content .chk-item {font-size:1.143rem;display:flex;justify-content:space-between;align-items:center;}
aside.note .chk-content .chk-item div {display: flex;gap:10px;}
aside.note .chk-content .chk-item font {color:#35BF9F;}
aside.note .chk-content .chk-item button {color:#35BF9F;text-decoration:underline;word-break:keep-all;}

.normal-content-box {background:#ffffff;padding:30px;width:100%;max-width:1440px;/* box-shadow:0px 4px 30px #0000000d; */}
.normal-content-box ul {margin: 0; padding-left: 24px; line-height: 1.7; list-style: disc; font-size: 1.143rem;}
.normal-content-box ul li { color: #222222; }
.normal-content-box ul li strong { color: #35bf9f; }

.faq-container {position: relative;max-width: 1440px;width:100%;}
.faq-container .faq-title {font-size:2.571rem;border-bottom:1px solid #DCDCDC;padding-bottom:30px;color:#222222;font-weight:700;}
.faq-container .faq-item {position: relative;display:flex;justify-content:flex-start;align-items:center;width:100%;height:7.143rem;font-size:1.714rem;color:#222222;font-weight:700;border-bottom:1px solid #DCDCDC;cursor:pointer;transition:0.3s ease;}
.faq-container .faq-item:after {content:"";width: 15px;height: 15px;position:absolute;top:40%;right:10px;border-top: 2px solid #222222;border-right: 2px solid #222222;transform: rotate(135deg);transition:0.6s ease;}
.faq-container .faq-item.current {color:#35BF9F;}
.faq-container .faq-item.current:after {transform: rotate(-45deg);transition:0.6s ease;}
.faq-container .faq-item-desc {position: relative;background-color:#EBEDF3;display:none;justify-content:flex-start;align-items:center;width:100%;height:auto;padding:1.429rem 2.143rem;font-size:1.143rem;line-height:25px;color:#666666;font-weight:700;border-bottom:1px solid #DCDCDC;cursor:pointer;transition:0.3s ease;}
.faq-container .faq-item.current + .faq-item-desc{display:flex;}

.maha-main-banner {margin:10.71rem 0 9.2857rem 0;background:url('/images/homepage/maha_main_banner.svg') no-repeat;box-shadow:0px 7px 21px #00000014;border-radius:30px;max-width:1440px;width:100%;height:400px;display:flex;justify-content:center;align-items:center;flex-direction: column;gap:30px;text-align:center;}
.maha-main-banner span {font-weight:500;color:#222222;font-size:clamp(1.9rem, 3vw, 3.571rem);line-height:65px;}
.maha-main-banner span font {color:#35BF9F;font-weight:700;}
.maha-main-banner button{padding:1.643rem 6.786rem;font-size:1.429rem;background:#35BF9F;border-radius:50px;font-weight:600;color:#ffffff;}.pricing-table-wrapper { max-width:1440px; width:100%; margin:0 auto;margin-bottom:70px;}

.pricing-table-wrapper table { width:100%; border-collapse:collapse; color:#222222; }
.pricing-table-wrapper table thead th { height:60px; background-color:#EBEDF3; border:1px solid #DCDCDC; text-align:center; font-size:clamp(1.2rem, 1.3vw, 1.429rem); font-weight:700; padding:0 2.143rem; }
.pricing-table-wrapper table thead th:nth-child(1) { text-align:left; }
.pricing-table-wrapper table thead th:nth-child(2) { color:#083340; }
.pricing-table-wrapper table thead th:nth-child(3) { color:#1F5B6D; }
.pricing-table-wrapper table thead th:nth-child(4) { color:#35BF9F; }
.pricing-table-wrapper table tbody th { height:60px; background-color:#EBEDF3; border:1px solid #DCDCDC; text-align:left; font-size:clamp(1.2rem, 1.3vw, 1.429rem); font-weight:700; padding:0 2.143rem; padding-left:30px; }
.pricing-table-wrapper table tbody td { height:50px; background-color:#FFFFFF; border:1px solid #DCDCDC; text-align:center; font-size:clamp(1rem, 1vw, 1.143rem); padding:0 2.143rem; }
.pricing-table-wrapper table tbody td:nth-child(1) { text-align:left; font-weight:500; }
.pricing-table-wrapper table tbody td.bold { font-weight:700; }
.pricing-table-wrapper table tbody td.checkmark { background:#F9FFFE; }
.pricing-table-wrapper table tbody td.checkmark:before { content:""; background:url('/images/homepage/check_icon_green.svg') no-repeat center center; background-size:contain; display:block; width:1.286rem; height:1.286rem; margin:0 auto; }

.maha-input-container {display: flex;flex-direction: column;align-items: center;gap: 30px;width:100%;max-width:1440px;}
.maha-input-container dl{display: flex;flex-direction: column;gap: 10px;width:100%;max-width:640px;}
.maha-input-container dl dt{font-size: 1.429rem;font-weight: 700;color: #222222;}
.maha-input-container dl dt.essential:after {content: "*"; color: #35BF9F; margin-left: 5px;}
.maha-input-container dl dd {display:flex;gap:10px;}
.maha-input-container dl dd input[type="text"] {width: 100%;height: 50px;padding: 0 30px;border: 1px solid #DCDCDC;border-radius: 50px;font-size: 1.143rem;color: #666666;box-sizing: border-box;outline: none;}
.maha-input-container dl dd textarea {width: 100%;height: 240px;padding:20px 30px;border: 1px solid #DCDCDC;border-radius: 30px;font-size: 1.143rem;color: #666666;box-sizing: border-box;outline: none;resize: none;}
.maha-input-container dl dd .system-text{font-size: 1.143rem;width: 100%;padding: 12px 30px;border-radius: 50px;background:#EBEDF3;font-weight:500;color:#666666;}
.maha-input-container dl dd > button {min-width: 7rem;padding:12px 0;font-size: 1rem;border: none;border-radius: 50px;color:#35BF9F;cursor: pointer;font-weight: 500;border:1px solid #35BF9F;}
.maha-input-container dl dd > button:hover {opacity:0.7;background:#35BF9F;color:#ffffff;}
.maha-input-container dl dd > button:disabled {border:1px solid #DCDCDC;color:#ffffff;cursor:not-allowed;}
.maha-input-container .system-chk {font-weight:500;color:#666666;font-size:1.071rem;margin-left:10px;color: #666666;}
.maha-input-container .system-msg {font-weight:500;color:#666666;font-size:1.071rem;margin-left:10px;color: #35BF9F;}
.select-text-box {display: flex;align-items: center;width: 100%;height: 50px;padding: 0 10px;border: 1px solid #DCDCDC;border-radius: 50px;box-sizing: border-box;background:#ffffff;}
.select-text-box select {width: 15%;min-width:100px;height: 100%;border: none;background: transparent;font-size: 1.143rem;color: #222222;outline: none;appearance: none;-webkit-appearance: none;-moz-appearance: none;cursor: pointer;}
.select-text-box .divider {position:relative; width: 1px;height: 40%;background: #DCDCDC;margin: 0 15px;}
.select-text-box .divider:before {content: "";position: absolute;width: 9px;height: 9px;border: solid #222222;border-width: 0 1px 1px 0;transform: rotate(45deg);right: 25px;top: 35%;transform: translateY(-50%) rotate(45deg);}
.select-text-box input[type="text"] {flex: 1;height: 45px !important;border: none !important;font-size: 1.143rem;color: #666666;outline: none;padding-left:10px !important;}
.maha-input-container .btn_area {display: flex;gap:20px;width:100%;max-width:640px;margin-bottom:150px;}
.maha-input-container .btn_area button.half {width:50% !important;}
.maha-input-container .inquiry-apply-btn {width:100%;max-width:640px;padding:20px;background: #35BF9F;border-radius: 50px;color: #FFFFFF;font-size: 1.429rem;font-weight: 700;border: none;}
.maha-input-container .partner-apply-btn {width:100%;max-width:640px;padding:20px;background: linear-gradient(90deg, #35BF9F, #1F5B6D);border-radius: 50px;color: #FFFFFF;font-size: 1.429rem;font-weight: 700;border: none;}
.maha-input-container .normal-btn {width:100%;max-width:640px;padding:20px;background:none;border-radius: 50px;color: #222222;font-size: 1.429rem;font-weight: 700;border: 1px solid #222222;}

.policy-container{max-width:1440px;height:580px;display:flex;flex-direction:column;align-items:center;gap:20px;border:1px solid #DCDCDC;padding:40px 20px 40px 40px;border-radius:25px;background:#ffffff;margin-bottom:30px;}
.policy-container .scrollContainer{overflow-y:auto;padding-right:150px;}
.policy-container .numInfo{display:flex;gap:10px;}
.policy-container .numInfo span:last-child{width:100%;}
.policy-container .effectiveDate {width:100%;height:50px;border-radius:5px;text-align:left;line-height:50px;font-weight:700;font-size:1.143rem;color:#222222;}
.policy-container .effectiveDate font {color:#35BF9F;}
.policy-container .policyContent{font-size:1.143rem;font-weight:500;display:flex;flex-direction:column;gap:25px;color:#666666;}
.policy-container .policyContent dl dt{color:#222222;margin-bottom:10px;font-weight:700}
.policy-container .policyContent dl dt.title{font-size:1.429rem;}
.policy-container .policyContent dl dd{line-height:25px;}
.policy-container .policyContent a{display:contents;color:#4aa6d7;}
.policy-container table.full{width:100%;}
.policy-container table.center{margin:0 auto;}
.policy-container table tr th{background:#EBEDF3;padding:10px;font-weight:600;font-size:1.143rem;border-bottom:1px solid #e8e8e8;}
.policy-container table tr td{text-align:center;padding:10px;border-bottom:1px solid #e8e8e8;font-weight:500;font-size:1.143rem;}
.policy-hisitory-container{width:100%;max-width:1440px;height:150px;;display:flex;flex-direction:column;align-items:center;gap:20px;border:1px solid #DCDCDC;padding:40px 40px 0 40px;border-radius:25px;background:#ffffff;margin:0 auto;}
.policy-hisitory-container table.full{width:100%;}
.policy-hisitory-container table.center{margin:0 auto;}
.policy-hisitory-container table tr th{background:#EBEDF3;padding:10px;font-weight:700;font-size:1.429rem;color:#222222;border-bottom:1px solid #e8e8e8;}
.policy-hisitory-container table tr td{text-align:center;padding:10px;border-bottom:1px solid #e8e8e8;font-weight:500;font-size:1.143rem;color:#222222;}
.bottom-single-btn{background:#43AB94;margin:0 auto;margin-top:50px;margin-bottom:70px;color:#ffffff;padding:1.429rem 8.571rem;border-radius:50px;font-size:1.429rem;font-weight:700;}

.functions_container { max-width: 1440px; margin-inline: auto;width:100%;display: flex; flex-direction: column; gap: 70px;margin-bottom:150px;}
.functions_container .functions-area {display: flex; gap: 40px; align-items: center;}
.function-img { width: 50%; height: 500px; background: url('/resources/images/homepage/maha/main_functions_img.png') no-repeat center/contain;display: flex; align-items: center; justify-content: center;border-radius:30px;}
.function-img video { width: 100%; height: 100%; object-fit: cover; border-radius:30px;}
.fnc-info-container {position: relative; width: 50%; }
.fnc-info-container .faq-title {font-size:2.571rem;border-bottom:1px solid #DCDCDC;padding-bottom:30px;color:#222222;font-weight:700;}
.fnc-info-container .faq-item {position: relative;display:flex;justify-content:flex-start;align-items:center;width:100%;padding:1.429rem 0;font-size:1.429rem;color:#222222;font-weight:700;border-bottom:1px solid #DCDCDC;cursor:pointer;transition:0.3s ease;}
.fnc-info-container .faq-item:after {content:"";width: 15px;height: 15px;position:absolute;top:40%;right:10px;border-top: 2px solid #222222;border-right: 2px solid #222222;transform: rotate(135deg);transition:0.6s ease;}
.fnc-info-container .faq-item.current {color:#35BF9F;}
.fnc-info-container .faq-item.current:after {transform: rotate(-45deg);transition:0.6s ease;}
.fnc-info-container .faq-item-desc {position: relative;background-color:#EBEDF3;display:none;justify-content:flex-start;align-items:center;width:100%;height:auto;padding:1.429rem 2.143rem;font-size:1.143rem;line-height:25px;color:#666666;font-weight:500;border-bottom:1px solid #DCDCDC;cursor:pointer;transition:0.3s ease;}
.fnc-info-container .faq-item.current + .faq-item-desc{display:flex;}

/* 리소스(게시판)  */
.maha-board-container {width: 100%;max-width: 1440px;}
.maha-board-container .maha-board-tab {display: flex;justify-content: center;gap: clamp(0.571rem, 2vw, 1.143rem);margin: clamp(1.429rem, 5vw, 3.571rem) 0 clamp(2.143rem, 6vw, 5rem) 0;}
.maha-board-container .maha-board-tab .maha-board-tab-item {box-shadow:0 4px 30px #0000000d;background: #ffffff;color: #666666;padding: clamp(0.571rem, 1.2vw, 0.857rem);width: clamp(5.714rem, 15vw, 15rem);text-align: center;border-radius: 50px;font-size: clamp(1.071rem, 1.5vw, 1.429rem);font-weight: 500;cursor: pointer;transition: all 0.2s ease;}
.maha-board-container .maha-board-tab .maha-board-tab-item.current {background: #35BF9F;color: #ffffff;font-weight: 700;}
.maha-board-container .maha-board-tab .maha-board-tab-item:hover {background: #35BF9F;color: #ffffff;font-weight: 700;}
.maha-board-container .maha-board-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: clamp(1.429rem, 4vw, 2.143rem);width: 100%;color: #666666;font-weight: 500;}
.maha-board-container .maha-board-header .left-area {font-size: clamp(1.071rem, 1.5vw, 1.429rem);color: #222222;}
.maha-board-container .maha-board-header .left-area font {font-weight: 700;}
.maha-board-container .maha-board-header .left-area .bar {margin: 0 0.357rem;color: #C3C7C9;}
.maha-board-container .maha-board-header .left-area font.highlight {color: #35BF9F;}
.maha-board-container .maha-board-header .right-area .search-text-box {position: relative;width: clamp(15rem, 35vw, 35rem);height: clamp(2.857rem, 4vw, 3.571rem);background: #ffffff;border-radius: 50px;box-shadow:0 4px 30px #0000000d;}
.maha-board-container .maha-board-header .right-area .search-text-box input {width: 100%;height: 100%;border: none;padding: 0 clamp(2.857rem, 3vw, 3.571rem) 0 clamp(1.429rem, 2vw, 2.143rem); font-size: clamp(1rem, 1.1vw, 1.143rem);border-radius: 50px;outline:none;}
.maha-board-container .maha-board-header .right-area .search-text-box:after {content: "";position: absolute;top: 50%;right: clamp(0.714rem, 2vw, 1.429rem);transform: translateY(-50%);background: url("/images/homepage/search-icon.svg") no-repeat;background-size: clamp(1.143rem, 2vw, 1.714rem);width: clamp(1.143rem, 2vw, 1.714rem);height: clamp(1.143rem, 2vw, 1.714rem);}
.maha-board-container .board-list-type {width: 100%;display: flex;margin-bottom:50px;flex-direction: column;}
.maha-board-container .board-list-type .board-item {display: flex;gap:30px;padding:20px 0;width:100%;border-top:1px solid #DCDCDC;cursor: pointer;}
.maha-board-container .board-list-type .board-item:last-child {border-bottom:1px solid #DCDCDC;}
.maha-board-container .board-list-type .board-item:hover .image-area img {transform: scale(1.05);}
.maha-board-container .board-list-type .board-item:hover .content-area .title {opacity: 0.6;}
.maha-board-container .board-list-type .board-item .image-area {width: clamp(110px, 20vw, 180px);height: clamp(90px, 15vw, 140px);min-width:110px;border-radius: 20px;}
.maha-board-container .board-list-type .board-item .image-area img {width: 100%;height: 100%;object-fit: cover;transition: all 0.3s ease;border-radius: 20px;}
.maha-board-container .board-list-type .board-item .content-area {display: flex;flex-direction: column;justify-content: center;flex-grow: 1;gap:30px;}
.maha-board-container .board-list-type .board-item .content-area .title {font-size: clamp(1.2rem, 2vw, 1.357rem);font-weight: 700;color: #222222;line-height: 1.4;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}
.maha-board-container .board-list-type .board-item.notice .content-area .title:before {content:"공지사항";width:5rem;height:25px;line-height:25px;background:#35BF9F;color:#ffffff;border-radius:50px;font-size:clamp(0.9rem, 2vw, 1rem);;display:block;text-align:center;line-height:24px;margin-bottom:10px;font-weight:500;}
.maha-board-container .board-list-type .board-item.dataroom .content-area .title:before {content:"자료실";width:5rem;height:25px;line-height:25px;background:#1F5B6D;color:#ffffff;border-radius:50px;font-size:1rem;display:block;text-align:center;line-height:24px;margin-bottom:10px;font-weight:500;}
.maha-board-container .board-list-type .board-item.guide .content-area .title:before {content:"가이드";width:5rem;height:25px;line-height:25px;background:#083340;color:#ffffff;border-radius:50px;font-size:1rem;display:block;text-align:center;line-height:24px;margin-bottom:10px;font-weight:500;}
.maha-board-container .board-list-type .board-item.event .content-area .title:before {content:"이벤트";width:5rem;height:25px;line-height:25px;background:#78FFE5;color:#222222;border-radius:50px;font-size:1rem;display:block;text-align:center;line-height:24px;margin-bottom:10px;font-weight:500;}
.maha-board-container .board-list-type .board-item .content-area .date {font-size: clamp(1rem, 1.5vw, 1.143rem);color: #666666;font-weight: 500;}
.maha-board-container .board-list-type2 {width: 100%;display: flex;gap: clamp(1rem, 1.5vw, 1.857rem);flex-wrap: wrap;justify-content: center;margin-bottom:50px;}
.maha-board-container .board-list-type2 .board-item {box-shadow:0 4px 30px #0000000d;width: clamp(16rem, 25vw, 24.286rem);height: clamp(22rem, 30vw, 28.929rem);background: #ffffff;border-radius: clamp(1.429rem, 2vw, 2.143rem);display: flex;flex-direction: column;cursor: pointer;transition:0.3s;}
.maha-board-container .board-list-type2 .board-item:hover .image-area img {transform: scale(1.13);}
.maha-board-container .board-list-type2 .board-item:hover .content-area .title {opacity: 0.6;}
.maha-board-container .board-list-type2 .board-item .image-area {width: 100%;height: clamp(14rem, 18vw, 18.571rem);overflow: hidden;border-top-left-radius: clamp(1.429rem, 2vw, 2.143rem);border-top-right-radius: clamp(1.429rem, 2vw, 2.143rem);border-bottom: 1px solid #E6E6E6;}
.maha-board-container .board-list-type2 .board-item .image-area img {width: 100%;height: 100%;object-fit: cover;transition: all 0.3s ease;}
.maha-board-container .board-list-type2 .board-item .content-area {padding: clamp(1.5rem, 2vw, 2.143rem);display: flex;flex-direction: column;justify-content: space-between;flex-grow: 1;}
.maha-board-container .board-list-type2 .board-item .content-area .title {font-size: clamp(1.2rem, 2vw, 1.357rem);font-weight: 700;color: #222222;line-height: 1.4;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}
.maha-board-container .board-list-type2 .board-item .content-area .date {font-size: clamp(1rem, 1.5vw, 1.143rem);color: #666666;font-weight: 500;}
.board-detail-area {width: 100%;max-width:1440px;}
.board-detail-area dl.board-title dt{font-size:1.714rem;color:#222222;font-weight:700;margin-bottom:25px;}
.board-detail-area dl.board-title dd{font-size:1rem;color:#666666;font-weight:500;}
.board-detail-area .board-content{margin-top:30px;padding:50px 0;border-top:1px solid #DCDCDC;border-bottom:1px solid #DCDCDC;}
.board-detail-area .board-move-area {display:flex;justify-content:space-between;;padding:20px 0;font-size:1.143rem;color:#666666;border-bottom:1px solid #DCDCDC;cursor:pointer;}
.board-detail-area .board-move-area span:first-child {color:#222222;font-weight:700;}
.board-detail-area .board-move-area span:nth-child(2) {flex:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;padding:0 30px;color:#222222;font-weight:500;}
.board-detail-area .board-move-area span:last-child {white-space:nowrap;}
.main-container .list-move-btn {width:60%;max-width:310px;padding:1.429rem;background: #35BF9F;border-radius: 50px;color: #FFFFFF;font-size: 1.429rem;font-weight: 700;border: none;margin:50px 0 150px 0;}

/* 드래그앤드롭  */
.uploader{width:100%;display:flex;flex-direction:column;}
.uploader.disabled {background:#E5E7ED;}
.uploader .dropzone{position:relative;border-radius:30px;width:100%;height:100%;background:#ffffff; padding:5rem 10rem; text-align:center; transition: .15s ease;display:flex;justify-content:center;align-items:center;flex-direction:column;}
.uploader .dropzone:hover {border-color:#666666; background: #f3f3f3;}
.uploader .dropzone.is-dragover{border-color:#666666; background:#f3f3f3;}
.uploader input[type="file"]{position:absolute;inset:0;opacity:0;cursor:pointer}
.uploader .cta{display:flex;gap:15px;justify-content:center;align-items:center;flex-wrap:wrap;flex-direction:column;font-weight:500;font-size:1.143rem;color:#C3C7C9;}
.uploader .cta:before{content:"";display:block;width:50px;height:50px;background:url('/images/homepage/add-circle-icon.svg') no-repeat center/contain}
.uploader .cta .btn{appearance:none;border:1px solid #cdd9d0;background:#fff;border-radius:10px;padding:10px 14px;cursor:pointer}
.uploader .cta .btn:hover{border-color:#666666;}
.uploader .accept{color:#57606a;font-size:13px;margin-top:10px}
.file-info{font-size:1rem;color:#666666;line-height:1.6;}

.uploader .files{margin-top:0;}
.uploader .file{display:grid;grid-template-columns: 1fr 120px 110px 28px;gap:10px;color:#222222;align-items:center;border:1px solid #cdd9d0;border-radius:10px;padding:10px 12px;margin-top:8px;font-weight:500;background:#ffffff;fint-size:1.143rem;font-weight:500;}
.uploader .file .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.uploader .file .status.ok{color:#1a7f37;}
.uploader .file .status.err{color:#d1242f;}
.uploader .file .status.success{color:#3f51b5;}
.uploader .file .remove{border:none;background:transparent;font-size:18px;cursor:pointer;line-height:1}
.uploader .file .remove:disabled{background:none !important;}
.uploader .file.disabled {background:#E5E7ED;}
.uploader .progress{height:8px;border-radius:999px;background:#eee;overflow:hidden}
.uploader .progress > span{display:block;height:100%;width:0%;background:#666666;transition:width .2s ease}

/* 마하 파트너 */
.partner-video-box { max-width: 1440px; margin-inline: auto;width:100%;display: flex; flex-direction: column; gap: 70px;margin-bottom:70px;}
.partner-video-box .partner-video-area {display: flex;align-items: center;}
.partner-video-box .partner-img { width: 50%; height: 500px; background: url('/resources/images/homepage/maha/main_functions_img.png') no-repeat center/contain;display: flex; align-items: center; justify-content: center;border-top-left-radius:30px;border-bottom-left-radius:30px;}
.partner-video-box .partner-img video { width: 100%; height: 100%; object-fit: cover; border-top-left-radius:30px;border-bottom-left-radius:30px;}
.partner-info-area {position: relative; width: 50%;height:500px;padding:40px;display:flex;flex-direction:column;justify-content:center;background:#EBEDF3;border-top-right-radius:30px;border-bottom-right-radius:30px;}
.partner-info-area .faq-title {font-size:2.571rem;padding-bottom:20px;color:#222222;font-weight:700;}
.partner-info-area .faq-sub-title {font-size:1.429rem;padding-bottom:15px;color:#222222;font-weight:700;}
.partner-info-area .faq-item-desc {position: relative;background-color:#EBEDF3;justify-content:flex-start;align-items:center;width:100%;height:auto;font-size:1.143rem;line-height:25px;color:#666666;font-weight:500;transition:0.3s ease;}
.partner-info-area .faq-item.current + .faq-item-desc{display:flex;}
.partner-info-area p.line {width:100%;height:1px;margin:30px 0;background:#DCDCDC;}

.partner-card-area {display: flex;flex-wrap: wrap;gap: 20px;width: 100%;max-width: 1440px;justify-content: center;margin: 0 auto;/* margin-bottom:150px; */}
.partner-card {flex: 1 1 calc(25% - 20px);min-width: 280px;height: 445px;background: #ffffff;border-radius: 30px;box-shadow: 0px 4px 30px #0000000d;overflow: hidden;transition: transform 0.2s ease;}
.partner-card:hover {transform: translateY(-5px);}
.partner-card-img {display: flex;justify-content: center;align-items: center;height: 250px;background: linear-gradient(0deg, rgba(240,243,251,1) 0%, rgba(240,243,251,1) 100%);border-radius: 30px 30px 0 0;}
.partner-card-content {margin: 30px 20px;}
.partner-card-title {font-size: clamp(1.3rem, 3vw, 1.429rem);letter-spacing: -0.15px;color: #222222;white-space: nowrap;text-align:center;}
.partner-card-title font {color: #35BF9F;}
.partner-card-desc {list-style: outside;margin: 20px 0;padding-left: 1.2em;font-size: clamp(1.071rem, 2vw, 1.071rem);line-height: 1.6;letter-spacing: -0.15px;color: #666;}
.partner-card-desc li span {display: block;margin-left: 0;}

/* media query */

@media (max-width: 1250px) {
	header .nav-links {display:none;}
	header .header-right {display:none;}
	
	/* 폼그리드 */
	.form-grid {grid-template-columns: 1fr; /* 한 컬럼으로 세로 쌓기 */column-gap: 0;row-gap: 12px;}
	.form-grid label {font-size: 1.25rem; /* 글자 조금 줄이기 */}
	.form-grid input[type="text"],
	.form-grid input[type="password"] {font-size: clamp(0.98rem, 0.9rem + 0.4vw, 1.143rem);padding: clamp(10px, 2.5vw, 12px) clamp(18px, 4.5vw, 30px);}
}

@media (max-width: 1024px) {
	.section-benefits .benefits-body {grid-template-columns: 1fr;}
	.section-benefits .hero-copy {margin: 40px 20px;width: auto;}
	.section-benefits .hero-visual {height: 350px;}
	.section-benefits .card-hero {display:none;}
	.section-benefits .benefit-list{gap:15px;}
	.screen .overlap-group { aspect-ratio: auto; min-height: unset; }
	.group-wrapper { padding: 0 12px; }
	.overlap-group { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
	.card, .blur-circle, .blur-circle.small, .mask-img, .layer { position: static !important; width: 100% !important; height: auto !important; transform: none !important; }
	.card { aspect-ratio: 350 / 419; }
	.card-business { aspect-ratio: 456 / 438; }
	.card-executive { order: 1; }
	.card-engineer { order: 2; }
	.card-mask { order: 3; }
	.card-client { order: 4; }
	.card-business { order: 5; }
	.blur-circle, .blur-circle.small { display: none; }
	.card-title-en { font-size: clamp(12px, 2.6vw, 16px); }
	.card-title-ko { font-size: clamp(16px, 4.5vw, 28px); }
	/* 서비스 단계 좌측정렬  */
  	.stepper {justify-content: flex-start;}
  	/* 체크 디자인 라디오 크기 변경 */
  	.custom-chk-radio {transform: scale(0.78);}
  	.add-product-container .service-option-area .add-option-box:last-child {margin-bottom:0;}
  	.charge-method-box {margin-bottom:0;}
	
	/* 서비스 신청 3단계 화면 */
	.add-product-container {flex-direction:column;}
	.add-product-container .basic-product-area,
	.add-product-container .service-option-area .option-box,
	.add-product-container .service-option-area .add-option-box {padding:clamp(1.7rem,3vw,2rem);}
	
	/* 주요기능 */
	.functions_container .functions-area {flex-direction: column;gap: 30px;}
  	.function-img,
  	.fnc-info-container {width: 100%;height: auto;}
  	.function-img video {height: auto;max-height: 400px;object-fit: contain;}
  	
  	/* 파트너  */
	.partner-card {flex: 1 1 calc(50% - 20px);}
	.partner-video-box .partner-video-area {flex-direction: column;}
  	.partner-video-box .partner-video-area .partner-img {width: 100%;height: auto;border-radius:0;}
  	.partner-video-box .partner-video-area .partner-img video {height: auto;max-height: 400px;object-fit: contain;border-radius:0;}
  	.partner-video-box .partner-video-area .partner-info-area {width: 100%;height: auto;border-radius:0;}
}

@media (max-width: 1000px) {
	html{font-size: 13px;}
}

@media (max-width: 768px) {
	html {font-size: 12px;}
	.step .step-label { font-size:0 !important;}
	.step .step-number {margin-right:0 !important;}
	.pricing-container {gap:2.5rem !important;}
	
	.section-benefits .headline {font-size: clamp(1.8rem, 5vw, 3rem);}
	.section-benefits .hero-visual video {width: 200px;height: 200px;}
	.section-benefits .feature-row {padding: 20px;min-height: 70px;}
	.section-benefits .feature-row .plus-icon:before {width: 20px;}
	.section-benefits .feature-row .plus-icon:after {width: 20px;}
	.overlap-group { grid-template-columns: 1fr; }
	.card { aspect-ratio: 7 / 9; }
  	/* 체크 디자인 라디오 크기 변경 */
  	.custom-chk-radio {transform: scale(0.73);}
  	
  	/* 폼그리드 */
  	.form-grid label {align-self: center;}
  	
  	/* 메인 대화박스  */
	.conversation-card .click-message {margin: 1.5rem auto 0 3.1rem;max-width: 90%;}
	.conversation-card .click-message .message-title {padding: 1rem 1.2rem;}
	.conversation-card .click-message ul {padding: 0 1.2rem;}
	
  	/* 파트너  */
	.partner-card {flex: 1 1 100%;}
}

@media (prefers-reduced-motion: reduce) {
  .card-bg[class*="card0"], .card-bg[class*="card0"]::before { transition: none !important; }
}