.elementor-23999 .elementor-element.elementor-element-adfd94d{--display:flex;}.elementor-23999 .elementor-element.elementor-element-416a957{--display:flex;}.elementor-23999 .elementor-element.elementor-element-62e0c89 > .elementor-widget-container{margin:0px 0px -10px 0px;}/* Start custom CSS for html, class: .elementor-element-0010a83 *//* ============================================================
   NIHAPA TOURS — OUR STORY HERO

   PURPOSE:
   Matches the established About Us hero behaviour.

   EXCEPTION:
   Typography is intentionally controlled here because the
   Hero follows the dedicated About Us hero system.
   ============================================================ */


/* ============================================================
1. HERO FOUNDATION
============================================================ */

.nihapa-story-hero {

    position: relative;
    isolation: isolate;

    width: 100vw;
    max-width: 100vw;

    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);

    min-height: 610px;

    overflow: hidden;

    background: #171a16;

    padding: 0;
}


/* ============================================================
2. BACKGROUND
============================================================ */

.nihapa-story-hero__background {

    position: absolute;

    inset: 0;

    z-index: -3;

    width: 100%;
    height: 100%;

    overflow: hidden;
}


.nihapa-story-hero__background img {

    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    max-width: none;

    display: block;

    object-fit: cover;

    object-position: center 47%;

    filter:
        brightness(.93)
        contrast(1.03)
        saturate(.96);

    transform: scale(1.01);

    transition:
        transform 7s cubic-bezier(.2,.6,.25,1);
}


.nihapa-story-hero:hover
.nihapa-story-hero__background img {

    transform: scale(1.025);
}


/* ============================================================
3. OVERLAY
============================================================ */

.nihapa-story-hero__overlay {

    position: absolute;

    inset: 0;

    z-index: -2;

    pointer-events: none;

    background:

        linear-gradient(
            90deg,
            rgba(10,13,10,.84) 0%,
            rgba(10,13,10,.71) 22%,
            rgba(10,13,10,.47) 40%,
            rgba(10,13,10,.15) 61%,
            rgba(10,13,10,.03) 100%
        ),

        linear-gradient(
            180deg,
            rgba(8,10,8,.05) 0%,
            rgba(8,10,8,.01) 43%,
            rgba(8,10,8,.20) 67%,
            rgba(8,10,8,.72) 100%
        );
}


/* ============================================================
4. MAIN CONTAINER
============================================================ */

.nihapa-story-hero__container {

    position: relative;

    z-index: 3;

    width:
        min(
            calc(100% - 80px),
            1380px
        );

    min-height: 610px;

    margin: 0 auto;

    display: flex;
    align-items: center;

    padding-top: 55px;
    padding-bottom: 145px;
}


/* ============================================================
5. CONTENT
============================================================ */

.nihapa-story-hero__content {

    width:
        min(620px,51vw);

    color: #ffffff;
}


/* ============================================================
6. EYEBROW
============================================================ */

.nihapa-story-hero__eyebrow {

    display: flex;
    align-items: center;

    gap: 14px;

    margin:
        0 0 19px;

    color:
        rgba(255,255,255,.80);

    font-family: inherit;

    font-size: 11px;

    font-weight: 600;

    line-height: 1.3;

    letter-spacing: .19em;

    text-transform: uppercase;
}


.nihapa-story-hero__eyebrow-line {

    display: block;

    width: 38px;
    height: 1px;

    flex:
        0 0 38px;

    background:
        rgba(255,255,255,.78);
}


/* ============================================================
7. TITLE
============================================================ */

.nihapa-story-hero__title {

    margin: 0;

    padding: 0;

    max-width: 650px;

    color: #ffffff;

    font-family: inherit;

    font-size:
        clamp(58px,5.8vw,92px);

    font-weight: 300;

    line-height: .91;

    letter-spacing: -.055em;
}


.nihapa-story-hero__title strong {

    display: block;

    margin-top: 5px;

    color: #ffffff;

    font-weight: 650;

    letter-spacing: -.058em;
}


/* ============================================================
8. DESCRIPTION
============================================================ */

.nihapa-story-hero__description {

    position: relative;

    max-width: 540px;

    margin:
        27px 0 0;

    padding:
        0 0 0 18px;

    color:
        rgba(255,255,255,.82);

    font-family: inherit;

    font-size:
        clamp(15px,1.15vw,18px);

    font-weight: 400;

    line-height: 1.65;

    letter-spacing: -.01em;
}


.nihapa-story-hero__description::before {

    content: "";

    position: absolute;

    left: 0;
    top: 5px;
    bottom: 5px;

    width: 1px;

    background:
        linear-gradient(
            to bottom,
            rgba(255,255,255,.90),
            rgba(255,255,255,.15)
        );
}


/* ============================================================
9. CTA AREA
============================================================ */

.nihapa-story-hero__actions {

    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 11px;

    margin-top: 29px;
}


/* ============================================================
10. BUTTON BASE
============================================================ */

.nihapa-story-hero__button {

    position: relative;

    min-height: 50px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    padding:
        0 22px;

    overflow: hidden;

    border-radius: 3px;

    font-family: inherit;

    font-size: 11px;

    font-weight: 650;

    line-height: 1;

    letter-spacing: .085em;

    text-transform: uppercase;

    text-decoration: none !important;

    transition:
        transform .3s ease,
        background-color .3s ease,
        border-color .3s ease,
        box-shadow .3s ease,
        color .3s ease;
}


.nihapa-story-hero__button svg {

    width: 17px;
    height: 17px;

    flex:
        0 0 17px;

    transition:
        transform .3s ease;
}


/* ============================================================
11. PRIMARY BUTTON
============================================================ */

.nihapa-story-hero__button--primary {

    color: #191c17 !important;

    background: #ffffff;

    border:
        1px solid #ffffff;

    box-shadow:
        0 10px 35px
        rgba(0,0,0,.14);
}


.nihapa-story-hero__button--primary::after {

    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    left: -85%;

    width: 45%;

    transform:
        skewX(-20deg);

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.75),
            transparent
        );

    transition:
        left .65s ease;
}


.nihapa-story-hero__button--primary:hover {

    color:
        #191c17 !important;

    transform:
        translateY(-2px);

    box-shadow:
        0 15px 42px
        rgba(0,0,0,.22);
}


.nihapa-story-hero__button--primary:hover::after {

    left: 140%;
}


.nihapa-story-hero__button--primary:hover svg {

    transform:
        translateX(4px);
}


