/* =====================================================================
   성모내과 서브페이지 위젯 (port_uj.py 자동 생성 — 직접 수정하지 말고 스크립트를 고치세요)
   ===================================================================== */


/* ---------- #sm_philosophy (from page_about/02_uj-philosophy-premium) ---------- */

#sm_philosophy{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_philosophy{
      font-family:'Pretendard','Noto Sans KR',sans-serif;
      background: var(--bg);
      color: var(--ink);
      letter-spacing: -0.02em;
      word-break: keep-all;
      padding: clamp(90px, 10vw, 160px) 0;
      -webkit-tap-highlight-color: transparent;
      position: relative;
      overflow: hidden;
    }
#sm_philosophy *{ box-sizing: border-box; }
#sm_philosophy .container{
      max-width: 1600px;
      width: 100%;
      margin: 0 auto;
      padding: 0 2vw;
      position: relative;
      z-index: 2;
    }
#sm_philosophy .hero{
      position: relative;
      border-radius: 34px;
      padding: clamp(40px, 6vw, 72px);
      background:
        radial-gradient(1200px 520px at 20% 10%, rgba(14,90,70,.10), transparent 60%),
        radial-gradient(900px 460px at 80% 0%, rgba(42,186,198,.10), transparent 55%),
        linear-gradient(180deg, rgba(225,239,236,.80), rgba(238,246,244,.95));
      border: 1px solid var(--line);
      box-shadow: var(--shadow2);
      overflow: hidden;
      margin-bottom: clamp(42px, 6vw, 70px);
    }
#sm_philosophy .hero::before{
      content:"ST. MARY'S";
      position:absolute;
      right: -10px;
      top: -40px;
      font-weight: 800;
      font-size: clamp(140px, 22vw, 280px);
      letter-spacing: -0.06em;
      color: rgba(14,90,70,.07);
      line-height: 1;
      pointer-events: none;
      transform: rotate(-6deg);
    }
#sm_philosophy .hero::after{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.02) 40%, rgba(0,0,0,0) 100%);
      opacity:.55;
      pointer-events:none;
    }
#sm_philosophy .hero-top{
      display:flex;
      align-items:flex-start;
      justify-content: space-between;
      gap: 26px;
      position: relative;
      z-index: 2;
    }
#sm_philosophy .hero-badge{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding: 10px 14px;
      border-radius: 999px;
      background: rgba(255,255,255,.75);
      border: 1px solid var(--line2);
      box-shadow: 0 8px 22px rgba(14,90,70,.06);
      font-size: 13px;
      font-weight: 700;
      color: rgba(11,18,32,.78);
      letter-spacing: .08em;
      text-transform: uppercase;
      white-space: nowrap;
    }
#sm_philosophy .dot{
      width:8px; height:8px; border-radius:999px;
      background: var(--accent);
      box-shadow: 0 0 0 4px rgba(14,90,70,.10);
      flex: 0 0 auto;
    }
#sm_philosophy .hero-title{
      margin-top: 18px;
      font-size: clamp(44px, 5.2vw, 82px);
      line-height: 1.05;
      letter-spacing: -0.05em;
      font-weight: 800;
      margin-bottom: 18px;
      position: relative;
      z-index: 2;
    }
#sm_philosophy .hero-title small{
      display:block;
      font-size: clamp(14px, 1.6vw, 18px);
      font-weight: 700;
      color: rgba(11,18,32,.66);
      letter-spacing: .02em;
      margin-bottom: 10px;
    }
#sm_philosophy .hero-desc{
      max-width: 860px;
      font-size: clamp(17px, 1.9vw, 22px);
      line-height: 1.75;
      color: rgba(11,18,32,.72);
      margin: 0;
      position: relative;
      z-index: 2;
    }
#sm_philosophy .hero-desc b{
      color: var(--accent);
      font-weight: 700;
    }
#sm_philosophy .hero-meta{
      margin-top: 26px;
      display:flex;
      flex-wrap: wrap;
      gap: 10px;
      position: relative;
      z-index: 2;
    }
#sm_philosophy .pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding: 10px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.70);
      border: 1px solid var(--line2);
      font-size: 13.5px;
      font-weight: 600;
      color: rgba(11,18,32,.74);
    }
#sm_philosophy .pill i{
      width:10px;height:10px;border-radius:999px;
      background: rgba(14,90,70,.22);
      display:inline-block;
    }
#sm_philosophy .letter{
      margin-top: 0;
      border-radius: var(--radius2);
      background:
        linear-gradient(180deg, rgba(255,255,255,.95), rgba(238,246,244,.92)),
        radial-gradient(900px 420px at 10% 0%, rgba(14,90,70,.07), transparent 55%),
        radial-gradient(700px 380px at 90% 0%, rgba(42,186,198,.06), transparent 50%);
      border: 1px solid var(--line);
      box-shadow: var(--shadow);
      padding: clamp(34px, 5.5vw, 64px);
      position: relative;
      overflow: hidden;
      margin-bottom: clamp(46px, 7vw, 90px);
    }
#sm_philosophy .letter::before{
      content:"";
      position:absolute;
      left: 0;
      top: 28px;
      bottom: 28px;
      width: 4px;
      background: linear-gradient(180deg, var(--accent), rgba(14,90,70,.20));
      border-radius: 99px;
      opacity: .9;
    }
#sm_philosophy .letter-inner{
      padding-left: 22px;
      max-width: 920px;
    }
#sm_philosophy .letter-label{
      display:flex;
      align-items:center;
      gap:10px;
      font-size: 13px;
      letter-spacing: .18em;
      font-weight: 800;
      color: rgba(14,90,70,.88);
      margin-bottom: 26px;
      text-transform: uppercase;
    }
#sm_philosophy .letter-label span{
      display:inline-block;
      width: 32px;
      height: 1px;
      background: rgba(14,90,70,.35);
    }
#sm_philosophy .letter p{
      font-size: 18px;
      line-height: 1.95;
      color: rgba(11,18,32,.74);
      margin: 0 0 18px 0;
    }
#sm_philosophy .letter p strong{
      color: rgba(11,18,32,.92);
      font-weight: 700;
    }
#sm_philosophy .signature{
      margin-top: 28px;
      display:flex;
      justify-content: flex-end;
    }
#sm_philosophy .sig-box{
      padding-top: 14px;
      border-top: 1px solid rgba(14,90,70,.15);
      font-size: 15.5px;
      color: rgba(11,18,32,.78);
      font-weight: 700;
      letter-spacing: -0.02em;
      text-align: right;
      min-width: 260px;
    }
#sm_philosophy .layout{
      display:grid;
      grid-template-columns: 1fr 380px;
      gap: 60px;
      align-items: stretch;
    }
#sm_philosophy .principles{
      display:grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 22px;
      align-items: stretch;
    }
#sm_philosophy .p-card{
      display:flex;
      flex-direction: column;
      height: 100%;
      border-radius: var(--radius);
      background:
        linear-gradient(180deg, rgba(225,239,236,.92), rgba(255,255,255,.96));
      border: 1px solid var(--line);
      box-shadow: 0 10px 30px rgba(14,90,70,.06);
      padding: 26px 24px;
      transition: transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);
      position: relative;
      overflow: hidden;
      min-height: 170px;
    }
#sm_philosophy .p-card::before{
      content:"";
      position:absolute;
      inset: 0;
      background:
        radial-gradient(520px 220px at 20% 0%, rgba(14,90,70,.10), transparent 55%),
        radial-gradient(520px 220px at 90% 10%, rgba(42,186,198,.08), transparent 50%);
      opacity: .55;
      pointer-events:none;
    }
#sm_philosophy .p-head{
      display:flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      position: relative;
      z-index: 2;
      margin-bottom: 12px;
      flex: 0 0 auto;
    }
#sm_philosophy .p-num{
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .14em;
      color: rgba(14,90,70,.88);
      text-transform: uppercase;
    }
#sm_philosophy .p-icon{
      width: 42px;
      height: 42px;
      border-radius: 14px;
      background: rgba(14,90,70,.08);
      border: 1px solid rgba(14,90,70,.12);
      display:flex;
      align-items:center;
      justify-content:center;
      position: relative;
      z-index: 2;
      flex: 0 0 auto;
    }
#sm_philosophy .p-icon i{
      width: 14px; height: 14px;
      border-radius: 6px;
      background: rgba(14,90,70,.35);
      display:block;
    }
#sm_philosophy .p-card h3{
      font-size: 21px;
      font-weight: 800;
      letter-spacing: -0.03em;
      margin: 0 0 10px 0;
      position: relative;
      z-index: 2;
      color: rgba(11,18,32,.94);
      flex: 0 0 auto;
    }
#sm_philosophy .p-card p{
      font-size: 15.5px;
      line-height: 1.75;
      margin: 0;
      position: relative;
      z-index: 2;
      color: rgba(11,18,32,.68);

      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      overflow: hidden;

      flex: 1 1 auto;
    }
#sm_philosophy .p-card:hover{
      transform: translateY(-6px);
      box-shadow: 0 18px 48px rgba(14,90,70,.15);
      background: linear-gradient(180deg, rgba(14,90,70,.96), rgba(14,77,62,.92));
      border-color: rgba(255,255,255,.10);
    }
#sm_philosophy .p-card:hover .p-num{ color: rgba(42,186,198,.92); }
#sm_philosophy .p-card:hover h3{ color: rgba(255,255,255,.96); }
#sm_philosophy .p-card:hover p{ color: rgba(255,255,255,.74); }
#sm_philosophy .p-card:hover .p-icon{
      background: rgba(255,255,255,.12);
      border-color: rgba(255,255,255,.18);
    }
#sm_philosophy .p-card:hover .p-icon i{ background: rgba(42,186,198,.85); }
#sm_philosophy .side{
      position: sticky;
      top: 50px;
      border-radius: 30px;
      padding: 44px 30px;
      background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(225,239,236,.90));
      border: 1px solid var(--line);
      box-shadow: var(--shadow2);
      text-align: center;
      overflow: hidden;
      height: auto;
    }
#sm_philosophy .side::before{
      content:"";
      position:absolute;
      left:-120px;
      top:-120px;
      width: 240px;
      height: 240px;
      border-radius: 999px;
      background: rgba(14,90,70,.08);
      filter: blur(0px);
    }
#sm_philosophy .side img{
      width: 100%;
      max-width: 220px;
      margin: 6px auto 24px auto;
      display:block;
      position: relative;
      z-index: 2;
    }
#sm_philosophy .side .side-title{
      font-size: 14px;
      letter-spacing: .18em;
      font-weight: 800;
      color: rgba(14,90,70,.88);
      margin-bottom: 16px;
      text-transform: uppercase;
      position: relative;
      z-index: 2;
    }
#sm_philosophy .side .side-text{
      font-size: 15.5px;
      line-height: 1.9;
      color: rgba(11,18,32,.74);
      position: relative;
      z-index: 2;
    }
#sm_philosophy .side .side-text b{
      color: rgba(11,18,32,.92);
      font-weight: 800;
    }
#sm_philosophy .sm_reveal{
      opacity: 0;
      transform: translateY(12px);
      transition: opacity .55s var(--ease), transform .55s var(--ease);
    }
#sm_philosophy .sm_reveal.sm_active{
      opacity: 1;
      transform: translateY(0);
    }
@media (max-width: 1100px){
#sm_philosophy .layout{ grid-template-columns: 1fr; }
#sm_philosophy .side{ position: static; order: -1; margin-bottom: 26px; height:auto !important; }
}
@media (max-width: 820px){
#sm_philosophy .principles{ grid-template-columns: 1fr; }
#sm_philosophy .hero-top{ flex-direction: column; }
#sm_philosophy .p-card{ min-height: 0; }
#sm_philosophy .p-card p{
        display:block;
        overflow: visible;
      }
}
@media (max-width: 520px){
#sm_philosophy .letter-inner{ padding-left: 16px; }
#sm_philosophy .sig-box{ min-width: 0; width: 100%; }
#sm_philosophy .hero::before{ right: -24px; top: -30px; }
}
#sm_philosophy{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_gastro (from page_endoscopy1/02_uyj_gastro_root) ---------- */

