/* Bizhows-inspired commerce system, adapted for Daechiroot. */
:root{
  --dr-blue:#3f6fe8;
  --dr-blue-dark:#244fc4;
  --dr-blue-soft:#eef3ff;
  --dr-ink:#171a21;
  --dr-text:#4d5562;
  --dr-muted:#7c8490;
  --dr-line:#e5e8ee;
  --dr-surface:#f6f7f9;
  --dr-footer:#f1f3f6;
  --dr-radius:18px;
  --dr-shadow:0 12px 34px rgba(32,43,68,.08);
}

.page-home,.page-details,.page-policies,.page-support{
  color:var(--dr-ink);
  background:#fff;
  font-family:Pretendard,"Pretendard Variable","Apple SD Gothic Neo",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;
}
.page-home :focus-visible,.page-details :focus-visible,.page-policies :focus-visible,.page-support :focus-visible{
  outline:3px solid rgba(63,111,232,.45);
  outline-offset:3px;
}

/* Home header and product navigation */
.page-home .wrap{max-width:1240px;padding-left:28px;padding-right:28px}
.page-home .nav{
  position:sticky;top:0;z-index:90;
  background:rgba(255,255,255,.96);
  border-bottom:1px solid var(--dr-line);
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
}
.page-home .nav-in{height:74px}
.page-home .logo-mark.brand-logo{width:40px;height:40px;flex-basis:40px}
.page-home .logo-type b{font-family:inherit;font-size:18px;font-weight:850}
.page-home .logo-type small{color:#7c8490;letter-spacing:.18em}
.page-home .nav-links{gap:28px}
.page-home .nlink{font-size:13px;color:#3f4650;font-weight:700}
.page-home .nlink:hover{color:var(--dr-blue)}
.page-home .nav .btn-blue{
  min-height:42px;padding:0 20px;border-radius:9px;
  background:var(--dr-blue);box-shadow:none;color:#fff;
}
.page-home .nav .btn-blue:hover{background:var(--dr-blue-dark);transform:none}

.catalog-rail{background:#fff;border-bottom:1px solid var(--dr-line);position:relative;z-index:20}
.catalog-rail-inner{
  width:min(1240px,100%);height:50px;margin:0 auto;padding:0 28px;
  display:flex;align-items:center;gap:30px;overflow:auto;scrollbar-width:none;
}
.catalog-rail-inner::-webkit-scrollbar{display:none}
.catalog-rail a{display:inline-flex;align-items:center;gap:8px;flex:none;font-size:12.5px;font-weight:750;color:#333a44;white-space:nowrap}
.catalog-rail a:hover{color:var(--dr-blue)}
.catalog-rail a span{font-size:9px;color:var(--dr-blue);font-weight:900;letter-spacing:.05em}

/* Hero: large rounded campaign panel */
.page-home .hero{
  width:min(1240px,calc(100% - 48px));margin:24px auto 0;
  border-radius:26px;background:#1d2734;box-shadow:none;
}
.page-home .hero-carousel,.page-home .hero-slide{min-height:510px}
.page-home .hero-slide{background-position:center;background-size:cover}
.page-home .hero-slide::before{
  background:linear-gradient(90deg,rgba(11,18,27,.82),rgba(11,18,27,.55) 48%,rgba(11,18,27,.08) 82%),linear-gradient(0deg,rgba(11,18,27,.25),transparent 55%);
}
.page-home .hero-slide:nth-child(1)::before,.page-home .hero-slide:nth-child(3)::before{
  background:linear-gradient(90deg,rgba(11,18,27,.82),rgba(11,18,27,.54) 48%,rgba(11,18,27,.07) 82%),linear-gradient(0deg,rgba(11,18,27,.24),transparent 55%);
}
.page-home .hero-slide-inner{width:min(1120px,calc(100% - 120px));padding:122px 0 136px}
.page-home .hero-slide-copy{max-width:900px}
.page-home .hero-slide-kicker{
  display:inline-flex;align-items:center;min-height:29px;padding:0 11px;
  border-radius:999px;background:rgba(63,111,232,.94);opacity:1;
  color:#fff;font-size:10px;letter-spacing:.13em;
}
.page-home .hero-slide h1,.page-home .hero-slide h2{
  margin-top:22px;max-width:930px;font-size:clamp(42px,5.2vw,66px);
  line-height:1.08;font-family:inherit;font-weight:850;letter-spacing:-.055em;
}
.page-home .hero-slide-actions{margin-top:32px}
.page-home .hero-slide .hero-action{
  min-height:46px;padding:0 18px;border-radius:9px;
  color:#fff;background:var(--dr-blue);box-shadow:0 10px 26px rgba(21,58,148,.24);
}
.page-home .hero-slide .hero-action::after{content:" →";margin-left:7px}
.page-home .hero-arrow{width:42px;height:42px;border:1px solid rgba(255,255,255,.72);background:rgba(255,255,255,.94);box-shadow:0 6px 18px rgba(0,0,0,.12)}
.page-home .hero-arrow.prev{left:18px}.page-home .hero-arrow.next{right:18px}
.page-home .hero-dots{bottom:22px}

/* Quick product finder */
.home-discovery{padding:50px 0 64px;background:#fff}
.home-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}
.home-section-head p{font-size:10px;line-height:1;font-weight:900;letter-spacing:.14em;color:var(--dr-blue);margin-bottom:10px}
.home-section-head h2{font-size:30px;line-height:1.18;letter-spacing:-.04em;font-weight:850}
.home-section-head>a{font-size:12px;font-weight:800;color:var(--dr-blue);white-space:nowrap}
.home-section-head>a span{margin-left:4px}
.discovery-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.discovery-card{
  min-width:0;padding:18px 16px 17px;border:1px solid var(--dr-line);border-radius:15px;
  background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s;
}
.discovery-card:hover{transform:translateY(-4px);border-color:#bfd0ff;box-shadow:var(--dr-shadow)}
.discovery-icon{
  display:grid;place-items:center;width:66px;height:66px;margin-bottom:17px;border-radius:17px;
  background:var(--dr-blue-soft);color:var(--dr-blue);font-size:11px;font-weight:950;letter-spacing:.05em;
}
.discovery-card strong{display:block;font-size:15px;line-height:1.25}
.discovery-card small{display:block;margin-top:6px;color:var(--dr-muted);font-size:11px;line-height:1.45}

/* Product catalogue */
.page-home #models{padding:72px 0 78px;background:var(--dr-surface);border-top:1px solid var(--dr-line);border-bottom:1px solid var(--dr-line)}
.page-home #models .sec-head{margin-bottom:25px}
.page-home #models .sec-kicker{display:block;width:max-content;padding:0;border:0;background:transparent;box-shadow:none;color:var(--dr-blue);font-size:10px}
.page-home #models .sec-title{font-family:inherit;font-size:clamp(32px,3.8vw,46px);font-weight:850;line-height:1.16;letter-spacing:-.045em}
.page-home #models .sec-title b,.page-home #models .sec-title span{font-family:inherit;color:var(--dr-ink);font-weight:850}
.page-home #models .sec-sub{max-width:760px;margin-top:12px;color:var(--dr-muted);font-size:14px}
.page-home .models-brandline{margin:0 0 18px;padding:13px 16px;border:1px solid var(--dr-line);border-radius:10px;background:#fff}
.page-home .models-brandline b{color:var(--dr-blue)}
.page-home .dev-toggle{display:inline-flex;margin-bottom:14px;padding:4px;border:1px solid var(--dr-line);border-radius:10px;background:#fff}
.page-home .dbtn{min-width:112px;border-radius:7px;padding:10px 18px;font-size:13px}
.page-home .dbtn.on{color:#fff;background:var(--dr-blue);box-shadow:none}
.page-home .filter{display:flex;gap:8px;overflow:auto;scrollbar-width:none;margin:0 0 24px}
.page-home .filter::-webkit-scrollbar{display:none}
.page-home .fchip{flex:none;border:1px solid var(--dr-line);border-radius:999px;background:#fff;padding:9px 16px;color:#525a66}
.page-home .fchip.on{border-color:var(--dr-ink);background:var(--dr-ink);color:#fff}
.page-home .mgrid{grid-template-columns:repeat(4,1fr);gap:18px}
.page-home .mcard{
  min-height:365px;padding:20px 18px 19px;border:1px solid var(--dr-line);border-radius:16px;
  background:#fff;box-shadow:none;text-align:left;overflow:hidden;
}
.page-home .mcard:hover{transform:translateY(-4px);border-color:#cbd6ef;box-shadow:var(--dr-shadow)}
.page-home .mcard.sel{border-color:var(--dr-blue);box-shadow:0 0 0 2px var(--dr-blue)}
.page-home .mcard .mimg{height:164px;margin:0 -2px 18px;border-radius:13px;background:var(--dr-surface);align-items:center}
.page-home .mcard .mimg svg{height:132px}
.page-home .mcard .mnew{height:13px;color:var(--dr-blue);font-weight:850}
.page-home .mcard .mname{font-size:17px;font-weight:850}
.page-home .mcard .mtag{min-height:35px;margin-top:5px;color:var(--dr-muted)}
.page-home .mcard .mprice{margin-top:12px;color:var(--dr-blue);font-size:15px;font-weight:850}
.page-home .mcard .msub{color:var(--dr-muted)}
.page-home .mcard .mtrust{justify-content:flex-start;margin-top:12px}
.page-home .mcard .mtrust span{background:var(--dr-blue-soft);color:#52658f}
.page-home .mcard .msel-badge{top:16px;right:16px;border-radius:7px;background:var(--dr-blue)}
.page-home .price-note{margin-top:22px;padding:16px 18px;border:1px solid #dbe5ff;border-radius:12px;background:#f4f7ff;color:#5a6576}

/* Editorial trust cards */
.benefit-showcase{padding:78px 0 92px;background:#fff}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.benefit-card{
  min-height:390px;padding:30px;border-radius:20px;overflow:hidden;position:relative;
  display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background-position:center;background-size:cover;
  isolation:isolate;box-shadow:none;transition:transform .2s,box-shadow .2s;
}
.benefit-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(11,18,27,.88),rgba(11,18,27,.05) 78%)}
.benefit-card:hover{transform:translateY(-5px);box-shadow:var(--dr-shadow)}
.benefit-card.inspection{background-image:url('assets/hero/hero-inspection.jpg')}
.benefit-card.team{background-image:url('assets/hero/hero-team.jpg')}
.benefit-card.local{background-image:url('assets/hero/hero-local.jpg')}
.benefit-card>span{display:inline-flex;width:max-content;margin-bottom:auto;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.9);color:#28303b;font-size:10px;font-weight:900}
.benefit-card strong{font-size:27px;line-height:1.2;letter-spacing:-.045em;font-weight:850}
.benefit-card small{margin-top:12px;color:rgba(255,255,255,.76);font-size:12px;line-height:1.5}

/* Builder */
.page-home .bo{background:#fff}
.page-home .bo-head{background:#fff;border-color:var(--dr-line)}
.page-home .bo-head-in>b{color:var(--dr-ink)}
.page-home .bo .snum,.page-home .bo .app.sel .ck{background:var(--dr-blue)}
.page-home .bo .opt.sel,.page-home .bo .app.sel,.page-home .bo .addon.sel{border-color:var(--dr-blue);background:var(--dr-blue-soft);box-shadow:0 0 0 1px var(--dr-blue)}
.page-home .bo .btn-blue{background:var(--dr-blue)}

.page-home .final{
  width:min(1240px,calc(100% - 48px));margin:0 auto 74px;padding:78px 40px;
  border-radius:22px;background:linear-gradient(135deg,#1d2d55,#314e91);color:#fff;
}
.page-home .final .wrap{max-width:900px;text-align:center}
.page-home .final h2{font-family:inherit;font-size:clamp(30px,4vw,48px);font-weight:900;letter-spacing:-.045em}
.page-home .final p{max-width:700px;margin:16px auto 0;color:rgba(255,255,255,.72)}
.page-home .final .btn-blue{margin-top:28px;border-radius:9px;background:#fff;color:#233660;box-shadow:none}

/* Home footer */
.page-home footer{padding:54px 0;background:var(--dr-footer);border-top:1px solid var(--dr-line);color:#6b7280}
.page-home footer .f-cols{border-color:#dfe3e9}
.page-home footer .flogo,.page-home footer h4{color:var(--dr-ink)}

/* Shared inner-page shell */
.page-details,.page-policies,.page-support{--ink:var(--dr-ink);--text:var(--dr-text);--muted:var(--dr-muted);--line:var(--dr-line);--bg:#fff;--card:#fff;--gold:var(--dr-blue);--navy:#1e2c48}
.page-details .wrap{width:min(1160px,calc(100% - 48px))}
.page-details .top,.page-policies .top,.page-support .top{background:rgba(255,255,255,.96);border-bottom:1px solid var(--dr-line);backdrop-filter:blur(18px)}
.page-details .topin{height:72px}
.page-details .brand img,.page-policies .brand img,.page-support .brand img{object-fit:contain}
.page-details .nav a:hover{color:var(--dr-blue);text-decoration:none}
.page-details .cta,.page-policies .doc-link,.page-support .btn{border-radius:9px;background:var(--dr-blue);color:#fff}
.page-details .ghost,.page-policies .back,.page-support .back{border-radius:9px;border-color:var(--dr-line);background:#fff}
.page-details .hero,.page-policies .hero,.page-support .hero{
  background:linear-gradient(135deg,#f4f7ff 0%,#f7f8fa 64%,#eef3ff 100%);
  border-bottom:1px solid var(--dr-line);
}
.page-details .hero{padding:100px 0 82px}
.page-details .kicker,.page-policies .eyebrow,.page-policies .kicker,.page-support .eyebrow,.page-support .kicker{color:var(--dr-blue)}
.page-details h1,.page-policies h1,.page-support h1{font-family:inherit;font-weight:900;letter-spacing:-.055em}
.page-details .section{padding:84px 0;border-color:var(--dr-line)}
.page-details .section.alt{background:var(--dr-surface)}
.page-details .card,.page-details .person,.page-details .faq details,.page-support .quicknav a,.page-support .step,.page-support .action,.page-support .form,.page-support .faq details{
  border:1px solid var(--dr-line);border-radius:15px;background:#fff;box-shadow:none;
}
.page-details .card{padding:26px}
.page-details .num{background:var(--dr-blue)}
.page-details .table-wrap{border-color:var(--dr-line);border-radius:15px;box-shadow:none}
.page-details th{background:#f3f5f8}
.page-details .person img{width:104px;height:104px;border-radius:16px}
.page-details .badge{background:var(--dr-blue-soft);color:#4661a5}
.page-details .callout{background:#243558}
.page-details .faq details[open]{border-color:#bdcdf8}
.page-details footer,.page-policies footer,.page-support footer{background:var(--dr-footer);color:#6b7280;border-top:1px solid var(--dr-line)}

/* Policies */
.page-policies .wrap{max-width:1040px}
.page-policies .top-in{height:68px}
.page-policies .hero{padding:78px 0 54px}
.page-policies .tabs{gap:9px;padding:20px 24px;position:sticky;top:68px;z-index:8;background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}
.page-policies .tabs a{border-radius:9px;border-color:var(--dr-line);font-weight:750}
.page-policies .tabs a:hover{border-color:var(--dr-blue);color:var(--dr-blue)}
.page-policies .policy{padding:70px 0;border-color:var(--dr-line)}
.page-policies .summary div,.page-policies .checklist li{border-color:var(--dr-line);border-radius:13px;background:#fff}
.page-policies .summary div{background:var(--dr-surface)}
.page-policies .checklist li::before{background:var(--dr-blue)}
.page-policies .callout{background:var(--dr-blue-soft);color:#46577f}

/* Support */
.page-support .wrap{width:min(1040px,calc(100% - 40px))}
.page-support .topin{height:68px}
.page-support .hero{padding:78px 0 58px}
.page-support .quicknav{grid-template-columns:repeat(3,1fr);gap:12px}
.page-support .quicknav a{min-height:90px}
.page-support .quicknav a:hover{border-color:#b9c9f4;box-shadow:var(--dr-shadow)}
.page-support .section{padding:66px 0;border-color:var(--dr-line)}
.page-support .step,.page-support .action,.page-support .form{padding:21px}
.page-support .step b{color:var(--dr-blue)}
.page-support input,.page-support select,.page-support textarea{border-color:var(--dr-line);background:#f8f9fb}
.page-support .contact{background:#203154}
.page-support .contact .btn{background:var(--dr-blue)}

/* Floating Kakao CTA */
.page-home .kakao-float,.page-policies .kakao-float,.page-support .kakao-float,.page-details .kakao{
  border:0;box-shadow:0 12px 30px rgba(25,32,45,.18);
}

@media(max-width:1000px){
  .page-home .nav-links{display:none}
  .discovery-grid{grid-template-columns:repeat(3,1fr)}
  .page-home .mgrid{grid-template-columns:repeat(3,1fr)}
  .benefit-grid{grid-template-columns:1fr 1fr}
  .benefit-card:last-child{grid-column:1/-1;min-height:330px}
}

@media(max-width:700px){
  .page-home .wrap{padding-left:18px;padding-right:18px}
  .page-home .nav-in{height:62px}
  .page-home .logo-mark.brand-logo{width:36px;height:36px;flex-basis:36px}
  .page-home .logo-type small{display:none}
  .page-home .nav .btn-blue{min-height:39px;padding:0 15px;font-size:12px}
  .catalog-rail-inner{height:46px;padding:0 18px;gap:23px}
  .page-home .hero{width:calc(100% - 24px);margin-top:12px;border-radius:20px}
  .page-home .hero-carousel,.page-home .hero-slide{min-height:520px}
  .page-home .hero-slide{background-position:67% center}
  .page-home .hero-slide-inner{width:calc(100% - 44px);padding:105px 0 115px}
  .page-home .hero-slide h1,.page-home .hero-slide h2{font-size:38px;white-space:normal}
  .page-home .hero-arrow{display:none}
  .home-discovery{padding:42px 0 52px}
  .home-section-head{align-items:flex-start;margin-bottom:20px}
  .home-section-head h2{font-size:25px}
  .discovery-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .discovery-card{padding:14px;min-height:150px}
  .discovery-icon{width:52px;height:52px;margin-bottom:14px;border-radius:14px;font-size:9px}
  .page-home #models{padding:58px 0 64px}
  .page-home #models .sec-title{font-size:32px}
  .page-home .models-brandline{align-items:flex-start;gap:7px}
  .page-home .mgrid{grid-template-columns:repeat(2,1fr);gap:10px}
  .page-home .mcard{min-height:330px;padding:14px 12px;text-align:left}
  .page-home .mcard .mimg{height:130px;margin-bottom:14px}
  .page-home .mcard .mimg svg{height:106px}
  .page-home .mcard .mname{font-size:15px}
  .page-home .mcard .mtrust{display:none}
  .benefit-showcase{padding:58px 0 72px}
  .benefit-grid{grid-template-columns:1fr}
  .benefit-card,.benefit-card:last-child{grid-column:auto;min-height:335px;padding:24px}
  .benefit-card strong{font-size:25px}
  .page-home .final{width:calc(100% - 24px);margin-bottom:48px;padding:62px 18px;border-radius:18px}
  .page-details .wrap,.page-support .wrap{width:calc(100% - 36px)}
  .page-details .topin{height:62px}
  .page-details .top .nav{display:none}
  .page-details .hero,.page-policies .hero,.page-support .hero{padding:66px 0 52px}
  .page-details .section,.page-policies .policy,.page-support .section{padding:54px 0}
  .page-details .card,.page-details .person{border-radius:13px}
  .page-policies .tabs{top:56px;overflow:auto;flex-wrap:nowrap;padding-left:18px;padding-right:18px;scrollbar-width:none}
  .page-policies .tabs a{flex:none}
  .page-support .quicknav{grid-template-columns:1fr 1fr}
}

@media(max-width:430px){
  .page-home .mgrid{grid-template-columns:1fr 1fr}
  .page-home .mcard{min-height:310px}
  .page-home .mcard .mtag{min-height:34px}
  .page-support .quicknav{grid-template-columns:1fr}
}