/* ============================================================
12. SECONDARY BUTTON
============================================================ */

.nihapa-story-hero__button--secondary {

    color:
        #ffffff !important;

    background:
        rgba(255,255,255,.08);

    border:
        1px solid
        rgba(255,255,255,.38);

    backdrop-filter:
        blur(8px);

    -webkit-backdrop-filter:
        blur(8px);
}


.nihapa-story-hero__button--secondary:hover {

    color:
        #ffffff !important;

    background:
        rgba(255,255,255,.15);

    border-color:
        rgba(255,255,255,.72);

    transform:
        translateY(-2px);
}


/* ============================================================
13. BOTTOM INFORMATION STRIP
============================================================ */

.nihapa-story-hero__bottom {

    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 4;

    border-top:
        1px solid
        rgba(255,255,255,.17);

    background:
        linear-gradient(
            90deg,
            rgba(12,15,11,.53),
            rgba(12,15,11,.27)
        );

    backdrop-filter:
        blur(9px);

    -webkit-backdrop-filter:
        blur(9px);
}


.nihapa-story-hero__bottom-container {

    width:
        min(
            calc(100% - 80px),
            1380px
        );

    min-height: 108px;

    margin: 0 auto;

    display: flex;

    align-items: center;

    justify-content:
        space-between;

    gap: 50px;
}


/* ============================================================
14. BOTTOM STATEMENT
============================================================ */

.nihapa-story-hero__statement {

    display: flex;

    flex-direction: column;

    gap: 6px;

    flex-shrink: 0;
}


.nihapa-story-hero__statement span {

    color:
        rgba(255,255,255,.50);

    font-family: inherit;

    font-size: 9px;

    font-weight: 650;

    line-height: 1;

    letter-spacing: .18em;

    text-transform: uppercase;
}


.nihapa-story-hero__statement strong {

    color: #ffffff;

    font-family: inherit;

    font-size: 19px;

    font-weight: 500;

    line-height: 1.2;

    letter-spacing: -.025em;
}


/* ============================================================
15. FACTS
============================================================ */

.nihapa-story-hero__facts {

    display: flex;

    align-items: stretch;

    justify-content:
        flex-end;

    gap: 0;
}


.nihapa-story-hero__fact {

    position: relative;

    min-width: 150px;

    padding:
        0
        clamp(22px,2.5vw,38px);

    display: flex;

    flex-direction: column;

    gap: 6px;
}


.nihapa-story-hero__fact:first-child {

    padding-left: 0;
}


.nihapa-story-hero__fact:last-child {

    padding-right: 0;
}


.nihapa-story-hero__fact:not(:last-child)::after {

    content: "";

    position: absolute;

    right: 0;
    top: 2px;
    bottom: 2px;

    width: 1px;

    background:
        rgba(255,255,255,.18);
}


.nihapa-story-hero__fact strong {

    color:
        rgba(255,255,255,.98);

    font-family: inherit;

    font-size: 14px;

    font-weight: 600;

    line-height: 1.2;
}


.nihapa-story-hero__fact span {

    color:
        rgba(255,255,255,.50);

    font-family: inherit;

    font-size: 9px;

    font-weight: 500;

    line-height: 1.3;

    letter-spacing: .10em;

    text-transform: uppercase;
}


/* ============================================================
16. LAPTOP
============================================================ */

@media (max-width:1200px) {

    .nihapa-story-hero__container,
    .nihapa-story-hero__bottom-container {

        width:
            min(
                calc(100% - 56px),
                1180px
            );
    }


    .nihapa-story-hero__content {

        width:
            min(600px,57vw);
    }


    .nihapa-story-hero__fact {

        min-width: 135px;

        padding-left: 22px;
        padding-right: 22px;
    }

}


/* ============================================================
17. TABLET
============================================================ */

@media (max-width:1024px) {

    .nihapa-story-hero {

        min-height: 590px;
    }


    .nihapa-story-hero__container {

        min-height: 590px;

        width:
            calc(100% - 48px);

        padding-top: 50px;
        padding-bottom: 145px;
    }


    .nihapa-story-hero__bottom-container {

        width:
            calc(100% - 48px);
    }


    .nihapa-story-hero__content {

        width:
            min(590px,64vw);
    }


    .nihapa-story-hero__background img {

        object-position:
            54% center;
    }


    .nihapa-story-hero__overlay {

        background:

            linear-gradient(
                90deg,
                rgba(10,13,10,.80) 0%,
                rgba(10,13,10,.62) 39%,
                rgba(10,13,10,.18) 100%
            ),

            linear-gradient(
                180deg,
                rgba(8,10,8,.03) 0%,
                rgba(8,10,8,.02) 45%,
                rgba(8,10,8,.68) 100%
            );
    }


    .nihapa-story-hero__statement {

        display: none;
    }


    .nihapa-story-hero__facts {

        width: 100%;

        justify-content:
            space-between;
    }


    .nihapa-story-hero__fact {

        flex: 1;

        min-width: 0;
    }

}


/* ============================================================
18. MOBILE
============================================================ */

