@charset "UTF-8";
/* 카르마 탐정연구소 — 단장 소개(인사말) 페이지 전용 */
.gt{--gt-gold:#b8892d;--gt-gold2:#8a6a24;--gt-card:#fff;--gt-line:rgba(28,25,21,.12);--gt-text:#5f584f;color:#1c1915}
.gt section{position:relative}
.gt-label{font-family:var(--f-num);font-size:15px;font-weight:600;letter-spacing:4px;color:#1a5f96}
.gt-creed .gt-label,.gt-cta .gt-label,.sv-hero .gt-label{color:#e2c56a}
.gt em{font-style:normal}

/* 등장 효과 */
.gt-js .gt-reveal{opacity:0;transform:translateY(36px);transition:opacity .9s ease,transform .9s ease}
.gt-js .gt-reveal.is-in{opacity:1;transform:none}
.gt-rules li.gt-reveal:nth-child(2){transition-delay:.1s}
.gt-rules li.gt-reveal:nth-child(3){transition-delay:.2s}
.gt-rules li.gt-reveal:nth-child(4){transition-delay:.3s}

/* 1. 인트로 */
.gt-intro{text-align:center;padding:10px 0 70px}
.gt-badge{display:inline-flex;align-items:center;gap:12px;font-family:var(--f-num);font-size:15px;font-weight:500;letter-spacing:4px;color:#1a5f96}
.gt-badge span{width:28px;height:1px;background:#1a5f96}
.sv-hero .gt-badge{color:#e2c56a}
.sv-hero .gt-badge span{background:#e2c56a}
.gt-badge span+span{display:none}
.gt-head{margin-top:34px;font-family:var(--f-serif);font-size:clamp(32px,4.6vw,60px);font-weight:400;line-height:1.3;letter-spacing:-1px}
.gt-head em{color:#1a5f96}
.gt-sub{max-width:780px;margin:28px auto 0;color:var(--gt-text);font-size:16px;line-height:1.95}

/* 2. 핵심 약속 */
.gt-points ul{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(30,77,107,.2);border-bottom:1px solid var(--gt-line)}
.gt-points li{display:flex;gap:18px;padding:32px 28px 30px 0}
.gt-points li+li{padding-left:28px}
.gt-points li+li{border-left:1px solid var(--gt-line)}
.gt-points i{flex:none;font-style:normal;font-family:var(--f-en);font-size:30px;line-height:1;color:#1e4d6b}
.gt-points li:nth-child(2) i{color:#1a5f96}
.gt-points li:nth-child(3) i{color:#3d7a62}
.gt-points b{display:block;font-size:17px;font-weight:600;line-height:1.45}
.gt-points span{display:block;margin-top:8px;font-size:15px;color:#5f584f;line-height:1.75}

/* 3. 의뢰인 우선 선언 */
.gt-creed{margin:120px 0 0;padding:84px 30px;text-align:center;background:#121110;color:#fff;border-top:2px solid #8f7a45}
.gt-creed-lines{margin-top:26px;font-family:var(--f-serif);font-size:clamp(22px,2.6vw,34px);line-height:1.7}
.gt-creed-lines span,.gt-creed-lines strong{display:block}
.gt-creed-lines span{color:#e9e9e9;font-weight:300}
.gt-creed-lines strong{margin-top:6px;font-weight:600;color:#c9a85a}
.gt-creed-sub{margin:34px auto 0;padding-top:30px;max-width:520px;border-top:1px solid rgba(255,255,255,.16);color:#d8d4cc;font-size:15px}

/* 4. 대표 인사 */
.gt-letter{margin-top:130px;display:grid;grid-template-columns:minmax(260px,440px) 1fr;gap:80px;align-items:center}
.gt-photo{margin:0;position:relative;overflow:hidden;background:transparent;aspect-ratio:4/5}
.gt-photo img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center bottom}
.gt-msg h3{margin-top:18px;font-family:var(--f-serif);font-size:clamp(24px,2.4vw,32px);font-weight:400;line-height:1.5}
.gt-msg h3 em{color:#1a5f96}
.gt-msg>p:not(.gt-label):not(.gt-sign){margin-top:20px;color:var(--gt-text);font-size:15.5px;line-height:1.95}
.gt-msg h3+p{margin-top:30px!important;padding-top:30px;border-top:1px solid var(--gt-line)}
.gt-sign{margin-top:38px;text-align:right;font-size:15px;color:#5f584f}
.gt-sign span{display:block;font-size:15px;color:#8a8176}
.gt-sign b{margin-left:6px;font-family:var(--f-serif);font-size:26px;font-weight:500;color:#1e4d6b;letter-spacing:4px}

/* 5. 일하는 원칙 */
.gt-rules{margin-top:140px}
.gt-rules-head{text-align:center;margin-bottom:44px}
.gt-rules-head h3{margin-top:12px;font-family:var(--f-serif);font-size:clamp(24px,2.4vw,32px);font-weight:400}
.gt-rules ol{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:0;padding:0}
.gt-rules li{position:relative;padding:30px 24px 28px;background:#fff;border-top:3px solid #1e4d6b;box-shadow:0 10px 24px rgba(28,25,21,.05)}
.gt-rules li:nth-child(2){border-top-color:#1a5f96}
.gt-rules li:nth-child(3){border-top-color:#3d7a62}
.gt-rules li:nth-child(4){border-top-color:#c4654a}
.gt-rules li i{display:block;color:#1e4d6b;font-size:26px;line-height:1}
.gt-rules li:nth-child(2) i{color:#1a5f96}
.gt-rules li:nth-child(3) i{color:#3d7a62}
.gt-rules li:nth-child(4) i{color:#c4654a}
.gt-rules li em{display:block;margin-top:24px;font-family:var(--f-num);font-size:15px;letter-spacing:2.5px;color:#8a8176}
.gt-rules li b{display:block;margin-top:6px;font-size:18px;font-weight:600}
.gt-rules li p{margin-top:10px;font-size:15px;color:#5f584f;line-height:1.75}

/* 6. 상담 안내 */
.gt-cta{margin-top:120px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:46px 52px;background:#161513;color:#fff;border-left:3px solid #8f7a45}
.gt-cta h3{margin-top:12px;font-family:var(--f-serif);font-size:clamp(22px,2.2vw,30px);font-weight:400;line-height:1.5}
.gt-cta-btns{display:flex;gap:10px;flex-wrap:wrap}
.gt-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 26px;border-radius:2px;border:1px solid rgba(255,255,255,.45);color:#fff;font-size:15px;font-weight:500;transition:.3s}
.gt-btn:hover{background:#fff;color:#111;border-color:#fff}
.gt-btn-gold{background:#c9a85a;border-color:#c9a85a;color:#111;font-family:var(--f-num);font-weight:600;letter-spacing:.5px}
.gt-btn-gold:hover{background:var(--gt-gold2);border-color:var(--gt-gold2)}

/* 반응형 */
@media (max-width:1024px){
  .gt-points ul{grid-template-columns:1fr}
  .gt-points li+li{border-left:0;border-top:1px solid var(--gt-line)}
  .gt-letter{grid-template-columns:1fr;gap:50px}
  .gt-photo{max-width:440px;width:100%;margin:0 auto}
  .gt-rules ol{grid-template-columns:1fr 1fr}
  .gt-cta{padding:40px 32px}
}
@media (max-width:560px){
  .gt-intro{padding-bottom:50px}
  .gt-sub{font-size:15px}
  .gt-sub br{display:none}
  .gt-points li{padding:26px 22px}
  .gt-creed{margin-top:80px;padding:70px 20px}
  .gt-letter,.gt-rules,.gt-cta{margin-top:90px}
  .gt-rules ol{grid-template-columns:1fr}
  .gt-cta{padding:34px 22px}
  .gt-cta-btns,.gt-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.gt-js .gt-reveal{opacity:1;transform:none;transition:none}}

/* ---------- 사진 블록 (html 페이지 공통) ---------- */
.gt-band{position:relative;margin:120px 0 0;height:380px;overflow:hidden;background:#111}
.gt-band img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.gt-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.15))}
.gt-band figcaption{position:absolute;left:56px;bottom:48px;right:40%;z-index:1}
.gt-band figcaption b{display:block;font-family:var(--f-serif);font-size:clamp(22px,2.4vw,32px);font-weight:400;line-height:1.5;color:#fff}
.gt-band figcaption span{display:block;margin-top:10px;font-size:15px;color:#cfcfcf}
.gt-creed.has-bg{background:#0d0d0d}
.gt-creed .gt-bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;opacity:.32}
.gt-creed.has-bg>*:not(.gt-bg){position:relative}
.gt-shot{position:relative;overflow:hidden;background:#151515}
.gt-shot img{width:100%;height:100%;max-width:none;object-fit:cover;transition:transform 1.2s ease}
.gt-shot:hover img{transform:scale(1.03)}
@media (max-width:900px){
  .gt-band{height:300px}
  .gt-band figcaption{left:28px;right:28px;bottom:30px}
}
@media (max-width:560px){
  .gt-band{margin-top:80px;height:240px}
  .gt-band::after{background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,.2))}
  .gt-band figcaption{left:20px;right:20px;bottom:22px}
}

/* ---------- 비밀 상담 페이지 ---------- */
.es{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:60px;align-items:start}
.es-side{position:sticky;top:110px;background:#fff;box-shadow:0 12px 30px rgba(28,25,21,.06);border-top:3px solid #1e4d6b}
.es-photo{margin:0;aspect-ratio:4/3}
.es-side-txt{padding:30px 30px 32px}
.es-side-txt h2{margin-top:12px;font-family:var(--f-serif);font-size:24px;font-weight:400;line-height:1.5}
.es-side-txt>p:not(.gt-label){margin-top:12px;font-size:15px;color:#5f584f;line-height:1.8}
.es-points{margin-top:22px;border-top:1px solid var(--gt-line)}
.es-points li{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--gt-line);font-size:15px;color:#1c1915}
.es-points b{font-family:var(--f-en);font-weight:400;color:#1a5f96}
.es-tel{margin-top:24px;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:16px 18px;background:#164e86;color:#fff}
.es-tel i{grid-row:span 2;font-size:22px}
.es-tel span{font-size:15px}
.es-tel b{font-family:var(--f-num);font-size:18px;font-weight:600}
.es-form form{margin:0}
@media (max-width:1024px){
  .es{grid-template-columns:1fr;gap:40px}
  .es-side{position:static}
  .es-photo{aspect-ratio:16/8}
}

