/* =========================================================
   TRAVEL09 — REFUND POLICY
   ========================================================= */

.rp-page,
.rp-page *{
    box-sizing:border-box;
}

.rp-page{
    --rp-deep:#03131F;
    --rp-navy:#071E32;
    --rp-navy2:#0B2D46;

    --rp-teal:#087E8B;
    --rp-aqua:#16B8C4;

    --rp-gold:#D6AD60;

    --rp-text:#173447;
    --rp-muted:#718391;

    --rp-bg:#F5F8FA;
    --rp-soft:#EEF7F8;

    --rp-border:#DFE8ED;

    color:var(--rp-text);

    background:#FFFFFF;

    font-size:16px;
    line-height:1.7;

    -webkit-font-smoothing:antialiased;
}

.rp-shell{
    width:min(
        calc(100% - 80px),
        1440px
    );

    margin:0 auto;
}


/* =========================================================
   HERO
   ========================================================= */

.rp-hero{
    position:relative;

    overflow:hidden;

    padding:
        82px 0 72px;

    color:#FFFFFF;

    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(22,184,196,.22),
            transparent 29%
        ),
        radial-gradient(
            circle at 8% 90%,
            rgba(214,173,96,.10),
            transparent 25%
        ),
        linear-gradient(
            145deg,
            var(--rp-deep),
            var(--rp-navy) 58%,
            var(--rp-navy2)
        );
}

.rp-hero::before{
    content:"";

    position:absolute;
    inset:0;

    opacity:.13;

    background-image:
        linear-gradient(
            rgba(255,255,255,.04) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.04) 1px,
            transparent 1px
        );

    background-size:
        48px 48px;
}

.rp-hero .rp-shell{
    position:relative;
    z-index:2;
}

.rp-hero__grid{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        390px;

    gap:65px;

    align-items:end;
}

.rp-kicker{
    color:#86E0E6;

    font-size:12px;
    font-weight:850;

    letter-spacing:.11em;

    text-transform:uppercase;
}

.rp-hero h1{
    max-width:950px;

    margin:
        16px 0 0;

    color:#FFFFFF;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:
        clamp(
            54px,
            5.8vw,
            86px
        );

    font-weight:600;

    line-height:.98;

    letter-spacing:-.05em;
}

