:root{--orange:#ff6b35;--orange2:#ff9f2e;--ink:#292522;--muted:#776e68;--cream:#fff8f0;--line:#eee3d8}
    *{box-sizing:border-box}
 html{scroll-behavior:smooth}
 body{margin:0;font-family:'Noto Sans KR',sans-serif;color:var(--ink);background:#fffdfa}
    a{text-decoration:none;color:inherit}
 header{height:84px;display:flex;align-items:center;gap:34px;padding:0 max(5vw,32px);background:rgba(255,255,255,.95);position:sticky;top:0;z-index:10;border-bottom:1px solid #f3ece5}
 .brand img{width:150px;height:auto;display:block}
 nav{display:flex;gap:30px;margin:auto;font-size:14px}
 nav a:hover{color:var(--orange)}
 .btn{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(90deg,var(--orange),#ff7848);color:#fff;border:0;border-radius:999px;padding:17px 28px;font-weight:600;box-shadow:0 10px 30px rgba(255,107,53,.18);cursor:pointer}.btn.small{padding:12px 19px;font-size:13px}
 .hero{min-height:620px;display:grid;grid-template-columns:1fr 1fr;max-width:1280px;margin:auto;padding:72px 52px 84px;gap:58px;align-items:center}
 .hero-copy{max-width:540px}
 .kicker,.sectionhead>span,.diag-copy>span{font-size:12px;letter-spacing:.12em;color:var(--orange);font-weight:700}
 .hero h1{font-size:54px;line-height:1.28;letter-spacing:-.055em;margin:22px 0 26px;font-weight:600}
 .hero h1 em,.sectionhead em,.diag-copy em{font-style:normal;color:var(--orange)}
 .hero p{font-size:17px;line-height:1.9;color:var(--muted);margin-bottom:30px}
 .hero-points{display:flex;gap:22px;margin-top:34px;font-size:12px;color:#655d57}
 .hero-photo{height:500px;border-radius:42% 42% 24px 24px;overflow:hidden;position:relative;box-shadow:0 25px 70px rgba(92,63,39,.15)}
 .hero-photo>img{width:100%;height:100%;object-fit:cover}
 .photo-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:230px;height:230px;border-radius:50%;background:rgba(246,222,190,.93);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 15px 50px rgba(70,45,20,.15)}
 .photo-badge img{width:155px}
 .photo-badge strong{font-size:16px;line-height:1.7;font-weight:500}
 .section{padding:105px max(5vw,40px)}
 .tint{background:linear-gradient(180deg,#fff8f0,#fffdf9)}
 .sectionhead{text-align:center;max-width:700px;margin:0 auto 55px}
 .sectionhead h2,.diag-copy h2{font-size:38px;line-height:1.45;letter-spacing:-.045em;margin:14px 0 14px;font-weight:600}
 .sectionhead p{color:var(--muted);line-height:1.8}
 .channels{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
 .channels article{background:#fff;padding:30px 16px;border-radius:22px;text-align:center;border:1px solid #f3e9df;box-shadow:0 12px 35px rgba(90,65,45,.05)}
 .media-logo{width:48px;height:48px;border-radius:14px;margin:0 auto 18px;display:grid;place-items:center;font-size:25px;font-weight:800}
 .naver{background:#03c75a;color:#fff}
 .youtube{background:#ff0033;position:relative}
 .youtube i{width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:13px solid white;margin-left:3px}
 .instagram{background:linear-gradient(135deg,#6a3de8,#e7368f,#ff9b32);color:#fff}
 .tiktok{background:#111;color:#fff}
 .search,.analytics{background:#fff1e7;color:var(--orange)}
 .channels h3{font-size:14px;margin:0 0 8px}
 .channels p{font-size:12px;color:#8b817a;margin:0}
 .why{max-width:1080px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}
 .why article{padding:18px}
 .why b{font-size:11px;color:#d7c6b7}
 .why article div{width:68px;height:68px;border-radius:50%;background:#fff2e7;color:var(--orange);display:grid;place-items:center;margin:16px auto;font-size:26px}
 .why h3{font-size:17px}
 .why p{font-size:13px;line-height:1.75;color:var(--muted)}
 .flow{max-width:950px;margin:52px auto 0;background:#fff7ef;border:1px solid #f1e1d3;border-radius:999px;padding:20px 28px;display:flex;justify-content:center;align-items:center;gap:18px;font-size:14px}
 .flow i{font-style:normal;color:#d0b6a2}
 .flow strong{color:var(--orange)}
 .diagnosis{padding-top:60px}
 .diag-wrap{max-width:1180px;margin:auto;border-radius:32px;overflow:hidden;display:grid;grid-template-columns:1.05fr .95fr;background:linear-gradient(110deg,rgba(255,247,237,.96),rgba(255,239,222,.92)),url('assets/hero-cafe.jpg') center/cover;box-shadow:0 20px 60px rgba(82,54,34,.1)}
 .diag-copy{padding:68px 58px}
 .diag-copy h2{font-size:36px}
 .diag-copy p{line-height:1.85;color:#6e645d}
 .diag-copy blockquote{margin:70px 0 0;font-size:17px;line-height:1.8;font-weight:500;transform:rotate(-2deg)}
 .diag-card{margin:34px;background:rgba(255,255,255,.94);border-radius:24px;padding:30px;box-shadow:0 18px 50px rgba(69,44,28,.12)}
 .diag-card h3{margin-top:0}
 .diag-card input,
 .diag-card select{width:100%;border:1px solid #e7ddd4;background:#fff;border-radius:12px;padding:14px 15px;margin-bottom:11px;font:inherit;font-size:13px}
 .diag-card select:invalid {
    color:#958a82;
    font-weight:400;
}

.diag-card select option {
    color:#292522;
    font-weight:400;
}

 .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .checks{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:12px;margin:5px 0 18px}
 .full{width:100%}
 .diag-card small{display:block;text-align:center;color:#958a82;margin-top:12px;font-size:10px}
 .diag-result{display:none}
 .diag-result.show{display:block;padding:10px}
 .cases{max-width:1120px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
 .cases article{background:#fff;border-radius:20px;overflow:hidden;border:1px solid #eee5dc}
 .cases img{width:100%;height:170px;object-fit:cover;display:block}
 .cases h3{font-size:15px;margin:18px 18px 8px}
 .cases p{font-size:12px;line-height:1.7;color:var(--muted);margin:0 18px 22px}
 .contact{text-align:center;background:#fff5eb;padding:95px 30px}
 .contact img{width:180px}
 .contact h2{font-size:35px;line-height:1.5;font-weight:500;margin:22px 0 28px}
 footer{display:flex;align-items:center;gap:30px;padding:35px max(5vw,40px);font-size:11px;color:#8b817a;border-top:1px solid #eee6df}
 footer img{width:130px;margin-right:auto}@media(max-width:900px){header nav{display:none}.hero{grid-template-columns:1fr;padding:55px 24px}.hero h1{font-size:42px}.hero-photo{height:420px}.channels{grid-template-columns:repeat(2,1fr)}.why,.cases{grid-template-columns:repeat(2,1fr)}.diag-wrap{grid-template-columns:1fr}.diag-copy{padding:50px 32px 20px}.diag-copy blockquote{margin-top:35px}.section{padding:80px 24px}.flow{border-radius:24px;flex-wrap:wrap}.hero-points{flex-wrap:wrap}}@media(max-width:560px){header{height:70px;padding:0 16px}.brand img{width:120px}header .btn.small{font-size:11px;padding:10px 12px}.hero h1{font-size:36px}.hero-photo{height:350px}.sectionhead h2,.diag-copy h2{font-size:30px}.why,.cases{grid-template-columns:1fr}.channels{grid-template-columns:1fr 1fr}.diag-card{margin:18px}.two{grid-template-columns:1fr}.contact h2{font-size:29px}footer{flex-wrap:wrap}}



 /* V7 — warm refined palette + photographic hero */
:root{--orange:#E86F45;--orange2:#F4A261;--ink:#302A27;--muted:#756B64;--cream:#FAF7F2;--line:#EDE4DA;--sage:#78866B;--paper:#FFFDF9}
body{background:var(--paper)}
header{background:rgba(255,253,249,.94);border-bottom:1px solid rgba(237,228,218,.85);backdrop-filter:blur(12px)}
nav a:hover{color:var(--orange)}
.btn{background:var(--orange);box-shadow:0 12px 30px rgba(232,111,69,.16);transition:.25s ease}
.btn:hover{background:#D9603A;transform:translateY(-2px)}.btn span{margin-left:8px;transition:.25s}.btn:hover span{transform:translateX(4px)}
.hero{grid-template-columns:46fr 54fr;max-width:1380px;min-height:680px;padding:74px 58px 96px;gap:70px}
.hero-copy{max-width:555px}.hero h1{font-size:58px;line-height:1.24;font-weight:500;margin:0 0 28px;letter-spacing:-.055em}.hero h1 em{color:var(--orange);font-weight:600}.hero p{font-size:17px;line-height:1.9;margin-bottom:31px}.hero p strong{color:#514943;font-weight:500}
.hero-photo{height:540px;border-radius:34px;overflow:hidden;box-shadow:0 28px 70px rgba(76,55,42,.13);position:relative;background:#eee}.hero-photo:before{content:"";position:absolute;z-index:-1;width:420px;height:420px;border-radius:50%;background:#F5D7C7;right:-95px;bottom:-100px;opacity:.5}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:67% center;filter:saturate(.9) contrast(.98)}.hero-photo-caption{position:absolute;left:30px;bottom:28px;padding:12px 16px;border-radius:14px;background:rgba(255,253,249,.82);backdrop-filter:blur(8px);font-size:13px;line-height:1.6;color:#514943}
.hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px}.hero-points article{display:flex;align-items:center;gap:10px;padding:15px 14px;border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:0 8px 24px rgba(67,50,39,.04)}.hero-points b{width:34px;height:34px;border-radius:50%;background:#F9E7DD;color:var(--orange);display:grid;place-items:center}.hero-points strong{display:block;font-size:12px;font-weight:600;color:var(--ink)}.hero-points small{display:block;margin-top:3px;font-size:10px;color:#968A82}
.tint{background:linear-gradient(180deg,#FAF7F2,#FFFDF9)}.sectionhead>span,.diag-copy>span{color:var(--orange)}.search,.analytics,.why article div{background:#F7E7DE;color:var(--orange)}.flow{background:#F8F3ED;border-color:var(--line)}.flow strong{color:var(--orange)}
.diagnosis .diag-wrap{background:linear-gradient(110deg,rgba(250,247,242,.97),rgba(239,230,220,.91)),url('assets/hero-photo-real.jpg') center/cover}.contact{background:#F5EFE8}.channels article,.cases article{border-color:var(--line)}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding:54px 24px 80px}.hero h1{font-size:46px}.hero-photo{height:470px}.hero-points{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:560px){.hero h1{font-size:38px}.hero-photo{height:380px}.hero-points{grid-template-columns:1fr}.hero-photo-caption{left:18px;bottom:18px}}

/* V8 — reproduce the approved hero composition instead of reinterpreting it */
:root{--orange:#E86F45;--orange2:#F4A261;--ink:#302A27;--muted:#6F6660;--cream:#FAF7F2;--line:#EDE4DA}
body{background:#FAF7F2}
header{height:88px;max-width:none;padding:0 max(5vw,64px);background:rgba(250,247,242,.96)}
.brand img{width:168px}nav{font-size:14px;gap:36px}
.btn{background:var(--orange);box-shadow:0 12px 28px rgba(232,111,69,.16)}
.hero-reference-layout{position:relative;display:block;max-width:1600px;height:720px;min-height:0;margin:0 auto;padding:0;overflow:hidden;background:#FAF7F2}
.hero-reference-layout .hero-photo{position:absolute;z-index:1;right:0;top:44px;width:61%;height:620px;border-radius:42px 0 0 42px;overflow:hidden;box-shadow:none;background:#eee}
.hero-reference-layout .hero-photo:before{display:none}
.hero-reference-layout .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:54% center;filter:saturate(.92) contrast(.99)}
.hero-reference-layout .hero-copy{position:absolute;z-index:3;left:0;top:0;width:57%;height:720px;max-width:none;padding:105px 90px 70px 88px;background:#FAF7F2;display:flex;flex-direction:column;justify-content:center}
.hero-reference-layout .hero-copy:after{content:"";position:absolute;z-index:-1;right:-190px;top:-80px;width:370px;height:900px;background:#FAF7F2;border-radius:0 100% 100% 0 / 0 50% 50% 0;transform:rotate(-4deg)}
.hero-reference-layout h1{font-size:62px;line-height:1.18;font-weight:500;letter-spacing:-.055em;margin:0 0 34px;color:var(--ink)}
.hero-reference-layout h1 em{color:var(--orange);font-weight:600}
.hero-reference-layout p{font-size:18px;line-height:1.9;color:#655D57;margin:0 0 32px}.hero-reference-layout p strong{font-weight:500;color:#514943}
.hero-reference-layout .btn{align-self:flex-start;padding:17px 28px}
.hero-reference-layout .hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:38px;max-width:690px}
.hero-reference-layout .hero-points article{min-height:86px;padding:16px 15px;background:rgba(255,253,249,.96);border:1px solid #EDE4DA;border-radius:18px;box-shadow:0 8px 24px rgba(67,50,39,.035)}
.hero-reference-layout .hero-points b{flex:0 0 36px;width:36px;height:36px;background:#F9E7DD;color:var(--orange)}
.hero-reference-layout .hero-points strong{font-size:13px}.hero-reference-layout .hero-points small{font-size:10px;line-height:1.5}
@media(max-width:1100px){.hero-reference-layout{height:auto;display:grid;grid-template-columns:1fr;padding:48px 28px 70px}.hero-reference-layout .hero-photo{position:relative;order:2;top:auto;right:auto;width:100%;height:520px;border-radius:32px}.hero-reference-layout .hero-copy{position:relative;order:1;left:auto;top:auto;width:100%;height:auto;padding:40px 0 46px}.hero-reference-layout .hero-copy:after{display:none}.hero-reference-layout h1{font-size:52px}.hero-reference-layout .hero-points{max-width:none}}
@media(max-width:620px){header{padding:0 18px}.brand img{width:128px}.hero-reference-layout{padding:28px 20px 56px}.hero-reference-layout h1{font-size:40px}.hero-reference-layout p{font-size:15px}.hero-reference-layout .hero-points{grid-template-columns:1fr}.hero-reference-layout .hero-photo{height:400px}}
/* V9 — approved new logo asset */
.brand img{width:190px;max-height:64px;object-fit:contain;object-position:left center}
.contact img{width:230px;max-height:110px;object-fit:contain}
footer img{width:170px;max-height:75px;object-fit:contain}
@media(max-width:620px){.brand img{width:150px}}
/* V10 — desktop hero uses the approved visual itself, without reinterpreting its photo shape */
.hero-exact{position:relative;width:100%;background:#fff;overflow:hidden}
.hero-exact-art{width:100%;aspect-ratio:1820/737;background:url('assets/approved-hero-exact.jpg') center top/100% 100% no-repeat}
.hero-exact-cta{position:absolute;left:6.1%;top:52.5%;width:18.6%;height:9.5%;border-radius:999px}
@media(max-width:900px){.hero-exact{display:none}}

/* 브랜드 로고 공통 */
.media-logo.brand-icon {
    width:58px;
    height:58px;
    border-radius:16px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-inline:auto;
    box-shadow:0 7px 20px rgba(48,42,39,.07);
    border:1px solid rgba(48,42,39,.06);
    overflow:hidden;
}

/* 완성된 로고 이미지를 영역에 꽉 채움 */
.media-logo.brand-icon img {
    display:block;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    object-fit:cover;
}


/* V14 Business Solution — 승인된 저채도 실사 이미지 스타일 */
.business-solution{background:#FAF7F2}
.business-solution .cases{max-width:1220px;gap:20px}
.business-solution .cases article{position:relative;border-radius:22px;border:1px solid #eadfd5;box-shadow:0 14px 34px rgba(69,52,40,.055);background:#fff;transition:transform .22s ease,box-shadow .22s ease}
.business-solution .cases article:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(69,52,40,.09)}
.business-solution .cases img{height:210px;filter:saturate(.82) contrast(.96);object-position:center}
.case-copy{position:relative;padding:20px 20px 22px;min-height:150px}
.business-solution .cases h3{font-size:18px;margin:0 0 6px;letter-spacing:-.035em}
.business-solution .cases strong{display:block;font-size:13px;font-weight:500;color:#4f4843;margin-bottom:16px}
.business-solution .cases p{font-size:11.5px;margin:0 38px 0 0;line-height:1.65;color:#81766f}
.case-arrow{position:absolute;right:18px;bottom:18px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff0e6;color:#E86F45;font-size:17px}
@media(max-width:900px){.business-solution .cases img{height:220px}}

/* V15 — 웃는 사장님 실사 CTA */
.owners-cta{
  position:relative;
  min-height:640px;
  overflow:hidden;
  display:grid;
  place-items:center;
  isolation:isolate;
  background:#d9d0c5;
}
.owners-cta-bg{
  position:absolute; inset:0; z-index:-3;
  background:url("assets/owners-cta-bg.jpg") center center/cover no-repeat;
}
.owners-cta-overlay{
  position:absolute; inset:0; z-index:-2;
  background:
    radial-gradient(ellipse at center, rgba(250,247,242,.62) 0%, rgba(250,247,242,.42) 27%, rgba(250,247,242,.12) 50%, rgba(48,42,39,.06) 100%);
}
.owners-cta-content{
  width:min(680px,88%);
  text-align:center;
  padding:68px 40px;
}
.owners-cta-logo{
  display:block;
  width:260px;
  max-width:58%;
  height:auto;
  margin:0 auto 42px;
}
.owners-cta h2{
  margin:0 0 42px;
  font-size:clamp(34px,3vw,52px);
  line-height:1.48;
  letter-spacing:-.045em;
  font-weight:500;
  color:#302A27;
}
.owners-cta-btn{
  min-width:230px;
  justify-content:center;
  box-shadow:0 14px 30px rgba(232,111,69,.18);
}
@media(max-width:760px){
  .owners-cta{min-height:570px}
  .owners-cta-bg{background-position:center center}
  .owners-cta-content{padding:60px 22px}
  .owners-cta-logo{width:210px;margin-bottom:32px}
  .owners-cta h2{font-size:31px;margin-bottom:34px}
}

/* V16 — 순수 이미지 배경 적용 */
.owners-cta-overlay{
  background:
    radial-gradient(ellipse at center,
      rgba(250,247,242,.48) 0%,
      rgba(250,247,242,.30) 28%,
      rgba(250,247,242,.08) 52%,
      rgba(48,42,39,.04) 100%);
}
.owners-cta-bg{
  background-image:url("assets/owners-cta-bg.jpg");
  background-position:center center;
  background-size:cover;
}

/* V17 — Company footer */
.site-footer{
  background:#302A27;
  color:#d9d0c8;
  padding:58px max(5vw,32px) 24px;
}
.footer-inner{
  max-width:1280px;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  gap:70px;
  align-items:flex-start;
}
.footer-brand img{
  width:170px;
  height:auto;
  filter:none;
  margin-bottom:18px;
}
.footer-brand p{
  margin:0;
  color:#a99f98;
  font-size:13px;
  line-height:1.8;
}
.footer-company{
  max-width:720px;
  padding-top:4px;
}
.footer-company strong{
  display:block;
  color:#fff;
  font-size:16px;
  margin-bottom:17px;
}
.footer-info{
  display:flex;
  flex-wrap:wrap;
  gap:8px 0;
  color:#bdb3ac;
  font-size:13px;
  line-height:1.7;
}
.footer-info span:not(:last-child)::after{
  content:"";
  display:inline-block;
  width:1px;
  height:11px;
  background:#625a55;
  margin:0 13px;
  vertical-align:-1px;
}
.footer-bottom{
  max-width:1280px;
  margin:42px auto 0;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.09);
  color:#7f7670;
  font-size:11px;
}
@media(max-width:760px){
  .site-footer{padding:44px 24px 22px}
  .footer-inner{display:block}
  .footer-company{margin-top:34px}
  .footer-info{display:block}
  .footer-info span{display:block;margin-bottom:5px}
  .footer-info span:not(:last-child)::after{display:none}
  .footer-bottom{margin-top:30px}
}

/* V18 privacy */
.privacy-consent{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 8px;font-size:13px;color:#625952}
.consent-check{display:flex;align-items:center;gap:8px;cursor:pointer}.consent-check input{width:17px;height:17px;accent-color:#E86F45}.consent-check b{color:#E86F45}
.privacy-open,.footer-policy button{border:0;background:none;padding:0;color:#6e625b;text-decoration:underline;cursor:pointer;font:inherit}
.footer-policy{max-width:1280px;margin:25px auto -22px}.footer-policy button{color:#bdb3ac;font-size:12px}
.privacy-modal{display:none;position:fixed;inset:0;z-index:9999}.privacy-modal.is-open{display:block}.privacy-backdrop{position:absolute;inset:0;background:rgba(25,21,19,.58);backdrop-filter:blur(5px)}
.privacy-dialog{position:relative;width:min(820px,calc(100% - 32px));max-height:88vh;overflow:auto;margin:6vh auto;background:#fffdf9;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.22)}
.privacy-dialog header{padding:42px 48px 28px;border-bottom:1px solid #eee4dc}.privacy-dialog header span{font-size:11px;letter-spacing:.18em;color:#E86F45;font-weight:700}.privacy-dialog header h2{font-size:30px;margin:8px 0 10px;color:#302A27}.privacy-dialog header p{margin:0;color:#766b64;line-height:1.7}
.privacy-body{padding:28px 48px 46px}.privacy-body section{margin:0 0 28px}.privacy-body h3{font-size:16px;color:#302A27;margin:0 0 9px}.privacy-body p{font-size:13px;line-height:1.9;color:#6f655f;margin:0}
.privacy-close{position:absolute;right:22px;top:18px;border:0;background:#f5eee8;width:38px;height:38px;border-radius:50%;font-size:24px;cursor:pointer;color:#5c514b}
@media(max-width:600px){.privacy-dialog header,.privacy-body{padding-left:24px;padding-right:24px}.privacy-dialog header h2{font-size:25px}}

/* V19 — compact premium footer */
.footer-v19{
  background:#302A27;
  color:#bdb3ac;
  padding:50px max(5vw,32px) 24px;
}
.footer-v19 .footer-main{
  max-width:1220px;
  margin:0 auto;
  display:grid;
  grid-template-columns:300px 1fr;
  gap:90px;
  align-items:start;
}
.footer-brand-v19 img{
  width:158px;
  height:auto;
  display:block;
  margin:0 0 17px;
}
.footer-brand-v19 p{
  margin:0;
  color:#9e948e;
  font-size:12.5px;
  line-height:1.8;
  letter-spacing:-.015em;
}
.footer-company-v19{
  padding-top:3px;
}
.footer-company-v19 strong{
  display:block;
  margin:0 0 17px;
  color:#fff;
  font-size:16px;
  font-weight:650;
  letter-spacing:-.025em;
}
.company-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  color:#c1b7b0;
  font-size:13px;
}
.company-row span+span::before{
  content:"";
  display:inline-block;
  width:1px;
  height:11px;
  margin:0 14px;
  background:#625954;
  vertical-align:-1px;
}
.company-address{
  margin:8px 0 0;
  color:#a99f98;
  font-size:13px;
  line-height:1.65;
}
.footer-v19 .footer-lower{
  max-width:1220px;
  margin:36px auto 0;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.09);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  color:#7f7670;
  font-size:11px;
}
.footer-privacy-link{
  appearance:none;
  border:0;
  background:transparent;
  padding:0;
  color:#c2b8b1;
  font:inherit;
  font-size:12px;
  cursor:pointer;
  text-decoration:none;
}
.footer-privacy-link:hover{
  color:#fff;
  text-decoration:underline;
  text-underline-offset:4px;
}
@media(max-width:760px){
  .footer-v19{padding:42px 24px 22px}
  .footer-v19 .footer-main{
    grid-template-columns:1fr;
    gap:31px;
  }
  .footer-brand-v19 img{width:145px}
  .company-row{display:block}
  .company-row span{display:block;margin:0 0 5px}
  .company-row span+span::before{display:none}
  .footer-v19 .footer-lower{
    margin-top:29px;
    display:block;
  }
  .footer-v19 .footer-lower>span{
    display:block;
    margin-top:14px;
  }
}
/* 이전 footer 규칙 중 남아 있는 별도 policy 영역 숨김 */
.footer-policy{display:none!important}

/* V20 — logo removed, all footer content left aligned */
.footer-v20{
  background:#302A27;
  padding:46px max(5vw,32px) 22px;
  color:#bdb3ac;
}
.footer-wrap-v20{
  width:100%;
  max-width:1220px;
  margin:0 auto;
  text-align:left;
}
.footer-company-v20 strong{
  display:block;
  margin:0 0 15px;
  color:#fff;
  font-size:16px;
  font-weight:650;
  letter-spacing:-.025em;
}
.footer-meta-v20{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  font-size:13px;
  color:#c1b7b0;
}
.footer-meta-v20 span+span::before{
  content:"";
  display:inline-block;
  width:1px;
  height:11px;
  margin:0 14px;
  background:#625954;
  vertical-align:-1px;
}
.footer-company-v20 p{
  margin:8px 0 0;
  color:#a99f98;
  font-size:13px;
  line-height:1.65;
}
.footer-bottom-v20{
  margin-top:30px;
  padding-top:17px;
  border-top:1px solid rgba(255,255,255,.09);
  display:flex;
  align-items:center;
  gap:24px;
  justify-content:flex-start;
  color:#7f7670;
  font-size:11px;
}
.footer-bottom-v20 button{
  border:0;
  background:transparent;
  padding:0;
  color:#c2b8b1;
  font:inherit;
  font-size:12px;
  cursor:pointer;
  text-decoration:none;
}
.footer-bottom-v20 button:hover{
  color:#fff;
  text-decoration:underline;
  text-underline-offset:4px;
}
@media(max-width:760px){
  .footer-v20{padding:38px 24px 20px}
  .footer-meta-v20{display:block}
  .footer-meta-v20 span{display:block;margin-bottom:5px}
  .footer-meta-v20 span+span::before{display:none}
  .footer-bottom-v20{display:block;margin-top:25px}
  .footer-bottom-v20 span{display:block;margin-top:13px}
}
/* 이전 footer 레이아웃 완전 비활성 */
.footer-v19 .footer-main,.footer-brand-v19,.footer-policy{display:none!important}

/* V21 — large full-width photographic hero */
.hero-v21{
  position:relative;
  min-height:700px;
  overflow:hidden;
  isolation:isolate;
  background:#f6f1eb;
}
.hero-v21-bg{
  position:absolute; inset:0; z-index:-3;
  background:url("assets/hero-v21-bg.jpg") center center/cover no-repeat;
}
.hero-v21-shade{
  position:absolute; inset:0; z-index:-2;
  background:linear-gradient(90deg,
    rgba(255,253,249,.96) 0%,
    rgba(255,253,249,.91) 24%,
    rgba(255,253,249,.68) 39%,
    rgba(255,253,249,.12) 57%,
    rgba(255,253,249,0) 72%);
}
.hero-v21-content{
  position:relative;
  width:min(1220px,88%);
  margin:0 auto;
  padding:88px 0 66px;
}
.hero-v21 h1{
  margin:0;
  font-size:clamp(48px,4.25vw,70px);
  line-height:1.18;
  letter-spacing:-.05em;
  font-weight:600;
  color:#302A27;
}
.hero-v21 h1 em{
  display:inline-block;
  margin-top:8px;
  color:#F15F36;
  font-style:normal;
  font-weight:600;
}
.hero-v21-content>p{
  margin:27px 0 27px;
  font-size:17px;
  line-height:1.75;
  color:#5f5955;
  letter-spacing:-.025em;
}
.hero-v21-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-width:250px;
  padding:17px 27px;
  border-radius:999px;
  background:#ef7047;
  color:#fff;
  font-size:15px;
  font-weight:600;
  text-decoration:none;
  box-shadow:0 13px 30px rgba(232,111,69,.18);
}
.hero-v21-points{
  display:grid;
  grid-template-columns:repeat(3,150px);
  gap:12px;
  margin-top:31px;
}
.hero-v21-points>div{
  min-height:126px;
  padding:17px 13px 14px;
  border:1px solid rgba(237,225,215,.78);
  border-radius:18px;
  background:rgba(255,253,249,.72);
  backdrop-filter:blur(6px);
  text-align:center;
}
.hero-v21-points b{
  display:block;
  height:27px;
  color:#F15F36;
  font-size:25px;
  line-height:1;
  font-weight:500;
}
.hero-v21-points strong{
  display:block;
  margin:7px 0 5px;
  color:#302A27;
  font-size:13px;
  font-weight:600;
}
.hero-v21-points span{
  display:block;
  color:#80766f;
  font-size:11px;
  line-height:1.55;
}
@media(max-width:900px){
  .hero-v21{min-height:650px}
  .hero-v21-bg{background-position:62% center}
  .hero-v21-shade{background:linear-gradient(90deg,rgba(255,253,249,.95),rgba(255,253,249,.72) 60%,rgba(255,253,249,.18))}
  .hero-v21-content{padding:70px 0 55px}
}
@media(max-width:650px){
  .hero-v21{min-height:720px}
  .hero-v21-bg{background-position:68% center}
  .hero-v21-shade{background:rgba(255,253,249,.78)}
  .hero-v21 h1{font-size:42px}
  .hero-v21-content>p{font-size:15px}
  .hero-v21-points{grid-template-columns:repeat(3,1fr);gap:7px}
  .hero-v21-points>div{padding:14px 7px;min-height:120px}
  .hero-v21-points strong{font-size:11px}
  .hero-v21-points span{font-size:9.5px}
}

/* V22 FIX — baked-in text/card duplication removed */
.hero-v21-bg{
  background-image:url("assets/hero-v22-bg.png") !important;
  background-size:cover !important;
  background-position:center center !important;
}
.hero-v21-shade{
  background:linear-gradient(90deg,
    rgba(255,253,249,.94) 0%,
    rgba(255,253,249,.86) 24%,
    rgba(255,253,249,.55) 40%,
    rgba(255,253,249,.08) 58%,
    rgba(255,253,249,0) 72%) !important;
}

/* V24 — 순수 카페 사진 + 실제 HTML/CSS Hero */
.hero-v21{
  position:relative;
  min-height:720px;
  overflow:hidden;
  isolation:isolate;
  background:#f8f3ed;
}
.hero-v21-bg{
  background-image:url("assets/hero-v24-cafe-bg.jpg") !important;
  background-size:cover !important;
  background-position:center center !important;
}
.hero-v21-shade{
  background:linear-gradient(90deg,
    rgba(255,253,249,.86) 0%,
    rgba(255,253,249,.76) 20%,
    rgba(255,253,249,.48) 34%,
    rgba(255,253,249,.12) 48%,
    rgba(255,253,249,0) 62%) !important;
}
.hero-v21-content{
  width:min(1220px,88%);
  padding:86px 0 62px;
}
.hero-v21 h1{
  font-size:clamp(46px,4vw,66px);
  line-height:1.2;
  font-weight:550;
  letter-spacing:-.045em;
}
.hero-v21 h1 em{
  font-weight:550;
}
.hero-v21-content>p{
  font-size:16px;
  line-height:1.78;
  margin:25px 0 26px;
}
.hero-v21-points>div{
  background:rgba(255,253,249,.76);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
@media(max-width:900px){
  .hero-v21-bg{background-position:58% center !important}
  .hero-v21-shade{
    background:linear-gradient(90deg,
      rgba(255,253,249,.90) 0%,
      rgba(255,253,249,.70) 52%,
      rgba(255,253,249,.12) 100%) !important;
  }
}
@media(max-width:650px){
  .hero-v21{min-height:720px}
  .hero-v21-bg{background-position:62% center !important}
  .hero-v21-shade{
    background:rgba(255,253,249,.70) !important;
  }
  .hero-v21 h1{font-size:40px}
}

/* V25 — Hero 위에서는 투명, 스크롤하면 기존 아이보리 헤더 */
header{
  position:fixed !important;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:1000;
  background:transparent !important;
  border-bottom-color:transparent !important;
  box-shadow:none !important;
  transition:background-color .28s ease, box-shadow .28s ease, border-color .28s ease;
}
header.header-scrolled{
  background:rgba(250,247,242,.97) !important;
  border-bottom:1px solid rgba(70,55,45,.08) !important;
  box-shadow:0 8px 26px rgba(52,42,35,.06) !important;
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}

/* 고정 헤더 뒤로 메인 사진이 올라오도록 */
.hero-v21{
  margin-top:0 !important;
  padding-top:var(--header-overlay-offset, 0px);
}

/* 첫 화면에서는 로고/메뉴 가독성만 유지 */
header:not(.header-scrolled) nav a{
  text-shadow:0 1px 8px rgba(255,255,255,.72);
}

/* V26 — 첫 화면 헤더는 완전 투명, 블러 없음 */
header:not(.header-scrolled){
  background:transparent !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  box-shadow:none !important;
  border-bottom-color:transparent !important;
}

/* 스크롤 후에만 기존 아이보리 배경 */
header.header-scrolled{
  background:#FAF7F2 !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  border-bottom:1px solid rgba(70,55,45,.08) !important;
  box-shadow:0 8px 26px rgba(52,42,35,.06) !important;
}

/* 첫 화면 메뉴에 들어가던 번짐 효과도 제거 */
header:not(.header-scrolled) nav a{
  text-shadow:none !important;
}

/* V27 — 메인 좌측 콘텐츠를 조금 아래로 이동 */
.hero-v21-content{
  padding-top:145px !important;
  padding-bottom:55px !important;
}

@media(max-width:900px){
  .hero-v21-content{
    padding-top:135px !important;
  }
}

@media(max-width:650px){
  .hero-v21-content{
    padding-top:125px !important;
  }
}


/* =========================================================
   현재 운영 중인 마케팅 채널
   ========================================================= */

.current-channel-box{
    margin: 18px 0 22px;
}

.current-channel-title{
    margin: 0 0 12px;
    font-size: 15px;
    font-weight: 600;
    color: #332d29;
}

.current-channel-title span{
    margin-left: 6px;
    font-size: 12px;
    font-weight: 400;
    color: #9b918a;
}


/* 2열 버튼 배치 */
.channel-checks{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 9px;
}


/* 각각의 선택 버튼 */
.channel-checks label{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;

    min-height: 46px;
    padding: 10px 12px;

    border: 1px solid #e7ddd5;
    border-radius: 12px;

    background: #fff;

    font-size: 14px;
    font-weight: 400;
    color: #5c544f;

    cursor: pointer;

    transition:
        border-color .18s ease,
        background .18s ease,
        color .18s ease,
        transform .18s ease;
}


/* 기본 체크박스 숨기기 */
.channel-checks input{
    position: absolute;
    opacity: 0;
    pointer-events: none;
}


/* 마우스 올렸을 때 */
.channel-checks label:hover{
    border-color: #d7b9a7;
    background: #fffaf7;
}


/* 선택됐을 때 */
.channel-checks label:has(input:checked){
    border-color: #e66f3f;
    background: #fff4ee;
    color: #d85f31;
    font-weight: 600;
}


/* 선택 표시 */
.channel-checks label:has(input:checked)::after{
    content: "✓";
    position: absolute;

    top: 50%;
    right: 13px;

    transform: translateY(-50%);

    font-size: 13px;
    font-weight: 700;
}


/* 운영 채널 없음 */
.no-channel-check{
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    min-height: 45px;

    margin-top: 9px;
    padding: 10px 14px;

    border: 1px dashed #d9cec6;
    border-radius: 12px;

    background: #faf8f6;

    font-size: 13px;
    font-weight: 400;
    color: #817770;

    cursor: pointer;
}


/* 없음 체크박스 숨기기 */
.no-channel-check input{
    position: absolute;
    opacity: 0;
}


/* 없음 선택 */
.no-channel-check:has(input:checked){
    border-style: solid;
    border-color: #b8ada6;

    background: #f2eeeb;
    color: #514a46;

    font-weight: 600;
}


/* 모바일 */
@media(max-width: 640px){

    .channel-checks{
        grid-template-columns: 1fr 1fr;
        gap: 7px;
    }

    .channel-checks label{
        min-height: 44px;
        font-size: 13px;
    }

}

/* ==========================================================
   웃는라인 맞춤 마케팅 진단 결과 V3
   ========================================================== */

#diagResult{
    margin-top: 28px;
}

#diagResult.show{
    display: block;
}


/* -----------------------------
   결과 전체 기본
----------------------------- */

#diagResult{
    color: #302b27;
    line-height: 1.75;
}

#diagResult h2,
#diagResult h3,
#diagResult h4,
#diagResult p{
    margin-top: 0;
}


/* -----------------------------
   상단 업체 정보
----------------------------- */

.report-top.report-v3{
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    padding: 28px 30px;

    background: #302a26;
    border-radius: 18px;

    color: #fff;
}

.report-top.report-v3 small{
    display: block;
    margin-bottom: 8px;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;

    color: rgba(255,255,255,.62);
}

.report-top.report-v3 h2{
    margin: 0 0 7px;

    font-size: 25px;
    line-height: 1.3;
    font-weight: 700;

    color: #fff;
}

.report-top.report-v3 .report-meta{
    margin: 0;

    font-size: 13px;
    font-weight: 400;

    color: rgba(255,255,255,.72);
}


/* -----------------------------
   핵심 진단
----------------------------- */

.report-summary{
    position: relative;

    margin-top: 14px;
    padding: 30px;

    border: 1px solid #eadfd7;
    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            #fffaf7 0%,
            #ffffff 72%
        );
}

.report-summary .report-label{
    display: inline-block;

    margin-bottom: 12px;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: .12em;

    color: #e46f40;
}

.report-summary h3{
    max-width: 720px;

    margin-bottom: 14px;

    font-size: 21px;
    line-height: 1.55;
    font-weight: 650;

    letter-spacing: -.02em;

    color: #2f2925;
}

.report-summary p{
    max-width: 760px;

    margin-bottom: 0;

    font-size: 14px;
    line-height: 1.85;

    color: #6f655e;
}


/* -----------------------------
   현재 운영 상태
----------------------------- */

.current-status-result{
    margin-top: 14px;
    padding: 20px 24px;

    border: 1px solid #eee5df;
    border-radius: 15px;

    background: #fff;
}

.current-status-result > small{
    display: block;

    margin-bottom: 10px;

    font-size: 11px;
    font-weight: 600;

    color: #92877f;
}

.current-status-tags{
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

.current-status-tags span{
    display: inline-flex;
    align-items: center;

    min-height: 30px;

    padding: 5px 11px;

    border-radius: 30px;

    background: #f5f1ee;

    font-size: 12px;
    font-weight: 500;

    color: #554c46;
}


/* -----------------------------
   웃는라인 판단
----------------------------- */

.diagnosis-main{
    position: relative;

    margin-top: 14px;
    padding: 26px 28px 27px 31px;

    border: 1px solid #f0d9cc;
    border-radius: 16px;

    background: #fff7f2;
}

.diagnosis-main::before{
    content: "";

    position: absolute;

    top: 23px;
    bottom: 23px;
    left: 0;

    width: 4px;

    border-radius: 0 5px 5px 0;

    background: #e86f3d;
}

.diagnosis-main small{
    display: block;

    margin-bottom: 8px;

    font-size: 11px;
    font-weight: 700;

    color: #df6737;
}

.diagnosis-main h3{
    margin: 0;

    font-size: 17px;
    line-height: 1.7;
    font-weight: 600;

    color: #3d342e;
}


/* -----------------------------
   채널별 판단
----------------------------- */

.channel-analysis{
    margin-top: 14px;
    padding: 25px 27px;

    border: 1px solid #eee5df;
    border-radius: 16px;

    background: #fff;
}

.channel-analysis > h4{
    margin-bottom: 18px;

    font-size: 15px;
    font-weight: 650;

    color: #342e2a;
}

.analysis-item{
    display: grid;

    grid-template-columns: 24px 1fr;

    gap: 8px;

    padding: 13px 0;

    border-top: 1px solid #f2ece8;
}

.analysis-item:first-of-type{
    padding-top: 0;
    border-top: 0;
}

.analysis-item:last-child{
    padding-bottom: 0;
}

.analysis-item > span{
    display: flex;
    align-items: center;
    justify-content: center;

    width: 20px;
    height: 20px;

    margin-top: 3px;

    border-radius: 50%;

    background: #fff0e8;

    font-size: 10px;
    font-weight: 700;

    color: #e46d3d;
}

.analysis-item p{
    margin: 0;

    font-size: 13px;
    line-height: 1.8;

    color: #6b625c;
}


/* -----------------------------
   우선순위 + 검색 방향
----------------------------- */

.report-grid.report-grid-v3{
    display: grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(0,1fr);

    gap: 14px;

    margin-top: 14px;
}

.report-grid-v3 .report-box{
    min-width: 0;

    padding: 25px;

    border: 1px solid #eee5df;
    border-radius: 16px;

    background: #fff;
}

.report-grid-v3 .report-box > small{
    display: block;

    margin-bottom: 7px;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;

    color: #df7042;
}

.report-grid-v3 .report-box h4{
    margin-bottom: 16px;

    font-size: 16px;
    font-weight: 650;

    color: #332d29;
}

.report-grid-v3 .report-box p{
    margin-bottom: 14px;

    font-size: 13px;
    line-height: 1.75;

    color: #746a63;
}


/* -----------------------------
   우선순위
----------------------------- */

.diag-priority-list{
    margin: 0;
    padding: 0;

    list-style: none;

    counter-reset: priority;
}

.diag-priority-list li{
    position: relative;

    min-height: 38px;

    padding:
        9px
        0
        9px
        43px;

    border-top: 1px solid #f1ebe7;

    font-size: 13px;
    line-height: 1.55;

    color: #574f49;

    counter-increment: priority;
}

.diag-priority-list li:first-child{
    border-top: 0;
}

.diag-priority-list li::before{
    content:
        counter(priority);

    position: absolute;

    top: 7px;
    left: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 28px;
    height: 28px;

    border-radius: 50%;

    background: #f8eee8;

    font-size: 11px;
    font-weight: 700;

    color: #df6c3e;
}


/* -----------------------------
   검색 키워드
----------------------------- */

.keyword-list{
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

.keyword-list span{
    display: inline-flex;
    align-items: center;

    min-height: 30px;

    padding: 5px 10px;

    border: 1px solid #eadfd8;
    border-radius: 30px;

    background: #fffaf7;

    font-size: 11px;
    font-weight: 500;

    color: #695e57;
}


/* -----------------------------
   우선순위 낮은 항목
----------------------------- */

.report-dont{
    position: relative;

    margin-top: 14px;
    padding: 21px 24px;

    border-radius: 15px;

    background: #f6f4f2;
}

.report-dont strong{
    display: block;

    margin-bottom: 6px;

    font-size: 13px;
    font-weight: 650;

    color: #514a45;
}

.report-dont p{
    margin: 0;

    font-size: 13px;
    line-height: 1.75;

    color: #7c746e;
}


/* -----------------------------
   정밀진단 CTA
----------------------------- */

#diagResult .lead-box{
    margin-top: 14px;
    padding: 30px;

    border-radius: 18px;

    background: #302a26;

    color: #fff;
}

#diagResult .lead-box h3{
    margin-bottom: 9px;

    font-size: 19px;
    line-height: 1.5;
    font-weight: 650;

    color: #fff;
}

#diagResult .lead-box > p{
    max-width: 720px;

    margin-bottom: 21px;

    font-size: 13px;
    line-height: 1.75;

    color: rgba(255,255,255,.67);
}

#diagResult .lead-row{
    display: grid;

    grid-template-columns:
        1fr
        1fr
        auto;

    gap: 8px;
}

#diagResult .lead-row input{
    width: 100%;
    height: 46px;

    margin: 0;
    padding: 0 14px;

    border: 1px solid rgba(255,255,255,.15);
    border-radius: 10px;

    outline: none;

    background: rgba(255,255,255,.08);

    font-size: 13px;

    color: #fff;
}

#diagResult .lead-row input::placeholder{
    color: rgba(255,255,255,.48);
}

#diagResult .lead-row input:focus{
    border-color: rgba(255,255,255,.45);
}

#diagResult .lead-row button{
    height: 46px;

    padding: 0 22px;

    border: 0;
    border-radius: 10px;

    background: #e86f3d;

    font-size: 13px;
    font-weight: 650;

    color: #fff;

    cursor: pointer;

    transition:
        transform .15s ease,
        opacity .15s ease;
}

#diagResult .lead-row button:hover{
    transform: translateY(-1px);
    opacity: .92;
}


/* -----------------------------
   하단 안내
----------------------------- */

#diagResult .diag-note{
    margin: 12px 4px 0;

    font-size: 10px;
    line-height: 1.6;

    color: #a19790;
}


/* ==========================================================
   모바일
   ========================================================== */

@media(max-width: 700px){

    #diagResult{
        margin-top: 22px;
    }


    .report-top.report-v3{
        padding: 22px;

        border-radius: 15px;
    }

    .report-top.report-v3 h2{
        font-size: 21px;
    }


    .report-summary{
        padding: 23px 21px;

        border-radius: 15px;
    }

    .report-summary h3{
        font-size: 18px;
    }


    .current-status-result{
        padding: 18px 19px;
    }


    .diagnosis-main{
        padding:
            22px
            20px
            22px
            25px;
    }

    .diagnosis-main h3{
        font-size: 15px;
    }


    .channel-analysis{
        padding: 21px 20px;
    }


    .report-grid.report-grid-v3{
        grid-template-columns: 1fr;
    }


    .report-grid-v3 .report-box{
        padding: 21px;
    }


    #diagResult .lead-box{
        padding: 24px 20px;
    }

    #diagResult .lead-box h3{
        font-size: 17px;
    }


    #diagResult .lead-row{
        grid-template-columns: 1fr;
    }

    #diagResult .lead-row button{
        width: 100%;
    }

}

/* =========================================================
   웃는라인 진단 결과 WIDE LAYOUT
   폼 아래 전체 폭 진단 리포트
   ========================================================= */


/* 결과 영역을 전체 폭으로 */
.diagnosis-result-wrap{
    width:100%;
    max-width:1180px;
    margin:38px auto 0;
}


/* 결과 기본 */
#diagResult{
    width:100%;
    margin:0;
    color:#302b27;
}

#diagResult.show{
    display:block;
}


/* =========================================================
   업체명 + 핵심 진단
   ========================================================= */

#diagResult .report-top.report-v3{
    display:block;

    padding:0;
    margin:0 0 12px;

    background:transparent;
    border-radius:0;

    color:#2f2925;
}


#diagResult .report-top.report-v3 > div{
    display:flex;
    align-items:center;
    gap:15px;
    flex-wrap:wrap;
}


#diagResult .report-top.report-v3 small{
    display:inline-flex;
    align-items:center;

    margin:0;

    padding:7px 12px;

    border-radius:30px;

    background:#fff0e9;

    color:#e86d3c;

    font-size:11px;
    font-weight:700;
    letter-spacing:.03em;
}


#diagResult .report-top.report-v3 h2{
    margin:0;

    font-size:15px;
    font-weight:650;

    color:#3c342f;
}


#diagResult .report-top.report-v3 .report-meta{
    display:none;
}



/* =========================================================
   메인 진단 결과
   ========================================================= */

#diagResult .report-summary{
    margin:0;

    padding:31px 34px;

    border:1px solid #eee2da;
    border-radius:18px;

    background:#fff;
}


#diagResult .report-summary .report-label{
    display:none;
}


#diagResult .report-summary h3{
    max-width:850px;

    margin:0 0 12px;

    font-size:25px;
    line-height:1.48;
    font-weight:700;

    letter-spacing:-.035em;

    color:#292522;
}


#diagResult .report-summary h3 strong{
    color:#ef6d3d;
}


#diagResult .report-summary p{
    max-width:950px;

    margin:0;

    font-size:14px;
    line-height:1.85;

    color:#716761;
}



/* =========================================================
   현재 운영 상태
   ========================================================= */

#diagResult .current-status-result{
    display:flex;
    align-items:center;
    gap:15px;

    margin:12px 0 0;

    padding:15px 20px;

    border:1px solid #eee4de;
    border-radius:14px;

    background:#fff;
}


#diagResult .current-status-result > small{
    flex:0 0 auto;

    margin:0;

    font-size:11px;
    font-weight:600;

    color:#8e837c;
}


#diagResult .current-status-tags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}


#diagResult .current-status-tags span{
    padding:5px 10px;

    border-radius:30px;

    background:#f6f2ef;

    font-size:11px;
    color:#5e554f;
}



/* =========================================================
   웃는라인 판단
   ========================================================= */

#diagResult .diagnosis-main{
    margin:12px 0 0;

    padding:24px 27px;

    border:1px solid #f1d9cd;
    border-radius:16px;

    background:#fff7f2;
}


#diagResult .diagnosis-main::before{
    display:none;
}


#diagResult .diagnosis-main small{
    margin:0 0 6px;

    font-size:10px;
    font-weight:700;

    color:#e96d3c;
}


#diagResult .diagnosis-main h3{
    margin:0;

    font-size:16px;
    line-height:1.65;
    font-weight:600;

    color:#3c342f;
}



/* =========================================================
   핵심 3열
   판단 / 우선순위 / 검색어
   ========================================================= */

#diagResult .channel-analysis,
#diagResult .report-grid.report-grid-v3{
    margin-top:12px;
}


/* 채널 판단 */
#diagResult .channel-analysis{
    padding:25px 27px;

    border:1px solid #eee4de;
    border-radius:16px;

    background:#fff;
}


#diagResult .channel-analysis > h4{
    margin:0 0 15px;

    font-size:15px;
    font-weight:650;

    color:#342e2a;
}


#diagResult .analysis-item{
    display:grid;

    grid-template-columns:22px 1fr;

    gap:8px;

    padding:9px 0;

    border-top:1px solid #f3ede9;
}


#diagResult .analysis-item:first-of-type{
    border-top:0;
}


#diagResult .analysis-item > span{
    display:flex;
    align-items:center;
    justify-content:center;

    width:18px;
    height:18px;

    margin-top:3px;

    border-radius:50%;

    background:#fff0e8;

    color:#e96d3c;

    font-size:9px;
    font-weight:700;
}


#diagResult .analysis-item p{
    margin:0;

    font-size:13px;
    line-height:1.7;

    color:#70665f;
}



/* 우선순위 + 검색어 */
#diagResult .report-grid.report-grid-v3{
    display:grid;

    grid-template-columns:1fr 1fr;

    gap:12px;
}


#diagResult .report-grid-v3 .report-box{
    padding:26px;

    border:1px solid #eee4de;
    border-radius:16px;

    background:#fff;
}


#diagResult .report-grid-v3 .report-box > small{
    display:block;

    margin-bottom:6px;

    font-size:9px;
    font-weight:700;
    letter-spacing:.12em;

    color:#e96d3c;
}


#diagResult .report-grid-v3 .report-box h4{
    margin:0 0 16px;

    font-size:16px;
    font-weight:650;

    color:#332d29;
}



/* =========================================================
   우선순위 리스트
   ========================================================= */

#diagResult .diag-priority-list{
    margin:0;
    padding:0;

    list-style:none;

    counter-reset:diagnosisPriority;
}


#diagResult .diag-priority-list li{
    position:relative;

    min-height:38px;

    padding:9px 0 9px 42px;

    border-top:1px solid #f2ece8;

    counter-increment:diagnosisPriority;

    font-size:13px;
    line-height:1.55;

    color:#5c534d;
}


#diagResult .diag-priority-list li:first-child{
    border-top:0;
}