@media (max-width:767px) {

    .nihapa-story-hero {

        width: 100vw;

        min-height: 660px;
    }


    .nihapa-story-hero__background img {

        object-position:
            55% center;

        transform: scale(1);
    }


    .nihapa-story-hero:hover
    .nihapa-story-hero__background img {

        transform: scale(1);
    }


    .nihapa-story-hero__overlay {

        background:

            linear-gradient(
                90deg,
                rgba(8,10,8,.28) 0%,
                rgba(8,10,8,.07) 100%
            ),

            linear-gradient(
                180deg,
                rgba(8,10,8,.04) 0%,
                rgba(8,10,8,.03) 29%,
                rgba(8,10,8,.42) 51%,
                rgba(8,10,8,.94) 80%,
                rgba(8,10,8,.98) 100%
            );
    }


    .nihapa-story-hero__container {

        width:
            calc(100% - 34px);

        min-height: 660px;

        align-items: flex-end;

        padding-top: 80px;

        padding-bottom: 158px;
    }


    .nihapa-story-hero__content {

        width: 100%;
    }


    .nihapa-story-hero__eyebrow {

        gap: 9px;

        margin-bottom: 13px;

        font-size: 9px;

        letter-spacing: .15em;
    }


    .nihapa-story-hero__eyebrow-line {

        width: 27px;

        flex-basis: 27px;
    }


    .nihapa-story-hero__title {

        font-size:
            clamp(50px,16vw,68px);

        line-height: .91;
    }


    .nihapa-story-hero__description {

        max-width: 94%;

        margin-top: 20px;

        padding-left: 15px;

        font-size: 14px;

        line-height: 1.56;
    }


    /* EXACT SAME MOBILE CTA LOGIC AS ABOUT */

    .nihapa-story-hero__actions {

        margin-top: 22px;

        gap: 8px;
    }


    .nihapa-story-hero__button {

        min-height: 46px;

        padding:
            0 15px;

        font-size: 9px;

        letter-spacing: .075em;
    }


    .nihapa-story-hero__button svg {

        width: 15px;
        height: 15px;

        flex-basis: 15px;
    }


    .nihapa-story-hero__bottom-container {

        width:
            calc(100% - 34px);

        min-height: 116px;
    }


    .nihapa-story-hero__facts {

        display: grid;

        grid-template-columns:
            repeat(3,1fr);

        width: 100%;
    }


    .nihapa-story-hero__fact {

        min-width: 0;

        padding:
            0 12px;
    }


    .nihapa-story-hero__fact:first-child {

        padding-left: 0;
    }


    .nihapa-story-hero__fact:last-child {

        padding-right: 0;
    }


    .nihapa-story-hero__fact strong {

        font-size: 11px;
    }


    .nihapa-story-hero__fact span {

        font-size: 7.5px;

        line-height: 1.35;

        letter-spacing: .07em;
    }

}


/* ============================================================
19. SMALL MOBILE
============================================================ */

@media (max-width:420px) {

    .nihapa-story-hero {

        min-height: 640px;
    }


    .nihapa-story-hero__container {

        min-height: 640px;

        width:
            calc(100% - 28px);

        padding-bottom: 150px;
    }


    .nihapa-story-hero__bottom-container {

        width:
            calc(100% - 28px);
    }


    .nihapa-story-hero__title {

        font-size: 49px;
    }


    .nihapa-story-hero__description {

        max-width: 100%;
    }


    .nihapa-story-hero__button {

        min-height: 44px;

        padding:
            0 13px;
    }


    .nihapa-story-hero__fact {

        padding-left: 8px;
        padding-right: 8px;
    }

}


/* ============================================================
20. VERY SMALL MOBILE
============================================================ */

@media (max-width:350px) {

    .nihapa-story-hero__title {

        font-size: 44px;
    }


    .nihapa-story-hero__actions {

        flex-direction: column;

        align-items: stretch;
    }


    .nihapa-story-hero__button {

        width: 100%;
    }

}


/* ============================================================
21. LARGE DESKTOP
============================================================ */

@media (min-width:1600px) {

    .nihapa-story-hero {

        min-height: 640px;
    }


    .nihapa-story-hero__container {

        min-height: 640px;
    }


    .nihapa-story-hero__background img {

        object-position:
            center 48%;
    }

}


/* ============================================================
22. ULTRA WIDE
============================================================ */

@media (min-width:1900px) {

    .nihapa-story-hero__container,
    .nihapa-story-hero__bottom-container {

        width:
            min(
                calc(100% - 120px),
                1500px
            );
    }

}


/* ============================================================
23. RESET
============================================================ */

.nihapa-story-hero,
.nihapa-story-hero *,
.nihapa-story-hero *::before,
.nihapa-story-hero *::after {

    box-sizing: border-box;
}


.nihapa-story-hero h1,
.nihapa-story-hero p {

    margin-top: 0;
}


.nihapa-story-hero img {

    max-width: none !important;
}


.nihapa-story-hero a {

    text-decoration: none;
}


.elementor-widget-html:has(.nihapa-story-hero) {

    width: 100%;

    max-width: none;
}


/* ============================================================
24. ACCESSIBILITY
============================================================ */

.nihapa-story-hero a:focus-visible {

    outline:
        2px solid #ffffff;

    outline-offset: 4px;
}


/* ============================================================
25. REDUCED MOTION
============================================================ */