.rp-hero h1 span{
    display:block;

    margin-top:7px;

    background:
        linear-gradient(
            90deg,
            #A1EEF1,
            #72DCE3,
            #D7B66D
        );

    background-clip:text;

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.rp-hero__content > p{
    max-width:780px;

    margin-top:22px;

    color:#BDD0DA;

    font-size:17px;

    line-height:1.82;
}

.rp-hero__meta{
    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-top:24px;
}

.rp-hero__meta > div{
    min-width:165px;

    padding:
        12px 14px;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius:10px;

    background:
        rgba(255,255,255,.035);
}

.rp-hero__meta span{
    display:block;

    color:#8FA7B5;

    font-size:9px;
    font-weight:800;

    text-transform:uppercase;
}

.rp-hero__meta strong{
    display:block;

    margin-top:3px;

    color:#FFFFFF;

    font-size:12px;
}

.rp-hero__actions{
    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-top:24px;
}

.rp-hero__actions a{
    min-height:45px;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    padding:
        0 16px;

    border:
        1px solid
        rgba(255,255,255,.15);

    border-radius:9px;

    color:#D8E5EB;

    text-decoration:none;

    font-size:12px;
    font-weight:800;
}

.rp-hero__actions .primary{
    border-color:transparent;

    background:
        linear-gradient(
            135deg,
            var(--rp-teal),
            var(--rp-aqua)
        );

    color:#FFFFFF;
}

.rp-hero__card{
    padding:25px;

    border:
        1px solid
        rgba(255,255,255,.13);

    border-radius:20px;

    background:
        rgba(255,255,255,.05);

    backdrop-filter:
        blur(13px);
}

.rp-hero__card > span{
    color:#79DDE4;

    font-size:10px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-hero__card strong{
    display:block;

    margin:
        10px 0;

    color:#FFFFFF;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:25px;
    font-weight:600;

    line-height:1.25;
}

.rp-hero__card p{
    margin-bottom:0;

    color:#A9BDC8;

    font-size:13px;
}


/* =========================================================
   SECTION HEAD
   ========================================================= */

.rp-section-head{
    display:grid;

    grid-template-columns:
        minmax(0,1.15fr)
        minmax(300px,.72fr);

    gap:56px;

    align-items:end;
}

.rp-section-head > div > span,
.rp-final__panel > span{
    color:var(--rp-teal);

    font-size:11px;
    font-weight:850;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.rp-section-head h2,
.rp-final h2{
    margin:
        7px 0 0;

    color:var(--rp-navy);

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:
        clamp(
            38px,
            4vw,
            55px
        );

    font-weight:600;

    line-height:1.07;

    letter-spacing:-.03em;
}

.rp-section-head > p{
    margin:0;

    color:var(--rp-muted);

    font-size:14px;

    line-height:1.8;
}


/* =========================================================
   PRINCIPLES
   ========================================================= */

.rp-principles{
    padding:
        80px 0;
}

.rp-principles__grid{
    display:grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0,1fr)
        );

    gap:12px;

    margin-top:30px;
}

.rp-principles article{
    min-height:190px;

    padding:21px;

    border:
        1px solid
        var(--rp-border);

    border-radius:16px;

    background:#FFFFFF;
}

.rp-principles article > span{
    color:var(--rp-teal);

    font-size:10px;
    font-weight:900;
}

.rp-principles strong{
    display:block;

    margin-top:24px;

    color:var(--rp-navy);

    font-size:16px;
}

.rp-principles p{
    color:var(--rp-muted);

    font-size:12px;
}


/* =========================================================
   QUICK NAVIGATION
   ========================================================= */

.rp-quick{
    padding-bottom:58px;
}

.rp-quick__panel{
    display:flex;

    justify-content:space-between;
    align-items:center;

    gap:30px;

    padding:
        25px 28px;

    border:
        1px solid
        var(--rp-border);

    border-radius:18px;

    box-shadow:
        0 12px 35px
        rgba(7,30,50,.05);
}

.rp-quick__panel > div:first-child span{
    color:var(--rp-teal);

    font-size:9px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-quick h2{
    margin:
        4px 0 0;

    color:var(--rp-navy);

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:30px;

    font-weight:600;
}

.rp-quick__links{
    display:flex;

    flex-wrap:wrap;

    justify-content:flex-end;

    gap:7px;
}

.rp-quick__links a{
    min-height:38px;

    display:inline-flex;

    align-items:center;

    padding:
        0 11px;

    border:
        1px solid
        var(--rp-border);

    border-radius:8px;

    color:#587587;

    text-decoration:none;

    font-size:10px;
    font-weight:800;
}

.rp-quick__links a:hover{
    border-color:
        var(--rp-aqua);

    background:#EFF8F9;

    color:var(--rp-teal);
}


/* =========================================================
   MAIN POLICY
   ========================================================= */

.rp-policy{
    padding:
        72px 0;

    background:
        var(--rp-bg);
}

.rp-layout{
    display:grid;

    grid-template-columns:
        255px
        minmax(0,1fr);

    gap:42px;

    align-items:start;
}


/* =========================================================
   SIDEBAR
   ========================================================= */

.rp-sidebar{
    position:sticky;

    top:105px;
}

.rp-sidebar > span{
    color:var(--rp-teal);

    font-size:10px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-sidebar nav{
    max-height:
        calc(100vh - 245px);

    overflow:auto;

    display:grid;

    gap:2px;

    margin-top:12px;

    padding-right:4px;
}

.rp-sidebar nav a{
    padding:
        8px 10px;

    border-radius:7px;

    color:#627B89;

    text-decoration:none;

    font-size:11px;
    font-weight:730;
}

.rp-sidebar nav a:hover,
.rp-sidebar nav a.active{
    background:#E5F3F4;

    color:var(--rp-teal);
}

.rp-sidebar__help{
    margin-top:17px;

    padding:16px;

    border-radius:13px;

    background:
        var(--rp-navy);

    color:#FFFFFF;
}

.rp-sidebar__help strong{
    font-size:12px;
}

.rp-sidebar__help p{
    margin:
        5px 0;

    color:#A8BDC9;

    font-size:10px;
}

.rp-sidebar__help a{
    color:#82E0E6;

    text-decoration:none;

    font-size:10px;
    font-weight:800;
}


/* =========================================================
   POLICY SECTION
   ========================================================= */

.rp-article{
    min-width:0;
}

.rp-section{
    scroll-margin-top:105px;

    display:grid;

    grid-template-columns:
        42px
        minmax(0,1fr);

    gap:22px;

    padding:32px;

    margin-bottom:14px;

    border:
        1px solid
        var(--rp-border);

    border-radius:20px;

    background:#FFFFFF;
}

.rp-section__number{
    width:42px;
    height:42px;

    display:grid;

    place-items:center;

    border-radius:12px;

    background:#EDF7F8;

    color:var(--rp-teal);

    font-size:10px;
    font-weight:900;
}

.rp-label{
    color:var(--rp-teal);

    font-size:10px;
    font-weight:850;

    letter-spacing:.08em;

    text-transform:uppercase;
}

.rp-section h2{
    margin:
        5px 0 14px;

    color:var(--rp-navy);

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:
        clamp(
            30px,
            3vw,
            41px
        );

    font-weight:600;

    line-height:1.09;
}

.rp-section p{
    color:#5E7786;

    font-size:14px;

    line-height:1.85;
}

.rp-section a{
    color:var(--rp-teal);
}


/* =========================================================
   PRIMARY RULE
   ========================================================= */

.rp-primary-rule{
    margin:
        20px 0;

    padding:21px;

    border-radius:14px;

    background:
        linear-gradient(
            145deg,
            var(--rp-navy),
            #0A344E
        );

    color:#FFFFFF;
}

.rp-primary-rule > span{
    color:#7EDFE5;

    font-size:9px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-primary-rule strong{
    display:block;

    margin-top:8px;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:22px;
    font-weight:600;

    line-height:1.35;
}


/* =========================================================
   NOTE / WARNING
   ========================================================= */

.rp-note,
.rp-warning{
    margin:
        20px 0;

    padding:18px;

    border-radius:13px;
}

.rp-note{
    border:
        1px solid
        #CFE5E8;

    background:#F1F9FA;
}

.rp-note strong{
    color:#276A75;

    font-size:13px;
}

.rp-note p{
    margin:
        5px 0 0;

    color:#607E88;

    font-size:12px;
}

.rp-warning{
    border:
        1px solid
        #EAD7B6;

    background:#FFF9EF;
}

.rp-warning strong{
    color:#805621;

    font-size:13px;
}

.rp-warning p{
    margin:
        5px 0 0;

    color:#816B4B;

    font-size:12px;
}


/* =========================================================
   STATUS CARDS
   ========================================================= */

.rp-status-grid,
.rp-card-grid{
    display:grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    gap:9px;

    margin:
        20px 0;
}

.rp-status-grid article,
.rp-card-grid article{
    padding:17px;

    border:
        1px solid
        #E1E9ED;

    border-radius:11px;

    background:#FBFCFD;
}

.rp-status-grid article > span,
.rp-card-grid article > span{
    color:var(--rp-teal);

    font-size:8px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-status-grid strong,
.rp-card-grid strong{
    display:block;

    margin-top:5px;

    color:var(--rp-navy);

    font-size:12px;
}

.rp-status-grid p,
.rp-card-grid p{
    margin:
        5px 0 0;

    color:#728592;

    font-size:10px;

    line-height:1.7;
}

.rp-status-grid .eligible{
    border-color:#CDE7DF;

    background:#F4FBF8;
}

.rp-status-grid .restricted{
    border-color:#ECD9C5;

    background:#FFF9F3;
}


/* =========================================================
   REFUND FORMULA
   ========================================================= */

.rp-formula{
    display:grid;

    grid-template-columns:
        1fr
        auto
        1fr
        auto
        1fr;

    gap:10px;

    align-items:center;

    margin:
        22px 0;

    padding:18px;

    border:
        1px solid
        var(--rp-border);

    border-radius:13px;

    background:#FAFCFD;
}

.rp-formula > div{
    padding:13px;

    border-radius:9px;

    background:#FFFFFF;
}

.rp-formula span{
    display:block;

    color:#8799A4;

    font-size:8px;

    text-transform:uppercase;
}

.rp-formula strong{
    display:block;

    margin-top:3px;

    color:var(--rp-navy);

    font-size:12px;
}

.rp-formula > b{
    color:#81949F;

    font-size:20px;
}

.rp-formula .result{
    background:#E9F7F8;
}


/* =========================================================
   COMPONENTS
   ========================================================= */

.rp-component-grid{
    display:grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    gap:8px;

    margin:
        20px 0;
}

.rp-component-grid article{
    padding:14px;

    border:
        1px solid
        #E2EAED;

    border-radius:10px;
}

.rp-component-grid span{
    color:#9AABB4;

    font-size:8px;
}

.rp-component-grid strong{
    display:block;

    margin-top:3px;

    color:var(--rp-navy);

    font-size:11px;
}

.rp-component-grid p{
    margin:
        3px 0 0;

    font-size:9px;
}


/* =========================================================
   MALDIVES
   ========================================================= */

.rp-maldives{
    display:grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        );

    gap:8px;

    margin:
        20px 0;
}

.rp-maldives article{
    padding:16px;

    border:
        1px solid
        #E2EAED;

    border-radius:11px;

    background:#FAFCFD;
}

.rp-maldives span{
    color:var(--rp-teal);

    font-size:8px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-maldives strong{
    display:block;

    margin-top:4px;

    color:var(--rp-navy);

    font-size:12px;
}

.rp-maldives p{
    margin:
        5px 0 0;

    font-size:10px;
}


/* =========================================================
   EXAMPLE
   ========================================================= */

.rp-example{
    margin:
        20px 0;

    padding:19px;

    border:
        1px solid
        var(--rp-border);

    border-radius:13px;

    background:#FAFCFD;
}

.rp-example > span{
    color:var(--rp-teal);

    font-size:8px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-example > strong{
    display:block;

    margin-top:4px;

    color:var(--rp-navy);

    font-size:14px;
}

.rp-example > div{
    display:grid;

    grid-template-columns:
        1fr
        auto;

    gap:6px 20px;

    margin:
        13px 0;
}

.rp-example > div p{
    margin:0;

    font-size:11px;
}

.rp-example > div b{
    color:var(--rp-teal);
}

.rp-example small{
    color:#81939E;
}


/* =========================================================
   TIMELINE
   ========================================================= */

.rp-timeline{
    display:grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0,1fr)
        );

    gap:8px;

    margin:
        20px 0;
}

.rp-timeline article{
    position:relative;

    padding:15px;

    border:
        1px solid
        #E1E9ED;

    border-radius:10px;

    background:#FBFCFD;
}

.rp-timeline span{
    color:var(--rp-teal);

    font-size:8px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-timeline strong{
    display:block;

    margin-top:5px;

    color:var(--rp-navy);

    font-size:11px;
}

.rp-timeline p{
    margin:
        4px 0 0;

    font-size:9px;
}


/* =========================================================
   REQUEST
   ========================================================= */

.rp-request-grid{
    display:grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    gap:8px;

    margin:
        20px 0;
}

.rp-request-grid article{
    padding:14px;

    border:
        1px solid
        #E1E9ED;

    border-radius:10px;

    background:#FBFCFD;
}

.rp-request-grid span{
    display:block;

    color:#889BA6;

    font-size:8px;

    text-transform:uppercase;
}

.rp-request-grid strong{
    display:block;

    margin-top:3px;

    color:var(--rp-navy);

    font-size:11px;
}

.rp-action{
    min-height:42px;

    display:inline-flex;

    align-items:center;

    padding:
        0 14px;

    border-radius:9px;

    background:
        linear-gradient(
            135deg,
            var(--rp-teal),
            var(--rp-aqua)
        );

    color:#FFFFFF !important;

    text-decoration:none;

    font-size:11px;
    font-weight:850;
}


/* =========================================================
   CONTACT
   ========================================================= */

.rp-contact{
    display:flex;

    justify-content:space-between;
    align-items:center;

    gap:25px;

    margin-top:20px;

    padding:20px;

    border:
        1px solid
        #D5E5E9;

    border-radius:14px;

    background:#F8FBFC;
}

.rp-contact > div > span{
    color:var(--rp-teal);

    font-size:8px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-contact strong{
    display:block;

    margin-top:4px;

    color:var(--rp-navy);

    font-size:16px;
}

.rp-contact p{
    max-width:650px;

    margin:
        5px 0 0;

    font-size:10px;
}

.rp-contact > a{
    flex:none;

    min-height:42px;

    display:inline-flex;

    align-items:center;

    padding:
        0 14px;

    border-radius:9px;

    background:var(--rp-navy);

    color:#FFFFFF;

    text-decoration:none;

    font-size:10px;
    font-weight:850;
}


/* =========================================================
   EXAMPLES
   ========================================================= */

.rp-examples{
    padding:
        80px 0;
}

.rp-examples__grid{
    display:grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    gap:12px;

    margin-top:30px;
}

.rp-examples article{
    min-height:215px;

    padding:22px;

    border:
        1px solid
        var(--rp-border);

    border-radius:16px;
}

.rp-examples article > span{
    color:var(--rp-teal);

    font-size:9px;
    font-weight:850;

    text-transform:uppercase;
}

.rp-examples strong{
    display:block;

    margin-top:24px;

    color:var(--rp-navy);

    font-size:16px;
}

.rp-examples p{
    color:var(--rp-muted);

    font-size:12px;
}


/* =========================================================
   RELATED
   ========================================================= */

.rp-related{
    padding:
        80px 0;

    background:
        var(--rp-bg);
}

.rp-related__grid{
    display:grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0,1fr)
        );

    gap:10px;

    margin-top:30px;
}

.rp-related__grid a{
    min-height:165px;

    display:grid;

    grid-template-columns:
        auto
        minmax(0,1fr)
        auto;

    gap:12px;

    padding:19px;

    border:
        1px solid
        var(--rp-border);

    border-radius:14px;

    background:#FFFFFF;

    color:var(--rp-text);

    text-decoration:none;
}

.rp-related__grid a > span{
    color:#95A6AF;

    font-size:9px;
}

.rp-related strong{
    color:var(--rp-navy);

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:19px;

    font-weight:600;
}

.rp-related p{
    color:var(--rp-muted);

    font-size:10px;
}

.rp-related b{
    color:var(--rp-teal);
}


/* =========================================================
   FINAL
   ========================================================= */

.rp-final{
    padding:
        80px 0;
}

.rp-final__panel{
    padding:42px;

    border-radius:24px;

    color:#FFFFFF;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(22,184,196,.18),
            transparent 28%
        ),
        linear-gradient(
            145deg,
            var(--rp-deep),
            var(--rp-navy)
        );
}

.rp-final__panel > span{
    color:#86E0E6;
}

.rp-final h2{
    color:#FFFFFF;
}

.rp-final p{
    max-width:760px;

    color:#A8BDC9;
}

.rp-final a{
    min-height:44px;

    display:inline-flex;

    align-items:center;

    margin-top:10px;

    padding:
        0 16px;

    border-radius:9px;

    background:
        linear-gradient(
            135deg,
            var(--rp-teal),
            var(--rp-aqua)
        );

    color:#FFFFFF;

    text-decoration:none;

    font-size:11px;
    font-weight:850;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1180px){

    .rp-shell{
        width:
            calc(100% - 40px);
    }

    .rp-hero__grid{
        grid-template-columns:1fr;

        gap:30px;
    }

    .rp-hero__card{
        max-width:700px;
    }

    .rp-principles__grid{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );
    }

    .rp-layout{
        grid-template-columns:
            220px
            minmax(0,1fr);

        gap:25px;
    }

    .rp-related__grid{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );
    }

}


@media(max-width:900px){

    .rp-section-head{
        grid-template-columns:1fr;

        gap:14px;
    }

    .rp-quick__panel{
        align-items:flex-start;

        flex-direction:column;
    }

    .rp-quick__links{
        justify-content:flex-start;
    }

    .rp-layout{
        grid-template-columns:1fr;
    }

    .rp-sidebar{
        position:static;
    }

    .rp-sidebar > span,
    .rp-sidebar__help{
        display:none;
    }

    .rp-sidebar nav{
        max-height:none;

        display:flex;

        overflow-x:auto;

        gap:6px;

        margin-top:0;

        padding-bottom:8px;
    }

    .rp-sidebar nav a{
        flex:none;

        border:
            1px solid
            #DDE7EB;

        background:#FFFFFF;
    }

    .rp-status-grid,
    .rp-card-grid{
        grid-template-columns:1fr;
    }

    .rp-timeline{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );
    }

}


