
:root{--bg:#F3E7E3;--card:#FFFAF8;--ink:#34262F;--plum:#5A3D4F;--rose:#B8767A;--soft:#EAD6D1;--line:#E2CFCA;--mute:#7A6670}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16.5px/1.75 'Noto Sans KR',system-ui,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;overflow-x:hidden;padding-bottom:60px;word-break:keep-all}
button,input,textarea{font-family:inherit}
img{max-width:100%;height:auto;display:block}a{color:inherit}
h1,h2,h3{font-family:'Noto Sans KR',sans-serif;line-height:1.25;margin:0;overflow-wrap:break-word;letter-spacing:-.03em;font-weight:800}
.wrap{width:min(1140px,100% - 40px);margin-inline:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
.topbar{display:none}
/* 플로팅 필 헤더 */
.hd{position:sticky;top:12px;z-index:50;padding:0 12px}
.hd-in{max-width:1140px;margin:12px auto 0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px 8px 18px;background:rgba(255,250,248,.92);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:999px;box-shadow:0 8px 30px -12px rgba(52,38,47,.25)}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}.logo span{display:flex;flex-direction:column;line-height:1.1}.logo b{font-size:18px;font-weight:900}.logo small{font-size:11px;color:var(--rose);font-weight:700}
.nav{display:flex;align-items:center;gap:2px;flex-wrap:wrap;justify-content:flex-end}.nav a{text-decoration:none;font-size:14.5px;font-weight:500;padding:7px 12px;border-radius:999px}.nav a:hover,.nav a[aria-current]{background:var(--soft)}
.nav .nav-cta{background:var(--ink);color:#fff;font-weight:700;margin-left:6px;padding:9px 20px}.nav .nav-cta:hover{background:var(--rose)}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer}.burger i{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;border-radius:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:10px 28px;border-radius:999px;text-decoration:none;font-weight:700;font-size:15.5px;border:2px solid transparent;text-align:center;transition:.2s}
.b-call{background:var(--ink);color:#fff}.b-call:hover{background:var(--rose)}.b-sms{background:var(--rose);color:#fff}.b-ghost,.b-ghost2{border-color:var(--ink);color:var(--ink);background:transparent}.b-ghost:hover,.b-ghost2:hover{background:var(--ink);color:#fff}
.cta{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0 0}
/* hero : 원형 이미지 */
.hero,.hero-s{position:relative;overflow:hidden}
.hero-in{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:64px 0 96px}
.eyebrow{display:inline-block;font-size:13px;font-weight:700;color:var(--plum);background:var(--soft);padding:5px 14px;border-radius:999px;margin:0 0 18px}
.hero h1{font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:clamp(44px,8vw,92px);letter-spacing:-.04em;line-height:1.02;color:var(--ink)}
.hero-s h1{font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:clamp(30px,5vw,52px);line-height:1.12}
.lead{font-size:17.5px;color:#5b4a54;margin:28px 0 0;max-width:32em}
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:26px 0 0}.chips li{background:var(--card);border:1px solid var(--line);padding:5px 14px;border-radius:999px;font-size:13.5px;color:var(--plum)}
.hero-i{position:relative;justify-self:center;width:min(430px,100%)}
.ring{display:none}
.hero-i .ph,.hs-i .ph{position:relative;z-index:1}
.hero-s .wrap{display:grid;grid-template-columns:1fr 250px;gap:44px;align-items:center;padding:34px 0 52px}.hs-i{position:relative;justify-self:center;width:min(230px,64vw)}
.ph{margin:0;position:relative}.ph img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:28px;background:#e4d3ce}.ph.land img{aspect-ratio:3/4;object-position:42% 50%}
.ph figcaption{font-size:13px;color:var(--mute);padding:8px 6px 0;line-height:1.5}
.arch img{aspect-ratio:1/1;border-radius:50%;object-position:50% 50%;border:8px solid var(--card);box-shadow:0 24px 50px -18px rgba(52,38,47,.55)}
.hero-i .arch{animation:hdfloat 6s ease-in-out infinite}.hero-i .arch img{animation:hdpop .9s cubic-bezier(.2,.8,.2,1) both}
@keyframes hdpop{from{transform:scale(.92) rotate(-6deg)}to{transform:none}}@keyframes hdfloat{50%{transform:translateY(-10px)}}.arch figcaption{display:none}
.crumb{padding:18px 0 0;font-size:13px;color:var(--mute)}.crumb ol{display:flex;gap:6px;list-style:none;padding:0;margin:0;flex-wrap:wrap}.crumb li+li::before{content:"›";margin-right:6px}.crumb a{text-decoration:none}
/* sections */
.sec{padding:104px 0}.sec.alt{background:var(--card);border-radius:48px;margin:24px 12px}
.tag{display:inline-block;font-size:11.5px;letter-spacing:.16em;color:var(--rose);font-weight:800;margin:0 0 8px}
.sec h2{font-size:clamp(25px,3.6vw,38px);margin-bottom:40px;max-width:22em}.sub{margin:-12px 0 26px;color:var(--mute)}
.sec h3{font-size:18px}.note{margin-top:22px;font-size:14px;color:var(--plum);background:var(--soft);border-radius:18px;padding:12px 18px}
.more-l{margin:48px 0 0}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.grid.g3{grid-template-columns:repeat(3,1fr)}.grid:has(> :nth-child(2):last-child){grid-template-columns:repeat(2,1fr);max-width:600px}.grid:has(> :nth-child(3):last-child){grid-template-columns:repeat(3,1fr)}
.grid>.ph{background:var(--card);padding:10px 10px 12px;border-radius:34px}.grid>.ph img{border-radius:26px}
.pairs{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 26px}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--card);padding:12px;border-radius:34px;position:relative}
.pair::after{content:"→";position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;z-index:3;border:3px solid var(--card)}
.pp{position:relative}.pp img{aspect-ratio:3/4;object-fit:cover;width:100%;border-radius:24px}
.bd{position:absolute;left:10px;top:10px;z-index:2;font-size:11px;letter-spacing:.06em;padding:3px 11px;border-radius:999px;color:#fff;font-weight:700}.bd.b{background:rgba(52,38,47,.75)}.bd.a{background:var(--rose)}
.pt{grid-column:1/-1;padding:10px 8px 4px}.pt h3{margin-bottom:4px}.pt p{margin:0;font-size:14.5px;color:var(--mute)}
/* 타임라인 */
.steps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px;padding:0;margin:0;counter-reset:s;position:relative}
.steps li{position:relative;padding:62px 4px 0;text-align:center}
.steps li::before{content:"";position:absolute;top:27px;left:-50%;right:50%;height:2px;background:repeating-linear-gradient(90deg,var(--rose) 0 6px,transparent 6px 12px)}.steps li:first-child::before{display:none}
.steps b{position:absolute;top:0;left:50%;transform:translateX(-50%);width:56px;height:56px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:17px;box-shadow:0 0 0 6px var(--bg)}
.sec.alt .steps b{box-shadow:0 0 0 6px var(--card)}
.steps h3{margin-bottom:4px}.steps p{margin:0;font-size:14.5px;color:var(--mute)}.steps.s5{grid-template-columns:repeat(5,1fr)}.steps.s4{grid-template-columns:repeat(4,1fr)}
.tbl{border-radius:30px;background:var(--card);padding:10px 14px;overflow:hidden}
table{border-collapse:separate;border-spacing:0 6px;width:100%}th{text-align:left;padding:10px 18px;font-weight:800;font-size:13px;color:var(--rose);letter-spacing:.06em}td{padding:14px 18px;font-size:15.5px;vertical-align:top;background:var(--bg)}td:first-child{border-radius:18px 0 0 18px;font-weight:800}td:last-child{border-radius:0 18px 18px 0}td a{font-weight:800;color:var(--plum);text-underline-offset:4px;text-decoration-color:var(--rose)}
.chk{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.chk li{background:var(--card);border-radius:20px;padding:15px 20px 15px 54px;position:relative}.chk li::before{content:"✓";position:absolute;left:16px;top:14px;width:26px;height:26px;border-radius:50%;background:var(--rose);color:#fff;text-align:center;line-height:26px;font-size:13px}
.chk li.tip{display:flex;flex-direction:column;gap:2px}.chk li.tip b{font-size:16px}.chk li.tip span{font-size:14.5px;color:var(--mute)}
.svc{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:auto auto;gap:16px}.svc a{display:flex;flex-direction:column;justify-content:flex-end;min-height:170px;background:var(--card);border-radius:34px;padding:26px;text-decoration:none;position:relative;transition:.25s}.svc a:first-child{grid-row:span 2;background:var(--ink);color:#fff}.svc a:first-child p{color:#d9c7cf}.svc a:nth-child(4){grid-column:2/4}
.svc a:hover{transform:translateY(-5px);background:var(--rose);color:#fff}.svc a:hover p{color:#fff}.svc a::after{content:"↗";position:absolute;right:22px;top:20px;width:38px;height:38px;border-radius:50%;background:var(--soft);color:var(--ink);display:flex;align-items:center;justify-content:center}.svc h3{font-size:21px;margin-bottom:6px}.svc p{margin:0;font-size:14.5px;color:var(--mute)}
.links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.links a{display:flex;gap:14px;align-items:center;background:var(--bg);border-radius:999px;padding:14px 22px;text-decoration:none;font-weight:700}.links a:hover{background:var(--ink);color:#fff}.links span{color:var(--rose);font-weight:900}
.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cc{display:flex;flex-direction:column;gap:2px;padding:34px;text-decoration:none;border-radius:38px}.cc b{font-size:14px;letter-spacing:.14em}.cc span{font-size:clamp(25px,4vw,36px);font-weight:900}.cc small{opacity:.8}.cc-call{background:var(--ink);color:#fff}.cc-sms{background:var(--rose);color:#fff}
.faq-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.faq-list li{background:var(--card);border-radius:28px;overflow:hidden}
.faq-list h3{margin:0;font-size:inherit}.faq-list button{width:100%;display:flex;justify-content:space-between;gap:14px;align-items:center;text-align:left;background:none;border:0;padding:18px 22px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer;min-height:60px}.faq-list button span{flex:1}
.faq-list button i{flex:none;width:30px;height:30px;border-radius:50%;background:var(--soft);position:relative}.faq-list button i::before,.faq-list button i::after{content:"";position:absolute;left:9px;right:9px;top:14px;height:2px;background:var(--ink);transition:.2s}.faq-list button i::after{transform:rotate(90deg)}.faq-list button[aria-expanded=true] i{background:var(--rose)}.faq-list button[aria-expanded=true] i::after{transform:rotate(0)}
.faq-a{padding:0 24px 22px}.faq-a p{margin:0;color:#5b4a54}.more{display:block;margin:22px auto 0;background:transparent;border:2px solid var(--ink);color:var(--ink);border-radius:999px;padding:11px 30px;font:inherit;font-weight:700;cursor:pointer}.more:hover{background:var(--ink);color:#fff}
.endcta{background:var(--ink);color:#fff;text-align:center;padding:80px 20px;border-radius:56px;margin:72px 12px 12px}.endcta h2{font-size:clamp(23px,3.6vw,34px);color:#fff;margin:0 auto 12px;max-width:none}.endcta p{color:#d9c7cf}.bigtel{display:block;font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:clamp(38px,7.5vw,70px);color:#F0C9C4;text-decoration:none;margin:10px 0;letter-spacing:-.02em}.endcta .cta{justify-content:center}.endcta .b-call{background:#F0C9C4;color:var(--ink)}.endcta .b-call:hover{background:#fff}.endcta .b-ghost{border-color:#fff;color:#fff}.endcta .b-ghost:hover{background:#fff;color:var(--ink)}
.ft{color:var(--plum);padding:36px 0 26px;font-size:14.5px}.ft-top{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.ft-logo{font-size:22px;font-weight:900;margin:0;color:var(--ink)}.ft-sub{margin:4px 0 0}.ft nav{display:flex;flex-wrap:wrap;gap:6px 18px;max-width:560px}.ft nav a{text-decoration:none}.ft nav a:hover{color:var(--rose)}
.biz{font-style:normal;margin-top:22px;padding:16px 22px;background:var(--card);border-radius:24px;display:flex;flex-wrap:wrap;gap:4px 24px}.biz p{margin:0}.biz a{font-weight:700}.copy{margin:14px 0 0;font-size:12.5px;color:var(--mute)}
.dock{position:fixed;left:12px;right:12px;bottom:10px;z-index:60;display:none;grid-template-columns:1fr 1fr;border-radius:999px;overflow:hidden;box-shadow:0 10px 30px -8px rgba(52,38,47,.5)}.dock a{padding:16px 0;text-align:center;font-weight:700;text-decoration:none;color:#fff;background:var(--ink)}.dock a+a{background:var(--rose)}
@media (max-width:1000px){.grid{grid-template-columns:repeat(2,1fr)}.grid.g3{grid-template-columns:repeat(3,1fr)}.pairs{grid-template-columns:1fr 1fr}.links{grid-template-columns:1fr 1fr}.steps.s5{grid-template-columns:repeat(5,1fr)}.svc{grid-template-columns:1fr 1fr}.svc a:first-child{grid-row:auto;grid-column:1/-1}.svc a:nth-child(4){grid-column:auto}}
@media (max-width:820px){
 .burger{display:block}.hd-in{position:relative}.nav{display:none;position:absolute;left:0;right:0;top:calc(100% + 8px);background:var(--card);border-radius:28px;flex-direction:column;align-items:stretch;padding:12px;box-shadow:0 14px 30px -10px rgba(52,38,47,.3)}.nav.open{display:flex}.nav a{padding:13px 16px;font-size:16px}.nav .nav-cta{margin:6px 0 0;text-align:center}
 .hero-in{grid-template-columns:1fr;gap:44px;padding:36px 0 56px}.hero-i{width:min(290px,72vw)}
 .hero-s .wrap{grid-template-columns:1fr;gap:34px}.hs-i{order:-1;width:min(190px,54vw)}
 .contact-cards{grid-template-columns:1fr}.chk{grid-template-columns:1fr}
 /* 타임라인 세로 */
 .steps,.steps.s4,.steps.s5{grid-template-columns:1fr;gap:6px}.steps li{padding:6px 4px 14px 76px;text-align:left;min-height:64px}.steps li::before{top:-30px;bottom:auto;left:27px;right:auto;width:2px;height:40px;background:repeating-linear-gradient(180deg,var(--rose) 0 6px,transparent 6px 12px)}.steps b{left:0;transform:none;top:2px}
 .dock{display:grid}.sec{padding:68px 0}.sec.alt{border-radius:32px}
 table,thead,tbody,tr,td{display:block}thead{position:absolute;left:-9999px}table{border-spacing:0}tr{background:var(--bg);border-radius:18px;padding:8px 0;margin:6px 0}td{background:none!important;border-radius:0!important;padding:3px 18px}td::before{content:attr(data-l);display:block;font-size:11.5px;color:var(--rose);font-weight:800}
}
@media (max-width:600px){.grid.g3{grid-template-columns:1fr 1fr}.grid.g3>:first-child{grid-column:1/-1}.pairs{grid-template-columns:1fr}.svc{grid-template-columns:1fr}.links{grid-template-columns:1fr}body{font-size:16px}.grid:has(> :nth-child(3):last-child){grid-template-columns:1fr 1fr}.endcta{border-radius:36px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