@media (prefers-reduced-motion:reduce) {

    .nihapa-story-hero__background img,
    .nihapa-story-hero__button,
    .nihapa-story-hero__button svg,
    .nihapa-story-hero__button::after {

        transition:
            none !important;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-62e0c89 *//* ============================================================
NIHAPA TOURS — OUR STORY
FINAL MERGED CONTENT CSS

IMPORTANT TYPOGRAPHY RULE

This stylesheet does NOT declare:

font-size
font-family
font-weight
line-height

Typography continues to come from the Nihapa website /
Elementor Global Typography.

The CSS below controls:
- layout
- surfaces
- spacing
- borders
- imagery
- decorative graphics
- colour
- responsiveness
============================================================ */


/* ============================================================
01 — MASTER
============================================================ */

.nihapa-story-page {

    --ns-primary: #79AAAE;
    --ns-primary-deep: #4F858A;
    --ns-primary-dark: #426F73;
    --ns-primary-soft: #EEF5F5;

    --ns-ink: #24292B;
    --ns-text: #4A5357;
    --ns-muted: #687277;

    --ns-white: #FFFFFF;
    --ns-warm: #FAF8F3;
    --ns-soft: #F7F8F7;
    --ns-soft-2: #F1F4F3;

    --ns-line: #DFE6E5;
    --ns-line-warm: #E9E4DC;

    --ns-radius: 16px;
    --ns-radius-small: 11px;

    --ns-shadow:
        0 14px 38px
        rgba(34,42,44,.05);

    --ns-shadow-hover:
        0 22px 52px
        rgba(34,42,44,.075);

    position: relative;

    width: 100vw;
    max-width: 100vw;

    margin-left:
        calc(50% - 50vw);

    margin-right:
        calc(50% - 50vw);

    color:
        var(--ns-text);

    background:
        var(--ns-white);

    -webkit-font-smoothing:
        antialiased;

    text-rendering:
        optimizeLegibility;
}


/* ============================================================
02 — RESET
============================================================ */

.nihapa-story-page,
.nihapa-story-page *,
.nihapa-story-page *::before,
.nihapa-story-page *::after {

    box-sizing: border-box;
}


.nihapa-story-page h1,
.nihapa-story-page h2,
.nihapa-story-page h3,
.nihapa-story-page p,
.nihapa-story-page figure,
.nihapa-story-page blockquote {

    margin-top: 0;
}


.nihapa-story-page a {

    text-decoration: none;
}


.nihapa-story-page img {

    display: block;

    max-width: 100%;

    height: auto;
}


.nihapa-story-page h2,
.nihapa-story-page h3 {

    color:
        var(--ns-ink);
}


.nihapa-story-page p {

    color:
        var(--ns-text);
}


.nihapa-story-accent {

    color:
        var(--ns-primary-deep);
}


.nihapa-story-lead {

    color:
        #3D464A !important;
}


/* ============================================================
03 — PAGE WIDTH / SECTIONS
============================================================ */

.nihapa-story-wrap {

    width:
        min(
            calc(100% - 88px),
            1380px
        );

    margin-left:
        auto;

    margin-right:
        auto;
}


.nihapa-story-section {

    position: relative;

    padding:
        clamp(72px,6vw,96px)
        0;

    border-bottom:
        1px solid var(--ns-line);
}


/* ============================================================
04 — STANDARD EYEBROWS
============================================================ */

.nihapa-story-eyebrow {

    display: flex;

    align-items: center;

    gap: 11px;

    margin-bottom: 17px;

    color:
        var(--ns-primary-deep);
}


.nihapa-story-eyebrow > span {

    width: 31px;
    height: 2px;

    flex:
        0 0 31px;

    background:
        var(--ns-primary);
}


.nihapa-story-eyebrow p {

    margin: 0;

    color:
        inherit;
}


/* ============================================================
05 — ORIGIN
============================================================ */

.nihapa-story-origin {

    background:
        var(--ns-white);
}


.nihapa-story-origin-grid {

    display: grid;

    grid-template-columns:
        minmax(0,.86fr)
        minmax(0,1.14fr);

    gap:
        clamp(48px,7vw,110px);

    align-items: start;
}


/* ============================================================
06 — ORIGIN LEFT COLUMN
============================================================ */

.nihapa-story-origin-heading {

    position: sticky;

    top: 115px;

    min-height: 620px;

    padding:
        4px 0 12px;

    isolation: isolate;

    overflow: hidden;
}


.nihapa-story-origin-heading__content {

    position: relative;

    z-index: 4;

    max-width: 470px;
}


/* Soft environmental glow */

.nihapa-story-origin-heading::after {

    content: "";

    position: absolute;

    z-index: 0;

    right: -50px;
    bottom: 10px;

    width: 300px;
    height: 300px;

    border-radius: 50%;

    pointer-events: none;

    background:
        radial-gradient(
            circle,
            rgba(121,170,174,.10) 0%,
            rgba(121,170,174,.045) 43%,
            rgba(121,170,174,0) 73%
        );
}


/* ============================================================
07 — DECORATIVE ORIGIN CHRONOLOGY
============================================================ */

.nihapa-story-origin-chronology {

    position: absolute;

    z-index: 1;

    top: 140px;
    left: 0;
    right: 0;
    bottom: 8px;

    display: flex;

    flex-direction: column;

    justify-content: space-between;

    pointer-events: none;

    opacity: .67;

    transform:
        scale(.91);

    transform-origin:
        top center;
}


/* Main vertical route */

.nihapa-story-origin-chronology__line {

    position: absolute;

    top: 7px;
    bottom: 7px;

    left: 50%;

    width: 2px;

    transform:
        translateX(-50%);

    background:
        linear-gradient(
            to bottom,
            rgba(121,170,174,0) 0%,
            rgba(121,170,174,.18) 7%,
            rgba(121,170,174,.42) 24%,
            rgba(121,170,174,.46) 52%,
            rgba(121,170,174,.31) 78%,
            rgba(121,170,174,0) 100%
        );
}


/* Timeline event */

.nihapa-story-origin-chronology__event {

    position: relative;

    width: 100%;

    min-height: 52px;

    display: flex;

    align-items: center;
}


/* Central node */

.nihapa-story-origin-chronology__event::before {

    content: "";

    position: absolute;

    z-index: 2;

    left: 50%;
    top: 50%;

    width: 13px;
    height: 13px;

    transform:
        translate(-50%,-50%);

    border:
        1px solid
        rgba(79,133,138,.39);

    border-radius:
        50%;

    background:
        rgba(238,245,245,.92);

    box-shadow:
        0 0 0 6px
        rgba(121,170,174,.055);
}


/* Left side */

.nihapa-story-origin-chronology__event.is-left {

    justify-content:
        flex-start;

    padding-right:
        calc(50% + 28px);
}


.nihapa-story-origin-chronology__event.is-left::after {

    content: "";

    position: absolute;

    top: 50%;

    right:
        calc(50% + 6px);

    width: 25px;
    height: 1px;

    transform:
        translateY(-50%);

    background:
        rgba(79,133,138,.25);
}


/* Right side */

.nihapa-story-origin-chronology__event.is-right {

    justify-content:
        flex-end;

    padding-left:
        calc(50% + 28px);
}


.nihapa-story-origin-chronology__event.is-right::after {

    content: "";

    position: absolute;

    top: 50%;

    left:
        calc(50% + 6px);

    width: 25px;
    height: 1px;

    transform:
        translateY(-50%);

    background:
        rgba(79,133,138,.25);
}


/* Timeline label */

.nihapa-story-origin-chronology__event span {

    position: relative;

    display: inline-flex;

    align-items: center;

    min-height: 38px;

    max-width: 100%;

    padding:
        0 14px;

    border:
        1px solid
        rgba(121,170,174,.21);

    border-radius:
        999px;

    color:
        rgba(66,111,115,.84);

    background:
        rgba(255,255,255,.62);

    box-shadow:
        0 8px 20px
        rgba(34,42,44,.025);

    backdrop-filter:
        blur(3px);

    -webkit-backdrop-filter:
        blur(3px);
}


/* First and final nodes slightly stronger */

.nihapa-story-origin-chronology__event:first-of-type::before,
.nihapa-story-origin-chronology__event:last-child::before {

    border-color:
        rgba(79,133,138,.60);

    background:
        rgba(121,170,174,.20);

    box-shadow:
        0 0 0 7px
        rgba(121,170,174,.07);
}


/* ============================================================
08 — ORIGIN COPY
============================================================ */

.nihapa-story-origin-copy {

    max-width: 720px;
}


.nihapa-story-origin-copy p {

    margin-bottom: 21px;
}


/* ============================================================
09 — QUESTIONS
============================================================ */

.nihapa-story-questions {

    display: grid;

    grid-template-columns:
        repeat(3,1fr);

    gap: 1px;

    margin-top:
        clamp(48px,5vw,72px);

    overflow: hidden;

    border:
        1px solid var(--ns-line);

    border-radius:
        var(--ns-radius-small);

    background:
        var(--ns-line);
}


.nihapa-story-questions article {

    min-height: 220px;

    padding: 28px;

    background:
        var(--ns-soft);
}


.nihapa-story-questions article > span {

    display: block;

    margin-bottom: 30px;

    color:
        var(--ns-primary-deep);
}


.nihapa-story-questions p {

    margin: 0;

    color:
        var(--ns-ink);
}


/* ============================================================
10 — ORIGIN ENDING
============================================================ */

.nihapa-story-origin-ending {

    max-width: 760px;

    margin:
        44px auto 0;

    display: grid;

    grid-template-columns:
        58px 1fr;

    gap: 20px;

    align-items: start;
}


.nihapa-story-origin-ending > span {

    width: 58px;
    height: 2px;

    margin-top: 14px;

    background:
        var(--ns-primary);
}


.nihapa-story-origin-ending p {

    margin: 0;
}


/* ============================================================
11 — GENERIC TWO-COLUMN PHOTO SECTIONS
============================================================ */

.nihapa-story-split {

    display: grid;

    grid-template-columns:
        minmax(0,.94fr)
        minmax(0,1.06fr);

    gap:
        clamp(30px,4vw,58px);

    align-items: stretch;
}


/* ============================================================
12 — PHOTO PANELS
============================================================ */

.nihapa-story-photo-panel {

    position: relative;

    min-height: 610px;

    margin: 0;

    overflow: hidden;

    border:
        1px solid var(--ns-line);

    border-radius:
        var(--ns-radius);

    background:
        #172326;

    box-shadow:
        var(--ns-shadow);
}


.nihapa-story-photo-panel > img {

    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    user-select: none;

    -webkit-user-select: none;

    -webkit-user-drag: none;
}


/* Premium bottom-weighted overlay */

.nihapa-story-photo-shade {

    position: absolute;

    z-index: 1;

    inset: 0;

    pointer-events: none;

    background:
        linear-gradient(
            180deg,
            rgba(14,25,27,.04) 0%,
            rgba(14,25,27,.13) 25%,
            rgba(14,25,27,.48) 58%,
            rgba(14,25,27,.92) 100%
        );
}


/* ============================================================
13 — TEXT ON PHOTO
============================================================ */

.nihapa-story-photo-text {

    position: absolute;

    z-index: 2;

    left: 0;
    right: 0;
    bottom: 0;

    padding:
        clamp(30px,4vw,50px);

    color:
        var(--ns-white);
}


.nihapa-story-photo-text h2,
.nihapa-story-photo-text h3 {

    color:
        #FFFFFF !important;

    text-shadow:
        0 2px 18px
        rgba(0,0,0,.20);
}


.nihapa-story-photo-text > p {

    max-width: 610px;

    margin-bottom: 0;

    color:
        rgba(255,255,255,.95) !important;

    text-shadow:
        0 1px 12px
        rgba(0,0,0,.20);
}


/* Photo eyebrow */

.nihapa-story-photo-eyebrow {

    display: flex;

    align-items: center;

    gap: 11px;

    margin-bottom: 17px;

    color:
        rgba(255,255,255,.93);
}


.nihapa-story-photo-eyebrow > span {

    width: 31px;
    height: 2px;

    flex:
        0 0 31px;

    background:
        #C4E0E1;
}


.nihapa-story-photo-eyebrow p {

    margin: 0;

    color:
        inherit !important;
}


/* ============================================================
14 — WHY ANOTHER SAFARI COMPANY
============================================================ */

.nihapa-story-why {

    background:
        var(--ns-warm);
}


.nihapa-story-lunch > img {

    object-position:
        center center;
}


.nihapa-story-reasons {

    align-self: center;

    border-top:
        1px solid var(--ns-line-warm);
}


.nihapa-story-reasons article {

    display: grid;

    grid-template-columns:
        55px 1fr;

    gap: 22px;

    padding:
        28px 0;

    border-bottom:
        1px solid var(--ns-line-warm);
}


.nihapa-story-reasons article > span {

    color:
        var(--ns-primary-deep);
}


.nihapa-story-reasons h3 {

    margin-bottom: 8px;
}


.nihapa-story-reasons p {

    margin: 0;

    color:
        var(--ns-muted);
}


/* Foundation */

.nihapa-story-foundation {

    margin-top:
        clamp(38px,4vw,58px);

    padding:
        clamp(27px,4vw,44px);

    border:
        1px solid var(--ns-line-warm);

    border-left:
        4px solid var(--ns-primary);

    border-radius:
        var(--ns-radius-small);

    background:
        var(--ns-white);
}


.nihapa-story-foundation > span {

    display: block;

    margin-bottom: 11px;

    color:
        var(--ns-muted);
}


.nihapa-story-foundation h3 {

    margin: 0;
}


/* ============================================================
15 — 2022 / THE NAME
============================================================ */

.nihapa-story-beginning {

    background:
        var(--ns-white);
}


.nihapa-story-beginning-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 16px;
}


.nihapa-story-year-card,
.nihapa-story-name-card {

    position: relative;

    padding:
        clamp(34px,4.8vw,58px);

    overflow: hidden;

    border:
        1px solid var(--ns-line);

    border-radius:
        var(--ns-radius);
}


.nihapa-story-year-card {

    background:
        var(--ns-primary-soft);
}


.nihapa-story-name-card {

    background:
        var(--ns-warm);

    border-color:
        var(--ns-line-warm);
}


.nihapa-story-year-mark {

    position: absolute;

    top: 18px;
    right: 25px;

    color:
        rgba(79,133,138,.14);

    pointer-events: none;
}


.nihapa-story-year-card h2,
.nihapa-story-name-card h2,
.nihapa-story-year-card > p,
.nihapa-story-name-card > p {

    position: relative;

    z-index: 2;
}


.nihapa-story-year-card > p,
.nihapa-story-name-card > p {

    margin-bottom: 19px;
}


/* Note */

.nihapa-story-inline-note {

    margin-top: 29px;

    padding:
        21px 22px;

    border-left:
        3px solid var(--ns-primary);

    background:
        rgba(255,255,255,.72);
}


.nihapa-story-inline-note p {

    margin:
        4px 0 0;
}


/* It's Here list */

.nihapa-story-here-list {

    margin:
        28px 0;

    border-top:
        1px solid var(--ns-line-warm);
}


.nihapa-story-here-list > div {

    display: grid;

    grid-template-columns:
        42px 1fr;

    gap: 15px;

    padding:
        18px 0;

    border-bottom:
        1px solid var(--ns-line-warm);
}


.nihapa-story-here-list span {

    color:
        var(--ns-primary-deep);
}


.nihapa-story-here-list p {

    margin: 0;
}


.nihapa-story-name-card blockquote {

    margin:
        28px 0 0;

    padding:
        22px;

    border:
        1px solid var(--ns-line);

    border-radius:
        var(--ns-radius-small);

    background:
        var(--ns-white);

    color:
        var(--ns-primary-deep);
}


.nihapa-story-name-card blockquote strong {

    display: block;

    margin-top: 7px;

    color:
        var(--ns-ink);
}


/* ============================================================
16 — GENERIC HEADING GRID
============================================================ */

.nihapa-story-heading-grid {

    display: grid;

    grid-template-columns:
        minmax(0,1.05fr)
        minmax(0,.95fr);

    gap:
        clamp(45px,6vw,90px);

    align-items: start;

    margin-bottom:
        clamp(38px,4vw,52px);
}


.nihapa-story-heading-grid > div:last-child {

    max-width: 650px;
}


/* ============================================================
17 — PRINCIPLES
============================================================ */

.nihapa-story-principles {

    background:
        var(--ns-soft);
}


.nihapa-story-principle-list {

    position: relative;

    max-width: 1020px;

    margin:
        0 auto;
}


.nihapa-story-principle-list::before {

    content: "";

    position: absolute;

    top: 0;
    bottom: 0;
    left: 40px;

    width: 1px;

    background:
        var(--ns-line);
}


.nihapa-story-principle-list article {

    position: relative;

    display: grid;

    grid-template-columns:
        82px 1fr;

    gap: 27px;

    padding:
        0 0 42px;
}


.nihapa-story-principle-list article:last-child {

    padding-bottom: 0;
}


.nihapa-story-principle-number {

    position: relative;

    z-index: 2;

    width: 82px;
    height: 82px;

    display: flex;

    align-items: center;
    justify-content: center;

    border:
        1px solid var(--ns-line);

    border-radius:
        50%;

    color:
        var(--ns-primary-deep);

    background:
        var(--ns-white);
}


.nihapa-story-principle-list
article > div:last-child {

    padding-top: 12px;
}


.nihapa-story-principle-list h3 {

    margin-bottom: 8px;
}


.nihapa-story-principle-list p {

    max-width: 750px;

    margin: 0;

    color:
        var(--ns-muted);
}


/* ============================================================
18 — TEAM
============================================================ */

.nihapa-story-team {

    background:
        var(--ns-white);
}


.nihapa-story-team-grid {

    display: grid;

    grid-template-columns:
        minmax(0,1.05fr)
        minmax(0,.95fr);

    gap:
        clamp(42px,5.5vw,82px);

    align-items: center;
}


.nihapa-story-team-photo {

    position: relative;

    min-height: 650px;

    margin: 0;

    overflow: hidden;

    border:
        1px solid var(--ns-line);

    border-radius:
        var(--ns-radius);

    background:
        var(--ns-soft);

    box-shadow:
        var(--ns-shadow);
}


.nihapa-story-team-photo img {

    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center;

    user-select: none;

    -webkit-user-drag: none;
}


.nihapa-story-team-copy {

    max-width: 620px;
}


.nihapa-story-team-copy > p {

    margin-bottom: 18px;
}


.nihapa-story-tasks {

    display: grid;

    grid-template-columns:
        repeat(2,1fr);

    gap: 8px;

    margin:
        28px 0;
}


.nihapa-story-tasks span {

    padding:
        14px 16px;

    border:
        1px solid var(--ns-line);

    border-radius:
        9px;

    background:
        var(--ns-soft);

    color:
        var(--ns-primary-deep);
}


.nihapa-story-team-message {

    margin-bottom: 26px;

    padding:
        20px 22px;

    border-left:
        3px solid var(--ns-primary);

    background:
        var(--ns-primary-soft);
}


.nihapa-story-team-message p {

    margin:
        0 0 4px;
}


.nihapa-story-team-message strong {

    color:
        var(--ns-ink);
}


/* ============================================================
19 — GROWTH / STRUCTURE + HUMANITY
============================================================ */

.nihapa-story-growth {

    background:
        var(--ns-warm);
}


.nihapa-story-balance {

    display: grid;

    grid-template-columns:
        1fr auto 1fr;

    gap: 22px;

    align-items: stretch;

    margin-top:
        clamp(42px,5vw,68px);
}


.nihapa-story-balance article {

    padding:
        clamp(27px,3.5vw,40px);

    border:
        1px solid var(--ns-line-warm);

    border-radius:
        var(--ns-radius-small);

    background:
        var(--ns-white);
}


.nihapa-story-balance article p:last-child {

    margin-bottom: 0;
}


.nihapa-story-balance-symbol {

    display: flex;

    align-items: center;
    justify-content: center;

    color:
        var(--ns-primary-deep);
}


.nihapa-story-balance-ending {

    margin-top: 24px;

    padding: 22px;

    border:
        1px solid var(--ns-line-warm);

    border-left:
        4px solid var(--ns-primary);

    border-radius:
        var(--ns-radius-small);

    background:
        var(--ns-primary-soft);

    text-align: center;

    color:
        var(--ns-ink);
}


/* ============================================================
20 — TANZANIA FIRST / THIS IS HOME
============================================================ */

.nihapa-story-home {

    background:
        var(--ns-primary-soft);
}


.nihapa-story-migration > img {

    object-position:
        center center;
}


.nihapa-story-home-copy {

    align-self: center;

    max-width: 760px;
}


.nihapa-story-home-copy > p {

    margin-bottom: 20px;
}


.nihapa-story-home-message {

    margin-top: 31px;

    padding:
        clamp(25px,3vw,36px);

    border:
        1px solid var(--ns-line);

    border-left:
        4px solid var(--ns-primary);

    border-radius:
        var(--ns-radius-small);

    background:
        var(--ns-white);

    box-shadow:
        var(--ns-shadow);
}


.nihapa-story-home-message p {

    margin-bottom: 10px;
}


.nihapa-story-home-message h3 {

    margin: 0;
}


/* ============================================================
21 — STEWARDSHIP
============================================================ */

.nihapa-story-stewardship {

    background:
        var(--ns-white);
}


.nihapa-story-stewardship-grid {

    display: grid;

    grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr);

    gap:
        clamp(50px,7vw,105px);

    align-items: start;
}


