/* AXIA — CONTENT + SIDEBAR CSS — SECOND PASS */

/* =========================================================
   AXIA CONTENT PAGE + SIDEBAR
   FULL REPLACEMENT

   - Open page background
   - Separate lilac sidebar cards
   - Compact sidebar sizing
   - Centred sidebar content
   - Sidebar hidden at 1000px
   - AXIA squiggles + four-point sparks
   ========================================================= */


/* =========================================================
   MAIN TWO-COLUMN PAGE LAYOUT
   ========================================================= */

.axia-page-layout {
    display: flex !important;
    align-items: flex-start !important;

    gap: clamp(28px, 3.5vw, 48px) !important;

    width: calc(100% - 36px) !important;
    max-width: 1320px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding:
        clamp(26px, 3vw, 42px)
        clamp(24px, 3vw, 40px) !important;

    box-sizing: border-box;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    position: relative;
    overflow: visible;
}


/* =========================================================
   MAIN CONTENT COLUMN
   ========================================================= */

.axia-page-main {
    flex: 1 1 0 !important;

    min-width: 0;
    max-width: 100%;

    position: relative;
    z-index: 2;
}


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

.axia-page-sidebar {
    flex: 0 0 clamp(290px, 25vw, 340px) !important;

    min-width: 0;

    position: relative;
    z-index: 2;
}


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

.axia-sidebar-inner {
    position: relative;

    width: 100%;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;

    overflow: visible;

    font-size: 15px;
    line-height: 1.45;
}


/* Remove any old whole-sidebar effects */

.axia-sidebar-inner::before,
.axia-sidebar-inner::after {
    content: none !important;
    display: none !important;
}


/* =========================================================
   INDIVIDUAL SIDEBAR CARDS
   ========================================================= */

.axia-sidebar-inner > .wp-block-group {
    position: relative;

    width: 100%;
    box-sizing: border-box;

    margin: 0 !important;
    padding: 16px !important;

    border-radius: 20px;

    background:
        linear-gradient(
            135deg,
            rgba(244, 240, 248, 0.96) 0%,
            rgba(238, 233, 244, 0.90) 55%,
            rgba(246, 243, 249, 0.94) 100%
        ) !important;

    border:
        1px solid rgba(92, 53, 118, 0.10);

    box-shadow:
        0 8px 24px rgba(58, 37, 72, 0.045),
        inset 0 1px 0 rgba(255, 255, 255, 0.65);

    overflow: hidden;
    isolation: isolate;

    text-align: center !important;

    --wp--style--block-gap: 12px;
}


/* Space between cards */

.axia-sidebar-inner > .wp-block-group + .wp-block-group {
    margin-top: 16px !important;
}


/* =========================================================
   HEADER-STYLE CURVED LINES INSIDE SIDEBAR CARDS
   ========================================================= */

.axia-sidebar-inner > .wp-block-group::before {
    content: "";

    position: absolute;
    inset: 0;

    z-index: 0;
    pointer-events: none;

    background:

        radial-gradient(
            ellipse 135% 70% at 15% -25%,
            transparent 69%,
            rgba(255, 255, 255, 0.66) 70%,
            rgba(255, 255, 255, 0.66) 70.6%,
            transparent 71.3%
        ),

        radial-gradient(
            ellipse 150% 68% at 110% 70%,
            transparent 72%,
            rgba(255, 255, 255, 0.40) 73%,
            rgba(255, 255, 255, 0.40) 73.6%,
            transparent 74.3%
        );

    opacity: 0.85;
}


/* Keep content above decorative card lines */

.axia-sidebar-inner > .wp-block-group > * {
    position: relative;
    z-index: 1;
}


/* =========================================================
   INNER BLOCK SPACING
   ========================================================= */

.axia-sidebar-inner > .wp-block-group > * {
    margin-block-start: 0;
}


.axia-sidebar-inner > .wp-block-group > * + * {
    margin-block-start: 10px;
}


/* =========================================================
   ALL HEADINGS
   ========================================================= */