@media(max-width:720px){

    .rp-shell{
        width:
            calc(100% - 24px);
    }

    .rp-hero{
        padding:
            52px 0;
    }

    .rp-hero h1{
        font-size:
            clamp(
                43px,
                12vw,
                58px
            );
    }

    .rp-hero__actions{
        flex-direction:column;
    }

    .rp-hero__actions a{
        width:100%;
    }

    .rp-principles,
    .rp-policy,
    .rp-examples,
    .rp-related,
    .rp-final{
        padding:
            56px 0;
    }

    .rp-principles__grid,
    .rp-examples__grid,
    .rp-related__grid{
        grid-template-columns:1fr;
    }

    .rp-quick__links{
        width:100%;
    }

    .rp-quick__links a{
        flex:
            1 1
            calc(50% - 4px);

        justify-content:center;
    }

    .rp-section{
        grid-template-columns:1fr;

        gap:12px;

        padding:
            22px 16px;

        border-radius:16px;
    }

    .rp-section__number{
        width:36px;
        height:36px;
    }

    .rp-section h2{
        font-size:
            clamp(
                28px,
                8vw,
                36px
            );
    }

    .rp-section p{
        font-size:13px;
    }

    .rp-formula{
        grid-template-columns:1fr;
    }

    .rp-formula > b{
        text-align:center;
    }

    .rp-component-grid,
    .rp-maldives,
    .rp-request-grid,
    .rp-timeline{
        grid-template-columns:1fr;
    }

    .rp-contact{
        align-items:flex-start;

        flex-direction:column;
    }

    .rp-contact > a{
        width:100%;

        justify-content:center;
    }

    .rp-final__panel{
        padding:
            30px 22px;
    }

}


@media(max-width:460px){

    .rp-shell{
        width:
            calc(100% - 18px);
    }

    .rp-hero__meta{
        flex-direction:column;
    }

    .rp-hero__meta > div{
        width:100%;
    }

    .rp-quick__links a{
        flex:
            1 1
            100%;
    }

}


/* =========================================================
   PRINT
   ========================================================= */

@media print{

    .rp-hero,
    .rp-principles,
    .rp-quick,
    .rp-sidebar,
    .rp-examples,
    .rp-related,
    .rp-final,
    .t09-header,
    .t09-topbar,
    footer{
        display:none !important;
    }

    .rp-policy{
        padding:0;

        background:#FFFFFF;
    }

    .rp-shell{
        width:100%;
    }

    .rp-layout{
        display:block;
    }

    .rp-section{
        break-inside:avoid;

        border:0;

        padding:
            12px 0;

        margin:0;
    }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media(
    prefers-reduced-motion:reduce
){

    .rp-page *,
    .rp-page *::before,
    .rp-page *::after{
        scroll-behavior:auto !important;
        transition:none !important;
        animation:none !important;
    }

}