#diagResult .diag-priority-list li::before{
    content:counter(diagnosisPriority);

    position:absolute;

    left:0;
    top:6px;

    display:flex;
    align-items:center;
    justify-content:center;

    width:28px;
    height:28px;

    border-radius:50%;

    background:#fff0e8;

    color:#e96d3c;

    font-size:11px;
    font-weight:700;
}



/* =========================================================
   검색 키워드
   ========================================================= */

#diagResult .keyword-list{
    display:flex;
    flex-wrap:wrap;

    gap:7px;

    margin-top:13px;
}


#diagResult .keyword-list span{
    display:inline-flex;
    align-items:center;

    padding:6px 11px;

    border:0;
    border-radius:30px;

    background:#f6f2ef;

    color:#625952;

    font-size:11px;
    font-weight:500;
}



/* =========================================================
   지금 하지 않아도 되는 것
   ========================================================= */

#diagResult .report-dont{
    margin:12px 0 0;

    padding:23px 26px;

    border-radius:16px;

    background:#f5f2ef;
}


#diagResult .report-dont strong{
    display:block;

    margin-bottom:6px;

    font-size:14px;
    font-weight:650;

    color:#443d38;
}


#diagResult .report-dont p{
    margin:0;

    font-size:13px;
    line-height:1.75;

    color:#766d67;
}



