@font-face{font-family:"Pretendard";src:url(/fonts/pretendard-sub-v7.woff2) format("woff2");font-weight:100 900;font-display:swap}
/* v7 2026-10-18 — 심플: 흰 바탕·검정 글씨·파랑 한 색(애플), 굵은 숫자(나이키), 따뜻한 회색(룰루레몬) */
:root{--ink:#111;--ink2:#2B2B2B;--g1:#5E5E63;--g2:#8E8E93;--line:#E6E4DF;--soft:#F6F4F0;--blue:#2563EB;--r:22px;--pad:72px}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:60px}
body{font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;color:var(--ink);background:#fff;font-size:17px;line-height:1.65;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;padding-bottom:76px}
a{color:inherit}
img,svg{display:block}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
.skip{position:absolute;left:-9999px;top:8px;background:#fff;color:var(--ink);padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:6px}
.dbr{display:none}
.muted{color:var(--g1)}.small{font-size:14px}
/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.82);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.06)}
.nav-in{height:56px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink)}
.brand .sym{width:26px;height:26px}
.bt{display:flex;flex-direction:column;line-height:1}
.bt b{font-size:16px;font-weight:800;letter-spacing:-.03em}
.bt small{font-size:9.5px;font-weight:600;letter-spacing:.22em;color:var(--g2);margin-top:4px}
.links{display:none;gap:30px;font-size:14px}
.links a{text-decoration:none;color:var(--g1)}.links a:hover{color:var(--ink)}
/* buttons */
.pill{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 26px;border-radius:999px;font-weight:700;font-size:16px;text-decoration:none;border:0;cursor:pointer;font-family:inherit;letter-spacing:-.01em;white-space:nowrap;transition:background .2s,transform .2s}
.pill:active{transform:scale(.98)}
.pill.sm{height:36px;padding:0 16px;font-size:14px}
.pill-ink{background:var(--ink);color:#fff}.pill-ink:hover{background:#000}
.pill-white{background:#fff;color:var(--ink)}.pill-white:hover{background:#EDEDED}
.pill-line{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6)}
.pill-line-ink{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px rgba(0,0,0,.22)}.pill-line-ink:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.pill.wide{width:100%}
.cta-row{display:flex;gap:10px;flex-wrap:wrap}
/* hero */
.hero{background:var(--soft);padding:56px 0 40px}
.kicker{font-size:14px;font-weight:700;color:var(--blue);margin-bottom:14px;letter-spacing:-.01em}
.hero h1{font-size:54px;line-height:1.04;font-weight:900;letter-spacing:-.055em}
.h1-top{display:block;font-size:19px;font-weight:700;letter-spacing:-.02em;color:var(--g1);margin-bottom:10px;line-height:1.3}
.h1-sub{display:inline-block;font-size:32px;font-weight:800;letter-spacing:-.04em;margin-top:8px;color:var(--ink2)}
.vat{display:inline-block;font-size:14px;font-weight:600;letter-spacing:0;color:var(--g1);margin-left:6px;vertical-align:.45em}
.hero .sub{margin:20px 0 28px;color:var(--g1);font-size:17px;max-width:34em}
.facts{list-style:none;display:grid;gap:0;margin-top:36px;border-top:1px solid var(--line)}
.facts li{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:15px}
.facts b{font-weight:700}.facts span{color:var(--g1);text-align:right}
/* sections */
.sec{padding:var(--pad) 0}
.sec.soft{background:var(--soft)}
.sec.dark{background:#111;color:#fff}
.eyebrow{font-size:14px;font-weight:700;color:var(--blue);margin-bottom:10px}
.dark .eyebrow{color:#8FB2FF}
h2{font-size:34px;line-height:1.18;font-weight:800;letter-spacing:-.045em}
.lead{margin-top:14px;color:var(--g1);max-width:38em}
/* plans */
.plans{display:grid;gap:14px;margin-top:34px}
.plan{position:relative;border-radius:var(--r);padding:28px 24px;background:var(--soft);display:flex;flex-direction:column}
.plan.main{background:#111;color:#fff}
.ptag{align-self:flex-start;font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;background:var(--blue);color:#fff;margin-bottom:14px}
.ptag.soft{background:#fff;color:var(--ink)}.ptag.wait{background:#fff;color:var(--g1)}
.plan h3{font-size:20px;font-weight:700;letter-spacing:-.03em}
.pprice{margin:10px 0 2px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.pprice b{font-size:44px;font-weight:900;letter-spacing:-.05em;line-height:1.1}
.pprice span{font-size:14px;color:var(--g1)}
.plan.main .pprice span,.plan.main .pex{color:#B4B4BA}
.pex{font-size:15px;color:var(--g1)}
.pfeat{list-style:none;margin:18px 0 22px;font-size:15px;flex:1}
.pfeat li{padding:8px 0 8px 22px;position:relative;border-top:1px solid rgba(0,0,0,.07)}
.plan.main .pfeat li{border-color:rgba(255,255,255,.12)}
.pfeat li:before{content:"";position:absolute;left:2px;top:15px;width:10px;height:6px;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg)}
.plan.main .pfeat li:before{border-color:#8FB2FF}
.more{margin-top:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.more summary,.faq summary{list-style:none;cursor:pointer;padding:20px 36px 20px 0;font-weight:700;font-size:17px;letter-spacing:-.02em;position:relative}
.more summary::-webkit-details-marker,.faq summary::-webkit-details-marker{display:none}
.more summary:after,.faq summary:after{content:"";position:absolute;right:6px;top:50%;width:9px;height:9px;border-right:1.8px solid var(--g1);border-bottom:1.8px solid var(--g1);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
.more[open] summary:after,.faq details[open] summary:after{transform:translateY(-30%) rotate(-135deg)}
.more>p{color:var(--g1);font-size:15px;max-width:44em}
.factors{list-style:none;display:grid;gap:8px;margin:16px 0}
.factors li{background:var(--soft);border-radius:14px;padding:12px 16px;font-size:15px;display:flex;flex-direction:column}
.factors b{font-weight:700}.factors span{color:var(--g1);font-size:14px}
.more .small{padding-bottom:18px}
/* promise */
.promise{list-style:none;display:grid;gap:0;margin-top:30px}
.promise li{padding:22px 0;border-top:1px solid rgba(255,255,255,.14);display:grid;grid-template-columns:44px 1fr;column-gap:8px}
.promise span{grid-row:span 2;font-size:14px;font-weight:700;color:#8FB2FF;padding-top:3px}
.promise h3{font-size:19px;font-weight:700;letter-spacing:-.03em}
.promise p{color:#B4B4BA;font-size:15px;margin-top:4px}
/* scope */
.scope2{display:grid;gap:14px;margin-top:30px}
.sheet{border-top:2px solid var(--ink)}
.sheet div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}
.sheet dt{font-weight:700;font-size:15px}.sheet dd{color:var(--g1);font-size:15px}
.excl{background:var(--soft);border-radius:var(--r);padding:24px}
.excl h3{font-size:18px;font-weight:700;letter-spacing:-.03em}
.xlist{list-style:none;margin:12px 0 14px}
.xlist li{padding:7px 0 7px 22px;position:relative;font-size:15px}
.xlist li:before{content:"";position:absolute;left:3px;top:50%;width:11px;height:1.8px;background:#C62828}
.excl p{font-size:14px;color:var(--g1)}
/* steps */
.steps{list-style:none;display:grid;gap:10px;margin-top:30px}
.steps li{background:#fff;border-radius:18px;padding:20px 22px}
.steps .no{font-size:13px;font-weight:800;color:var(--blue)}
.steps h3{font-size:18px;font-weight:700;letter-spacing:-.03em;margin:4px 0 4px}
.steps p{font-size:15px;color:var(--g1)}
.area-line{margin-top:26px;font-size:15px;color:var(--g1)}.area-line b{color:var(--ink)}
/* quote */
.quote-in{display:grid;gap:28px}
.next{display:none}
.form{background:var(--soft);border-radius:var(--r);padding:24px 20px}
.f{margin-bottom:18px}
.f.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form label{display:block;font-size:14px;font-weight:700;margin-bottom:7px}
.form input:not([type=checkbox]):not([type=radio]),.form select{width:100%;height:52px;border-radius:14px;border:1px solid #DAD7D1;background:#fff;padding:0 16px;font-size:16px;font-family:inherit;color:var(--ink);-webkit-appearance:none;appearance:none}
.form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%235E5E63' stroke-width='1.6' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.form input:focus,.form select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(17,17,17,.1)}
.form [aria-invalid=true]{border-color:#C62828!important}
.hint{font-size:13px;color:var(--g1);margin-top:6px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
fieldset.f{border:0}
fieldset.f legend{font-size:14px;font-weight:700;margin-bottom:7px}
.plan-pick .quick{margin:0}
.plan-pick label{margin:0}
.plan-pick input{position:absolute;opacity:0;pointer-events:none}
.plan-pick span{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:999px;border:1px solid #DAD7D1;background:#fff;font-size:14px;font-weight:600;cursor:pointer}
.plan-pick input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.plan-pick input:focus-visible+span{outline:3px solid var(--blue);outline-offset:2px}
.quick{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:-6px 0 18px}
.f .quick{margin:10px 0 0}
.quick>span{font-size:13px;color:var(--g1);margin-right:2px}
.quick button{height:38px;padding:0 14px;border-radius:999px;border:1px solid #DAD7D1;background:#fff;font:inherit;font-size:14px;font-weight:600;color:var(--ink2);cursor:pointer}
.quick button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.consent{margin:6px 0 16px;font-size:15px}
.chk{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-weight:600}
.chk input{width:20px;height:20px;margin-top:3px;accent-color:var(--ink);flex:none}
.consent details{margin:8px 0 0 30px;color:var(--g1);font-size:14px}
.consent summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px;width:max-content}
.consent ul{margin:8px 0 8px 18px;line-height:1.6}
.consent a{font-weight:600;color:var(--ink)}
.err{color:#C62828;font-size:14px;font-weight:600;min-height:1px;margin-bottom:8px}
.done{margin-top:16px;background:#fff;border-radius:16px;padding:20px}
.done b{font-size:19px;letter-spacing:-.02em}
.done p{margin-top:6px;color:var(--g1);font-size:15px}
.donelist{margin:10px 0 0 18px;font-size:14px;color:var(--g1)}
.form.sent .f,.form.sent .consent,.form.sent #f-btn,.form.sent .quick{display:none}
.form.sent .done{margin-top:0}
/* faq */
.narrow{max-width:780px}
.faq{margin-top:28px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{font-weight:600}
.faq details p{padding:0 0 22px;color:var(--g1);font-size:16px;max-width:40em}
/* band + foot */
.band{background:#111;color:#fff;padding:64px 0}
.band h2{font-size:30px;margin-bottom:24px}
.foot{padding:40px 0 30px;font-size:14px;color:var(--g1);border-top:1px solid var(--line)}
.foot p{margin-bottom:6px}
.foot-brand{font-weight:800;color:var(--ink);font-size:16px;letter-spacing:-.02em}
.foot a{text-decoration:none}.foot .staff{color:var(--g2)}
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 2fr;gap:8px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.86);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-top:1px solid rgba(0,0,0,.06)}
.mbar .pill{height:50px}
/* motion */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
@media (max-width:380px){.hero h1{font-size:46px}.h1-sub{font-size:28px}}
@media (min-width:760px){
  :root{--pad:112px}
  body{padding-bottom:0}
  .dbr{display:inline}
  .links{display:flex}
  .hero{padding:110px 0 64px}
  .hero h1{font-size:96px}
  .h1-top{font-size:22px}
  .h1-sub{font-size:52px}
  .vat{font-size:18px}
  .hero .sub{font-size:20px}
  .facts{grid-template-columns:repeat(3,1fr);gap:24px;border-top:0;margin-top:64px}
  .facts li{flex-direction:column;border-bottom:0;border-top:1px solid var(--ink);padding-top:16px;gap:2px}
  .facts span{text-align:left}
  h2{font-size:52px}
  .lead{font-size:19px}
  .plans{grid-template-columns:1.25fr 1fr 1fr;margin-top:48px}
  .plan{padding:36px 30px}
  .pprice b{font-size:52px}
  .factors{grid-template-columns:repeat(3,1fr)}
  .promise{grid-template-columns:repeat(4,1fr);gap:28px}
  .promise li{grid-template-columns:1fr;padding-top:24px;border-top:1px solid rgba(255,255,255,.3)}
  .promise span{grid-row:auto;margin-bottom:28px}
  .scope2{grid-template-columns:1.5fr 1fr;gap:28px}
  .steps{grid-template-columns:repeat(4,1fr);gap:14px}
  .steps li{padding:26px 24px}
  .quote-in{grid-template-columns:1fr 1.1fr;gap:56px;align-items:start}
  .quote-copy{position:sticky;top:96px}
  .form{padding:36px}
  .band h2{font-size:44px}
  .mbar{display:none}
}
/* ===== v3 2026-10-18 — 고급·절제: 흰/웜그레이/블랙, 얇은 선, 넓은 여백, 굵기 대비. 색 카드·칩·아이콘 장식 없음 ===== */
:root{--ink:#141414;--g1:#6B6862;--g2:#9A968F;--line:#DEDAD3;--soft:#F4F2EE;--pad:96px}
body{letter-spacing:-.005em}
.nav{background:rgba(255,255,255,.92);border-bottom:1px solid var(--line)}
.brand .sym path{stroke:currentColor}
.bt b{font-weight:600;letter-spacing:-.02em}
.links a{color:var(--ink);font-weight:400}
.pill{border-radius:2px;font-weight:500;letter-spacing:0;height:50px;padding:0 28px;transition:background .2s,color .2s}
.pill:active{transform:none}
.pill.sm{height:34px;padding:0 14px;font-size:13px}
.pill-ink{background:var(--ink)}
.pill-line-ink{box-shadow:inset 0 0 0 1px var(--ink)}
.pill-line-ink:hover{background:var(--ink);color:#fff}
.pill-line{box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.hero{background:#fff;padding:72px 0 56px;border-bottom:1px solid var(--line)}
.hero h1{font-weight:600;letter-spacing:-.045em}
.h1-top{font-size:15px;font-weight:500;color:var(--g1);letter-spacing:0;margin-bottom:18px}
.h1-sub{font-weight:300;color:var(--ink);letter-spacing:-.03em}
.vat{font-weight:400}
.hero .sub{color:var(--g1)}
.facts{border-top:1px solid var(--line)}
.facts b{font-weight:500}
.sec.soft{background:var(--soft)}
h2{font-weight:600;letter-spacing:-.04em;font-size:30px}
.lead{font-weight:400}
.eyebrow{display:none}
/* 상품: 색 카드 대신 얇은 선으로 나눈 세 칸 */
.plans{gap:0;border-top:1px solid var(--ink)}
.plan,.plan.main{background:transparent;color:var(--ink);border-radius:0;padding:28px 0 32px;border-bottom:1px solid var(--line)}
.ptag,.ptag.soft,.ptag.wait{background:none;color:var(--g1);padding:0;border-radius:0;font-size:12px;font-weight:500;letter-spacing:.08em;margin-bottom:10px}
.plan h3{font-weight:500;font-size:18px}
.pprice b{font-weight:600;font-size:40px;letter-spacing:-.04em}
.plan.main .pprice span,.plan.main .pex{color:var(--g1)}
.pfeat li,.plan.main .pfeat li{padding:9px 0;border-top:1px solid var(--line)}
.pfeat li:before{display:none}
.plan .pill{width:auto;align-self:flex-start}
.plan.main .pill-white{background:var(--ink);color:#fff}
.more{border-color:var(--line)}
.more summary,.faq summary{font-weight:500}
.factors{gap:0;border-top:1px solid var(--line)}
.factors li{background:none;border-radius:0;padding:12px 0;border-bottom:1px solid var(--line)}
.factors b{font-weight:500}
/* 약속: 웜그레이 바탕, 번호+얇은 선 */
.promise li{border-top:1px solid var(--line)}
.promise span{color:var(--g2);font-weight:400}
.promise h3{font-weight:500}
.promise p{color:var(--g1)}
/* 범위 */
.sheet{border-top:1px solid var(--ink)}
.sheet dt{font-weight:500}
.excl{background:none;border-radius:0;padding:20px 0 0;border-top:1px solid var(--ink)}
.excl h3{font-weight:500}
.xlist li{padding-left:0}
.xlist li:before{display:none}
.xlist li{border-bottom:1px solid var(--line)}
/* 진행 */
.steps{gap:0;border-top:1px solid var(--ink)}
.steps li{background:none;border-radius:0;padding:20px 0;border-bottom:1px solid var(--line)}
.steps .no{color:var(--g2);font-weight:400}
.steps h3{font-weight:500}
/* 폼: 얇은 선, 각진 모서리 */
.form{background:#fff;border:1px solid var(--line);border-radius:0}
.form label,fieldset.f legend{font-weight:500}
.form input:not([type=checkbox]):not([type=radio]),.form select{border-radius:0;border:0;border-bottom:1px solid #BDB8B0;padding:0 2px;height:48px;background-color:transparent}
.form input:focus,.form select:focus{box-shadow:none;border-bottom-color:var(--ink)}
.plan-pick span,.quick button{border-radius:0;font-weight:400;height:36px;border-color:var(--line)}
.done{border-radius:0;background:var(--soft)}
.faq{border-top:1px solid var(--ink)}
.band{background:var(--ink)}
.band h2{font-weight:500}
.foot-brand{font-weight:600}
.mbar .pill{height:48px}
.reveal{transform:none;transition:opacity .9s ease}
@media (min-width:760px){
  :root{--pad:140px}
  .hero{padding:140px 0 96px}
  .hero h1{font-size:92px}
  .h1-sub{font-size:48px}
  h2{font-size:40px}
  .plans{grid-template-columns:repeat(3,1fr)}
  .plan,.plan.main{padding:36px 36px 40px;border-bottom:0;border-left:1px solid var(--line)}
  .plan:first-child{padding-left:0;border-left:0}
  .factors{grid-template-columns:repeat(3,1fr);column-gap:32px}
  .promise li{border-top:1px solid var(--ink)}
  .steps{gap:32px;border-top:0}
  .steps li{border-top:1px solid var(--ink);border-bottom:0}
  .facts li{border-top:1px solid var(--ink)}
  .form{padding:40px}
}
/* ===== v4 2026-10-18 — 타이포 리듬·대비(AA)·짧은 폼·하단 고정 버튼·절제된 움직임 ===== */
:root{--g2:#6B6862}
body{font-size:17px;line-height:1.75;font-feature-settings:"tnum" 1}
h1,h2,h3{text-wrap:balance}
p,li,dd{text-wrap:pretty}
h2{font-size:28px;line-height:1.25;margin-bottom:0}
.lead{margin-top:12px;font-size:17px;line-height:1.7;max-width:32em}
.hero .sub{max-width:30em;line-height:1.7}
.h1-top{text-transform:none}
.pprice b{font-variant-numeric:tabular-nums}
.sec{padding:var(--pad) 0}
.sec h2+.lead+*,.sec h2+*{margin-top:28px}
.sec h2+.lead{margin-top:12px}
.faq summary{line-height:1.5}
.faq details p{line-height:1.75}
/* 폼 */
.f.two{grid-template-columns:1fr 1fr;gap:16px}
.seg-pick .quick{margin:0}
.seg-pick label{margin:0}
.seg-pick input{position:absolute;opacity:0;pointer-events:none}
.seg-pick span{display:inline-flex;align-items:center;height:44px;padding:0 14px;border:1px solid var(--line);background:#fff;font-size:14px;cursor:pointer}
.seg-pick input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.seg-pick input:focus-visible+span,.plan-pick input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}
.plan-pick span,.quick button{height:44px}
.form [aria-invalid=true]+span{border-color:#C62828}
.est{margin-top:12px;font-size:15px;color:var(--ink);min-height:0}
.est:empty{display:none}
.est b{font-weight:600}
.est span{display:block;margin-top:2px;font-size:13px;color:var(--g1);line-height:1.55}
.hint{color:var(--g1)}
.form input::placeholder{color:#8A857D}
/* 모바일 하단 고정: 전화·견적 */
.mbar{grid-template-columns:1fr 1.6fr;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--line)}
.mbar .pill{height:48px;font-size:15px}
/* 움직임: 처음 보일 때 한 번, 짧게 */
.reveal{transition:opacity .5s ease}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:0}
@media (min-width:760px){
  h2{font-size:40px;line-height:1.2}
  .lead{font-size:18px}
  .sec h2+.lead+*,.sec h2+*{margin-top:48px}
}
/* ===== v5 2026-10-18 — 가독성: 본문 17px·줄간격 1.7, 진한 글자색, 짧은 문장, 큰 숫자, 뚜렷한 위계 ===== */
:root{--ink:#111;--g1:#45423D;--g2:#45423D;--line:#D9D5CD}
body{font-size:17px;line-height:1.7;color:var(--ink)}
.small,.muted.small{font-size:15px}
.muted{color:var(--g1)}
h2{font-size:30px;font-weight:700;letter-spacing:-.035em}
h3{letter-spacing:-.025em}
.lead{font-size:18px;color:var(--g1);line-height:1.65}
.hero .sub{font-size:19px;color:var(--ink);line-height:1.6}
.h1-top{font-size:16px;color:var(--ink);font-weight:600}
.vat{font-size:15px;color:var(--g1)}
.facts li{flex-direction:column;align-items:flex-start;gap:0;padding:14px 0;font-size:17px}
.facts b{font-weight:600}
.facts span{text-align:left;color:var(--g1);font-size:15px}
.ptag,.ptag.soft,.ptag.wait{font-size:13px;color:var(--g1)}
.plan h3{font-size:20px;font-weight:600}
.pprice b{font-size:52px;font-weight:700;letter-spacing:-.04em}
.pprice span{font-size:15px;color:var(--g1)}
.pex{font-size:16px;color:var(--g1)}
.pfeat{font-size:17px}
.more summary,.faq summary{font-size:18px;font-weight:600}
.more>p,.factors li{font-size:16px}
.factors span{font-size:15px;color:var(--g1)}
.promise h3,.steps h3{font-size:20px;font-weight:600}
.promise p,.steps p{font-size:17px;color:var(--g1)}
.promise span,.steps .no{font-size:15px;color:var(--g1);font-weight:600}
.sheet dt{font-size:17px;font-weight:600}.sheet dd{font-size:16px;color:var(--ink)}
.excl h3{font-size:20px;font-weight:600}.xlist li{font-size:17px}.excl p{font-size:15px;color:var(--g1)}
.area-line{font-size:17px;color:var(--ink)}
.form label,fieldset.f legend{font-size:16px;font-weight:600}
.form input:not([type=checkbox]):not([type=radio]),.form select{font-size:17px}
.hint,.est span{font-size:14px;color:var(--g1)}
.est{font-size:17px}.est b{font-size:20px;font-weight:700}
.consent{font-size:16px}
.faq details p{font-size:17px;color:var(--ink);line-height:1.7}
.foot{font-size:15px;color:var(--g1)}
.mbar .pill{font-size:16px;font-weight:600}
@media (min-width:760px){
  body{font-size:18px}
  h2{font-size:44px}
  .lead{font-size:20px}
  .hero .sub{font-size:22px}
  .h1-top{font-size:18px}
  .pprice b{font-size:60px}
  .facts li{font-size:18px}
}

/* ===== v6 2026-10-18 — 사진(무료 라이선스, 현장 사진으로 교체 예정). 글씨는 사진 밖에 두어 대비 유지 ===== */
.ph{margin:0;position:relative;background:#EDEBE6;overflow:hidden}
.ph img{display:block;width:100%;height:auto;object-fit:cover}
.ph-3x2 img{aspect-ratio:3/2}
.ph-16x9 img{aspect-ratio:4/3}
.ph figcaption{position:absolute;right:10px;bottom:10px;font-size:12px;line-height:1;letter-spacing:0;color:#2A2824;background:rgba(255,255,255,.88);padding:5px 7px;border-radius:2px}
.ph-wrap{padding-left:0;padding-right:0}
.hero .ph-wrap{margin-top:40px}
.ph-between{margin-top:0;margin-bottom:0}
@media (min-width:768px){
  .ph-wrap{padding-left:22px;padding-right:22px}
  .ph-16x9 img{aspect-ratio:16/9}
  .hero .ph-wrap{margin-top:56px}
  .ph figcaption{right:14px;bottom:14px}
}
@media (prefers-reduced-motion:no-preference){.ph img{transition:opacity .4s ease}}
/* v6 히어로: 모바일은 사진 위·글 아래, 데스크톱은 글 왼쪽·사진 오른쪽 (글씨는 사진 위에 올리지 않음) */
.hero{padding-top:0}
.hero-in{display:grid;grid-template-areas:"ph" "copy" "facts"}
.hero-copy{grid-area:copy;padding-top:36px}
.hero-ph{grid-area:ph;margin:0 -22px}
.hero .facts{grid-area:facts}
@media (min-width:1024px){
  .hero{padding-top:96px}
  .hero-in{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);grid-template-areas:"copy ph" "facts facts";column-gap:56px;align-items:center}
  .hero-copy{padding-top:0}
  .hero-ph{margin:0}
  .hero h1{font-size:76px}
}
/* v6b 사진 추가: 청소 범위 항목별 작은 사진 (dd 안에 이미지 + 글) */
.sheet div{grid-template-columns:96px 1fr;grid-template-areas:"img dt" "img dd";column-gap:16px;row-gap:4px;align-items:start}
.sheet dt{grid-area:dt;align-self:end}
.sheet dd{display:contents}
.sheet dd span{grid-area:dd;font-size:16px;color:var(--ink);line-height:1.6}
.sheet .sthumb{grid-area:img;width:96px;height:72px;object-fit:cover;display:block;background:#EDEBE6}
.ph-note{font-size:13px;color:#45423D;margin:10px 0 0}
.scope2 .ph-note{grid-column:1/-1;order:3}
@media (min-width:768px){.sheet div{grid-template-columns:120px 1fr}.sheet .sthumb{width:120px;height:90px}}
@media (min-width:1024px){.ph-between .ph-16x9 img{aspect-ratio:21/9}}

/* ===== v7 2026-10-19 — 심플: 첫 화면에 '무료 견적 받기' 하나(이름·연락처만 필수), 섹션 8→6, 짧은 문구, 큰 글씨·진한 대비 ===== */
.navtel{font-size:16px;font-weight:600;color:var(--ink);text-decoration:none;letter-spacing:0}
.hero7{padding:28px 0 0}
.hero7-in{display:grid;gap:32px}
.hero7 h1{font-size:50px;line-height:1.06;font-weight:700;letter-spacing:-.05em;color:var(--ink)}
.hero7 .h1-top{display:block;font-size:17px;font-weight:600;letter-spacing:-.01em;margin-bottom:10px}
.hero7 .vat{font-size:15px;font-weight:500;letter-spacing:0;color:#45423D;margin-left:4px}
.hero7 .h1-sub{display:inline-block;font-size:26px;font-weight:500;letter-spacing:-.03em;color:var(--ink);margin-top:10px}
.qf{margin-top:24px;padding:0;border:0;background:none}
.qf .f{margin-bottom:14px}
.qf label{font-size:16px;font-weight:600;color:var(--ink);margin-bottom:4px}
.qf input:not([type=checkbox]):not([type=radio]){height:54px;font-size:19px;border-bottom:1.5px solid #8E8A83}
.qf input::placeholder{color:#8A867F}
.qf .chk{font-size:16px;font-weight:500;margin:6px 0 10px}
.qf .chk a{color:var(--ink);font-weight:600;text-underline-offset:3px}
.pill.big{height:58px;font-size:18px;font-weight:600}
.qnote{font-size:15px;color:#45423D;margin:10px 0 0;text-align:center}
.opt,.agree-more{margin-top:18px;border-top:1px solid var(--line)}
.opt>summary,.agree-more>summary{list-style:none;cursor:pointer;padding:14px 0;font-size:16px;font-weight:600;color:var(--ink);display:flex;justify-content:space-between;align-items:center}
.opt>summary::-webkit-details-marker,.agree-more>summary::-webkit-details-marker{display:none}
.opt>summary::after,.agree-more>summary::after{content:"+";font-size:22px;font-weight:300}
.opt[open]>summary::after,.agree-more[open]>summary::after{content:"−"}
.opt>summary span{font-weight:400;color:#45423D;margin-left:4px;margin-right:auto}
.agree-more>summary{font-size:14px;font-weight:500;color:#45423D;padding:10px 0}
.agree-more ul{margin:0 0 8px 18px;font-size:14px;color:#2A2824;line-height:1.6}
.agree-more a{font-size:14px;color:var(--ink)}
.qf .quick{margin:6px 0 0;gap:6px}
.qf .quick label{margin:0}
.qf .quick input{position:absolute;opacity:0;width:1px;height:1px}
.qf .quick span{display:inline-flex;align-items:center;height:44px;padding:0 16px;border:1px solid #C9C4BB;font-size:16px;font-weight:500;cursor:pointer;background:#fff;color:var(--ink)}
.qf .quick input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.qf .quick input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.qf fieldset.f legend{font-size:16px;font-weight:600;margin-bottom:4px}
.qf .est{font-size:16px;margin-top:8px}.qf .est span{display:block;font-size:14px;color:#45423D}
.qf.sent .f,.qf.sent .chk,.qf.sent #f-btn,.qf.sent .qnote,.qf.sent .opt,.qf.sent .agree-more{display:none}
.qf .done{padding:22px;background:var(--soft)}
.qf .done b{font-size:22px}.qf .done p{font-size:16px;color:#2A2824}
.hero7-ph{margin:0 -22px}
.hero7-ph img{aspect-ratio:3/2}
.sec7{padding:64px 0 0}
.sec7 h2{font-size:30px;font-weight:700;letter-spacing:-.04em;margin-bottom:20px}
.plans7{display:grid;gap:0;border-top:2px solid var(--ink)}
.p7{padding:22px 0;border-bottom:1px solid var(--line)}
.p7 h3{font-size:21px;font-weight:700;letter-spacing:-.03em}
.p7 h3 small{font-size:15px;font-weight:500;color:#45423D;margin-left:6px;letter-spacing:0}
.pp{margin:6px 0 0;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}
.pp b{font-size:44px;font-weight:700;letter-spacing:-.04em;line-height:1.1}
.pp.sm b{font-size:28px}
.pp span{font-size:15px;color:#45423D}
.pd{font-size:17px;color:#2A2824;margin:6px 0 0}
.pk{font-size:18px;line-height:1.6;color:var(--ink);margin:8px 0 0;font-weight:500}
.tlink{display:inline-block;margin-top:12px;font-size:17px;font-weight:600;color:var(--ink);text-underline-offset:4px}
.gal{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:56px;padding:0 6px}
.gal .ph img{aspect-ratio:4/3}
.gal .ph figcaption{right:6px;bottom:6px;font-size:11px;padding:4px 6px}
.pr7{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.pr7 li{padding:16px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column}
.pr7 b{font-size:19px;font-weight:700;letter-spacing:-.02em}
.pr7 span{font-size:16px;color:#45423D}
.area7{font-size:17px;margin-top:16px;color:var(--ink)}
.excl7{font-size:16px;color:#2A2824;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.excl7 b{display:block;font-size:17px;color:var(--ink);margin-bottom:2px}
#faq{padding-bottom:64px}
.mbar1{position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.92);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-top:1px solid rgba(0,0,0,.08);transform:translateY(0);transition:transform .25s}
.mbar1 .pill{height:52px}
@media (max-width:380px){.hero7 h1{font-size:44px}.hero7 .h1-sub{font-size:23px}}
@media (min-width:768px){
  .gal{grid-template-columns:repeat(3,1fr);padding:0 22px;gap:10px}
  .sec7{padding-top:96px}
  .sec7 h2{font-size:40px}
  .plans7{grid-template-columns:repeat(3,1fr);gap:32px;border-top:0}
  .p7{border-top:2px solid var(--ink);border-bottom:0}
  .p7.main{border-top-width:4px}
}
@media (min-width:1024px){
  body{padding-bottom:0}
  .mbar1{display:none}
  .hero7{padding-top:72px}
  .hero7-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
  .hero7 h1{font-size:72px}
  .hero7 .h1-sub{font-size:34px}
  .hero7-ph{margin:0}
  .hero7-ph img{aspect-ratio:4/5}
  .qf{max-width:440px}
}
/* v7b: 모바일 첫 화면에 사진(낮은 띠) + 폼, 폼이 보이는 동안 하단 버튼 숨김(버튼 하나) */
.hero7{padding-top:0}
.hero7-in{gap:0}
.hero7-ph{order:-1}
.hero7-ph img{aspect-ratio:21/9}
.hero7-copy{padding-top:22px}
.hero7 .h1-top{margin-bottom:8px}
.p7 .pk+.pp{margin-top:12px}
.mbar1.off{transform:translateY(110%)}
@media (min-width:1024px){.hero7-in{gap:64px}.hero7-ph{order:2}.hero7-ph img{aspect-ratio:4/5}.hero7-copy{padding-top:0}}
@media (min-width:1024px){.hero7{padding-top:72px}}

/* Phone-first site, 2026-11-10 */
.reveal{opacity:1!important;transform:none!important;visibility:visible!important}.contact-panel{display:flex;flex-direction:column;gap:16px}.contact-panel h2{font-size:clamp(24px,3vw,34px);line-height:1.35;margin:0}.contact-panel p{margin:0;line-height:1.75}.contact-eyebrow{font-weight:800;color:#2563eb}.contact-sms{display:block;text-align:center;padding:13px;border:1px solid #d8dce3;border-radius:999px;font-weight:700;text-decoration:none}.contact-panel .pill{font-size:18px}.contact-panel .qnote{font-size:13px}.legal{padding:56px 0 100px}.legal h1{font-size:clamp(28px,5vw,42px);margin:0 0 18px}.legal h2{margin:34px 0 12px;font-size:22px}.legal p,.legal li{line-height:1.85}.legal ul{padding-left:23px}.legal .contact-box{padding:22px;background:#f4f7fc;border-radius:18px;border:1px solid #e1e7f0}.legal a{color:#174eba}.navtel{white-space:nowrap}@media(max-width:600px){.contact-panel{padding:22px 18px}.contact-panel .pill{font-size:16px}.legal{padding-top:35px}.legal h2{font-size:20px}.mbar1 a{font-size:17px}}

@media(max-width:600px){.phone-site .hero7 h1{font-size:44px;line-height:1.18;word-break:keep-all}.phone-site .hero7 h1>br{display:none}.phone-site .hero7 .vat{display:block;font-size:13px;line-height:1.5;vertical-align:baseline;margin:10px 0 0}.phone-site .hero7 .h1-sub{display:block;font-size:17px;line-height:1.5;margin-top:6px;letter-spacing:-.04em}.phone-site .hero7-copy{padding-top:24px}.phone-site .hero7 .h1-top{font-size:16px;margin-bottom:8px}.contact-panel .hint{font-size:13px}}

@media(min-width:900px){.plans7{grid-template-columns:repeat(2,minmax(0,1fr))}}

.phone-site .hero7 h1{font-size:clamp(32px,4.3vw,60px);line-height:1.2}.phone-site .hero7 .h1-sub{font-size:22px;line-height:1.5;margin-top:16px}.phone-site .hero7 h1>br{display:block}@media(max-width:600px){.phone-site .hero7 .h1-sub{font-size:16px;margin-top:12px}}

.petcare{background:#f2f6fa;margin-top:54px;padding:64px 0}.petcare-intro{max-width:850px}.petcare-eyebrow{font-size:14px;font-weight:700;color:#215674;margin:0 0 12px}.petcare h2{font-size:clamp(26px,3vw,40px);line-height:1.4;letter-spacing:-.04em;margin:0 0 20px;word-break:keep-all}.petcare-lead{font-size:18px;line-height:1.85;color:#3a4650}.petcare-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.petcare-card,.petcare-health{background:white;border:1px solid #dbe5ed;border-radius:22px;padding:28px}.petcare h3{font-size:23px;line-height:1.45;letter-spacing:-.03em;margin:0 0 16px;word-break:keep-all}.petcare p{line-height:1.85}.petcare .petcare-small{font-size:14px;color:#53626e}.petcare .pill{margin-top:14px}.petcare-sources{display:flex;flex-direction:column;gap:8px;border-top:1px solid #e0e7ed;padding-top:16px;margin-top:18px;font-size:13px;color:#526371}.petcare-sources a{color:#215674;text-decoration:underline;text-underline-offset:3px}@media(max-width:700px){.petcare{padding:40px 0;margin-top:36px}.petcare-grid{grid-template-columns:1fr;gap:18px}.petcare-card,.petcare-health{padding:22px 20px}.petcare-lead{font-size:16px}.petcare h3{font-size:21px}.petcare h2{font-size:26px}.petcare .pill{font-size:15px}}

.business-info{margin:18px 0;font-size:14px;line-height:1.8;color:inherit}.business-info p{margin:6px 0;overflow-wrap:anywhere}@media(max-width:600px){.business-info{font-size:13px}}

/* Single service card after category removal */
.plans7{grid-template-columns:minmax(0,1fr)}