.axia-sidebar-inner h1,
.axia-sidebar-inner h2,
.axia-sidebar-inner h3,
.axia-sidebar-inner h4,
.axia-sidebar-inner h5,
.axia-sidebar-inner h6,
.axia-sidebar-inner .wp-block-heading {
    text-align: center !important;

    margin-left: auto !important;
    margin-right: auto !important;
}


.axia-sidebar-inner h1,
.axia-sidebar-inner h2 {
    font-size: 24px !important;
    line-height: 1.05 !important;

    letter-spacing: -0.02em !important;

    margin-top: 0 !important;
    margin-bottom: 12px !important;
}


.axia-sidebar-inner h3 {
    font-size: 21px !important;
    line-height: 1.1 !important;

    margin-top: 0 !important;
    margin-bottom: 10px !important;
}


.axia-sidebar-inner h4,
.axia-sidebar-inner h5,
.axia-sidebar-inner h6 {
    font-size: 18px !important;
    line-height: 1.2 !important;

    margin-top: 0 !important;
    margin-bottom: 8px !important;
}


/* =========================================================
   PARAGRAPHS
   ========================================================= */

.axia-sidebar-inner p {
    font-size: 15px !important;
    line-height: 1.5 !important;

    text-align: center !important;
}


.axia-sidebar-inner p:last-child {
    margin-bottom: 0 !important;
}


/* =========================================================
   LINKS
   ========================================================= */

.axia-sidebar-inner a {
    text-align: center !important;
}


.axia-sidebar-inner p > a,
.axia-sidebar-inner > a,
.axia-sidebar-inner .wp-block-group > a {
    display: block;

    width: fit-content;
    max-width: 100%;

    margin-left: auto !important;
    margin-right: auto !important;
}


/* =========================================================
   LISTS
   ========================================================= */

.axia-sidebar-inner ul,
.axia-sidebar-inner ol {
    font-size: 14.5px !important;
    line-height: 1.45 !important;

    margin-top: 8px !important;
    margin-bottom: 0 !important;

    padding-left: 0 !important;

    list-style-position: inside;

    text-align: center !important;
}


.axia-sidebar-inner li {
    font-size: 14.5px !important;
    line-height: 1.45 !important;

    margin-bottom: 5px !important;

    text-align: center !important;
}


.axia-sidebar-inner li:last-child {
    margin-bottom: 0 !important;
}


.axia-sidebar-inner li a {
    display: inline !important;

    width: auto !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    text-align: center !important;
}


/* =========================================================
   IMAGES
   ========================================================= */

.axia-sidebar-inner figure,
.axia-sidebar-inner .wp-block-image {
    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;
}


.axia-sidebar-inner .wp-block-image {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}


.axia-sidebar-inner img {
    display: block;

    max-width: 100%;
    height: auto;

    margin-left: auto !important;
    margin-right: auto !important;
}


/* Linked images */

.axia-sidebar-inner .wp-block-image a {
    display: block !important;

    width: fit-content !important;
    max-width: 100%;

    margin-left: auto !important;
    margin-right: auto !important;
}


/* =========================================================
   SOCIAL ICONS
   ========================================================= */

.axia-sidebar-inner .wp-block-social-links {
    display: flex !important;

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

    gap: 10px !important;

    margin-top: 10px !important;
    margin-bottom: 0 !important;

    padding-left: 0 !important;
}


.axia-sidebar-inner .wp-social-link {
    font-size: 17px !important;

    margin: 0 !important;
}


.axia-sidebar-inner .wp-social-link a {
    display: flex !important;

    margin: 0 !important;

    width: auto !important;
}


/* =========================================================
   SEARCH BLOCK
   ========================================================= */

.axia-sidebar-inner .wp-block-search {
    margin: 0 auto !important;

    width: 100%;

    text-align: center !important;
}


.axia-sidebar-inner .wp-block-search__label {
    display: block;

    font-size: 15px !important;
    line-height: 1.2 !important;

    margin-bottom: 7px !important;

    text-align: center !important;
}


.axia-sidebar-inner .wp-block-search__inside-wrapper {
    display: flex !important;
    align-items: stretch !important;

    gap: 8px !important;

    width: 100%;
}