/* =========================================================
   정밀진단
   ========================================================= */

#diagResult .lead-box{
    margin:12px 0 0;

    padding:28px 30px;

    border-radius:17px;

    background:#302a26;

    color:#fff;
}


#diagResult .lead-box h3{
    margin:0 0 7px;

    font-size:18px;
    line-height:1.45;
    font-weight:650;

    color:#fff;
}


#diagResult .lead-box > p{
    max-width:800px;

    margin:0 0 18px;

    font-size:12px;
    line-height:1.7;

    color:rgba(255,255,255,.67);
}


#diagResult .lead-row{
    display:grid;

    grid-template-columns:1fr 1fr auto;

    gap:8px;
}


#diagResult .lead-row input{
    width:100%;
    height:45px;

    margin:0;

    padding:0 14px;

    border:1px solid rgba(255,255,255,.16);
    border-radius:10px;

    background:rgba(255,255,255,.08);

    color:#fff;
}


#diagResult .lead-row input::placeholder{
    color:rgba(255,255,255,.45);
}


#diagResult .lead-row button{
    height:45px;

    padding:0 23px;

    border:0;
    border-radius:10px;

    background:#ed6e3d;

    color:#fff;

    font-size:13px;
    font-weight:650;

    cursor:pointer;
}



/* =========================================================
   하단 안내
   ========================================================= */

