@charset "utf-8";

/* 공통 */
.content_wrap{word-break: keep-all;line-height: 1.2;}
.content_wrap h4.intro_tit{margin: 0 0 32px;font-size: 36px;font-weight: 700;line-height: 1.1;letter-spacing: -0.05em;color: var(--white);}
.content_wrap h5.sec_tit{font-size: 30px;font-weight: 700;letter-spacing: -0.025em;color: var(--white);}
.content_wrap h6.card_h4{margin: 0 0 16px;font-size: 20px;font-weight: 700;color: var(--white);}
.sub_content{padding: 20px 12px 60px;}
.tab_wrap{padding: 116px 20px 0;}
.tab_nav{display: flex;flex-wrap: wrap;justify-content: center;gap: 6px;padding-bottom: 24px;border-bottom: 1px solid var(--glass_line);}
.tab_nav li a{display: block;padding: 10px 18px;border: 1px solid transparent;border-radius: 9999px;font-size: 16px;color: rgba(255,255,255,0.5);transition: var(--motion_fast);}
.tab_nav li a:hover, .tab_nav li.on a{border-color: var(--glass_line);background: var(--glass_bg);color: var(--white);}
.txt_c{text-align: center;}
.badge{display: inline-block;padding: 8px 18px;margin-bottom: 16px;border: 1px solid rgba(92,177,189,0.4);border-radius: 9999px;background: rgba(92,177,189,0.05);font-size: 16px;font-weight: 700;letter-spacing: 0.2em;color: var(--teal);text-transform: uppercase;}
.badge_bold{display: inline-block;padding: 10px 22px;border: 1px solid var(--teal);border-radius: 9999px;background: rgba(92,177,189,0.15);font-size: 16px;font-weight: 900;letter-spacing: 0.2em;color: var(--teal);text-transform: uppercase;box-shadow: 0 0 15px rgba(92,177,189,0.25);}
.semi_w{font-weight: 600;color: var(--white);}
.stack_3>*+*{margin-top: 12px;}
.stack_4>*+*{margin-top: 16px;}
.stack_6>*+*{margin-top: 24px;}
.dot_li{display: flex;align-items: center;gap: 8px;}
.dot_li:before{display: inline-flex;width: 6px;height: 6px;content: "";background: var(--teal);border-radius: 100%;}
.dot{flex-shrink: 0;width: 6px;height: 6px;border-radius: 100%;background: var(--teal);}
.icon_badge{display: flex;align-items: center;justify-content: center;width: 48px;height: 48px;border-radius: 16px;background: rgba(92,177,189,0.1);color: var(--teal);}
.icon_badge svg{width: 24px;height: 24px;}
.icon_mb{margin-bottom: 24px;}
.card_p{margin-bottom: 24px;font-size: 18px;font-weight: 300;line-height: 1.6;color: #9ca3af;}
.grid_bg{position: absolute;inset: 0;background-size: 32px 32px;background-image: linear-gradient(to right,rgba(255,255,255,0.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,0.05) 1px,transparent 1px);pointer-events: none;}

/* 회사소개 */
.content_wrap h5.sec_tit.greet_tit{margin-bottom: 8px;}
.content_wrap h6.vis_tit{margin: 0;font-size: 18px;font-weight: 700;color: var(--white);}
.intro_badge{margin-bottom: 32px;}
.intro_desc{max-width: 56rem;margin-left: auto;margin-right: auto;font-size: 16px;font-weight: 300;line-height: 1.6;color: #9ca3af;text-align: center;}
.greet_sec{border-top: 1px solid var(--glass_line);background: rgba(255,255,255,0.01);}
.greet_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));align-items: stretch;gap: 48px;}
.greet_card{display: flex;overflow: hidden;position: relative;flex-direction: column;justify-content: center;padding: 32px;}
.greet_glow{position: absolute;top: 50%;left: 50%;z-index: 0;width: 288px;height: 288px;border-radius: 100%;background: rgba(92,177,189,0.05);transform: translate(-50%,-50%);filter: blur(64px);pointer-events: none;}
.greet_body{position: relative;z-index: 10;text-align: left;}
.greet_txt{font-size: 16px;font-weight: 300;line-height: 1.6;color: #9ca3af;}
.greet_sign{padding-top: 24px;border-top: 1px solid var(--glass_line);}
.sign_name{font-size: 16px;font-weight: 700;letter-spacing: 0.025em;color: var(--white);}
.sign_role{margin-left: 8px;font-size: 16px;font-weight: 400;color: #9ca3af;}
.greet_photo{display: flex;align-items: center;justify-content: center;width: 100%;}
.photo_box{overflow: hidden;position: relative;width: 100%;max-width: 360px;aspect-ratio: 3/4;border-radius: 40px;}
.photo_glow{position: absolute;bottom: -40px;z-index: 0;width: 224px;height: 224px;border-radius: 100%;background: rgba(92,177,189,0.15);filter: blur(64px);pointer-events: none;}
.photo_img{position: relative;z-index: 10;width: 100%;height: 100%;object-fit: cover;transition: transform 0.7s;}
.photo_box:hover .photo_img{transform: scale(1.05);}
.brand_row{display: flex;flex-direction: column;align-items: stretch;justify-content: center;gap: 48px;}
.brand_card{display: flex;overflow: hidden;position: relative;flex: 1 1 0%;flex-direction: column;justify-content: space-between;padding: 32px;}
.brand_top{display: flex;align-items: center;height: 96px;margin-bottom: 24px;}
.brand_big{font-size: 60px;font-weight: 700;line-height: 1;letter-spacing: -0.025em;}
.os_big{display: flex;align-items: flex-end;font-size: 48px;font-weight: 700;line-height: 1;letter-spacing: -0.025em;}
.os_big span{color: var(--white);}
.os_big span:nth-child(2){margin-left: 4px;font-size: 18px;color: var(--teal);}
.os_big span:nth-child(3){margin-left: 8px;}
.os_big span:nth-child(4){margin-left: 4px;font-size: 18px;color: var(--teal);}
.brand_list{margin-bottom: 32px;font-size: 16px;font-weight: 300;color: #d1d5db;}
.brand_tag{display: block;padding-top: 16px;border-top: 1px solid var(--glass_line);font-size: 16px;font-weight: 700;letter-spacing: 0.1em;color: var(--teal);text-transform: uppercase;}
.brand_plus{display: flex;align-items: center;justify-content: center;padding: 16px 0;}
.brand_plus div{font-size: 36px;font-weight: 300;color: var(--white);opacity: 0.4;}
.biz_sec{background: rgba(255,255,255,0.01);}
.biz_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));gap: 48px;}
.biz_card{display: flex;flex-direction: column;justify-content: space-between;padding: 32px;}
.biz_ico{width: 24px;height: 24px;}
.biz_tag{font-size: 16px;font-weight: 600;letter-spacing: 0.1em;color: var(--teal);text-transform: uppercase;}
.vis_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));gap: 32px;}
.vis_card{display: flex;flex-direction: column;justify-content: space-between;padding: 32px;border: 1px solid var(--glass_line);}
.vis_desc{font-size: 16px;font-weight: 300;line-height: 1.6;color: #9ca3af;}

/* 조직도 */
.content_wrap h6.mem_name{margin: 0;font-size: 20px;font-weight: 700;color: var(--white);}
.loop_sec{border-top: 1px solid var(--glass_line);border-bottom: 1px solid var(--glass_line);background: rgba(255,255,255,0.005);}
.step_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));align-items: center;gap: 32px;max-width: 64rem;margin-left: auto;margin-right: auto;}
.step_card{position: relative;padding: 32px;}
.step_num{position: absolute;top: -16px;left: 24px;padding: 4px 12px;border-radius: 9999px;background: var(--teal);font-size: 16px;font-weight: 800;letter-spacing: 0.05em;color: #000;text-transform: uppercase;}
.dept_tab{display: inline-flex;overflow-x: auto;max-width: 100%;margin-top: 24px;padding: 6px;border: 1px solid rgba(255,255,255,0.1);border-radius: 9999px;background: rgba(255,255,255,0.05);}
.dept_btn{padding: 10px 20px;border: none;border-radius: 9999px;background: none;font-size: 16px;font-weight: 700;color: #9ca3af;transition: all 0.2s;white-space: nowrap;}
.dept_btn:hover{color: var(--white);}
.dept_btn.on{background: var(--teal);font-weight: 900;color: #000;box-shadow: 0 0 15px rgba(92,177,189,0.3);}
.mem_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));align-items: stretch;gap: 32px;margin-top: 40px;}
.member_card{display: flex;flex-direction: column;justify-content: space-between;padding: 32px;transition: opacity 0.22s cubic-bezier(0.25,1,0.5,1), transform 0.22s cubic-bezier(0.25,1,0.5,1), border-color 0.25s ease;}
.member_card:not(.on){display: none !important;opacity: 0;transform: scale(0.96) translateY(8px);}
.mem_row{display: flex;align-items: center;}
.mem_role{margin-left: 6px;font-size: 16px;font-weight: 400;color: #6b7280;}
.mem_pos{margin-top: 4px;font-size: 16px;font-weight: 600;letter-spacing: 0.05em;color: var(--teal);text-transform: uppercase;}
.mem_list_wrap{padding-top: 16px;margin-top: 16px;border-top: 1px solid var(--glass_line);}
.mem_item{position: relative;padding-left: 16px;font-size: 16px;font-weight: 300;line-height: 1.6;color: #d1d5db;}
.mem_bar{position: absolute;top: 6px;left: 0;bottom: 6px;width: 2px;border-radius: 9999px;background: rgba(92,177,189,0.6);}
.mem_tags{display: flex;flex-wrap: wrap;gap: 6px;margin-top: 24px;padding-top: 24px;border-top: 1px solid var(--glass_line);}
.mem_tag{padding: 2px 8px;border-radius: 4px;background: rgba(255,255,255,0.05);font-size: 16px;color: #9ca3af;}
.partner_sec{border-top: 1px solid var(--glass_line);}
.partner_desc{max-width: 48rem;margin-top: 24px;margin-left: auto;margin-right: auto;font-size: 16px;font-weight: 300;line-height: 1.6;color: #9ca3af;}
.partner_grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));align-items: center;justify-items: center;gap: 24px;width: 100%;max-width: 64rem;margin-top: 40px;margin-left: auto;margin-right: auto;}
.partner_logo{display: flex;align-items: center;justify-content: center;width: 100%;aspect-ratio: 2.5/1;padding: 16px;border: 1px solid rgba(255,255,255,0.35);border-radius: 16px;background: rgba(255,255,255,0.85);box-shadow: 0 10px 30px rgba(0,0,0,0.4);opacity: 0.85;transition: var(--motion);}
.partner_logo:hover{border-color: var(--teal);background: #fff;box-shadow: 0 20px 40px rgba(0,0,0,0.6), 0 0 30px rgba(92,177,189,0.3);opacity: 1;transform: translateY(-6px) scale(1.04);}
.partner_img{max-width: 100%;max-height: 100%;object-fit: contain;transition: transform 0.4s;}
.partner_logo:hover .partner_img{transform: scale(1.02);}

/* Hipology 개요 */
.plat_glow{position: absolute;top: 50%;left: 50%;z-index: 0;width: 500px;height: 500px;border-radius: 100%;background: rgba(92,177,189,0.1);transform: translate(-50%,-50%);filter: blur(120px);pointer-events: none;}
.plat_logo{display: block;width: auto;height: 64px;margin: 32px auto;opacity: 0.95;filter: drop-shadow(0 0 20px rgba(92,177,189,0.15));transition: var(--motion);}
.plat_logo:hover{opacity: 1;transform: scale(1.05);}
.life_sec{border-top: 1px solid var(--glass_line);background: rgba(255,255,255,0.01);}
.xray_card{overflow: hidden;position: relative;border: 1px solid var(--glass_line);border-radius: 24px;background: #050505;box-shadow: 0 25px 50px rgba(0,0,0,0.5);}
.xray_grid_bg{opacity: 0.1;}
.reset_wrap{flex-shrink: 0;}
.reset_btn{display: flex;align-items: center;gap: 6px;padding: 8px 16px;border: 1px solid rgba(92,177,189,0.3);border-radius: 9999px;background: rgba(92,177,189,0.1);font-size: 16px;font-weight: 700;letter-spacing: 0.05em;color: var(--teal);text-transform: uppercase;transition: var(--motion);box-shadow: 0 10px 15px rgba(0,0,0,0.3);cursor: pointer;}
.reset_btn:hover{background: rgba(92,177,189,0.2);}
.reset_ico{width: 14px;height: 14px;}
.xray_view{display: flex;position: relative;align-items: center;justify-content: center;overflow: hidden;width: 100%;height: 320px;padding: 16px;background: #000;}
.xray_img{position: absolute;max-width: 100%;max-height: 100%;object-fit: contain;}
.tl_wrap{display: flex;align-items: center;gap: 20px;padding: 24px;border-top: 1px solid var(--glass_line);background: rgba(0,0,0,0.4);}
.tl_center{position: relative;flex: 1 1 auto;min-width: 0;}
.tl_track{position: absolute;top: 12px;left: 15%;right: 15%;z-index: 0;height: 2px;background: rgba(255,255,255,0.1);}
.tl_fill{width: 0;height: 100%;background: linear-gradient(to right,var(--teal),var(--blue));transition: width 0.5s;}
.tl_row{display: flex;position: relative;z-index: 10;align-items: center;justify-content: space-between;max-width: 36rem;margin-left: auto;margin-right: auto;}
.tl_item{display: flex;flex-direction: column;align-items: center;gap: 10px;cursor: pointer;}
.tl_dot{display: flex;align-items: center;justify-content: center;width: 24px;height: 24px;border: 2px solid rgba(255,255,255,0.2);border-radius: 100%;background: #1a1a1a;transition: all 0.3s;}
.tl_dot.on{border-color: var(--white);background: var(--teal);box-shadow: 0 0 20px rgba(92,177,189,0.6);}
.tl_lbl{font-size: 16px;font-weight: 800;letter-spacing: 0.05em;color: #6b7280;transition: color 0.3s;}
.tl_item:hover .tl_lbl{color: var(--white);}
.tl_lbl.on{font-weight: 900;color: var(--teal);filter: drop-shadow(0 0 10px rgba(92,177,189,0.3));}
.cycle_card{display: flex;flex-direction: column;position: relative;justify-content: space-between;overflow: hidden;min-height: 300px;padding: 32px;box-shadow: 0 20px 25px rgba(0,0,0,0.3);}
.cycle_panel{display: none;flex: 1 1 auto;flex-direction: column;justify-content: space-between;}
.cycle_panel.on{display: flex;}
.cycle_top{display: flex;align-items: flex-start;justify-content: space-between;margin-bottom: 24px;flex-wrap: wrap;gap: 10px;}
.cycle_label{padding: 4px 12px;border: 1px solid rgba(92,177,189,0.3);border-radius: 8px;background: rgba(92,177,189,0.1);font-size: 16px;font-weight: 700;letter-spacing: 0.05em;color: var(--teal);text-transform: uppercase;}
.cycle_code{font-size: 16px;font-weight: 700;letter-spacing: 0.05em;color: #6b7280;}
.content_wrap h6.cycle_tit{margin: 0 0 8px;font-size: 24px;font-weight: 900;line-height: 1.2;color: var(--white);}
.cycle_catch{margin-bottom: 16px;font-size: 16px;font-weight: 700;color: var(--teal);}
.cycle_grid{display: grid;margin: 32px 0;padding: 24px 0;border-top: 1px solid var(--glass_line);border-bottom: 1px solid var(--glass_line);gap: 24px;}
.feat_card{display: flex;align-items: flex-start;gap: 16px;padding: 20px;border: 1px solid var(--glass_line);border-radius: 16px;background: rgba(255,255,255,0.01);transition: var(--motion);}
.feat_card:hover{border-color: rgba(92,177,189,0.2);}
.feat_ico_wrap{display: flex;flex-shrink: 0;align-items: center;justify-content: center;width: 40px;height: 40px;border-radius: 12px;background: rgba(92,177,189,0.05);color: var(--teal);}
.feat_ico{width: 20px;height: 20px;}
.feat_txt{text-align: left;}
.feat_txt p+p{margin-top: 4px;}
.feat_tit{font-size: 16px;font-weight: 700;color: var(--white);}
.feat_desc{font-size: 16px;font-weight: 300;line-height: 1.4;color: #9ca3af;}
.cycle_bottom{display: flex;flex-direction: column;justify-content: space-between;gap: 24px;padding-top: 16px;}
.stat_row{display: flex;align-items: center;gap: 32px;flex-direction: column;}
.stat_row>div{display: flex;gap: 4px;flex-direction: column;align-items: center;}
.stat_label{font-size: 16px;color: #6b7280;}
.stat_val{font-size: 18px;font-weight: 700;color: var(--white);}
.link_wrap{display: flex;flex-shrink: 0;flex-direction: column;align-items: flex-start;gap: 8px;}
.link_label{font-size: 16px;font-weight: 700;letter-spacing: 0.05em;color: #6b7280;text-transform: uppercase;}
.link_box{display: flex;flex-wrap: wrap;justify-content: flex-start;gap: 8px;}
.cycle_link{display: flex;align-items: center;justify-content: center;gap: 6px;padding: 12px 20px;border-radius: 9999px;background: linear-gradient(to right,var(--teal),var(--blue));font-size: 16px;font-weight: 700;color: var(--white);transition: var(--motion);box-shadow: 0 10px 15px rgba(0,0,0,0.3);}
.cycle_link:hover{filter: brightness(1.1);transform: scale(1.05);}
.cycle_link_ico{width: 14px;height: 14px;}
.sim_head{display: flex;flex-direction: column;align-items: flex-start;justify-content: space-between;margin-bottom: 48px;gap: 20px;}
.sim_sub{margin-top: 8px;font-size: 16px;color: #9ca3af;}
.sim_presets{display: flex;align-items: center;gap: 8px;}
.preset_btn{padding: 8px 16px;border: 1px solid rgba(255,255,255,0.1);border-radius: 12px;background: rgba(255,255,255,0.05);font-size: 16px;font-weight: 700;color: #d1d5db;transition: var(--motion);cursor: pointer;}
.preset_btn:hover{background: rgba(255,255,255,0.1);}
.sim_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));align-items: stretch;gap: 32px;}
.sim_canvas{display: flex;overflow: hidden;position: relative;flex-direction: column;justify-content: space-between;min-height: 380px;padding: 24px;border: 1px solid rgba(255,255,255,0.1);border-radius: 24px;background: #050505;box-shadow: 0 25px 50px rgba(0,0,0,0.5);}
.sim_grid_bg{opacity: 0.3;}
.sim_top{display: flex;position: relative;z-index: 10;justify-content: space-between;font-size: 16px;color: #6b7280;flex-wrap: wrap;}
.sim_active{font-weight: 700;color: var(--teal);}
.sim_svg_wrap{display: flex;position: relative;z-index: 10;flex-grow: 1;align-items: center;justify-content: center;margin: 24px 0;}
.sim_svg{width: 100%;max-width: 320px;height: 220px;}
.hud_box{position: absolute;bottom: 0;left: 0;padding: 12px;border: 1px solid var(--glass_line);border-radius: 12px;background: rgba(9,9,11,0.9);font-size: 16px;}
.hud_box p+p{margin-top: 4px;}
.hud_teal{font-weight: 700;color: var(--teal);}
.hud_blue{font-weight: 700;color: #60a5fa;}
.sim_note{position: relative;z-index: 10;text-align: center;font-size: 16px;font-weight: 300;line-height: 1.6;color: #6b7280;}
.sim_panel{display: flex;flex-direction: column;justify-content: space-between;padding: 24px;}
.ctrl_label{font-size: 16px;font-weight: 700;letter-spacing: 0.05em;color: var(--teal);text-transform: uppercase;}
.content_wrap h6.ctrl_tit{margin-top: 24px;font-size: 20px;font-weight: 800;color: var(--white);}
.slider_block{margin-top: 24px;}
.slider_block2{margin-top: 8px;}
.slider_row{display: flex;justify-content: space-between;font-size: 16px;}
.slider_name{font-weight: 500;color: #9ca3af;}
.slider_val{font-weight: 700;color: var(--teal);}
.slider_val_b{font-weight: 700;color: #60a5fa;}
.slider_range{-webkit-appearance: none;appearance: none;width: 100%;height: 4px;border-radius: 8px;background: rgba(255,255,255,0.1)!important;accent-color: var(--teal);cursor: pointer;}
.slider_range_b{-webkit-appearance: none;appearance: none;width: 100%;height: 4px;border-radius: 8px;background: rgba(255,255,255,0.1)!important;accent-color: var(--blue);cursor: pointer;}
.slider_help{margin-top: 12px;font-size: 16px;font-weight: 300;line-height: 1.6;color: #6b7280;}
.ctrl_foot{margin-top: 24px;padding-top: 16px;border-top: 1px solid var(--glass_line);}
.ctrl_note{font-size: 16px;font-weight: 300;line-height: 1.6;color: #9ca3af;}
.val_sec{border-top: 1px solid var(--glass_line);background: rgba(255,255,255,0.01);}
.val_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));gap: 24px;}
.val_card{padding: 24px;border: 1px solid var(--glass_line);border-radius: 16px;background: rgba(255,255,255,0.02);transition: all 0.3s;}
.val_card:hover{border-color: rgba(92,177,189,0.3);background: rgba(255,255,255,0.04);transform: translateY(-4px);}
.val_num{margin-bottom: 8px;font-size: 36px;font-weight: 900;color: var(--teal);}
.val_card_tit{margin-bottom: 8px;font-size: 16px;font-weight: 700;color: var(--white);}
.val_card_desc{font-size: 16px;font-weight: 300;line-height: 1.6;color: #6b7280;}

/* Hipology 공통 */
.prod_sol_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));align-items: center;gap: 32px;}
.prod_sol_img{overflow: hidden;position: relative;border: 1px solid var(--glass_line);border-radius: 24px;transition: var(--motion_fast);}
.prod_sol_img:hover{border-color: rgba(92,177,189,0.5);box-shadow: 0 0 40px rgba(92,177,189,0.15);}
.prod_sol_img img{display: block;width: 100%;height: auto;transition: transform 0.8s cubic-bezier(0.16,1,0.3,1);}
.prod_sol_img:hover img{transform: scale(1.04);}
.prod_sol_txt{position: relative;padding-left: 20px;border-left: 3px solid var(--teal);}
.prod_sol_tit{margin-bottom: 20px;font-size: 30px;font-weight: 700;line-height: 1.4;color: var(--white);}
.prod_spec_sec{position: relative;border-top: 1px solid var(--glass_line);}
#core_tech .sec_head, #expected_effect .sec_head{position: relative;padding-left: 18px;text-align: left;}
#core_tech .sec_head::before, #expected_effect .sec_head::before{position: absolute;left: 0;top: 4px;bottom: 4px;width: 3px;border-radius: 4px;background: linear-gradient(180deg,var(--teal),transparent);content: "";}
.prod_spec_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));gap: 24px;}
.prod_spec_card{overflow: hidden;position: relative;padding: 32px;transition: var(--motion_fast);}
.prod_spec_card:hover{border-color: rgba(92,177,189,0.5);background: rgba(92,177,189,0.04);transform: translateY(-6px);box-shadow: 0 20px 40px rgba(0,0,0,0.35);}
.prod_spec_num{position: absolute;right: 24px;top: 24px;font-size: 16px;font-weight: 700;letter-spacing: 0.05em;color: rgba(255,255,255,0.15);}
.prod_spec_ico{display: flex;align-items: center;justify-content: center;width: 48px;height: 48px;margin-bottom: 24px;border-radius: 16px;background: rgba(92,177,189,0.1);transition: var(--motion_fast);}
.prod_spec_card:hover .prod_spec_ico{background: rgba(92,177,189,0.2);box-shadow: 0 0 20px rgba(92,177,189,0.3);}
.prod_spec_ico img{width: 24px;height: 24px;object-fit: contain;}
.prod_eff_sec{border-top: 1px solid var(--glass_line);background: rgba(255,255,255,0.01);}
.prod_eff_grid{display: grid;grid-template-columns: repeat(1,minmax(0,1fr));gap: 24px;}
.prod_eff_card{overflow: hidden;position: relative;padding: 0;transition: var(--motion_fast);}
.prod_eff_card:hover{border-color: rgba(92,177,189,0.5);transform: translateY(-6px);box-shadow: 0 20px 40px rgba(0,0,0,0.35);}
.prod_eff_img{overflow: hidden;position: relative;}
.prod_eff_img img{display: block;width: 100%;height: 220px;object-fit: cover;transition: transform 0.8s cubic-bezier(0.16,1,0.3,1);}
.prod_eff_card:hover .prod_eff_img img{transform: scale(1.08);}
.prod_eff_scrim{position: absolute;inset: 0;background: linear-gradient(180deg,rgba(5,5,5,0) 40%,rgba(5,5,5,0.92) 100%);}
.prod_eff_cap{position: absolute;left: 0;right: 0;bottom: 0;padding: 20px 24px;font-size: 16px;font-weight: 700;line-height: 1.5;color: var(--white);text-shadow: 0 2px 10px rgba(0,0,0,0.6);}

.intro_desc{margin: 30px auto;}

/* 서비스 준비중 */
@keyframes orbit_spin{0%{transform: rotate(0deg);}100%{transform: rotate(360deg);}}
.spin_ico{animation: orbit_spin 20s linear infinite;}
.prep_main{display: flex;align-items: center;justify-content: center;min-height: 90vh;padding: 116px 20px 40px;}
.prep_sec{width: 100%;max-width: 56rem;margin-left: auto;margin-right: auto;text-align: center;word-break: keep-all;}
.prep_card{display: flex;overflow: hidden;position: relative;flex-direction: column;align-items: center;justify-content: center;padding: 32px;border: 1px solid var(--glass_line);border-radius: 32px;background: rgba(255,255,255,0.04);}
.prep_glow{position: absolute;z-index: -1;width: 450px;height: 450px;border-radius: 100%;background: rgba(92,177,189,0.1);filter: blur(110px);pointer-events: none;}
.icon_wrap{display: flex;position: relative;align-items: center;justify-content: center;width: 160px;height: 160px;margin-bottom: 32px;}
.icon_circ{display: flex;position: relative;z-index: 10;align-items: center;justify-content: center;width: 96px;height: 96px;border: 1px solid rgba(255,255,255,0.2);border-radius: 100%;background: #09090b;box-shadow: 0 0 35px rgba(92,177,189,0.3);}
.icon_svg{width: 48px;height: 48px;color: var(--teal);filter: drop-shadow(0 0 12px rgba(92,177,189,0.85));}
.prep_txt{max-width: 42rem;margin-bottom: 48px;text-align: center;}
.prep_txt>*+*{margin-top: 16px;}
.prep_tit{padding-top: 16px;font-size: 30px;font-weight: 900;line-height: 1.2;letter-spacing: -0.025em;color: var(--white);filter: drop-shadow(0 2px 12px rgba(0,0,0,0.8));}
.hl_txt{color: var(--teal);filter: drop-shadow(0 0 20px rgba(92,177,189,0.45));}
.prep_desc{padding-top: 8px;font-size: 16px;font-weight: 400;line-height: 1.6;color: #f4f4f5;}
.desc_em{display: block;margin-top: 8px;font-weight: 800;color: var(--white);filter: drop-shadow(0 2px 8px rgba(0,0,0,0.6));}
.btn_wrap{display: flex;position: relative;align-items: center;justify-content: center;width: 100%;max-width: 20rem;}
.prep_btn{width: 100%;padding-top: 16px;padding-bottom: 16px;font-size: 16px;font-weight: 900;letter-spacing: 0.025em;text-align: center;box-shadow: 0 0 30px rgba(92,177,189,0.3);}

/** tablet **/
@media all and (min-width: 768px) {
.sub_content{padding-top: 30px;}
.tab_wrap{padding: 136px 40px 0;}
.tab_nav li a{padding: 12px 24px;}
.content_wrap h4.intro_tit{font-size: 60px;}
.content_wrap h5.sec_tit{font-size: 36px;}
.content_wrap h6.card_h4{font-size: 24px;}
.intro_desc{font-size: 20px;}
.greet_card{padding: 48px;}
.sign_name{font-size: 18px;}
.brand_card{padding: 48px;}
.brand_big{font-size: 72px;}
.os_big{font-size: 60px;}
.os_big span:nth-child(2), .os_big span:nth-child(4){font-size: 20px;}
.brand_plus div{font-size: 48px;}
.biz_card{padding: 48px;}
.biz_grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.vis_grid{grid-template-columns: repeat(3,minmax(0,1fr));margin: 60px 0 0;}
.content_wrap h6.vis_tit{font-size: 20px;}
.step_card{padding: 40px;}
.dept_btn{padding: 12px 24px;}
.mem_grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.partner_grid{grid-template-columns: repeat(4,minmax(0,1fr));gap: 32px;}
.partner_logo{padding: 24px;}
.prod_sol_tit{font-size: 36px;}
.prod_spec_grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.prod_eff_grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.prod_eff_img img{height: 240px;}
.plat_logo{height: 80px;}
.xray_view{height: 480px;}
.content_wrap h6.cycle_tit{font-size: 30px;}
.cycle_card{padding: 40px;}
.sim_head{flex-direction: row;align-items: center;}
.sim_presets{margin-top: 0;}
.sim_panel{padding: 32px;}
.val_grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.cycle_bottom{flex-direction: row;align-items: center;}
.stat_row{flex-direction: row;}
.stat_row>div{align-items: flex-start;}
.link_wrap{align-items: flex-end;}
.link_box{justify-content: flex-end;}
.stack_6{margin-top: 60px;}
.prep_card{padding: 64px;}
.icon_wrap{width: 192px;height: 192px;}
.prep_tit{font-size: 48px;}
.prep_desc{font-size: 18px;}
}

/** pc **/
@media all and (min-width: 1024px) {
.sub_content{padding-top: 40px;}
.tab_wrap{padding: 156px 0 0;}
.content_wrap h4.intro_tit{font-size: 72px;}
.greet_grid{grid-template-columns: repeat(12,minmax(0,1fr));gap: 64px;}
.greet_card{grid-column: span 7 / span 7;}
.greet_photo{grid-column: span 5 / span 5;}
.brand_row{flex-direction: row;gap: 32px;}
.brand_plus{padding: 0;}
.step_grid{grid-template-columns: repeat(3,minmax(0,1fr));}
.mem_grid{grid-template-columns: repeat(3,minmax(0,1fr));}
.prod_sol_grid{grid-template-columns: 5fr 7fr;gap: 64px;}
.prod_spec_grid{grid-template-columns: repeat(4,minmax(0,1fr));}
.prod_eff_grid{grid-template-columns: repeat(3,minmax(0,1fr));}
.prod_eff_img img{height: 260px;}
.sim_grid{grid-template-columns: repeat(12,minmax(0,1fr));}
.sim_canvas{grid-column: span 7 / span 7;}
.sim_panel{grid-column: span 5 / span 5;}
.val_grid{grid-template-columns: repeat(4,minmax(0,1fr));}
.cycle_grid{grid-auto-flow:column;}
}

/** pc-wide **/
@media all and (min-width: 1600px) {
.sub_content{padding-top: 40px;max-width: none;}
}