/* LHN home (en) — from live page 6331 */
:root{
  --gold:#B79B56; --champagne:#D0BE91; --gold-light:#C2AA6F; --gold-antique:#937C49;
  --aubergine:#43334D; --royal:#6C6074; --deep:#34283D; --abyss:#271E30;
  --surface:#43334D; --elevated:#50405E; --border:#5A4A68;
  --ivory:#FAF7F1; --txt2:#C9BFD4; --muted:#988F9D;
  --maxw:1280px;
  --grad-gold:linear-gradient(180deg,#D0BE91,#B79B56 55%,#937C49);
  --font-display:'Cormorant Garamond',Georgia,serif;
  --font-body:'Jost',system-ui,-apple-system,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  font-family:var(--font-body); background:var(--abyss); color:var(--ivory);
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}

/* ============ HERO SLIDER ============ */
.hero{
  position:relative; width:100%;
  aspect-ratio:1672/941;
  max-height:760px;
  overflow:hidden; background:var(--abyss);
}
.hero__track{position:absolute;inset:0;}
.hero__slide{
  position:absolute;inset:0;opacity:0;
  transition:opacity 1.3s ease;
  will-change:opacity;
}
.hero__slide.is-active{opacity:1;z-index:2;}
.hero__slide picture,.hero__slide img{width:100%;height:100%;}
.hero__slide img{
  object-fit:cover;object-position:center;
  transform:scale(1.0);
}
.hero__slide.is-active img{
  animation:kenburns 7s ease-out forwards;
}
@keyframes kenburns{from{transform:scale(1.0);}to{transform:scale(1.09);}}
/* soft edge depth, no text */
.hero::after{
  content:"";position:absolute;inset:0;z-index:3;pointer-events:none;
  background:radial-gradient(120% 100% at 50% 50%,transparent 55%,rgba(20,16,28,.45) 100%);
}
/* arrows (desktop) */
.hero__nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:46px;height:46px;border-radius:50%;
  border:1px solid rgba(208,190,145,.45);background:rgba(39,30,48,.35);
  backdrop-filter:blur(6px);color:var(--champagne);
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  transition:.3s; opacity:0;
}
.hero:hover .hero__nav{opacity:1;}
.hero__nav:hover{background:var(--gold);color:var(--abyss);border-color:var(--gold);}
.hero__nav--prev{left:22px;} .hero__nav--next{right:22px;}
.hero__nav svg{width:18px;height:18px;}
/* progress indicators */
.hero__dots{
  position:absolute;left:0;right:0;bottom:22px;z-index:5;
  display:flex;gap:10px;justify-content:center;
}
.hero__dot{
  width:42px;height:3px;border-radius:3px;cursor:pointer;
  background:rgba(250,247,241,.25);overflow:hidden;position:relative;
}
.hero__dot span{
  position:absolute;inset:0;width:0;background:var(--grad-gold);border-radius:3px;
}
.hero__dot.is-active span{
  animation:fill var(--dur,7s) linear forwards;
}
@keyframes fill{from{width:0;}to{width:100%;}}

/* ============ TRUST STRIP ============ */
.trust{
  background:linear-gradient(180deg,var(--deep),var(--abyss));
  border-top:1px solid rgba(183,155,86,.18);
  border-bottom:1px solid rgba(183,155,86,.18);
}
.trust__grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1px;background:rgba(183,155,86,.14);
}
.trust__item{
  background:var(--abyss);
  display:flex;align-items:center;gap:14px;
  padding:26px 22px;
}
.trust__ic{
  flex:none;width:42px;height:42px;border-radius:50%;
  border:1px solid rgba(183,155,86,.5);
  display:flex;align-items:center;justify-content:center;color:var(--champagne);
}
.trust__ic svg{width:20px;height:20px;}
.trust__t{font-family:var(--font-body);font-weight:500;font-size:13.5px;letter-spacing:.04em;color:var(--ivory);}
.trust__s{font-family:var(--font-body);font-weight:300;font-size:11px;color:var(--muted);margin-top:2px;letter-spacing:.02em;}

