/* gpsa-swimtopia.css
   Base styles for pages embedded in the SwimTopia CMS via iframe.
   Provides font matching and reusable collapsible (<details>/<summary>) support.
*/

body {
    font-family: "proxima-nova", "Myriad Pro", Arial, sans-serif;
    font-size: 12px;
    line-height: 18px;
    color: #000;
    margin: 0;
    padding: 0 0 16px;
}

h2 {
    font-size: 24px;
    line-height: 27px;
    font-weight: 700;
    color: #e00024;
    margin: 0 0 10px;
    padding: 0;
}

h3 {
    color: #e00024;
    font-size: 22px;
    line-height: 33px;
    font-weight: 400;
    margin: 0 0 10px;
    padding: 0;
}

td, p {
    font-size: 14.4px;
    line-height: 21.6px;
}

td {
    padding: 5px;
}

p {
    margin: 14.4px 0 15px;
}

a {
    color: #0085c8;
}

/* Collapsible sections using native <details>/<summary> */
.collapsible_text {
    background-color: #dc001e;
    color: white;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.collapsible_icon {
    font-size: 20px;
    font-weight: bold;
    margin-left: auto;
}

.active,
.collapsible_text:hover {
    background-color: #e000255c;
}

.collapsible_content {
    display: none;
    overflow: hidden;
    background-color: #F1F1F1;
    padding: 0 18px;
}

.responsive {
    width: 80%;
    height: auto;
}

summary.collapsible_text {
    list-style: none;
}

summary.collapsible_text::-webkit-details-marker {
    display: none;
}

details[open] .collapsible_content {
    display: block;
}

details:not([open]) .collapsible_icon::after {
    content: "+";
}

details[open] .collapsible_icon::after {
    content: "-";
}