#diagResult .diag-note{
    margin:12px 5px 0;

    font-size:10px;
    line-height:1.6;

    color:#9d938c;
}



/* =========================================================
   PC : 결과를 더 넓게
   ========================================================= */

@media(min-width:900px){

    /*
       핵심:
       결과가 오른쪽 폼 폭이 아니라
       진단 섹션 전체 폭을 사용
    */

    .diagnosis-result-wrap{
        width:100%;
        max-width:1180px;
    }


    /*
       현재 채널 판단이 있는 경우
       위쪽은 넓은 문장형으로,
       아래 두 박스는 2열
    */

    #diagResult .channel-analysis{
        width:100%;
    }

}



/* =========================================================
   모바일
   ========================================================= */

@media(max-width:700px){

    .diagnosis-result-wrap{
        margin-top:25px;
    }


    #diagResult .report-summary{
        padding:23px 20px;
    }


    #diagResult .report-summary h3{
        font-size:19px;
    }


    #diagResult .current-status-result{
        display:block;
    }


    #diagResult .current-status-result > small{
        display:block;

        margin-bottom:9px;
    }


    #diagResult .report-grid.report-grid-v3{
        grid-template-columns:1fr;
    }


    #diagResult .lead-box{
        padding:23px 20px;
    }


    #diagResult .lead-row{
        grid-template-columns:1fr;
    }


    #diagResult .lead-row button{
        width:100%;
    }

}