#sm_gastro{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_gastro{font-family:'Pretendard','Noto Sans KR',sans-serif;color:#111!important;background:#fff!important;line-height:1.6!important;-webkit-font-smoothing:antialiased!important;}
#sm_gastro .uyj_section{width:100%!important;padding:100px 0!important;}
#sm_gastro .uyj_section.uyj_bg_light{background:var(--sm-mist)!important;}
#sm_gastro .uyj_section.uyj_bg_dark{background:var(--sm-green-900)!important;}
#sm_gastro .uyj_inner{max-width:1200px!important;margin:0 auto!important;padding:0 40px!important;}
#sm_gastro .uyj_label{display:inline-block!important;font-size:11px!important;font-weight:700!important;letter-spacing:0.18em!important;text-transform:uppercase!important;color:var(--sm-aqua-400)!important;margin-bottom:14px!important;}
#sm_gastro .uyj_sec_title{font-size:36px!important;font-weight:900!important;color:#111!important;line-height:1.25!important;margin-bottom:12px!important;}
#sm_gastro .uyj_sec_title em{color:var(--sm-green-700)!important;font-style:normal!important;}
#sm_gastro .uyj_sec_sub{font-size:16px!important;color:#555!important;line-height:1.7!important;}
#sm_gastro .uyj_divider{width:48px!important;height:4px!important;background:linear-gradient(90deg,var(--sm-green-700),var(--sm-aqua-400))!important;border-radius:2px!important;margin:16px 0 24px!important;display:block!important;}
#sm_gastro .uyj_hero{background:linear-gradient(150deg,var(--sm-green-700) 0%,var(--sm-green-800) 60%,var(--sm-green-900) 100%)!important;padding:120px 0 100px!important;position:relative!important;overflow:hidden!important;}
#sm_gastro .uyj_hero::before{content:''!important;position:absolute!important;top:-120px!important;right:-80px!important;width:600px!important;height:600px!important;background:radial-gradient(circle,rgba(42,186,198,.12) 0%,transparent 70%)!important;pointer-events:none!important;}
#sm_gastro .uyj_hero_inner{max-width:1200px!important;margin:0 auto!important;padding:0 40px!important;display:grid!important;grid-template-columns:1fr 460px!important;gap:80px!important;align-items:center!important;}
#sm_gastro .uyj_hero_badge{display:inline-flex!important;align-items:center!important;gap:8px!important;background:rgba(42,186,198,.18)!important;border:1px solid rgba(42,186,198,.35)!important;border-radius:999px!important;padding:6px 16px!important;font-size:12px!important;font-weight:700!important;color:var(--sm-aqua-400)!important;letter-spacing:.12em!important;margin-bottom:24px!important;}
#sm_gastro .uyj_hero_title{font-size:clamp(36px,4vw,52px)!important;font-weight:900!important;color:#fff!important;line-height:1.2!important;margin-bottom:20px!important;}
#sm_gastro .uyj_hero_title span{color:var(--sm-aqua-400)!important;display:block!important;}
#sm_gastro .uyj_hero_desc{font-size:17px!important;color:rgba(255,255,255,.75)!important;line-height:1.75!important;margin-bottom:40px!important;}
#sm_gastro .uyj_hero_chips{display:flex!important;flex-wrap:wrap!important;gap:10px!important;}
#sm_gastro .uyj_hero_chip{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:999px!important;padding:8px 18px!important;font-size:13px!important;font-weight:600!important;color:rgba(255,255,255,.85)!important;}
#sm_gastro .uyj_hero_img_wrap{position:relative!important;height:380px!important;border-radius:20px!important;overflow:hidden!important;border:2px solid rgba(255,255,255,.1)!important;}
#sm_gastro .uyj_hero_img{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sm_gastro .uyj_intro_grid{display:grid!important;grid-template-columns:1fr 460px!important;gap:80px!important;align-items:center!important;}
#sm_gastro .uyj_intro_text p{font-size:16px!important;color:#444!important;line-height:1.85!important;margin-bottom:16px!important;}
#sm_gastro .uyj_intro_highlight{background:var(--sm-mist)!important;border-left:4px solid var(--sm-green-700)!important;border-radius:0 12px 12px 0!important;padding:20px 24px!important;margin-top:28px!important;font-size:15px!important;color:var(--sm-green-700)!important;font-weight:600!important;line-height:1.6!important;}
#sm_gastro .uyj_intro_img_wrap{position:relative!important;height:400px!important;border-radius:20px!important;overflow:hidden!important;box-shadow:0 20px 60px rgba(14,90,70,.12)!important;}
#sm_gastro .uyj_intro_img{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sm_gastro .uyj_intro_cycle{display:flex!important;flex-direction:column!important;gap:10px!important;margin-top:32px!important;}
#sm_gastro .uyj_intro_cycle_item{display:flex!important;align-items:center!important;gap:14px!important;background:#fff!important;border:1px solid var(--sm-mist-2)!important;border-radius:12px!important;padding:14px 18px!important;box-shadow:0 2px 12px rgba(14,90,70,.05)!important;}
#sm_gastro .uyj_intro_cycle_num{width:28px!important;height:28px!important;min-width:28px!important;background:var(--sm-green-700)!important;color:#fff!important;border-radius:50%!important;font-size:12px!important;font-weight:800!important;display:flex!important;align-items:center!important;justify-content:center!important;}
#sm_gastro .uyj_intro_cycle_text{font-size:14px!important;color:#333!important;font-weight:500!important;line-height:1.5!important;}
#sm_gastro .uyj_sympt_title_wrap{text-align:center!important;margin-bottom:56px!important;}
#sm_gastro .uyj_sympt_title_wrap .uyj_sec_title{text-align:center!important;}
#sm_gastro .uyj_sympt_title_wrap .uyj_divider{margin:16px auto 0!important;}
#sm_gastro .uyj_sympt_grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:24px!important;}
#sm_gastro .uyj_sympt_card{background:#fff!important;border-radius:20px!important;overflow:hidden!important;box-shadow:0 4px 24px rgba(0,0,0,.06)!important;border:1px solid var(--sm-mist-2)!important;transition:transform .25s ease,box-shadow .25s ease!important;}
#sm_gastro .uyj_sympt_card:hover{transform:translateY(-8px)!important;box-shadow:0 16px 40px rgba(14,90,70,.12)!important;border-color:var(--sm-aqua-400)!important;}
#sm_gastro .uyj_sympt_card_img_wrap{position:relative!important;height:200px!important;overflow:hidden!important;}
#sm_gastro .uyj_sympt_card_img{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sm_gastro .uyj_sympt_card_body{padding:22px 22px 26px!important;}
#sm_gastro .uyj_sympt_card_tag{display:inline-block!important;background:var(--sm-mist)!important;color:var(--sm-green-700)!important;font-size:11px!important;font-weight:700!important;padding:4px 10px!important;border-radius:6px!important;margin-bottom:10px!important;}
#sm_gastro .uyj_sympt_card_title{font-size:17px!important;font-weight:900!important;color:#111!important;margin-bottom:8px!important;line-height:1.35!important;}
#sm_gastro .uyj_sympt_card_desc{font-size:13px!important;color:#555!important;line-height:1.7!important;}
#sm_gastro .uyj_adv_title_wrap{margin-bottom:48px!important;}
#sm_gastro .uyj_adv_grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:20px!important;}
#sm_gastro .uyj_adv_card{background:#fff!important;border-radius:16px!important;padding:28px 28px 28px 24px!important;border:1px solid var(--sm-mist)!important;border-left:4px solid var(--sm-mist-2)!important;box-shadow:0 2px 16px rgba(14,90,70,.04)!important;display:flex!important;gap:18px!important;align-items:flex-start!important;transition:border-left-color .2s ease,transform .2s ease!important;}
#sm_gastro .uyj_adv_card:hover{border-left-color:var(--sm-green-700)!important;transform:translateY(-4px)!important;}
#sm_gastro .uyj_adv_num{width:40px!important;height:40px!important;min-width:40px!important;background:linear-gradient(135deg,var(--sm-green-700),var(--sm-aqua-400))!important;border-radius:12px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:18px!important;font-weight:900!important;color:#fff!important;}
#sm_gastro .uyj_adv_content_title{font-size:16px!important;font-weight:800!important;color:#111!important;margin-bottom:6px!important;}
#sm_gastro .uyj_adv_content_desc{font-size:14px!important;color:#555!important;line-height:1.65!important;}
#sm_gastro .uyj_sleep_inner{max-width:1200px!important;margin:0 auto!important;padding:0 40px!important;display:grid!important;grid-template-columns:480px 1fr!important;gap:80px!important;align-items:center!important;}
#sm_gastro .uyj_sleep_label{display:inline-block!important;font-size:11px!important;font-weight:700!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:var(--sm-aqua-400)!important;margin-bottom:14px!important;}
#sm_gastro .uyj_sleep_title{font-size:36px!important;font-weight:900!important;color:#fff!important;line-height:1.25!important;margin-bottom:20px!important;}
#sm_gastro .uyj_sleep_desc{font-size:16px!important;color:rgba(255,255,255,.7)!important;line-height:1.8!important;margin-bottom:36px!important;}
#sm_gastro .uyj_sleep_steps{display:flex!important;flex-direction:column!important;gap:16px!important;}
#sm_gastro .uyj_sleep_step{display:flex!important;align-items:flex-start!important;gap:16px!important;}
#sm_gastro .uyj_sleep_step_num{width:32px!important;height:32px!important;min-width:32px!important;background:rgba(42,186,198,.2)!important;border:1px solid rgba(42,186,198,.4)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;font-weight:800!important;color:var(--sm-aqua-400)!important;}
#sm_gastro .uyj_sleep_step_text{font-size:15px!important;color:rgba(255,255,255,.85)!important;line-height:1.6!important;padding-top:4px!important;}
#sm_gastro .uyj_sleep_step_text strong{color:#fff!important;font-weight:700!important;}
#sm_gastro .uyj_sleep_img_wrap{position:relative!important;height:600px!important;border-radius:20px!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.08)!important;background:rgba(255,255,255,.04)!important;}
#sm_gastro .uyj_sleep_img{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;opacity:.9!important;}
#sm_gastro .uyj_steps_title_wrap{text-align:center!important;margin-bottom:60px!important;}
#sm_gastro .uyj_steps_title_wrap .uyj_sec_title{text-align:center!important;}
#sm_gastro .uyj_steps_title_wrap .uyj_divider{margin:16px auto 8px!important;}
#sm_gastro .uyj_steps_row{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:0!important;position:relative!important;}
#sm_gastro .uyj_steps_row::before{content:''!important;position:absolute!important;top:36px!important;left:calc(10% + 20px)!important;right:calc(10% + 20px)!important;height:2px!important;background:linear-gradient(90deg,var(--sm-aqua-400),var(--sm-green-700))!important;z-index:0!important;}
#sm_gastro .uyj_step_item{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;padding:0 12px!important;position:relative!important;z-index:1!important;}
#sm_gastro .uyj_step_icon_wrap{width:72px!important;height:72px!important;border-radius:50%!important;border:3px solid var(--sm-aqua-400)!important;background:var(--sm-mist)!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:28px!important;margin-bottom:16px!important;box-shadow:0 4px 16px rgba(14,90,70,.12)!important;position:relative!important;z-index:1!important;}
#sm_gastro .uyj_step_title{font-size:15px!important;font-weight:800!important;color:#111!important;margin-bottom:6px!important;}
#sm_gastro .uyj_step_desc{font-size:12px!important;color:#666!important;line-height:1.6!important;}
#sm_gastro .uyj_device_card{display:grid!important;grid-template-columns:460px 1fr!important;gap:0!important;background:#fff!important;border-radius:24px!important;overflow:hidden!important;box-shadow:0 20px 60px rgba(14,90,70,.1)!important;border:1px solid var(--sm-mist-2)!important;}
#sm_gastro .uyj_device_img_wrap{position:relative!important;background:var(--sm-mist)!important;overflow:hidden!important;min-height:400px!important;}
#sm_gastro .uyj_device_img{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;padding:24px!important;}
#sm_gastro .uyj_device_badge{position:absolute!important;top:20px!important;left:20px!important;background:var(--sm-green-700)!important;color:#fff!important;font-size:11px!important;font-weight:700!important;padding:6px 14px!important;border-radius:999px!important;z-index:2!important;}
#sm_gastro .uyj_device_content{padding:52px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
#sm_gastro .uyj_device_sub{font-size:12px!important;font-weight:700!important;letter-spacing:.14em!important;color:var(--sm-aqua-400)!important;text-transform:uppercase!important;margin-bottom:10px!important;}
#sm_gastro .uyj_device_name{font-size:30px!important;font-weight:900!important;color:#111!important;line-height:1.2!important;margin-bottom:6px!important;}
#sm_gastro .uyj_device_model{font-size:14px!important;color:var(--sm-green-700)!important;font-weight:600!important;margin-bottom:20px!important;}
#sm_gastro .uyj_device_desc{font-size:15px!important;color:#444!important;line-height:1.75!important;margin-bottom:28px!important;}
#sm_gastro .uyj_device_feats{display:flex!important;flex-direction:column!important;gap:10px!important;}
#sm_gastro .uyj_device_feat{display:flex!important;align-items:center!important;gap:10px!important;font-size:14px!important;color:#333!important;font-weight:500!important;}
#sm_gastro .uyj_device_feat::before{content:''!important;width:8px!important;height:8px!important;min-width:8px!important;background:var(--sm-aqua-400)!important;border-radius:50%!important;display:inline-block!important;}
#sm_gastro .uyj_caution_grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:20px!important;margin-bottom:32px!important;}
#sm_gastro .uyj_caution_card{background:#fff!important;border-radius:16px!important;padding:28px 24px!important;border:1px solid #f0f0f0!important;box-shadow:0 2px 12px rgba(0,0,0,.04)!important;display:flex!important;gap:16px!important;align-items:flex-start!important;}
#sm_gastro .uyj_caution_num{width:36px!important;height:36px!important;min-width:36px!important;background:var(--sm-mist)!important;border-radius:10px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:16px!important;font-weight:900!important;color:var(--sm-green-700)!important;}
#sm_gastro .uyj_caution_title{font-size:15px!important;font-weight:800!important;color:#111!important;margin-bottom:6px!important;}
#sm_gastro .uyj_caution_desc{font-size:13px!important;color:#555!important;line-height:1.65!important;}
#sm_gastro .uyj_caution_notice{background:#EAF6F7!important;border:1px solid #BFE6EA!important;border-left:4px solid var(--sm-aqua-400)!important;border-radius:0 12px 12px 0!important;padding:18px 24px!important;font-size:14px!important;color:var(--sm-green-800)!important;line-height:1.7!important;}
#sm_gastro .uyj_caution_notice strong{color:var(--sm-green-700)!important;font-weight:700!important;}
#sm_gastro .uyj_cta_float{position:fixed!important;bottom:32px!important;right:32px!important;z-index:9999!important;display:flex!important;align-items:center!important;gap:12px!important;background:var(--sm-green-700)!important;color:#fff!important;text-decoration:none!important;padding:16px 26px!important;border-radius:999px!important;box-shadow:0 8px 32px rgba(14,90,70,.45)!important;transition:transform .2s ease,box-shadow .2s ease!important;}
#sm_gastro .uyj_cta_float:hover{transform:translateY(-3px)!important;box-shadow:0 14px 40px rgba(14,90,70,.55)!important;text-decoration:none!important;}
#sm_gastro .uyj_cta_float_text{font-size:15px!important;font-weight:800!important;color:#fff!important;line-height:1.3!important;}
#sm_gastro .uyj_cta_float_text span{display:block!important;font-size:11px!important;font-weight:500!important;opacity:.85!important;}
@media(max-width:1100px){
#sm_gastro .uyj_hero_inner{grid-template-columns:1fr!important;}
#sm_gastro .uyj_hero_img_wrap{display:none!important;}
#sm_gastro .uyj_intro_grid{grid-template-columns:1fr!important;}
#sm_gastro .uyj_sleep_inner{grid-template-columns:1fr!important;}
#sm_gastro .uyj_sleep_img_wrap{display:none!important;}
#sm_gastro .uyj_sympt_grid{grid-template-columns:repeat(2,1fr)!important;}
#sm_gastro .uyj_device_card{grid-template-columns:1fr!important;}
#sm_gastro .uyj_device_img_wrap{min-height:280px!important;}
}
@media(max-width:760px){
#sm_gastro .uyj_section{padding:64px 0!important;}
#sm_gastro .uyj_inner{padding:0 20px!important;}
#sm_gastro .uyj_sec_title{font-size:26px!important;}
#sm_gastro .uyj_adv_grid{grid-template-columns:1fr!important;}
#sm_gastro .uyj_caution_grid{grid-template-columns:1fr!important;}
#sm_gastro .uyj_sympt_grid{grid-template-columns:repeat(2,1fr)!important;}
#sm_gastro .uyj_steps_row{grid-template-columns:1fr 1fr!important;gap:24px!important;}
#sm_gastro .uyj_steps_row::before{display:none!important;}
#sm_gastro .uyj_device_content{padding:32px 24px!important;}
#sm_gastro .uyj_hero_inner{padding:0 20px!important;}
#sm_gastro .uyj_sleep_inner{padding:0 20px!important;}
#sm_gastro .uyj_cta_float{bottom:20px!important;right:16px!important;padding:14px 20px!important;}
}
#sm_gastro{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_colon (from page_endoscopy-colon/02_uyj_colon_root) ---------- */

