/* ============================================================
   依緹美學 — clinic 頁面樣式（由原網站 clinic.html 內嵌樣式抽出，內容未變更）
   ============================================================ */
/* ============================================================
   診所資訊 — 頁面專屬樣式
   ============================================================ */
.phero{position:relative;height:62vh;min-height:440px;overflow:hidden;color:#fff;display:flex;align-items:flex-end;}
.phero__bg{position:absolute;inset:-4%;}
.phero__bg img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:sepia(.12) saturate(1.02) contrast(1.03);}
.phero__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,11,7,.66),rgba(24,11,7,.25) 54%,rgba(24,11,7,.05)),linear-gradient(0deg,rgba(24,11,7,.5),transparent 48%);}
.phero__in{position:relative;z-index:3;width:100%;padding:0 var(--pad) clamp(48px,7vw,92px);}
.phero__en{font-family:var(--ff-en);font-weight:300;text-transform:uppercase;font-size:clamp(34px,6.4vw,88px);line-height:1.1;letter-spacing:.09em;margin:0 0 14px;text-shadow:0 8px 40px rgba(0,0,0,.4);}
.phero__en .ln{display:block;overflow:hidden;}
.phero__en.split .ch{display:inline-block;transform:translateY(115%);opacity:0;}
.phero__en.split.play .ch{animation:chUp .95s var(--ease) both;}
.phero__tc{font-size:clamp(15px,1.8vw,21px);letter-spacing:.3em;margin:0;opacity:0;transform:translateY(14px);animation:fadeUp 1s .9s var(--ease) forwards;}

.crumb{padding:22px var(--pad);font-family:var(--ff-sans);font-size:var(--fs-xs);letter-spacing:.18em;color:var(--ink-3);border-bottom:1px solid var(--line);}
.crumb a{display:inline-flex;align-items:center;min-height:44px;transition:color .4s var(--ease);}
.crumb a:hover{color:var(--brand);}
.crumb i{font-style:normal;margin:0 10px;color:var(--line);}

.intro{position:relative;padding:var(--sec-y) var(--pad);overflow:hidden;}
.intro__ghost{top:12%;left:50%;transform:translateX(-50%);font-size:clamp(70px,14vw,210px);color:rgba(157,117,83,.05);}
.intro__grid{position:relative;z-index:2;max-width:var(--w-page);margin:0 auto;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(32px,7vw,120px);align-items:end;}
.intro__kicker{display:block;font-family:var(--ff-en);font-size:var(--fs-sm);letter-spacing:.42em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;}
.intro h2{font-size:clamp(24px,3.1vw,43px);font-weight:400;letter-spacing:.15em;line-height:var(--lh-body);margin:0;}
.intro__copy{font-size:var(--fs-md);line-height:2.4;color:var(--ink-2);letter-spacing:.08em;}
.intro__copy p{margin:0 0 18px;}

.details{padding:0 var(--pad) var(--sec-y);}
.details__panel{position:relative;max-width:var(--w-page);margin:0 auto;background:var(--brand-deep);color:#F3E7D6;border-radius:0 clamp(80px,12vw,190px) 0 0;padding:clamp(42px,6vw,86px);overflow:hidden;}
.details__panel::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 100% at 100% 0,rgba(255,255,255,.1),transparent 70%);pointer-events:none;}
.details__head{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:clamp(34px,5vw,62px);}
.details__head .en{font-family:var(--ff-en);font-size:var(--fs-sm);letter-spacing:.42em;text-transform:uppercase;color:var(--gold-lt);}
.details__head h2{font-size:clamp(21px,2.6vw,34px);font-weight:400;letter-spacing:.16em;margin:12px 0 0;}
.details__grid{position:relative;z-index:2;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:1px;background:rgba(228,216,194,.22);border:1px solid rgba(228,216,194,.22);}
.detail{background:rgba(123,90,62,.93);padding:clamp(25px,3.2vw,42px);min-height:170px;display:flex;flex-direction:column;justify-content:space-between;}
.detail__label{font-family:var(--ff-sans);font-size:var(--fs-xs);letter-spacing:.25em;color:var(--gold-lt);}
.detail strong{font-size:clamp(18px,2vw,25px);font-weight:400;letter-spacing:.12em;line-height:var(--lh-body);margin-top:22px;}
.detail small{font-size:var(--fs-xs);letter-spacing:.12em;color:rgba(243,231,214,.68);margin-top:8px;}
.detail a{transition:color .35s var(--ease);}
.detail a:hover{color:#fff;}
.details__actions{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:14px;margin-top:34px;}

.spaces{padding:var(--sec-y) var(--pad);background:var(--white);overflow:hidden;}
.spaces__in{max-width:var(--w-page);margin:0 auto;}
.spaces__head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:clamp(36px,5vw,68px);}
.spaces__head h2{font-size:clamp(23px,2.8vw,38px);font-weight:400;letter-spacing:.16em;margin:12px 0 0;}
.spaces__head p{max-width:560px;font-size:var(--fs-base);line-height:var(--lh-loose);letter-spacing:.07em;color:var(--ink-2);margin:0;}
.spaces__grid{display:grid;grid-template-columns:1.3fr .7fr .7fr;grid-template-rows:repeat(2,minmax(180px,1fr));gap:14px;}
.space-photo{position:relative;margin:0;overflow:hidden;background:var(--sand);min-height:260px;}
.space-photo:first-child{grid-row:1/3;border-radius:0 0 0 clamp(70px,9vw,130px);}
.space-photo img{width:100%;height:100%;object-fit:cover;filter:sepia(.07) saturate(.97);transition:transform 1.4s var(--ease);}
.space-photo:hover img{transform:scale(1.04);}
.space-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:46px 20px 16px;background:linear-gradient(transparent,rgba(35,20,14,.68));color:#fff;font-size:var(--fs-xs);letter-spacing:.16em;}