.nihapa-story-stewardship-intro {

    padding:
        clamp(28px,4vw,45px);

    border:
        1px solid var(--ns-line);

    border-radius:
        var(--ns-radius);

    background:
        var(--ns-soft);
}


.nihapa-story-stewardship-intro blockquote {

    margin:
        26px 0 0;

    padding:
        21px 0
        21px 22px;

    border-left:
        3px solid var(--ns-primary);

    color:
        var(--ns-primary-deep);
}


.nihapa-story-stewardship-copy p {

    margin-bottom: 19px;
}


.nihapa-story-stewardship-question {

    margin:
        29px 0;

    padding:
        23px;

    border:
        1px solid var(--ns-line);

    border-radius:
        var(--ns-radius-small);

    background:
        var(--ns-primary-soft);
}


.nihapa-story-stewardship-question > span {

    display: block;

    margin-bottom: 8px;

    color:
        var(--ns-muted);
}


.nihapa-story-stewardship-question h3 {

    margin: 0;
}


/* ============================================================
22 — CHANGED / UNCHANGED
============================================================ */

.nihapa-story-change {

    background:
        var(--ns-soft);
}


.nihapa-story-change-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 15px;
}


.nihapa-story-changed,
.nihapa-story-unchanged {

    padding:
        clamp(30px,4vw,46px);

    border:
        1px solid var(--ns-line);

    border-radius:
        var(--ns-radius);

    background:
        var(--ns-white);
}


