/* ============================================================
   방패세무그룹 (SHIELD TAX & ACCOUNTING GROUP)
   공통 스타일시트
   CI 컬러: Navy #0D2343 / Gold #C8A75A / Gray #666 / LightGray #F2F2F2
   ============================================================ */

:root{
  --navy: #0D2343;
  --navy-deep: #081833;
  --gold: #C8A75A;
  --gold-light: #E4C98A;
  --gray: #666666;
  --light-gray: #F2F2F2;
  --white: #FFFFFF;
  --line: #E4E1D8;
}

*{box-sizing:border-box; margin:0; padding:0;}

html{scroll-behavior:smooth; scroll-padding-top:96px;}

body{
  font-family:'Noto Sans KR', sans-serif;
  color:#1B1B1B;
  background:var(--white);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block;}
a{text-decoration:none; color:inherit;}
button{font-family:inherit; cursor:pointer; border:none; background:none;}
ul{list-style:none;}
.serif{font-family:'Noto Serif KR', serif;}
.wrap{max-width:1180px; margin:0 auto; padding:0 32px;}
.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;}

/* ===== Header ===== */
header{
  position:fixed; top:0; left:0; right:0; z-index:100;
  background:rgba(13,35,67,0.96);
  backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(200,167,90,0.18);
}
.header-inner{
  max-width:1180px; margin:0 auto; padding:0 32px;
  display:flex; align-items:center; justify-content:space-between;
  height:76px;
}
.logo{display:flex; align-items:center; gap:10px;}
.logo-mark{
  width:34px; height:34px; flex-shrink:0;
  background:linear-gradient(135deg, var(--gold-light), var(--gold));
  clip-path:polygon(50% 0%, 100% 22%, 100% 60%, 50% 100%, 0% 60%, 0% 22%);
}
.logo-img{width:44px; height:44px; object-fit:cover; border-radius:7px; display:block; flex-shrink:0;}
.footer-brand .logo-img{width:40px; height:40px;}
.logo-text{color:var(--white); font-weight:700; font-size:19px; letter-spacing:-0.2px;}
.logo-text span{color:var(--gold); font-weight:500; font-size:11px; display:block; letter-spacing:1.5px; margin-top:1px;}
.nav-zone{display:flex; align-items:center;}
nav{display:flex; gap:34px;}
.nav-top{
  color:rgba(255,255,255,0.88); font-size:15px; font-weight:500;
  display:block; padding:27px 2px;
  transition:color .2s;
}
.nav-top:hover{color:var(--gold-light);}
.mega-panel{
  position:absolute; top:76px; left:0; right:0;
  background:var(--navy-deep);
  border-top:1px solid rgba(200,167,90,0.22);
  box-shadow:0 26px 46px rgba(0,0,0,0.34);
  opacity:0; visibility:hidden; transform:translateY(-8px);
  transition:opacity .2s ease, transform .2s ease;
  z-index:120;
}
.mega-panel::before{content:""; position:absolute; left:0; right:0; top:-16px; height:16px;}
.nav-zone:hover .mega-panel{opacity:1; visibility:visible; transform:translateY(0);}
.mega-inner{
  max-width:1180px; margin:0 auto; padding:30px 32px 40px;
  display:grid; grid-template-columns:0.9fr 1.2fr 1fr 0.9fr; gap:28px;
}
.mega-col h4{
  color:var(--gold-light); font-size:12.5px; font-weight:700; letter-spacing:0.4px;
  padding-bottom:12px; margin-bottom:8px; border-bottom:1px solid rgba(255,255,255,0.1);
}
.mega-col a{
  display:block; padding:7px 0; font-size:13.5px; white-space:nowrap;
  color:rgba(255,255,255,0.72); transition:color .15s;
}
.mega-col a:hover{color:var(--gold-light);}
.header-cta{display:flex; align-items:center; gap:12px;}
.header-phone{color:var(--gold-light); font-size:14px; font-weight:600;}
.header-call{
  display:inline-flex; align-items:center; gap:6px;
  border:1px solid rgba(200,167,90,0.6); color:var(--gold-light);
  padding:9px 16px; font-size:14px; font-weight:600; border-radius:2px;
  transition:all .2s; white-space:nowrap;
}
.header-call:hover{background:var(--gold); color:var(--navy-deep); border-color:var(--gold);}
.btn-outline{
  border:1px solid rgba(200,167,90,0.6); color:var(--gold-light);
  padding:9px 20px; font-size:14px; font-weight:500; border-radius:2px;
  transition:all .2s; display:inline-block;
}
.btn-outline:hover{background:var(--gold); color:var(--navy-deep); border-color:var(--gold);}
.nav-toggle{display:none; color:var(--white); font-size:22px; line-height:1;}

