/* 서울우리치과 v1.5.8 즉시 임플란트: 기존 CSS와 충돌하지 않는 독립형 클래스 */
.wi158-intro,.wi158-main,.wi158-main *,.wi158-intro *{box-sizing:border-box}
.wi158-intro,.wi158-main{clear:both}
.wi158-container{width:calc(100% - 40px);max-width:1200px;margin:0 auto}
.wi158-intro{padding:78px 0;background:linear-gradient(112deg,#fff0ed 0%,#fff8f6 56%,#fff 100%)}
.wi158-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:center}
.wi158-copy{min-width:0}.wi158-eyebrow,.wi158-heading>span{display:block;color:#b96d72;font-weight:800;font-size:13px;letter-spacing:.08em}
.wi158-copy h2{font-size:44px;line-height:1.25;color:#294960;margin:15px 0 20px;font-weight:800;word-break:keep-all}
.wi158-copy h3{font-size:22px;line-height:1.5;color:#b76569;margin:0 0 20px;font-weight:700;word-break:keep-all}
.wi158-copy p{font-size:17px;line-height:1.85;color:#54616a;margin:0;word-break:keep-all}
/* 대표 이미지에 직접 라운드를 적용하며 흰 배경/프레임/여백을 사용하지 않습니다. */
.wi158-hero-photo{min-width:0;margin:0;padding:0;background:none;border:0;overflow:hidden;border-radius:22px;box-shadow:0 18px 38px rgba(102,54,63,.13)}
.wi158-hero-photo img{display:block;width:100%;height:auto;border-radius:22px}
.wi158-section{padding:85px 0}.wi158-heading{text-align:center;margin-bottom:34px}
.wi158-heading h2{font-size:36px;line-height:1.3;color:#294960;font-weight:800;margin:12px 0;word-break:keep-all}
.wi158-heading em{font-style:normal;color:#ba7175}.wi158-heading p{font-size:16px;color:#66757b;line-height:1.7;margin:10px 0 0}
.wi158-point-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.wi158-point{min-width:0;padding:30px 27px;border-radius:19px;border:1px solid transparent;transition:transform .23s ease,box-shadow .23s ease,border-color .23s ease;word-break:keep-all}
.wi158-point-num{display:block;font-size:14px;font-weight:800;margin-bottom:22px;letter-spacing:.05em}
.wi158-point h3{font-size:22px;line-height:1.4;font-weight:800;margin:0 0 13px}
.wi158-point p{font-size:16px;line-height:1.8;color:#495860;margin:0}
.wi158-blue{background:#eaf2f9;color:#285675;border-color:#d5e5f2}.wi158-coral{background:#fff0ed;color:#ad666c;border-color:#f5dcd9}.wi158-mint{background:#e6f5f0;color:#287e75;border-color:#d0ece3}
.wi158-candidates{background:#f5f8f7;padding:82px 0 94px}.wi158-candidate-grid{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:0;padding:0}
.wi158-candidate-grid li{min-width:0;display:flex;align-items:flex-start;gap:17px;padding:22px 24px;background:#fff;border:1px solid #deebe8;border-radius:15px;font-size:17px;line-height:1.65;color:#38545c;word-break:keep-all}
.wi158-candidate-num{flex:none;border-radius:9px;padding:7px 10px;background:#e2f2ed;color:#247a70;font-size:14px;font-weight:800}
@media(hover:hover) and (pointer:fine){.wi158-point:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(37,72,85,.12);border-color:currentColor}.wi158-candidate-grid li:hover{box-shadow:0 9px 22px rgba(33,74,81,.07)}}
@media(max-width:1100px){.wi158-hero-grid{gap:28px}.wi158-copy h2{font-size:37px}.wi158-copy h3{font-size:20px}.wi158-point{padding:24px 20px}.wi158-point h3{font-size:20px}.wi158-point p{font-size:15px}}
@media(max-width:767px){.wi158-container{width:calc(100% - 30px)}.wi158-intro{padding:42px 0 48px}.wi158-hero-grid{grid-template-columns:minmax(0,1fr);gap:25px}.wi158-copy h2{font-size:30px;margin:10px 0 13px}.wi158-copy h3{font-size:19px;margin-bottom:13px}.wi158-copy p{font-size:16px;line-height:1.8}.wi158-hero-photo,.wi158-hero-photo img{border-radius:16px}.wi158-section{padding:55px 0}.wi158-heading{margin-bottom:25px}.wi158-heading h2{font-size:27px}.wi158-point-grid,.wi158-candidate-grid{grid-template-columns:minmax(0,1fr);gap:13px}.wi158-point{padding:22px;min-height:0;border-radius:15px}.wi158-point-num{margin-bottom:11px}.wi158-point h3{font-size:19px}.wi158-point p{font-size:16px;line-height:1.75}.wi158-candidates{padding:55px 0}.wi158-candidate-grid li{padding:17px;gap:12px;font-size:16px}}
@media(max-width:359px){.wi158-container{width:calc(100% - 24px)}.wi158-copy h2{font-size:27px}.wi158-point{padding:18px}.wi158-candidate-grid li{padding:14px}}
@media(prefers-reduced-motion:reduce){.wi158-point{transition:none!important}.wi158-point:hover{transform:none!important}}