#sm_colon{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_colon * {
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family:'Pretendard','Noto Sans KR',sans-serif;
}
#sm_colon {
  width: 100% !important;
  overflow-x: hidden !important;
  background: #ffffff !important;
  color: #111111 !important;
}
#sm_colon .c_section {
  width: 100% !important;
  padding: 100px 0 !important;
}
#sm_colon .c_section.c_bg_light { background: var(--sm-mist) !important; }
#sm_colon .c_inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
}
#sm_colon .c_label {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--sm-aqua-400) !important;
  margin-bottom: 14px !important;
}
#sm_colon .c_sec_title {
  font-size: 36px !important;
  font-weight: 900 !important;
  color: #111111 !important;
  line-height: 1.25 !important;
  margin-bottom: 12px !important;
}
#sm_colon .c_sec_title em {
  color: var(--sm-green-700) !important;
  font-style: normal !important;
}
#sm_colon .c_sec_sub {
  font-size: 16px !important;
  color: #555555 !important;
  line-height: 1.7 !important;
}
#sm_colon .c_divider {
  width: 48px !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--sm-green-700), var(--sm-aqua-400)) !important;
  border-radius: 2px !important;
  margin: 16px 0 24px !important;
  display: block !important;
}
#sm_colon .c_hero {
  background: linear-gradient(150deg, var(--sm-green-700) 0%, var(--sm-green-800) 60%, var(--sm-green-900) 100%) !important;
  padding: 120px 0 100px !important;
  position: relative !important;
  overflow: hidden !important;
}
#sm_colon .c_hero_inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
  display: grid !important;
  grid-template-columns: 1fr 460px !important;
  gap: 80px !important;
  align-items: center !important;
}
#sm_colon .c_hero_badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(42,186,198,0.18) !important;
  border: 1px solid rgba(42,186,198,0.35) !important;
  border-radius: 999px !important;
  padding: 6px 16px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--sm-aqua-400) !important;
  letter-spacing: 0.12em !important;
  margin-bottom: 24px !important;
}
#sm_colon .c_hero_title {
  font-size: 48px !important;
  font-weight: 900 !important;
  color: #ffffff !important;
  line-height: 1.2 !important;
  margin-bottom: 20px !important;
}
#sm_colon .c_hero_title span {
  color: var(--sm-aqua-400) !important;
  display: block !important;
}
#sm_colon .c_hero_desc {
  font-size: 17px !important;
  color: rgba(255,255,255,0.75) !important;
  line-height: 1.75 !important;
  margin-bottom: 40px !important;
}
#sm_colon .c_hero_chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}
#sm_colon .c_hero_chip {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  border-radius: 999px !important;
  padding: 8px 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,0.85) !important;
}
#sm_colon .c_hero_img_wrap {
  position: relative !important;
  height: 380px !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  border: 2px solid rgba(255,255,255,0.1) !important;
}
#sm_colon .c_hero_img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
#sm_colon .c_intro_grid {
  display: grid !important;
  grid-template-columns: 1fr 460px !important;
  gap: 80px !important;
  align-items: start !important;
}
#sm_colon .c_intro_text p {
  font-size: 16px !important;
  color: #444 !important;
  line-height: 1.85 !important;
  margin-bottom: 16px !important;
}
#sm_colon .c_intro_highlight {
  background: var(--sm-mist) !important;
  border-left: 4px solid var(--sm-green-700) !important;
  border-radius: 0 12px 12px 0 !important;
  padding: 20px 24px !important;
  margin-top: 28px !important;
  font-size: 15px !important;
  color: var(--sm-green-700) !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
}
#sm_colon .c_intro_img_wrap {
  position: relative !important;
  height: 400px !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 20px 60px rgba(14,90,70,0.12) !important;
}
#sm_colon .c_intro_img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
#sm_colon .c_intro_cycle {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-top: 16px !important;
}
#sm_colon .c_intro_cycle_item {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  background: #ffffff !important;
  border: 1px solid var(--sm-mist-2) !important;
  border-radius: 12px !important;
  padding: 14px 18px !important;
  box-shadow: 0 2px 12px rgba(14,90,70,0.05) !important;
}
#sm_colon .c_intro_cycle_num {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  background: var(--sm-green-700) !important;
  color: #fff !important;
  border-radius: 50% !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#sm_colon .c_intro_cycle_text {
  font-size: 14px !important;
  color: #333 !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}
#sm_colon .c_disease_title_wrap {
  text-align: center !important;
  margin-bottom: 56px !important;
}
#sm_colon .c_disease_title_wrap .c_divider { margin: 16px auto 0 !important; }
#sm_colon .c_disease_grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
}
#sm_colon .c_disease_card {
  background: #ffffff !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.06) !important;
  border: 1px solid var(--sm-mist-2) !important;
}
#sm_colon .c_disease_img_wrap {
  position: relative !important;
  height: 200px !important;
  overflow: hidden !important;
}
#sm_colon .c_disease_img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
#sm_colon .c_disease_body { padding: 22px 22px 26px !important; }
#sm_colon .c_disease_tag {
  display: inline-block !important;
  background: var(--sm-mist) !important;
  color: var(--sm-green-700) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  margin-bottom: 10px !important;
}
#sm_colon .c_disease_name {
  font-size: 17px !important;
  font-weight: 900 !important;
  color: #111 !important;
  margin-bottom: 8px !important;
  line-height: 1.35 !important;
}
#sm_colon .c_disease_desc {
  font-size: 13px !important;
  color: #555 !important;
  line-height: 1.7 !important;
}
#sm_colon .c_prep_title_wrap { margin-bottom: 52px !important; }
#sm_colon .c_prep_timeline {
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
}
#sm_colon .c_prep_timeline::before {
  content: '' !important;
  position: absolute !important;
  left: 28px !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 2px !important;
  background: linear-gradient(180deg, var(--sm-aqua-400), var(--sm-green-700)) !important;
}
#sm_colon .c_prep_item {
  display: flex !important;
  gap: 28px !important;
  padding-bottom: 40px !important;
  position: relative !important;
}
#sm_colon .c_prep_item:last-child { padding-bottom: 0 !important; }
#sm_colon .c_prep_dot {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  background: var(--sm-green-700) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 26px !important;
  position: relative !important;
  z-index: 1 !important;
  box-shadow: 0 4px 16px rgba(14,90,70,0.3) !important;
}
#sm_colon .c_prep_content {
  background: #ffffff !important;
  border-radius: 16px !important;
  padding: 22px 26px !important;
  flex: 1 !important;
  border: 1px solid var(--sm-mist-2) !important;
  box-shadow: 0 2px 16px rgba(14,90,70,0.05) !important;
  margin-top: 6px !important;
}
#sm_colon .c_prep_when {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--sm-aqua-400) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  margin-bottom: 6px !important;
}
#sm_colon .c_prep_title {
  font-size: 17px !important;
  font-weight: 800 !important;
  color: #111 !important;
  margin-bottom: 8px !important;
}
#sm_colon .c_prep_desc {
  font-size: 14px !important;
  color: #555 !important;
  line-height: 1.7 !important;
}
#sm_colon .c_adv_title_wrap { margin-bottom: 48px !important; }
#sm_colon .c_adv_grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
}
#sm_colon .c_adv_card {
  background: #ffffff !important;
  border-radius: 16px !important;
  padding: 28px 28px 28px 24px !important;
  border: 1px solid var(--sm-mist) !important;
  border-left: 4px solid var(--sm-mist-2) !important;
  box-shadow: 0 2px 16px rgba(14,90,70,0.04) !important;
  display: flex !important;
  gap: 18px !important;
  align-items: flex-start !important;
}
#sm_colon .c_adv_num {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  background: linear-gradient(135deg, var(--sm-green-700), var(--sm-aqua-400)) !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #ffffff !important;
}
#sm_colon .c_adv_content_title {
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #111 !important;
  margin-bottom: 6px !important;
}
#sm_colon .c_adv_content_desc {
  font-size: 14px !important;
  color: #555 !important;
  line-height: 1.65 !important;
}
#sm_colon .c_steps_title_wrap {
  text-align: center !important;
  margin-bottom: 60px !important;
}
#sm_colon .c_steps_title_wrap .c_divider { margin: 16px auto 8px !important; }
#sm_colon .c_steps_row {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 0 !important;
  position: relative !important;
}
#sm_colon .c_steps_row::before {
  content: '' !important;
  position: absolute !important;
  top: 36px !important;
  left: 10% !important;
  right: 10% !important;
  height: 2px !important;
  background: linear-gradient(90deg, var(--sm-aqua-400), var(--sm-green-700)) !important;
  z-index: 0 !important;
}
#sm_colon .c_step_item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 0 12px !important;
  position: relative !important;
  z-index: 1 !important;
}
#sm_colon .c_step_icon_wrap {
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  border: 3px solid var(--sm-aqua-400) !important;
  background: var(--sm-mist) !important;
  margin-bottom: 16px !important;
  box-shadow: 0 4px 16px rgba(14,90,70,0.12) !important;
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 28px !important;
}
#sm_colon .c_step_num_badge {
  position: absolute !important;
  top: -4px !important;
  right: -4px !important;
  width: 22px !important;
  height: 22px !important;
  background: var(--sm-green-700) !important;
  color: #fff !important;
  border-radius: 50% !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 2 !important;
}
#sm_colon .c_step_title {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #111 !important;
  margin-bottom: 6px !important;
}
#sm_colon .c_step_desc {
  font-size: 12px !important;
  color: #666 !important;
  line-height: 1.6 !important;
}
#sm_colon .c_device_card {
  display: grid !important;
  grid-template-columns: 460px 1fr !important;
  background: #ffffff !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow: 0 20px 60px rgba(14,90,70,0.1) !important;
  border: 1px solid var(--sm-mist-2) !important;
}
#sm_colon .c_device_img_wrap {
  position: relative !important;
  min-height: 400px !important;
  background: var(--sm-mist) !important;
  overflow: hidden !important;
}
#sm_colon .c_device_img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
#sm_colon .c_device_badge {
  position: absolute !important;
  top: 20px !important;
  left: 20px !important;
  background: var(--sm-green-700) !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 6px 14px !important;
  border-radius: 999px !important;
  z-index: 2 !important;
}
#sm_colon .c_device_content {
  padding: 52px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
