/* 에이스홈픽스 실링팬 설치 — 밤하늘 남색·전구 노랑·바람 하늘색, Dongle 굵은 둥근 제목 + 시스템 고딕 본문(mirror의 Orbit+Gowun Dodum과 겹치지 않게 바꿈).
   흰 머리 로고 아래 남색 '천장 레일' 메뉴(링크마다 매달린 점), 남색 첫 화면에 천장 선에 매달린 시공전·시공후 사진(줄 달린 꼬리표),
   천장 단면 그림 바로가기 6칸, 번호 원이 세로 선으로 이어지는 설치 순서, 흰 카드 + 노란 꼬리표 사례 카드, 사진 왼쪽 가로 서비스 카드,
   머리줄 있는 비교 표, 노란 제본 띠 줄노트 문의 영역, Q 번호 원 질문, 남색 판 지역 목록, 가운데 떠 있는 둥근 막대 고정 버튼.
   휴대폰(390px) 기준으로 쓰고 넓은 화면에서 칸을 늘린다. 가로로 넘기거나 눌러야 바뀌는 조작은 없다. */
:root{
  --night:#1d2145; --night2:#2a2f63; --night3:#3a4180; --glow:#ffcf3f; --glow-d:#8a6400; --glow-l:#fff5cf;
  --sky:#8cc3e6; --sky-l:#e7f3fb; --paper:#fbf8f1; --card:#fff; --ink:#1b1d2e; --muted:#555a73; --line:#e4dfcf; --red:#c62828;
  --head:'Dongle','Apple SD Gothic Neo','Malgun Gothic',sans-serif;
  --body:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR',sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:12px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16.5px/1.75 var(--body);word-break:keep-all;overflow-wrap:anywhere;padding-bottom:84px}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
b,strong{font-weight:700}
h1,h2,h3{margin:0;line-height:1.35;font-weight:400}
h1,h2{font-family:var(--head);font-weight:700;line-height:1.05;letter-spacing:0}
h2{font-size:2.3rem;margin-bottom:.5rem}
h3{font-size:1.1rem;font-weight:700}
p{margin:.5rem 0}
ul,ol,dl,dd{margin:0;padding:0;list-style:none}
figure{margin:0}
:focus-visible{outline:3px solid var(--glow);outline-offset:2px;box-shadow:0 0 0 6px var(--night)}
.pn{white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--glow);color:var(--ink);padding:.6rem 1rem;z-index:50}
.skip:focus{left:8px;top:8px}