/* ============ CATEGORIES ============ */
.cats{padding:74px 0 86px;}
.cats__head{text-align:center;margin-bottom:42px;}
.eyebrow{
  font-family:var(--font-body);font-weight:500;letter-spacing:.42em;
  text-transform:uppercase;font-size:11px;color:var(--gold);
}
.cats__title{
  font-family:var(--font-display);font-weight:600;font-size:38px;
  line-height:1.05;margin-top:10px;
  background:linear-gradient(180deg,var(--champagne),var(--gold) 60%,var(--gold-antique));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.cats__grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.card{
  position:relative;display:block;border-radius:18px;overflow:hidden;
  aspect-ratio:6/6;
  padding:3px; background:linear-gradient(155deg,rgba(208,190,145,.7),rgba(147,124,73,.25) 45%,rgba(90,74,104,.4));
  isolation:isolate;
}
.card__inner{
  position:relative;width:100%;height:100%;border-radius:15px;overflow:hidden;
  background:var(--deep);
}
.card__img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .9s cubic-bezier(.2,.7,.2,1);
}
.card__inner::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(39,30,48,.05) 30%,rgba(39,30,48,.85) 100%);
}
.card__body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:30px 30px 32px;}
.card__eyebrow{
  font-family:var(--font-body);font-weight:500;letter-spacing:.34em;
  text-transform:uppercase;font-size:11px;color:var(--champagne);
}
.card__name{
  font-family:var(--font-display);font-weight:600;font-size:38px;line-height:1.02;
  margin:0;
  background:linear-gradient(180deg,var(--champagne),var(--gold) 60%,var(--gold-antique));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.card__desc{
  font-family:var(--font-body);font-weight:300;font-size:13px;line-height:1.5;
  color:var(--txt2);max-width:90%;
}
.card__arrow{
  position:absolute;top:24px;right:24px;z-index:2;
  width:46px;height:46px;border-radius:50%;
  border:1px solid rgba(208,190,145,.55);background:rgba(39,30,48,.35);
  backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;color:var(--champagne);
  transition:.4s;
}
.card__arrow svg{width:18px;height:18px;transition:transform .4s;}
/* hover */
@media(hover:hover){
  .card:hover .card__img{transform:scale(1.07);}
  .card:hover .card__arrow{background:var(--gold);color:var(--abyss);border-color:var(--gold);}
  .card:hover .card__arrow svg{transform:translate(2px,-2px);}
}

/* ============ RESPONSIVE — mobile-app feel ============ */
@media(max-width:860px){
  .trust__grid{grid-template-columns:1fr 1fr;}
  .cats__grid{gap:16px;}
}
/* mobile portrait banners — match image ratio so nothing is cropped */
@media(max-width:768px){
  .hero{aspect-ratio:1122/1402;max-height:none;}
  .hero__slide img{object-fit:contain;}
  .hero__slide.is-active img{animation:none;}
}
@media(max-width:560px){
  .wrap{padding:0 16px;}
  .hero__nav{display:none;}
  .hero__dots{bottom:16px;}
  .hero__dot{width:30px;}
  .trust{}
  .trust__item{flex-direction:column;text-align:center;gap:9px;padding:22px 10px;}
  .trust__t{font-size:12px;}
  .trust__s{display:none;}
  .cats{padding:46px 0 56px;}
  .cats__grid{gap:12px;}
  .card{aspect-ratio:4/4;border-radius:14px;}
  .card__body{padding:16px 14px 18px;}
  .card__name{font-size:clamp(22px,7vw,30px);}
  .card__arrow{width:36px;height:36px;top:12px;right:12px;}
}

@media(prefers-reduced-motion:reduce){
  .hero__slide.is-active img{animation:none;}
  .hero__dot.is-active span{animation:none;width:100%;}
  *{transition:none!important;}
}

/* ============ FOOTER ============ */
.foot{
  background:linear-gradient(180deg,var(--deep),#1C1622);
  border-top:1px solid rgba(183,155,86,.22);
  padding:66px 24px 30px;
  color:var(--txt2);
}
.foot__grid{
  max-width:var(--maxw);margin:0 auto;
  display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:48px;
}
.foot__brand{max-width:340px;}
.foot__logo{
  display:inline-block;
  font-family:var(--font-display);font-weight:600;font-size:42px;line-height:1;
  background:linear-gradient(180deg,var(--champagne),var(--gold) 60%,var(--gold-antique));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.foot__text{
  font-weight:300;font-size:13.5px;line-height:1.7;margin-top:20px;color:var(--txt2);
}
.foot__social{display:flex;gap:12px;margin-top:18px;}
.foot__col h4{
  font-family:var(--font-body);font-weight:600;font-size:12px;letter-spacing:.28em;
  text-transform:uppercase;margin-bottom:20px;
  background:linear-gradient(180deg,var(--champagne),var(--gold) 60%,var(--gold-antique));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.foot__links{list-style:none;display:flex;flex-direction:column;gap:11px;}
.foot__links a{
  font-weight:300;font-size:13.5px;color:var(--txt2);width:fit-content;
  transition:color .3s,padding-left .3s;
}
.foot__links a:hover{color:var(--champagne);padding-left:5px;}
.foot__contact{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.foot__ic{
  flex:none;width:36px;height:36px;border-radius:50%;
  border:1px solid rgba(183,155,86,.45);
  display:flex;align-items:center;justify-content:center;color:var(--champagne);
}
.foot__ic svg{width:16px;height:16px;}
.foot__ctext a{font-weight:300;font-size:13.5px;color:var(--txt2);transition:color .3s;}
.foot__ctext a:hover{color:var(--champagne);}
@media(max-width:860px){
  .foot__grid{grid-template-columns:1fr 1fr;gap:36px 28px;}
  .foot__brand{grid-column:1 / -1;max-width:none;}
}
@media(max-width:560px){
  .foot{padding:48px 16px 26px;}
  .foot__grid{gap:30px 24px;}
}
