:root{
  --primary:#ff8a00;
  --primary-dark:#e0a700;
  --ink:#111827;
  --text:#24272b;
  --muted:#667085;
  --line:#e5e7eb;
  --soft:#fff4e8;
  --white:#fff;
  --shadow:0 14px 40px rgba(17,24,39,.10);
  --radius:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans KR","Malgun Gothic",sans-serif;color:var(--text);background:#fff;line-height:1.5;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
button,input,textarea,select{font:inherit}
button{cursor:pointer}

/* ===== HEADER ===== */
.top{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);height:76px;display:flex;align-items:center;padding:0 4%;box-shadow:0 3px 18px rgba(17,24,39,.06)}
.logo{font-size:30px;font-weight:950;letter-spacing:-2.5px;white-space:nowrap;color:var(--ink)}
.logo::first-letter{color:#111}
.logo span{font-size:12px;color:#7a808a;margin-left:9px;font-weight:800;letter-spacing:-.8px}
.nav{display:flex;gap:26px;font-size:16px;font-weight:900;align-items:center;position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap}
.nav a{position:relative;padding:10px 2px;transition:.2s ease}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:3px;background:var(--primary);border-radius:99px;transition:.2s ease}
.nav a:hover{color:#000}
.nav a:hover::after{right:0}
.header-right{display:flex;align-items:center;gap:12px;margin-left:auto}
.youtube-top{border:1px solid #e60000;padding:10px 16px;border-radius:10px;font-size:14px;font-weight:950;white-space:nowrap;background:#e60000;color:#fff;transition:.2s;box-shadow:0 5px 14px rgba(230,0,0,.22)}
.youtube-top:hover{border-color:#b80000;background:#b80000;color:#fff;transform:translateY(-1px);box-shadow:0 8px 18px rgba(184,0,0,.28)}
.consult-top{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15;white-space:nowrap}
.consult-top span{font-size:11px;color:#e60000;font-weight:950}
.consult-top strong{font-size:18px;color:#111;font-weight:950;letter-spacing:-.5px}
.consult-top strong a{color:inherit}
.menu-toggle{display:none;background:#fff;border:1px solid #d9dde3;border-radius:10px;width:44px;height:44px;padding:9px;cursor:pointer;box-shadow:0 3px 10px rgba(0,0,0,.05)}
.menu-toggle span{display:block;height:3px;background:#111;margin:5px 0;width:100%;border-radius:10px}
.mobile-menu{display:none}

/* ===== HERO ===== */
.hero{min-height:610px;padding:100px 7%;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#fff4e8 0%,#fff 54%,#f2f4f7 100%)}
.hero::before{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-170px;background:var(--primary);border-radius:50%;opacity:.18}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.62) 0%,rgba(255,255,255,.38) 45%,rgba(255,255,255,.08) 100%);pointer-events:none}
.hero-photo{position:absolute;inset:0;background-image:url("/assets/main-hero.jpg");background-size:cover;background-position:center 55%;opacity:0;transition:opacity .25s}
.hero-photo.has-image{opacity:1}
.hero-in{position:relative;z-index:1;max-width:1260px;margin:auto;width:100%}
.eyebrow,.label{font-size:13px;font-weight:950;color:#b85e00;letter-spacing:1.5px;text-transform:uppercase}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;background:#fff1b8;border:1px solid #ffe071;border-radius:999px;color:#6e5000}
.hero h1{font-size:clamp(46px,6vw,82px);line-height:1.04;letter-spacing:-5px;margin:18px 0 24px;color:#101318;font-weight:950}
.hero p{font-size:19px;line-height:1.75;color:#4f5661;max-width:760px;margin:0}

/* ===== BUTTONS ===== */
.buttons{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:50px;padding:14px 23px;border-radius:11px;font-weight:950;background:#111;color:#fff;border:1px solid #111;box-shadow:0 7px 18px rgba(17,17,17,.12);transition:transform .18s,box-shadow .18s,background .18s}
.btn:hover{transform:translateY(-2px);box-shadow:0 11px 24px rgba(17,17,17,.18);background:#252525}
.btn.light{background:#fff;color:#111;border-color:#d9dde3;box-shadow:0 5px 15px rgba(17,24,39,.06)}
.btn.light:hover{background:#fff1df;border-color:#e4b000}
.hero-contact-buttons .btn:first-child{background:var(--primary);border-color:var(--primary);color:#111;box-shadow:0 9px 24px rgba(224,167,0,.28)}
.hero-contact-buttons .btn:first-child:hover{background:#ff8a00;border-color:#ff8a00}
.hero-contact-buttons .btn.light{font-weight:950}

/* ===== COMMON CONTENT ===== */
section,.page{padding:88px 7%;max-width:1400px;margin:auto}
.title{font-size:44px;line-height:1.12;letter-spacing:-3px;margin:12px 0 18px;font-weight:950;color:#111}
.desc{color:#626b78;font-size:17px;line-height:1.8;max-width:850px;margin:0}

/* ===== CARDS ===== */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px}
.card{border:1px solid var(--line);padding:30px;border-radius:var(--radius);background:#fff;box-shadow:0 4px 16px rgba(17,24,39,.035);transition:transform .2s,box-shadow .2s,border-color .2s}
.card:hover{box-shadow:var(--shadow);transform:translateY(-5px);border-color:#f1c64b}
.card h3{font-size:22px;line-height:1.35;margin:0 0 12px;letter-spacing:-1.2px;font-weight:950;color:#15181d}
.card p{color:#697180;line-height:1.7;margin:0}
.more{display:inline-flex;margin-top:20px;font-weight:950;font-size:14px;color:#b85e00}
.more::after{content:"↗";margin-left:6px}

/* ===== HIGHLIGHT BAND / PROCESS ===== */
.band{max-width:1400px;margin:0 auto;box-sizing:border-box;background:linear-gradient(135deg,#111827,#202733);padding:82px 7%;color:#fff}
.band-in{max-width:1260px;margin:auto}
.band .label{color:#ff8a00}
.band .title{color:#fff}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}
.step{padding:26px;background:#fff;border:1px solid rgba(255,255,255,.08);border-radius:14px;color:#111;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.step b{display:flex;align-items:center;gap:8px;font-size:12px;color:#b85e00;margin-bottom:10px;font-weight:950}
.step strong{font-size:19px;line-height:1.35}

/* ===== PAGE TITLE UNDERLINE ===== */
@media(max-width:700px){.page>h1::after,}

/* ===== PAGE ===== */
.breadcrumb{font-size:13px;color:#7a8190;margin-bottom:22px;font-weight:800}
.breadcrumb a:hover{color:#b85e00}
.page h1{font-size:54px;line-height:1.08;letter-spacing:-4px;margin:0 0 20px;font-weight:950;color:#111}
.lead{font-size:19px;color:#565e6a;line-height:1.85;max-width:900px;margin:0}
.content-box{margin-top:38px;border:1px solid #f0d27a;border-top:5px solid var(--primary);border-radius:16px;background:linear-gradient(180deg,#fff7ef,#fff);padding:38px;box-shadow:0 8px 28px rgba(17,24,39,.05)}
.content-box h2{letter-spacing:-2px;margin-top:0;font-size:27px;font-weight:950}
.content-box li{line-height:1.95;color:#555f6c;margin:5px 0}
.area-list{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px}
.area-list a{border:1px solid #dfe3e8;padding:13px 18px;border-radius:999px;font-weight:900;background:#fff;transition:.2s;box-shadow:0 2px 8px rgba(17,24,39,.03)}
.area-list a:hover{background:#111;color:#fff;border-color:#111;transform:translateY(-2px)}

/* ===== CASES ===== */
.case-meta{font-size:13px;color:#818896;font-weight:850;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.case-card h3{line-height:1.45}
.case-photo{padding:0!important;overflow:hidden;display:block}
.case-photo img{display:block;width:100%;height:300px;object-fit:cover;border-bottom:1px solid var(--line);transition:transform .35s}
.case-photo:hover img{transform:scale(1.035)}
.case-body{padding:24px}
.case-body h3{margin:10px 0 6px}
.case-meta span{display:inline-block;background:#fff0a8;color:#674c00;border:1px solid #f5d65c;padding:4px 9px;border-radius:999px;font-weight:950;margin-left:3px}
.case-loading{padding:40px;border:2px dashed #d7dce2;border-radius:16px;width:100%;text-align:center;color:#697180;background:#fafbfc}
.case-hero{display:block;width:100%;max-height:620px;object-fit:cover;border-radius:16px;border:1px solid #e1e5ea;margin:28px 0;box-shadow:var(--shadow)}
.case-card p{margin-bottom:0}
.case-filter{display:flex;justify-content:space-between;align-items:center;margin:30px 0 0;padding:17px 0;border-top:1px solid #e0e4e8;border-bottom:1px solid #e0e4e8}
.case-filter strong{font-size:17px;font-weight:950}.case-filter strong span{color:var(--primary);font-weight:950}.case-filter>span{color:#777;font-size:14px;font-weight:800}

/* ===== FAQ ===== */
.faq details{border-bottom:1px solid #e4e7eb;padding:22px 4px}
.faq summary{cursor:pointer;font-size:18px;font-weight:900;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";float:right;color:#b85e00;font-size:24px;line-height:1}.faq details[open] summary::after{content:"−"}
.faq p{color:#68717d;line-height:1.85}


/* ===== HOME FAQ ===== */
.home-faq{background:#fff7ef;border-top:1px solid #ffd6ad;border-bottom:1px solid #ffd6ad}
.faq-list{max-width:1050px;margin:34px auto 0;border-top:3px solid #111}
.home-faq details{background:#fff;padding:22px 6px;border-bottom:1px solid #e5e5e5}
.home-faq summary{font-size:18px;font-weight:950;cursor:pointer;list-style:none;padding-right:30px;position:relative}
.home-faq summary::-webkit-details-marker{display:none}
.home-faq summary::after{content:"+";position:absolute;right:0;top:-3px;font-size:26px;color:#b85e00}
.home-faq details[open] summary::after{content:"−"}
.home-faq details p{color:#626b78;line-height:1.8;margin:14px 0 0;padding-right:25px}

/* ===== MOBILE MENU CONTACT ===== */
.mobile-contact-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 0 8px}
.mobile-contact-btn{border:0;border-radius:12px;min-height:52px;font:inherit;font-weight:950;cursor:pointer;box-shadow:0 5px 14px rgba(0,0,0,.12)}
.mobile-contact-btn.phone{background:var(--primary);color:#111}
.mobile-contact-btn.sms{background:#111;color:#fff}

/* ===== FOOTER ===== */
footer{background:#111827;color:#eee;padding:58px 7% 28px;margin-top:50px;border-top:5px solid var(--primary)}
footer .foot{max-width:1260px;margin:auto;display:grid;grid-template-columns:1.35fr 1fr 1fr 1.1fr;gap:38px}
footer .foot-col h3{margin:0 0 14px;font-size:25px;letter-spacing:-1px;font-weight:950}
footer .foot-col h4{margin:0 0 13px;font-size:14px;color:#ff8a00;font-weight:950;letter-spacing:.2px}
footer .foot-col p{margin:0;color:#b9c0ca;line-height:1.8}
footer .foot-links{display:flex;flex-direction:column;gap:9px}
footer .foot-links a{color:#cbd0d8;font-size:14px;font-weight:750}
footer .foot-links a:hover{color:#fff}
footer .foot-phone{font-size:22px;font-weight:950;color:#fff;display:block;margin-top:7px}
footer .foot-phone:hover{color:#ff8a00}
footer .foot-sms{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
footer .foot-sms a{border:1px solid #394150;border-radius:8px;padding:7px 10px;color:#d8dde5;font-size:13px;font-weight:850}
footer .foot-business{margin-top:24px;padding-top:18px;border-top:1px solid #303746;color:#9fa7b3;font-size:12px;line-height:1.8}
footer .foot-business strong{color:#d9dde4;font-weight:900}
footer .foot-bottom{max-width:1260px;margin:25px auto 0;padding-top:18px;border-top:1px solid #303746;color:#7f8896;font-size:12px;display:flex;justify-content:space-between;gap:20px}

.foot-sms{display:flex;flex-direction:column;gap:7px;margin-top:14px}.foot-sms a{color:#cbd1da;font-size:14px}.foot-sms a:hover{color:#ff8a00}

/* ===== CONTACT MODAL ===== */
body.modal-open{overflow:hidden}
.contact-modal{display:none;position:fixed;inset:0;z-index:1000}
.contact-modal.open{display:block}
.contact-modal-backdrop{position:absolute;inset:0;background:rgba(3,7,18,.68);backdrop-filter:blur(3px)}
.contact-modal-box{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(460px,calc(100% - 30px));background:#fff;border-radius:20px;padding:38px;box-shadow:0 25px 80px rgba(0,0,0,.35);border-top:6px solid var(--primary)}
.contact-modal-box h2{margin:6px 0 24px;font-size:29px;letter-spacing:-2px;font-weight:950}
.contact-modal-box p{color:#697180;margin-top:-12px;margin-bottom:20px}
.contact-modal-close{position:absolute;right:12px;top:10px;width:42px;height:42px;border:0;background:#f4f5f7;border-radius:50%;font-size:28px;line-height:1;cursor:pointer;color:#444}
.contact-modal-close:hover{background:#111;color:#fff}
.contact-options{display:grid;gap:11px}
.contact-option{display:flex;align-items:center;justify-content:center;border:1px solid #dfe3e8;border-radius:12px;padding:18px;font-size:18px;text-align:center;background:#fff;font-weight:950;transition:.18s}
.contact-option:hover{background:#fff5c9;color:#111;border-color:#efc329;transform:translateY(-2px)}
.hero-contact-buttons button{font:inherit;cursor:pointer}

/* ===== FLOATING CONTACT ===== */
.floating-contact{position:fixed;right:22px;bottom:22px;z-index:900;display:flex;gap:9px}
.floating-btn{border:0;border-radius:999px;padding:15px 22px;font:inherit;font-weight:950;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.23);transition:.2s}
.floating-btn:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(0,0,0,.28)}
.floating-btn.phone{background:var(--primary);color:#111}
.floating-btn.sms{background:#111;color:#fff}

/* ===== MOBILE ===== */
@media(max-width:1000px){
  .nav{gap:15px;font-size:14px}.youtube-top{display:none}.header-right{gap:8px}
}
@media(max-width:800px){
  .top{height:80px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4%;gap:0}
  .logo{grid-column:1;justify-self:start;align-self:center;font-size:23px;line-height:1}.logo span{display:none}
  .nav{display:none;position:static;transform:none}
  .header-right{display:contents}
  .consult-top{grid-column:2;grid-row:1;justify-self:center;align-self:center;display:flex;flex-direction:column;align-items:center;text-align:center;line-height:1.1}
  .consult-top span{font-size:12px;margin:0 0 4px;color:#e60000;font-weight:950}.consult-top strong{font-size:17px;letter-spacing:-.5px}
  .menu-toggle{display:flex;grid-column:3;grid-row:1;justify-self:end;align-self:center;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:50px;height:50px;padding:0}
  .menu-toggle span{width:26px;height:3px;margin:0;flex:0 0 auto}
  .mobile-menu{position:fixed;top:80px;left:0;right:0;z-index:99;background:#fff;border-bottom:1px solid #ddd;box-shadow:0 14px 28px rgba(0,0,0,.14);padding:8px 5% 18px}
  .mobile-menu.open{display:block}.mobile-menu a{display:block;padding:16px 4px;border-bottom:1px solid #eee;font-size:16px;font-weight:900}.mobile-menu a:last-child{border-bottom:0}
  .hero{min-height:560px;padding:70px 7%;}.hero h1{font-size:48px;letter-spacing:-3.5px;text-shadow:0 2px 10px rgba(255,255,255,.75)}.hero p{font-size:16px;text-shadow:0 1px 6px rgba(255,255,255,.75)}.eyebrow{font-size:11px}
  .page,section{padding:65px 6%}.title{font-size:35px}.page h1{font-size:40px;letter-spacing:-3px}.lead{font-size:17px}.desc{font-size:16px}
  .grid{grid-template-columns:1fr}.process{grid-template-columns:1fr 1fr}.content-box{padding:26px}.case-photo img{height:235px}
  footer .foot{display:block}.foot-col{margin-bottom:28px}.foot-phone{margin-top:10px}.foot-sms{margin-top:14px}footer .foot-bottom{display:block}footer .foot-bottom span{display:block;margin-top:5px}
}
@media(max-width:520px){
  .hero{min-height:540px;padding-top:58px}.hero h1{font-size:42px}.buttons{gap:9px}.btn{width:100%;min-height:52px}
  .process{grid-template-columns:1fr}.page h1{font-size:35px}.title{font-size:31px}.content-box{padding:22px}
  .case-photo img{height:210px}.case-body{padding:18px}.case-filter{align-items:flex-start;flex-direction:column;gap:6px}
  .contact-modal-box{padding:32px 20px}.contact-option{padding:17px 12px}
  .floating-contact{left:10px;right:10px;bottom:10px;gap:7px}.floating-btn{flex:1;padding:15px 8px;font-size:15px}
}

/* v23: detail page contact actions */
.page .content-box .buttons .btn[data-contact-type]{min-width:150px;}
.page .content-box .buttons .btn[data-contact-type="call"]{background:var(--primary);border-color:var(--primary);color:#111;box-shadow:0 8px 20px rgba(224,167,0,.24);}
.page .content-box .buttons .btn[data-contact-type="sms"]{background:#111;border-color:#111;color:#fff;}
@media (max-width:700px){.page .content-box .buttons .btn[data-contact-type]{flex:1;min-width:0;}}

/* v24 detail contact buttons */
.detail-contact-section{margin-top:56px;padding:34px 0 10px;border-top:3px solid #111;text-align:center}.detail-contact-section .lead{margin:0 auto 22px}.detail-contact-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:680px;margin:0 auto}.contact-big{border:0;border-radius:14px;padding:18px 20px;font-size:18px;font-weight:800;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.contact-big:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.14)}.contact-big.phone,.detail-case-contact .contact-main.phone{background:#111;color:#fff}.contact-big.sms,.detail-case-contact .contact-main.sms{background:#ff8a00;color:#111}.detail-case-contact{display:flex;flex-wrap:wrap;gap:12px}.detail-case-contact .contact-main{flex:1 1 220px}@media(max-width:640px){.detail-contact-buttons{grid-template-columns:1fr}.detail-case-contact{display:grid;grid-template-columns:1fr}.detail-case-contact .contact-main{width:100%}}

/* v25: 모든 상세 메뉴의 상담 버튼 크기 통일 */
.detail-contact-section{width:100%;box-sizing:border-box;}
.detail-contact-buttons{width:min(680px,100%);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.detail-contact-buttons .contact-big{width:100%;min-height:58px;height:58px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-size:18px;font-weight:900;}
.page .content-box .buttons{align-items:stretch;}
.page .content-box .buttons .btn[data-contact-type]{height:54px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;}
@media(max-width:640px){.detail-contact-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail-contact-buttons .contact-big{height:54px;min-height:54px;font-size:16px}.page .content-box .buttons .btn[data-contact-type]{height:52px}}

/* v27: mobile menu contact links - text style matching other menu items */
.mobile-contact-links{display:flex;gap:0;border-bottom:1px solid #eee}
.mobile-contact-link{appearance:none;background:transparent;border:0;border-bottom:0;flex:1;text-align:left;padding:16px 4px;font:inherit;font-size:16px;font-weight:900;color:#111;cursor:pointer}
.mobile-contact-link + .mobile-contact-link{border-left:1px solid #eee;padding-left:18px}
.mobile-contact-link:hover{color:#b85e00}

/* v27: hero readability */
.hero::after{background:linear-gradient(90deg,rgba(255,255,255,.78) 0%,rgba(255,255,255,.60) 42%,rgba(255,255,255,.20) 78%,rgba(255,255,255,.05) 100%)}
.hero-in{max-width:1260px}
.hero-in > .eyebrow,.hero-in > h1,.hero-in > p,.hero-in > .buttons{position:relative}
.hero-in h1{max-width:760px;text-shadow:0 3px 18px rgba(255,255,255,.95),0 1px 2px rgba(0,0,0,.12)}
.hero-in p{font-weight:700;text-shadow:0 2px 12px rgba(255,255,255,.95)}
.hero-in::before{content:"";position:absolute;left:-28px;top:-28px;bottom:-28px;width:min(820px,78vw);background:rgba(255,255,255,.30);border:1px solid rgba(255,255,255,.55);border-radius:26px;box-shadow:0 18px 55px rgba(0,0,0,.10);backdrop-filter:blur(2px)}
.hero-in > *{z-index:1}

/* v27: service image cards */
.service-grid{align-items:stretch}
.service-card{overflow:hidden;padding:0;display:flex;flex-direction:column}
.service-photo{height:190px;background:linear-gradient(135deg,#eceff3,#cfd5dc);overflow:hidden}
.service-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.service-card:hover .service-photo img{transform:scale(1.05)}
.service-card-body{padding:25px}
.service-card h3{margin-top:0}

/* v27: process descriptions */
.process .step{min-height:190px;display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.process .step p{margin:10px 0 0;color:#626b78;font-size:14px;line-height:1.7;font-weight:600}
@media(max-width:800px){
 .hero::after{background:linear-gradient(90deg,rgba(255,255,255,.78),rgba(255,255,255,.58))}
 .hero-in::before{left:-14px;width:calc(100% + 28px);top:-20px;bottom:-20px;background:rgba(255,255,255,.38)}
 .service-photo{height:210px}
 .process .step{min-height:0}
}
@media(max-width:520px){
 .mobile-contact-links{margin:0 0 4px}
 .mobile-contact-link{font-size:16px;padding:16px 4px}
 .hero-in::before{left:-10px;width:calc(100% + 20px);border-radius:20px}
 .hero h1{text-shadow:0 3px 16px rgba(255,255,255,.98)}
 .service-photo{height:190px}
}

/* 추가 서비스 / 수전교체 미니 버튼 */
.service-extra{display:flex;justify-content:center;margin-top:18px}
.service-mini-btn{display:inline-flex;align-items:center;gap:5px;padding:8px 14px;border:1px solid #d7dbe0;border-radius:999px;background:#fff;color:#333;font-size:14px;font-weight:800;text-decoration:none;box-shadow:0 2px 8px rgba(17,24,39,.05);transition:.2s}
.service-mini-btn:hover{background:#111;color:#fff;border-color:#111;transform:translateY(-1px)}
@media(max-width:700px){.service-mini-btn{font-size:13px;padding:7px 12px}}

/* v29: service list cards + detail hero photo */
.service-detail-photo{width:100%;height:360px;margin:0 0 34px;border-radius:22px;overflow:hidden;background:#eef1f4;box-shadow:0 12px 34px rgba(17,24,39,.10)}
.service-detail-photo img{width:100%;height:100%;display:block;object-fit:cover}
@media(max-width:700px){.service-detail-photo{height:230px;margin-bottom:26px;border-radius:16px}}

/* v31: 서비스 카드 높이 통일 및 출동지역 분석 콘텐츠 */
.service-grid .service-card{height:100%}
.service-grid .service-card-body{display:flex;flex:1;flex-direction:column}
.service-grid .service-card-body .more{margin-top:auto;padding-top:20px}
.region-analysis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:38px}
.region-analysis-card{border:1px solid #e5e7eb;border-radius:16px;padding:30px;background:#fff;box-shadow:0 4px 16px rgba(17,24,39,.035)}
.region-analysis-card h2{margin:10px 0 12px;font-size:26px;letter-spacing:-1.5px;color:#111;font-weight:950}
.region-analysis-card p{margin:8px 0;color:#626b78;line-height:1.85}
.region-note{margin:22px 0 0;color:#8a8f98;font-size:13px;line-height:1.7}
@media(max-width:800px){.region-analysis{grid-template-columns:1fr}.region-analysis-card{padding:24px}}

/* v32 service detail additions */
.symptom-check{margin-top:42px;padding:34px;border:1px solid #e5e7eb;border-left:5px solid var(--primary);border-radius:16px;background:#fff}
.symptom-check .label{margin-bottom:12px}
.symptom-check h2{margin:0 0 10px;font-size:32px;font-weight:950;letter-spacing:-1.5px}
.symptom-check>p{margin:0 0 20px;color:#626b78;line-height:1.7}
.symptom-check ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}
.symptom-check li{padding:12px 14px;background:#fafafa;border-radius:9px;color:#343a43;line-height:1.55;font-weight:650}
.detail-process{margin-top:48px;padding-top:8px}
.detail-process h2{margin:0 0 22px;font-size:32px;font-weight:950;letter-spacing:-1.5px}
.detail-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:2px solid #17181c}
.detail-process-step{padding:26px 22px 24px;border-bottom:1px solid #ddd}
.detail-process-step+ .detail-process-step{border-left:1px solid #e5e7eb}
.detail-process-step span{display:inline-block;background:#17181c;color:#ff8a00;padding:7px 10px;font-size:13px;font-weight:900;margin-bottom:14px}
.detail-process-step h3{margin:0 0 10px;font-size:22px;font-weight:950}
.detail-process-step p{margin:0;color:#626b78;font-size:15px;line-height:1.75;font-weight:600}
@media(max-width:800px){
 .symptom-check ul{grid-template-columns:1fr}
 .detail-process-grid{grid-template-columns:1fr 1fr}
 .detail-process-step:nth-child(3){border-left:0}
 .detail-process-step:nth-child(even){border-left:1px solid #e5e7eb}
}
@media(max-width:520px){
 .symptom-check{padding:24px}
 .symptom-check h2,.detail-process h2{font-size:27px}
 .detail-process-grid{grid-template-columns:1fr}
 .detail-process-step+ .detail-process-step{border-left:0}
}

/* v34: 작업절차 상세페이지 - 메인 PROCESS와 동일한 4단계 구성 */
.procedure-page>h1{font-size:clamp(38px,5vw,64px);letter-spacing:-3px;margin-bottom:16px}
.procedure-flow{margin-top:46px;border-top:2px solid #17181c}
.procedure-flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.procedure-step-card{min-height:220px;padding:28px 24px 30px;border-bottom:1px solid #ddd}
.procedure-step-card+ .procedure-step-card{border-left:1px solid #e5e7eb}
.procedure-step-card>span{display:inline-block;background:#17181c;color:#ff8a00;padding:7px 12px;font-size:14px;font-weight:950;letter-spacing:.2px;margin-bottom:18px}
.procedure-step-card h2{margin:0 0 12px;font-size:25px;font-weight:950;letter-spacing:-1.2px}
.procedure-step-card p{margin:0;color:#626b78;font-size:16px;line-height:1.8;font-weight:600}
.procedure-guide{margin-top:48px}
.procedure-guide h2{margin:0 0 12px;font-size:30px;font-weight:950;letter-spacing:-1.2px}
.procedure-guide p{margin:0 0 24px;color:#626b78;line-height:1.8}
@media(max-width:800px){.procedure-flow-grid{grid-template-columns:1fr 1fr}.procedure-step-card:nth-child(3){border-left:0}.procedure-step-card:nth-child(even){border-left:1px solid #e5e7eb}}
@media(max-width:520px){.procedure-page>h1{font-size:40px;letter-spacing:-2px}.procedure-flow-grid{grid-template-columns:1fr}.procedure-step-card+ .procedure-step-card{border-left:0}.procedure-step-card{min-height:0;padding:24px 18px}.procedure-step-card h2{font-size:23px}}


/* =========================================================
   v35 가독성 개선
   기존 레이아웃/라우팅은 유지하고 글자 크기·색상·간격만 개선
   ========================================================= */
:root{
  --text:#17181c;
  --text-soft:#4f5661;
  --text-muted:#68717d;
  --line:#dfe3e8;
  --surface:#ffffff;
  --surface-soft:#f7f8fa;
  --accent:#ff8a00;
}

/* 기본 본문 */
body{
  color:var(--text);
  font-size:17px;
  line-height:1.75;
  letter-spacing:-0.25px;
}
p,li,td,th{
  color:var(--text-soft);
}
p{
  line-height:1.78;
}

/* 제목 */
h1,h2,h3,h4{
  color:var(--text);
  line-height:1.3;
  letter-spacing:-1.2px;
}
h1{
  font-size:clamp(38px,5vw,64px);
  font-weight:950;
}
h2{
  font-size:clamp(30px,4vw,46px);
  font-weight:950;
}
h3{
  font-size:clamp(21px,2vw,27px);
  font-weight:900;
}

/* 상단 네비 */
.nav a,.nav-link,.menu a{
  color:#25272b;
  font-weight:800;
}
.nav a:hover,.nav-link:hover,.menu a:hover{
  color:#111;
}

/* 라벨/작은 강조문구 */
.label,.eyebrow,.badge{
  font-weight:900;
  letter-spacing:-.2px;
}

/* 서비스/현장사례 카드 */
.card h3,
.service-card h3,
.case-card h3{
  color:var(--text);
  font-weight:900;
  line-height:1.42;
}
.card p,
.service-card p,
.case-card p{
  color:var(--text-soft);
  font-size:16px;
  line-height:1.7;
}
.card .meta,
.service-card .meta,
.case-card .meta{
  color:var(--text-muted);
  font-weight:750;
}

/* 상세페이지 본문 */
.lead{
  color:#4a515b !important;
  font-size:19px !important;
  line-height:1.85 !important;
  font-weight:550;
}
.content-box p,
.service-detail p{
  color:#4f5661;
  font-size:17px;
  line-height:1.85;
}

/* 증상 체크 */
.symptom-check{
  background:#f8f9fa;
  border-color:#dfe3e8;
}
.symptom-check h2{
  color:#17181c;
}
.symptom-check>p{
  color:#59616c;
  font-size:17px;
}
.symptom-check li{
  color:#303640;
  background:#fff;
  border:1px solid #e7eaee;
  font-size:16px;
  line-height:1.7;
}

/* 작업절차 */
.detail-process-step h3{
  color:#17181c;
}
.detail-process-step p{
  color:#555e69;
  font-size:16px;
  line-height:1.8;
}
.detail-process-step span{
  font-weight:950;
}

/* 메인 작업절차 */
.process-copy .step h3{
  color:#17181c;
}
.process-copy .step p{
  color:#555e69;
  font-size:16px;
  line-height:1.8;
}

/* FAQ */
.faq-item button,
.faq-question{
  color:#202328;
  font-size:18px;
  font-weight:850;
  line-height:1.55;
}
.faq-item p,
.faq-answer{
  color:#555e69;
  font-size:16px;
  line-height:1.8;
}

/* 버튼 */
.btn{
  font-size:16px;
  font-weight:900 !important;
  line-height:1.2;
}
.btn.light{
  color:#202328;
}

/* 지역 페이지 */
.area-list a{
  color:#25282d;
  font-weight:850;
}
.area-list a:hover{
  color:#111;
}

/* 푸터 */
footer p,
.footer p{
  color:#b8bdc5;
  line-height:1.7;
}

/* 모바일 */
@media(max-width:800px){
  body{
    font-size:16px;
  }
  .lead{
    font-size:17px !important;
  }
  .card p,
  .service-card p,
  .case-card p,
  .content-box p,
  .service-detail p,
  .detail-process-step p,
  .process-copy .step p{
    font-size:15.5px;
  }
  .faq-item button,
  .faq-question{
    font-size:17px;
  }
}

/* v36 지역 상세 콘텐츠 */
.region-detail-content{margin-top:34px}
.region-detail-content>h2{margin-top:34px}
.region-detail-content>h2:first-child{margin-top:0}
.region-detail-content>p{font-size:17px;line-height:1.9;color:#4f5661}
.region-issue-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0 10px}
.region-issue{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border:1px solid #e4e7eb;border-radius:12px;background:#fafbfc}
.region-issue strong{display:grid;place-items:center;min-width:30px;height:30px;border-radius:50%;background:#17181c;color:#ff8a00;font-size:14px}
.region-issue span{color:#303640;font-size:16px;line-height:1.55;font-weight:750}
@media(max-width:700px){.region-issue-grid{grid-template-columns:1fr}.region-detail-content>p{font-size:16px}}

/* v28: 지역 상세페이지 / 지역 선택 UI / 공통 상세 헤드 */
.page h1{font-family:inherit;font-weight:950}
.region-hero-head{padding-top:10px}.region-hero-head h1{font-size:clamp(42px,5.2vw,64px);letter-spacing:-4px;margin:10px 0 18px}.region-badges{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px}.region-badges span{padding:9px 13px;border:1px solid #ead27a;border-radius:999px;background:#fff1df;font-size:13px;font-weight:900;color:#5e4b00}.region-section{padding:66px 0 0}.region-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.region-feature-card{border:1px solid #e3e6eb;border-radius:18px;padding:30px;background:linear-gradient(180deg,#fff,#fafbfc);box-shadow:0 5px 18px rgba(17,24,39,.04)}.region-feature-card h2{font-size:28px;letter-spacing:-2px;margin:8px 0 14px;font-weight:950}.region-feature-card p{color:#626b78;line-height:1.9}.region-feature-card ul{padding:0;list-style:none}.region-feature-card li{padding:8px 0;border-bottom:1px dashed #e3e6eb;color:#555f6c}.section-intro{color:#68717d;line-height:1.8;margin:0;max-width:850px}.region-service-card{padding:0;overflow:hidden}.region-service-card .service-card-body{padding:25px}.region-service-name{font-size:21px;font-weight:950;letter-spacing:-1px;margin-bottom:9px}.inquiry-list{margin-top:25px;border-top:3px solid #111}.inquiry-item{display:grid;grid-template-columns:60px 1fr;gap:18px;padding:24px 4px;border-bottom:1px solid #e5e7eb}.inquiry-item>strong{font-size:20px;color:#b85e00}.inquiry-item h3{margin:0 0 7px;font-size:20px;letter-spacing:-1px}.inquiry-item p{margin:0;color:#68717d;line-height:1.8}.region-local-faq details{border-bottom:1px solid #e4e7eb;padding:22px 4px}.region-local-faq summary{cursor:pointer;font-size:18px;font-weight:900;list-style:none;padding-right:28px}.region-local-faq summary::-webkit-details-marker{display:none}.region-local-faq summary::after{content:'+';float:right;color:#b85e00;font-size:24px}.region-local-faq details[open] summary::after{content:'−'}.region-local-faq p{color:#68717d;line-height:1.85;margin-top:13px}
.area-selector-section{padding-left:0;padding-right:0}.area-row-label{font-size:13px;font-weight:950;color:#b85e00;letter-spacing:1px;margin-top:32px}.area-row-label.second{margin-top:48px}.area-special-row,.area-city-buttons,.home-area-top,.home-area-city-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:13px}.area-special,.area-city-btn,.home-area-main,.home-area-special,.home-area-city{appearance:none;border:1px solid #dfe3e8;background:#fff;border-radius:12px;padding:13px 18px;font:inherit;font-weight:950;cursor:pointer;transition:.18s;box-shadow:0 2px 8px rgba(17,24,39,.04)}.area-special:hover,.area-city-btn:hover,.home-area-main:hover,.home-area-special:hover,.home-area-city:hover,.area-special.active,.area-city-btn.active,.home-area-main.active,.home-area-city.active{background:#111;color:#fff;border-color:#111;transform:translateY(-1px)}.area-panel,.home-area-panel{display:none}.area-panel.active,.home-area-panel.active{display:block}.area-city-panel{margin-top:22px}.area-city-panel[hidden]{display:none}.area-city-panel h3{font-size:22px;margin:0 0 10px;font-weight:950}.home-area-section .home-area-panel .area-list{margin-top:18px}.home-area-city-buttons{margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}
@media(max-width:800px){.region-feature-grid{grid-template-columns:1fr}.region-hero-head h1{font-size:42px;letter-spacing:-3px}.region-section{padding-top:52px}.inquiry-item{grid-template-columns:42px 1fr;gap:12px}.area-special,.area-city-btn,.home-area-main,.home-area-special,.home-area-city{flex:1 1 calc(50% - 10px);text-align:center}}
@media(max-width:520px){.region-hero-head h1{font-size:36px}.region-badges{display:grid}.region-badges span{text-align:center}.area-special,.area-city-btn,.home-area-main,.home-area-special,.home-area-city{flex-basis:100%}.inquiry-item h3{font-size:18px}}
/* v28: 모든 메뉴 상세페이지 메인 헤드 규격 통일 */
.page h1,.procedure-page>h1{font-family:inherit;font-size:54px;line-height:1.08;letter-spacing:-4px;margin:0 0 20px;font-weight:950;color:#111}
@media(max-width:800px){.page h1,.procedure-page>h1{font-size:40px;letter-spacing:-3px}}
@media(max-width:520px){.page h1,.procedure-page>h1{font-size:35px;letter-spacing:-2px}}

/* v32: 출동지역 동네 그룹 토글 */
.area-group{display:flex;flex-direction:column;gap:8px}.area-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #dfe3e8;padding:13px 18px;border-radius:999px;font:inherit;font-weight:900;background:#fff;cursor:pointer;transition:.18s;box-shadow:0 2px 8px rgba(17,24,39,.03)}.area-group-toggle:hover,.area-group-toggle[aria-expanded="true"]{background:#111;color:#fff;border-color:#111;transform:translateY(-2px)}.area-group-toggle span{font-size:18px;line-height:1}.area-group-children{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 2px 12px}.area-group-children[hidden]{display:none}.area-group-children a{font-size:14px;padding:10px 14px}
@media(max-width:640px){.area-group-toggle{width:100%;border-radius:14px}.area-group-children{padding-left:0}.area-group-children a{flex:1 1 auto;text-align:center}}


/* v37: 상세페이지 H2 굵은선 통일 */
.page h2, .procedure-page h2, .service-detail h2, .region-detail-content h2, .content-box h2 {
  border-bottom: 4px solid #17181c;
  padding-bottom: 12px;
}
@media(max-width:700px){
  .page h2, .procedure-page h2, .service-detail h2, .region-detail-content h2, .content-box h2 {
    border-bottom-width: 4px;
    padding-bottom: 10px;
  }
}

/* v37: 푸터 섹션 제목 */
footer .foot-col h4 { color:#ff8a00; }
footer .foot-blog-title { color:#ff8a00; font-size:14px; font-weight:950; letter-spacing:.2px; margin:0 0 13px; }
footer .foot-sms { display:none !important; }
footer .foot { grid-template-columns:1.35fr repeat(3,1fr); }
@media(max-width:1100px){ footer .foot { grid-template-columns:1.2fr repeat(2,1fr); } }

/* v38: 상세페이지 제목 아래 설명문단 하단 굵은선 */
.page > h1 + .lead,
.procedure-page > h1 + .lead {
  border-bottom: 4px solid #17181c;
  padding-bottom: 18px;
  margin-bottom: 34px;
}
/* 기존 H2 선 제거 */
.page h2, .procedure-page h2, .service-detail h2, .region-detail-content h2, .content-box h2 {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* v38: 푸터 가독성 및 균형 개선 */
footer { padding: 52px 5% 24px; }
footer .foot {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.45fr 1fr 1fr 1fr;
  gap: 34px 46px;
  align-items: start;
}
footer .foot-col { min-width: 0; }
footer .foot-col:first-child { grid-column: span 2; }
footer .foot-col h3 {
  margin: 0 0 13px;
  font-size: 26px;
  line-height: 1.25;
  letter-spacing: -1.3px;
}
footer .foot-col h4,
footer .foot-blog-title {
  display: inline-block;
  margin: 0 0 13px;
  color: #ff8a00;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 950;
  letter-spacing: -.3px;
}
footer .foot-col p {
  margin: 0;
  color: #c1c7d0;
  font-size: 14px;
  line-height: 1.75;
}
footer .foot-links { gap: 7px; }
footer .foot-links a {
  display: block;
  color: #d0d5dd;
  font-size: 14px;
  line-height: 1.55;
  font-weight: 700;
  text-decoration: none;
}
footer .foot-links a:hover { color: #fff; }
footer .foot-phone {
  font-size: 19px;
  line-height: 1.5;
  margin-top: 3px;
  letter-spacing: -.4px;
}
footer .foot-business {
  margin-top: 20px;
  padding-top: 15px;
  font-size: 12.5px;
  line-height: 1.8;
}
footer .foot-bottom {
  max-width: 1240px;
  margin: 28px auto 0;
  padding-top: 17px;
  font-size: 11.5px;
}
@media(max-width:900px){
  footer .foot { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 30px 28px; }
  footer .foot-col:first-child { grid-column: span 2; }
}
@media(max-width:520px){
  footer { padding: 42px 6% 22px; }
  footer .foot { grid-template-columns: 1fr; gap: 26px; }
  footer .foot-col:first-child { grid-column: auto; }
  footer .foot-col h3 { font-size: 24px; }
  footer .foot-col h4, footer .foot-blog-title { font-size: 14px; }
  footer .foot-links a { font-size: 13.5px; }
  footer .foot-phone { font-size: 18px; }
  footer .foot-bottom { display:block; }
  footer .foot-bottom span { display:block; margin-top:5px; }
}

/* v39: reference-style footer layout */
footer{background:#17181c;color:#eee;padding:58px 5% 26px;margin-top:50px;border-top:1px solid #24262b}
footer .foot{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.35fr 1fr 1fr;column-gap:76px;row-gap:34px;align-items:start}
footer .foot-col{min-width:0}
footer .foot-col h3{margin:0 0 22px;font-size:29px;line-height:1.1;letter-spacing:-1.5px;font-weight:950;color:#fff}
footer .foot-col h3:first-letter{color:inherit}
footer .foot-col>p{margin:0;color:#bfc3ca;font-size:15px;line-height:1.75}
footer .foot-links{display:flex;flex-direction:column;gap:12px}
footer .foot-links a{color:#c7c9ce;font-size:15px;line-height:1.35;font-weight:650;letter-spacing:-.25px}
footer .foot-links a:hover{color:#fff}
footer .foot-col h4,footer .foot-blog-title{margin:0 0 16px;color:#ff8a00;font-size:16px;line-height:1.2;font-weight:950;letter-spacing:-.2px}
footer .foot-subheading{margin-top:38px!important}
footer .foot-phone{font-size:27px;line-height:1.2;font-weight:950;color:#ff8a00;display:block;margin-top:12px;letter-spacing:-.5px}
footer .foot-phone:hover{color:#fff}
footer .foot-business{margin-top:27px;padding-top:22px;border-top:1px solid #303238;color:#8f939b;font-size:13px;line-height:1.8}
footer .foot-business strong{color:#bfc2c8;font-weight:800}
footer .foot-bottom{max-width:1180px;margin:26px auto 0;padding-top:18px;border-top:1px solid #303238;color:#7e838c;font-size:12px;display:flex;justify-content:space-between;gap:20px}
footer .foot-sms,footer .foot-blog-title{display:none!important}
@media(max-width:900px){footer .foot{grid-template-columns:1fr 1fr;column-gap:42px}footer .foot-col:first-child{grid-column:1/-1}}
@media(max-width:600px){footer{padding:44px 6% 24px}footer .foot{grid-template-columns:1fr;gap:30px}footer .foot-col:first-child{grid-column:auto}footer .foot-col h3{font-size:26px}footer .foot-links a{font-size:14px}footer .foot-phone{font-size:22px}footer .foot-bottom{display:block}footer .foot-bottom span{display:block;margin-top:5px}}

/* v40: footer reference layout refinement */
footer .foot{
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  column-gap:72px;
  row-gap:48px;
  align-items:start;
}
footer .foot-col:first-child{grid-column:1 / span 2;}
footer .foot-col:nth-child(2){grid-column:3;}
footer .foot-col:nth-child(3){grid-column:1;}
footer .foot-col:nth-child(4){grid-column:2;}
footer .foot-col:nth-child(5){grid-column:3;}
footer .foot-col:nth-child(6){grid-column:1;}
footer .foot-col:nth-child(7){grid-column:2 / span 2;}
footer .foot-col h4{font-size:18px;margin-bottom:20px;color:#ff8a00;}
footer .foot-links{gap:14px;}
footer .foot-links a{font-size:16px;line-height:1.45;}
footer .foot-col>p{font-size:16px;line-height:1.9;}
footer .foot-business{margin-top:34px;padding-top:24px;font-size:14px;line-height:1.95;}
footer .foot-phone{font-size:31px;line-height:1.3;margin-top:8px;}
footer .foot-bottom{margin-top:12px;}
footer .foot-blog-title{display:none!important;}
@media(max-width:900px){
  footer .foot{grid-template-columns:1fr 1fr;column-gap:38px;row-gap:36px;}
  footer .foot-col:first-child{grid-column:1 / -1;}
  footer .foot-col:nth-child(2),footer .foot-col:nth-child(3),footer .foot-col:nth-child(4),footer .foot-col:nth-child(5),footer .foot-col:nth-child(6),footer .foot-col:nth-child(7){grid-column:auto;}
  footer .foot-col:nth-child(7){grid-column:1 / -1;}
}
@media(max-width:600px){
  footer .foot{grid-template-columns:1fr;gap:30px;}
  footer .foot-col:first-child,footer .foot-col:nth-child(2),footer .foot-col:nth-child(3),footer .foot-col:nth-child(4),footer .foot-col:nth-child(5),footer .foot-col:nth-child(6),footer .foot-col:nth-child(7){grid-column:auto;}
  footer .foot-col h4{font-size:17px;}
  footer .foot-links a{font-size:14px;}
  footer .foot-phone{font-size:24px;}
}

/* v41: footer layout locked to reference image */
footer.site-footer .foot{
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);
  column-gap:72px;
  row-gap:48px;
  align-items:start;
}
footer.site-footer .foot-col{min-width:0;grid-column:auto!important;grid-row:auto!important;}
footer.site-footer .foot-col:nth-child(1){grid-column:1 / span 2!important;grid-row:1!important;}
footer.site-footer .foot-col:nth-child(2){grid-column:3!important;grid-row:1!important;}
footer.site-footer .foot-col:nth-child(3){grid-column:1!important;grid-row:2!important;}
footer.site-footer .foot-col:nth-child(4){grid-column:2!important;grid-row:2!important;}
footer.site-footer .foot-col:nth-child(5){grid-column:3!important;grid-row:2!important;}
footer.site-footer .foot-col:nth-child(6){grid-column:1!important;grid-row:3!important;}
footer.site-footer .foot-col:nth-child(7){grid-column:2!important;grid-row:3!important;}
footer.site-footer .foot-col h4{font-size:18px;margin:0 0 20px;color:#ff8a00;line-height:1.2;}
footer.site-footer .foot-links{gap:14px;}
footer.site-footer .foot-links a{font-size:16px;line-height:1.45;}
footer.site-footer .foot-col>p{font-size:16px;line-height:1.9;}
footer.site-footer .foot-business{margin-top:34px;padding-top:24px;font-size:14px;line-height:1.95;}
footer.site-footer .foot-phone{font-size:31px;line-height:1.3;margin-top:8px;}
footer.site-footer .foot-blog-title{display:none!important;}
footer.site-footer .foot-bottom{margin-top:12px;}
@media(max-width:900px){
  footer.site-footer .foot{grid-template-columns:1fr 1fr;column-gap:38px;row-gap:36px;}
  footer.site-footer .foot-col:nth-child(n){grid-column:auto!important;grid-row:auto!important;}
  footer.site-footer .foot-col:first-child{grid-column:1/-1!important;}
  footer.site-footer .foot-col:nth-child(7){grid-column:1/-1!important;}
}
@media(max-width:600px){
  footer.site-footer .foot{grid-template-columns:1fr;gap:30px;}
  footer.site-footer .foot-col:nth-child(n),footer.site-footer .foot-col:first-child,footer.site-footer .foot-col:nth-child(7){grid-column:auto!important;grid-row:auto!important;}
  footer.site-footer .foot-col h4{font-size:17px;}
  footer.site-footer .foot-links a{font-size:14px;}
  footer.site-footer .foot-phone{font-size:22px;}
}

/* v42-final: footer rebuilt to the requested 3-column structure */
footer.site-footer{background:#17181c;color:#eee;padding:58px 5% 28px;margin-top:50px;border-top:1px solid #24262b}
footer.site-footer .foot{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr) minmax(0,1.08fr);column-gap:82px;align-items:start}
footer.site-footer .foot-brand,footer.site-footer .foot-services,footer.site-footer .foot-menu-area{min-width:0}
footer.site-footer .foot-brand h3{margin:0 0 26px;font-size:30px;line-height:1.1;letter-spacing:-1.5px;font-weight:950;color:#fff}
footer.site-footer .foot-brand>p{margin:0;color:#bfc3ca;font-size:16px;line-height:1.8;letter-spacing:-.35px}
footer.site-footer .foot-phones{margin-top:28px;display:flex;flex-direction:column;gap:5px}
footer.site-footer .foot-phones a{color:#ff8a00;font-size:30px;line-height:1.3;font-weight:950;letter-spacing:-.8px;text-decoration:none}
footer.site-footer .foot-phones a:hover{color:#fff}
footer.site-footer h4{margin:0 0 20px;color:#ff8a00;font-size:18px;line-height:1.2;font-weight:950;letter-spacing:-.2px}
footer.site-footer .foot-links{display:flex;flex-direction:column;gap:13px}
footer.site-footer .foot-links a{color:#c7c9ce;font-size:16px;line-height:1.4;font-weight:650;letter-spacing:-.3px;text-decoration:none}
footer.site-footer .foot-links a:hover{color:#fff}
footer.site-footer .foot-menu-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;row-gap:44px}
footer.site-footer .foot-menu-block{min-width:0}
footer.site-footer .foot-bottom{max-width:1180px;margin:54px auto 0;padding-top:22px;border-top:1px solid #303238;color:#8f939b;font-size:14px;line-height:1.9}
footer.site-footer .foot-bottom strong{color:#bfc2c8;font-weight:800}
footer.site-footer .foot-copy{margin-top:5px;color:#777c85}
footer.site-footer .foot-blog-title,footer.site-footer .foot-sms{display:none!important}
@media(max-width:900px){
  footer.site-footer .foot{grid-template-columns:1fr 1fr;column-gap:42px;row-gap:42px}
  footer.site-footer .foot-brand{grid-column:1/-1}
  footer.site-footer .foot-menu-area{grid-column:1/-1}
}
@media(max-width:600px){
  footer.site-footer{padding:44px 6% 24px}
  footer.site-footer .foot{grid-template-columns:1fr;gap:34px}
  footer.site-footer .foot-brand,footer.site-footer .foot-menu-area{grid-column:auto}
  footer.site-footer .foot-brand h3{font-size:27px}
  footer.site-footer .foot-brand>p{font-size:15px}
  footer.site-footer .foot-phones a{font-size:24px}
  footer.site-footer .foot-links a{font-size:14px}
  footer.site-footer .foot-menu-grid{grid-template-columns:1fr 1fr;column-gap:28px;row-gap:34px}
  footer.site-footer .foot-bottom{margin-top:38px;font-size:13px}
}

/* v45: isolated footer component - no legacy footer selectors are used */
#site-footer{width:100%;clear:both;position:relative;z-index:1;}
#site-footer .dt-footer,#site-footer .dt-footer *{box-sizing:border-box;}
#site-footer .dt-footer{
  width:100%;
  margin-top:50px;
  padding:58px 5% 112px;
  background:#17181c;
  color:#eee;
  border-top:1px solid #24262b;
  font-family:inherit;
}
#site-footer .dt-footer__inner{max-width:1300px;margin:0 auto;}
#site-footer .dt-footer__top{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr);
  column-gap:76px;
  align-items:start;
}
#site-footer .dt-footer__brand h3{
  margin:0 0 26px;color:#fff;font-size:30px;line-height:1.1;
  font-weight:950;letter-spacing:-1.5px;
}
#site-footer .dt-footer__brand p{
  margin:0;color:#bfc3ca;font-size:16px;line-height:1.8;letter-spacing:-.35px;
}
#site-footer .dt-footer__phones{
  margin-top:28px;display:flex;flex-direction:column;gap:5px;
}
#site-footer .dt-footer__phones a{
  color:#ff8a00;font-size:30px;line-height:1.3;font-weight:950;
  letter-spacing:-.8px;text-decoration:none;
}
#site-footer .dt-footer__phones a:hover{color:#fff;}
#site-footer .dt-footer h4{
  margin:0 0 20px;color:#ff8a00;font-size:18px;line-height:1.2;
  font-weight:950;letter-spacing:-.2px;
}
#site-footer .dt-footer__links{display:flex;flex-direction:column;gap:13px;}
#site-footer .dt-footer__links a{
  color:#c7c9ce;font-size:16px;line-height:1.4;font-weight:650;
  letter-spacing:-.3px;text-decoration:none;
}
#site-footer .dt-footer__links a:hover{color:#fff;}
#site-footer .dt-footer__menu-grid{
  display:grid;grid-template-columns:1fr 1fr;column-gap:54px;row-gap:44px;
}
#site-footer .dt-footer__menu-block{min-width:0;}
#site-footer .dt-footer__divider{height:1px;margin-top:54px;background:#303238;}
#site-footer .dt-footer__bottom{
  padding-top:20px;color:#8f939b;font-size:14px;line-height:1.8;
}
#site-footer .dt-footer__business{
  display:flex;flex-wrap:wrap;gap:8px 30px;
}
#site-footer .dt-footer__business span{white-space:nowrap;}
#site-footer .dt-footer__business strong{color:#bfc2c8;font-weight:800;}
#site-footer .dt-footer__copy{margin-top:5px;color:#777c85;font-size:12px;}

/* Floating consultation controls remain above page content, but footer reserves space for them. */
@media(max-width:900px){
  #site-footer .dt-footer__top{
    grid-template-columns:1fr 1fr;column-gap:42px;row-gap:42px;
  }
  #site-footer .dt-footer__brand{grid-column:1/-1;}
  #site-footer .dt-footer__menus{grid-column:1/-1;}
  #site-footer .dt-footer__business{gap:6px 20px;}
}
@media(max-width:600px){
  #site-footer .dt-footer{
    margin-top:40px;
    padding:42px 6% 128px;
  }
  #site-footer .dt-footer__inner{max-width:none;}
  #site-footer .dt-footer__top{
    grid-template-columns:1fr;
    gap:38px;
  }
  #site-footer .dt-footer__brand,#site-footer .dt-footer__menus{grid-column:auto;}
  #site-footer .dt-footer__brand h3{font-size:27px;margin-bottom:20px;}
  #site-footer .dt-footer__brand p{font-size:15px;line-height:1.75;}
  #site-footer .dt-footer__phones{margin-top:24px;gap:4px;}
  #site-footer .dt-footer__phones a{font-size:24px;}
  #site-footer .dt-footer h4{font-size:17px;margin-bottom:15px;}
  #site-footer .dt-footer__links{gap:10px;}
  #site-footer .dt-footer__links a{font-size:14px;line-height:1.45;}
  #site-footer .dt-footer__menu-grid{
    grid-template-columns:1fr;
    column-gap:0;
    row-gap:30px;
  }
  #site-footer .dt-footer__divider{margin-top:42px;}
  #site-footer .dt-footer__bottom{padding-top:18px;font-size:13px;}
  #site-footer .dt-footer__business{display:block;}
  #site-footer .dt-footer__business span{display:block;margin-bottom:6px;white-space:normal;}
  #site-footer .dt-footer__copy{font-size:11px;}
}

/* v46: footer final layout - isolated, full viewport width, fixed 3-column desktop */
#site-footer{
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  clear:both;
}
#site-footer .dt-footer{
  width:100% !important;
  max-width:none !important;
  margin:50px 0 0 !important;
  padding:72px 0 34px !important;
  background:#17181c !important;
  border-top:1px solid #24262b !important;
  color:#eee !important;
  overflow:hidden;
}
#site-footer .dt-footer__inner{
  width:calc(100% - 240px) !important;
  max-width:1360px !important;
  margin:0 auto !important;
}
#site-footer .dt-footer__top{
  display:grid !important;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr) !important;
  column-gap:72px !important;
  align-items:start !important;
}
#site-footer .dt-footer__brand,
#site-footer .dt-footer__services,
#site-footer .dt-footer__menus{min-width:0 !important;grid-column:auto !important;}
#site-footer .dt-footer__brand h3{
  margin:0 0 28px !important;font-size:31px !important;line-height:1.1 !important;
}
#site-footer .dt-footer__brand p{
  margin:0 !important;font-size:17px !important;line-height:1.8 !important;
}
#site-footer .dt-footer__phones{margin-top:28px !important;gap:5px !important;}
#site-footer .dt-footer__phones a{font-size:31px !important;line-height:1.3 !important;}
#site-footer .dt-footer__services h4,
#site-footer .dt-footer__menu-block h4{
  margin:0 0 20px !important;font-size:19px !important;line-height:1.2 !important;
}
#site-footer .dt-footer__links{gap:13px !important;}
#site-footer .dt-footer__links a{font-size:16px !important;line-height:1.45 !important;}
#site-footer .dt-footer__menu-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  column-gap:48px !important;
  row-gap:44px !important;
}
#site-footer .dt-footer__divider{margin-top:64px !important;background:#303238 !important;height:1px !important;}
#site-footer .dt-footer__bottom{padding-top:22px !important;font-size:14px !important;line-height:1.8 !important;}
#site-footer .dt-footer__business{display:flex !important;flex-wrap:wrap !important;gap:8px 30px !important;}
#site-footer .dt-footer__business span{white-space:nowrap !important;}
#site-footer .dt-footer__copy{font-size:12px !important;}

/* 작업절차 페이지의 H1 바로 아래 p 선 제거 */
.procedure-page > h1 + .lead{
  border-bottom:0 !important;
  padding-bottom:0 !important;
  margin-bottom:34px !important;
}

@media(max-width:900px){
  #site-footer .dt-footer__inner{width:calc(100% - 96px) !important;max-width:none !important;}
  #site-footer .dt-footer__top{grid-template-columns:1fr 1fr !important;column-gap:48px !important;row-gap:48px !important;}
  #site-footer .dt-footer__brand{grid-column:1 / -1 !important;}
  #site-footer .dt-footer__services{grid-column:1 / -1 !important;}
  #site-footer .dt-footer__menus{grid-column:1 / -1 !important;}
}
@media(max-width:600px){
  #site-footer .dt-footer{
    margin-top:40px !important;
    padding:48px 0 128px !important;
  }
  #site-footer .dt-footer__inner{
    width:calc(100% - 40px) !important;
    margin:0 20px !important;
  }
  #site-footer .dt-footer__top{
    grid-template-columns:1fr !important;
    gap:40px !important;
    text-align:left !important;
  }
  #site-footer .dt-footer__brand,
  #site-footer .dt-footer__services,
  #site-footer .dt-footer__menus{grid-column:auto !important;text-align:left !important;}
  #site-footer .dt-footer__menu-grid{
    grid-template-columns:1fr !important;
    column-gap:0 !important;
    row-gap:32px !important;
  }
  #site-footer .dt-footer__menu-block,
  #site-footer .dt-footer__menu-block h4,
  #site-footer .dt-footer__links{text-align:left !important;}
  #site-footer .dt-footer__brand h3{font-size:28px !important;margin-bottom:20px !important;}
  #site-footer .dt-footer__brand p{font-size:15px !important;line-height:1.8 !important;}
  #site-footer .dt-footer__phones{margin-top:24px !important;}
  #site-footer .dt-footer__phones a{font-size:24px !important;}
  #site-footer .dt-footer__services h4,
  #site-footer .dt-footer__menu-block h4{font-size:18px !important;margin-bottom:15px !important;}
  #site-footer .dt-footer__links{gap:10px !important;}
  #site-footer .dt-footer__links a{font-size:15px !important;}
  #site-footer .dt-footer__divider{margin-top:44px !important;}
  #site-footer .dt-footer__bottom{padding-top:18px !important;font-size:13px !important;text-align:left !important;}
  #site-footer .dt-footer__business{display:block !important;text-align:left !important;}
  #site-footer .dt-footer__business span{display:block !important;margin:0 0 6px !important;white-space:normal !important;}
}

/* v47: compact footer proportions - isolated component override */
#site-footer .dt-footer{
  margin-top:42px !important;
  padding:46px 0 26px !important;
}
#site-footer .dt-footer__top{
  column-gap:64px !important;
}
#site-footer .dt-footer__brand h3{
  margin-bottom:20px !important;
  font-size:27px !important;
}
#site-footer .dt-footer__brand p{
  font-size:15px !important;
  line-height:1.65 !important;
}
#site-footer .dt-footer__phones{
  margin-top:20px !important;
  gap:3px !important;
}
#site-footer .dt-footer__phones a{
  font-size:25px !important;
  line-height:1.25 !important;
}
#site-footer .dt-footer__services h4,
#site-footer .dt-footer__menu-block h4{
  margin-bottom:14px !important;
  font-size:17px !important;
}
#site-footer .dt-footer__links{
  gap:9px !important;
}
#site-footer .dt-footer__links a{
  font-size:15px !important;
  line-height:1.35 !important;
}
#site-footer .dt-footer__menu-grid{
  column-gap:40px !important;
  row-gap:30px !important;
}
#site-footer .dt-footer__divider{
  margin-top:38px !important;
}
#site-footer .dt-footer__bottom{
  padding-top:16px !important;
  font-size:13px !important;
  line-height:1.7 !important;
}
#site-footer .dt-footer__copy{font-size:11px !important;}

@media(max-width:900px){
  #site-footer .dt-footer__top{
    column-gap:36px !important;
    row-gap:34px !important;
  }
}
@media(max-width:600px){
  #site-footer .dt-footer{
    margin-top:34px !important;
    padding:34px 0 104px !important;
  }
  #site-footer .dt-footer__top{gap:26px !important;}
  #site-footer .dt-footer__brand h3{
    font-size:25px !important;
    margin-bottom:16px !important;
  }
  #site-footer .dt-footer__brand p{
    font-size:14px !important;
    line-height:1.7 !important;
  }
  #site-footer .dt-footer__phones{
    margin-top:18px !important;
    gap:2px !important;
  }
  #site-footer .dt-footer__phones a{font-size:22px !important;}
  #site-footer .dt-footer h4{
    font-size:16px !important;
    margin-bottom:12px !important;
  }
  #site-footer .dt-footer__links{gap:8px !important;}
  #site-footer .dt-footer__links a{
    font-size:14px !important;
    line-height:1.35 !important;
  }
  #site-footer .dt-footer__menu-grid{
    row-gap:24px !important;
  }
  #site-footer .dt-footer__divider{margin-top:32px !important;}
  #site-footer .dt-footer__bottom{
    padding-top:15px !important;
    font-size:12px !important;
  }
}


/* v49: region navigation and city/base links */
#site-footer .dt-footer__links a{display:block !important;}
.area-group-head{display:flex;align-items:center;gap:8px;}
.area-group-head .area-base-link{flex:1;}
.area-group-toggle{appearance:none;border:0;background:#f7f8fa;color:#555;border-radius:8px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;font-weight:900;}
.area-group-toggle[aria-expanded="true"]{background:#ff8a00;color:#111;}
.area-group-children{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 4px 18px;}
.area-child-link{display:block;padding:12px 14px;border:1px solid #e3e6eb;border-radius:10px;background:#fff;color:#333;text-decoration:none;font-weight:800;text-align:center;}
.area-child-link:hover{border-color:#ff8a00;background:#fffbea;}
@media(max-width:640px){
 .area-group-children{grid-template-columns:1fr 1fr;margin-left:0;gap:8px;}
 .area-child-link{padding:13px 8px;font-size:14px;}
 .area-group-head .area-base-link{padding:13px 0;}
}
/* v49: remove the procedure-page paragraph divider completely */
.procedure-page > h1 + .lead,
.procedure-page .lead{border-bottom:0 !important;box-shadow:none !important;background-image:none !important;}

/* v51: 출동지역 버튼 최종 정리 - 기존 스타일과 충돌하지 않도록 마지막 규칙으로 적용 */
.home-area-section .area-list .area-group,
.area-selector-section .area-list .area-group,
.city-area-list .area-group{width:100%;min-width:0;}
.home-area-section .area-group-head,
.area-selector-section .area-group-head,
.city-area-list .area-group-head{display:flex;align-items:center;gap:8px;width:100%;}
.home-area-section .area-group-head .area-base-link,
.area-selector-section .area-group-head .area-base-link,
.city-area-list .area-group-head .area-base-link{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;text-decoration:none;}
.home-area-section .area-group-toggle,
.area-selector-section .area-group-toggle,
.city-area-list .area-group-toggle{flex:0 0 42px;width:42px;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dfe3e8;border-radius:12px;background:#fff;color:#222;box-shadow:0 2px 8px rgba(17,24,39,.05);}
.home-area-section .area-group-toggle:hover,
.area-selector-section .area-group-toggle:hover,
.city-area-list .area-group-toggle:hover{background:#ff8a00!important;color:#111!important;border-color:#ff8a00!important;transform:translateY(-1px);}
.home-area-section .area-group-toggle[aria-expanded="true"],
.area-selector-section .area-group-toggle[aria-expanded="true"],
.city-area-list .area-group-toggle[aria-expanded="true"]{background:#ff8a00!important;color:#111!important;border-color:#ff8a00!important;}
.home-area-section .area-group-children,
.area-selector-section .area-group-children,
.city-area-list .area-group-children{margin-top:8px;}
.home-area-section .area-list>a,
.home-area-section .area-base-link,
.area-selector-section .area-list>a,
.area-selector-section .area-base-link,
.city-area-list .area-list>a,
.city-area-list .area-base-link{transition:background .18s,color .18s,border-color .18s,transform .18s;}
.home-area-section .area-list>a:hover,
.home-area-section .area-base-link:hover,
.area-selector-section .area-list>a:hover,
.area-selector-section .area-base-link:hover,
.city-area-list .area-list>a:hover,
.city-area-list .area-base-link:hover{background:#111!important;color:#fff!important;border-color:#111!important;}
/* 모바일 푸터: 다뚜러 제목과 동일한 왼쪽 기준선으로 모든 메뉴 정렬 */
@media(max-width:600px){
  #site-footer .dt-footer{width:100%!important;box-sizing:border-box!important;padding:36px 20px 22px!important;}
  #site-footer .dt-footer__inner{width:100%!important;max-width:none!important;margin:0!important;}
  #site-footer .dt-footer__top{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:28px!important;width:100%!important;}
  #site-footer .dt-footer__brand,
  #site-footer .dt-footer__services,
  #site-footer .dt-footer__menus,
  #site-footer .dt-footer__menu-grid,
  #site-footer .dt-footer__menu-block{width:100%!important;margin:0!important;padding:0!important;text-align:left!important;align-items:flex-start!important;justify-items:start!important;}
  #site-footer .dt-footer__brand h3,
  #site-footer .dt-footer__brand p,
  #site-footer .dt-footer__services h4,
  #site-footer .dt-footer__menu-block h4,
  #site-footer .dt-footer__links,
  #site-footer .dt-footer__links a,
  #site-footer .dt-footer__phones{margin-left:0!important;text-align:left!important;}
  #site-footer .dt-footer__menu-grid{display:flex!important;flex-direction:column!important;gap:26px!important;}
  #site-footer .dt-footer__links{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;}
  #site-footer .dt-footer__links a{display:block!important;width:auto!important;}
  #site-footer .dt-footer__business{text-align:left!important;align-items:flex-start!important;}
}


/* v52: 출동지역 버튼 디자인 전면 정리 */
.area-list{align-items:center;}
.area-list > a,
.area-list .area-base-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:46px !important;
  padding:11px 18px !important;
  border:1px solid #dfe3e8 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#20242a !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  box-shadow:0 2px 8px rgba(17,24,39,.045) !important;
  transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s !important;
}
.area-list > a:hover,
.area-list .area-base-link:hover{
  background:#17181c !important;
  color:#fff !important;
  border-color:#17181c !important;
  transform:translateY(-1px) !important;
  box-shadow:0 5px 14px rgba(17,24,39,.12) !important;
}
.area-list .area-group{
  display:flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:7px !important;
}
.area-list .area-group-head{
  display:flex !important;
  width:auto !important;
  align-items:center !important;
  gap:6px !important;
}
.area-list .area-group-head .area-base-link{
  flex:0 1 auto !important;
  min-width:96px !important;
  width:auto !important;
}
.area-list .area-group-toggle{
  flex:0 0 42px !important;
  width:42px !important;
  height:46px !important;
  padding:0 !important;
  border:1px solid #dfe3e8 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#20242a !important;
  font-size:20px !important;
  line-height:1 !important;
  box-shadow:0 2px 8px rgba(17,24,39,.045) !important;
}
.area-list .area-group-toggle:hover,
.area-list .area-group-toggle[aria-expanded="true"]{
  background:#ff8a00 !important;
  color:#111 !important;
  border-color:#ff8a00 !important;
  transform:translateY(-1px) !important;
}
.area-list .area-group-children{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  margin:0 !important;
  padding:0 !important;
}
.area-list .area-group-children[hidden]{display:none !important;}
.area-list .area-child-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:40px !important;
  padding:9px 13px !important;
  border:1px solid #e5e7eb !important;
  border-radius:12px !important;
  background:#fafbfc !important;
  color:#3a3f46 !important;
  font-size:14px !important;
  font-weight:850 !important;
  text-decoration:none !important;
  box-shadow:none !important;
}
.area-list .area-child-link:hover{
  background:#fff8d8 !important;
  color:#17181c !important;
  border-color:#ff8a00 !important;
}
.home-area-section .home-area-panel .area-list,
.area-selector-section .area-panel .area-list,
.city-area-list{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:12px !important;
}
.home-area-section .home-area-panel .area-list .area-group,
.area-selector-section .area-panel .area-list .area-group,
.city-area-list .area-group{margin:0 !important;}

/* v52: 모바일/태블릿 푸터도 다뚜러 제목과 동일한 왼쪽 기준선 */
@media(max-width:900px){
  #site-footer{width:100% !important;margin-left:0 !important;margin-right:0 !important;}
  #site-footer .dt-footer{width:100% !important;padding:38px 20px 112px !important;margin-top:34px !important;}
  #site-footer .dt-footer__inner{width:100% !important;max-width:none !important;margin:0 !important;}
  #site-footer .dt-footer__top{display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:30px !important;width:100% !important;}
  #site-footer .dt-footer__brand,
  #site-footer .dt-footer__services,
  #site-footer .dt-footer__menus,
  #site-footer .dt-footer__menu-grid,
  #site-footer .dt-footer__menu-block{width:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;grid-column:auto !important;text-align:left !important;align-items:flex-start !important;justify-items:start !important;}
  #site-footer .dt-footer__menu-grid{display:flex !important;flex-direction:column !important;gap:25px !important;}
  #site-footer .dt-footer__brand h3,
  #site-footer .dt-footer__brand p,
  #site-footer .dt-footer__services h4,
  #site-footer .dt-footer__menu-block h4,
  #site-footer .dt-footer__links,
  #site-footer .dt-footer__links a,
  #site-footer .dt-footer__phones{margin-left:0 !important;text-align:left !important;}
  #site-footer .dt-footer__links{display:flex !important;flex-direction:column !important;align-items:flex-start !important;gap:8px !important;width:100% !important;}
  #site-footer .dt-footer__links a{display:block !important;width:auto !important;max-width:100% !important;}
  #site-footer .dt-footer__business{display:block !important;text-align:left !important;}
  #site-footer .dt-footer__business span{display:block !important;margin:0 0 6px !important;white-space:normal !important;text-align:left !important;}
}
@media(max-width:520px){
  #site-footer .dt-footer{padding:32px 18px 108px !important;}
  #site-footer .dt-footer__top{gap:27px !important;}
  #site-footer .dt-footer__brand h3{font-size:25px !important;}
  #site-footer .dt-footer__brand p{font-size:14px !important;line-height:1.7 !important;}
  #site-footer .dt-footer__phones a{font-size:22px !important;}
}


/* v53 FINAL OVERRIDES: footer + service-area controls */
/* Keep this block last so legacy footer/area rules cannot change the final layout. */
#site-footer,
#site-footer *{box-sizing:border-box;}
#site-footer{
  display:block !important;
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:0 !important;
  clear:both !important;
  overflow:visible !important;
}
#site-footer .dt-footer{
  width:100% !important;
  max-width:none !important;
  margin:42px 0 0 !important;
  padding:62px 0 28px !important;
  background:#17181c !important;
  color:#f5f5f5 !important;
  border-top:1px solid #24262b !important;
  border-radius:0 !important;
}
#site-footer .dt-footer__inner{
  width:calc(100% - 80px) !important;
  max-width:1480px !important;
  margin:0 auto !important;
  padding:0 !important;
}
#site-footer .dt-footer__top{
  display:grid !important;
  grid-template-columns:minmax(0,1.18fr) minmax(0,.92fr) minmax(0,1.08fr) !important;
  column-gap:82px !important;
  align-items:start !important;
  width:100% !important;
  margin:0 !important;
}
#site-footer .dt-footer__brand,
#site-footer .dt-footer__services,
#site-footer .dt-footer__menus{
  width:auto !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  grid-column:auto !important;
  text-align:left !important;
}
#site-footer .dt-footer__brand h3{
  margin:0 0 25px !important;
  font-size:30px !important;
  line-height:1.15 !important;
  font-weight:950 !important;
  color:#fff !important;
}
#site-footer .dt-footer__brand p{
  margin:0 !important;
  font-size:16px !important;
  line-height:1.72 !important;
  color:#bfc3ca !important;
  text-align:left !important;
}
#site-footer .dt-footer__phones{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:4px !important;
  margin:25px 0 0 !important;
  padding:0 !important;
}
#site-footer .dt-footer__phones a{
  display:block !important;
  margin:0 !important;
  color:#ff8a00 !important;
  font-size:30px !important;
  line-height:1.28 !important;
  font-weight:950 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
#site-footer .dt-footer__phones a:hover{color:#fff !important;}
#site-footer .dt-footer h4{
  margin:0 0 17px !important;
  color:#ff8a00 !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:950 !important;
  text-align:left !important;
}
#site-footer .dt-footer__links{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:11px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
#site-footer .dt-footer__links a{
  display:block !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  color:#c7c9ce !important;
  font-size:15px !important;
  line-height:1.45 !important;
  font-weight:650 !important;
  letter-spacing:-.25px !important;
  text-decoration:none !important;
  text-align:left !important;
}
#site-footer .dt-footer__links a:hover{color:#fff !important;}
#site-footer .dt-footer__menu-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  column-gap:56px !important;
  row-gap:42px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
#site-footer .dt-footer__menu-block{
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
#site-footer .dt-footer__divider{
  width:100% !important;
  height:1px !important;
  margin:58px 0 0 !important;
  padding:0 !important;
  background:#303238 !important;
}
#site-footer .dt-footer__bottom{
  width:100% !important;
  margin:0 !important;
  padding:20px 0 0 !important;
  color:#8f939b !important;
  font-size:13px !important;
  line-height:1.8 !important;
  text-align:left !important;
}
#site-footer .dt-footer__business{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:5px 34px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
#site-footer .dt-footer__business span{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
  text-align:left !important;
}
#site-footer .dt-footer__business strong{color:#bfc2c8 !important;font-weight:800 !important;}
#site-footer .dt-footer__copy{margin:5px 0 0 !important;color:#777c85 !important;font-size:12px !important;text-align:left !important;}

/* Region buttons: one clean component, with the +/- button directly beside its district. */
.home-area-section .home-area-panel .area-list,
.area-selector-section .area-panel .area-list,
.city-area-list{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:10px !important;
  width:100% !important;
}
.home-area-section .home-area-panel .area-list > a,
.area-selector-section .area-panel .area-list > a,
.city-area-list > a,
.home-area-section .home-area-panel .area-base-link,
.area-selector-section .area-panel .area-base-link,
.city-area-list .area-base-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:88px !important;
  min-height:48px !important;
  padding:10px 18px !important;
  margin:0 !important;
  border:1px solid #dfe3e8 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#20242a !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  box-shadow:0 2px 8px rgba(17,24,39,.045) !important;
  transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s !important;
}
.home-area-section .home-area-panel .area-list > a:hover,
.area-selector-section .area-panel .area-list > a:hover,
.city-area-list > a:hover,
.home-area-section .home-area-panel .area-base-link:hover,
.area-selector-section .area-panel .area-base-link:hover,
.city-area-list .area-base-link:hover{
  background:#17181c !important;
  color:#fff !important;
  border-color:#17181c !important;
  transform:translateY(-1px) !important;
}
.home-area-section .area-group,
.area-selector-section .area-group,
.city-area-list .area-group{
  display:flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:7px !important;
}
.home-area-section .area-group-head,
.area-selector-section .area-group-head,
.city-area-list .area-group-head{
  display:flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:4px !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
}
.home-area-section .area-group-head .area-base-link,
.area-selector-section .area-group-head .area-base-link,
.city-area-list .area-group-head .area-base-link{
  flex:0 0 auto !important;
  min-width:88px !important;
  width:auto !important;
}
.home-area-section .area-group-toggle,
.area-selector-section .area-group-toggle,
.city-area-list .area-group-toggle{
  display:inline-flex !important;
  flex:0 0 48px !important;
  align-items:center !important;
  justify-content:center !important;
  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid #dfe3e8 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#20242a !important;
  font:inherit !important;
  font-size:20px !important;
  font-weight:900 !important;
  line-height:1 !important;
  cursor:pointer !important;
  box-shadow:0 2px 8px rgba(17,24,39,.045) !important;
  transition:background .18s,color .18s,border-color .18s,transform .18s !important;
}
.home-area-section .area-group-toggle:hover,
.area-selector-section .area-group-toggle:hover,
.city-area-list .area-group-toggle:hover,
.home-area-section .area-group-toggle[aria-expanded="true"],
.area-selector-section .area-group-toggle[aria-expanded="true"],
.city-area-list .area-group-toggle[aria-expanded="true"]{
  background:#ff8a00 !important;
  color:#111 !important;
  border-color:#ff8a00 !important;
  transform:translateY(-1px) !important;
}
.home-area-section .area-group-children,
.area-selector-section .area-group-children,
.city-area-list .area-group-children{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:7px !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
}
.home-area-section .area-group-children[hidden],
.area-selector-section .area-group-children[hidden],
.city-area-list .area-group-children[hidden]{display:none !important;}
.home-area-section .area-group-children a,
.area-selector-section .area-group-children a,
.city-area-list .area-group-children a,
.home-area-section .area-group-children .area-child-link,
.area-selector-section .area-group-children .area-child-link,
.city-area-list .area-group-children .area-child-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px !important;
  min-width:82px !important;
  padding:9px 14px !important;
  margin:0 !important;
  border:1px solid #dfe3e8 !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#20242a !important;
  font-size:14px !important;
  font-weight:850 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  box-shadow:0 2px 7px rgba(17,24,39,.035) !important;
  transition:background .18s,color .18s,border-color .18s,transform .18s !important;
}
.home-area-section .area-group-children a:hover,
.area-selector-section .area-group-children a:hover,
.city-area-list .area-group-children a:hover,
.home-area-section .area-group-children .area-child-link:hover,
.area-selector-section .area-group-children .area-child-link:hover,
.city-area-list .area-group-children .area-child-link:hover{
  background:#17181c !important;
  color:#fff !important;
  border-color:#17181c !important;
  transform:translateY(-1px) !important;
}

@media (max-width:1100px){
  #site-footer .dt-footer__inner{width:calc(100% - 56px) !important;}
  #site-footer .dt-footer__top{column-gap:48px !important;}
  #site-footer .dt-footer__brand h3{font-size:28px !important;}
  #site-footer .dt-footer__phones a{font-size:27px !important;}
}
@media (max-width:900px){
  #site-footer .dt-footer{padding:48px 0 112px !important;margin-top:34px !important;}
  #site-footer .dt-footer__inner{width:calc(100% - 40px) !important;max-width:none !important;}
  #site-footer .dt-footer__top{display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:34px !important;}
  #site-footer .dt-footer__brand,
  #site-footer .dt-footer__services,
  #site-footer .dt-footer__menus{width:100% !important;text-align:left !important;}
  #site-footer .dt-footer__menu-grid{display:flex !important;flex-direction:column !important;gap:28px !important;}
  #site-footer .dt-footer__brand h3{font-size:28px !important;margin-bottom:20px !important;}
  #site-footer .dt-footer__brand p{font-size:15px !important;line-height:1.75 !important;}
  #site-footer .dt-footer__phones{margin-top:22px !important;}
  #site-footer .dt-footer__phones a{font-size:24px !important;}
  #site-footer .dt-footer h4{font-size:18px !important;margin-bottom:14px !important;}
  #site-footer .dt-footer__links{gap:9px !important;}
  #site-footer .dt-footer__links a{font-size:15px !important;}
  #site-footer .dt-footer__divider{margin-top:42px !important;}
  #site-footer .dt-footer__bottom{padding-top:18px !important;font-size:13px !important;}
  #site-footer .dt-footer__business{display:block !important;}
  #site-footer .dt-footer__business span{display:block !important;margin:0 0 6px !important;white-space:normal !important;}
  #site-footer .dt-footer__copy{font-size:11px !important;}
}
@media (max-width:600px){
  #site-footer .dt-footer{padding:40px 0 110px !important;}
  #site-footer .dt-footer__inner{width:calc(100% - 36px) !important;margin:0 18px !important;}
  #site-footer .dt-footer__top{gap:30px !important;}
  #site-footer .dt-footer__brand h3{font-size:26px !important;}
  #site-footer .dt-footer__brand p{font-size:14px !important;}
  #site-footer .dt-footer__phones a{font-size:23px !important;}
}


/* v54 footer business info: always vertical */
#site-footer .dt-footer__bottom .dt-footer__business{display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:flex-start !important;gap:6px !important;width:100% !important;}
#site-footer .dt-footer__bottom .dt-footer__business span{display:block !important;width:auto !important;white-space:normal !important;margin:0 !important;}
/* =========================================================
   DATTULER HERO v60
   PC: copy 52% / card 48%
   Mobile: photo -> symptoms card
   ========================================================= */
.hero{
  min-height:720px;
  padding:78px 5.5% 86px;
  background:#f7f7f4;
  position:relative;
  overflow:hidden;
}
.hero-in{
  width:100%;
  max-width:1380px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(520px,.95fr);
  gap:54px;
  align-items:center;
}
.hero-copy{min-width:0;padding-right:10px}
.hero-copy .eyebrow{
  display:inline-flex;
  align-items:center;
  padding:9px 14px;
  border:1px solid #17191d;
  background:#fff;
  color:#17191d;
  font-size:14px;
  font-weight:800;
  letter-spacing:-.5px;
}
.hero-copy h1{
  margin:20px 0 23px;
  color:#17191d;
  font-size:clamp(48px,5.1vw,78px);
  line-height:1.04;
  letter-spacing:-5px;
  font-weight:950;
}
.hero-copy h1 span{
  position:relative;
  display:inline-block;
  z-index:0;
}
.hero-copy h1 span::after{
  content:"";
  position:absolute;
  left:-3px;
  right:-3px;
  bottom:3px;
  height:16px;
  background:#ff8a00;
  z-index:-1;
}
.hero-copy p{
  max-width:690px;
  margin:0;
  color:#5d626a;
  font-size:18px;
  line-height:1.8;
  letter-spacing:-.5px;
}
.hero-contact-buttons{margin-top:30px;display:flex;gap:12px}
.hero-contact-buttons .btn{
  min-width:150px;
  text-align:center;
  font-weight:900;
}

/* 오른쪽 카드: PC에서 화면의 거의 절반 */
.hero-card{
  width:100%;
  min-width:0;
  background:#fff;
  border:1px solid #202226;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 18px 45px rgba(20,22,25,.12);
}
.hero-slider{
  position:relative;
  width:100%;
  height:405px;
  overflow:hidden;
  background:#17191d;
}
.hero-slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transition:opacity .65s ease;
  z-index:1;
}
.hero-slide.is-active{
  opacity:1;
  visibility:visible;
  z-index:2;
}
.hero-slide img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}
.hero-caption{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:4;
  padding:17px 23px 21px;
  color:#fff;
  background:linear-gradient(transparent,rgba(0,0,0,.78));
  display:flex;
  flex-direction:column;
  gap:4px;
}
.hero-caption span{
  color:#ff8a00;
  font-size:13px;
  font-weight:800;
}
.hero-caption strong{
  font-size:21px;
  line-height:1.3;
  letter-spacing:-1px;
}
.hero-dots{
  position:absolute;
  right:20px;
  bottom:20px;
  z-index:5;
  display:flex;
  gap:8px;
}
.hero-dot{
  width:10px;
  height:10px;
  padding:0;
  border:1px solid #fff;
  border-radius:50%;
  background:rgba(255,255,255,.45);
  cursor:pointer;
}
.hero-dot.is-active{background:#ff8a00;border-color:#ff8a00}

/* 증상 영역은 기존 사이트와 어울리게 흰색 + 노란 포인트 */
.hero-symptoms{background:#fff}
.symptom-heading{
  padding:24px 27px 18px;
  border-bottom:1px solid #ececec;
}
.symptom-heading span{
  display:block;
  margin-bottom:5px;
  color:#8a8f96;
  font-size:12px;
  font-weight:900;
  letter-spacing:1px;
}
.symptom-heading h2{
  margin:0;
  color:#17191d;
  font-size:25px;
  line-height:1.3;
  letter-spacing:-1.2px;
  font-weight:950;
}
.hero-symptoms ul{
  list-style:none;
  margin:0;
  padding:7px 27px 8px;
}
.hero-symptoms li{
  position:relative;
  padding:17px 0 17px 37px;
  border-bottom:1px dashed #ddd;
  color:#24272c;
  font-size:16px;
  font-weight:800;
  line-height:1.45;
  letter-spacing:-.5px;
}
.hero-symptoms li:last-child{border-bottom:0}
.hero-symptoms li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:15px;
  width:24px;
  height:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#ff8a00;
  color:#17191d;
  border-radius:6px;
  font-size:15px;
  font-weight:950;
}
.hero-symptoms > p{
  margin:0;
  padding:17px 27px 20px;
  background:#fff1df;
  border-top:1px solid #ffd9b8;
  color:#60636a;
  font-size:14px;
  line-height:1.65;
}
.hero-symptoms > p b{color:#17191d}

/* tablet */
@media(max-width:1050px) and (min-width:801px){
  .hero{padding-left:4%;padding-right:4%}
  .hero-in{grid-template-columns:minmax(0,1fr) minmax(440px,.9fr);gap:30px}
  .hero-slider{height:370px}
  .hero-copy h1{font-size:52px;letter-spacing:-3px}
}

/* mobile: 기존 PC 스타일이 겹치지 않도록 hero 전용 규칙을 강하게 고정 */
@media(max-width:800px){
  .hero{
    display:block!important;
    min-height:0!important;
    height:auto!important;
    padding:12px 14px 48px!important;
    background:#f7f7f4!important;
  }
  .hero-in{
    display:block!important;
    width:100%!important;
    max-width:none!important;
  }
  .hero-copy{display:none!important}
  .hero-card{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    border:1px solid #202226!important;
    border-radius:14px!important;
    box-shadow:0 8px 22px rgba(20,22,25,.10)!important;
    overflow:hidden!important;
  }
  .hero-slider{
    display:block!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:1.58/1!important;
    min-height:0!important;
    border:0!important;
    overflow:hidden!important;
  }
  .hero-slide,.hero-slide.is-active{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }
  .hero-slide img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  .hero-caption{
    padding:13px 15px 15px!important;
  }
  .hero-caption span{font-size:11px!important}
  .hero-caption strong{font-size:16px!important}
  .hero-dots{
    left:auto!important;
    right:15px!important;
    bottom:15px!important;
    transform:none!important;
  }
  .hero-symptoms{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }
  .symptom-heading{
    display:block!important;
    padding:18px 17px 14px!important;
    background:#fff!important;
  }
  .symptom-heading span{
    margin-bottom:4px!important;
    font-size:10px!important;
  }
  .symptom-heading h2{
    font-size:20px!important;
    line-height:1.35!important;
  }
  .hero-symptoms ul{
    display:block!important;
    list-style:none!important;
    margin:0!important;
    padding:3px 17px 4px!important;
  }
  .hero-symptoms li{
    display:block!important;
    position:relative!important;
    min-height:0!important;
    padding:15px 0 15px 34px!important;
    margin:0!important;
    border-bottom:1px dashed #dedede!important;
    color:#24272c!important;
    background:#fff!important;
    font-size:14px!important;
    line-height:1.45!important;
    font-weight:800!important;
  }
  .hero-symptoms li::before{
    content:"✓"!important;
    position:absolute!important;
    left:0!important;
    top:13px!important;
    width:23px!important;
    height:23px!important;
    padding:0!important;
    margin:0!important;
    background:#ff8a00!important;
    border-radius:5px!important;
    color:#17191d!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .hero-symptoms > p{
    display:block!important;
    margin:0!important;
    padding:15px 17px 18px!important;
    background:#fff1df!important;
    border-top:1px solid #ffd9b8!important;
    color:#60636a!important;
    font-size:12px!important;
    line-height:1.6!important;
  }
}

@media(max-width:520px){
  .hero{padding-left:10px!important;padding-right:10px!important}
  .hero-slider{aspect-ratio:1.5/1!important}
  .hero-caption strong{font-size:14px!important}
  .hero-symptoms li{font-size:13.5px!important}
}


/* ===== DATTULER HERO FINAL ORANGE OVERRIDE ===== */
:root {
  --dattuler-orange:#ff8a00;
  --dattuler-orange-light:#fff1df;
}
.hero-card {
  width:100%;
}
.hero-slider {
  height:425px;
}
.hero-dot.is-active {
  background:var(--dattuler-orange)!important;
  border-color:var(--dattuler-orange)!important;
}
.hero-copy h1 span::after {
  background:var(--dattuler-orange)!important;
}
.hero-symptoms li::before {
  background:var(--dattuler-orange)!important;
}
.hero-symptoms > p {
  background:var(--dattuler-orange-light)!important;
  border-top-color:#f2d5b0!important;
}
@media (min-width:1101px) {
  .hero {
    padding-left:4%!important;
    padding-right:4%!important;
  }
  .hero-in {
    max-width:1500px!important;
    grid-template-columns:minmax(0,1fr) minmax(620px,1.08fr)!important;
    gap:48px!important;
  }
}
@media (min-width:801px) and (max-width:1100px) {
  .hero-in {
    grid-template-columns:minmax(0,1fr) minmax(540px,1fr)!important;
  }
  .hero-slider {
    height:410px!important;
  }
}
@media (max-width:800px) {
  .hero {
    padding:12px 10px 48px!important;
  }
  .hero-card {
    width:100%!important;
    background:#fff!important;
    opacity:1!important;
  }
  .hero-symptoms {
    background:#fff!important;
    opacity:1!important;
    filter:none!important;
  }
  .symptom-heading {
    background:#fff!important;
    opacity:1!important;
    filter:none!important;
    color:#17191d!important;
  }
  .symptom-heading h2 {
    background:transparent!important;
    color:#17191d!important;
    opacity:1!important;
    filter:none!important;
    text-shadow:none!important;
  }
  .symptom-heading span {
    background:transparent!important;
    color:#8a8f96!important;
    opacity:1!important;
    filter:none!important;
  }
  .hero-symptoms ul {
    background:#fff!important;
    opacity:1!important;
    filter:none!important;
  }
  .hero-symptoms li {
    background:#fff!important;
    color:#24272c!important;
    opacity:1!important;
    filter:none!important;
    text-shadow:none!important;
  }
  .hero-symptoms li::before {
    background:var(--dattuler-orange)!important;
  }
  .hero-symptoms > p {
    background:var(--dattuler-orange-light)!important;
    color:#60636a!important;
    opacity:1!important;
    filter:none!important;
    text-shadow:none!important;
  }
  .hero-slider {
    height:auto!important;
    aspect-ratio:1.5/1!important;
  }
}

/* ===== DATTULER FINAL DETAIL / ORANGE SYSTEM ===== */
:root{--dattuler-orange:#ff8a00;--dattuler-orange-light:#fff1df}
/* 모바일 증상 카드: 흐림/반투명/배경 레이어를 완전히 제거 */
@media(max-width:800px){
  .hero-symptoms,.hero-symptoms::before,.hero-symptoms::after,
  .symptom-heading,.symptom-heading::before,.symptom-heading::after,
  .hero-symptoms > p,.hero-symptoms > p::before,.hero-symptoms > p::after{
    background:#fff!important;background-image:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    filter:none!important;opacity:1!important;mix-blend-mode:normal!important;text-shadow:none!important;
  }
  .hero-symptoms > p{background:transparent!important;border-top:1px solid #e6e6e6!important}
}
/* Footer */
#site-footer .dt-footer__phones a,#site-footer .dt-footer h4{color:var(--dattuler-orange)!important}
#site-footer .dt-footer__phones a:hover,#site-footer .dt-footer h4:hover{color:#fff!important}
/* 모든 영어 섹션 라벨 */
.label,.eyebrow,.badge,.case-kicker{color:var(--dattuler-orange)!important}
/* 작업사례 카드의 동네/지역 태그 */
.case-meta span,.case-card .meta span{background:var(--dattuler-orange-light)!important;color:#b85e00!important;border-color:#ffb35a!important}
.case-meta span:hover,.case-card .meta span:hover{background:var(--dattuler-orange)!important;color:#111!important}
/* 지역 선택/동네 버튼도 주황 계열 */
.area-special,.area-city-btn,.home-area-main,.home-area-special,.home-area-city,.area-group-toggle{border-color:#ffb35a!important}
.area-special.active,.area-city-btn.active,.home-area-main.active,.home-area-special.active,.home-area-city.active,
.area-special:hover,.area-city-btn:hover,.home-area-main:hover,.home-area-special:hover,.home-area-city:hover,.area-group-toggle:hover,.area-group-toggle[aria-expanded="true"]{background:var(--dattuler-orange)!important;border-color:var(--dattuler-orange)!important;color:#111!important}

/* 현장사례 상세페이지 */
.case-detail-page{max-width:1180px}
.case-detail-head{padding:18px 0 34px}
.case-detail-head h1{max-width:980px;margin:12px 0 16px;font-size:clamp(38px,5vw,64px);line-height:1.13;letter-spacing:-3.2px;font-weight:950}
.case-detail-head .lead{max-width:900px}
.case-detail-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.case-detail-meta span{padding:7px 12px;border:1px solid #e4e7eb;border-radius:999px;background:#fff;color:#59616b;font-size:13px;font-weight:850}
.case-detail-meta span:first-child{background:var(--dattuler-orange-light);border-color:#ffb35a;color:#b85e00}
.case-detail-image{margin:0 0 52px;padding:0;border-radius:20px;overflow:hidden;background:#f3f4f6;box-shadow:0 12px 35px rgba(17,24,39,.08)}
.case-detail-image img{display:block;width:100%;max-height:680px;object-fit:cover}
.case-detail-image figcaption{padding:10px 18px;font-size:12px;color:#777;background:#fff}
.case-detail-section{padding:56px 0 0}
.case-summary{padding-top:0}
.case-summary-grid{display:grid;grid-template-columns:1.5fr .85fr;gap:20px}
.case-summary-grid>div{padding:32px;border:1px solid #e4e7eb;border-radius:18px;background:#fff}
.case-summary-grid h2{margin:7px 0 14px;font-size:29px;letter-spacing:-1.8px}
.case-summary-grid p,.case-detail-copy p,.case-result p{margin:0;color:#616a75;line-height:1.9;font-size:16px}
.case-summary-point{background:linear-gradient(180deg,#fff4e8,#fff)!important;border-top:4px solid var(--dattuler-orange)!important}
.case-summary-point strong{display:block;font-size:24px;letter-spacing:-1px;margin:8px 0 10px;color:#17191d}
.case-kicker{display:block;font-size:12px;font-weight:950;letter-spacing:1px}
.case-work-list{list-style:none;margin:20px 0 0;padding:0;border-top:2px solid #17191d}
.case-work-list li{display:flex;align-items:flex-start;gap:15px;padding:20px 8px;border-bottom:1px solid #e5e7eb;font-size:18px;font-weight:800;line-height:1.55}
.case-work-list li span{flex:0 0 28px;width:28px;height:28px;display:grid;place-items:center;border-radius:6px;background:var(--dattuler-orange);color:#111;font-size:16px}
.case-result{padding:38px 32px;margin-top:56px;border-radius:18px;background:#fff4e8;border:1px solid #ffd1a0}
.case-result .title{margin-bottom:10px}
.case-detail-cta{margin-top:62px;padding:34px 36px;border-radius:18px;background:#17181c;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}
.case-detail-cta h2{margin:6px 0 8px;color:#fff;font-size:30px;letter-spacing:-1.5px}
.case-detail-cta p{margin:0;color:#c9cdd3;line-height:1.7}
.case-detail-cta .label{color:var(--dattuler-orange)!important}
.case-detail-cta-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:330px}
.case-detail-cta-buttons .phone{background:var(--dattuler-orange)!important;color:#111!important}
.case-detail-cta-buttons .sms{background:#fff!important;color:#111!important}
.case-related{padding-bottom:20px}
.case-related .grid{margin-top:22px}
@media(max-width:800px){
 .case-detail-page{padding-left:5%!important;padding-right:5%!important}
 .case-detail-head{padding-top:10px}
 .case-detail-head h1{font-size:34px;letter-spacing:-2px}
 .case-detail-meta span{font-size:11px;padding:6px 9px}
 .case-detail-image{margin-bottom:34px;border-radius:14px}
 .case-detail-image img{max-height:420px}
 .case-detail-section{padding-top:40px}
 .case-summary-grid{grid-template-columns:1fr}
 .case-summary-grid>div{padding:23px}
 .case-summary-grid h2{font-size:24px}
 .case-work-list li{font-size:15px;padding:16px 3px;gap:11px}
 .case-detail-cta{display:block;padding:25px 20px;margin-top:40px}
 .case-detail-cta h2{font-size:25px}
 .case-detail-cta-buttons{min-width:0;margin-top:20px;grid-template-columns:1fr 1fr}
 .case-result{padding:25px 20px;margin-top:40px}
}


/* ===== FINAL V2: eliminate hero blur source + orange UI ===== */
:root{--primary:#ff8a00;--primary-dark:#e66f00;--dattuler-orange:#ff8a00;--dattuler-orange-light:#fff1df}
/* The old hero glass pseudo-element sat over the content and could visually blur the mobile card. Remove it completely. */
.hero-in::before,.hero-in::after{display:none!important;content:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important}
@media(max-width:800px){
  .hero,.hero-in,.hero-card,.hero-symptoms,.symptom-heading,.hero-symptoms ul,.hero-symptoms li,.hero-symptoms > p{
    filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;mix-blend-mode:normal!important;opacity:1!important;text-shadow:none!important;
  }
  .hero-symptoms,.symptom-heading,.hero-symptoms ul,.hero-symptoms li{background:#fff!important;background-image:none!important}
  .hero-symptoms > p{background:#fff!important;background-image:none!important;color:#60636a!important}
}
/* Footer: all previous yellow declarations are overridden here. */
#site-footer .dt-footer__phones a,#site-footer .dt-footer h4,
footer .foot-col h4,footer .foot-blog-title,footer .foot-phone,footer .foot-sms a:hover,
footer.site-footer .foot-col h4,footer.site-footer .foot-phones a,footer.site-footer h4{color:#ff8a00!important}
#site-footer .dt-footer__phones a:hover{color:#fff!important}
/* Service detail links + work-process step labels */
.more,.service-card .more,.service-card .detail-link,.service-card .more-link,
.step,.step-label,.process-step .step,.process-step .step-label,.process-step .step-number{color:#ff8a00!important}
/* Case card area labels */
.case-meta span,.case-card .meta span{background:#fff1df!important;color:#b85e00!important;border-color:#ffb35a!important}
.case-meta span:hover,.case-card .meta span:hover{background:#ff8a00!important;color:#111!important}
/* ===== CASE DETAIL V2 ===== */
.case-detail-page{max-width:1180px!important}
.case-detail-head{padding:8px 0 28px!important}
.case-detail-head .case-kicker{color:#ff8a00!important}
.case-detail-head h1{margin:8px 0 0!important}
.case-detail-head .case-detail-meta,.case-detail-head .lead{display:none!important}
.case-detail-image{margin:0 0 46px!important}
.case-original-bar{display:flex;justify-content:flex-end;margin:-20px 0 42px;gap:10px}
.case-original-bar a{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border:1px solid #dfe3e8;border-radius:10px;background:#fff;color:#24272c;font-size:14px;font-weight:900;transition:.2s}
.case-original-bar a:hover{background:#ff8a00;border-color:#ff8a00;color:#111}
.case-section-block{padding:0;margin:0 0 50px}
.case-section-block .case-section-kicker{font-size:12px;letter-spacing:1.4px;font-weight:950;color:#ff8a00;margin-bottom:8px}
.case-section-block h2{font-size:32px;line-height:1.25;letter-spacing:-1.8px;margin:0 0 17px;color:#17191d}
.case-section-block .case-section-box{border-top:3px solid #17191d;border-bottom:1px solid #e5e7eb;padding:25px 4px}
.case-section-block p{margin:0;color:#555e69;font-size:17px;line-height:1.9;white-space:pre-line}
.case-point-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}
.case-point{padding:20px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}
.case-point strong{display:block;color:#17191d;font-size:16px;margin-bottom:7px}
.case-point span{display:block;color:#667085;font-size:14px;line-height:1.65}
.case-work-list{border-top:3px solid #17191d!important;margin-top:0!important}
.case-work-list li span{background:#ff8a00!important}
.case-result{background:#fff4e8!important;border-color:#ffd1a0!important}
@media(max-width:800px){
 .case-detail-head{padding-top:4px!important}
 .case-detail-head h1{font-size:31px!important;line-height:1.25!important}
 .case-detail-image{margin-bottom:24px!important}
 .case-original-bar{justify-content:flex-start;margin:-8px 0 34px}
 .case-original-bar a{width:100%;padding:12px 14px}
 .case-section-block{margin-bottom:38px}
 .case-section-block h2{font-size:25px;letter-spacing:-1.2px}
 .case-section-box{padding:20px 2px!important}
 .case-section-block p{font-size:15px;line-height:1.8}
 .case-point-grid{grid-template-columns:1fr;gap:9px}
}

/* ===== CASE DETAIL V3: metadata + richer sections ===== */
.case-meta-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px;font-size:13px;font-weight:850;color:#777e88;letter-spacing:-.2px}
.case-meta-line span{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border:1px solid #e1e4e8;border-radius:999px;background:#fff}
.case-meta-line .case-area-tag{border-color:#ffb35a;background:#fff1df;color:#b85e00;font-weight:950}
.case-detail-head h1{margin-top:10px!important}
.case-section-block .case-section-kicker{color:#ff8a00!important}
.case-point-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.case-point{min-height:128px;padding:21px 22px;border:1px solid #e7e9ec;border-radius:14px;background:#fff;display:flex;flex-direction:column;gap:9px}
.case-point strong{font-size:17px;color:#17191d;letter-spacing:-.5px}
.case-point span{font-size:14px;line-height:1.75;color:#626974}
.case-work-list li{display:flex;gap:14px;align-items:flex-start;padding:17px 0;border-bottom:1px dashed #ddd}
.case-work-list li:last-child{border-bottom:0}
.case-work-list li>span{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ff8a00;color:#111;font-weight:950}
.case-work-list li>div{font-size:16px;line-height:1.75;color:#454b54}
.case-result{padding:24px 26px;border:1px solid #ffd0a0;border-left:5px solid #ff8a00;border-radius:12px;background:#fff8f0}
.case-result p{color:#4f5660!important}
@media(max-width:800px){
 .case-meta-line{gap:6px;margin-bottom:11px;font-size:11px}
 .case-meta-line span{min-height:28px;padding:0 9px}
 .case-point-grid{grid-template-columns:1fr;gap:9px}
 .case-point{min-height:0;padding:17px 16px}
 .case-point strong{font-size:15px}
 .case-point span{font-size:13px;line-height:1.7}
 .case-work-list li{gap:10px;padding:14px 0}
 .case-work-list li>div{font-size:14px;line-height:1.7}
 .case-result{padding:19px 17px}
}


/* ===== CASE DETAIL V4 ===== */
.case-detail-page{max-width:1180px!important}
.case-detail-head{padding:18px 0 28px}
.case-kicker,.case-section-kicker{color:#ff8a00!important;font-weight:900;letter-spacing:1.4px}
.case-meta-line{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0 17px}
.case-meta-line span{padding:8px 12px;border:1px solid #e7e7e7;border-radius:999px;background:#fff;color:#656970;font-size:13px;font-weight:800}
.case-meta-line .case-area-tag{background:#fff1df;border-color:#ffd19b;color:#d96f00}
.case-detail-head h1{max-width:900px;margin:0;color:#17191d;font-size:clamp(30px,4vw,52px);line-height:1.16;letter-spacing:-2.4px;font-weight:950}
.case-detail-image{margin:0 0 22px;border-radius:18px;overflow:hidden;background:#f4f4f4}
.case-detail-image img{display:block;width:100%;max-height:650px;object-fit:cover}
.case-detail-image figcaption{padding:10px 15px;background:#fff;color:#777;font-size:12px}
.case-original-bar{margin:0 0 52px;padding:0}
.case-original-bar a{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border:1px solid #ff8a00;border-radius:999px;color:#d96f00;background:#fff;font-weight:900;text-decoration:none}
.case-section-block{margin:0 0 58px}
.case-section-block h2{margin:7px 0 18px;font-size:32px;letter-spacing:-1.5px;color:#17191d}
.case-section-box{padding:27px 30px;border:1px solid #e7e7e7;border-radius:16px;background:#fff;box-shadow:0 8px 25px rgba(0,0,0,.04)}
.case-section-box p,.case-result p{margin:0;color:#4e535a;font-size:16px;line-height:1.9;white-space:normal}
.case-point-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.case-point{display:grid;grid-template-columns:44px 1fr;gap:13px;padding:20px;border:1px solid #e7e7e7;border-radius:15px;background:#fff}
.case-point-no{width:36px;height:36px;border-radius:10px;background:#fff1df;color:#d96f00;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:950}
.case-point strong{display:block;margin-bottom:6px;color:#17191d;font-size:16px}
.case-point span{display:block;color:#666b72;font-size:14px;line-height:1.65}
.case-work-list{list-style:none;margin:0;padding:0}
.case-work-list li{display:grid;grid-template-columns:42px 1fr;gap:15px;align-items:start;padding:18px 0;border-bottom:1px dashed #ddd;color:#4e535a;font-size:16px;line-height:1.7}
.case-work-list li:last-child{border-bottom:0}
.case-work-list li>span{width:34px;height:34px;border-radius:50%;background:#ff8a00;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900}
.case-result{padding:28px 30px;border-radius:16px;background:#fff1df;border:1px solid #ffd19b}
.case-result small{display:block;margin-top:14px;color:#8a5a27;line-height:1.65}
.case-detail-cta{display:flex;justify-content:space-between;gap:30px;align-items:center;margin:10px 0 58px;padding:32px;border-radius:18px;background:#17191d;color:#fff}
.case-detail-cta .label{color:#ff8a00!important}
.case-detail-cta h2{margin:5px 0 7px;color:#fff;font-size:28px}
.case-detail-cta p{margin:0;color:#c5c7ca}
.case-detail-cta-buttons{display:flex;gap:10px;flex-shrink:0}
.case-detail-cta-buttons .contact-big{border:0;min-width:125px}
.cases-more{margin-top:35px}
.cases-more .grid{margin-top:20px}
.cases-more .case-card .case-meta span{color:#d96f00!important;background:#fff1df!important}
@media(max-width:700px){
 .case-detail-head{padding-top:8px}
 .case-meta-line{gap:6px}.case-meta-line span{font-size:11px;padding:7px 10px}
 .case-detail-head h1{font-size:28px;letter-spacing:-1.4px}
 .case-detail-image{margin-bottom:15px;border-radius:12px}
 .case-original-bar{margin-bottom:38px}
 .case-original-bar a{font-size:13px;padding:10px 14px}
 .case-section-block{margin-bottom:42px}
 .case-section-block h2{font-size:24px;margin-bottom:13px}
 .case-section-box{padding:20px 17px;border-radius:12px}
 .case-section-box p,.case-result p{font-size:14px;line-height:1.8}
 .case-point-grid{grid-template-columns:1fr;gap:9px}
 .case-point{padding:15px;grid-template-columns:38px 1fr}
 .case-point-no{width:32px;height:32px}
 .case-point strong{font-size:14px}.case-point span{font-size:13px}
 .case-work-list li{font-size:14px;grid-template-columns:35px 1fr;gap:10px;padding:15px 0}
 .case-work-list li>span{width:30px;height:30px}
 .case-result{padding:20px 17px}
 .case-detail-cta{display:block;margin-bottom:40px;padding:22px 18px;border-radius:14px}
 .case-detail-cta h2{font-size:22px}
 .case-detail-cta-buttons{margin-top:18px}
 .case-detail-cta-buttons .contact-big{flex:1;min-width:0}
}


/* 2026-09-11 현장사례 상세페이지 최종 보정 */
.case-detail-page,
.case-detail-page *{text-align:left;}
.case-section-block .case-section-box,
.case-point,
.case-result{
  border:0 !important;
  box-shadow:none !important;
}
.case-section-block .case-section-box{border-radius:0 !important;}
.case-point{border-radius:0 !important;}
.case-result{border-radius:0 !important;}
.case-work-list{border-top:0 !important;}
.case-work-list li{border-bottom:0 !important;}
.case-point-no{
  width:32px !important;
  height:32px !important;
  border-radius:50% !important;
  background:#fff1df !important;
  color:#ff8a00 !important;
  font-size:17px !important;
  font-weight:950 !important;
}

/* ===== 2026-09-12 FINAL HERO + BLOG ORIGINAL DETAIL ===== */
@media (min-width:801px){
  .hero{padding-top:34px!important;padding-bottom:58px!important;}
  .hero-in{align-items:start!important;}
  .hero-copy{padding-top:10px!important;}
  .hero-card{margin-top:0!important;}
}
@media (max-width:800px){
  /* 모바일은 문구가 먼저, 카드가 그 다음 */
  .hero{padding-top:0!important;padding-left:10px!important;padding-right:10px!important;}
  .hero-in{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important;}
  .hero-copy{display:block!important;order:1!important;padding:0 4px!important;}
  .hero-card{order:2!important;margin:0!important;}
  .hero-copy .eyebrow{font-size:11px!important;padding:7px 10px!important;}
  .hero-copy h1{font-size:38px!important;letter-spacing:-2.8px!important;margin:13px 0 15px!important;}
  .hero-copy p{font-size:14px!important;line-height:1.65!important;}
  .hero-contact-buttons{margin-top:18px!important;gap:8px!important;}
  .hero-contact-buttons .btn{min-width:0!important;flex:1!important;padding:12px 10px!important;}
}

/* 상세페이지는 블로그 원문을 하나의 작업 내용으로만 표시 */
.case-blog-content{margin-top:0!important;}
.case-blog-content .case-section-box{padding:0!important;background:transparent!important;}
.blog-original-text{font-size:16px!important;line-height:1.95!important;color:#4e535a!important;white-space:normal!important;word-break:keep-all!important;}
.blog-original-text br{content:"";display:block;margin-bottom:7px;}
@media(max-width:700px){
  .blog-original-text{font-size:14px!important;line-height:1.85!important;}
  .blog-original-text br{margin-bottom:5px;}
}

/* ===== 2026-09-12 FINAL HERO + BLOG ORIGINAL DETAIL ===== */
@media (min-width:801px){
  .hero{padding-top:34px!important;padding-bottom:58px!important;}
  .hero-in{align-items:start!important;}
  .hero-copy{padding-top:10px!important;}
  .hero-card{margin-top:0!important;}
}
@media (max-width:800px){
  .hero{padding-top:0!important;padding-left:10px!important;padding-right:10px!important;}
  .hero-in{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important;}
  .hero-copy{display:block!important;order:1!important;padding:0 4px!important;}
  .hero-card{order:2!important;margin:0!important;}
  .hero-copy .eyebrow{font-size:11px!important;padding:7px 10px!important;}
  .hero-copy h1{font-size:38px!important;letter-spacing:-2.8px!important;margin:13px 0 15px!important;}
  .hero-copy p{font-size:14px!important;line-height:1.65!important;}
  .hero-contact-buttons{margin-top:18px!important;gap:8px!important;}
  .hero-contact-buttons .btn{min-width:0!important;flex:1!important;padding:12px 10px!important;}
}
.case-blog-content{margin-top:0!important;}
.case-blog-content .case-section-box{padding:0!important;background:transparent!important;}
.blog-original-text{font-size:16px!important;line-height:1.95!important;color:#4e535a!important;white-space:normal!important;word-break:keep-all!important;}
.blog-original-text br{content:"";display:block;margin-bottom:7px;}
@media(max-width:700px){.blog-original-text{font-size:14px!important;line-height:1.85!important}.blog-original-text br{margin-bottom:5px}}

/* ===== 2026-09-12 FINAL HERO + BLOG ORIGINAL DETAIL ===== */
@media (min-width:801px){
  .hero{padding-top:34px!important;padding-bottom:58px!important;}
  .hero-in{align-items:start!important;}
  .hero-copy{padding-top:10px!important;}
  .hero-card{margin-top:0!important;}
}
@media (max-width:800px){
  .hero{padding-top:0!important;padding-left:10px!important;padding-right:10px!important;}
  .hero-in{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important;}
  .hero-copy{display:block!important;order:1!important;padding:0 4px!important;}
  .hero-card{order:2!important;margin:0!important;}
  .hero-copy .eyebrow{font-size:11px!important;padding:7px 10px!important;}
  .hero-copy h1{font-size:38px!important;letter-spacing:-2.8px!important;margin:13px 0 15px!important;}
  .hero-copy p{font-size:14px!important;line-height:1.65!important;}
  .hero-contact-buttons{margin-top:18px!important;gap:8px!important;}
  .hero-contact-buttons .btn{min-width:0!important;flex:1!important;padding:12px 10px!important;}
}
.case-blog-content{margin-top:0!important;}
.case-blog-content .case-section-box{padding:0!important;background:transparent!important;}
.blog-original-text{font-size:16px!important;line-height:1.95!important;color:#4e535a!important;white-space:normal!important;word-break:keep-all!important;}
.blog-original-text br{content:"";display:block;margin-bottom:7px;}
@media(max-width:700px){.blog-original-text{font-size:14px!important;line-height:1.85!important}.blog-original-text br{margin-bottom:5px}}

/* ===== FINAL MOBILE HERO + ORIGINAL BLOG CONTENT ===== */
@media (max-width:800px){
  /* 모바일에서는 왼쪽 문구를 반드시 먼저 보여주고 카드가 그 다음에 표시됩니다. */
  .hero{
    min-height:0!important;
    height:auto!important;
    padding:4px 10px 42px!important;
  }
  .hero-in{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:22px!important;
  }
  .hero-copy{
    display:block!important;
    order:1!important;
    width:100%!important;
    padding:0 6px!important;
    margin:0!important;
  }
  .hero-copy .eyebrow{
    margin-top:0!important;
    font-size:11px!important;
    padding:7px 10px!important;
  }
  .hero-copy h1{
    margin:13px 0 12px!important;
    font-size:clamp(34px,10vw,46px)!important;
    line-height:1.08!important;
    letter-spacing:-2.5px!important;
  }
  .hero-copy p{
    max-width:none!important;
    font-size:14px!important;
    line-height:1.65!important;
  }
  .hero-contact-buttons{
    margin-top:16px!important;
    gap:8px!important;
  }
  .hero-contact-buttons .btn{
    min-width:0!important;
    flex:1 1 0!important;
    min-height:46px!important;
    padding:11px 8px!important;
  }
  .hero-card{
    order:2!important;
    margin:0!important;
  }
}

/* 블로그 원문 텍스트: 카드/굵은 선 없이 줄바꿈을 그대로 읽기 좋게 표시 */
.case-blog-content .case-section-box.blog-original-text{
  border:0!important;
  border-top:0!important;
  border-bottom:0!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:16px!important;
  line-height:2!important;
  color:#424850!important;
  text-align:left!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:anywhere!important;
}
.case-blog-content .blog-original-text br{
  display:block!important;
  content:""!important;
  margin-bottom:7px!important;
}
@media(max-width:700px){
  .case-blog-content .case-section-box.blog-original-text{
    font-size:14px!important;
    line-height:1.9!important;
  }
  .case-blog-content .blog-original-text br{margin-bottom:5px!important}
}

/* ===== V13: 실제 네이버 블로그 서식 보존 ===== */
.case-blog-content .blog-original-text{
  font-size:18px;
  line-height:2;
  color:#4e535a;
  text-align:left;
  white-space:normal;
  word-break:keep-all;
  overflow-wrap:anywhere;
  width:100%;
  max-width:none;
  overflow:visible;
}
.case-blog-content .blog-original-text p,
.case-blog-content .blog-original-text div{
  margin:0 0 18px;
  padding:0;
  text-align:inherit;
  white-space:normal;
}
.case-blog-content .blog-original-text span{white-space:pre-wrap;}
.case-blog-content .blog-original-text strong,
.case-blog-content .blog-original-text b{font-weight:700;}
.case-blog-content .blog-original-text h1,
.case-blog-content .blog-original-text h2,
.case-blog-content .blog-original-text h3,
.case-blog-content .blog-original-text h4{
  margin:30px 0 16px;
  color:#17191d;
  line-height:1.4;
}
.case-blog-content .blog-original-text img{
  display:block;
  max-width:100%;
  width:auto;
  height:auto;
  margin:22px 0;
  object-fit:contain;
}
.case-blog-content .blog-original-text a{
  color:#ff8a00;
  text-decoration:underline;
}
.case-blog-content .blog-original-text table{
  width:100%;
  max-width:100%;
  border-collapse:collapse;
}
.case-blog-content .blog-original-text th,
.case-blog-content .blog-original-text td{
  padding:8px;
  border:1px solid #e5e7eb;
}

/* 네이버 스마트에디터에서 흔히 사용하는 글자크기 클래스도 보존 */
.blog-original-text .se-fs-fs11{font-size:11px;}
.blog-original-text .se-fs-fs12{font-size:12px;}
.blog-original-text .se-fs-fs13{font-size:13px;}
.blog-original-text .se-fs-fs14{font-size:14px;}
.blog-original-text .se-fs-fs15{font-size:15px;}
.blog-original-text .se-fs-fs16{font-size:16px;}
.blog-original-text .se-fs-fs17{font-size:17px;}
.blog-original-text .se-fs-fs18{font-size:18px;}
.blog-original-text .se-fs-fs19{font-size:19px;}
.blog-original-text .se-fs-fs20{font-size:20px;}
.blog-original-text .se-fs-fs21{font-size:21px;}
.blog-original-text .se-fs-fs22{font-size:22px;}
.blog-original-text .se-fs-fs23{font-size:23px;}
.blog-original-text .se-fs-fs24{font-size:24px;}
.blog-original-text .se-fs-fs25{font-size:25px;}
.blog-original-text .se-fs-fs26{font-size:26px;}
.blog-original-text .se-fs-fs27{font-size:27px;}
.blog-original-text .se-fs-fs28{font-size:28px;}
.blog-original-text .se-fs-fs29{font-size:29px;}
.blog-original-text .se-fs-fs30{font-size:30px;}

@media(max-width:700px){
  .case-blog-content .blog-original-text{
    font-size:16px;
    line-height:1.9;
  }
  .case-blog-content .blog-original-text p,
  .case-blog-content .blog-original-text div{margin-bottom:14px;}
  .case-blog-content .blog-original-text img{margin:16px 0;}
}

/* ===== V15 ===== */
.case-blog-content .blog-original-text .question-icon,
.case-blog-content .blog-original-text .unknown-icon,
.case-blog-content .blog-original-text .se-icon-question,
.case-blog-content .blog-original-text [aria-label="question"],
.case-blog-content .blog-original-text [title="question"]{
  display:none!important;
}
.case-related.cases-more .grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
@media(max-width:1000px){
  .case-related.cases-more .grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
  .case-related.cases-more .grid{grid-template-columns:1fr;}
}

/* ===== V16: 작업내용 이미지/스티커 깨짐 아이콘 차단 ===== */
.case-blog-content .blog-original-text img,
.case-blog-content .blog-original-text .se-sticker,
.case-blog-content .blog-original-text .se-sticker-container,
.case-blog-content .blog-original-text .se-module-image{
  display:none!important;
}


/* ===== HERO V17 FINAL: screenshot-fit + gray background ===== */
.hero{
  background:#f3f4f5 !important;
  background-image:none !important;
}
.hero::before{
  display:none !important;
  content:none !important;
}
.hero::after{
  display:none !important;
  content:none !important;
  background:none !important;
}

/* PC: 오른쪽 카드 전체(사진+증상)를 한 화면 안에 표시 */
@media (min-width:801px){
  .hero{
    min-height:calc(100vh - 78px) !important;
    height:auto !important;
    padding:38px 4% 40px !important;
    box-sizing:border-box !important;
    display:flex !important;
    align-items:center !important;
  }
  .hero-in{
    width:100% !important;
    max-width:1500px !important;
    margin:0 auto !important;
    grid-template-columns:minmax(0,1fr) minmax(600px,1.08fr) !important;
    gap:48px !important;
    align-items:center !important;
  }
  .hero-card{
    width:100% !important;
    height:calc(100vh - 150px) !important;
    min-height:650px !important;
    max-height:760px !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  .hero-slider{
    height:auto !important;
    flex:0 0 43% !important;
    min-height:0 !important;
  }
  .hero-symptoms{
    flex:1 1 57% !important;
    min-height:0 !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
  }
  .symptom-heading{
    flex:0 0 auto !important;
  }
  .hero-symptoms ul{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow:hidden !important;
  }
  .hero-symptoms > p{
    flex:0 0 auto !important;
  }
}

/* 낮은 화면에서도 카드 전체가 화면을 넘지 않도록 */
@media (min-width:801px) and (max-height:850px){
  .hero{
    padding-top:25px !important;
    padding-bottom:25px !important;
  }
  .hero-card{
    height:calc(100vh - 110px) !important;
    min-height:0 !important;
    max-height:none !important;
  }
  .hero-slider{flex-basis:42% !important;}
  .hero-symptoms{flex-basis:58% !important;}
}

/* 모바일도 hero의 주황색 원형/그라데이션 제거 */
@media (max-width:800px){
  .hero,
  .hero::before,
  .hero::after{
    background:#f3f4f5 !important;
    background-image:none !important;
  }
  .hero::before,
  .hero::after{
    display:none !important;
    content:none !important;
  }
}

/* ===== V60 HERO COMPACT 50:50 ===== */
/* PC: 카드 전체 높이를 줄여 사진/증상 영역을 정확히 50:50으로 맞추고 한 화면에 들어오도록 조정 */
@media (min-width:801px){
  .hero-card{
    height:700px!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .hero-slider{
    height:350px!important;
    min-height:350px!important;
    flex:0 0 350px!important;
  }
  .hero-symptoms{
    height:350px!important;
    min-height:350px!important;
    flex:0 0 350px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .symptom-heading{
    flex:0 0 74px!important;
    box-sizing:border-box!important;
    padding:15px 27px 10px!important;
  }
  .symptom-heading span{margin-bottom:3px!important;font-size:11px!important}
  .symptom-heading h2{font-size:24px!important;line-height:1.2!important}
  .hero-symptoms ul{
    flex:1 1 auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:space-between!important;
    box-sizing:border-box!important;
    padding:2px 27px!important;
  }
  .hero-symptoms li{
    flex:1 1 0!important;
    min-height:0!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    padding:8px 0 8px 37px!important;
    font-size:15px!important;
    line-height:1.25!important;
  }
  .hero-symptoms li::before{
    top:50%!important;
    transform:translateY(-50%)!important;
    width:24px!important;
    height:24px!important;
  }
  .hero-symptoms > p{
    flex:0 0 61px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    margin:0!important;
    padding:9px 27px!important;
    font-size:13px!important;
    line-height:1.4!important;
    white-space:nowrap!important;
  }
}

@media (min-width:801px) and (max-width:1100px){
  .hero-card{height:680px!important}
  .hero-slider{height:340px!important;min-height:340px!important;flex-basis:340px!important}
  .hero-symptoms{height:340px!important;min-height:340px!important;flex-basis:340px!important}
  .symptom-heading{flex-basis:70px!important;padding:13px 22px 8px!important}
  .symptom-heading h2{font-size:22px!important}
  .hero-symptoms ul{padding-left:22px!important;padding-right:22px!important}
  .hero-symptoms li{padding-left:34px!important;font-size:14px!important}
  .hero-symptoms > p{flex-basis:58px!important;padding-left:22px!important;padding-right:22px!important;font-size:12px!important}
}

/* ===== V61: 증상 제목 영역 상하 중앙 정렬 ===== */
@media (min-width:801px){
  .symptom-heading{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  .symptom-heading span{
    margin-bottom:4px!important;
  }
}

/* ===== ORIGINAL CASE LINK: HIGH VISIBILITY ===== */
.case-original-bar{display:flex;justify-content:flex-start;align-items:center;margin:0 0 42px;padding:0;gap:10px}
.case-original-bar a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:13px 22px;border:2px solid #f57c00;border-radius:999px;background:#ff9800;color:#171717;font-size:15px;font-weight:950;letter-spacing:-.35px;text-decoration:none;box-shadow:0 5px 0 #c65f00,0 8px 18px rgba(245,124,0,.22);transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}
.case-original-bar a:hover{background:#171717;border-color:#171717;color:#fff;transform:translateY(-2px);box-shadow:0 7px 0 #000,0 12px 24px rgba(0,0,0,.18)}
.case-original-bar a:active{transform:translateY(2px);box-shadow:0 2px 0 #000,0 4px 10px rgba(0,0,0,.12)}
.case-original-bar a:focus-visible{outline:4px solid #ffd166;outline-offset:4px}
@media(max-width:800px){.case-original-bar{justify-content:flex-start;margin:0 0 34px}.case-original-bar a{width:100%;min-height:50px;padding:13px 16px;font-size:14px}}

/* 현장사례 페이지네이션 */
.case-pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin:42px 0 8px;padding:0}
.case-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid #ddd;border-radius:8px;background:#fff;color:#333;text-decoration:none;font-weight:600;box-sizing:border-box}
.case-pagination a:hover{border-color:#f08a24;color:#f08a24}
.case-pagination .active{background:#f08a24;border-color:#f08a24;color:#fff}
.case-pagination .case-page-nav{min-width:auto}
@media(max-width:640px){
  .case-pagination{gap:6px;margin-top:30px}
  .case-pagination a{min-width:38px;height:38px;padding:0 9px;font-size:14px}
}