#sm_colon .c_device_sub {
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  color: var(--sm-aqua-400) !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
}
#sm_colon .c_device_name {
  font-size: 30px !important;
  font-weight: 900 !important;
  color: #111 !important;
  line-height: 1.2 !important;
  margin-bottom: 6px !important;
}
#sm_colon .c_device_model {
  font-size: 14px !important;
  color: var(--sm-green-700) !important;
  font-weight: 600 !important;
  margin-bottom: 20px !important;
}
#sm_colon .c_device_desc {
  font-size: 15px !important;
  color: #444 !important;
  line-height: 1.75 !important;
  margin-bottom: 28px !important;
}
#sm_colon .c_device_feats {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}
#sm_colon .c_device_feat {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 14px !important;
  color: #333 !important;
  font-weight: 500 !important;
}
#sm_colon .c_device_feat::before {
  content: '' !important;
  width: 8px !important;
  height: 8px !important;
  min-width: 8px !important;
  background: var(--sm-aqua-400) !important;
  border-radius: 50% !important;
  display: inline-block !important;
}
#sm_colon .c_caution_grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
  margin-bottom: 32px !important;
}
#sm_colon .c_caution_card {
  background: #ffffff !important;
  border-radius: 16px !important;
  padding: 28px 24px !important;
  border: 1px solid #f0f0f0 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.04) !important;
  display: flex !important;
  gap: 16px !important;
  align-items: flex-start !important;
}
#sm_colon .c_caution_num {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  background: var(--sm-mist) !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  color: var(--sm-green-700) !important;
}
#sm_colon .c_caution_title {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #111 !important;
  margin-bottom: 6px !important;
}
#sm_colon .c_caution_desc {
  font-size: 13px !important;
  color: #555 !important;
  line-height: 1.65 !important;
}
#sm_colon .c_caution_notice {
  background: #EAF6F7 !important;
  border: 1px solid #BFE6EA !important;
  border-left: 4px solid var(--sm-aqua-400) !important;
  border-radius: 0 12px 12px 0 !important;
  padding: 18px 24px !important;
  font-size: 14px !important;
  color: var(--sm-green-800) !important;
  line-height: 1.7 !important;
}
#sm_colon .c_caution_notice strong {
  color: var(--sm-green-700) !important;
  font-weight: 700 !important;
}
#sm_colon .c_cta_float {
  position: fixed !important;
  bottom: 32px !important;
  right: 32px !important;
  z-index: 9999 !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: var(--sm-green-700) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  padding: 16px 26px !important;
  border-radius: 999px !important;
  box-shadow: 0 8px 32px rgba(14,90,70,0.45) !important;
}
#sm_colon .c_cta_float_text {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  line-height: 1.3 !important;
}
#sm_colon .c_cta_float_text span {
  display: block !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  opacity: 0.85 !important;
}
@media (max-width: 1100px){
#sm_colon .c_hero_inner { grid-template-columns: 1fr !important; }
#sm_colon .c_hero_img_wrap { display: none !important; }
#sm_colon .c_intro_grid { grid-template-columns: 1fr !important; }
#sm_colon .c_intro_img_wrap { height: 280px !important; }
#sm_colon .c_disease_grid { grid-template-columns: repeat(2, 1fr) !important; }
#sm_colon .c_device_card { grid-template-columns: 1fr !important; }
#sm_colon .c_device_img_wrap { min-height: 280px !important; }
#sm_colon .c_adv_grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 760px){
#sm_colon .c_section { padding: 64px 0 !important; }
#sm_colon .c_inner { padding: 0 20px !important; }
#sm_colon .c_hero_inner { padding: 0 20px !important; }
#sm_colon .c_hero_title { font-size: 32px !important; }
#sm_colon .c_sec_title { font-size: 26px !important; }
#sm_colon .c_intro_img_wrap { height: 220px !important; }
#sm_colon .c_disease_grid { grid-template-columns: 1fr 1fr !important; }
#sm_colon .c_steps_row { grid-template-columns: 1fr 1fr !important; gap: 24px !important; }
#sm_colon .c_steps_row::before { display: none !important; }
#sm_colon .c_caution_grid { grid-template-columns: 1fr !important; }
#sm_colon .c_device_content { padding: 32px 24px !important; }
#sm_colon .c_cta_float { bottom: 20px !important; right: 16px !important; padding: 14px 20px !important; }
}
#sm_colon{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_polyp (from page_endoscopy-polyp/02_uyj_polyp_root) ---------- */

#sm_polyp{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_polyp * {
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family:'Pretendard','Noto Sans KR',sans-serif;
}
#sm_polyp {
  width: 100% !important;
  overflow-x: hidden !important;
  background: #ffffff !important;
}
#sm_polyp .p_hero {
  width: 100% !important;
  background: linear-gradient(135deg, var(--sm-green-900) 0%, var(--sm-green-700) 100%) !important;
  padding: 90px 24px 80px !important;
}
#sm_polyp .p_hero_inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
}
#sm_polyp .p_hero_tag {
  display: inline-block !important;
  background: rgba(42,186,198,0.25) !important;
  color: var(--sm-aqua-400) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 5px 14px !important;
  border-radius: 20px !important;
  margin-bottom: 20px !important;
}
#sm_polyp .p_hero_title {
  font-size: 44px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  line-height: 1.2 !important;
  margin-bottom: 16px !important;
}
#sm_polyp .p_hero_title span {
  color: var(--sm-aqua-400) !important;
}
#sm_polyp .p_hero_sub {
  font-size: 17px !important;
  color: rgba(255,255,255,0.75) !important;
  line-height: 1.7 !important;
  margin-bottom: 36px !important;
  max-width: 560px !important;
}
#sm_polyp .p_hero_chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}
#sm_polyp .p_hero_chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(255,255,255,0.12) !important;
  border: 1px solid rgba(255,255,255,0.25) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 8px 16px !important;
  border-radius: 24px !important;
}
#sm_polyp .p_hero_chip::before {
  content: '✓' !important;
  color: var(--sm-aqua-400) !important;
  font-weight: 700 !important;
}
#sm_polyp .p_intro {
  width: 100% !important;
  background: #ffffff !important;
  padding: 90px 24px !important;
}
#sm_polyp .p_intro_inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 60px !important;
  align-items: center !important;
}
#sm_polyp .p_sec_label {
  display: inline-block !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: var(--sm-green-700) !important;
  margin-bottom: 12px !important;
}
#sm_polyp .p_sec_title {
  font-size: 32px !important;
  font-weight: 800 !important;
  color: var(--sm-green-900) !important;
  line-height: 1.3 !important;
  margin-bottom: 20px !important;
}
#sm_polyp .p_sec_title span {
  color: var(--sm-green-700) !important;
}
#sm_polyp .p_intro_text {
  font-size: 16px !important;
  color: #444 !important;
  line-height: 1.8 !important;
  margin-bottom: 28px !important;
}
#sm_polyp .p_intro_highlight {
  background: var(--sm-mist) !important;
  border-left: 4px solid var(--sm-green-700) !important;
  border-radius: 0 10px 10px 0 !important;
  padding: 18px 22px !important;
}
#sm_polyp .p_intro_highlight_title {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--sm-green-700) !important;
  margin-bottom: 10px !important;
}
#sm_polyp .p_intro_highlight_row {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}
#sm_polyp .p_intro_badge {
  background: var(--sm-green-700) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 5px 12px !important;
  border-radius: 6px !important;
}
#sm_polyp .p_intro_badge.outline {
  background: #ffffff !important;
  color: var(--sm-green-700) !important;
  border: 1.5px solid var(--sm-green-700) !important;
}
#sm_polyp .p_intro_img_wrap {
  width: 100% !important;
  height: 420px !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background: var(--sm-mist-2) !important;
  position: relative !important;
}
#sm_polyp .p_intro_img_wrap img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
#sm_polyp .p_proc {
  width: 100% !important;
  background: var(--sm-mist) !important;
  padding: 90px 24px !important;
}
#sm_polyp .p_proc_inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
}
#sm_polyp .p_proc_header {
  text-align: center !important;
  margin-bottom: 56px !important;
}
#sm_polyp .p_proc_steps {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 0 !important;
  position: relative !important;
}
#sm_polyp .p_proc_steps::before {
  content: '' !important;
  position: absolute !important;
  top: 56px !important;
  left: 10% !important;
  width: 80% !important;
  height: 2px !important;
  background: rgba(42,186,198,.35) !important;
  z-index: 0 !important;
}
#sm_polyp .p_proc_step {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 0 12px !important;
  position: relative !important;
  z-index: 1 !important;
}
#sm_polyp .p_proc_step_num {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--sm-green-700) !important;
  letter-spacing: 1px !important;
  margin-bottom: 8px !important;
}
#sm_polyp .p_proc_circle {
  width: 100px !important;
  height: 100px !important;
  border-radius: 50% !important;
  border: 3px solid var(--sm-green-700) !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
  box-shadow: 0 4px 16px rgba(14,90,70,0.12) !important;
  flex-shrink: 0 !important;
  position: relative !important;
}
#sm_polyp .p_proc_step_img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
#sm_polyp .p_proc_step_name {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--sm-green-900) !important;
  margin-bottom: 8px !important;
}
#sm_polyp .p_proc_step_desc {
  font-size: 13px !important;
  color: #666 !important;
  line-height: 1.6 !important;
}
#sm_polyp .p_caution {
  width: 100% !important;
  background: #ffffff !important;
  padding: 90px 24px !important;
}
#sm_polyp .p_caution_inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
}
#sm_polyp .p_caution_header {
  text-align: center !important;
  margin-bottom: 48px !important;
}
#sm_polyp .p_caution_grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
}
#sm_polyp .p_caution_card {
  background: var(--sm-mist) !important;
  border-radius: 14px !important;
  padding: 28px 24px !important;
  border-top: 3px solid var(--sm-green-700) !important;
}
#sm_polyp .p_caution_card_num {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--sm-green-700) !important;
  letter-spacing: 1px !important;
  margin-bottom: 10px !important;
}
#sm_polyp .p_caution_card_title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--sm-green-900) !important;
  margin-bottom: 8px !important;
}
#sm_polyp .p_caution_card_desc {
  font-size: 13px !important;
  color: #666 !important;
  line-height: 1.7 !important;
}
#sm_polyp .p_cta_float {
  position: fixed !important;
  bottom: 28px !important;
  right: 28px !important;
  z-index: 9999 !important;
  background: var(--sm-green-700) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 14px 24px !important;
  border-radius: 50px !important;
  box-shadow: 0 6px 24px rgba(14,90,70,0.35) !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
@media (max-width: 1100px){
#sm_polyp .p_intro_inner {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }
#sm_polyp .p_intro_img_wrap {
    height: 300px !important;
  }
#sm_polyp .p_proc_steps {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
  }
#sm_polyp .p_proc_steps::before {
    display: none !important;
  }
#sm_polyp .p_caution_grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 760px){
#sm_polyp .p_hero_title {
    font-size: 30px !important;
  }
#sm_polyp .p_sec_title {
    font-size: 24px !important;
  }
#sm_polyp .p_intro_img_wrap {
    height: 220px !important;
  }
#sm_polyp .p_proc_steps {
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
  }
#sm_polyp .p_caution_grid {
    grid-template-columns: 1fr !important;
  }
#sm_polyp .p_hero,
  #sm_polyp .p_intro,
  #sm_polyp .p_proc,
  #sm_polyp .p_caution {
    padding: 60px 18px !important;
  }
}
#sm_polyp{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_nhis (from page_checkup-nhis/02_uyj_nhis_root) ---------- */

