/* Root Variables */
:root{--primary-color:#0056b3;--secondary-color:#5b59d6;--point-color:#f30;--bg-gray:#f2f2f2;font-size:16px;}

*, :after, :before {
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
}
article, aside, hgroup, header, footer, figure, figcaption, nav, section {display:block;-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;}
div, ul, li, ol, dl, dd, dt {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; padding:0; margin:0; vertical-align:middle; list-style:none;}
h1, h2, h3, h4, h5, h6 {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; padding:0; margin:0; vertical-align:middle;}

/*-----------------------------------------------------------
 0. Reset & Layout
 ------------------------------------------------------------*/
/* ±âº» ½ºÅ¸ÀÏ ¹× ÄÁÅ×ÀÌ³Ê */
html,body {height: 100%;}
body{background:#d8d9db;margin:0;padding:0;font-family:'Noto Sans KR',sans-serif;font-size:1rem;}
.container{width:auto;max-width:1100px;margin:0 auto;}

/* À¯Æ¿¸®Æ¼ ÄÃ·¯ ¹× ¾ÆÀÌÄÜ Á¶Á¤ */
.text-primary{color:var(--secondary-color)!important;}
.text-info{color:#00a8ff!important;}
i{margin-top:6px;}

/*-----------------------------------------------------------
 1. Header & Navigation
 ------------------------------------------------------------*/
/* »ó´Ü °íÁ¤ Çì´õ */
#header{width:100%;height:80px;position:absolute;top:0;left:0;z-index:1000;background:rgba(255,255,255,0.5);border-bottom:1px solid rgba(0,0,0,0.05);backdrop-filter:blur(5px);}
#header .inner{display:flex;justify-content:space-between;align-items:center;height:100%;padding:0 20px;width:1100px;margin:0 auto;}

/* ·Î°í ¹× ¸Þ´º(GNB) */
.logo a{display:block;}
.gnb ul{display:flex;gap:2.5em;margin:0;padding:0;}
.gnb li{list-style:none;}
.gnb ul li a{font-size:1.125em;color:#222;font-weight:500;text-decoration:none;}

/* ¿ìÃø À¯Æ¿¸®Æ¼ ¹öÆ° */
.header-util{display:flex;align-items:center;gap:1.25em;}
.header-util .btn-remote{background:var(--secondary-color);color:#fff;padding:0.5em 1em;border-radius:5px;text-decoration:none;font-weight:400;font-size:0.9em;line-height:1.5;}
.header-util .tel-num{font-size:1em;color:var(--secondary-color);font-weight:600;}

/*-----------------------------------------------------------
 2. Main Visual
 ------------------------------------------------------------*/
/* ºñÁÖ¾ó ¹è°æ ¹× ¿µ¿ª */
.main-visual{width:100%;height:1210px;background:url("/html/smart/shop26/img/back.png") no-repeat center top;background-size:2600px 1290px;overflow:hidden;margin:0 auto;}
.visual-inner{width:1100px;margin:0 auto;height:100%;position:relative;}

/* ºñÁÖ¾ó ÅØ½ºÆ® ¹× ¶óº§ */
.top-logo{position:absolute;top:110px;right:0;}
x{max-height:1.56em;}
.visual-text{position:absolute;top:220px;left:50px;z-index:10;}
.visual-text h2{letter-spacing:-2px;}
.visual-text h2 .sub{font-size:2.4em;line-height:1.2;font-weight:400;color:#333;}
.visual-text h2 strong{display:block;font-size:3.3em;line-height:1.1;font-weight:800;color:#000;}
.visual-text .date{font-size:1.9em;color:#555;margin-top:1.6em;font-weight:400;letter-spacing:-0.3px;}

/* ºñÁÖ¾ó ÀÌ¹ÌÁö ¿ÀºêÁ§Æ® */
.visual-label{position:absolute;bottom:520px;right:0;z-index:20;width:10em;}

.paran_label {position: absolute;right: 0;top: 170px;display: flex;flex-direction: column;gap: 10px;z-index: 999;}
.paran_label img {width: auto;height: 170px;}

.best-label{position:absolute;bottom:710px;right:-30px;z-index:20;width:13em;}
.visual-label img,
.best-label img{max-width:100%;}
.visual-machine{position:absolute;bottom:200px;right:20px;z-index:15;width:53em;}

/*-----------------------------------------------------------
 3. Common Components
 ------------------------------------------------------------*/
/* °øÅë È­ÀÌÆ® ¹Ú½º µðÀÚÀÎ */
.white-box{width:1100px;margin:0 auto;background: rgba(255,255,255,0.7);padding:3em;border-radius:30px;backdrop-filter:blur(25px);border: 1px solid rgba(255,255,255,0.9);box-shadow:0 5px 15px rgba(0,0,0,0.05);}

/* °øÅë Å¸ÀÌÆ² ¹× °¡ÀÌµå ÅØ½ºÆ® */
.title-section{text-align:left;margin-bottom:2em;display:flex;align-items:center;gap:0.5em;}
.title-section i{font-size:1.8em;color:var(--primary-color);}
.title-section h1{font-size:1.8em;color:#333;font-weight:700;letter-spacing: -0.7px;margin:0;padding:0;}
.title-section h1 small {font-size: 0.7em;font-weight: 400;letter-spacing: 0;}
.guide-txt{font-size:1.05em;color:#777;margin:0;margin-bottom:1.8em;line-height:1.6;padding:0;margin-top:-22px;margin-left:43px;}

/* °øÅë ³Êºñ Å¬·¡½º */
.w-10{width:10%;} .w-20{width:20%;} .w-30{width:30%;} .w-40{width:40%;} .w-50{width:50%;} .w-60{width:60%;} .w-90{width:90%;}
.text-center{text-align:center;align-items:center;}

/*-----------------------------------------------------------
 4. Smart Info Section (Áö¿ø ³»¿ë ¾È³»)
 ------------------------------------------------------------*/
/* ¹Ù¿ìÃ³ Á¤º¸ »ó´Ü */
.smart-info{padding:4em 0;margin-top:-11.25em;position:relative;z-index:20;}
.voucherTop{padding-bottom:10px;}
.voucherTop ul{margin:0;padding:0;list-style:none;}
.voucherTop ul li{display:flex;flex-direction:column;gap:1.2em;}

/* Á¤ÀÇ ¸®½ºÆ®(DT/DD) ½ºÅ¸ÀÏ */
.voucherTop dl{display:flex;align-items:flex-start;padding:0;margin:0;border:none;}
.voucherTop dt{width:6.5em;font-size:1.15em;color:#000;font-weight:600;letter-spacing:-1px;flex-shrink:0;line-height:1.8;}
.voucherTop dd{flex:1;font-size:1.15em;color:#555;line-height:1.8;margin:0;word-break:keep-all;font-weight:400;}

/* ÇÏ´Ü ÂüÁ¶ ¹Ú½º */
.sub-desc{font-size:0.88em;color:#777;line-height:1.7;margin-top:12px;}
.reference-box{margin-top:10px;padding:15px 20px;background: #f9f9f9;border-left: 3px solid #ddd;border-radius:10px;}
.ref-title{display:block;font-size:0.92em;color:#555;font-weight:600;}
.reference-box p{margin:0;font-size:0.88em;color:#888;line-height:1.7;letter-spacing:-0.5px;padding-left:20px;}

/*-----------------------------------------------------------
 5. Product Section (ÇÙ½É ±â¼ú ¼Ö·ç¼Ç)
 ------------------------------------------------------------*/
/* Á¦Ç° ±×¸®µå ¹× ¹Ú½º ±âº» */
.product-info{position:relative;padding:0 0 4em 0;}
.smart-service{display:flex;gap:25px;margin-top:1em;align-items:stretch;}
.smart-service > a{text-decoration:none;flex:1;display:flex;}
.paran-box{padding:25px 30px;border-radius:15px;transition:all 0.4s cubic-bezier(0.165,0.84,0.44,1);width:100%;display:flex;flex-direction:column;position:relative;overflow:hidden;box-sizing:border-box;background:#f0f9ff;border:1px solid #dfeaf1;}
.paran-box:hover{box-shadow:0 25px 50px -12px rgba(0,0,0,0.12);}

/* Á¦Ç° Å¸ÀÌÆ² ¹× ÅÂ±× */
.paran-box .ttl{font-size:1.8em;font-weight:800;line-height:1.3;margin-bottom:25px;display:flex;gap:8px;justify-content:space-between;align-items:self-end;border-bottom:1px solid #b8cee5;padding-bottom:5px;color:#1976d2;}
.paran-box .sub-tag{display:inline-block;width:fit-content;padding:4px 0;font-size:0.55em;font-weight:500;}

/* ¼­ºñ½º ¸®½ºÆ® ºÒ·¿(Bullet) */
.service-list{margin-bottom:30px;flex-grow:1;padding-left:15px;}
.service-list ul{margin:0;padding:0;list-style:none;}
.service-list ul li{position:relative;padding-left:15px;font-size:0.94em;color:#444;line-height:2;letter-spacing:-0.2px;font-weight:400;}
.service-list ul li::before{content:"";position:absolute;left:0;top:13px;width:4px;height:4px;border-radius:50%;transition:all 0.3s;}
.box-modu .service-list ul li::before{background:#1976d2;box-shadow:0 0 8px rgba(25,118,210,0.4);}

/* ½º¸¶ÀÏºñÁî(SmileBiz) Å×¸¶ */
.box-biz{background:#fffff0;border:1px solid #f6ede2;}
.box-biz .ttl{color:#f57f17;border-color:#f1d2b7;}
.box-biz .service-list ul li::before{background:#f57f17;box-shadow:0 0 8px rgba(245,127,23,0.4);}

/* ÇÏ´Ü ¹öÆ° ±×·ì */
.btn-group{display:flex;gap:10px;margin-top:auto;position:relative;z-index:10;justify-content:center;padding-bottom:10px;}
.btn-group .btn{flex:0.5;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 5px;border-radius:12px;font-size:1em;font-weight:500;text-decoration:none;transition:all 0.3s;color:#fff;background:#88bef3;backdrop-filter:blur(5px);}
.btn-group .btn i{vertical-align:middle;margin-top:3px;}
.box-modu .btn:hover{background:#1976d2;color:#fff;border-color:#1976d2;box-shadow:0 5px 15px rgba(25,118,210,0.2);}
.box-biz .btn{background:#ffc033;}
.box-biz .btn:hover{background:#f57f17;color:#fff;border-color:#f57f17;box-shadow:0 5px 15px rgba(245,127,23,0.2);}

/*-----------------------------------------------------------
 6. Required Info Section (½ÅÃ» ¼­·ù ¹× ÀýÂ÷)
 ------------------------------------------------------------*/
/* Ä¿½ºÅÒ Å×ÀÌºí ±âº» */
.required-info, .local-info{padding:0 0 4em 0;position:relative;}
.div-table{display:flex;flex-direction:column;border:1px solid #ddd;border-bottom:none;border-radius:15px;overflow:hidden;background:#fff;}
.div-table .d-row{display:flex;border-bottom:1px solid #ddd;transition:background 0.2s;}
.div-table .d-row:hover:not(.d-header){background:#fcfcfc;}

/* Çì´õ ¹× ¼¿ ·¹ÀÌ¾Æ¿ô */
.div-table .d-header{background:#333!important;color:#fff;border-bottom:none;}
.div-table .d-cell{padding: 20px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid #eee;line-height:1.5;text-align:left;}
.div-table .d-cell:last-child{border-right:none;}
.div-table .d-header .d-cell{text-align:center;}
.local-info .div-table .d-cell {text-align:center;}

/* ÅØ½ºÆ® °­Á¶ ¹× ºÎ°¡Á¤º¸ */
.div-table .help-links{display:flex;flex-direction:column;gap:4px;margin: 12px 0;padding: 15px;background: #f5f5f5;border:1px solid #eee;border-radius: 10px;}
.div-table .help-links span{font-size: 0.87em;color: #777;line-height: 1.3;}
.div-table .help-links strong{font-weight:500; color:#444;}
.div-table .d-cell small{display:block;margin-top:5px;color:#666;}
.div-table .t-must{color:#d32f2f;font-weight:700;}
.div-table .t-choice{color:#1976d2;font-weight:700;}

/*-----------------------------------------------------------
 7. Government Product Section (º¸±Þ Àåºñ ¸®½ºÆ®)
 ------------------------------------------------------------*/
/* Á¦Ç° Ä«µå ±×¸®µå */
.gov-product-info{padding:0 0 4em 0;}
.gov-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px;}
.gov-card{background:#fff;border:1px solid #eee;border-radius:20px;padding:25px;position:relative;display:flex;flex-direction:column;transition:all 0.3s ease;box-shadow:0 4px 10px rgba(0,0,0,0.03);}
.gov-card:hover{transform:translateY(-8px);box-shadow:0 15px 30px rgba(0,0,0,0.08);border-color:#ddd;}

/* Ä«µå Çì´õ ¹× ¹îÁö */
.gov-header{text-align:left;margin-bottom:30px;border-bottom:1px solid #eee;padding-bottom:5px;min-height:40px;display:flex;align-items:center;}
.gov-header h4{font-size:1.15em;font-weight:800;margin:0;letter-spacing:-0.5px;line-height:1.3;display:flex;align-items:center;gap:8px;color:#222;}
.theme-modu .brand{color:#1976d2;}
.theme-biz .brand{color:#f57f17;}
.hot-badge{font-size:0.65em;background:#333;color:#fff;padding:2px 8px;border-radius:4px;font-weight:700;vertical-align:middle;}

/* ÁÖ¿ä Æ¯Â¡ ¹× °¡°Ý Á¤º¸ */
.p-features{list-style:none;padding:0;margin:0 0 20px 0;flex-grow:1;}
.p-features li{font-size:0.88em;color:#555;margin-bottom:12px;display:flex;align-items:center;gap:8px;line-height:1.4;word-break:keep-all;}
.p-features li i{color:#ccc;font-size:0.9em;}

/* °¡°Ý Á¤º¸ ÄÁÅ×ÀÌ³Ê */
.price-info{min-height:60px;display:flex;flex-direction:column;justify-content:center;margin-bottom:20px;}
.p-price{display:block;font-size:1.45em;font-weight:800;color:#111;margin-bottom:10px;letter-spacing:-0.5px;text-align: center;}
.p-price .plus-alpha{font-size:0.65em;font-weight:700;margin-left:4px;vertical-align:middle;}
.theme-modu .plus-alpha{color:#1976d2;}
.theme-biz .plus-alpha{color:#f57f17;}

/* »ó¼¼ º¸±â ¹öÆ° */
.view-price-btn{width:100%;padding:12px;border-radius:10px;border:none;background:#f1f3f5;color:#444;font-weight:700;cursor:pointer;transition:0.3s;font-size:0.92em;}
.theme-modu .view-price-btn:hover{background:#1976d2;color:#fff;}
.theme-biz .view-price-btn:hover{background:#f57f17;color:#fff;}

/*-----------------------------------------------------------
 8. Fixed Buttons (Äü ¸Þ´º ¹× °íÁ¤ ¹öÆ°)
 ------------------------------------------------------------*/
/* °íÁ¤ ¹öÆ° ÄÁÅ×ÀÌ³Ê */
.fixed_btn{position:fixed;bottom:30px;right:30px;z-index:9999;display:flex;flex-direction:column;gap:10px;align-items:flex-end;}
.fixed_btn .f-item{display:flex;padding:12px 20px;align-items:center;justify-content:center;text-decoration:none;transition:all 0.3s;border-radius:8px!important;box-shadow:0 8px 15px rgba(0,0,0,0.1);width:180px;box-sizing:border-box;overflow:hidden;border:none;gap:7px;font-size:1em;font-weight:700;}
.fixed_btn .f-item:hover{transform:translateY(-5px);box-shadow:0 12px 25px rgba(0,0,0,0.15);}

/* °³º° ¹öÆ° ½ºÅ¸ÀÏ (Ä«Ä«¿À, ¿ø°Ý, ºñµð¿À) */
.btn-apply-img{background:#fff;border:1px solid #eee!important;}
.btn-apply-img img{width:100%;height:auto;display:block;object-fit:contain;border-radius:0!important;}
.btn-kakao{background:#fae100;color:#3c1e1e;}
.btn-alram{background: #f71e0e;color: #ffffff;}
.fixed_btn .btn-remote{background:#f0f9f0;color:#2e7d32;border:1px solid #c8e6c9!important;cursor:pointer;}
.fixed_btn .btn-remote i{font-size:1.4em;margin-top:3px;color:#2e7d32;}
.fixed_btn .btn-video{background:#fff;border:1px solid #eee!important;}
.fixed_btn .btn-video span{font-size:0.75em;line-height:1.2;text-align:left;flex:1;font-weight:400;color:#888;}
.fixed_btn .btn-video span strong{display:block;font-size:1.3em;font-weight:800;color:#333;}

/*-----------------------------------------------------------
 9. Modal System (·¹ÀÌ¾î ÆË¾÷ °øÅë)
 ------------------------------------------------------------*/
/* ¸ð´Þ ·¹ÀÌ¾Æ¿ô ¹× Çì´õ */
.modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);z-index:10001;backdrop-filter:blur(5px);}
.modal-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:95%;max-width: 900px;max-height:90vh;background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 25px 50px rgba(0,0,0,0.4);display:flex;flex-direction:column;}
.modal-header{padding:0 10px 0px 20px;background:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;}
.modal-header  h2 {display: block;font-size: 1em;color: #999999;font-weight: 700;line-height: 50px;padding: 0;margin: 0;}
.modal-header .close-modal{background:none;border:none;font-size:2.5em;line-height: 50px;cursor:pointer;color:#999;position: absolute;right: 14px;}

/* ¸ð´Þ º»¹® ½ºÅ©·Ñ ¹× ÀÎÆ®·Î */
.modal-body{padding:0;flex:1;overflow-y:auto;min-height:300px;line-height:1.6;-webkit-overflow-scrolling:touch;}
.intro-card{display:flex;align-items:center;gap:15px;margin-bottom:18px;border-bottom:1px solid #f2f2f2;padding-bottom:18px;}
.intro-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}

/*-----------------------------------------------------------
 10. Modal Detail Page (Á¦Ç° »ó¼¼ ¸ð´Þ)
 ------------------------------------------------------------*/
/* »ó¼¼ Á¤º¸ ¼½¼Ç ¹× Æ¯Â¡ ±×¸®µå */
.info-group{}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.feature-grid .f-item{background:#fff;border:1px solid #eee;padding:15px;border-radius:12px;display:flex;align-items:center;gap:15px;transition:all 0.2s;}

/* »ó¼¼ °¡°Ý Å×ÀÌºí */
.price-section{}
.table-scroll{margin-bottom: 10px;}
.detail-table{width:100%;border-collapse:collapse;font-size:13px;min-width:500px;}
.detail-table th{background:#f9fafb;color:#666;font-weight:600;padding:12px 10px;border-bottom:1px solid #eee;text-align:left;}
.total-price-box{background:#fcfcfc;padding:15px;border-radius:10px;border:1px solid #f2f2f2;text-align:right;margin-bottom:25px;}

/*-----------------------------------------------------------
 11. Footer Section
 ------------------------------------------------------------*/
/* ÇÏ´Ü ÀúÀÛ±Ç ¹× ·¹ÀÌ¾Æ¿ô */
#footer{background:#222;padding:25px 0;border-top:1px solid rgba(255,255,255,0.05);}
#footer .container{text-align:center;}
#footer .copyright-line{color:#888;font-size:0.9em;letter-spacing:0.5px;margin:0;}
#footer .copyright-line strong{color:#bbb;font-weight:800;letter-spacing:1px;}


/*-----------------------------------------------------------
 15. Hardware Lineup Section
 ------------------------------------------------------------*/
.hardware-lineup{padding:0 0 4em 0;position:relative;}
.hardware-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:10px;}
.hw-item{display:flex;align-items:center;background:#fff;border:1px solid #eee;border-radius:20px;padding:20px;gap:20px;transition:0.3s;}
.hw-item:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,0.05);border-color:#82c9ff;}

/* Àåºñ ÀÌ¹ÌÁö ½æ³×ÀÏ */
.hw-thumb{width:140px;height:140px;background:#f8f9fa;border-radius:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;}
.hw-thumb img{max-width:85%;height:auto;object-fit:contain;}

/* Àåºñ Á¤º¸ ÅØ½ºÆ® */
.hw-info{flex:1;}
.hw-brand{display:block;font-size:0.75em;font-weight:700;color:#82c9ff;text-transform:uppercase;margin-bottom:4px;}
.hw-name{font-size:1.1em;font-weight:800;color:#222;margin:0 0 10px 0;letter-spacing:-0.5px;}
.hw-spec{margin:0;padding:0;list-style:none;}
.hw-spec li{font-size:0.85em;color:#777;margin-bottom:3px;line-height:1.4;word-break:keep-all;}



/*-----------------------------------------------------------
 12. Modal Common (°ø¿ë ±âº» ·¹ÀÌ¾Æ¿ô ¹× ºê·£µù)
 ------------------------------------------------------------*/
.modal-detail-wrapper{background:#fff; border-radius:15px; overflow:hidden; width:100%; box-sizing:border-box; animation:slideUp 0.3s ease-out;}
.detail-body{padding:25px; box-sizing:border-box;}

/* ¸ð´Þ Çì´õ ÀÎÆ®·Î ¼½¼Ç */
.intro-card{display:flex; align-items:center; gap:15px; margin-bottom:40px; border-bottom:1px solid #f2f2f2; padding-bottom:20px; position:relative;}
.intro-icon{width:54px; height:54px; border-radius:14px; display:flex; align-items:center; justify-content:center; font-size:22px; flex-shrink:0;}
.intro-txt{flex:1;}
.intro-txt .modal-title{font-size:1.4em; font-weight:700; color:#111; margin:0 0 4px 0; letter-spacing:-1px; line-height:1.2;}
.intro-txt p{font-size:0.92em; color:#888; margin:0; line-height:1.4;}

/* Çì´õ ¿ìÃø ¹Ù·Î°¡±â ¹öÆ° */
.header-link-btn{display:inline-flex; align-items:center; gap:8px; padding:10px 18px; border-radius:8px; font-size:0.88em; font-weight:700; text-decoration:none; transition:all 0.3s; color:#fff; box-shadow:0 4px 10px rgba(0,0,0,0.1);}
.header-link-btn i{font-size:0.9em;}
.header-link-btn:hover{transform:translateY(-2px); box-shadow:0 6px 15px rgba(0,0,0,0.15); filter:brightness(1.1);}

/* Å×¸¶º° Æ÷ÀÎÆ® ÄÃ·¯ ÅëÇÕ °ü¸® */
.theme-modu .intro-icon{background:#f0f7ff; color:#1976d2;}
.theme-modu .desc-box{background:#f8faff; border:1px solid #e1e9ff;}
.theme-modu .desc-summary{color:#1976d2;}
.theme-modu .header-link-btn{background:#1976d2; border:1px solid #1565c0;}

.theme-biz .intro-icon{background:#fff9f0; color:#f57f17;}
.theme-biz .desc-box{background:#fffaf5; border:1px solid #fdebd0;}
.theme-biz .desc-summary{color:#f57f17;}
.theme-biz .header-link-btn{background:#f57f17; border:1px solid #e65100;}

/* ¼½¼Ç Å¸ÀÌÆ² ¹× °ø¿ë ·¹ÀÌ¾Æ¿ô */
.info-group{margin-bottom:40px;padding:0;}
.section-ttl{font-size:1.05em;font-weight:800;color:#333;margin: 20px 0 10px 0;display:flex;align-items:center;gap: 3px;}
.section-ttl i{font-size:0.95em;margin-top: 2px;}

/*-----------------------------------------------------------
 12-1. Product Detail (¼Ò°³ ÆäÀÌÁö Àü¿ë - ±×¸®µå/¼³¸í)
 ------------------------------------------------------------*/
.desc-box{padding:22px 25px; border-radius:12px; margin-bottom:20px; box-sizing:border-box;}
.desc-summary{display:block; font-size:1.05em; font-weight:700; margin-bottom:5px; line-height:1.6; letter-spacing:-0.5px;}
.desc-points{list-style:none; padding:5px; margin:0;}
.desc-points li{display:flex; align-items:flex-start; gap:10px; margin-bottom:4px; font-size:0.92em; color:#555; line-height:1.6; word-break:keep-all;}
.point-dot{font-size:5px; margin-top:10px; color:#ccc;}

/* ÇÙ½É ±â´É ¾ÆÀÌÄÜ ±×¸®µå */
.feature-grid{display:grid;grid-template-columns: repeat(4,1fr);gap:12px;}
.feature-grid .f-item{display:flex; flex-direction:column; align-items:center; text-align:center; background:#f9fafb; border:1px solid #eee; padding:20px 15px; border-radius:12px; transition:0.2s; box-sizing:border-box; gap:3px;}
.feature-grid .f-item i{font-size:26px; color:#adb5bd; transition:0.3s; margin-bottom:5px;}
.feature-grid .f-item:hover i{transform:translateY(-3px);}
.theme-modu .f-item:hover i{color:#1976d2;}
.theme-biz .f-item:hover i{color:#f57f17;}

.f-info strong{display:block; font-size:1em; font-weight:700; color:#333; margin-bottom:8px; letter-spacing:-0.5px;}
.f-info span{font-size:0.87em; font-weight:400; color:#888; line-height:1.5; word-break:keep-all; display:block;}

/*-----------------------------------------------------------
 14. Service Plan
 ------------------------------------------------------------*/

/*  Service Plan Table  */
.plan-section{margin-top:20px;background:#fff;border-radius:15px;}
.plan-table{border-collapse:separate;border-spacing:0;width:100%;}
.plan-table th{background:#f8f9fa;color:#666;font-size:0.8em;padding:10px;border-bottom:2px solid #eee;text-align:center;}
.plan-table td{padding:12px 10px;font-size:0.85em;border-bottom:1px solid #f1f1f1;text-align:center;}

.calc-opt-grid{grid-template-columns:1fr;} .calc-right-side{margin-top:5px;}}

/* Guide Text Style*/
.plan-guide-box{margin-top:15px;padding:15px;background:#f9f9f9;border-radius:10px;}
.guide-list{margin:0;padding:0;list-style:none;}
/* 4px µ¿±×¶ó¹Ì ºÒ·¿ »ý¼º */
.guide-list li{position:relative;padding-left:12px;margin-bottom:6px;font-size:0.85em;color:#555;line-height:1.6;word-break:keep-all;}
.guide-list li::before{content:"";position:absolute;left:0;top:9px;width:4px;height:4px;border-radius:50%;background:#82c9ff;}
.guide-list li strong{color:#333;font-weight:700;}

/* ±âÁ¸ ¾ÆÀÌÄÜ ¹× MOU °­Á¶ ½ºÅ¸ÀÏ ¿ÏÀü Á¦°Å */
.guide-list li i, .mou-highlight{display:none!important;}

/*-----------------------------------------------------------
 12-2. Product Price (°¡°Ý ¾È³» Àü¿ë - ´ÙÅ© Å×ÀÌºí)
 ------------------------------------------------------------*/
.price-section{}
.table-scroll{width:100%;overflow-x:auto;border-radius:8px;border: 1px solid #888;background:#fff;}
.detail-table{width:100%;border-collapse:collapse;font-size:14px;min-width:650px;border: 0;}
.detail-table th{background: #888;color:#fff;font-weight: 400;padding:10px 12px;text-align: center;border: 0;}
.detail-table td{padding:10px 12px;border-bottom:1px solid #eee;color:#333;line-height:1.4;text-align: center;}
.detail-table tr:hover td{background:#f8f9fa;}
.highlight-row td{background:#fff9f0; font-weight:500;}

.text-center{text-align:center!important;}
.text-right{text-align:right!important;}
.price-tag{font-weight:700; color:#000; font-family:'Roboto', sans-serif; font-size:15px;}

/* ÇÕ°è ±Ý¾× ¹Ú½º */
.total-price-box{padding: 0;border: 0;text-align:right;margin: 0;}
.total-price-box .label{font-size: 1em;color: #666;font-weight: 400;margin-right:8px;}
.total-price-box .price{font-size: 1.2em;font-weight: 700;color:#d32f2f;}

/*-----------------------------------------------------------
 12-3. Animation & Responsive (¹ÝÀÀÇü °ø¿ë)
 ------------------------------------------------------------*/
@keyframes slideUp{from{opacity:0; transform:translateY(15px);} to{opacity:1; transform:translateY(0);}}

/*-----------------------------------------------------------
 13. Smart Calculator - UI & Active State (Integrated)
 ------------------------------------------------------------*/
.smart-calc-btn-wrap{text-align:center;padding:25px 0;margin-top:20px;border-top:1px dashed #ddd;}
.calc-open-btn{background: #ec6a61;color:#fff;border:none;padding:15px 40px;border-radius:50px;font-size:1.1em;font-weight:700;cursor:pointer;transition:0.3s;}
.calc-open-btn:hover{background:#F44336;transform:translateY(-3px);}

.calc-bottom-sheet{display:none;position:fixed;bottom:0;left:0;width:100%;z-index:11000;justify-content:center;pointer-events:none;}
.calc-modal-content{pointer-events:auto;background:#e1f2ff;width:100%;max-width:1100px;border-radius:20px 20px 0 0;box-shadow:0 -10px 30px rgba(0,0,0,0.15);border:1px solid #ddd;border-bottom:none;animation:calcSlideUp 0.4s cubic-bezier(0,0.5,0.5,1);overflow:hidden;}

.calc-modal-header{color:#ffffff;padding:8px 25px;display:flex;justify-content:space-between;align-items:center;background:#82c9ff;}
.calc-modal-header h4{margin:0;font-size:1.1em;font-weight:700;}
.calc-min{background:none;border:none;cursor:pointer;font-size:20px;color:#fff;}

.calc-modal-body{padding:12px 20px;display:grid;grid-template-columns:auto 260px;gap:12px;align-items:start;}

/* ºñÀ² ¹× ¿É¼Ç ¼±ÅÃ ¹è°æ ¹ÝÀü */
.calc-rate-cards{display:flex;gap:10px;margin-bottom:5px;}
.rate-card{flex:1;cursor:pointer;position:relative;display:flex;align-items:center;}
.rate-card input[type="radio"]{position:absolute;left:12px;z-index:2;margin:0;cursor:pointer;}
.rate-card-content{background:#fff;padding:8px 12px 8px 35px;border-radius:10px;border:1px solid #cce4f7;display:flex;align-items:center;height:46px;width:100%;box-sizing:border-box;transition:0.2s;}
.rate-card-content span{font-size:0.82em;font-weight:600;color:#666;}
.rate-card input[type="radio"]:checked + .rate-card-content{background:#c6edff;border-color:#b0e1f7;}
.rate-card input[type="radio"]:checked + .rate-card-content span{color:#000;}

.calc-left-side{display:flex;flex-direction:column;gap:8px;}
.calc-setting-group{background:rgba(255,255,255,0.6);padding:10px 12px;border-radius:12px;}
.calc-label{font-weight:800;font-size:0.88em;color:#333;display:block;margin-bottom:6px;}
.calc-opt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 10px;}
.calc-opt-item{background:#fff;padding:8px 12px;border-radius:10px;display:flex;justify-content:space-between;align-items:center;border:1px solid #cce4f7;min-height:54px;box-sizing:border-box;transition:0.2s;}
.calc-opt-item:has(input:checked){background:#c6edff;border-color:#b0e1f7;}
.calc-opt-item label{display:flex;align-items:center;gap:8px;font-size:0.82em;font-weight:600;line-height:1.2;cursor:pointer;color:#444;margin:0;flex:1;word-break:keep-all;}
.calc-opt-item label input{flex-shrink:0;margin-top:1px;}

.qty-stepper{display:inline-flex;align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;overflow:hidden;height:28px;box-shadow:inset 0 1px 2px rgba(0,0,0,0.05);}
.qty-stepper button{background:#f8f9fa;border:none;width:28px;height:100%;cursor:pointer;font-size:16px;font-weight:700;color:#666;line-height:1;}
.qty-stepper input{width:32px;height:100%;border:none;text-align:center;font-size:14px;font-weight:700;color:#333;background:transparent;padding:0;outline:none;}

/* ¿ìÃø °á°úÃ¢ ¹× ÃÖÁ¾ ±Ý¾× */
.calc-right-side{background:#fff;padding:0;border-radius:15px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid #82c9ff;box-shadow:0 5px 15px rgba(130,201,255,0.15);height:auto;overflow:hidden;}
.res-summary{padding:15px 20px;}
.res-row{display:flex;justify-content:space-between;margin-bottom:5px;font-size:0.82em;color:#555;}
.res-row strong{color:#222;font-weight:700;}
.res-row.blue strong{color:#1976d2;}
.res-row.orange strong{color:#f30;}
.res-final-box{background:#405360;color:#fff;padding:15px;text-align:center;}
.res-final-box p{margin:0 0 2px 0;font-size:0.72em;opacity:0.8;}
.res-final-box strong{font-size:1.35em;color:#fff;letter-spacing:-0.5px;display:block;}