.axia-sidebar-inner .wp-block-search__input {
    min-width: 0 !important;
    min-height: 38px !important;

    padding: 6px 10px !important;

    font-size: 14px !important;
    line-height: 1.2 !important;

    text-align: left !important;
}


.axia-sidebar-inner .wp-block-search__button {
    min-height: 38px !important;

    padding: 6px 14px !important;

    font-size: 14px !important;
    line-height: 1 !important;

    margin-left: 0 !important;
}


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

.axia-sidebar-inner form {
    width: 100%;

    text-align: center !important;
}


.axia-sidebar-inner label {
    display: block;

    font-size: 14px !important;
    line-height: 1.35 !important;

    text-align: center !important;
}


.axia-sidebar-inner input:not(.wp-block-search__input),
.axia-sidebar-inner textarea,
.axia-sidebar-inner select {
    width: 100%;
    max-width: 100%;

    font-size: 14px !important;
    line-height: 1.35 !important;

    padding: 9px 10px !important;

    box-sizing: border-box;

    text-align: left !important;
}


.axia-sidebar-inner textarea {
    min-height: 80px;
}


.axia-sidebar-inner button,
.axia-sidebar-inner input[type="submit"] {
    font-size: 14px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}


/* =========================================================
   WORDPRESS BUTTON BLOCKS
   ========================================================= */

.axia-sidebar-inner .wp-block-buttons {
    display: flex !important;

    justify-content: center !important;

    max-width: 100%;
}


.axia-sidebar-inner .wp-block-button {
    margin-left: auto !important;
    margin-right: auto !important;
}


.axia-sidebar-inner .wp-block-button__link {
    font-size: 14px !important;
    line-height: 1.2 !important;

    padding: 9px 16px !important;

    text-align: center !important;
}


/* =========================================================
   CLEAN UP DEFAULT WORDPRESS MARGINS
   ========================================================= */

.axia-sidebar-inner .wp-block-heading {
    margin-block-start: 0 !important;
}


.axia-sidebar-inner figure:last-child,
.axia-sidebar-inner p:last-child,
.axia-sidebar-inner ul:last-child,
.axia-sidebar-inner ol:last-child {
    margin-bottom: 0 !important;
}


/* =========================================================
   AXIA EXTERIOR DECORATION
   Proper assessment-style squiggles + sparks

   These are deliberately NOT curly braces.
   They are horizontal hand-drawn waves.
   ========================================================= */


/* =========================================================
   LEFT SIDE
   ========================================================= */

.axia-page-layout::before {
    content: "";

    position: absolute;

    top: 0;
    left: -16px;

    width: 70px;
    height: 100%;

    z-index: 1;
    pointer-events: none;

    opacity: 0.72;

    background-image:

        /* 1 — PURPLE HORIZONTAL SQUIGGLE */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='40' viewBox='0 0 90 40'%3E%3Cg transform='rotate(-8 45 20)'%3E%3Cpath d='M3 21 C10 10 17 30 25 20 S40 10 48 20 S63 30 71 20 S82 11 87 17' fill='none' stroke='%239B8CF2' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E"),

        /* 2 — SOFT GREEN FOUR-POINT SPARK */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34' viewBox='0 0 32 32'%3E%3Cpath d='M16 1 C17.4 10.4 21.6 14.6 31 16 C21.6 17.4 17.4 21.6 16 31 C14.6 21.6 10.4 17.4 1 16 C10.4 14.6 14.6 10.4 16 1 Z' fill='%238DDD72'/%3E%3C/svg%3E"),

        /* 3 — GREEN SQUIGGLE, DIFFERENT ANGLE */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='40' viewBox='0 0 90 40'%3E%3Cg transform='rotate(9 45 20)'%3E%3Cpath d='M3 21 C10 10 17 30 25 20 S40 10 48 20 S63 30 71 20 S82 11 87 17' fill='none' stroke='%23A9DA68' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E"),

        /* 4 — SMALL PURPLE FOUR-POINT SPARK */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 32 32'%3E%3Cpath d='M16 1 C17.4 10.4 21.6 14.6 31 16 C21.6 17.4 17.4 21.6 16 31 C14.6 21.6 10.4 17.4 1 16 C10.4 14.6 14.6 10.4 16 1 Z' fill='%239B8CF2'/%3E%3C/svg%3E"),

        /* 5 — SMALL PURPLE SQUIGGLE */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='78' height='36' viewBox='0 0 90 40'%3E%3Cg transform='rotate(14 45 20)'%3E%3Cpath d='M3 21 C10 10 17 30 25 20 S40 10 48 20 S63 30 71 20 S82 11 87 17' fill='none' stroke='%239B8CF2' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E");

    background-repeat:
        no-repeat,
        no-repeat,
        no-repeat,
        no-repeat,
        no-repeat;

    background-size:
        68px auto,
        25px 25px,
        65px auto,
        18px 18px,
        56px auto;

    background-position:
        center 8%,
        center 27%,
        center 48%,
        center 69%,
        center 88%;
}


