:root{
  --header:#08211e;
  --header-text:#f7fbfa;
  --accent:#0d6efd;
  --footer:#071b1a;
  --max:1402px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:#111827;font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.site-header{position:sticky;top:0;z-index:1000;background:var(--header);color:var(--header-text);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.header-inner{max-width:1440px;height:86px;margin:0 auto;padding:0 34px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}
.brand{justify-self:start;display:flex;align-items:center;gap:11px;white-space:nowrap}
.brand-mark{font-weight:900;font-size:27px;letter-spacing:-1.2px}
.brand-sub{font-size:12px;color:rgba(255,255,255,.72);font-weight:600}
.desktop-nav{display:flex;align-items:center;gap:42px;font-size:14px;font-weight:650}
.desktop-nav a{opacity:.92;transition:opacity .2s}
.desktop-nav a:hover{opacity:.62}
.contact-btn{justify-self:end;background:#caff58;color:#081a17;border-radius:999px;padding:13px 24px;font-size:14px;font-weight:800}
.menu-btn{display:none;justify-self:end;width:42px;height:42px;background:transparent;border:0;padding:8px;cursor:pointer}
.menu-btn span{display:block;height:2px;background:#fff;margin:5px 0;border-radius:2px}
.mobile-nav{display:none}
main{background:#fff}
.image-section{position:relative;width:min(var(--max),100%);margin:0 auto;line-height:0;overflow:hidden}
.image-section img{display:block;width:100%;height:auto;margin:0;padding:0}
.first-section{padding-top:0}
.hotspot{position:absolute;display:block;z-index:10;border-radius:12px}
.hotspot:focus-visible{outline:3px solid rgba(13,110,253,.65);outline-offset:2px}
.hero-cta{left:41%;top:66%;width:18%;height:8%}
.price-1{left:4.4%;top:55.2%;width:25.6%;height:4.6%}
.price-2{left:34.3%;top:55.2%;width:24.9%;height:4.6%}
.price-3{left:63.6%;top:55.2%;width:25.8%;height:4.6%}
.price-4{left:61.7%;top:80.6%;width:27%;height:4.7%}
.phone-cta{left:34.5%;top:65%;width:31%;height:9.5%}
.site-footer{background:var(--footer);color:#dce7e5;padding:56px 28px 24px}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 2fr 1.5fr;gap:46px;align-items:start}
.footer-logo{font-size:30px;font-weight:900;color:#fff;letter-spacing:-1.5px}
.footer-brand p,.footer-info p,.footer-contact p{margin:7px 0;font-size:13px;line-height:1.7;color:#b9cbc7}
.footer-info strong{color:#fff;font-size:15px}
.footer-contact a{color:#dce7e5}
.copyright{max-width:1200px;margin:36px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:#6f8a84}
@media (max-width:900px){
  .header-inner{height:68px;padding:0 18px;grid-template-columns:1fr auto}
  .brand-sub{display:none}
  .desktop-nav,.contact-btn{display:none}
  .menu-btn{display:block}
  .mobile-nav{display:none;background:var(--header);padding:0 18px 18px;border-top:1px solid rgba(255,255,255,.08)}
  .mobile-nav.open{display:grid}
  .mobile-nav a{padding:15px 4px;border-bottom:1px solid rgba(255,255,255,.08);font-size:14px}
  .mobile-nav .mobile-contact{margin-top:12px;border:0;background:#caff58;color:#071b18;text-align:center;border-radius:999px;font-weight:800;padding:13px}
  .footer-inner{grid-template-columns:1fr;gap:18px}
  .site-footer{padding:38px 22px 22px}
}
@media (max-width:520px){
  .brand-mark{font-size:24px}
  .footer-brand p,.footer-info p,.footer-contact p{font-size:12px}
}

/* TLE My Service — append-only original-site navigation update */
@media(min-width:1121px){
 .header-inner{grid-template-columns:auto minmax(0,1fr) auto auto;gap:20px}
 .desktop-nav{justify-content:center;gap:22px;white-space:nowrap;font-size:13.5px}
 .contact-btn{white-space:nowrap;padding:12px 19px}
}
.my-service-btn{justify-self:end;display:inline-flex;align-items:center;gap:9px;white-space:nowrap;background:#eef5ff;color:#0d3161;border:1px solid #a4c8f4;border-radius:999px;padding:12px 18px;font-size:14px;font-weight:850;transition:background .2s,transform .2s}
.my-service-btn:hover{background:#d9eaff;transform:translateY(-1px)}
.my-service-btn:focus-visible{outline:3px solid #7db5ff;outline-offset:3px}
.mobile-nav .mobile-service{margin-top:10px;border:1px solid #91b7e9;background:#eaf3ff;color:#0c3260;text-align:center;border-radius:999px;font-weight:850;padding:14px}
@media(max-width:1120px){
 .header-inner{height:68px;padding:0 18px;grid-template-columns:1fr auto}
 .brand-sub{display:none}
 .desktop-nav,.contact-btn,.my-service-btn{display:none}
 .menu-btn{display:block}
 .mobile-nav{display:none;background:var(--header);padding:0 18px 18px;border-top:1px solid rgba(255,255,255,.08)}
 .mobile-nav.open{display:grid}
 .mobile-nav a{padding:15px 4px;border-bottom:1px solid rgba(255,255,255,.08);font-size:14px}
 .mobile-nav .mobile-contact{margin-top:12px;border:0;background:#caff58;color:#071b18;text-align:center;border-radius:999px;font-weight:800;padding:13px}
 .mobile-nav .mobile-service{margin-top:10px;border:1px solid #91b7e9;background:#eaf3ff;color:#0c3260;text-align:center;border-radius:999px;font-weight:850;padding:14px}
}
