.lph{position:relative;isolation:isolate;width:100%;background:#171b1b;color:#fff;font-family:inherit;--lph-yellow:#ffdc19;--lph-focus:center;--lph-mobile-focus:center}.lph *{box-sizing:border-box}.lph [hidden]{display:none!important}.lph__slides{display:grid}.lph__slide{position:relative;min-height:520px;min-height:clamp(480px,33vw,650px);overflow:hidden;background:#171b1b}.lph .lph__image{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--lph-focus);margin:0}.lph__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.76) 34%,rgba(0,0,0,.4) 67%,rgba(0,0,0,.08) 100%)}.lph__inner{position:relative;max-width:1320px;margin:0 auto;padding:88px 40px 112px;min-height:inherit;display:flex;align-items:center}.lph__copy{width:min(100%,780px)}.lph.lph .lph__eyebrow{margin:0 0 20px;color:var(--lph-yellow)!important;font-size:.875rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;line-height:1.5}.lph.lph .lph__title{font:inherit;font-size:clamp(2.25rem,4vw,4.25rem);font-weight:600;line-height:1.12;letter-spacing:-.025em;color:#fff!important;margin:0 0 24px;max-width:20ch;text-wrap:balance;overflow-wrap:break-word}.lph.lph .lph__body{font-size:1.0625rem;line-height:1.7;color:#fff!important;margin:0 0 30px;max-width:63ch}.lph.lph .lph__cta,.lph.lph .lph__cta:visited{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:54px;padding:16px 24px;border:1px solid var(--lph-yellow);border-radius:4px;background:var(--lph-yellow);color:#171717!important;text-decoration:none;font-size:1rem;line-height:1.4;font-weight:600}.lph.lph .lph__cta:hover{background:#ffe65c;border-color:#ffe65c;color:#171717!important}.lph__controls{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);width:min(calc(100% - 80px),1240px);display:flex;align-items:center;justify-content:space-between;gap:20px}.lph__dots,.lph__arrows{display:flex;gap:8px}.lph.lph .lph__controls button{font:inherit;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:0;border:1px solid #b8b8b8;border-radius:3px;background:rgba(0,0,0,.55);color:#fff!important;cursor:pointer}.lph.lph .lph__controls button[aria-pressed=true]{background:var(--lph-yellow);border-color:var(--lph-yellow);color:#171717!important}.lph.lph .lph__controls button:hover{border-color:#fff}.lph.lph :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:4px}.lph__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.lph.is-ready .lph__slide:not([hidden]) .lph__copy{animation:lph-reveal .32s ease-out}@keyframes lph-reveal{from{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.lph__slide{min-height:600px}.lph .lph__image{object-position:var(--lph-mobile-focus)}.lph__shade{background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.78) 62%,rgba(0,0,0,.35))}.lph__inner{padding:80px 24px 108px;align-items:flex-end}.lph.lph .lph__title{font-size:2.5rem;max-width:17ch}.lph.lph .lph__body{font-size:1rem}.lph__controls{width:calc(100% - 48px);bottom:24px;flex-wrap:wrap}.lph__dots{gap:4px}.lph.lph .lph__dots button{width:36px;min-width:36px}.lph__arrows{margin-left:auto}.lph.lph .lph__eyebrow{font-size:.8125rem}}@media(prefers-reduced-motion:reduce){.lph.is-ready .lph__slide:not([hidden]) .lph__copy{animation:none}}
@media(max-width:640px){.lph:has(.lph__controls) .lph__inner{padding-bottom:160px}}

/* 1.1: edge-to-edge image, restrained typography and a brighter image area. */
.lph.lph--full { width: 100vw; max-width: none !important; margin-left: calc(50% - 50vw); margin-right: 0 !important; border-radius: 0; flex-shrink: 0; }
.lph .lph__slide { min-height: clamp(480px, 32vw, 600px); }
.lph .lph__inner { max-width: 1400px; padding: 72px 40px 100px; }
.lph .lph__copy { width: min(100%, 700px); }
.lph .lph__shade { background: linear-gradient(90deg, rgba(9,13,13,.91) 0%, rgba(9,13,13,.8) 27%, rgba(9,13,13,.53) 48%, rgba(9,13,13,.16) 72%, rgba(9,13,13,.04) 100%); }
.lph.lph .lph__eyebrow { display: flex; align-items: center; gap: 14px; font-size: .8125rem; letter-spacing: .16em; margin-bottom: 22px; }
.lph .lph__eyebrow::before { content: ''; display: block; flex: 0 0 32px; height: 2px; background: #ffdc19; }
.lph.lph .lph__title { font-size: clamp(2.5rem, 4.1vw, 4.5rem); font-weight: 600; line-height: 1.05; letter-spacing: -.035em; max-width: 19ch; margin-bottom: 24px; }
.lph.lph .lph__body { max-width: 53ch; font-size: 1rem; line-height: 1.7; margin-bottom: 30px; color: #f1f2f2 !important; }
.lph.lph .lph__cta { gap: 36px; padding: 16px 24px; border-radius: 2px; min-height: 56px; box-shadow: 0 5px 18px rgba(0,0,0,.12); }
.lph .lph__cta > span { transition: transform .18s ease; }
.lph .lph__cta:hover > span { transform: translateX(4px); }
.lph .lph__controls { width: min(calc(100% - 80px), 1320px); bottom: 24px; }
.lph.lph .lph__dots button { position: relative; background: transparent; border: 0; border-radius: 0; color: #fff !important; }
.lph.lph .lph__dots button::after { content: ''; position: absolute; left: 8px; right: 8px; bottom: 2px; height: 2px; background: #aaa; }
.lph.lph .lph__dots button[aria-pressed=true] { background: transparent; color: #ffdc19 !important; }
.lph.lph .lph__dots button[aria-pressed=true]::after { background: #ffdc19; }
.lph.lph .lph__arrows button { border-color: rgba(255,255,255,.55); border-radius: 50%; background: rgba(0,0,0,.3); }
@media(max-width:640px) {
  .lph .lph__slide { min-height: 560px; }
  .lph .lph__inner { padding: 64px 24px 64px; align-items: flex-end; }
  .lph:has(.lph__controls) .lph__inner { padding-bottom: 152px; }
  .lph .lph__shade { background: linear-gradient(0deg, rgba(9,13,13,.95) 0%, rgba(9,13,13,.85) 48%, rgba(9,13,13,.48) 78%, rgba(9,13,13,.2) 100%); }
  .lph.lph .lph__title { font-size: clamp(2.25rem, 9vw, 3rem); max-width: 18ch; line-height: 1.1; }
  .lph.lph .lph__body { font-size: 1rem; }
  .lph .lph__controls { width: calc(100% - 48px); }
}
@media(prefers-reduced-motion:reduce) { .lph .lph__cta > span { transition: none; } }

/* Keep the viewport image independent of the centered Spectra flex layout. */
.lph.lph--full { margin-left: 0; left: 0; }
.lph .lph__inner { width: min(1320px, calc(100% - 48px)); max-width: 1320px; padding-left: 0; padding-right: 0; margin-left: auto; margin-right: auto; }
.lph .lph__controls { width: min(1320px, calc(100% - 48px)); }

/* Shared grid row: every slide contributes to a single stable hero height. */
.lph .lph__slides { display: grid; grid-template-columns: minmax(0, 1fr); align-items: stretch; }
.lph .lph__slides > .lph__slide { grid-area: 1 / 1; min-width: 0; align-self: stretch; }
.lph .lph__slides > .lph__slide[hidden] { display: block !important; visibility: hidden !important; pointer-events: none; }
.lph .lph__slides > .lph__slide > .lph__inner { height: 100%; }

/* Consistent button radius requested by Anders Heli Hansen. */
.lph.lph .lph__cta,
.lph.lph .lph__controls button { border-radius: 6px !important; }