/* ===== Hero ===== */
.hero{
  background:
    radial-gradient(ellipse at 15% 20%, rgba(200,167,90,0.10), transparent 55%),
    linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%);
  padding:190px 0 120px;
  position:relative;
  overflow:hidden;
}
.hero::after{
  content:"";
  position:absolute; right:-8%; top:10%;
  width:520px; height:520px;
  border:1px solid rgba(200,167,90,0.16);
  clip-path:polygon(50% 0%, 100% 22%, 100% 60%, 50% 100%, 0% 60%, 0% 22%);
}
.hero-inner{max-width:1180px; margin:0 auto; padding:0 32px; position:relative; z-index:2;}
.hero-eyebrow{
  color:var(--gold-light); font-size:14px; font-weight:500; letter-spacing:0.5px;
  margin-bottom:22px;
}
.hero h1{
  color:var(--white); font-size:46px; font-weight:600; line-height:1.42;
  max-width:640px; letter-spacing:-0.5px;
}
.hero h1 em{color:var(--gold-light); font-style:normal;}
.hero p{
  color:rgba(255,255,255,0.62); font-size:16px; margin-top:24px; max-width:480px;
}
.hero-actions{display:flex; gap:14px; margin-top:40px; flex-wrap:wrap;}
.btn-gold{
  background:var(--gold); color:var(--navy-deep);
  padding:15px 30px; font-size:15px; font-weight:700; border-radius:2px;
  transition:background .2s; display:inline-block;
}
.btn-gold:hover{background:var(--gold-light);}
.btn-ghost{
  border:1px solid rgba(255,255,255,0.3); color:var(--white);
  padding:15px 30px; font-size:15px; font-weight:500; border-radius:2px;
  display:inline-block;
}
.btn-ghost:hover{border-color:var(--gold-light); color:var(--gold-light);}

/* stat strip */
.stats{
  background:var(--navy-deep);
  border-top:1px solid rgba(200,167,90,0.14);
}
.stats-inner{
  max-width:1180px; margin:0 auto; padding:36px 32px;
  display:grid; grid-template-columns:repeat(4,1fr);
}
.stat{text-align:center; border-left:1px solid rgba(255,255,255,0.1);}
.stat:first-child{border-left:none;}
.stat b{color:var(--gold-light); font-size:26px; font-weight:700; display:block;}
.stat span{color:rgba(255,255,255,0.55); font-size:13px; margin-top:6px; display:block;}

/* ===== Section shared ===== */
section{padding:100px 0;}
.section-head{margin-bottom:56px; max-width:600px;}
.section-label{color:var(--gold); font-size:14px; font-weight:600; margin-bottom:12px;}
.section-head h2{font-size:32px; font-weight:700; letter-spacing:-0.5px; color:var(--navy);}
.section-head p{color:var(--gray); margin-top:14px; font-size:15px;}

