/*
Theme Name: 스마일프로
Theme URI: https://smileproplus.com
Description: 스마일프로 전용 초경량 테마. Astra·플러그인 불필요. 카드그리드 홈 + 정찰차단 내장.
Author: 에스앤비안과
Version: 1.0
*/
:root{ --blue:#2f6fb2; --navy:#0f4c81; --ink:#222; --muted:#5a5a5a; --line:#eaeaea; --bg:#fff; }
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
     font-family:'Noto Sans KR','Malgun Gothic',system-ui,sans-serif;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}

.site-head{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:20}
.site-head .row{display:flex;align-items:center;justify-content:space-between;height:66px}
.brand{font-size:22px;font-weight:800;color:var(--navy);letter-spacing:-.5px}
.nav{display:flex;align-items:center;gap:26px}
.nav a{font-size:15px;font-weight:600;color:#333}
.nav a.active{color:var(--blue)}
.nav .cta-btn{background:var(--blue);color:#fff;padding:9px 18px;border-radius:24px;font-weight:700}
.nav .cta-btn:hover{background:var(--navy)}

.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 30px;margin:44px 0 10px}
.ccard{display:block;text-align:center}
.ccard .thumb{display:block;position:relative;border-radius:14px;overflow:hidden;border:3px solid var(--blue);aspect-ratio:1/1;background:#eef3f9}
.ccard .thumb::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
   background:radial-gradient(120px 120px at 0 0,rgba(47,111,178,.55),transparent 70%),
             radial-gradient(120px 120px at 100% 0,rgba(15,76,129,.5),transparent 70%)}
.ccard .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ccard .thumb .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#8aa0bd;font-size:13px;text-align:center;padding:10px}
.ccard .label{display:inline-block;margin-top:12px;font-size:16px;font-weight:700;color:var(--navy);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#cdd8e6}
.ccard:hover .label{color:var(--blue)}

.sec{margin:52px 0}
.sec h2{font-size:22px;font-weight:800;color:var(--navy);text-align:center;margin:0 0 22px}
.faq details{border-bottom:1px solid var(--line);padding:14px 4px}
.faq summary{font-weight:700;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"Q. ";color:var(--blue);font-weight:800}
.faq p{margin:10px 0 2px;color:#444}

/* 본문(고정페이지·글) — 벽 이미지 + 원고 */
.entry{padding:30px 0}
.entry h1{font-size:26px;color:var(--navy);font-weight:800;margin:0 0 18px}
.entry img{max-width:100%;height:auto;border-radius:8px;display:block;margin:0 auto 6px}
.entry h2{font-size:20px;color:var(--navy);margin:30px 0 10px}
.entry .kw{color:var(--blue);font-weight:700}

.tags{color:#9aa4b2;font-size:14px;text-align:center;line-height:2.1;margin:30px 0}
.tags b{color:var(--blue);font-weight:600}
.ilinks{text-align:center;margin:8px 0 4px}
.ilinks a{color:var(--blue);font-weight:600;margin:0 6px;text-decoration:underline;text-underline-offset:3px}
.ilinks .sep{color:#c9c9c9}

.site-foot{border-top:1px solid var(--line);background:#fbfbfb;margin-top:50px}
.site-foot .row{height:80px;display:flex;align-items:center;justify-content:flex-end;color:#9aa4b2;font-size:13px}

@media(max-width:820px){.grid{grid-template-columns:repeat(2,1fr)}.nav{gap:14px}.nav a{font-size:13px}.brand{font-size:19px}}
@media(max-width:520px){.grid{grid-template-columns:1fr}}
