/* The Builders Ground — 업체 등록 페이지 */
.tb-reghead .tb-lead{margin:0;font-size:var(--fs-sub,20px);color:var(--ink);text-align:center;line-height:1.6}
.tb-reg-wrap{max-width:var(--tb-max,1380px);margin:0 auto;padding:54px 20px 80px}
.tb-step{margin-bottom:56px}
.tb-step:last-child{margin-bottom:0}
.tb-step-head{display:flex;align-items:baseline;gap:14px;margin-bottom:8px}
.tb-step-no{font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--gray,#6B6964)}
.tb-step-head h2{margin:0;font-size:var(--fs-title,34px);font-weight:700;color:var(--ink);line-height:1.25}
.tb-step-desc{margin:0 0 24px;font-size:var(--fs-body,16px);color:var(--gray,#6B6964)}

.tb-dl-grid{display:flex;justify-content:center;align-items:stretch;gap:32px;flex-wrap:wrap}
a.tb-dl-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;
 width:360px;max-width:100%;padding:40px 34px 36px;border:1px solid var(--hair,#D5D2C8);border-radius:4px;
 text-decoration:none!important;color:var(--ink)!important;background:transparent;
 transition:border-color .25s,box-shadow .25s,transform .25s}
a.tb-dl-card:hover{border-color:var(--ink);box-shadow:0 6px 22px rgba(15,30,63,.09);transform:translateY(-2px)}
.tb-dl-ico{display:block;width:34px;height:34px;color:var(--ink);margin-bottom:2px}
.tb-dl-ico svg{width:100%;height:100%;display:block}
.tb-dl-t{font-size:var(--fs-sub,20px);font-weight:700;line-height:1.3}
.tb-dl-d{font-size:14.5px;color:var(--gray,#6B6964);line-height:1.55;min-height:2.6em;flex:1 0 auto}
.tb-dl-b{margin-top:14px;display:inline-block;padding:10px 20px;border-radius:3px;
 background:var(--ink,#0F1E3F);color:var(--cream,#F5F1E8);font-size:14.5px;font-weight:600;
 transition:background-color .25s,color .25s}
a.tb-dl-card:hover .tb-dl-b{background:var(--onair,#FFC700);color:var(--ink,#0F1E3F)}

.tb-mail-box{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;
 padding:26px 30px;border:1px solid var(--hair,#D5D2C8);border-radius:4px;background:rgba(15,30,63,.025)}
.tb-mail-left{display:flex;flex-direction:column;gap:4px}
.tb-mail-label{font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--gray,#6B6964)}
a.tb-mail-addr{font-size:22px;font-weight:700;color:var(--ink)!important;text-decoration:none!important;word-break:break-all}
a.tb-mail-addr:hover{border-bottom:2px solid var(--ink)}
.tb-mail-right{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap}
.tb-copy-btn{background:transparent!important;color:var(--ink)!important;border:1px solid var(--hair,#D5D2C8)!important;
 border-radius:3px;padding:11px 20px;font-size:14.5px;font-weight:600;line-height:1.6;cursor:pointer;font-family:inherit;
 transition:border-color .25s,background-color .25s}
.tb-copy-btn:hover{border-color:var(--ink)!important;background:rgba(15,30,63,.05)!important}

.tb-note{margin:22px 0 0;padding:0;list-style:none}
.tb-note li{position:relative;padding-left:16px;margin-bottom:8px;font-size:15px;color:var(--gray,#6B6964);line-height:1.65}
.tb-note li:before{content:"";position:absolute;left:0;top:.68em;width:5px;height:5px;border-radius:50%;background:var(--hair,#D5D2C8)}
.tb-note b{color:var(--ink);font-weight:700}

@media(max-width:820px){
 .tb-reg-wrap{padding:36px 18px 60px}
 .tb-step{margin-bottom:42px}
 .tb-dl-grid{gap:16px}
 a.tb-dl-card{width:100%;padding:28px 22px 26px}
 .tb-dl-d{min-height:0}
 .tb-mail-box{flex-direction:column;align-items:flex-start;padding:22px}
 a.tb-mail-addr{font-size:18px}
 .tb-mail-right{width:100%}
 .tb-mail-right>*{flex:1 1 auto;text-align:center}
}


.tb-form-wrap{border:1px solid var(--hair,#D5D2C8);border-radius:4px;padding:38px 40px;background:rgba(15,30,63,.022)}
.tb-form-wrap .wpcf7{margin:0}
.tb-form-wrap p.tbf-f br{display:none}
.tb-form-wrap .wpcf7-form-control-wrap{display:block}
.tbf-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.tb-form-wrap p.tbf-f{margin:0!important;padding:0!important;grid-column:1/-1;display:flex;flex-direction:column;gap:7px}
.tb-form-wrap p.tbf-half{grid-column:auto}
.tbf-l{font-size:13.5px;font-weight:700;color:var(--ink,#0F1E3F)}
.tbf-l b{color:#C0392B}
.tbf-help{font-size:12.5px;color:var(--gray,#6B6964);margin-top:2px}
.tb-form-wrap input[type=text],.tb-form-wrap input[type=email],.tb-form-wrap input[type=tel],
.tb-form-wrap select,.tb-form-wrap textarea{
 width:100%;padding:12px 14px;border:1px solid var(--hair,#D5D2C8);border-radius:3px;background:#fff;
 font-family:inherit;font-size:15px;color:var(--ink,#0F1E3F);line-height:1.5;box-shadow:none}
.tb-form-wrap textarea{resize:vertical;min-height:110px}
.tb-form-wrap input[type=text]:focus,.tb-form-wrap input[type=email]:focus,.tb-form-wrap input[type=tel]:focus,
.tb-form-wrap select:focus,.tb-form-wrap textarea:focus{
 outline:none;border-color:var(--ink,#0F1E3F);box-shadow:0 0 0 3px rgba(15,30,63,.08)}
.tb-form-wrap input[type=file]{width:100%;padding:13px 14px;border:1px dashed var(--hair,#D5D2C8);
 border-radius:3px;background:#fff;font-family:inherit;font-size:14px;color:var(--ink,#0F1E3F);cursor:pointer}
.tb-form-wrap input[type=file]:hover{border-color:var(--ink,#0F1E3F)}

.tb-form-wrap p.tbf-radio{grid-column:1/-1}
.tbf-radio .wpcf7-radio{display:flex;gap:26px;flex-wrap:wrap;margin-top:2px}
.tbf-radio .wpcf7-list-item{margin:0}
.tbf-radio label{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:400;
 color:var(--ink,#0F1E3F);cursor:pointer;line-height:1.4}
.tbf-radio input[type=radio]{width:17px;height:17px;margin:0;flex:0 0 auto;accent-color:var(--ink,#0F1E3F)}
.tb-form-wrap p.tbf-agree{grid-column:1/-1;margin-top:2px!important}
.tbf-agree .wpcf7-list-item{margin:0}
.tbf-agree label{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;
 color:var(--gray,#6B6964);line-height:1.6;cursor:pointer;font-weight:400}
.tbf-agree input[type=checkbox]{margin:3px 0 0;width:16px;height:16px;flex:0 0 auto;accent-color:var(--ink,#0F1E3F)}

.tb-form-wrap p.tbf-submit{grid-column:1/-1;margin-top:8px!important;align-items:flex-start}
.tb-form-wrap .wpcf7-submit{padding:14px 42px!important;font-size:15.5px!important;font-weight:700!important;
 border-radius:3px!important;cursor:pointer;font-family:inherit;width:auto;
 transition:background-color .25s,color .25s,border-color .25s}

.tb-form-wrap .wpcf7-response-output{margin:22px 0 0!important;padding:14px 18px!important;
 border-radius:3px;font-size:14.5px;line-height:1.6;border-width:1px!important}
.tb-form-wrap form.sent .wpcf7-response-output{border-color:#2E7D32!important;background:rgba(46,125,50,.06);color:#1B5E20}
.tb-form-wrap form.invalid .wpcf7-response-output,.tb-form-wrap form.failed .wpcf7-response-output,
.tb-form-wrap form.aborted .wpcf7-response-output{border-color:#C0392B!important;background:rgba(192,57,43,.05);color:#922B21}
.tb-form-wrap .wpcf7-not-valid-tip{font-size:12.5px;color:#C0392B;margin-top:5px}
.tb-form-wrap .wpcf7-not-valid{border-color:#C0392B!important}

.tb-mail-alt{margin-top:22px;border:1px solid var(--hair,#D5D2C8);border-radius:4px}
.tb-mail-alt summary{cursor:pointer;padding:15px 20px;font-size:14.5px;font-weight:600;
 color:var(--ink,#0F1E3F);list-style:none}
.tb-mail-alt summary::-webkit-details-marker{display:none}
.tb-mail-alt summary:before{content:"\002B  ";font-weight:700}
.tb-mail-alt[open] summary:before{content:"\2212  "}
.tb-mail-alt-in{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:0 20px 18px}
.tb-mail-alt .tb-mail-addr{font-size:17px}

@media(max-width:820px){
 .tb-form-wrap{padding:24px 20px}
 .tbf-grid{grid-template-columns:1fr;gap:16px}
 .tb-form-wrap p.tbf-half{grid-column:1/-1}
 .tb-form-wrap p.tbf-submit{align-items:stretch}
 .tb-form-wrap .wpcf7-submit{width:100%;padding:15px 20px!important}
 .tb-mail-alt-in{flex-direction:column;align-items:flex-start;gap:10px}
 .tb-mail-alt .tb-mail-addr{font-size:15px}
}

/* 상호 안내 링크 */
.tb-reg-cross{margin:0;padding-top:34px;border-top:1px solid var(--hair,#D5D2C8);
 text-align:center;font-size:14px;color:var(--gray,#6B6964);line-height:1.7}
.tb-reg-cross a{font-weight:700;color:var(--ink,#0F1E3F);text-decoration:none;
 border-bottom:1px solid var(--hair,#D5D2C8);padding-bottom:1px;transition:border-color .2s}
.tb-reg-cross a:hover{border-color:var(--ink,#0F1E3F)}

/* 카드 1장일 때 가운데 정렬 유지 */
.tb-dl-grid:has(> a:only-child) a.tb-dl-card{width:420px}

/* ── 다운로드 버튼 (카드 대체) ── */
.tb-dl-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.tb-dl-btn{display:inline-flex;align-items:center;gap:10px;
 padding:14px 26px;border-radius:4px;
 background:var(--ink,#0F1E3F);color:var(--cream,#F5F1E8)!important;
 border:1px solid var(--ink,#0F1E3F);
 font-size:14.5px;font-weight:700;text-decoration:none!important;
 white-space:nowrap;transition:background-color .22s,color .22s,border-color .22s}
.tb-dl-btn::before{content:"";width:17px;height:17px;flex:0 0 auto;
 background:currentColor;
 -webkit-mask:var(--dl-ico) center/contain no-repeat;
 mask:var(--dl-ico) center/contain no-repeat;
 --dl-ico:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3Cpath d='M12 15V3'/%3E%3C/svg%3E")}
.tb-dl-btn:hover{background:#FFC700;color:var(--ink,#0F1E3F)!important;border-color:#FFC700}
.tb-dl-meta{font-size:12.5px;color:var(--gray,#6B6964);line-height:1.6}
@media(max-width:600px){
 .tb-dl-row{flex-direction:column;align-items:stretch}
 .tb-dl-btn{justify-content:center}
 .tb-dl-meta{text-align:center}
}

/* ── 접수 웹폼 (tbg_intake) ── */

.tbi-form{display:flex;flex-direction:column;gap:16px}
.tbi-lead{margin:0;font-size:13.5px;line-height:1.7;color:var(--gray,#6B6964)}
.tbi-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tbi-l{display:flex;flex-direction:column;gap:6px}
.tbi-l>span{font-size:12.5px;font-weight:700;color:var(--ink,#0F1E3F)}
.tbi-l>span b{color:#C0392B}
.tbi-l>span small{font-weight:500;color:var(--gray,#6B6964)}
.tbi-l em{font-style:normal;font-size:11.5px;line-height:1.55;color:var(--gray,#6B6964)}

.tbi-form input[type=text],.tbi-form input[type=email],.tbi-form input[type=tel],
.tbi-form input[type=url],.tbi-form select,.tbi-form textarea{
 width:100%;padding:11px 13px;border:1px solid var(--hair,#D5D2C8);border-radius:3px;
 background:#fff;font-family:inherit;font-size:14px;color:var(--ink,#0F1E3F);
 line-height:1.6;box-sizing:border-box}
.tbi-form textarea{resize:vertical;min-height:72px}
.tbi-form input[type=file]{font-size:13px;color:#4A4842}
.tbi-form input:focus,.tbi-form select:focus,.tbi-form textarea:focus{
 outline:none;border-color:var(--ink,#0F1E3F);box-shadow:0 0 0 3px rgba(15,30,63,.07)}

.tbi-agree{display:flex;align-items:flex-start;gap:9px;padding:13px 16px;
 background:var(--cream,#F5F1E8);border-radius:4px}
.tbi-agree input{width:15px;height:15px;margin:2px 0 0;accent-color:var(--ink,#0F1E3F);flex:0 0 auto}
.tbi-agree span{font-size:12.5px;line-height:1.65;color:#4A4842}

.tbi-sub{display:flex;justify-content:flex-end}
.tbi-form button{padding:13px 34px;border-radius:4px;background:var(--ink,#0F1E3F);
 color:var(--cream,#F5F1E8);border:1px solid var(--ink,#0F1E3F);
 font-family:inherit;font-size:14.5px;font-weight:700;cursor:pointer;transition:all .22s}
.tbi-form button:hover{background:#FFC700;color:var(--ink,#0F1E3F);border-color:#FFC700}

.tbi-err{margin:0;padding:12px 16px;border-left:3px solid #C0392B;background:#FDF3F2;
 font-size:13px;line-height:1.65;color:#4A4842}

.tbi-done{display:flex;flex-direction:column;align-items:center;gap:10px;
 padding:44px 30px;border:1px solid #2E7D4F;border-radius:6px;background:#F1F8F3;text-align:center}
.tbi-done-ico{display:flex;align-items:center;justify-content:center;width:44px;height:44px;
 border-radius:50%;background:#2E7D4F;color:#fff;font-size:20px;font-weight:700}
.tbi-done b{font-size:17px;color:var(--ink,#0F1E3F)}
.tbi-done p{margin:0;font-size:13.5px;line-height:1.75;color:#4A4842}

@media(max-width:600px){
 .tbi-grid{grid-template-columns:1fr}
 .tbi-sub{justify-content:stretch}
 .tbi-form button{width:100%}
}

/* ── 기업회원 가입으로 넘어가는 안내 블록 ──
   업체등록을 여기서 직접 받지 않고 가입 절차로 넘깁니다.
   STEP 2 자리에 폼 대신 들어갑니다. */
.tb-cta{
 border:1px solid var(--hair,#D5D2C8);
 border-radius:8px;
 padding:26px 28px;
 background:rgba(15,30,63,.024)}

.tb-cta-lead{
 margin:0 0 8px!important;
 font-size:16.5px;font-weight:600;color:var(--ink,#0F1E3F);line-height:1.5}

.tb-cta-sub{
 margin:0 0 20px!important;
 font-size:14.5px;color:var(--gray,#6B6964);line-height:1.65;max-width:620px}

.tb-cta-b{margin:0 0 14px!important}

.tb-cta-note{
 margin:0!important;
 font-size:13px;color:var(--gray,#6B6964)}
.tb-cta-note a{color:var(--ink,#0F1E3F);font-weight:600}

/* 이미 등재된 기업회원에게 보이는 상태 */
.tb-cta--done{background:transparent;border-style:dashed}

@media(max-width:640px){
 .tb-cta{padding:20px}
 .tb-cta-lead{font-size:15.5px}
}