#sm_nhis{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_nhis * { box-sizing: border-box; }
#sm_nhis {
  width: 100%;
  background: var(--uyj-bg-light);
  padding: 0 0 120px; 
  font-family:'Pretendard','Noto Sans KR',sans-serif;
  color: var(--uyj-text-main);
  -webkit-font-smoothing: antialiased;
  word-break: keep-all;
}
#sm_nhis .uyj_comp_hero {
  position: relative;
  width: 100%;
  background-color: var(--uyj-navy);
  overflow: hidden; 
}
#sm_nhis .uyj_comp_hero_img_wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%; 
  height: 100%;
  z-index: 1;
}
#sm_nhis .uyj_comp_hero_img_wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover; 
  object-position: center;
}
#sm_nhis .uyj_comp_hero_img_wrap::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: linear-gradient(90deg, rgba(14,90,70,0.95) 0%, rgba(14,90,70,0.7) 40%, rgba(0,0,0,0.3) 100%);
}
#sm_nhis .uyj_comp_hero_inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 130px 4vw;
  position: relative;
  z-index: 2; 
  display: flex;
  align-items: center;
  min-height: 520px;
}
#sm_nhis .uyj_comp_hero_text { 
  max-width: 680px; 
  color: #fff; 
}
#sm_nhis .uyj_comp_hero_text h1 { font-size: var(--h1); font-weight: 900; line-height: 1.3; margin: 0 0 20px 0; letter-spacing: -0.02em; }
#sm_nhis .uyj_comp_hero_text h1 em { color: var(--sm-aqua-300); font-style: normal; }
#sm_nhis .uyj_comp_hero_text p { font-size: 19px; color: rgba(255,255,255,0.9); line-height: 1.7; margin-bottom: 35px; font-weight: 400; }
#sm_nhis .uyj_comp_tags { display: flex; gap: 12px; flex-wrap: wrap; }
#sm_nhis .uyj_comp_tag { background: rgba(255,255,255,0.2); color: #fff; font-size: 15px; font-weight: 700; padding: 10px 18px; border-radius: 50px; border: 1px solid rgba(255,255,255,0.4); }
#sm_nhis .uyj_comp_content_wrap {
  max-width: 1400px; 
  margin: 0 auto; 
  padding: 80px 4vw 0;
}
#sm_nhis .uyj_section_label { font-size: 15px; font-weight: 900; color: var(--uyj-sky); letter-spacing: 0.15em; text-transform: uppercase; margin-bottom: 12px; display: block; }
#sm_nhis .uyj_section_title { font-size: var(--h2); font-weight: 900; color: var(--uyj-text-main); margin-bottom: 40px; letter-spacing: -0.02em; }
#sm_nhis .uyj_target_banner {
  background: var(--uyj-navy);
  border-radius: 16px;
  padding: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 80px;
  color: #fff;
  box-shadow: 0 15px 30px rgba(14,90,70,0.15);
}
#sm_nhis .uyj_target_banner h3 { font-size: 26px; font-weight: 800; margin-bottom: 10px; letter-spacing: -0.02em; }
#sm_nhis .uyj_target_banner p { font-size: 16px; color: rgba(255,255,255,0.8); line-height: 1.5; }
#sm_nhis .uyj_target_badge {
  background: var(--uyj-sky);
  color: #fff;
  font-size: 28px;
  font-weight: 900;
  padding: 20px 40px;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 8px 15px rgba(0,0,0,0.1);
}
#sm_nhis .uyj_comp_grid_3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-bottom: 100px; }
#sm_nhis .uyj_comp_card {
  background: var(--uyj-white); border-radius: 18px; padding: 40px 30px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.03); transition: transform 0.3s, box-shadow 0.3s;
  border-top: 4px solid transparent; display: flex; flex-direction: column;
}
#sm_nhis .uyj_comp_card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(14,90,70,0.08); border-top-color: var(--uyj-sky); }
#sm_nhis .uyj_card_icon {
  width: 70px; height: 70px; background: linear-gradient(135deg, rgba(42,186,198,0.15), rgba(42,186,198,0.05));
  border-radius: 16px; display: flex; align-items: center; justify-content: center;
  font-size: 26px; font-weight: 900; color: var(--uyj-navy); margin-bottom: 24px;
}
#sm_nhis .uyj_comp_card h3 { font-size: 22px; font-weight: 800; margin-bottom: 14px; }
#sm_nhis .uyj_comp_card p { font-size: 16px; color: var(--uyj-text-sub); line-height: 1.6; }
#sm_nhis .uyj_process_wrap { margin-bottom: 100px; }
#sm_nhis .uyj_process_grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
#sm_nhis .uyj_process_step {
  background: var(--uyj-white); border: 1px solid var(--uyj-border); border-radius: 16px; padding: 30px 20px; text-align: center; position: relative;
}
#sm_nhis .uyj_process_step::after {
  content: '▶'; position: absolute; right: -18px; top: 50%; transform: translateY(-50%); color: var(--uyj-sky); font-size: 20px; z-index: 2;
}
#sm_nhis .uyj_process_step:last-child::after { display: none; }
#sm_nhis .uyj_step_num { display: inline-block; background: var(--uyj-bg-light); color: var(--uyj-navy); font-weight: 900; font-size: 14px; padding: 6px 14px; border-radius: 20px; margin-bottom: 15px; }
#sm_nhis .uyj_process_step h4 { font-size: 18px; font-weight: 800; margin-bottom: 10px; color: var(--uyj-text-main); }
#sm_nhis .uyj_process_step p { font-size: 14.5px; color: var(--uyj-text-sub); line-height: 1.5; }
#sm_nhis .uyj_comp_grid_2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; margin-bottom: 100px; }
#sm_nhis .uyj_pkg_card {
  background: var(--uyj-white); border-radius: 18px; padding: 40px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.03); border: 1px solid rgba(0,0,0,0.04);
  display: flex; flex-direction: column;
}
#sm_nhis .uyj_pkg_header { margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid #f0f0f0; }
#sm_nhis .uyj_pkg_badge {
  display: inline-block; background: var(--uyj-bg-light); color: var(--uyj-navy);
  font-size: 13px; font-weight: 800; padding: 6px 12px; border-radius: 8px; margin-bottom: 12px;
}
#sm_nhis .uyj_pkg_header h3 { font-size: 26px; font-weight: 900; color: var(--uyj-text-main); }
#sm_nhis .uyj_pkg_list { list-style: none; padding: 0; margin: 0; }
#sm_nhis .uyj_pkg_list li { font-size: 16px; color: var(--uyj-text-sub); margin-bottom: 15px; display: flex; align-items: flex-start; line-height: 1.6; }
#sm_nhis .uyj_pkg_list li::before { content: "✓"; color: var(--uyj-sky); font-weight: 900; margin-right: 12px; font-size: 18px; }
#sm_nhis .uyj_pkg_list li strong { color: var(--uyj-navy); margin-right: 8px; font-weight: 700; display: inline-block; min-width: 85px; }
#sm_nhis .uyj_cancer_grid {
  display: grid; grid-template-columns: 1fr; gap: 12px; margin-top: 10px;
}
#sm_nhis .uyj_cancer_item {
  background: var(--uyj-bg-light); padding: 16px 20px; border-radius: 12px;
  display: flex; flex-direction: column; gap: 4px;
}
#sm_nhis .uyj_cancer_item h4 { font-size: 17px; font-weight: 800; color: var(--uyj-navy); display: flex; align-items: center; gap: 8px; }
#sm_nhis .uyj_cancer_item h4 span { font-size: 13px; font-weight: 600; background: #fff; color: var(--uyj-text-sub); padding: 2px 8px; border-radius: 4px; }
#sm_nhis .uyj_cancer_item p { font-size: 15px; color: var(--uyj-text-sub); line-height: 1.4; }
#sm_nhis .uyj_check_wrap {
  background: var(--uyj-white); border-radius: 18px; padding: 50px;
  box-shadow: 0 10px 40px rgba(0,0,0,0.04); display: grid; grid-template-columns: 350px 1fr; gap: 50px; align-items: center;
}
#sm_nhis .uyj_check_left h3 { font-size: 28px; font-weight: 900; line-height: 1.4; margin-bottom: 16px; letter-spacing: -0.02em; }
#sm_nhis .uyj_check_left p { font-size: var(--body); color: var(--uyj-text-sub); line-height: 1.6; }
#sm_nhis .uyj_checklist { display: flex; flex-direction: column; gap: 12px; }
#sm_nhis .uyj_check_item label {
  display: flex; align-items: center; padding: 18px 24px; background: var(--uyj-bg-light);
  border-radius: 12px; font-size: 16px; font-weight: 500; color: var(--uyj-text-main); line-height: 1.5;
}
#sm_nhis .uyj_check_item label::before {
  content: '!'; display: inline-flex; width: 24px; height: 24px; align-items: center; justify-content: center;
  background: var(--uyj-navy); color: #fff; border-radius: 6px; margin-right: 14px; font-size: 14px; font-weight: bold; flex-shrink: 0;
}
@media (max-width: 1100px){
#sm_nhis .uyj_target_banner { flex-direction: column; gap: 20px; text-align: center; }
#sm_nhis .uyj_comp_grid_3, #sm_nhis .uyj_comp_grid_2 { grid-template-columns: repeat(2, 1fr); }
#sm_nhis .uyj_process_grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
#sm_nhis .uyj_process_step:nth-child(2)::after { display: none; }
#sm_nhis .uyj_check_wrap { grid-template-columns: 1fr; gap: 30px; padding: 40px; }
}
@media (max-width: 768px){
#sm_nhis { padding: 0 0 80px; }
#sm_nhis .uyj_comp_hero_inner { padding: 100px 5vw; min-height: auto; }
#sm_nhis .uyj_comp_content_wrap { padding: 60px 5vw 0; }
#sm_nhis .uyj_target_badge { font-size: 24px; padding: 15px 30px; width: 100%; }
#sm_nhis .uyj_comp_grid_3, #sm_nhis .uyj_comp_grid_2, #sm_nhis .uyj_process_grid { grid-template-columns: 1fr; gap: 20px; margin-bottom: 60px; }
#sm_nhis .uyj_process_step::after { display: none; }
#sm_nhis .uyj_comp_card, #sm_nhis .uyj_pkg_card { padding: 24px; }
#sm_nhis .uyj_comp_hero_text h1 { font-size: 34px; }
#sm_nhis .uyj_section_title { font-size: 26px; }
}
#sm_nhis{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_comp (from page_checkup-total/02_uyj_comp_root) ---------- */

#sm_comp{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_comp {
  width: 100%;
  background: var(--uyj-bg-light);
  padding: 80px 4vw 120px;
  font-family:'Pretendard','Noto Sans KR',sans-serif;
  color: var(--uyj-text-main);
  -webkit-font-smoothing: antialiased;
}
#sm_comp .uyj_comp_inner{
  max-width: 1400px;
  margin: 0 auto;
}
#sm_comp .uyj_comp_hero{
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background: linear-gradient(180deg, rgba(14,90,70,1) 0%, rgba(14,90,70,0.94) 56%);
  color: #fff;
  padding: 80px 6vw;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 80px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}
#sm_comp .uyj_comp_hero_inner{
  max-width: 1400px;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 650px;
  gap: 60px;
  align-items: center;
}
#sm_comp .uyj_comp_hero_text h1{
  font-size: var(--h1);
  font-weight: 900;
  line-height: 1.2;
  margin: 0 0 18px 0;
  letter-spacing: -0.02em;
}
#sm_comp .uyj_comp_hero_text h1 em{
  color: var(--uyj-sky);
  font-style: normal;
}
#sm_comp .uyj_comp_hero_text p{
  font-size: 18px;
  color: rgba(255,255,255,0.9);
  line-height: 1.7;
  margin-bottom: 24px;
  font-weight: 300;
}
#sm_comp .uyj_comp_tags{
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
#sm_comp .uyj_comp_tag{
  background: rgba(255,255,255,0.12);
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  padding: 10px 16px;
  border-radius: 50px;
}
#sm_comp .uyj_comp_hero_img_wrap{
  width: 100%; height: 600px; border-radius: 16px; overflow: hidden; box-shadow: 0 30px 60px rgba(0,0,0,0.14); background: transparent;
}
#sm_comp .uyj_comp_hero_img_wrap img{ width: 100%; height: 100%; object-fit: contain; display: block; }
#sm_comp }