/* ===== 그룹소개 ===== */
.about-grid{
  display:grid; grid-template-columns:1.1fr 1fr; gap:56px; align-items:center;
}
.about-grid .about-copy p{color:#333; font-size:15.5px; line-height:1.95; margin-bottom:16px;}
.about-grid .about-copy p:last-child{margin-bottom:0;}
.about-points{display:grid; gap:1px; background:var(--line); border:1px solid var(--line);}
.about-point{background:var(--white); padding:26px 24px;}
.about-point b{display:block; color:var(--navy); font-size:16px; font-weight:700; margin-bottom:6px;}
.about-point b .ap-mark{color:var(--gold); font-family:'Noto Serif KR',serif; margin-right:8px;}
.about-point span{font-size:13.5px; color:var(--gray);}

/* ===== 센터 ===== */
.centers{background:var(--light-gray);}
.center-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.center-card{
  background:var(--white); padding:36px 30px; min-height:172px;
  display:flex; flex-direction:column; justify-content:space-between;
  transition:background .2s;
}
.center-card:hover{background:#FDFBF6;}
.center-num{color:var(--gold); font-size:13px; font-weight:700; font-family:'Noto Serif KR',serif;}
.center-card h3{font-size:19px; font-weight:700; color:var(--navy); margin-top:14px;}
.center-card p{font-size:13px; color:var(--gray); margin-top:8px;}
.center-card .center-more{margin-top:18px; font-size:12.5px; font-weight:700; color:var(--gold);}

/* ===== 파트너사 ===== */
.partners-inner{max-width:1180px; margin:0 auto; padding:0 32px;}
.partner-grid{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:14px;
}
.partner-chip{
  border:1px solid var(--line); padding:26px 20px; text-align:center;
  border-radius:3px; width:100%; background:var(--white);
  transition:border-color .2s, transform .2s;
}
.partner-chip:hover{border-color:var(--gold); transform:translateY(-3px);}
.partner-chip .p-mark{
  width:38px; height:38px; margin:0 auto 14px;
  border:1.5px solid var(--gold); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:var(--gold); font-weight:700; font-size:14px; font-family:'Noto Serif KR',serif;
}
.partner-chip span{font-size:14px; font-weight:600; color:var(--navy);}

/* ===== 소식/자료 ===== */
.news{background:var(--light-gray);}
.news-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
.news-card{background:var(--white); border:1px solid var(--line); transition:transform .2s, box-shadow .2s;}
.news-card:hover{transform:translateY(-4px); box-shadow:0 14px 34px rgba(13,35,67,0.10);}
.news-thumb{height:150px; background:linear-gradient(135deg, var(--navy), var(--navy-deep)); position:relative;}
.news-thumb::after{
  content:"";
  position:absolute; right:16px; bottom:14px;
  width:26px; height:26px;
  background:linear-gradient(135deg, var(--gold-light), var(--gold));
  clip-path:polygon(50% 0%, 100% 22%, 100% 60%, 50% 100%, 0% 60%, 0% 22%);
  opacity:0.85;
}
.news-body{padding:24px;}
.news-tag{font-size:12px; color:var(--gold); font-weight:700;}
.news-body h4{font-size:16px; font-weight:700; color:var(--navy); margin-top:10px; line-height:1.5;}
.news-date{font-size:12px; color:#999; margin-top:14px;}

/* ===== 문의 CTA ===== */
.cta{
  background:var(--navy); text-align:center; padding:110px 0;
  position:relative; overflow:hidden;
}
.cta::before{
  content:"";
  position:absolute; left:50%; top:-120px; transform:translateX(-50%);
  width:600px; height:600px;
  border:1px solid rgba(200,167,90,0.12);
  clip-path:polygon(50% 0%, 100% 22%, 100% 60%, 50% 100%, 0% 60%, 0% 22%);
}
.cta-inner{position:relative; z-index:2;}
.cta h2{color:var(--white); font-size:30px; font-weight:600;}
.cta p{color:rgba(255,255,255,0.6); margin-top:14px; font-size:15px;}
.cta .hero-actions{justify-content:center; margin-top:34px;}
.cta .hero-actions .btn-gold,
.cta .hero-actions .btn-ghost{
  margin-top:0; padding:17px 20px; width:260px; max-width:100%;
  text-align:center; font-weight:700;
}

/* ===== Footer ===== */
footer{background:var(--navy-deep); padding:60px 0 34px;}
.footer-inner{max-width:1180px; margin:0 auto; padding:0 32px;}
.footer-top{
  display:flex; justify-content:space-between; padding-bottom:34px;
  border-bottom:1px solid rgba(255,255,255,0.08); gap:30px; flex-wrap:wrap;
}
.footer-brand .logo-text{color:var(--white);}
.footer-links{display:flex; gap:48px;}
.footer-links h5{color:var(--gold-light); font-size:13px; margin-bottom:14px;}
.footer-links a{display:block; color:rgba(255,255,255,0.55); font-size:13px; margin-bottom:9px;}
.footer-links a:hover{color:var(--gold-light);}
.footer-bottom{
  display:flex; justify-content:space-between; align-items:flex-end;
  padding-top:26px; color:rgba(255,255,255,0.4); font-size:12.5px; gap:14px; flex-wrap:wrap;
}
.footer-bottom .biz-info div{margin-bottom:4px;}

/* ===== Partner modal ===== */
.partner-chip{cursor:pointer;}
.p-overlay{
  position:fixed; inset:0; background:rgba(8,24,51,0.55); z-index:300;
  display:none; align-items:center; justify-content:center; padding:24px;
}
.p-overlay.open{display:flex;}
.p-modal{
  background:var(--white); width:100%; max-width:460px; border-radius:4px;
  padding:44px 40px 40px; position:relative;
  box-shadow:0 24px 60px rgba(0,0,0,0.25);
}
.p-close{
  position:absolute; top:18px; right:20px; font-size:20px; color:var(--gray);
  cursor:pointer; line-height:1;
}
.p-modal h3{font-size:22px; font-weight:700; color:var(--navy);}
.p-modal .p-role{
  display:inline-block; margin-top:10px; font-size:12.5px; font-weight:600;
  color:var(--gold); background:rgba(200,167,90,0.1);
  padding:5px 12px; border-radius:20px;
}
.p-modal .p-list{margin-top:22px; border-top:1px solid var(--line); padding-top:20px;}
.p-modal .p-list li{font-size:14px; color:#333; padding:5px 0; line-height:1.6;}
.p-back{
  display:none; font-size:13px; color:var(--gray); cursor:pointer;
  margin-bottom:18px; font-weight:500;
}
.p-back.show{display:inline-block;}
.p-modal .p-group-title{font-size:13px; color:var(--gold); font-weight:700; margin-bottom:18px;}
.p-people{border-top:1px solid var(--line);}
.p-person-row{
  display:flex; align-items:center; justify-content:space-between;
  padding:17px 2px; border-bottom:1px solid var(--line);
  cursor:pointer;
}
.p-person-row:hover{background:#FBFAF6;}
.p-person-row .pn{font-size:15px; font-weight:600; color:var(--navy);}
.p-person-row .pr{font-size:12.5px; color:var(--gray); margin-top:3px;}
.p-person-row .arrow{color:var(--gold); font-size:15px;}
.p-empty{border-top:1px solid var(--line); padding-top:20px; font-size:14px; color:var(--gray);}

/* ===== Notice popup ===== */
.notice-overlay{
  position:fixed; inset:0; z-index:500;
  background:rgba(8,16,32,0.6);
  display:flex; align-items:center; justify-content:center;
  padding:20px;
}
.notice-overlay.hidden{display:none;}
.notice-card{
  position:relative;
  width:100%; max-width:440px;
  background:var(--navy-deep);
  border:1px solid var(--gold);
  outline:1px solid rgba(200,167,90,0.3);
  outline-offset:6px;
  padding:44px 36px 30px;
  text-align:center;
  box-shadow:0 30px 70px rgba(0,0,0,0.4);
}
.notice-close-x{
  position:absolute; top:14px; right:16px;
  color:rgba(255,255,255,0.5); font-size:16px; cursor:pointer;
}
.notice-close-x:hover{color:var(--gold-light);}
.notice-mark{
  width:44px; height:44px; margin:0 auto 14px;
  background:url(../img/logo-mark.png) center/contain no-repeat;
  border-radius:8px;
}
.notice-brand{color:var(--white); font-weight:700; font-size:15px; margin-bottom:26px;}
.notice-brand span{
  display:block; color:var(--gold-light); font-size:9.5px; font-weight:500;
  letter-spacing:1px; margin-top:4px;
}
.notice-highlight{
  background:rgba(200,167,90,0.14); border:1px solid rgba(200,167,90,0.4);
  color:var(--gold-light); font-size:16px; font-weight:700;
  padding:16px 14px; border-radius:2px; line-height:1.6; margin-bottom:22px;
}
.notice-form{display:flex; flex-direction:column; gap:10px; margin-bottom:6px;}
.notice-form input{
  width:100%; padding:13px 14px; font-size:14px;
  background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.18);
  color:var(--white); border-radius:2px; font-family:'Noto Sans KR',sans-serif;
}
.notice-form input::placeholder{color:rgba(255,255,255,0.4);}
.notice-form input:focus{outline:none; border-color:var(--gold);}
.notice-submit{width:100%; margin-top:6px; padding:14px; font-size:14.5px;}
.notice-actions{
  border-top:1px solid rgba(255,255,255,0.1); padding-top:16px;
  font-size:12.5px; color:rgba(255,255,255,0.55);
}
.notice-actions span{cursor:pointer;}
.notice-actions span:hover{color:var(--gold-light);}
.notice-actions .divider{margin:0 12px; color:rgba(255,255,255,0.25); cursor:default;}
.notice-done{
  color:var(--gold-light); font-size:15px; font-weight:600; line-height:1.7;
  padding:20px 0 6px;
}

/* ===== Center detail page ===== */
.c-hero{
  background:linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%);
  padding:172px 0 64px;
}
.c-back{
  display:inline-block; color:var(--gold-light); font-size:14px; font-weight:500;
  cursor:pointer; margin-bottom:28px;
}
.c-back:hover{color:var(--white);}
.c-num{
  font-family:'Noto Serif KR', serif; color:var(--gold); font-size:15px; font-weight:700;
  margin-bottom:10px;
}
.c-hero h1{color:var(--white); font-size:36px; font-weight:600;}
.c-hero p{color:rgba(255,255,255,0.6); font-size:15px; margin-top:12px;}
.c-overview{font-size:16px; color:#333; line-height:1.9; padding:56px 0 8px;}
.c-service-list{padding:24px 0 80px;}
.c-service-item{
  display:flex; gap:20px; padding:22px 0; border-top:1px solid var(--line);
}
.c-service-item:last-child{border-bottom:1px solid var(--line);}
.c-service-item .cs-mark{color:var(--gold); font-weight:700; font-family:'Noto Serif KR',serif; font-size:14px; flex-shrink:0; width:26px;}
.c-service-item h4{font-size:16px; font-weight:700; color:var(--navy);}
.c-service-item p{font-size:14px; color:var(--gray); margin-top:6px;}

.c-other{border-top:1px solid var(--line); padding:56px 0 10px;}
.c-other h3{font-size:14px; color:var(--gold); font-weight:700; margin-bottom:20px;}
.c-other-links{display:flex; flex-wrap:wrap; gap:10px;}
.c-other-links a{
  border:1px solid var(--line); border-radius:20px; padding:8px 16px;
  font-size:13px; color:var(--navy); font-weight:500; transition:border-color .2s, background .2s;
}
.c-other-links a:hover{border-color:var(--gold); background:#FDFBF6;}

.c-contact{background:var(--light-gray); padding:90px 0;}
.c-contact-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:20px; max-width:620px; margin:0 auto;}
.c-contact-card{
  background:var(--white); border:1px solid var(--line); border-radius:4px;
  padding:36px 24px; text-align:center; transition:border-color .2s, transform .2s;
}
.c-contact-card:hover{border-color:var(--gold); transform:translateY(-4px);}
.cc-icon{font-size:26px; margin-bottom:14px;}
.c-contact-card h4{font-size:16px; font-weight:700; color:var(--navy);}
.c-contact-card p{font-size:13px; color:var(--gray); margin-top:10px; line-height:1.6;}

/* ===== Quick menu (floating) ===== */
.quick-menu{
  position:fixed; right:22px; bottom:22px; z-index:200;
  display:flex; flex-direction:column; gap:8px;
}
.quick-btn{
  width:52px; height:52px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; flex-direction:column;
  background:var(--white); box-shadow:0 6px 20px rgba(13,35,67,0.22);
  font-size:10px; font-weight:700; color:var(--navy);
  border:1px solid var(--line);
  transition:transform .2s;
}
.quick-btn:hover{transform:scale(1.07);}
.quick-btn.kakao{background:#FEE500; border-color:#FEE500;}
.quick-btn.call{background:var(--navy); color:var(--white); border-color:var(--navy);}
.quick-btn.blog{background:#03C75A; color:var(--white); border-color:#03C75A;}
.quick-btn.blog .qi{font-family:'Noto Serif KR',serif; font-weight:700; font-size:16px;}
.quick-btn.form{background:var(--gold); color:var(--navy-deep); border-color:var(--gold);}
.quick-btn .qi{font-size:16px; margin-bottom:1px;}
.quick-top{
  width:52px; height:38px; border-radius:6px; background:var(--navy-deep);
  color:var(--white); font-size:15px; display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 20px rgba(13,35,67,0.22);
}

/* ===== Responsive ===== */
@media(max-width:1024px){
  .nav-zone{
    display:none; position:absolute; top:76px; left:0; right:0;
    flex-direction:column; align-items:stretch; background:var(--navy-deep);
    border-bottom:1px solid rgba(200,167,90,0.2);
    max-height:calc(100vh - 76px); overflow-y:auto;
  }
  .nav-zone.open{display:flex;}
  nav{flex-direction:column; gap:0; width:100%;}
  .nav-top{padding:15px 32px; border-top:1px solid rgba(255,255,255,0.06);}
  .mega-panel{
    position:static; opacity:1; visibility:visible; transform:none;
    box-shadow:none; border-top:none; background:rgba(0,0,0,0.22);
  }
  .mega-inner{grid-template-columns:1fr; gap:0; padding:0; max-width:none;}
  .mega-col h4{
    padding:14px 32px 8px; margin:0; border:none;
    color:var(--gold); font-size:12px;
  }
  .mega-col a{padding:9px 44px; font-size:12.5px; color:rgba(255,255,255,0.6); white-space:normal;}
  .nav-toggle{display:block;}
  .header-cta .btn-outline{display:none;}
  .header-call{padding:7px 12px; font-size:12.5px; gap:4px;}
}
@media(max-width:900px){
  .hero{padding:150px 0 90px;}
  .hero h1{font-size:32px;}
  .about-grid{grid-template-columns:1fr; gap:36px;}
  .stats-inner{grid-template-columns:repeat(2,1fr); gap:20px;}
  .stat{border-left:none;}
  .center-grid{grid-template-columns:repeat(2,1fr);}
  .news-grid{grid-template-columns:1fr;}
  .c-contact-grid{grid-template-columns:1fr;}
  .footer-top{flex-direction:column;}
  .footer-bottom{flex-direction:column; align-items:flex-start;}
  section{padding:72px 0;}
}
@media(max-width:560px){
  .wrap{padding:0 20px;}
  .header-inner{padding:0 20px;}
  .center-grid{grid-template-columns:1fr;}
  .hero h1{font-size:27px;}
  .section-head h2{font-size:25px;}
  .quick-menu{right:16px; bottom:16px;}
  .logo-text{font-size:16px;}
  .logo-text span{font-size:9px;}
  .header-call{font-size:0; padding:8px 10px; gap:0;}
  .header-call .hc-icon{font-size:15px;}
  .header-call::after{content:"053-710-7924"; font-size:12.5px; margin-left:5px;}
}
@media(max-width:480px){
  .notice-card{padding:36px 22px 24px;}
  .notice-brand{font-size:14px;}
  .notice-greet, .notice-body{font-size:13px;}
  .notice-highlight{font-size:12.5px;}
  .notice-overlay{padding:14px;}
}

/* ============================================================
   추가: 파트너사 로고 · 방패TV · 온라인상담 · 배경사진
   ============================================================ */

/* 파트너사 협회 로고 */
.p-logo{width:56px; height:56px; object-fit:contain; margin:0 auto 14px; display:block;}
.p-modal-logo{width:48px; height:48px; object-fit:contain; margin-bottom:16px; display:block;}

/* 소식·자료: 카드 링크 + 방패TV 썸네일 */
a.news-card{display:block; color:inherit;}
.news-thumb.tv{
  background:#F5F3EE;
  display:flex; align-items:center; justify-content:center;
}
.news-thumb.tv::after{display:none;}
.news-thumb.tv .tv-logo{width:92px; height:auto;}
.tv-channel-link{
  display:inline-flex; align-items:center; gap:9px; margin-top:16px;
  font-size:13.5px; font-weight:600; color:var(--navy);
}
.tv-channel-link .yt-logo{width:28px; height:auto; display:inline-block;}
.tv-channel-link:hover{color:var(--gold);}

/* 퀵메뉴 유튜브 버튼 */
.quick-btn.youtube{background:#FF0000; color:var(--white); border-color:#FF0000;}

/* 히어로 배경 사진 (있을 때만 표시) */
.hero .hero-photos{position:absolute; inset:0; z-index:0; overflow:hidden;}
.hero .hero-photos .hp{
  position:absolute; inset:0; background-size:cover; background-position:center;
  opacity:0; transition:opacity 1.4s ease;
}
.hero .hero-photos .hp.on{opacity:1;}
.hero .hero-overlay{
  position:absolute; inset:0; z-index:1; opacity:0; transition:opacity 1s ease;
  background:
    linear-gradient(115deg, rgba(9,21,46,0.74) 0%, rgba(11,26,54,0.34) 46%, rgba(13,35,67,0.04) 100%),
    linear-gradient(0deg, rgba(9,21,46,0.34) 0%, rgba(9,21,46,0) 42%);
}
.hero.has-photo .hero-overlay{opacity:1;}
.hero.has-photo{background:var(--navy-deep);}
.hero::after{z-index:2;}
.hero-inner{z-index:3;}

/* 센터 상세 히어로 배경 사진 */
.c-hero{position:relative; overflow:hidden;}
.c-hero > .wrap{position:relative; z-index:3;}
.c-hero .c-hero-photo{
  position:absolute; inset:0; z-index:0; background-size:cover; background-position:right center;
  opacity:0; transition:opacity 1s ease;
}
.c-hero .c-hero-photo.on{opacity:1;}
.c-hero .c-hero-overlay{
  position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(110deg, rgba(9,21,46,0.86) 0%, rgba(11,26,54,0.52) 48%, rgba(13,35,67,0.12) 100%),
    linear-gradient(0deg, rgba(9,21,46,0.42) 0%, rgba(9,21,46,0) 55%);
}

/* 온라인 상담 페이지 */
.consult-box{max-width:640px; margin:0 auto; padding:60px 0 100px;}
.consult-form{display:grid; gap:18px;}
.consult-form .field label{
  font-size:13.5px; font-weight:600; color:var(--navy); display:block; margin-bottom:7px;
}
.consult-form input, .consult-form select, .consult-form textarea{
  width:100%; padding:13px 14px; font-size:14px; font-family:inherit;
  border:1px solid var(--line); border-radius:3px; color:#1b1b1b; background:var(--white);
}
.consult-form input:focus, .consult-form select:focus, .consult-form textarea:focus{
  outline:none; border-color:var(--gold);
}
.consult-form textarea{min-height:130px; resize:vertical;}
.consult-form .row2{display:grid; grid-template-columns:1fr 1fr; gap:18px;}
.consult-agree{display:flex; gap:9px; align-items:flex-start; font-size:12.5px; color:var(--gray); line-height:1.6;}
.consult-agree input{width:auto; margin-top:3px; flex-shrink:0;}
.consult-form button{margin-top:6px; padding:15px; font-size:15px; width:100%;}
.consult-done{text-align:center; padding:70px 20px; font-size:16px; color:var(--navy); line-height:1.9;}
.consult-intro{color:var(--gray); font-size:14.5px; line-height:1.9; margin-bottom:36px;}
@media(max-width:560px){ .consult-form .row2{grid-template-columns:1fr;} }

/* ============================================================
   추가 2: 브랜드 아이콘 · 센터 카드 사진
   ============================================================ */

/* 퀵메뉴 브랜드 아이콘 버튼 */
.quick-btn.brand{background:var(--white); border-color:var(--line);}
.qi-img{width:26px; height:26px; object-fit:contain; display:block; margin-bottom:1px;}

/* 메인 센터 카드 (사진형) */
.centers .center-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  background:none; border:none;
}
.centers .center-card{
  background:var(--white); border:1px solid var(--line); border-radius:5px;
  overflow:hidden; padding:0; min-height:0; display:block;
  transition:transform .2s, box-shadow .2s;
}
.centers .center-card:hover{
  background:var(--white); transform:translateY(-4px);
  box-shadow:0 16px 38px rgba(13,35,67,0.13);
}
.center-thumb{
  height:172px;
  background:linear-gradient(135deg,#16375f 0%, #0b1f3c 100%);
  background-size:cover; background-position:center;
}
.center-body{padding:26px 26px 30px;}
.centers .center-card h3{margin-top:12px;}
.centers .center-card .center-more{display:block;}

@media(max-width:900px){
  .centers .center-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:560px){
  .centers .center-grid{grid-template-columns:1fr;}
  .center-thumb{height:180px;}
}

/* ============================================================
   추가 3: 퀵메뉴 라벨 · 센터 이미지 카드
   ============================================================ */

/* 퀵메뉴: 아이콘 + 글자 라벨 (카톡처럼 전 버튼 통일) */
.quick-btn{gap:1px;}
.qi-img{width:22px; height:22px; object-fit:contain; display:block; margin:0 0 1px;}
.quick-btn .qi{font-size:16px; margin:0 0 1px;}
.qi-t{font-size:9.5px; line-height:1; white-space:nowrap; font-weight:700; display:block;}

/* 메인 센터: 이미지형 카드 (첨부 시안 이미지 그대로) */
.centers .center-card.is-image{
  padding:0; border:1px solid var(--line); border-radius:5px; overflow:hidden;
  background:var(--white);
}
.centers .center-card.is-image .center-card-img{width:100%; height:auto; display:block;}
.centers .center-card.is-image .center-thumb,
.centers .center-card.is-image .center-body{display:none;}

/* 퀵메뉴 브랜드 버튼: 라벨 글자색 검정 (흰 배경이라 흰 글자 안 보이던 문제 수정) */
.quick-btn.brand{color:#1B1B1B;}
.quick-btn.brand .qi-t{color:#1B1B1B;}

/* 퀵메뉴: 네이버상담 · 인스타 (브랜드 아이콘 = 흰 배경) */
.quick-btn.naver, .quick-btn.insta{background:var(--white); color:#1B1B1B; border-color:var(--line);}
.quick-btn.naver .qi-t, .quick-btn.insta .qi-t{color:#1B1B1B;}
@media(max-width:560px){
  .quick-btn{width:46px; height:46px;}
  .qi-img{width:20px; height:20px;}
  .qi-t{font-size:8.5px;}
  .quick-top{width:46px; height:34px;}
}

/* ============================================================
   브랜드 영상 섹션 (법무법인 대륜 스타일)
   ============================================================ */
.brandfilm{
  background:
    radial-gradient(ellipse at 80% 30%, rgba(200,167,90,0.08), transparent 55%),
    linear-gradient(160deg, #0D2343 0%, #0A1C37 100%);
  color:var(--white);
  overflow:hidden;
}
.brandfilm-inner{
  display:grid; grid-template-columns:0.82fr 1.18fr; gap:56px; align-items:center;
}
.bf-text h2{font-size:33px; font-weight:600; line-height:1.42; letter-spacing:-0.5px;}
.bf-en{color:var(--gold-light); font-size:15px; font-weight:500; margin-top:16px; line-height:1.6;}
.bf-lead{color:rgba(255,255,255,0.72); font-size:15px; margin-top:34px; line-height:1.9;}
.bf-quote{
  color:var(--gold-light); font-family:'Noto Serif KR',serif; font-style:italic;
  font-size:16px; margin-top:26px;
}
.bf-desc{color:rgba(255,255,255,0.7); font-size:14.5px; margin-top:10px; line-height:1.9;}
.bf-video{
  position:relative; display:block; border-radius:6px; overflow:hidden;
  aspect-ratio:16 / 9; background:#081833;
  box-shadow:0 34px 64px rgba(0,0,0,0.45);
}
.bf-thumb{
  width:100%; height:100%; object-fit:cover; display:block;
  opacity:0.9; transition:opacity .3s ease, transform .6s ease;
}
.bf-video:hover .bf-thumb{opacity:1; transform:scale(1.03);}
.bf-play{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:76px; height:52px; border-radius:14px; background:#FF0000;
  box-shadow:0 8px 22px rgba(0,0,0,0.35);
  transition:transform .2s ease;
}
.bf-play::after{
  content:""; position:absolute; left:50%; top:50%;
  transform:translate(-40%,-50%);
  border-style:solid; border-width:11px 0 11px 19px;
  border-color:transparent transparent transparent #fff;
}
.bf-video:hover .bf-play{transform:translate(-50%,-50%) scale(1.12);}

@media(max-width:900px){
  .brandfilm-inner{grid-template-columns:1fr; gap:30px;}
  .bf-text h2{font-size:25px;}
  .bf-lead{margin-top:24px;}
}

/* 브랜드 영상 팝업(라이트박스) */
.video-modal{
  position:fixed; inset:0; z-index:600;
  background:rgba(6,14,28,0.9);
  display:none; align-items:center; justify-content:center; padding:24px;
}
.video-modal.open{display:flex;}
.video-modal-inner{position:relative; width:100%; max-width:960px;}
.video-frame{
  position:relative; width:100%; aspect-ratio:16 / 9;
  background:#000; border-radius:6px; overflow:hidden;
  box-shadow:0 34px 90px rgba(0,0,0,0.6);
}
.video-frame iframe{position:absolute; inset:0; width:100%; height:100%; border:0;}
.video-modal-close{
  position:absolute; top:-44px; right:0;
  width:40px; height:40px; color:#fff; font-size:22px; line-height:1;
}
.video-modal-close:hover{color:var(--gold-light);}
@media(max-width:560px){ .video-modal-close{top:-38px;} }