.nihapa-story-unchanged {

    border-top:
        3px solid var(--ns-primary);
}


.nihapa-story-change-title {

    display: block;

    margin-bottom: 24px;

    color:
        var(--ns-primary-deep);
}


.nihapa-story-changed > div,
.nihapa-story-unchanged > div {

    display: grid;

    grid-template-columns:
        42px 1fr;

    gap: 14px;

    padding:
        17px 0;

    border-bottom:
        1px solid var(--ns-line);
}


.nihapa-story-changed > div:last-child,
.nihapa-story-unchanged > div:last-child {

    border-bottom: 0;
}


.nihapa-story-changed > div > span,
.nihapa-story-unchanged > div > span {

    color:
        var(--ns-primary-deep);
}


.nihapa-story-changed p,
.nihapa-story-unchanged p {

    margin: 0;
}


/* ============================================================
23 — MAGICAL MOMENTS
============================================================ */

.nihapa-story-quest {

    background:
        var(--ns-warm);
}


.nihapa-story-sundowner > img {

    object-position:
        center center;
}


.nihapa-story-quest-copy {

    align-self: center;
}


.nihapa-story-quest-copy > p {

    margin-bottom: 19px;
}


.nihapa-story-moments {

    margin:
        28px 0;

    border-top:
        1px solid var(--ns-line-warm);
}


