.arrival-section {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:24px;
    align-items:start
}
.arrival-directions {
    min-width:0;
    background:rgba(255,255,255,.93);
    border:1px solid rgba(255,255,255,.7);
    border-radius:2.5rem;
    padding:clamp(24px,3vw,40px);
    color:#24452f;
    display:grid;
    gap:20px
}
.arrival-directions h2,.arrival-directions h3,.arrival-directions p {
    margin:0
}
.arrival-directions h2 {
    font-size:clamp(1.5rem,2vw,2rem);
    line-height:1.25
}
.arrival-directions h3 {
    font-size:1.05rem;
    font-weight:700;
    margin-bottom:6px
}
.arrival-directions p {
    font-size:1rem;
    line-height:1.65
}
.arrival-directions .arrival-road-note {
    border-top:1px solid #d5e1d5;
    padding-top:18px;
    font-size:.94rem
}
#saannot .home-rules-list {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:24px 40px
}
#saannot .home-rules-list>li {
    margin:0;
    min-width:0
}
#saannot .home-rules-list p {
    margin:0;
    font-size:1rem;
    line-height:1.65
}
@media(min-width:1024px) {
    .arrival-section {
        grid-template-columns:minmax(0,1fr) minmax(0,1fr)
    }
}
@media(min-width:768px) {
    #saannot .home-rules-list {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:639px) {
    .arrival-directions {
        border-radius:2rem
    }
}
#saapuminen.arrival-section {
    background:rgba(255,255,255,.93);
    border:1px solid rgba(255,255,255,.7);
    border-radius:2.5rem;
    padding:clamp(24px,3vw,40px);
    gap:24px 32px;
    align-items:stretch
}
#saapuminen .arrival-unified-title {
    grid-column:1/-1;
    margin:0 0 4px;
    text-align:center;
    font-size:clamp(1.5rem,2vw,2rem);
    line-height:1.3
}
#saapuminen .arrival-directions {
    background:transparent;
    border:0;
    border-radius:0;
    padding:0;
    align-content:start
}
#saapuminen .arrival-map-card {
    min-width:0;
    border-radius:1.5rem;
    height:100%;
    min-height:480px
}
#saapuminen .arrival-map-copy {
    padding:16px 20px
}
#saapuminen .arrival-map-address {
    margin:0
}
@media(max-width:1023px) {
    #saapuminen .arrival-map-card {
        height:480px
    }
}
@media(max-width:639px) {
    #saapuminen.arrival-section {
        border-radius:2rem;
        gap:24px
    }
    #saapuminen .arrival-map-card {
        height:400px;
        min-height:400px
    }
}
#saapuminen .arrival-map-address {
    pointer-events:auto;
    cursor:pointer;
    position:relative;
    color:#fff;
    text-decoration:underline;
    text-underline-offset:5px;
    text-decoration-thickness:1px;
    transition:color .18s ease,transform .18s ease,text-underline-offset .18s ease
}
#saapuminen .arrival-map-address:hover {
    color:#b4ec38;
    text-underline-offset:7px;
    transform:translateY(-2px)
}
#saapuminen .arrival-map-address:active {
    transform:translateY(0) scale(.98)
}
#saapuminen .arrival-map-address:focus-visible {
    outline:2px solid #b4ec38;
    outline-offset:7px;
    border-radius:4px
}
@media(prefers-reduced-motion:reduce) {
    #saapuminen .arrival-map-address {
        transition:none
    }
    #saapuminen .arrival-map-address:hover,#saapuminen .arrival-map-address:active {
        transform:none
    }
}
#saapuminen .arrival-map-address {
    text-decoration:none;
}
#saapuminen .arrival-address-text {
    text-decoration:underline;
    text-underline-offset:5px;
    text-decoration-thickness:1px;
    transition:text-underline-offset .18s ease
}
#saapuminen .arrival-map-address:hover .arrival-address-text {
    text-underline-offset:7px
}
@media(prefers-reduced-motion:reduce) {
    #saapuminen .arrival-address-text {
        transition:none
    }
}
