/*
 * Editorial SEO copy blocks on the airport landing pages.
 *
 * Enqueued by SLP1_Airport_Seo::enqueueCopyStyles(), which only fires when the
 * page content carries the .slp1-seo-copy wrapper — so pages without editorial
 * copy never download this file. The source texts live in
 * docs/landingpage-content/.
 *
 * Every rule is scoped to the wrapper, and the element rules use direct-child
 * selectors on purpose: the copy blocks contain plugin shortcodes
 * ([slp1_product_listing], [slp1_trust_box]) whose own markup must not inherit
 * this typography.
 */

.slp1-seo-copy {
    line-height: 1.65;
}

.slp1-seo-copy > h2 {
    margin-top: 2em;
}

.slp1-seo-copy > h3 {
    margin-top: 1.6em;
}

.slp1-seo-copy > ol,
.slp1-seo-copy > ul {
    padding-left: 1.2em;
}

.slp1-seo-copy > ol > li,
.slp1-seo-copy > ul > li {
    margin-bottom: .6em;
}

/* Comparison table — scrolls horizontally on phones instead of widening
   the page. The wrapper div is required around every table. */
.slp1-seo-copy__table {
    overflow-x: auto;
    margin: 1.5em 0;
}

.slp1-seo-copy__table table {
    width: 100%;
    border-collapse: collapse;
    min-width: 640px;
    font-size: .95em;
}

.slp1-seo-copy__table th,
.slp1-seo-copy__table td {
    border: 1px solid rgba(0, 0, 0, .15);
    padding: .6em .8em;
    text-align: left;
    vertical-align: top;
}

.slp1-seo-copy__table thead th {
    background: rgba(0, 0, 0, .04);
    font-weight: 600;
}

/* Generated comparison table ([slp1_airport_table]). Shares the table styling
   above; these rules only cover the parts a hand-written table does not have. */
.slp1-comparison th[scope="row"] {
    font-weight: 600;
}

/* Second line of the provider cell: the product name under the brand. */
.slp1-comparison__sub {
    font-weight: 400;
    opacity: .75;
}

/* Footnote naming the priced booking window, directly under the table. */
.slp1-comparison__note {
    margin: -1em 0 1.5em;
    opacity: .8;
}

/* Highlighted aside, e.g. the "plan this much time" box. */
.slp1-seo-copy__note {
    border-left: 4px solid rgba(0, 0, 0, .2);
    padding: .9em 1.1em;
    margin: 1.5em 0;
    background: rgba(0, 0, 0, .03);
}

/* Portrait figure, e.g. the founder photo on /ueber-uns/. Floats beside the
   copy on desktop and becomes a centred block below 600px. */
.slp1-seo-copy__portrait {
    float: right;
    width: 180px;
    margin: .3em 0 1.2em 1.5em;
    text-align: center;
}

.slp1-seo-copy__portrait img {
    width: 100%;
    height: auto;
    border-radius: 50%;
    display: block;
}

.slp1-seo-copy__portrait figcaption {
    margin-top: .6em;
    font-size: .88em;
    opacity: .75;
}

@media (max-width: 600px) {
    .slp1-seo-copy__portrait {
        float: none;
        width: 150px;
        margin: 1.2em auto;
    }
}

/* FAQ accordion built from <details>/<summary>. */
.slp1-seo-copy__faq {
    margin-top: 1em;
}

.slp1-seo-copy__faq details {
    border-bottom: 1px solid rgba(0, 0, 0, .12);
    padding: .8em 0;
}

.slp1-seo-copy__faq summary {
    font-weight: 600;
    cursor: pointer;
}

.slp1-seo-copy__faq p {
    margin: .6em 0 0;
}