.nihapa-story-moments p {

    position: relative;

    margin: 0;

    padding:
        17px 0
        17px 28px;

    border-bottom:
        1px solid var(--ns-line-warm);
}


.nihapa-story-moments p::before {

    content: "";

    position: absolute;

    left: 0;
    top: 27px;

    width: 8px;
    height: 8px;

    border-radius:
        50%;

    background:
        var(--ns-primary);
}


/* Quest ending */

.nihapa-story-quest-ending {

    max-width: 1040px;

    margin:
        clamp(48px,5vw,72px)
        auto
        0;

    padding:
        clamp(32px,4.5vw,54px);

    border:
        1px solid var(--ns-line-warm);

    border-radius:
        var(--ns-radius);

    background:
        var(--ns-white);

    text-align:
        center;

    box-shadow:
        var(--ns-shadow);
}


.nihapa-story-quest-ending > p {

    max-width: 780px;

    margin:
        0 auto 30px;
}


.nihapa-story-final-lines {

    display: flex;

    flex-wrap: wrap;

    justify-content:
        center;

    gap: 8px;

    margin-bottom: 27px;
}


.nihapa-story-final-lines span {

    padding:
        9px 13px;

    border:
        1px solid var(--ns-line);

    border-radius:
        999px;

    background:
        var(--ns-soft);

    color:
        var(--ns-primary-deep);
}


.nihapa-story-quest-ending h3 {

    margin: 0;
}


/* ============================================================
24 — FINAL CTA
============================================================ */

.nihapa-story-final {

    background:
        var(--ns-primary-soft);

    border-bottom: 0;
}


.nihapa-story-final-buttons {

    display: flex;

    flex-wrap: wrap;

    gap: 9px;

    margin-top: 28px;
}


/* ============================================================
25 — NORMAL PAGE BUTTONS
NO TYPOGRAPHY OVERRIDES
============================================================ */

.nihapa-story-button {

    min-height: 50px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding:
        0 24px;

    border:
        1px solid transparent;

    border-radius:
        999px;

    transition:
        transform .25s ease,
        color .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}


.nihapa-story-button:hover {

    transform:
        translateY(-2px);
}


.nihapa-story-button--primary {

    color:
        var(--ns-white) !important;

    background:
        var(--ns-primary-deep);

    border-color:
        var(--ns-primary-deep);
}


.nihapa-story-button--primary:hover {

    background:
        var(--ns-primary-dark);

    border-color:
        var(--ns-primary-dark);
}


.nihapa-story-button--secondary {

    color:
        var(--ns-primary-deep) !important;

    background:
        var(--ns-white);

    border-color:
        var(--ns-line);
}


.nihapa-story-button--secondary:hover {

    background:
        var(--ns-primary-soft);

    border-color:
        var(--ns-primary);
}


/* ============================================================
26 — LAPTOP
============================================================ */

@media (max-width:1180px) {

    .nihapa-story-wrap {

        width:
            calc(100% - 64px);
    }


    .nihapa-story-origin-heading {

        min-height: 590px;
    }


    .nihapa-story-origin-chronology {

        transform:
            scale(.88);
    }


    .nihapa-story-team-photo {

        min-height: 590px;
    }

}


/* ============================================================
27 — TABLET
============================================================ */