/* =========================================================
   RIGHT SIDE
   ========================================================= */

.axia-page-layout::after {
    content: "";

    position: absolute;

    top: 0;
    right: -16px;

    width: 70px;
    height: 100%;

    z-index: 1;
    pointer-events: none;

    opacity: 0.72;

    background-image:

        /* 1 — PURPLE FOUR-POINT SPARK */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34' viewBox='0 0 32 32'%3E%3Cpath d='M16 1 C17.4 10.4 21.6 14.6 31 16 C21.6 17.4 17.4 21.6 16 31 C14.6 21.6 10.4 17.4 1 16 C10.4 14.6 14.6 10.4 16 1 Z' fill='%239B8CF2'/%3E%3C/svg%3E"),

        /* 2 — GREEN HORIZONTAL SQUIGGLE */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='40' viewBox='0 0 90 40'%3E%3Cg transform='rotate(-10 45 20)'%3E%3Cpath d='M3 21 C10 10 17 30 25 20 S40 10 48 20 S63 30 71 20 S82 11 87 17' fill='none' stroke='%23A9DA68' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E"),

        /* 3 — SMALL GREEN SPARK */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 32 32'%3E%3Cpath d='M16 1 C17.4 10.4 21.6 14.6 31 16 C21.6 17.4 17.4 21.6 16 31 C14.6 21.6 10.4 17.4 1 16 C10.4 14.6 14.6 10.4 16 1 Z' fill='%238DDD72'/%3E%3C/svg%3E"),

        /* 4 — PURPLE HORIZONTAL SQUIGGLE */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='40' viewBox='0 0 90 40'%3E%3Cg transform='rotate(8 45 20)'%3E%3Cpath d='M3 21 C10 10 17 30 25 20 S40 10 48 20 S63 30 71 20 S82 11 87 17' fill='none' stroke='%239B8CF2' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E"),

        /* 5 — SMALL GREEN SQUIGGLE */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='78' height='36' viewBox='0 0 90 40'%3E%3Cg transform='rotate(-14 45 20)'%3E%3Cpath d='M3 21 C10 10 17 30 25 20 S40 10 48 20 S63 30 71 20 S82 11 87 17' fill='none' stroke='%23A9DA68' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E");

    background-repeat:
        no-repeat,
        no-repeat,
        no-repeat,
        no-repeat,
        no-repeat;

    background-size:
        25px 25px,
        68px auto,
        18px 18px,
        65px auto,
        56px auto;

    background-position:
        center 13%,
        center 33%,
        center 55%,
        center 74%,
        center 92%;
}


/* =========================================================
   1000PX AND BELOW
   Hide sidebar completely
   ========================================================= */

@media (max-width: 1000px) {

    .axia-page-sidebar {
        display: none !important;
    }


    .axia-page-main {
        flex: 1 1 100% !important;

        width: 100% !important;
        max-width: 100% !important;

        min-width: 0 !important;
    }


    .axia-page-layout {
        display: block !important;

        width: calc(100% - 30px) !important;

        padding:
            clamp(24px, 5vw, 36px)
            clamp(20px, 5vw, 32px) !important;
    }


    /* No exterior room for decoration */
    .axia-page-layout::before,
    .axia-page-layout::after {
        display: none !important;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .axia-page-layout {
        width: calc(100% - 20px) !important;

        padding: 22px 18px !important;
    }
}
