/* Our Services — luxury editorial edition (lx-). Tokens from colors_and_type.css. */
.lx{background:var(--parchment);color:var(--ink);font-family:var(--font-sans)}
.lx *{box-sizing:border-box}
.lx a{color:inherit;text-decoration:none}
.lx-stage{max-width:1320px;margin:0 auto;padding:0 clamp(20px,5vw,64px)}
.lx-eye{font-size:11px;letter-spacing:.32em;text-transform:uppercase;font-weight:500;color:var(--brand-navy)}
.lx-eye--gold{color:var(--brand-gold)}
.lx-orn{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 auto 28px;width:160px}
.lx-orn::before,.lx-orn::after{content:"";flex:1;height:1px;background:var(--brand-gold)}
.lx-orn i{width:7px;height:7px;transform:rotate(45deg);border:1px solid var(--brand-gold);display:block}

/* hero */
.lx-hero{position:relative;min-height:min(88vh,820px);display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--brand-navy-deep)}
.lx-hero__img{position:absolute;inset:0;background-size:cover;background-position:center 40%;transform:scale(1.04);animation:lxDrift 18s var(--ease-out) forwards}
@keyframes lxDrift{to{transform:scale(1)}}
.lx-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,29,66,.78) 0%,rgba(2,29,66,.45) 55%,rgba(2,29,66,.15) 100%),linear-gradient(180deg,rgba(2,29,66,.45) 0%,rgba(2,29,66,.2) 40%,rgba(2,29,66,.9) 100%)}
.lx-hero__inner{text-shadow:0 2px 18px rgba(2,29,66,.55)}
.lx-hero__inner{position:relative;z-index:1;width:100%}
.lx-crumbs{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(247,242,233,.75);margin-bottom:28px;display:flex;gap:10px}
.lx-crumbs a:hover{color:#fff}
.lx-hero__title{font-family:var(--font-display);font-weight:300;font-size:clamp(48px,7.4vw,112px);line-height:.98;letter-spacing:-.015em;margin:18px 0 18px;max-width:14ch;text-wrap:balance}
.lx-hero__place{color:var(--brand-red-bright)}
.lx-hero__title em{font-style:italic;color:var(--brand-gold)}
.lx-hero__zh{font-family:var(--font-serif-cn);font-size:15px;letter-spacing:.3em;color:rgba(247,242,233,.85)}
.lx-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(48px,8vh,88px);border-top:1px solid rgba(247,242,233,.28)}
.lx-stat{padding:26px 24px 34px 0;display:flex;align-items:baseline;gap:16px}
.lx-stat+.lx-stat{padding-left:24px;border-left:1px solid rgba(247,242,233,.2)}
.lx-stat__num{font-family:var(--font-display);font-weight:400;font-size:clamp(34px,3.6vw,48px);line-height:1;color:#fff}
.lx-stat__num small{font-size:.42em;margin-left:3px;letter-spacing:.06em}
.lx-stat__label{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:rgba(247,242,233,.78);line-height:1.5}

/* intro */
.lx-intro{padding:clamp(88px,12vw,148px) 0 clamp(56px,7vw,88px);text-align:center}
.lx-intro__title{font-family:var(--font-display);font-weight:300;font-size:clamp(36px,4.4vw,60px);line-height:1.08;margin:18px auto 22px;max-width:18ch;color:var(--brand-navy-ink);text-wrap:balance}
.lx-intro__title em{font-style:italic;color:var(--brand-red-deep)}
.lx-intro__sub{font-family:var(--font-display);font-style:italic;font-size:22px;line-height:1.55;color:var(--ink-soft);max-width:44ch;margin:0 auto;text-wrap:pretty}

/* service grid */
.lx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(40px,4vw,64px) clamp(24px,2.6vw,40px);padding-bottom:clamp(96px,12vw,160px)}
.lx-card{display:flex;flex-direction:column}
.lx-card{padding-top:28px;border-top:1px solid var(--brand-navy-ink)}
.lx-card__badge{font-size:10px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:var(--brand-red-deep);margin-right:auto}
.lx-card__meta{display:flex;align-items:baseline;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--rule)}
.lx-card__code{font-family:var(--font-display);font-style:italic;font-size:18px;color:var(--brand-red-deep)}
.lx-card__cn{font-family:var(--font-serif-cn);font-size:13px;letter-spacing:.2em;color:var(--ink-mute)}
.lx-card__name{font-family:var(--font-display);font-weight:400;font-size:clamp(26px,2.2vw,32px);line-height:1.1;margin:16px 0 10px;color:var(--brand-navy-ink)}
.lx-card__desc{font-size:15px;line-height:1.65;color:var(--ink-soft);margin:0 0 20px;text-wrap:pretty}
.lx-card__go{margin-top:auto;align-self:flex-start;font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:600;color:var(--brand-navy);padding-bottom:6px;background:linear-gradient(var(--brand-gold),var(--brand-gold)) left bottom/28px 1px no-repeat;transition:background-size var(--dur-slow) var(--ease-out)}
.lx-card:hover .lx-card__go{background-size:100% 1px}