@media (max-width:950px) {

    .nihapa-story-wrap {

        width:
            calc(100% - 46px);
    }


    .nihapa-story-origin-grid,
    .nihapa-story-split,
    .nihapa-story-beginning-grid,
    .nihapa-story-heading-grid,
    .nihapa-story-team-grid,
    .nihapa-story-stewardship-grid,
    .nihapa-story-change-grid {

        grid-template-columns:
            1fr;
    }


    /* Chronology becomes part of the normal flow */

    .nihapa-story-origin-heading {

        position: static;

        min-height: auto;

        overflow: visible;

        padding-bottom: 0;
    }


    .nihapa-story-origin-heading__content {

        max-width: 650px;
    }


    .nihapa-story-origin-heading::after {

        display: none;
    }


    .nihapa-story-origin-chronology {

        position: relative;

        top: auto;
        left: auto;
        right: auto;
        bottom: auto;

        max-width: 650px;

        min-height: 470px;

        margin-top: 32px;

        opacity: .72;

        transform: none;
    }


    /* Questions */

    .nihapa-story-questions {

        grid-template-columns:
            1fr;
    }


    .nihapa-story-questions article {

        min-height: auto;
    }


    /* Photos */

    .nihapa-story-photo-panel {

        min-height: 620px;
    }


    /* Team */

    .nihapa-story-team-photo {

        min-height: 650px;
    }


    /* Balance */

    .nihapa-story-balance {

        grid-template-columns:
            1fr;
    }


    .nihapa-story-balance-symbol {

        padding:
            4px 0;
    }

}


/* ============================================================
28 — MOBILE
============================================================ */

@media (max-width:767px) {

    .nihapa-story-wrap {

        width:
            calc(100% - 30px);
    }


    .nihapa-story-section {

        padding:
            58px 0;
    }


    /* ========================================================
    Origin chronology
    ======================================================== */

    .nihapa-story-origin-chronology {

        max-width: 100%;

        min-height: 435px;

        margin-top: 27px;

        opacity: .74;
    }


    .nihapa-story-origin-chronology__event.is-left {

        padding-right:
            calc(50% + 22px);
    }


    .nihapa-story-origin-chronology__event.is-right {

        padding-left:
            calc(50% + 22px);
    }


    .nihapa-story-origin-chronology__event.is-left::after,
    .nihapa-story-origin-chronology__event.is-right::after {

        width: 18px;
    }


    /* Questions */

    .nihapa-story-questions {

        margin-top: 36px;
    }


    .nihapa-story-questions article {

        padding: 23px;
    }


    /* Origin ending */

    .nihapa-story-origin-ending {

        grid-template-columns:
            35px 1fr;

        gap: 13px;
    }


    .nihapa-story-origin-ending > span {

        width: 35px;
    }


    /* ========================================================
    Photo panels
    ======================================================== */

    .nihapa-story-photo-panel {

        min-height: 560px;
    }


    .nihapa-story-photo-text {

        padding:
            25px 22px;
    }


    .nihapa-story-photo-shade {

        background:
            linear-gradient(
                180deg,
                rgba(12,24,26,.04) 0%,
                rgba(12,24,26,.19) 27%,
                rgba(12,24,26,.64) 59%,
                rgba(12,24,26,.95) 100%
            );
    }


    /* ========================================================
    2022
    ======================================================== */

    .nihapa-story-year-card,
    .nihapa-story-name-card {

        padding:
            27px 22px;
    }


    /* ========================================================
    Principles
    ======================================================== */

    .nihapa-story-principle-list::before {

        left: 28px;
    }


    .nihapa-story-principle-list article {

        grid-template-columns:
            58px 1fr;

        gap: 17px;

        padding-bottom: 34px;
    }


    .nihapa-story-principle-number {

        width: 58px;
        height: 58px;
    }


    .nihapa-story-principle-list
    article > div:last-child {

        padding-top: 5px;
    }


    /* ========================================================
    Team
    ======================================================== */

    .nihapa-story-team-photo {

        min-height: 500px;
    }


    .nihapa-story-tasks {

        grid-template-columns:
            1fr;
    }


    /* ========================================================
    Changed / unchanged
    ======================================================== */

    .nihapa-story-changed,
    .nihapa-story-unchanged {

        padding:
            26px 21px;
    }


    /* ========================================================
    Stewardship
    ======================================================== */

    .nihapa-story-stewardship-intro {

        padding:
            26px 22px;
    }


    /* ========================================================
    Final CTA
    ======================================================== */

    .nihapa-story-final-buttons {

        flex-direction:
            column;
    }


    .nihapa-story-final-buttons
    .nihapa-story-button {

        width: 100%;
    }

}


/* ============================================================
29 — SMALL MOBILE
============================================================ */

@media (max-width:460px) {

    .nihapa-story-wrap {

        width:
            calc(100% - 24px);
    }


    /* Chronology */

    .nihapa-story-origin-chronology {

        min-height: 420px;

        opacity: .76;
    }


    .nihapa-story-origin-chronology__event {

        min-height: 48px;
    }


    .nihapa-story-origin-chronology__event.is-left {

        padding-right:
            calc(50% + 18px);
    }


    .nihapa-story-origin-chronology__event.is-right {

        padding-left:
            calc(50% + 18px);
    }


    .nihapa-story-origin-chronology__event span {

        padding-left: 10px;
        padding-right: 10px;
    }


    /* Team */

    .nihapa-story-team-photo {

        min-height: 430px;
    }


    /* Photos */

    .nihapa-story-photo-panel {

        min-height: 510px;
    }


    /* Lists */

    .nihapa-story-here-list > div,
    .nihapa-story-changed > div,
    .nihapa-story-unchanged > div {

        grid-template-columns:
            34px 1fr;
    }

}


/* ============================================================
30 — IMAGE HANDLING
============================================================ */

.nihapa-story-page img {

    user-select: none;

    -webkit-user-select: none;

    -webkit-user-drag: none;
}


/* ============================================================
31 — ELEMENTOR
============================================================ */

.elementor-widget-html:has(.nihapa-story-page) {

    width: 100%;

    max-width: none;
}


/* ============================================================
32 — ACCESSIBILITY
============================================================ */

.nihapa-story-page a:focus-visible {

    outline:
        3px solid var(--ns-primary);

    outline-offset: 4px;
}


/* ============================================================
33 — REDUCED MOTION
============================================================ */

@media (prefers-reduced-motion:reduce) {

    .nihapa-story-page *,
    .nihapa-story-page *::before,
    .nihapa-story-page *::after {

        transition:
            none !important;
    }

}/* End custom CSS */