.lfr-layout-structure-item-container {padding: 0;} .lfr-layout-structure-item-row {overflow: hidden;} .portlet-borderless .portlet-content {padding: 0;}.lfr-layout-structure-item-6419f656-6891-19b3-2228-439187ea2f70 {
margin-bottom: var(--spacer-5,3rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-ba1911c8-ba6c-2351-eef5-2526c15d5abc {
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-63a851dc-6f28-69b3-5f19-cda56114991d {
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-0b17aa08-ab23-0f73-4ded-214d9f29ef1a {
margin-bottom: var(--spacer-5,3rem) !important;
}
.lfr-layout-structure-item-3e65f63b-6d88-a4dc-8761-41e57115d67e {
font-size: var(--font-size-sm) !important;
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-af9ddbc3-782f-9a94-c766-3c8cacd1b3f7 {
padding-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-174c8f80-7ef4-378e-4b0e-b96a99ee965c {
font-size: 0.875rem !important;
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-102756b9-c084-5bd5-2f6a-04fd6bff7183 {
padding-bottom: var(--spacer-5,3rem) !important;
padding-top: var(--spacer-5,3rem) !important;
}
.lfr-layout-structure-item-d83aeea8-660b-3ae9-be2c-7f5367b36053 {
margin-bottom: var(--spacer-5,3rem) !important;
}
.lfr-layout-structure-item-da913e01-5f2b-f6c6-fd57-a690ca0d1c9a {
padding-left: var(--spacer-5,3rem) !important;
padding-right: var(--spacer-5,3rem) !important;
color: var(--btn-primary-background-color) !important;
}
.lfr-layout-structure-item-14bc42bf-bfcd-96a6-99d3-a4f2034028b7 {
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-498952b8-1761-f686-bd9f-c120caa534b1 {
margin-bottom: var(--spacer-5,3rem) !important;
padding-left: var(--spacer-5,3rem) !important;
padding-right: var(--spacer-5,3rem) !important;
}
/* ====== Base footer wrapper ====== */
.se-footer {
  /* Colors from your reference */
 /* aqua field behind the wave and brand */
  color: #ffffff;
  position: relative;
  overflow: hidden;
}

/* ====== Wave (exact structure; solid aqua fill so it cannot disappear) ====== */
.footer-wave {
  width: 100%;
  height: 200px;        /* adjust heigh to taste */
  line-height: 0;
  overflow: hidden;
}
.footer-wave svg {
  display: block;
  width: 100%;
  height: 100%;
}
.footer-wave path {
  fill: #48cfc8;        /* explicit aqua fill */
  stroke: none;
}

/* ====== Brand (aqua field) ====== */
.se-footer__brand {
  /* This sits under the wave; increase min-height for more breathing room */
  min-height: 260px;
  padding: 32px 16px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
 background: #48cfc8; 
}
.se-footer__logo {
  /* Scales nicely, stays readable */
  width: clamp(160px, 22vw, 260px);
  height: auto;
  display: block;

  /* If your logo is already pure white, you can remove this filter */
  /* filter: brightness(0) invert(1); */
}

/* ====== Legal bar ====== */
.se-footer__legal {
  background: #0e1a4f; /* deep navy */
  color: #ffffff;
  text-align: center;
  padding: 12px 12px 18px;
  display: grid;
  gap: 6px;
}
.se-footer__copy {
  margin: 0;
  font-size: 0.85rem;
  opacity: 0.95;
}
.se-footer__links {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 0.9rem;
  justify-content: center; /* Centers the inline-flex content */
  justify-self: center;    /* Centers the whole nav element inside the grid */

}
.se-footer__links a {
  color: #ffffff;
  text-decoration: underline;
}
.se-footer__links a:hover,
.se-footer__links a:focus {
}
.se-footer__sep {
  opacity: 0.65;
}

/* ====== Responsive tweaks ====== */
@media (max-width: 768px) {
  .footer-wave { height: 180px; }
  .se-footer__brand { min-height: 210px; }
  .se-footer__logo { width: clamp(140px, 40vw, 220px); }
  .se-footer__copy { font-size: 0.8rem; }
  .se-footer__links { font-size: 0.85rem; }
}.lfr-layout-structure-item-43c3352f-66ab-17f4-b360-cdef176c50a7 {
margin-bottom: var(--spacer-5,3rem) !important;
}
.lfr-layout-structure-item-60cc6937-fd89-5798-c0ef-e1a7d044d419 {
margin-bottom: var(--spacer-4,1.5rem) !important;
}
:root {
  --brand-1: #1B1854;
  --brand-white: #ffffff;
}

/* ======================================
   SCALE WRAPPER (REQUIRED)
   This is what makes real shrinking work
====================================== */

.table-scale-wrapper {
  width: 100%;
  overflow: hidden;

  /* Default: normal size */
  --scale: 1;
  transform: scale(var(--scale));
  transform-origin: top left;

  /*
    Counteract transform so the layout box
    shrinks together with the visual scale
  */
  width: calc(100% / var(--scale));
}

/* ======================================
   SCALE CONTROL BY VIEWPORT
   (100% screen → 100% size,
    20% screen → 20% size)
====================================== */

@media (max-width: 1200px) {
  .table-scale-wrapper {
    --scale: 0.9;
  }
}

@media (max-width: 1024px) {
  .table-scale-wrapper {
    --scale: 0.8;
  }
}

@media (max-width: 768px) {
  .table-scale-wrapper {
    --scale: 0.65;
  }
}

@media (max-width: 480px) {
  .table-scale-wrapper {
    --scale: 0.5;
  }
}

/* ======================================
   TABLE STYLING (UNCHANGED STRUCTURE)
====================================== */

.table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 16px;
  overflow: hidden;

  box-shadow:
    0 8px 24px rgba(0,0,0,0.15),
    inset 0 0 18px rgba(255,255,255,0.4);

  background-color: #ffffff;
}

/* Header cells */
.table th {
  background-color: var(--brand-1);
  color: var(--brand-white);
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}

/* Body cells */
.table td {
  color: var(--brand-1);
  padding: 1rem;
  text-align: center;
}

.table th,
.table td {
  overflow-wrap: anywhere;
}.lfr-layout-structure-item-47897245-17cc-d9ad-8dc4-7fd4b91d7ce7 {
padding-bottom: var(--spacer-4,1.5rem) !important;
padding-left: var(--spacer-5,3rem) !important;
padding-right: var(--spacer-5,3rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-a106733a-5597-d416-b702-4851249b5003 {
padding-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-0f6ee119-1b95-ad98-704c-e159066c8c77 {
padding-left: var(--spacer-5,3rem) !important;
padding-right: var(--spacer-5,3rem) !important;
}
.lfr-layout-structure-item-340999ef-0ca2-c73b-d35f-3cc346c7091c {
margin-bottom: var(--spacer-5,3rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-d704ff0f-2290-033b-b9cc-4429a3a79ead {
padding-left: var(--spacer-5,3rem) !important;
padding-right: var(--spacer-5,3rem) !important;
}
.lfr-layout-structure-item-1ce4ff78-dcda-9dd5-49cf-408ec6d52464 {
padding-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-14ca4771-d3e6-07f9-3e5d-de5f2aed7a59 {
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-6d591bd7-13e9-259f-4eb5-fe407ef57859 {
margin-bottom: var(--spacer-4,1.5rem) !important;
}
.lfr-layout-structure-item-72be8be9-6e6d-d80d-dcfe-fe24683c213a {
padding-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-84dde86e-556c-818f-c896-e9f0fc3de48c {
padding-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-064586e1-8298-2a17-1cc6-ca9dcde542fa {
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-41b46fbf-c79b-8387-44d5-34936c097b93 {
margin-bottom: var(--spacer-4,1.5rem) !important;
}
.lfr-layout-structure-item-19cfa4f3-80b5-c1a3-e631-4ef97b18ceae {
padding-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-78ab43fb-5c6e-222a-7da0-05669d48ab69 {
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-75a3ccab-3473-5a8b-dcb3-56549f249382 {
margin-bottom: var(--spacer-4,1.5rem) !important;
color: var(--brand-color-1) !important;
}
.lfr-layout-structure-item-01e903fa-43b9-9f81-d420-22668aa2d50e {
margin-bottom: var(--spacer-4,1.5rem) !important;
}
.lfr-layout-structure-item-8801f966-33ee-1b33-b402-c7355e6bce27 {
margin-bottom: var(--spacer-5,3rem) !important;
}

.responsive-scale-container {
    /* Desktop reference width */

    --base-width: 70rem;

    /* Smooth scale value */
    --scale: clamp(
        0.6,
        calc(100vw / var(--base-width)),
        1
    );

    /* ✅ Layout behaves correctly */
    width: calc(var(--base-width) * var(--scale));
    max-width: 100vw;

    margin-left: auto;
    margin-right: auto;

    /* Visual scaling */
    transform: scale(var(--scale));

    /* Prevent Liferay overflow clipping */
    overflow: visible;
}@media screen and (max-width: 991px) {.lfr-layout-structure-item-60cc6937-fd89-5798-c0ef-e1a7d044d419 {
display: block !important;
}
:root {
  --brand-1: #1B1854;
  --brand-white: #ffffff;
}

/* =========================
   Scaling wrapper
========================= */
.table-scale-wrapper {
  /* Layout width shrinks with viewport */
  width: 100%;
  justify-content: center;
}

/* =========================
   Table styling
========================= */
.table {
  width: 100%;
height: 100%;
  border-collapse: inherit;
  border-spacing: initial;
  border-radius: 32px;
  overflow: hidden;

  box-shadow:
    0 8px 24px rgba(0,0,0,0.15),
    inset 0 0 18px rgba(255,255,255,0.4);
}

/* Header */
.table th {
  background-color: var(--brand-1);
  color: var(--brand-white);
  font-weight: 700;
  padding: 1rem;
  text-align: left;
}

/* Cells */
.table td {
  color: var(--brand-1);
  padding: 1rem;
  text-align: left;
}
.responsive-scale-container {
    /* Desktop reference width */
    --base-width: 100%;

    /* Smooth scale value */
    --scale: clamp(
        1,
        calc(100vw / var(--base-width)),
        1
    );

    /* ✅ Layout behaves correctly */
    width: calc(var(--base-width) * var(--scale));
    max-width: 100vw;

    margin-left: auto;
    margin-right: auto;

    /* Visual scaling */
    transform: scale(var(--scale));
    transform-origin: top center;

    /* Prevent Liferay overflow clipping */
    overflow: visible;
}}@media screen and (max-width: 575px) {  .table {
        margin-left: 0 !important;
        border-collapse: inherit;
        margin: auto;
        border-radius: 32px;
        border-spacing: initial;
        width: 100%;
height: 100%;
        overflow: hidden;
        box-shadow: 
        0 8px 24px rgba(0,0,0,0.15),            
        inset 0 0 18px rgba(255,255,255,0.4);
    }

    .table th {
        background-color: #F8F8F8;
        color: #696969;
    }
  
    .table td {
        color: #696969;
    }

    .table th,
    .table td {
        text-align: left !important
    }
  
  /* Brand colours */
:root {
    --brand-1: #1B1854;
    --brand-white: #ffffff;
}

/* Table header styling */
.table th {
    background-color: var(--brand-1);
    color: var(--brand-white);
    text-align: center;
    font-weight: 700;
}

/* Body row styling */
.table td {
    background: transparent;
    color: var(--brand-1);
}.responsive-scale-container {
    /* Desktop reference width */
    --base-width: 70rem;
height: 100%

    /* Smooth scale value */
    --scale: clamp(
        0.6,
        calc(100vw / var(--base-width)),
        1
    );

    /* ✅ Layout behaves correctly */
    width: calc(var(--base-width) * var(--scale));
    max-width: 100vw;

    margin-left: auto;
    margin-right: auto;

    /* Visual scaling */
    transform: scale(var(--scale));
    transform-origin: top center;

    /* Prevent Liferay overflow clipping */
    overflow: visible;
}}