/* ===== 首頁 Hero v2 ===== */
.xox-hero2{position:relative;overflow:hidden}
.xox-hero2>*{position:relative;z-index:1}
.xox-hero2>.xox-hero2__deco{position:absolute;inset:0;z-index:0;margin:0!important;max-width:none!important;width:auto;pointer-events:none}
.xox-d{position:absolute;display:block;will-change:transform}
.xox-d--blob1{top:-160px;right:-100px;width:540px;height:540px;border-radius:50%;background:#F6ECE8;filter:blur(48px);opacity:.95;animation:xoxFloatA 18s ease-in-out infinite}
.xox-d--blob2{top:220px;right:14%;width:420px;height:420px;border-radius:50%;background:#E3EAF4;filter:blur(56px);opacity:.8;animation:xoxFloatB 22s ease-in-out infinite;animation-delay:-6s}
.xox-d--ring{top:96px;right:27%;width:120px;height:120px;border-radius:50%;border:1.5px solid rgba(36,69,122,.16);animation:xoxFloatC 14s ease-in-out infinite}
.xox-d--capsule{top:300px;right:7%;width:72px;height:72px;color:#24457A;opacity:.28;animation:xoxFloatB 22s ease-in-out infinite;animation-delay:-11s}
.xox-d--plus{top:64px;left:48%;width:26px;height:26px;color:#24457A;opacity:.22;animation:xoxFloatA 18s ease-in-out infinite;animation-delay:-9s}
.xox-d--capsule svg,.xox-d--plus svg{display:block;width:100%;height:100%}
.xox-d--dot1{top:400px;right:31%;width:14px;height:14px;border-radius:50%;background:#E9C9BE;animation:xoxFloatC 14s ease-in-out infinite;animation-delay:-4s}
.xox-d--dot2{top:170px;right:4%;width:8px;height:8px;border-radius:50%;background:#24457A;opacity:.18;animation:xoxFloatA 18s ease-in-out infinite;animation-delay:-13s}
@keyframes xoxFloatA{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(18px,-22px,0)}}
@keyframes xoxFloatB{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}50%{transform:translate3d(-16px,14px,0) rotate(8deg)}}
@keyframes xoxFloatC{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-14px,0)}}

.xox-hero2>.xox-hero2__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.xox-hero2__chips li{display:flex;align-items:center;gap:6px;margin:0;padding:7px 14px;background:#fff;border:1px solid #ECE8E1;border-radius:999px;font-size:13px;line-height:1.4;color:#4A5060;box-shadow:0 1px 2px rgba(30,36,48,.04)}
.xox-hero2__chips li::before{content:"";flex:none;width:14px;height:14px;background:#24457A;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12.5l4.2 4L19 7'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12.5l4.2 4L19 7'/></svg>") center/contain no-repeat}
.xox-hero2>.xox-hero2__title{margin:28px 0 0;text-wrap:balance;font-family:'Noto Serif HK',serif;--theme-font-family:'Noto Serif HK',serif;font-weight:700;font-size:clamp(32px,4.4vw,60px);line-height:1.28;letter-spacing:.01em;color:#1E2430;max-width:20em}
.xox-hero2__title mark{background:transparent!important;color:#24457A}
.xox-hero2>.xox-hero2__lead{margin:20px 0 0;font-size:18px;line-height:1.8;color:#4A5060;max-width:34em}
.xox-hero2>.xox-hero2__ctas{margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.xox-hero2 .xox-hero2__primary .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 32px;border:0;border-radius:999px;background:#24457A!important;color:#fff!important;font-size:16px;font-weight:700;line-height:1.2;transition:background-color .2s ease,box-shadow .2s ease}
.xox-hero2 .xox-hero2__primary .wp-block-button__link:hover{background:#1B355E!important;box-shadow:0 8px 22px rgba(36,69,122,.25)}
.xox-hero2 .xox-hero2__secondary .wp-block-button__link{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:transparent!important;color:#24457A!important;font-size:15px;font-weight:500;box-shadow:none}
.xox-hero2 .xox-hero2__secondary .wp-block-button__link:hover{color:#1B355E!important;text-decoration:underline;text-underline-offset:4px}

/* 窄於內容寬度的元素靠左，與 1200px 容器左緣對齊 */
.xox-hero2>.xox-hero2__title,.xox-hero2>.xox-hero2__lead{margin-left:max(0px,calc((100% - 1200px) / 2))!important;margin-right:auto!important}

/* 療程分類卡片 */
.xox-hero2>.xox-tnav{margin-top:64px}
.xox-tnav__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}
.xox-tnav__eyebrow{display:block;margin-bottom:6px;font-size:12px;font-weight:700;letter-spacing:.16em;color:#8A3B33}
.xox-tnav .xox-tnav__title{margin:0;font-family:'Noto Serif HK',serif;font-weight:700;font-size:26px;line-height:1.4;color:#1E2430}
.xox-tnav__all{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:15px;font-weight:500;color:#24457A;text-decoration:none}
.xox-tnav__all:hover{color:#1B355E}
.xox-tnav__grid{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.xox-tnav__grid>li{display:flex;margin:0;padding:0}
.xox-tcard{position:relative;flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:28px;min-height:196px;padding:22px;box-sizing:border-box;background:#fff;border:1px solid #ECE8E1;border-radius:20px;box-shadow:0 1px 2px rgba(30,36,48,.04),0 6px 20px rgba(30,36,48,.05);color:#1E2430;text-decoration:none;transition:transform .28s cubic-bezier(.2,.7,.3,1),box-shadow .28s ease,border-color .28s ease}
.xox-tcard:hover{transform:translateY(-4px);border-color:#D6DEEB;box-shadow:0 2px 4px rgba(30,36,48,.05),0 18px 40px rgba(36,69,122,.14);color:#1E2430}
.xox-tcard,.xox-tcard *,.xox-tnav__all{text-decoration:none!important}
.xox-tcard:focus-visible{outline:2px solid #24457A;outline-offset:3px}
.xox-tcard__icon{width:56px;height:56px;border-radius:16px;background:#EEF2F8;color:#24457A;display:flex;align-items:center;justify-content:center;transition:background-color .28s ease,color .28s ease,transform .28s ease}
.xox-tcard:hover .xox-tcard__icon{background:#24457A;color:#fff;transform:scale(1.04)}
.xox-tcard__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.xox-tcard__text{display:flex;flex-direction:column;gap:4px;min-width:0}
.xox-tcard .xox-tcard__title{margin:0;font-family:'Noto Sans HK',sans-serif;--theme-font-family:'Noto Sans HK',sans-serif;font-size:18px;font-weight:700;line-height:1.4;color:#1E2430}
.xox-tcard__desc{font-size:13.5px;line-height:1.5;color:#4A5060}
.xox-tcard__count{font-size:12.5px;line-height:1.5;color:#8A3B33}
.xox-tcard__arrow{flex:none;width:36px;height:36px;border-radius:50%;background:#24457A;color:#fff;display:flex;align-items:center;justify-content:center;transition:transform .28s ease,background-color .28s ease}
.xox-tcard:hover .xox-tcard__arrow{transform:translateX(3px);background:#1B355E}

@media (max-width:1024px){.xox-tnav__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){
.xox-hero2.xox-hero2{padding:36px 20px 56px!important}
.xox-hero2__chips{gap:8px}
.xox-hero2__chips li{padding:6px 11px;font-size:12px}
.xox-hero2>.xox-hero2__title{margin-top:24px;font-size:32px;line-height:1.32}
.xox-hero2>.xox-hero2__lead{margin-top:14px;font-size:16px;line-height:1.75}
.xox-hero2>.xox-hero2__ctas{margin-top:26px;flex-direction:column;align-items:stretch;gap:6px}
.xox-hero2__ctas .wp-block-button{width:100%}
.xox-hero2 .xox-hero2__primary .wp-block-button__link,.xox-hero2 .xox-hero2__secondary .wp-block-button__link{display:flex;width:100%;justify-content:center}
.xox-hero2>.xox-tnav{margin-top:40px}
.xox-tnav__eyebrow{font-size:11px;margin-bottom:4px}
.xox-tnav .xox-tnav__title{font-size:22px}
.xox-tnav__all{font-size:14px}
.xox-tnav__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.xox-tcard{gap:18px;min-height:0;padding:16px;border-radius:18px;justify-content:flex-start}
.xox-tcard__icon{width:44px;height:44px;border-radius:13px}
.xox-tcard__icon svg{width:24px;height:24px}
.xox-tcard__arrow{position:absolute;top:16px;right:16px;width:30px;height:30px}
.xox-tcard__arrow svg{width:14px;height:14px}
.xox-tcard .xox-tcard__title{font-size:16px}
.xox-tcard__desc{font-size:12.5px}
.xox-tcard__count{font-size:12px}
.xox-d--blob1{top:-110px;right:-130px;width:320px;height:320px;filter:blur(36px)}
.xox-d--blob2{top:300px;right:auto;left:-120px;width:260px;height:260px;filter:blur(40px)}
.xox-d--ring{top:30px;right:22px;width:76px;height:76px}
.xox-d--capsule{display:none}
.xox-hero2__title mark{display:block}
.xox-d--plus{top:12px;left:62%;width:20px;height:20px}
.xox-d--dot1{top:128px;right:108px;width:10px;height:10px}
.xox-d--dot2{display:none}
}
@media (prefers-reduced-motion:reduce){.xox-d{animation:none!important}.xox-tcard,.xox-tcard__icon,.xox-tcard__arrow{transition:none}.xox-tcard:hover{transform:none}}