.uyj_section_label{
  font-size: 14px;
  font-weight: 900;
  color: var(--uyj-sky);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 12px;
  display: block;
}
#sm_comp .uyj_section_title{
  font-size: var(--h2);
  font-weight: 900;
  color: var(--uyj-text-main);
  margin-bottom: 40px;
}
#sm_comp .uyj_comp_grid_3{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 36px;
  margin-bottom: 100px;
}
#sm_comp .uyj_comp_card{
  background: var(--uyj-white);
  border-radius: 18px;
  padding: 36px;
  box-shadow: 0 14px 40px rgba(14,90,70,0.04);
  transition: transform 0.3s, box-shadow 0.3s;
  border-top: 4px solid transparent;
  display: flex;
  flex-direction: column;
}
#sm_comp .uyj_comp_card:hover{
  transform: translateY(-10px);
  box-shadow: 0 30px 60px rgba(14,90,70,0.08);
  border-top-color: var(--uyj-sky);
}
#sm_comp .uyj_card_icon{
  width: 70px;
  height: 70px;
  background: linear-gradient(180deg, rgba(42,186,198,0.1), rgba(42,186,198,0.02));
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: 900;
  color: var(--uyj-navy);
  margin-bottom: 24px;
}
#sm_comp .uyj_comp_card h3{
  font-size: var(--h3);
  font-weight: 800;
  margin-bottom: 14px;
}
#sm_comp .uyj_comp_card p{
  font-size: var(--body);
  color: var(--uyj-text-sub);
  line-height: 1.6;
}
#sm_comp .uyj_comp_grid_2{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 36px;
  margin-bottom: 100px;
}
#sm_comp .uyj_pkg_card{
  background: var(--uyj-white);
  border-radius: 18px;
  padding: 40px;
  box-shadow: 0 14px 40px rgba(14,90,70,0.04);
  border: 1px solid rgba(0,0,0,0.03);
}
#sm_comp .uyj_pkg_card.premium{
  border: 2px solid var(--uyj-navy);
  position: relative;
}
#sm_comp .uyj_pkg_header{
  margin-bottom: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid #eee;
}
#sm_comp .uyj_pkg_badge{
  display: inline-block;
  background: var(--uyj-bg-light);
  color: var(--uyj-navy);
  font-size: 13px;
  font-weight: 800;
  padding: 6px 12px;
  border-radius: 8px;
  margin-bottom: 12px;
}
#sm_comp .uyj_pkg_card.premium .uyj_pkg_badge{
  background: var(--uyj-navy);
  color: var(--uyj-white);
}
#sm_comp .uyj_pkg_header h3{
  font-size: 26px;
  font-weight: 900;
  color: var(--uyj-text-main);
}
#sm_comp .uyj_pkg_list{
  list-style: none;
  padding: 0;
  margin: 0;
}
#sm_comp .uyj_pkg_list li{
  font-size: 16px;
  color: var(--uyj-text-sub);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
}
#sm_comp .uyj_pkg_list li::before{
  content: "✓";
  color: var(--uyj-sky);
  font-weight: 900;
  margin-right: 10px;
}
#sm_comp .uyj_pkg_list li strong{
  color: var(--uyj-text-main);
  margin-right: 6px;
}
#sm_comp .uyj_check_wrap{
  background: var(--uyj-white);
  border-radius: 18px;
  padding: 50px;
  box-shadow: 0 14px 40px rgba(14,90,70,0.04);
  display: grid;
  grid-template-columns: 350px 1fr;
  gap: 50px;
  align-items: center;
}
#sm_comp .uyj_check_left h3{
  font-size: var(--h2);
  font-weight: 900;
  line-height: 1.4;
  margin-bottom: 16px;
}
#sm_comp .uyj_check_left p{
  font-size: var(--body);
  color: var(--uyj-text-sub);
  line-height: 1.6;
}
#sm_comp .uyj_checklist{
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#sm_comp .uyj_check_item input[type="checkbox"]{ display: none; }
#sm_comp .uyj_check_item label{
  display: flex;
  align-items: center;
  padding: 18px 24px;
  background: var(--uyj-bg-light);
  border-radius: 12px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  color: var(--uyj-text-main);
  transition: all 0.2s;
  border: 1px solid transparent;
}
#sm_comp .uyj_check_item label::before{
  content: '';
  display: inline-block;
  width: 22px;
  height: 22px;
  border: 2px solid #ccc;
  border-radius: 6px;
  margin-right: 14px;
  background: var(--uyj-white);
}
#sm_comp .uyj_check_item input[type="checkbox"]:checked + label{
  border-color: var(--uyj-navy);
  font-weight: 700;
  color: var(--uyj-navy);
  background: rgba(14,90,70, 0.05);
}
#sm_comp .uyj_check_item input[type="checkbox"]:checked + label::before{
  background-color: var(--uyj-navy);
  border-color: var(--uyj-navy);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
  background-size: 14px;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 1100px){
#sm_comp .uyj_comp_hero_inner{ grid-template-columns: 1fr; gap: 40px; }
#sm_comp .uyj_comp_hero_img_wrap{ height: 300px; }
#sm_comp .uyj_comp_grid_3{ grid-template-columns: repeat(2, 1fr); }
#sm_comp .uyj_check_wrap{ grid-template-columns: 1fr; gap: 30px; padding: 40px; }
}
@media (max-width: 768px){
#sm_comp { --h1: 36px; --h2: 24px; --h3: 18px; --body: 15px; }
#sm_comp { padding: 40px 4vw 80px; }
#sm_comp .uyj_comp_hero{ padding: 40px 5vw; }
#sm_comp .uyj_comp_hero_img_wrap{ height: 240px; }
#sm_comp .uyj_comp_grid_3, #sm_comp .uyj_comp_grid_2{ grid-template-columns: 1fr; gap: 20px; margin-bottom: 60px; }
#sm_comp .uyj_comp_card, #sm_comp .uyj_pkg_card{ padding: 24px; }
#sm_comp .uyj_check_item label{ padding: 14px 16px; font-size: 14px; }
}
#sm_comp{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_cancer (from page_checkup-5cancer/02_uyj_us_root) ---------- */

#sm_cancer{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_cancer {
  width: 100%;
  background: var(--uyj-bg-light);
  padding: 110px 6vw;
  font-family:'Pretendard','Noto Sans KR',sans-serif;
  color: var(--uyj-text-main);
  -webkit-font-smoothing: antialiased;
}
#sm_cancer .uyj_us_device_banner{
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background: linear-gradient(180deg, var(--sm-green-700) 0%, rgba(14,90,70,0.94) 56%);
  color: #fff;
  padding: 110px 8vw;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  box-shadow: 0 40px 100px rgba(0,0,0,0.16);
}
#sm_cancer .uyj_us_device_banner::before{
  content: "CANCER CHECKUP";
  position: absolute;
  right: -48px;
  bottom: -48px;
  font-size: 100px;
  font-weight: 900;
  color: rgba(255,255,255,0.03);
  letter-spacing: -0.04em;
  pointer-events: none;
  user-select: none;
}
#sm_cancer .uyj_us_device_inner{
  max-width: 1400px;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 560px;
  gap: 56px;
  align-items: center;
  z-index: 2;
}
#sm_cancer .uyj_us_device_left h1{
  font-size: var(--h1);
  font-weight: 900;
  line-height: 1.04;
  margin: 0 0 18px 0;
  letter-spacing: -0.02em;
}
#sm_cancer .uyj_us_device_left h1 em{ color: var(--uyj-sky); font-style: normal; }
#sm_cancer .uyj_us_device_left p.lead{
  font-size: var(--body);
  color: rgba(255,255,255,0.95);
  line-height: 1.75;
  margin-bottom: 22px;
  max-width: 760px;
  word-break: keep-all;
}
#sm_cancer .uyj_us_device_features{ display: flex; gap: 14px; flex-wrap: wrap; }
#sm_cancer .uyj_us_device_feat{
  background: rgba(255,255,255,0.12);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  padding: 12px 18px;
  border-radius: 999px;
}
#sm_cancer .uyj_us_device_img_wrap{
  width: 560px;
  height: 560px;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 30px 60px rgba(0,0,0,0.14);
  position: relative;
}
#sm_cancer .uyj_us_device_img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
#sm_cancer .uyj_us_center_wrap{
  max-width: 1000px;
  margin: 110px auto 0;
  text-align: center;
}
#sm_cancer .uyj_us_center_label{
  font-size: 14px;
  font-weight: 900;
  color: var(--uyj-sky);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 12px;
}
#sm_cancer .uyj_us_center_title{
  font-size: var(--h2);
  font-weight: 900;
  color: var(--uyj-text-main);
  margin-bottom: 40px;
}
#sm_cancer .uyj_us_intro_img{
  width: 100%;
  height: 400px;
  border-radius: 14px;
  overflow: hidden;
  margin: 0 auto 40px;
  box-shadow: 0 14px 40px rgba(14,90,70,0.06);
}
#sm_cancer .uyj_us_intro_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#sm_cancer .uyj_us_intro_text{
  font-size: var(--body);
  color: var(--uyj-text-sub);
  line-height: 1.75;
  word-break: keep-all;
}
#sm_cancer .uyj_us_intro_text strong{
  color: var(--uyj-navy);
  font-weight: 800;
}
#sm_cancer .uyj_us_circles{
  display: flex;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
  margin-top: 50px;
}
#sm_cancer .uyj_us_circle_item{
  text-align: center;
  width: 120px;
}
#sm_cancer .uyj_us_circle_icon{
  width: 96px;
  height: 96px;
  margin: 0 auto 16px;
  border-radius: 50%;
  background: var(--uyj-white);
  border: 3px solid var(--uyj-sky);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: 900;
  color: var(--uyj-navy);
  box-shadow: 0 14px 40px rgba(14,90,70,0.06);
  transition: transform .36s cubic-bezier(.2,.9,.3,1), box-shadow .36s, border-color .36s, background .36s;
  position: relative;
  overflow: hidden;
}
#sm_cancer .uyj_us_circle_icon img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
}
#sm_cancer .uyj_us_circle_text{
  position: relative;
  z-index: 1;
  transition: color 0.36s;
}
#sm_cancer .uyj_us_circle_item:hover .uyj_us_circle_icon{
  transform: translateY(-12px);
  box-shadow: 0 40px 80px rgba(14,90,70,0.12);
  border-color: var(--uyj-navy);
  background: var(--uyj-navy);
}
#sm_cancer .uyj_us_circle_item:hover .uyj_us_circle_text{
  color: var(--uyj-white);
}
#sm_cancer .uyj_us_circle_name{
  font-size: var(--h3);
  font-weight: 900;
  color: var(--uyj-text-main);
  margin-bottom: 8px;
}
#sm_cancer .uyj_us_circle_tag{
  font-size: 13px;
  font-weight: 800;
  color: var(--uyj-navy);
  background: var(--uyj-bg-light);
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid #e5e5e5;
  display: inline-block;
}
#sm_cancer .uyj_us_rows{
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 50px;
  text-align: left;
}
#sm_cancer .uyj_us_row_card{
  background: var(--uyj-white);
  border-radius: 18px;
  padding: 36px;
  box-shadow: 0 14px 40px rgba(14,90,70,0.06);
  transition: transform .36s cubic-bezier(.2,.9,.3,1), box-shadow .36s;
  border-top: 4px solid transparent;
  display: flex;
  align-items: center;
  gap: 36px;
}
#sm_cancer .uyj_us_row_card:hover{
  transform: translateY(-12px);
  box-shadow: 0 40px 80px rgba(14,90,70,0.12);
  border-top-color: var(--uyj-sky);
}
#sm_cancer .uyj_us_row_title{
  width: 240px; 
  font-size: var(--h3);
  font-weight: 900;
  color: var(--uyj-navy);
  flex-shrink: 0;
  word-break: keep-all; 
}
#sm_cancer .uyj_us_row_content{
  flex: 1;
}
#sm_cancer .uyj_us_row_desc{
  font-size: var(--body);
  color: var(--uyj-text-main);
  line-height: 1.75;
  margin-bottom: 8px;
  word-break: keep-all;
}
#sm_cancer .uyj_us_row_target{
  font-size: 15px;
  color: var(--uyj-text-sub);
  word-break: keep-all;
}
#sm_cancer .uyj_us_notice{
  max-width: 1000px;
  margin: 56px auto 0;
  background: rgba(14,90,70,0.05);
  border-left: 5px solid var(--uyj-navy);
  border-radius: 0 12px 12px 0;
  padding: 22px 28px;
  font-size: 16px;
  color: var(--uyj-text-main);
  line-height: 1.7;
}
@media (max-width: 1100px){
#sm_cancer .uyj_us_device_inner{ grid-template-columns: 1fr; gap: 36px; }
#sm_cancer .uyj_us_device_img_wrap{ width: 100%; max-width: 560px; height: 340px; margin: 0 auto; }
#sm_cancer .uyj_us_row_card{ flex-direction: column; align-items: flex-start; gap: 16px; }
#sm_cancer .uyj_us_row_title{ 
    width: 100%; 
    border-bottom: 1px solid var(--uyj-border); 
    padding-bottom: 12px; 
  }
}
@media (max-width: 640px){
#sm_cancer { --h1: 36px; --h2: 22px; --h3: 18px; --body: 16px; }
#sm_cancer { padding: 56px 4vw; }
#sm_cancer .uyj_us_device_banner{ padding: 56px 6vw; }
#sm_cancer .uyj_us_device_banner::before{ font-size: 64px; right: -20px; bottom: -20px; }
#sm_cancer .uyj_us_center_wrap{ margin-top: 70px; }
#sm_cancer .uyj_us_intro_img{ height: 240px; margin-bottom: 24px; }
#sm_cancer .uyj_us_circles{ gap: 20px; }
#sm_cancer .uyj_us_circle_item{ width: calc(33% - 14px); min-width: 90px; }
#sm_cancer .uyj_us_circle_icon{ width: 72px; height: 72px; font-size: 20px; }
#sm_cancer .uyj_us_row_card{ padding: 24px; }
}
#sm_cancer{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_us (from page_ultrasound/02_uyj_us_root) ---------- */

