/* 올굿토탈홈케어 — minimal(미니멀 모노) 테마 / 스틸네이비 팔레트 */
:root{
  --primary:#1A3159;
  --accent:#4472B8;
  --ink:#1A1A1A;
  --sub:#6B7280;
  --line:#E5E5E5;
}
html{scroll-behavior:smooth;}
body{
  font-family:'Pretendard',-apple-system,BlinkMacSystemFont,sans-serif;
  color:var(--ink);
  word-break:keep-all;
  overflow-wrap:break-word;
  background:#fff;
}
.prose-body{max-width:68ch;}
.eyebrow{
  font-size:.72rem;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--accent);
  font-weight:700;
}
.hairline{border-color:var(--line);}
.rounded-mono{border-radius:2px;}

/* minimal 테마 — 얇고 넓은 자간의 큰 제목 */
h1,h2,h3{font-weight:400;letter-spacing:-.01em;}
h1{font-weight:300;}
h2{font-weight:300;}

/* 히어로 글씨 그림자 (오버레이 대신 텍스트 그림자로 가독성 확보) */
.hero-text-shadow{
  text-shadow:0 2px 10px rgba(0,0,0,.55), 0 1px 2px rgba(0,0,0,.5);
}
.hero-overlay-bottom{
  background:linear-gradient(to top, rgba(10,18,33,.36), rgba(0,0,0,0) 55%);
}

/* 카드 그리드 — 열 수 고정, auto-fit/auto-fill 미사용 */
.grid-3col{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
}
@media(min-width:768px){
  .grid-3col{grid-template-columns:repeat(3,minmax(0,1fr));}
}
.grid-2col-fixed{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
}
@media(min-width:768px){
  .grid-2col-fixed{grid-template-columns:repeat(4,minmax(0,1fr));}
}
/* 3개 카드 그리드 — 모바일 반드시 1열 */
.grid-3item{
  display:grid;
  grid-template-columns:1fr;
  gap:1.25rem;
}
@media(min-width:768px){
  .grid-3item{grid-template-columns:repeat(3,minmax(0,1fr));}
}

.hover-lift{transition:transform .25s ease, border-color .25s ease;}
.hover-lift:hover{transform:translateY(-2px);border-color:var(--accent);}
.hover-zoom img{transition:transform .4s ease;}
.hover-zoom:hover img{transform:scale(1.02);}

.phone-enc::after,
.phone-link-enc::after,
.sms-link-enc::after{content:'';}

/* 모바일 햄버거 메뉴 */
.mobile-menu{transform:translateX(100%);transition:transform .25s ease;}
.mobile-menu.open{transform:translateX(0);}

/* FAQ 아코디언 — 열림 상태 아이콘 회전(+→×) */
.faq-icon{display:inline-block;transition:transform .25s ease;}
.faq-item.open .faq-icon{transform:rotate(45deg);}

/* 상단 고정 헤더 블러 */
.header-blur{
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

/* minimal 테마 — 번호 라벨(01,02) */
.num-label{
  font-family:'Pretendard',sans-serif;
  font-size:1.4rem;
  font-weight:300;
  color:var(--accent);
  letter-spacing:.04em;
}

/* minimal 테마 — 밑줄 링크 */
.link-underline{
  text-decoration:underline;
  text-underline-offset:4px;
  text-decoration-color:var(--line);
}
.link-underline:hover{text-decoration-color:var(--accent);}

/* 시공 사진(단일) 카드 그리드 — 최대 6개, 모바일 2열/PC 3열 */
.grid-photo{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
}
@media(min-width:768px){
  .grid-photo{grid-template-columns:repeat(3,minmax(0,1fr));}
}
.photo-card{background:#fff;cursor:pointer;}
.photo-thumb{position:relative;aspect-ratio:3/4;overflow:hidden;background:#f2f2f2;}
.photo-caption{padding:.75rem .9rem;font-size:.88rem;font-weight:500;color:var(--ink);}

/* 사진 라이트박스 (확대보기) */
.photo-lightbox{position:fixed;inset:0;background:rgba(10,10,10,.92);display:none;align-items:center;justify-content:center;z-index:100;padding:1.25rem;overflow-y:auto;}
.photo-lightbox.open{display:flex;}
.photo-lightbox-inner{background:#fff;max-width:640px;width:100%;margin:auto;position:relative;border-radius:2px;}
.photo-lightbox-close{position:absolute;top:.5rem;right:.75rem;z-index:3;background:none;border:none;color:var(--ink);font-size:2rem;line-height:1;cursor:pointer;}
.photo-lightbox-img-wrap{position:relative;aspect-ratio:3/4;overflow:hidden;background:#f2f2f2;}
.photo-lightbox-img-wrap img{width:100%;height:100%;object-fit:cover;}
.photo-lightbox-caption{padding:1.25rem 1.5rem;font-size:.95rem;color:var(--sub);}