/* 머리: 흰 바탕 로고 + 남색 천장 레일 메뉴 */
.hd{background:#fff}
.hd-in{max-width:1120px;margin:0 auto;padding:.7rem 16px}
.logo{display:inline-flex;align-items:center;gap:.45rem;text-decoration:none;white-space:nowrap}
.logo svg{width:34px;height:34px;flex:none}
.lg-rod{stroke:var(--night);stroke-width:3;stroke-linecap:round;fill:none}
.lg-hub{fill:var(--night)}
.lg-blade{fill:var(--sky);stroke:var(--night);stroke-width:1.2}
.lg-bulb{fill:var(--glow)}
.logo b{font-family:var(--head);font-weight:700;font-size:1.75rem;line-height:1;color:var(--night)}
.logo .kw{font-size:.86rem;background:var(--glow);color:var(--ink);padding:.12rem .55rem;border-radius:999px;font-weight:700}
.rail{display:grid;grid-template-columns:repeat(4,1fr);background:var(--night);border-top:4px solid var(--glow)}
.rail a{position:relative;display:block;text-align:center;color:#fff;text-decoration:none;font-size:.9rem;padding:1.05rem .2rem .7rem;line-height:1.3}
.rail a::before{content:"";position:absolute;left:50%;top:0;width:2px;height:.55rem;background:var(--glow)}
.rail a::after{content:"";position:absolute;left:calc(50% - 4px);top:.5rem;width:10px;height:10px;border-radius:50%;background:var(--glow);box-shadow:0 0 10px var(--glow)}
.rail a+a{border-left:1px solid var(--night3)}
.rail a:hover{background:var(--night2)}

/* 첫 화면 */
.hero{background:var(--night);color:#fff;padding:1.6rem 16px 2rem}
.hero-in{max-width:1120px;margin:0 auto}
.hero-kick{color:var(--sky);font-size:.92rem;margin:0 0 .4rem}
.hero h1{font-size:3.2rem;line-height:1}
.hero h1 span{display:block;font-size:1.75rem;color:var(--glow);margin-top:.25rem}
.hero .lead{color:#dfe2f5}
.hero .lead b{color:#fff;background:linear-gradient(transparent 62%,rgba(255,207,63,.35) 0)}
.hero-show{position:relative;display:block;text-decoration:none;margin:1.3rem 0 .6rem;padding-top:14px}
.beam{position:absolute;left:0;right:0;top:0;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--night3),var(--sky),var(--night3))}
.hs-cap{display:block;color:var(--sky);font-size:.88rem;margin-top:.5rem}

/* 매달린 전후 사진 */
.hang{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hang figure{position:relative;padding-top:26px}
.hang figure::before{content:"";position:absolute;left:50%;top:0;width:2px;height:26px;background:var(--glow)}
.hang img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px 12px 4px 4px;background:var(--night2)}
.hang .tag{position:absolute;left:50%;top:10px;transform:translateX(-50%);z-index:1;font-size:.8rem;font-weight:700;padding:.15rem .6rem;border-radius:6px;white-space:nowrap}
.t-b{background:#fff;color:var(--night);border:2px solid var(--night)}
.t-a{background:var(--glow);color:var(--ink);border:2px solid var(--night)}
.hang.big img{aspect-ratio:4/5}

/* 문의 버튼 */
.cta{display:flex;gap:10px;margin:1rem 0 .4rem;flex-wrap:wrap}
.cta a{flex:1 1 140px;display:flex;align-items:center;justify-content:center;min-height:54px;padding:.5rem .8rem;border-radius:999px;text-decoration:none;font-weight:700;font-size:1.05rem;white-space:nowrap}
.c-sms{background:var(--glow);color:var(--ink);border:2px solid var(--glow)}
.c-call{background:transparent;color:#fff;border:2px solid #fff;letter-spacing:.01em}
.wrap .c-call,.memo .c-call{color:var(--night);border-color:var(--night)}
.ph .c-call{color:#fff;border-color:#fff}

/* 공통 블록 */
.blk{max-width:1120px;margin:0 auto;padding:2.2rem 16px 0}
.wrap{max-width:1120px;margin:0 auto}
.wrap .blk{padding-left:16px;padding-right:16px}
.kick{font-family:var(--head);font-weight:700;color:var(--glow-d);font-size:1.3rem;line-height:1;margin:0 0 .25rem}
.sub{color:var(--muted)}
.more{display:inline-block;margin-top:1rem;color:var(--night);font-weight:700;text-decoration:none;border-bottom:3px solid var(--glow)}

/* 천장 바로가기 */
.cls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:.8rem}
.cl{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;height:100%;padding:.8rem .8rem .9rem;background:var(--night);color:#fff;border-radius:14px;text-decoration:none;border-bottom:5px solid var(--glow)}
.cl .ico{width:52px;height:52px;fill:none;stroke:var(--glow);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cl .ico .dim{stroke:var(--sky);stroke-dasharray:3 3}
.cl b{display:block;font-size:1.02rem}
.cl small{display:block;color:var(--sky);font-size:.86rem}
.cl:hover{background:var(--night2)}
.cmp-wrap{margin-top:1.4rem}
.cmp-wrap h3{margin-bottom:.5rem}

/* 비교 표 */
.cmp{border:2px solid var(--night);border-radius:12px;overflow:hidden;background:var(--card)}
.cmp-h{display:none}
.cmp-r{padding:.8rem .9rem;border-top:1px solid var(--line)}
.cmp-r:first-of-type{border-top:0}
.cmp-r strong{display:inline-block;background:var(--night);color:#fff;padding:.05rem .55rem;border-radius:6px;font-size:.95rem}
.cmp-r p{margin:.35rem 0 0}
.cmp-w{color:var(--muted)}
.cmp-w::before{content:"→ ";color:var(--glow-d);font-weight:700}

/* 사례 카드 */
.ccs{display:grid;gap:16px;margin-top:.8rem}
.cc{display:block;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:0 12px 14px;text-decoration:none;box-shadow:0 8px 20px rgba(29,33,69,.08);border-top:6px solid var(--night)}
.cc .hang{margin-top:0}
.cc .hang img{aspect-ratio:1/1}
.cc-body{display:block;padding:.7rem 2px 0}
.cc-kind{display:inline-block;background:var(--glow-l);color:var(--glow-d);font-size:.84rem;font-weight:700;padding:.1rem .55rem;border-radius:4px;border-left:4px solid var(--glow)}
.cc-title{display:block;font-size:1.1rem;line-height:1.45;margin:.4rem 0 .5rem;color:var(--night)}
.cc-row{display:block;font-size:.93rem;color:var(--muted);margin-top:.25rem}
.cc-row b{color:var(--ink);margin-right:.4rem}
.cc:hover{border-color:var(--night)}

/* 설치 순서 */
.steps{position:relative;margin-top:1rem}
.steps li{position:relative;display:grid;grid-template-columns:34px 112px 1fr;gap:10px;align-items:start;padding-bottom:1.1rem}
.steps li::before{content:"";position:absolute;left:16px;top:34px;bottom:0;width:2px;background:var(--sky)}
.steps li:last-child::before{display:none}
.sn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--night);color:var(--glow);font-family:var(--head);font-weight:700;font-size:1.6rem;line-height:1}
.steps figure img{width:112px;height:140px;object-fit:cover;border-radius:10px}
.steps h3{font-size:1.02rem}
.steps p{margin:.2rem 0;font-size:.95rem}
.stage{color:var(--glow-d);font-size:.84rem;font-weight:700;margin:0}

/* 서비스 카드 — 사진 왼쪽 */
.svs{display:grid;gap:12px;margin-top:.8rem}
.sv{display:grid;grid-template-columns:104px 1fr;gap:12px;align-items:stretch;background:var(--sky-l);border-radius:14px;padding:10px;text-decoration:none;border:1px solid #cfe3f1}
.sv-img img{width:104px;height:100%;min-height:128px;object-fit:cover;border-radius:10px}
.sv-txt{display:block}
.sv-txt em{display:block;font-style:normal;color:var(--muted);font-size:.84rem}
.sv-txt strong{display:block;font-family:var(--head);font-weight:700;font-size:1.7rem;line-height:1.05;color:var(--night);margin:.1rem 0 .2rem}
.sv-ans{display:block;font-size:.9rem;line-height:1.6}
.sv-go{display:inline-block;margin-top:.35rem;font-size:.86rem;font-weight:700;color:var(--night);border-bottom:2px solid var(--glow)}

/* 문의: 줄노트 */
.memo-wrap{padding:2.4rem 16px 0}
.memo{max-width:760px;margin:0 auto;background:var(--night);color:#fff;border-radius:22px;padding:1.4rem 16px 1.2rem}
.memo .kick{color:var(--glow)}
.memo h2{color:#fff}
.memo-lead{color:#dfe2f5}
.note{position:relative;background:#fffdf5;color:var(--ink);border-radius:10px;margin:1rem 0;padding:.8rem .9rem .9rem 2.1rem;
  background-image:repeating-linear-gradient(transparent 0 2.05rem,#d9e6f2 2.05rem calc(2.05rem + 1px))}
.note::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1.1rem;background:var(--glow);border-radius:10px 0 0 10px;
  background-image:radial-gradient(circle at 50% 50%,var(--night) 3px,transparent 3.5px);background-size:1.1rem 1.6rem}
.note-to{margin:0 0 .3rem;font-size:.85rem;color:var(--muted)}
.note-lines li{font-size:.98rem;line-height:2.05rem;min-height:2.05rem}
.note-lines li:first-child{font-weight:700;color:var(--night)}
.shots{display:grid;gap:8px}
.shots li{background:var(--night2);border-radius:10px;padding:.6rem .8rem;font-size:.93rem}
.shots b{display:block;color:var(--glow)}
.memo .c-call{color:#fff;border-color:#fff}

/* 질문 */
.qa{display:grid;gap:10px;margin-top:.6rem}
.qa details{background:var(--card);border:1px solid var(--line);border-radius:14px}
.qa summary{display:flex;gap:.6rem;align-items:flex-start;cursor:pointer;list-style:none;padding:.85rem .9rem;font-weight:700}
.qa summary::-webkit-details-marker{display:none}
.qn{flex:none;display:flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:50%;background:var(--glow);color:var(--ink);font-family:var(--head);font-size:1.3rem;font-weight:700;line-height:1}
.qa details[open] .qn{background:var(--night);color:var(--glow)}
.qa details p{margin:0;padding:0 .9rem .9rem 3.6rem;color:var(--muted)}

/* 지역 */
.area{margin-top:2.4rem;max-width:none;background:var(--night);color:#fff;padding-bottom:2rem}
.area>*{max-width:1088px;margin-left:auto;margin-right:auto}
.area .kick{color:var(--glow)}
.area .sub{color:#c9cde6}
.area-red strong{color:#ff6b6b}
.area-red{background:#fff;border-radius:10px;padding:.6rem .8rem}
.area-red strong{color:var(--red)}
.ar{display:grid;gap:18px;margin-top:1rem}
.ar-g h3{font-family:var(--head);font-weight:700;font-size:1.7rem;line-height:1.1;color:var(--glow);border-bottom:1px solid var(--night3);padding-bottom:.3rem;margin-bottom:.5rem}
.ar-g h3 small{color:var(--sky);font-family:var(--body);font-size:.85rem}
.ar-g ul{display:flex;flex-wrap:wrap;gap:6px}
.ar-g a{display:inline-block;padding:.2rem .6rem;border:1px solid var(--night3);border-radius:999px;text-decoration:none;font-size:.9rem;color:#fff}
.ar-g a:hover{background:var(--glow);color:var(--ink)}

/* 하위 페이지 머리 */
.ph{background:var(--night);color:#fff;padding:1rem 16px 1.4rem}
.ph-in{max-width:1120px;margin:0 auto}
.crumb{font-size:.84rem;color:var(--sky);display:flex;flex-wrap:wrap;gap:.35rem}
.crumb a{color:#fff}
.ph-label{display:inline-block;margin:.8rem 0 .4rem;background:var(--glow);color:var(--ink);font-size:.84rem;padding:.1rem .6rem;border-radius:4px;font-weight:700}
.ph h1{font-size:2.5rem;line-height:1.05}
.ph .lead{color:#dfe2f5}
.upd{font-size:.82rem;color:var(--sky)}
.wrap>.hang{padding:1.2rem 16px 0}
.pts{counter-reset:p;display:grid;gap:8px;padding:1rem 16px 0}
.pts li{counter-increment:p;position:relative;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:.55rem .8rem .55rem 2.8rem}
.pts li::before{content:counter(p);position:absolute;left:.7rem;top:.55rem;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--night);color:var(--glow);font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center}
.blk .pts{padding:0;margin-top:.6rem}
.toc{margin:1.2rem 16px 0;background:var(--sky-l);border-radius:12px;padding:.8rem 1rem}
.toc p{margin:0 0 .3rem;font-weight:700}
.toc ol{list-style:decimal;padding-left:1.3rem}
.toc a{color:var(--night)}
.facts{display:grid;gap:10px;margin-top:.6rem}
.facts div{background:var(--card);border-left:5px solid var(--glow);border-radius:0 10px 10px 0;padding:.6rem .9rem}
.facts p{margin:.2rem 0 0;color:var(--muted)}
.chk{display:grid;gap:8px;margin-top:.5rem}
.chk li{background:var(--card);border:1px dashed var(--night3);border-radius:10px;padding:.6rem .8rem}
.chk b{display:block;color:var(--night)}
.chk span{color:var(--muted);font-size:.95rem}
.sum{display:grid;gap:8px}
.sum div{background:var(--card);border-radius:10px;padding:.6rem .8rem;border:1px solid var(--line)}
.sum dt{font-weight:700;color:var(--glow-d);font-size:.88rem}
.sum ul{list-style:disc;padding-left:1.2rem}
.ex{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ex img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:10px}
.ex figcaption{font-size:.88rem;color:var(--muted);margin-top:.3rem}
.ex figcaption b{display:block;color:var(--ink)}
.tip{background:var(--glow-l);border-radius:10px;padding:.6rem .8rem}
.flow{counter-reset:f;display:grid;gap:8px}
.flow li{counter-increment:f;background:var(--card);border-radius:10px;padding:.55rem .8rem;border:1px solid var(--line)}
.flow li::before{content:counter(f) ". ";font-weight:700;color:var(--glow-d)}
.qcs{display:grid;gap:10px}
.qc{display:grid;grid-template-columns:88px 1fr;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:8px;text-decoration:none}
.qc-img img{width:88px;height:108px;object-fit:cover;border-radius:8px}
.qc-t strong{display:block;color:var(--night)}
.qc-t span{display:block;font-size:.92rem;color:var(--muted)}
.qc-t em{display:block;font-style:normal;font-size:.84rem;color:var(--glow-d);margin-top:.2rem}
.warn{display:grid;gap:6px;margin-top:.4rem}
.warn li{padding-left:1.4rem;position:relative}
.warn li::before{content:"!";position:absolute;left:0;top:.2rem;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--glow);font-size:.75rem;display:flex;align-items:center;justify-content:center;font-weight:700}
.why-pick{color:var(--muted)}
.links h2+*{margin-bottom:1.2rem}
.rl{display:flex;flex-wrap:wrap;gap:6px}
.rl a{display:inline-block;padding:.25rem .65rem;border-radius:999px;background:var(--sky-l);text-decoration:none;font-size:.92rem;color:var(--night)}
.blk>h2 small{font-family:var(--body);font-size:.9rem;color:var(--muted)}
.blk>h2 a{text-decoration:none;border-bottom:3px solid var(--glow)}

/* 하단 고정 버튼: 가운데 떠 있는 둥근 막대 */
.dock{position:fixed;left:50%;bottom:10px;transform:translateX(-50%);z-index:40;display:grid;grid-template-columns:1.25fr 1fr;width:calc(100% - 20px);max-width:460px;
  background:var(--night);border-radius:999px;padding:5px;box-shadow:0 10px 26px rgba(29,33,69,.35);transition:opacity .2s}
.dock a{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:999px;text-decoration:none;font-weight:700;white-space:nowrap}
.dk-call{color:#fff;font-size:1.02rem}
.dk-sms{background:var(--glow);color:var(--ink)}
.dock.hide{opacity:0;visibility:hidden}

@media (max-width:360px){
  body{font-size:16px}
  .hero h1{font-size:2.8rem}
  .rail a{font-size:.82rem}
  .logo b{font-size:1.55rem}
  .logo .kw{font-size:.78rem;padding:.1rem .45rem}
  .steps li{grid-template-columns:30px 88px 1fr}
  .steps figure img{width:88px;height:112px}
  .sn{width:30px;height:30px}
  .steps li::before{left:14px}
  .sv{grid-template-columns:84px 1fr}
  .sv-img img{width:84px}
  .cta a{font-size:.98rem}
}
@media (min-width:720px){
  .hero{padding:2.4rem 24px 2.6rem}
  .hero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:2rem;align-items:start}
  .hero-kick,.hero h1,.hero .lead,.hero .cta{grid-column:1}
  .hero-show{grid-column:2;grid-row:1/5;margin-top:0}
  .hero h1{font-size:4rem}
  .cls{grid-template-columns:repeat(3,1fr)}
  .cmp-h{display:grid;grid-template-columns:1fr 1.4fr 1.6fr;gap:12px;background:var(--night);color:var(--glow);padding:.5rem .9rem;font-family:var(--head);font-weight:700;font-size:1.35rem;line-height:1.1}
  .cmp-r{display:grid;grid-template-columns:1fr 1.4fr 1.6fr;gap:12px;align-items:start}
  .cmp-r:first-of-type{border-top:1px solid var(--line)}
  .cmp-r p{margin:0}
  .cmp-r strong{justify-self:start}
  .ccs{grid-template-columns:1fr 1fr}
  .svs{grid-template-columns:1fr}
  .sv{grid-template-columns:180px 1fr}
  .sv-img img{width:180px;min-height:150px}
  .steps li{grid-template-columns:40px 200px 1fr}
  .steps figure img{width:200px;height:240px}
  .ar{grid-template-columns:1fr 1fr 1fr}
  .facts{grid-template-columns:repeat(3,1fr)}
  .chk{grid-template-columns:1fr 1fr}
  .qcs{grid-template-columns:1fr 1fr 1fr}
  .qc{grid-template-columns:1fr}
  .qc-img img{width:100%;height:180px}
  .ph h1{font-size:3.1rem}
  .wrap>.hang{max-width:620px}
}
@media (min-width:1100px){
  .ccs{grid-template-columns:1fr 1fr 1fr}
  .svs{grid-template-columns:1fr 1fr 1fr}
  .sv{grid-template-columns:120px 1fr}
  .sv-img img{width:120px}
  .cls{grid-template-columns:repeat(6,1fr)}
}