/* principles */
.lx-how{background:var(--brand-navy-deep);color:#fff;padding:clamp(88px,11vw,140px) 0}
.lx-how__head{text-align:center;margin-bottom:clamp(56px,7vw,88px)}
.lx-how__title{font-family:var(--font-display);font-weight:300;font-size:clamp(36px,4.4vw,60px);line-height:1.08;margin:18px 0 0;text-wrap:balance;color:#fff}
.lx-how__title em{font-style:italic;color:var(--brand-gold)}
.lx-how__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.lx-how__cell{padding:8px clamp(18px,2.4vw,36px) 0;border-left:1px solid rgba(230,182,85,.35)}
.lx-how__cell:first-child{border-left:0;padding-left:0}
.lx-how__num{font-family:var(--font-display);font-style:italic;font-size:44px;line-height:1;color:var(--brand-gold)}
.lx-how__name{font-family:var(--font-display);font-weight:400;font-size:26px;line-height:1.15;margin:22px 0 4px;color:#fff}
.lx-how__zh{font-family:var(--font-serif-cn);font-size:12px;letter-spacing:.24em;color:rgba(247,242,233,.6);margin-bottom:16px}
.lx-how__body{font-size:15px;line-height:1.7;color:rgba(247,242,233,.82);margin:0;text-wrap:pretty}

/* enquiry — full-bleed photo under a navy mask */
.lx-cta{position:relative;background:var(--brand-navy-deep) center/cover no-repeat;color:#fff;overflow:hidden}
.lx-cta::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,29,66,.96) 0%,rgba(2,29,66,.9) 50%,rgba(2,29,66,.45) 100%)}
.lx-cta__body{position:relative;z-index:1;padding-top:clamp(88px,11vw,150px);padding-bottom:clamp(88px,11vw,150px)}
.lx-cta__body>*{max-width:560px}
.lx-cta__title{font-family:var(--font-display);font-weight:300;font-size:clamp(34px,3.8vw,54px);line-height:1.08;margin:18px 0 18px;color:#fff;text-wrap:balance}
.lx-cta__title em{font-style:italic;color:var(--brand-gold)}
.lx-cta__sub{font-size:16px;line-height:1.7;color:rgba(247,242,233,.88);margin:0 0 6px}
.lx-cta__sub-zh{font-family:var(--font-serif-cn);font-size:14px;line-height:1.9;color:rgba(247,242,233,.72);margin:0 0 32px}
.lx-cta__rows{border-top:1px solid rgba(247,242,233,.4);margin-bottom:36px}
.lx-cta__row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:16px 0;border-bottom:1px solid rgba(247,242,233,.4);flex-wrap:wrap}
.lx-cta__row>span{font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:#fff}
.lx-cta__row a{font-family:var(--font-sans);font-weight:500;font-size:18px;letter-spacing:.01em;color:#fff}
.lx-cta__row a:hover{color:var(--brand-gold)}
.lx-cta__actions{display:flex;gap:14px;flex-wrap:wrap}
.lx-btn{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.26em;text-transform:uppercase;font-weight:600;padding:17px 28px;border:1px solid #fff;transition:background var(--dur-base),color var(--dur-base),border-color var(--dur-base)}
.lx-btn svg{width:15px;height:15px}
.lx-btn--gold{background:var(--brand-gold);border-color:var(--brand-gold);color:var(--brand-navy-deep) !important}
.lx-btn--gold:hover{background:#fff;border-color:#fff}
.lx-btn--line{color:#fff}
.lx-btn--line:hover{background:#fff;color:var(--brand-navy-deep) !important}

/* zh-Hant twin: Chinese-primary display type */
.lx--zh .lx-hero__title,.lx--zh .lx-intro__title,.lx--zh .lx-how__title,.lx--zh .lx-cta__title,.lx--zh .lx-card__name,.lx--zh .lx-how__name{font-family:var(--font-serif-tc,"Noto Serif TC"),serif;font-weight:700;letter-spacing:.02em}
.lx--zh .lx-hero__title{font-size:clamp(44px,6.4vw,96px);line-height:1.1;max-width:none}
.lx--zh .lx-hero__title em,.lx--zh .lx-intro__title em,.lx--zh .lx-how__title em,.lx--zh .lx-cta__title em{font-style:normal}
.lx--zh .lx-hero__zh,.lx--zh .lx-how__zh{font-family:var(--font-display);font-style:italic;letter-spacing:.04em}
.lx--zh .lx-intro__sub,.lx--zh .lx-card__desc,.lx--zh .lx-how__body,.lx--zh .lx-cta__sub{font-family:var(--font-sans-tc,"Noto Sans TC"),sans-serif;font-style:normal}
.lx--zh .lx-intro__sub{font-size:19px}
.lx--zh .lx-card__cn{font-family:var(--font-display);font-style:italic;letter-spacing:.04em;font-size:15px}
.lx--zh .lx-cta__sub-zh{font-family:var(--font-sans)}
.lx--zh .lx-eye{letter-spacing:.22em}

@media (max-width:1000px){
  .lx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lx-how__grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}
  .lx-how__cell:nth-child(3){border-left:0;padding-left:0}
  .lx-cta::before{background:rgba(2,29,66,.86)}
}
@media (max-width:640px){
  .lx-grid{grid-template-columns:1fr}
  .lx-stats{grid-template-columns:1fr}
  .lx-stat,.lx-stat+.lx-stat{padding:18px 0;border-left:0;border-bottom:1px solid rgba(247,242,233,.18)}
  .lx-how__grid{grid-template-columns:1fr}
  .lx-how__cell{border-left:0;padding-left:0}
}
@media (prefers-reduced-motion:reduce){.lx-hero__img{animation:none;transform:none}}