#sm_us{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_us{
  width:100%;
  background:var(--uyj-bg-light);
  padding:110px 6vw;
  font-family:'Pretendard','Noto Sans KR',sans-serif;
  color:var(--uyj-text-main);
  -webkit-font-smoothing:antialiased;
}
#sm_us .uyj_us_device_banner{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background: linear-gradient(180deg, rgba(14,90,70,1) 0%, rgba(14,90,70,0.94) 56%);
  color:#fff;
  padding:110px 8vw;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  border-radius:14px;
  box-shadow:0 40px 100px rgba(0,0,0,0.16);
}
#sm_us .uyj_us_device_banner::before{
  content:"ULTRASOUND";
  position:absolute;
  right:-48px;
  bottom:-48px;
  font-size:120px;
  font-weight:900;
  color:rgba(255,255,255,0.03);
  letter-spacing:-0.04em;
  pointer-events:none;
  user-select:none;
}
#sm_us .uyj_us_device_inner{
  max-width:1400px;
  width:100%;
  display:grid;
  grid-template-columns: 1fr 560px;
  gap:56px;
  align-items:center;
}
#sm_us .uyj_us_device_left h1{
  font-size:var(--h1);
  font-weight:900;
  line-height:1.04;
  margin:0 0 18px 0;
  letter-spacing:-0.02em;
}
#sm_us .uyj_us_device_left h1 em{ color:var(--uyj-sky); font-style:normal; }
#sm_us .uyj_us_device_left p.lead{
  font-size:var(--body);
  color:rgba(255,255,255,0.95);
  line-height:1.75;
  margin-bottom:22px;
  max-width:760px;
}
#sm_us .uyj_us_device_features{ display:flex; gap:14px; flex-wrap:wrap; }
#sm_us .uyj_us_device_feat{
  background:rgba(255,255,255,0.12);
  color:#fff;
  font-size:15px;
  font-weight:800;
  padding:12px 18px;
  border-radius:999px;
}
#sm_us .uyj_us_device_img_wrap{
  width:560px;
  height:340px;
  border-radius:16px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 30px 60px rgba(0,0,0,0.14);
  position:relative;
  background:
    radial-gradient(600px 200px at 10% 20%, rgba(255,255,255,0.03), transparent 10%),
    linear-gradient(135deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
}
#sm_us .uyj_us_device_img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:contrast(1.03) saturate(1.02);
}
#sm_us .uyj_us_section_label{
  max-width:1400px;
  margin:56px auto 12px;
  font-size:14px;
  font-weight:900;
  color:var(--uyj-sky);
  letter-spacing:0.18em;
  text-transform:uppercase;
}
#sm_us .uyj_us_section_title{
  max-width:1400px;
  margin:0 auto 28px;
  font-size:var(--h2);
  font-weight:900;
  color:var(--uyj-text-main);
}
#sm_us .uyj_us_grid{
  max-width:1400px;
  margin:0 auto;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:36px;
}
#sm_us .uyj_us_card{
  background:var(--uyj-white);
  border-radius:18px;
  padding:36px;
  box-shadow:0 14px 40px rgba(14,90,70,0.06);
  transition:transform .36s cubic-bezier(.2,.9,.3,1), box-shadow .36s;
  border-top:4px solid transparent;
  display:flex;
  flex-direction:column;
  min-height:320px;
}
#sm_us .uyj_us_card_imgwrap{
  width:96px;
  height:96px;
  border-radius:14px;
  overflow:hidden;
  margin-bottom:20px;
  background:linear-gradient(180deg, rgba(42,186,198,0.08), rgba(42,186,198,0.02));
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow: inset 0 -6px 18px rgba(255,255,255,0.02);
}
#sm_us .uyj_us_card_img{ width:100%; height:100%; object-fit:cover; display:block; }
#sm_us .uyj_us_card_img--placeholder{
  width:56px;height:56px;border-radius:10px;
  background:linear-gradient(180deg,var(--uyj-sky),var(--uyj-blue));
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M12 2a10 10 0 100 20 10 10 0 000-20zm1 6h-2v6h2V8zm0 8h-2v2h2v-2z"/></svg>') center/contain no-repeat;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M12 2a10 10 0 100 20 10 10 0 000-20zm1 6h-2v6h2V8zm0 8h-2v2h2v-2z"/></svg>') center/contain no-repeat;
}
#sm_us .uyj_us_card_title{ font-size:var(--h3); font-weight:900; margin-bottom:12px; color:var(--uyj-text-main); }
#sm_us .uyj_us_card_desc{ font-size:var(--body); color:var(--uyj-text-sub); line-height:1.75; margin-bottom:auto; }
#sm_us .uyj_us_tags{ display:flex; gap:10px; flex-wrap:wrap; margin-top:20px; }
#sm_us .uyj_us_tag{ font-size:13px; font-weight:800; color:var(--uyj-navy); background:var(--uyj-bg-light); padding:8px 12px; border-radius:8px; }
#sm_us .uyj_us_notice{
  max-width:1400px;
  margin:36px auto 0;
  background:rgba(14,90,70,0.05);
  border-left:5px solid var(--uyj-navy);
  border-radius:0 12px 12px 0;
  padding:22px 28px;
  font-size:16px;
  color:var(--uyj-text-main);
  line-height:1.7;
}
#sm_us .uyj_us_card:hover{ transform:translateY(-12px); box-shadow:0 40px 80px rgba(14,90,70,0.12); border-top-color:var(--uyj-sky); }
@media (max-width:1100px){
#sm_us .uyj_us_device_inner{ grid-template-columns: 1fr; gap:36px; }
#sm_us .uyj_us_grid{ grid-template-columns: repeat(2, 1fr); gap:22px; }
#sm_us .uyj_us_device_img_wrap{ width:420px; height:260px; }
}
@media (max-width:640px){
#sm_us{ --h1:36px; --h2:22px; --h3:18px; --body:16px; }
#sm_us{ padding:56px 4vw; }
#sm_us .uyj_us_grid{ grid-template-columns: 1fr; gap:18px; }
#sm_us .uyj_us_card{ padding:20px; min-height:unset; }
#sm_us .uyj_us_card_imgwrap{ width:72px; height:72px; }
#sm_us .uyj_us_device_banner::before{ font-size:64px; right:-20px; bottom:-20px; }
}
#sm_us{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_emp (from page_checkup-job/02_uyj_emp_root) ---------- */

#sm_emp{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_emp {
  width: 100%;
  background: var(--uyj-bg-light);
  
  padding: 0 0 120px; 
  font-family:'Pretendard','Noto Sans KR',sans-serif;
  color: var(--uyj-text-main);
  -webkit-font-smoothing: antialiased;
}
#sm_emp .uyj_comp_hero{
  position: relative;
  width: 100%;
  background-color: var(--uyj-navy);
  overflow: hidden; 
}
#sm_emp .uyj_comp_hero_img_wrap{
  position: absolute;
  top: 0;
  right: 0;
  width: 60%; 
  height: 100%;
  z-index: 1;
}
#sm_emp .uyj_comp_hero_img_wrap img{
  width: 100%;
  height: 100%;
  object-fit: cover; 
  object-position: center;
}
#sm_emp .uyj_comp_hero_img_wrap::after{
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: linear-gradient(90deg, var(--uyj-navy) 0%, rgba(14,90,70,0.6) 50%, rgba(14,90,70,0) 100%);
}
#sm_emp .uyj_comp_hero_inner{
  max-width: 1400px;
  margin: 0 auto;
  padding: 120px 4vw;
  position: relative;
  z-index: 2; 
  display: flex;
  align-items: center;
  min-height: 520px;
}
#sm_emp .uyj_comp_hero_text{ 
  max-width: 650px; 
  color: #fff; 
}
#sm_emp .uyj_comp_hero_text h1{ font-size: var(--h1); font-weight: 900; line-height: 1.2; margin: 0 0 18px 0; letter-spacing: -0.02em; }
#sm_emp .uyj_comp_hero_text h1 em{ color: var(--uyj-sky); font-style: normal; }
#sm_emp .uyj_comp_hero_text p{ font-size: 18px; color: rgba(255,255,255,0.9); line-height: 1.7; margin-bottom: 30px; font-weight: 300; }
#sm_emp .uyj_comp_tags{ display: flex; gap: 12px; flex-wrap: wrap; }
#sm_emp .uyj_comp_tag{ background: rgba(255,255,255,0.15); color: #fff; font-size: 14px; font-weight: 800; padding: 10px 16px; border-radius: 50px; }
#sm_emp .uyj_comp_content_wrap{
  max-width: 1400px; 
  margin: 0 auto; 
  padding: 80px 4vw 0;
}
#sm_emp .uyj_section_label{ font-size: 14px; font-weight: 900; color: var(--uyj-sky); letter-spacing: 0.18em; text-transform: uppercase; margin-bottom: 12px; display: block; }
#sm_emp .uyj_section_title{ font-size: var(--h2); font-weight: 900; color: var(--uyj-text-main); margin-bottom: 40px; }
#sm_emp .uyj_comp_grid_3{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 36px; margin-bottom: 100px; }
#sm_emp .uyj_comp_card{
  background: var(--uyj-white); border-radius: 18px; padding: 36px;
  box-shadow: 0 14px 40px rgba(14,90,70,0.04); transition: transform 0.3s, box-shadow 0.3s;
  border-top: 4px solid transparent; display: flex; flex-direction: column;
}
#sm_emp .uyj_comp_card:hover{ transform: translateY(-10px); box-shadow: 0 30px 60px rgba(14,90,70,0.08); border-top-color: var(--uyj-sky); }
#sm_emp .uyj_card_icon{
  width: 70px; height: 70px; background: linear-gradient(180deg, rgba(42,186,198,0.1), rgba(42,186,198,0.02));
  border-radius: 14px; display: flex; align-items: center; justify-content: center;
  font-size: 24px; font-weight: 900; color: var(--uyj-navy); margin-bottom: 24px;
}
#sm_emp .uyj_comp_card h3{ font-size: var(--h3); font-weight: 800; margin-bottom: 14px; }
#sm_emp .uyj_comp_card p{ font-size: var(--body); color: var(--uyj-text-sub); line-height: 1.6; }
#sm_emp .uyj_comp_grid_2{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 36px; margin-bottom: 100px; }
#sm_emp .uyj_pkg_card{
  background: var(--uyj-white); border-radius: 18px; padding: 40px;
  box-shadow: 0 14px 40px rgba(14,90,70,0.04); border: 1px solid rgba(0,0,0,0.03);
}
#sm_emp .uyj_pkg_header{ margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid #eee; }
#sm_emp .uyj_pkg_badge{
  display: inline-block; background: var(--uyj-bg-light); color: var(--uyj-navy);
  font-size: 13px; font-weight: 800; padding: 6px 12px; border-radius: 8px; margin-bottom: 12px;
}
#sm_emp .uyj_pkg_header h3{ font-size: 26px; font-weight: 900; color: var(--uyj-text-main); }
#sm_emp .uyj_pkg_list{ list-style: none; padding: 0; margin: 0; }
#sm_emp .uyj_pkg_list li{ font-size: 16px; color: var(--uyj-text-sub); margin-bottom: 12px; display: flex; align-items: flex-start; line-height: 1.5; }
#sm_emp .uyj_pkg_list li::before{ content: "✓"; color: var(--uyj-sky); font-weight: 900; margin-right: 10px; }
#sm_emp .uyj_pkg_list li strong{ color: var(--uyj-navy); margin-right: 6px; }
#sm_emp .uyj_check_wrap{
  background: var(--uyj-white); border-radius: 18px; padding: 50px;
  box-shadow: 0 14px 40px rgba(14,90,70,0.04); display: grid; grid-template-columns: 350px 1fr; gap: 50px; align-items: center;
}
#sm_emp .uyj_check_left h3{ font-size: var(--h2); font-weight: 900; line-height: 1.4; margin-bottom: 16px; }
#sm_emp .uyj_check_left p{ font-size: var(--body); color: var(--uyj-text-sub); line-height: 1.6; }
#sm_emp .uyj_checklist{ display: flex; flex-direction: column; gap: 12px; }
#sm_emp .uyj_check_item label{
  display: flex; align-items: center; padding: 18px 24px; background: var(--uyj-bg-light);
  border-radius: 12px; font-size: 16px; font-weight: 500; color: var(--uyj-text-main);
}
#sm_emp .uyj_check_item label::before{
  content: '!'; display: inline-flex; width: 24px; height: 24px; align-items: center; justify-content: center;
  background: var(--uyj-navy); color: #fff; border-radius: 6px; margin-right: 14px; font-size: 14px; font-weight: bold;
}
@media (max-width: 1100px){
#sm_emp .uyj_comp_hero_img_wrap{ width: 100%; }
#sm_emp .uyj_comp_hero_img_wrap::after{
    background: rgba(14,90,70,0.85); 
  }