.visit{padding:var(--sec-y) var(--pad);}
.visit__in{max-width:var(--w-page);margin:0 auto;display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(34px,6vw,100px);align-items:center;}
.visit__fig{position:relative;aspect-ratio:1.18/1;overflow:hidden;border-radius:0 0 clamp(70px,10vw,150px) 0;box-shadow:0 36px 80px -48px rgba(60,30,20,.55);}
.visit__fig img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:sepia(.1) saturate(.98);}
.visit__body h2{font-size:clamp(23px,2.8vw,38px);font-weight:400;letter-spacing:.16em;line-height:var(--lh-body);margin:12px 0 28px;}
.visit__address{font-size:clamp(18px,2vw,24px);letter-spacing:.12em;line-height:var(--lh-body);color:var(--ink);padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.visit__list{list-style:none;padding:0;margin:28px 0 34px;}
.visit__list li{display:grid;grid-template-columns:84px 1fr;gap:18px;padding:11px 0;font-size:var(--fs-base);letter-spacing:.07em;color:var(--ink-2);}
.visit__list b{font-weight:400;color:var(--sage-deep);}
.visit__actions{display:flex;flex-wrap:wrap;gap:14px;}

.flow{padding:0 var(--pad) var(--sec-y);}
.flow__in{max-width:var(--w-page);margin:0 auto;border-top:1px solid var(--line);padding-top:clamp(42px,6vw,78px);}
.flow__head{text-align:center;margin-bottom:clamp(34px,5vw,58px);}
.flow__head h2{font-size:clamp(21px,2.6vw,34px);font-weight:400;letter-spacing:.16em;margin:12px 0 0;}
.flow__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,46px);}
.flow__item{padding:28px 0;border-top:2px solid var(--sage);}
.flow__no{font-family:var(--ff-en);font-size:clamp(30px,4vw,54px);font-weight:300;color:var(--gold);}
.flow__item h3{font-size:var(--fs-lg);font-weight:500;letter-spacing:.18em;margin:18px 0 12px;}
.flow__item p{font-size:var(--fs-base);line-height:var(--lh-loose);letter-spacing:.06em;color:var(--ink-3);margin:0;}

.closing{position:relative;padding:var(--sec-y) var(--pad);text-align:center;background:var(--bg-2);overflow:hidden;}
.closing__in{position:relative;z-index:2;max-width:760px;margin:0 auto;}
.closing h2{font-size:clamp(20px,2.5vw,32px);font-weight:400;letter-spacing:.16em;line-height:var(--lh-loose);margin:22px 0 32px;}
.closing__btns{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}

@media(max-width:900px){
  .phero{height:52vh;}
  .intro__grid,.visit__in{grid-template-columns:1fr;}
  .details__panel{border-radius:0;}
  .details__grid{grid-template-columns:1fr 1fr;}
  .detail:first-child{grid-column:1/-1;}
  .spaces__head{align-items:flex-start;flex-direction:column;}
  .spaces__grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;}
  .space-photo:first-child{grid-row:auto;grid-column:1/-1;aspect-ratio:16/9;}
  .space-photo{min-height:230px;}
}
@media(max-width:560px){
  .details__head{align-items:flex-start;flex-direction:column;}
  .details__grid{grid-template-columns:1fr;}
  .detail:first-child{grid-column:auto;}
  .spaces__grid{grid-template-columns:1fr;}
  .space-photo:first-child{grid-column:auto;aspect-ratio:4/3;}
  .space-photo{min-height:220px;aspect-ratio:4/3;}
  .flow__grid{grid-template-columns:1fr;}
}