#sm_emp .uyj_comp_grid_3, #sm_emp .uyj_comp_grid_2{ grid-template-columns: repeat(2, 1fr); }
#sm_emp .uyj_check_wrap{ grid-template-columns: 1fr; gap: 30px; padding: 40px; }
}
@media (max-width: 768px){
#sm_emp { --h1: 36px; --h2: 24px; --h3: 18px; --body: 15px; }
#sm_emp { padding: 0 0 80px; }
#sm_emp .uyj_comp_hero_inner{ padding: 80px 5vw; min-height: auto; }
#sm_emp .uyj_comp_content_wrap{ padding: 60px 5vw 0; }
#sm_emp .uyj_comp_grid_3, #sm_emp .uyj_comp_grid_2{ grid-template-columns: 1fr; gap: 20px; margin-bottom: 60px; }
#sm_emp .uyj_comp_card, #sm_emp .uyj_pkg_card{ padding: 24px; }
}
#sm_emp{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}


/* ---------- #sm_ivdiet (from page_drip/02_uj-ivdiet-v3b-clean) ---------- */

#sm_ivdiet{
  --h1: 52px; --h2: 30px; --h3: 20px; --body: 18px;
  --h1-large: clamp(40px, 6.5vw, 72px); --h1-compact: clamp(28px, 4.2vw, 44px);
  --max-width: 1400px; --radius-lg: 18px; --card-shadow: 0 24px 60px rgba(14,90,70,.10);
}
#sm_ivdiet{
      --uj-blue:var(--sm-green-700);
      --uj-point:var(--sm-aqua-400);
      --uj-ink:var(--sm-ink);
      --text: rgba(11,18,32,.92);
      --sub: rgba(11,18,32,.68);
      --bg:var(--sm-mist);
      --soft:var(--sm-mist-2);
      --line: rgba(15,23,42,.10);
      --line2: rgba(15,23,42,.08);
      --shadow: 0 14px 44px rgba(2,10,30,.08);
      --shadow2: 0 10px 28px rgba(2,10,30,.06);

      font-family:'Pretendard','Noto Sans KR',sans-serif;
      background: var(--bg);
      color: var(--text);
      padding: 130px 0;
      letter-spacing: -0.04em;
      word-break: keep-all;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      text-rendering: geometricPrecision;
    }
#sm_ivdiet, #sm_ivdiet *{ box-sizing:border-box; }
#sm_ivdiet a{ color:inherit; text-decoration:none; }
#sm_ivdiet .container{ max-width:1600px; margin:0 auto; padding:0 2vw; }
#sm_ivdiet .head{
      margin-bottom: 34px;
      padding-bottom: 22px;
      border-bottom: 1px solid var(--line);
    }
#sm_ivdiet .eyebrow{
      display:flex; align-items:center; gap:10px;
      margin:0 0 12px 0;
      font-size: 13px;
      font-weight: 900;
      letter-spacing: .18em;
      color: var(--uj-blue);
    }
#sm_ivdiet .eyebrow::before{
      content:"";
      width:10px; height:10px;
      border-radius:999px;
      background: var(--uj-point);
      box-shadow: 0 0 0 4px rgba(42,186,198,.12);
      flex:0 0 auto;
    }
#sm_ivdiet .title{
      margin:0;
      font-size: clamp(44px, 5vw, 72px);
      line-height: 1.18;
      letter-spacing:-0.04em;
      font-weight: 950;
      color: var(--uj-ink);
    }
#sm_ivdiet .subtitle{
      margin: 14px 0 0 0;
      font-size: clamp(18px, 1.8vw, 22px);
      line-height: 1.8;
      font-weight: 650;
      color: var(--sub);
      max-width: 880px;
    }
#sm_ivdiet .top{
      display:grid;
      grid-template-columns: 1.35fr .95fr;
      gap: 20px;
      margin-top: 26px;
      align-items: stretch;
    }
#sm_ivdiet .photo{
      position:relative;
      border-radius: 28px;
      overflow:hidden;
      border: 1px solid var(--line2);
      box-shadow: var(--shadow2);
      background: var(--soft);
      min-height: 360px;
    }
#sm_ivdiet .photo img{
      width:100%; height:100%;
      object-fit: cover;
      object-position: center;
      display:block;
      transform: scale(1.00);
      transition: transform .55s ease;
    }
#sm_ivdiet .photo:hover img{ transform: scale(1.03); }
#sm_ivdiet .photo::after{
      content:"";
      position:absolute; inset:0;
      background: linear-gradient(180deg, rgba(0,0,0,0) 42%, rgba(0,0,0,.26) 100%);
      pointer-events:none;
    }
#sm_ivdiet .photo-caption{
      position:absolute; left:18px; right:18px; bottom:16px;
      z-index:1;
      display:flex; flex-direction:column; gap: 6px;
      color:#fff;
    }
#sm_ivdiet .cap-tag{
      display:inline-flex; align-items:center; gap:8px;
      width: fit-content;
      padding: 8px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.16);
      border: 1px solid rgba(255,255,255,.22);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
      font-size: 13px;
      font-weight: 850;
    }
#sm_ivdiet .cap-tag i[data-lucide]{ width:16px; height:16px; }
#sm_ivdiet .cap-title{
      margin:0;
      font-size: 24px;
      font-weight: 950;
      letter-spacing:-0.03em;
      line-height:1.25;
    }
#sm_ivdiet .cap-sub{
      margin:0;
      font-size: 14.5px;
      font-weight: 650;
      color: rgba(255,255,255,.82);
      line-height:1.65;
      max-width: 520px;
    }
#sm_ivdiet .aside{
      border-radius: 28px;
      border: 1px solid var(--line2);
      box-shadow: var(--shadow2);
      background: #fff;
      padding: 26px 24px;
      display:flex;
      flex-direction:column;
      justify-content:center;
      gap: 14px;
    }
#sm_ivdiet .aside h3{
      margin:0;
      font-size: 28px;
      font-weight: 950;
      color: var(--uj-ink);
      letter-spacing:-0.03em;
      line-height: 1.25;
    }
#sm_ivdiet .aside p{
      margin:0;
      font-size: 18px;
      font-weight: 650;
      color: rgba(11,18,32,.66);
      line-height: 1.85;
    }
#sm_ivdiet .aside-list{
      margin: 6px 0 0 0;
      padding: 0;
      list-style: none;
      display:flex;
      flex-direction:column;
      gap: 10px;
    }
#sm_ivdiet .aside-list li{
      display:flex;
      align-items:flex-start;
      gap: 10px;
      font-size: 17px;
      font-weight: 700;
      color: rgba(11,18,32,.78);
      line-height: 1.65;
    }
#sm_ivdiet .aside-list li i[data-lucide]{ width:18px; height:18px; color: var(--uj-point); margin-top: 1px; flex: 0 0 auto; }
#sm_ivdiet .grid{
      display:grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 18px;
      margin-top: 22px;
    }
#sm_ivdiet .card{
      border-radius: 22px;
      overflow:hidden;
      border: 1px solid var(--line2);
      background: #fff;
      box-shadow: 0 10px 30px rgba(2,10,30,.05);
      transition: transform .20s ease, box-shadow .20s ease, border-color .20s ease;
      cursor: default;
      display:flex;
      flex-direction:column;
      min-height: 380px;
    }
#sm_ivdiet .card:hover{
      transform: translateY(-6px);
      box-shadow: var(--shadow);
      border-color: rgba(42,186,198,.30);
    }
#sm_ivdiet .media{
      height: 200px;
      background: var(--soft);
      position:relative;
      overflow:hidden;
    }
#sm_ivdiet .media img{
      width:100%; height:100%;
      object-fit:cover; object-position:center;
      display:block;
      transform: scale(1.00);
      transition: transform .55s ease;
    }
#sm_ivdiet .card:hover .media img{ transform: scale(1.05); }
#sm_ivdiet .pill{
      position:absolute;
      top:12px; left:12px;
      display:inline-flex; align-items:center; gap:8px;
      padding: 8px 11px;
      border-radius: 999px;
      background: rgba(255,255,255,.88);
      border: 1px solid rgba(255,255,255,.70);
      box-shadow: 0 10px 22px rgba(2,10,30,.10);
      font-size: 12.5px;
      font-weight: 900;
      color: var(--uj-blue);
    }
#sm_ivdiet .pill i[data-lucide]{ width:15px; height:15px; color: var(--uj-point); }
#sm_ivdiet .body{
      padding: 18px 16px 20px;
      display:flex;
      flex-direction:column;
      gap: 10px;
      flex: 1;
    }
#sm_ivdiet .kicker{
      font-size: 12px;
      font-weight: 950;
      letter-spacing: .18em;
      color: rgba(42,186,198,.95);
    }
#sm_ivdiet .h4{
      margin:0;
      font-size: 22px;
      font-weight: 950;
      color: var(--uj-ink);
      letter-spacing:-0.03em;
      line-height:1.28;
    }
#sm_ivdiet .p{
      margin:0;
      font-size: 17px;
      font-weight: 650;
      color: rgba(11,18,32,.64);
      line-height:1.8;
    }
#sm_ivdiet .bullets{
      margin: 6px 0 0 0; padding:0;
      list-style:none;
      display:flex;
      flex-direction:column;
      gap: 7px;
    }
#sm_ivdiet .bullets li{
      display:flex; gap:10px; align-items:flex-start;
      font-size: 16px;
      font-weight: 650;
      color: rgba(11,18,32,.78);
      line-height: 1.65;
    }
#sm_ivdiet .bullets li::before{
      content:"";
      width: 5px; height: 5px;
      border-radius: 50%;
      background: var(--uj-point);
      margin-top: 8px;
      flex: 0 0 auto;
      box-shadow: 0 0 0 3px rgba(42,186,198,.10);
    }
#sm_ivdiet .sm_reveal{ opacity:1; transform:none; }
@media (prefers-reduced-motion: no-preference){
#sm_ivdiet .sm_reveal{ opacity:0; transform: translateY(14px); transition: opacity .70s ease, transform .70s ease; }
#sm_ivdiet .sm_reveal.sm_active{ opacity:1; transform: translateY(0); }
}
@media (max-width: 1024px){
#sm_ivdiet .top{ grid-template-columns: 1fr; }
#sm_ivdiet .grid{ grid-template-columns: repeat(2, 1fr); }
#sm_ivdiet .title{ font-size: 36px; }
#sm_ivdiet .photo{ min-height: 320px; }
#sm_ivdiet .container{ padding: 0 4vw; }
}
@media (max-width: 640px){
#sm_ivdiet{ padding: 90px 0 96px; }
#sm_ivdiet .container{ padding: 0 18px; }
#sm_ivdiet .title{ font-size: 32px; }
#sm_ivdiet .subtitle{ font-size: 16.5px; }
#sm_ivdiet .grid{ grid-template-columns: 1fr; }
#sm_ivdiet .aside{ padding: 22px 20px; }
#sm_ivdiet .photo{ border-radius: 24px; }
#sm_ivdiet .aside, #sm_ivdiet .card{ border-radius: 24px; }
}
#sm_ivdiet{
  --uyj-navy: var(--sm-green-700); --uyj-dark: var(--sm-green-700); --uj-blue: var(--sm-teal-500);
  --uyj-blue: var(--sm-teal-500); --uyj-main: var(--sm-teal-500);
  --uyj-sky: var(--sm-aqua-400); --uyj-light: var(--sm-aqua-400); --uj-point: var(--sm-aqua-400); --accent: var(--sm-teal-500);
  --uyj-bg: var(--sm-mist); --uyj-bg-light: var(--sm-mist); --bg: #fff; --soft: var(--sm-mist-2);
  --uyj-white: #fff; --uyj-black: var(--sm-ink); --uyj-border: var(--sm-border);
  --uyj-text-main: var(--sm-ink); --ink: var(--sm-ink); --uj-ink: var(--sm-ink); --text: var(--sm-ink);
  --uyj-text-sub: var(--sm-sub); --sub: var(--sm-sub);
  --line: rgba(14,90,70,.12); --line2: rgba(14,90,70,.09);
  --shadow: 0 14px 44px rgba(14,90,70,.08); --shadow2: 0 10px 28px rgba(14,90,70,.06);
  --radius: 22px; --radius2: 28px; --ease: cubic-bezier(.2,.8,.2,1);
}
