/* SAMDDRA global stylesheet. All custom site styles are maintained in this file. */

:root {
    --samddra-green: #004749;
    --samddra-yellow: #f2b51b;
    --green-color: var(--samddra-green);
    --yellow-color: var(--samddra-yellow);
    --color-primary: var(--samddra-green);
    --color-accent: var(--samddra-yellow);
    --card-radius: 8px;
    --font-sans: "Poppins", ui-sans-serif, system-ui, "Segoe UI", Roboto, Arial, sans-serif;
}

/* ===== 2026 visual refinement ===== */
:root {
    --site-ink: #10241b;
    --site-muted: #617168;
    --site-soft: #f4f7f5;
    --site-border: #dfe7e2;
    --site-shadow: 0 16px 44px rgba(12, 61, 40, .09);
    --section-space: clamp(64px, 8vw, 104px);
}

body { color: var(--site-ink); background: #fff; }
p { color: var(--site-muted); line-height: 1.75; }
main h1, main h2, main h3 { color: var(--site-ink); letter-spacing: -.025em; }
.container { max-width: 1200px; }

/* Cleaner shared navigation */
.navbar-main {
    border: 0;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 8px 30px rgba(0, 40, 32, .08);
    backdrop-filter: blur(14px);
}
.navbar-main .navbar-brand img { max-height: 58px; }
.navbar-main .navbar-nav > li > a {
    color: #17382e;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .01em;
}
.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > li > a:focus { color: var(--samddra-green); }
.navbar-main .dropdown-menu {
    min-width: 245px;
    margin-top: 8px;
    border: 1px solid var(--site-border);
    border-radius: var(--card-radius);
    padding: 10px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(0, 45, 35, .14);
}
.navbar-main .dropdown-menu > li > a { border-radius: 6px; padding: 11px 13px; }
.navbar-main .dropdown-menu > li > a:hover { background: var(--site-soft) !important; color: var(--samddra-green) !important; }
.navbar-mini { border: 0; background: var(--samddra-green); color: rgba(255,255,255,.86); }

/* Modern internal page banners */
.header-base {
    position: relative;
    min-height: 270px;
    overflow: hidden;
    background-position: center;
    background-size: cover;
}
.header-base::after {
    position: absolute;
    z-index: 0;
    inset: 0;
    background: linear-gradient(90deg, rgba(0,71,73,.94), rgba(0,71,73,.58) 65%, rgba(0,71,73,.25));
    content: '';
}
.header-base .container { position: relative; z-index: 1; }
.header-base .title-base h1 { color: #fff; font-size: clamp(40px, 5vw, 64px); font-weight: 600; }
.header-base .title-base p { color: rgba(255,255,255,.82); font-size: 16px; }
.header-base .title-base h1::before { background: var(--samddra-yellow); }

/* Homepage proof and service system */
.home-impact { border-block: 1px solid var(--site-border); background: #fff; }
.home-impact-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.home-impact-grid > div { display: flex; min-height: 118px; align-items: center; justify-content: center; border-right: 1px solid var(--site-border); text-align: center; flex-direction: column; }
.home-impact-grid > div:first-child { border-left: 1px solid var(--site-border); }
.home-impact strong { color: var(--samddra-green); font-size: 23px; font-weight: 600; }
.home-impact span { margin-top: 6px; color: var(--site-muted); font-size: 12px; }
.home-services { padding: var(--section-space) 0; background: var(--site-soft); }
.home-services > .content { padding-top: 0; padding-bottom: 0; }
.home-services .title-base { max-width: 720px; margin: 0 auto 42px; }
.home-services .title-base h2 { font-size: clamp(32px, 4vw, 48px); }
.home-services .row { display: flex; flex-wrap: wrap; }
.home-services [class*="col-md-"] { display: flex; margin-bottom: 28px; }
.home-services .advs-box { width: 100%; border: 1px solid var(--site-border) !important; background: #fff; box-shadow: var(--site-shadow); }
.home-services .img-box { display: block; overflow: hidden; aspect-ratio: 16 / 9; }
.home-services .img-box img { width: 100%; height: 100%; object-fit: cover; }
.home-services .advs-box-content { padding: 28px; }
.home-services .advs-box-content h4 { margin: 0 0 12px; color: var(--site-ink); font-size: 19px; line-height: 1.35; }
.home-services .advs-box-content p { min-height: 70px; }
.home-services .btn-text { color: var(--samddra-green) !important; font-weight: 600; }

.home-events { padding: var(--section-space) 0; }
.home-events-heading { margin-bottom: 38px; }
.home-career-callout { margin: 0; }
.home-membership-cta { padding: var(--section-space) 0; background: #fff; }
.home-membership-cta-inner { display: flex; gap: 48px; align-items: center; justify-content: space-between; border-radius: var(--card-radius); padding: clamp(32px,5vw,58px); background: linear-gradient(135deg, #003f41, #075936); box-shadow: 0 24px 60px rgba(0,63,65,.2); }
.home-membership-cta span { color: var(--samddra-yellow); font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.home-membership-cta h2 { max-width: 720px; margin: 9px 0; color: #fff; font-size: clamp(28px,4vw,44px); line-height: 1.15; }
.home-membership-cta p { margin: 0; color: rgba(255,255,255,.72); }
.home-membership-actions { display: flex; flex-shrink: 0; gap: 10px; flex-direction: column; }
.home-membership-actions .btn { min-width: 210px; }
.home-membership-actions .btn-border { border-color: rgba(255,255,255,.7); color: #fff !important; }

/* Consistent content cards, forms and trust marks */
.panel, .well, .advs-box, .event-card, .career-card, .career-role-summary,
.events-filters, .career-filters, .cookie-preferences-card {
    border-color: var(--site-border);
    box-shadow: var(--site-shadow);
}
input, select, textarea, .form-control {
    border-radius: var(--card-radius) !important;
    transition: border-color .2s ease, box-shadow .2s ease;
}
input:focus, select:focus, textarea:focus, .form-control:focus {
    border-color: var(--samddra-green) !important;
    box-shadow: 0 0 0 4px rgba(0,71,73,.11) !important;
}
.section-empty:has(.flexslider.carousel) { padding: 70px 0; border-top: 1px solid var(--site-border); background: var(--site-soft); }
.section-empty:has(.flexslider.carousel) .img-box { display: grid; min-height: 96px; padding: 16px; background: #fff; place-items: center; }
.section-empty:has(.flexslider.carousel) .img-box img { max-height: 62px; width: auto; object-fit: contain; filter: grayscale(1); opacity: .72; transition: filter .25s ease, opacity .25s ease, transform .25s ease; }
.section-empty:has(.flexslider.carousel) .img-box:hover img { filter: grayscale(0); opacity: 1; transform: scale(1.04); }

.footer-base { z-index: 4; border-top: 4px solid var(--samddra-yellow); }

@media (max-width: 994px) {
    .navbar-mini { display: none; }
    .home-impact-grid { grid-template-columns: repeat(2, 1fr); }
    .home-impact-grid > div { border-bottom: 1px solid var(--site-border); }
    .home-membership-cta-inner { align-items: stretch; flex-direction: column; }
    .home-membership-actions { flex-direction: row; }
}

@media (max-width: 767px) {
    :root { --section-space: 58px; }
    .header-base { min-height: 220px; }
    .header-base .title-base h1 { font-size: 38px; }
    .home-impact-grid { grid-template-columns: 1fr 1fr; }
    .home-impact-grid > div { min-height: 98px; padding: 14px; }
    .home-impact strong { font-size: 19px; }
    .home-services .row { display: block; }
    .home-services [class*="col-md-"] { display: block; }
    .home-services .advs-box-content p { min-height: 0; }
    .home-membership-actions { flex-direction: column; }
    .home-membership-actions .btn { width: 100%; min-width: 0; }
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
button,
input,
select,
textarea {
    font-family: var(--font-sans);
}

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
    overflow-y: visible;
}

img,
video,
iframe,
svg {
    max-width: 100%;
}

main,
header,
footer,
section {
    max-width: 100%;
}

.mobile-menu-close,
.mobile-menu-backdrop {
    display: none;
}

.internal-page-hero {
    margin-bottom: 48px;
}

@media (max-width: 767px) {
    .internal-page-hero {
        margin-bottom: 32px;
    }
}

@media (max-width: 994px) {
    .container {
        width: 100%;
        max-width: 100%;
    }

    main,
    section,
    .content,
    .row,
    [class*="col-"] {
        min-width: 0;
    }

    p,
    a,
    h1,
    h2,
    h3,
    h4,
    td,
    th {
        overflow-wrap: anywhere;
    }

    .table-responsive {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    body.mobile-menu-open {
        overflow: hidden;
    }

    #main-navigation.navbar-collapse {
        position: fixed;
        z-index: 1060;
        top: 0;
        right: 0;
        bottom: 0;
        left: auto;
        display: block !important;
        visibility: hidden;
        overflow-x: hidden;
        overflow-y: auto;
        width: min(88vw, 380px);
        height: 100vh !important;
        max-height: none !important;
        margin: 0;
        border: 0;
        padding: 72px 26px 32px;
        background: #fff;
        box-shadow: -18px 0 45px rgba(0, 0, 0, .18);
        transform: translateX(100%);
        transition: transform .3s ease, visibility .3s ease;
    }

    #main-navigation.navbar-collapse.in,
    #main-navigation.navbar-collapse.is-open {
        visibility: visible;
        transform: translateX(0);
    }

    #main-navigation.navbar-collapse.collapsing {
        visibility: visible;
        transform: translateX(100%);
        transition: transform .3s ease, visibility .3s ease;
    }

    body.mobile-menu-open #main-navigation.navbar-collapse.collapsing {
        transform: translateX(0);
    }

    #main-navigation .mobile-menu-close {
        position: absolute;
        top: 20px;
        right: 22px;
        display: grid;
        width: 42px;
        height: 42px;
        border: 0;
        border-radius: 50%;
        background: var(--samddra-green);
        color: #fff;
        font-size: 18px;
        cursor: pointer;
        place-items: center;
    }

    #main-navigation .navbar-nav,
    #main-navigation .navbar-right,
    #main-navigation .lan-menu {
        float: none !important;
        width: 100%;
        margin: 0;
    }

    #main-navigation .navbar-nav > li {
        float: none;
        width: 100%;
    }

    #main-navigation .navbar-nav > li > a {
        padding: 14px 0;
    }

    .mobile-menu-backdrop {
        position: fixed;
        z-index: 1050;
        inset: 0;
        width: 100%;
        height: 100%;
        border: 0;
        padding: 0;
        background: rgba(0, 35, 37, .48);
        opacity: 0;
        visibility: hidden;
        transition: opacity .3s ease, visibility .3s ease;
    }

    #main-navigation.in + .mobile-menu-backdrop,
    #main-navigation.is-open + .mobile-menu-backdrop,
    body.mobile-menu-open .mobile-menu-backdrop {
        display: block;
        opacity: 1;
        visibility: visible;
    }
}

/* ===== skin.css ===== */
/*
-------------------------------------------------------------------
Skin: Yellow Business
-------------------------------------------------------------------

Table of contents

1. Colors  [Row 30] 
2. Custom classes [Row 226] 
3. Layout and typography [Row 427] 
4. Headers and menu [Row 524] 
5. Titles [Row 724] 
6. Footer [Row 809] 
7. Components [Row 860] 
8. Containers [Row 1526] 
9. Mobile / responsive [Row 1701] 

-------------------------------------------------------------------

*/



/*
-------------------------------------------------------------------
COLORS
-------------------------------------------------------------------
*/


.extra-content, .nav:not(.ms-rounded) li > a:before, .boxed.advs-box-top-icon-img .advs-box-content, [class*="col-md-"].boxed,
.advs-box-side-img hr, .mi-menu .sidebar-nav, .advs-box-top-icon-img.niche-box-post:after, .accordion-list .list-group-item:before, [class*=header-] .title-base h1:before,
.woocommerce .product span.onsale, .circle-button, .btn.circle-button, .btn, .header-bootstrap, .header-title hr, .advs-box.boxed, i.circle, .intro-box:after, .intro-box:before,
.advs-box-side-img hr, .call-action-box, .title-base hr, .nav.inner.ms-mini, .bg-color, .header-title.white .title-base hr, .header-animation.white .title-base hr,
.title-base .scroll-top, .title-modern .scroll-top, i.square, .header-base, .progress-bar, .tagbox span, .niche-box-post .block-infos .block-data, .header-base .title-base h1:before {
    background-color: var(--samddra-yellow);
}

    .navbar-inner .nav.ms-minimal li a:before, .header-base.white, .advs-box-multiple.boxed .advs-box-content {
        background-color: var(--samddra-yellow) !important;
    }

    .btn:not(.btn-border):hover, .btn-primary:focus, .boxed .btn, .btn-primary.focus, .side-menu .active,
    .white.circle-button:hover, .woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
    .woocommerce input.button.alt:hover, .white .title-base.yellow-bar hr {
        background-color: #f39f07 !important;
    }

    i.icon, .fullpage-menu .active i, .navbar-default .navbar-toggle:hover i, .navbar-default .navbar-toggle:focus i, header .side-menu .active > a,
    .adv-img-button-content .caption i, .icon-menu ul.nav > li.active > a i, .icon-menu ul.nav > li:hover > a i, .active .maso-order i, .btn.btn-border i, .advs-box-top-icon:not(.boxed) i.icon,
    .datepicker-panel > ul > li.picked, .tab-box .nav-tabs > li.active > a,
    .advs-box-content h2:hover a, .pricing-table .pricing-price span, .datepicker-panel > ul > li.picked:hover, footer h4, .box-menu-inner .icon-box i,
    .caption-bottom p, .mi-menu li .fa, .fullpage-arrow.arrow-circle .arrow i, .accordion-list .list-group-item > a i, .mega-menu .fa-ul .fa-li,
    .adv-circle.adv-circle-center i, .mi-menu a > .fa, .box-steps .step-item:after, .box-steps .step-number, h6, li.panel-item .fa-li, .icon-menu .navbar-collapse ul.nav i,
    .side-menu i, .side-menu ul a i, .bs-menu li:hover > a, .bs-menu li.active > a, .hamburger-button:hover, .img-box.adv-circle i, .advs-box-side .icon, .advs-box-side-icon i,
    .niche-box-testimonails h5, .title-icon i, i, .fullpage-menu.white li.active a i, .timeline > li > .timeline-label h4, .anima-button i, .pricing-table .list-group-item.pricing-price,
    .footer-center .footer-title, .accordion-list .list-group-item > a.active, .btn-border, .btn.btn-border, .btn.circle-button.btn-border, footer a:hover, .block-quote.quote-1:before,
    .block-quote.quote-2:before, .breadcrumb > li + li:before, .adv-img-full-content p.sub {
        color: var(--samddra-yellow);
    }

@media (max-width: 994px) {
    .navbar-nav .open .dropdown-menu > li > a[href="#"] {
        color: var(--samddra-yellow) !important;
    }
}

.footer-minimal .footer-title, .advs-box-top-icon.boxed .btn, .advs-box-top-icon.boxed .circle-button, .sidebar-nav ul a:hover, header .mi-menu .sidebar-nav ul a:hover,
.woocommerce div.product p.price, .woocommerce div.product span.price, .white .text-color, .accordion-list .list-group-item > a:hover, .boxed .circle-button:hover i,
.boxed .btn:hover i, .pagination > .active > a, .pagination > li:not(.disabled):hover > a, .boxed .circle-button, header .btn-search:hover, .advs-box h2 a:hover, .nav.ms-minimal > li.active > a {
    color: var(--samddra-yellow) !important;
}

.btn-border:hover, .btn.btn-border:hover, .btn.circle-button.btn-border:hover, .tag-row i {
    color: #f39f07;
}

    .btn-border:hover i, .white .btn i {
        color: #f39f07 !important;
    }

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus, .pagination > li:not(.disabled):hover > a i:before, .advs-box-multiple div.circle, .advs-box-multiple div.circle i {
    border-color: var(--samddra-yellow) !important;
    color: var(--samddra-yellow) !important;
}

.nav.inner.ms-rounded > li > a:hover, .nav.inner.ms-rounded > li.active a {
    background-color: var(--samddra-yellow) !important;
    border-color: var(--samddra-yellow) !important;
}

.circle-button, .btn-default, .white .btn:not(.btn-border), .btn-border, .bg-transparent .navbar-nav > li.active > a .caret:before, .bg-transparent .navbar-nav > li:hover > a .caret:before,
.white .btn-text, .scroll-top-mobile:hover:before, .tab-box.left:not(.pills) .panel-box, .tab-box.right:not(.pills) .panel-box, .tab-box.right .nav-tabs {
    border-color: var(--samddra-yellow);
}

.boxed.advs-box-multiple .advs-box-content, .niche-box-post, .extra-content, .quote-author, .border-color, .border-color.boxed-border.boxed-border.white, .img-border, .timeline > li > .timeline-badge,
body div.boxed-border.border-yellow, .pagination li.active a {
    border-color: var(--samddra-yellow) !important;
}

.datepicker-top-left, .datepicker-top-right {
    border-top-color: var(--samddra-yellow);
}

    .datepicker-top-left:before, .datepicker-top-right:before {
        border-bottom-color: var(--samddra-yellow);
    }

.text-color {
    color: #f39f07;
}

.circle-button:hover, .btn:hover {
    border-color: #f39f07 !important;
}

.btn-text, html .advs-box .btn-text:after {
    color: #f39f07;
    border-color: #f39f07;
}

.white.btn, .white .btn, .white .tag-row a, .header-bootstrap i.icon, .white .tag-row i, .white .advs-box-content h2 a, .white.advs-box-side-img h2 a, .advs-box-side-icon.boxed .icon-box i,
.circle-button, .white .pagination > li.disabled > a, .white .pagination > li > a, .social-colors i, .btn.circle-button, .btn, .btn i, .circle-button, .btn.circle-button, .btn:hover,
.btn:hover i, .btn.focus, .input-group button {
    color: #fff;
}

    .nav.inner.ms-rounded > li > a:hover, .white .btn-text:hover, .header-base.white .breadcrumb.b a, .mi-menu .sidebar-nav ul a:hover, .white .btn.btn-border:hover, .white.advs-box-top-icon h3,
    .nav.inner:not(.ms-rounded) > li.active, .nav.inner.ms-rounded > li.active a, .nav.inner.ms-rounded li:hover i, .ms-rounded .active .maso-order i, .white .btn.circle-button.btn-border,
    .boxed .btn-text, .advs-box.white h3 {
        color: #fff !important;
    }

.section-bg-image .advs-box.boxed-inverse, .white .flex-control-paging li a:hover, body .section-bg-color .advs-box-blog.boxed-inverse, .adv-img-down-text.boxed-inverse:hover, .advs-box-multiple div.circle,
.section-bg-image [class*="col-md-"].boxed-inverse, [class*="shadow-"].boxed-inverse, .sidebar-nav ul ul, .base-box.boxed, .base-box.boxed-inverse, .advs-box.boxed-inverse {
    background-color: #fff;
}

header .side-menu .active, .white.btn:not(.btn-border), .white .btn:not(.btn-border), .white:not([class*="header-"]) .title-base hr, .bg-white {
    background-color: #fff !important;
}

.white .flex-control-paging li a.flex-active, .white.btn, .white .btn {
    border-color: #fff;
    background-color: #fff !important;
}

.white .flex-control-paging li a, body .white .flex-direction-nav a:before, .btn .caret:before, body .white .flex-direction-nav a.flex-next:before, .white .accordion-list .list-group-item > a:before {
    border-color: #fff;
}

.white .btn:hover, .white .pagination li > a i:before, .boxed-border.white, .boxed-border.boxed-border.white, .btn.white:hover, .white .btn:hover, .btn.white, .white .btn, .boxed .btn-text,
.white.bg-color .btn:not(.btn-border) {
    border-color: #fff !important;
}

.white form .form-control {
    border-color: #fff !important;
    color: #fff !important;
}

.section-bg-color .advs-box-top-icon.boxed-inverse .icon, .section-bg-color .advs-box-top-icon .icon, .navbar-mini, .header-base:not(.bg-cover) {
    background-color: #f7f7f7;
}

.navbar-default .navbar-nav > .active > a, .dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus, .navbar-nav > li:hover > a, .nav.inner > li, .box-transparent .overlaybox-inner, header .input-group-btn .btn, header .input-group-btn .btn:hover,
.navbar-default .navbar-nav > li > a:hover, .dropdown-menu ul > li:hover > a, .navbar-main .btn-search:hover, .accordion-list .list-group-item > a:hover, .nav.inner, .bg-transparent li.active, .bg-transparent li:hover,
.tab-box .nav-tabs li.active, .white.btn.btn-border, .white .btn.btn-border, .pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus,
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus, .nav-tabs > li.active > a {
    background: none !important;
}

header .input-group-btn .btn {
    border: none !important;
}

.advs-box .advs-box-content p, .advs-box-side-icon p, .maso-order i {
    color: #7a7a7a;
}

.white.btn:not(.btn-border), .white .btn:not(.btn-border) {
    color: #7a7a7a !important;
}

.input-group-btn .btn, .btn.btn-primary:hover {
    background-color: #9c9c9c !important;
    border-color: #9c9c9c !important;
}

    .input-group-btn .btn:hover, .btn.btn-primary {
        background-color: #7a7a7a !important;
        border-color: #7a7a7a !important;
    }

.color-4 {
    color: #53a0d8;
}

.advs-box h3 {
    color: #4C4C4C;
    font-weight: 400;
}

.white ::-webkit-input-placeholder {
    color: #fff;
}

.white ::-moz-placeholder {
    color: #fff;
}

.white :-ms-input-placeholder {
    color: #fff;
}

.white :-moz-placeholder {
    color: #fff;
}
/*
-------------------------------------------------------------------
CUSTOM CLASSES
-------------------------------------------------------------------
*/
.shadow-1 {
    box-shadow: 0 0 7px 0px rgba(0, 0, 0, 0.16);
}

.shadow-2 {
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.13) !important;
}

img.shadow-2 {
    border-radius: 5px;
}

.boxed-inverse.shadow-1, .boxed.shadow-1 {
    border-radius: 2px;
}

.boxed-border, [class*="col-md-"].boxed-border {
    background: none !important;
    border: 4px solid #7a7a7a !important;
}

.opacity-8 {
    opacity: .8;
}

.width-400 {
    max-width: 400px;
}

.width-500 {
    max-width: 500px;
}

.width-600 {
    max-width: 600px;
}

.flexslider.nav-right .flex-control-nav {
    bottom: 0;
    right: 0;
    display: inline-block;
    width: auto;
}

.flexslider.nav-left .flex-control-nav {
    text-align: left;
    bottom: -60px;
}

.flexslider.nav-top-right .flex-control-nav {
    top: 15px;
    right: 15px;
    text-align: right;
    bottom: auto;
}

.flexslider.nav-top-right .flex-control-paging li a {
    text-indent: 9995px;
}

.flexslider.png-boxed .img-box {
    border: 1px solid #cecece;
    padding: 15px;
    width: 145px;
    height: 75px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .flexslider.png-boxed .img-box img {
        margin: 0 !important;
        display: inline-block !important;
        max-width: 100% !important;
    }

.border-table.text-left:not(.table-bordered) td:first-child {
    padding-left: 0;
}

.border-table.text-left:not(.table-bordered) td:last-child {
    padding-right: 0;
    border-right: 0;
}

.border-table.text-left:not(.table-bordered) td {
    border: none;
    border-right: 1px solid #D2D2D2;
    display: inline-block;
    padding-top: 0;
    padding-bottom: 0;
}

.img-bubble span.caption-box {
    position: absolute;
    top: 0;
    margin: 50px;
    width: 200px;
    height: 200px;
    padding: 0px;
    background: #fff;
    z-index: 2;
    border-radius: 200px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.img-bubble .caption-box:after {
    content: '';
    position: absolute;
    border-style: solid;
    border-width: 20px 20px 0;
    border-color: #fff rgba(0, 0, 0, 0);
    display: block;
    width: 0;
    z-index: 1;
    bottom: 15px;
    left: 157px;
    transform: rotate(-45deg);
}

.img-bubble.img-box.inner .caption {
    margin: 0 15px;
    width: 170px;
    height: auto;
    background: none;
    color: #4e4e4e;
    font-size: 13px;
    line-height: 18px;
    font-weight: 400;
    text-shadow: none;
}

.img-border {
    border: 1px solid #7a7a7a;
}

.bg-img {
    margin: -81px -15px !important;
    width: calc(100% + 30px);
    max-width: 200%;
}

.section-doc {
    border-top: 1px solid #e0e0e0;
}

body .block-quote.quote-gray:before {
    color: #dedede;
}

@keyframes border-animation {
    0% {
        height: 0%;
    }

    100% {
        height: 100%;
    }
}

@keyframes border-animation-2 {
    0% {
        width: 0%;
    }

    100% {
        width: 100%;
    }
}

.intro-box {
    position: relative;
    background: none !important;
}

    .intro-box:after, .intro-box:before {
        content: "";
        position: absolute;
        width: 10px;
        height: 100%;
        right: 0;
        top: 0;
        animation: border-animation 2s;
    }

    .intro-box:before {
        left: auto;
        right: 0;
        width: 100%;
        height: 10px;
        animation: border-animation-2 2s;
    }

/*
-------------------------------------------------------------------
LAYOUT & TYPOGRAPHY
-------------------------------------------------------------------
*/
body, p {
    font-size: 14px;
    line-height: 23px;
}

body, p, h1, h2, h3, h4, h5, h6 {
    font-weight: 300;
}

.text-normal, .timeline > li > .timeline-label p, .timeline > li > .timeline-label h4, .timeline-title, .form-box p {
    font-weight: 400;
}

.text-bold, .collapse-button b, #comments h4, #comments h5, .nav-pills > li > a {
    font-weight: 500 !important;
}

p {
    letter-spacing: .5px;
}

.text-xs {
    font-size: 12px !important;
    line-height: 16px;
}

.text-s {
    line-height: 20px;
}

.text-l {
    line-height: 38px;
}

.text-xl {
    line-height: 60px;
    font-size: 45px !important;
}

hr {
    border-top: 1px solid #d6d6d6;
}

.container.content, .section-empty > .content, .section-bg-image > .content, .section-bg-video > .content, .section-bg-animation > .content, .section-slider > .content, .section-two-blocks .content {
    padding-top: 80px;
    padding-bottom: 80px;
}

.base-box.boxed, .base-box.boxed-inverse, .boxed-inverse, [class*="col-md-"].boxed, [class*="col-md-"].boxed-inverse, .grid-box > .grid-item.boxed-inverse, .row.vertical-row > div.boxed-inverse, .row.vertical-row > div.boxed {
    padding: 50px;
}

    [class*="col-md-"].boxed.small-padding, [class*="col-md-"].boxed-inverse.small-padding {
        padding: 25px;
    }

h1 + p, h2 + p, h3 + p, h4 + p {
    margin-top: 20px;
}

h1, .h1 {
    line-height: 50px;
}

h2, .h2 {
    line-height: 35px;
}

h4, .h4 {
    line-height: 23px;
}

.quote-author {
    font-style: normal;
    font-weight: 400;
    padding-left: 15px;
    border-left: 4px solid #7d7d7d;
}

.section-bg-color hr {
    border-color: #b3b3b3;
}

.scroll-top-mobile {
    border-radius: 50%;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.17);
    color: #b5b5b5;
    width: 35px;
    height: 35px;
    bottom: 15px;
    right: 15px;
}
/*
-------------------------------------------------------------------
HEADER AND MENUS
-------------------------------------------------------------------
*/

.nav:not(.ms-rounded) li.active > a:before, .nav:not(.ms-rounded) li:hover > a:before {
    width: 100%;
}

.nav:not(.ms-rounded) li {
    position: relative;
}

    .nav:not(.ms-rounded) li > a:before {
        content: '';
        position: absolute;
        left: 0px;
        bottom: 0px;
        width: 0%;
        height: 1px;
        transition: all 0.35s ease-out;
        -webkit-transition: all 0.35s ease-out;
    }

.navbar-brand {
    height: 100px;
	old.height: 70px;
}

.nav .caret:before {
    border-color: #7d7d7d;
}

.navbar-nav > li > a {
    padding-top: 35px;
	old.padding-top: 25px;
    padding-bottom: 25px;
    font-weight: 500;
    font-size: 14px;
}

.navbar-main .btn-search {
    margin-top: 20px;
    border: none;
    background: none;
    font-size: 24px;
}

.search-box {
    margin: 85px 0 0 0;
}

.navbar-mini {
    border: none;
}

    .navbar-mini .navbar-left {
        padding-top: 10px;
    }

    .navbar-mini span i {
        font-size: 13px;
        transform: translateY(-0.5px);
        display: inline-block;
        color: #a9a9a9;
    }

    .navbar-mini span {
        padding: 0 7px;
        font-weight: 400;
        letter-spacing: .5px;
        opacity: .9;
    }

    .navbar-mini > .container {
        padding-left: 225px;
    }

@media (min-width: 995px) {
    .navbar-mini:not(.hidden) + .navbar-main .navbar-header {
        margin-top: -22px;
        padding-left: 55px;
        padding-right: 25px;
        margin-left: -55px;
        background: #fff;
        position: relative;
    }

        .navbar-mini:not(.hidden) + .navbar-main .navbar-header:after {
            position: absolute;
            content: '';
            background-color: #f5f5f5;
            height: 90px;
            width: 60px;
            right: -10px;
            left: auto;
            top: -73px;
            transform: rotate(125deg);
        }

        .navbar-mini:not(.hidden) + .navbar-main .navbar-header:before {
            position: absolute;
            content: '';
            background-color: #fff;
            height: 22px;
            width: 6000px;
            right: 0;
            top: 0px;
            z-index: 0;
        }
}

.navbar-big-logo .navbar-mini:not(.hidden) + .navbar-main .navbar-header {
    padding-right: 0;
}

.navbar-big-logo .navbar-main .navbar-header:after {
    display: none;
}

.navbar-mini:not(.hidden) + .navbar-main .navbar-brand {
    margin-top: 10px;
}

.nav.ms-minimal > li > a {
    border-bottom: none;
    font-weight: 900;
}

.nav.maso-filters {
    margin-bottom: 30px;
}

    .nav.maso-filters a {
        padding-top: 0;
    }

.inner.ms-minimal li a {
    padding-top: 0;
}

.mega-menu a {
    height: 32px;
    margin-bottom: 7px;
    padding-left: 0;
    font-weight: 400;
    font-size: 14px;
}

.mega-menu .nav-tabs > li > a {
    padding: 15px 30px !important;
    height: 50px;
}

.mega-tabs .tab-box .panel.active {
    margin: 0 5px;
}

.mega-menu h5 {
    margin-bottom: 21px;
    font-weight: 400;
}

.mega-tabs .nav-tabs {
    background: #fff;
    border-bottom: 1px solid #e8e8e8;
}

    .mega-tabs .nav-tabs li a:before {
        bottom: -1px;
    }

.navbar-main .navbar-form .form-control {
    border: none;
    border-bottom: 1px solid #e6e6e6;
}

.navbar-main .navbar-form .btn-search {
    font-size: 14px;
    margin-top: 0;
    border-bottom: 1px solid #e6e6e6;
    background: #f5f5f5;
}

header .navbar-main form.navbar-form {
    margin-top: 18px;
    padding: 0;
}

header .side-menu > li > a {
    font-weight: 500;
}

.side-menu-fixed .brand {
    text-align: left;
    padding: 25px 15px;
}

header .mi-menu ul li > a, header .sidebar-nav .panel-item > span {
    padding: 10px 15px;
}
/*
-------------------------------------------------------------------
TITLES
-------------------------------------------------------------------
*/
.title-base {
    flex-direction: column-reverse;
    display: flex;
}

[class*=header-] .title-base {
    text-align: left;
    display: block;
}

    [class*=header-] .title-base h1, [class*=header-] .title-icon h2, [class*=header-] .title-icon h1, [class*=header-] .title-base.title-small h2 {
        font-size: 50px;
        font-weight: 400;
        margin-top: 5px;
        position: relative;
    }

    [class*=header-] .title-base p, [class*=header-] div.title-icon p {
        max-width: 500px;
    }

.header-base .title-base {
    display: block;
}

    .header-base .title-base h1 {
        font-size: 35px;
        font-weight: 400;
        position: relative;
        color: #4C4C4C;
    }

[class*=header-] .title-base p {
    max-width: 500px;
    margin-top: 50px;
    color: #4C4C4C;
}

.title-base hr {
    width: 100%;
    opacity: 0;
    height: 5px;
}

.header-base .breadcrumb.b a, .header-base .breadcrumb li {
    color: #4C4C4C;
    font-weight: 500;
    font-size: 13px;
}

.title-base h1:before {
    content: '';
    position: absolute;
    height: 5px;
    width: 150px;
    bottom: -20px;
}

.title-base.text-left hr, .title-base.text-left hr, [class*=header-] .title-base hr {
    opacity: 1;
}

[class*=header-] .title-base hr {
    display: none;
}

.title-base p {
    margin-top: 0;
}

.title-base.text-left p {
    margin-left: 1px;
    margin-bottom: 3px;
}

.title-base + .accordion-list > .list-group-item:first-child {
    border-top: none;
}


/*
-------------------------------------------------------------------
FOOTER
-------------------------------------------------------------------
*/

footer {
    border-top: 1px solid #E6E6E6;
}

    footer p, footer a, footer li {
        opacity: .8;
        font-weight: 400;
    }

    footer a {
        line-height: 25px;
    }

    footer h3 {
        font-weight: 500;
        font-size: 16px;
        margin-bottom: 22px;
    }

    footer .container {
        padding: 80px 15px;
    }

    footer .copy-row .copy-text {
        border-top: 1px solid #cecece;
        padding: 15px;
        margin: auto;
        font-weight: 400;
        color: #a2a2a2;
        letter-spacing: .3px;
        float: none;
    }

    footer .fa-ul .fa-li {
        font-weight: 600;
    }

    footer ul {
        padding-left: 16px;
    }

    footer .social-group {
        margin-bottom: 0;
    }

    .footer-social {
        margin-top: 28px;
    }

    .footer-social-links {
        display: flex;
        flex-wrap: wrap;
        gap: 9px;
    }

    footer .footer-social-link {
        display: inline-flex;
        width: 44px;
        height: 44px;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(255, 255, 255, .22);
        border-radius: 50%;
        padding: 0;
        background: rgba(255, 255, 255, .06);
        color: #fff;
        font-size: 12px;
        font-weight: 500;
        line-height: 1;
        text-decoration: none;
        transition: border-color .2s ease, background-color .2s ease, transform .2s ease;
    }

    footer .footer-social-link svg {
        display: block;
        width: 18px;
        height: 18px;
        fill: currentColor;
        color: var(--samddra-yellow);
    }

    footer .footer-social-link:hover,
    footer .footer-social-link:focus-visible {
        border-color: var(--samddra-yellow);
        background: rgba(242, 181, 27, .14);
        color: #fff;
        transform: translateY(-2px);
    }

    footer .footer-social-link:focus-visible {
        outline: 2px solid var(--samddra-yellow);
        outline-offset: 2px;
    }

/*
-------------------------------------------------------------------
COMPONENTS
-------------------------------------------------------------------
*/
.accordion-list .list-group-item > a {
    font-weight: 400;
    padding-left: 20px;
}

    .accordion-list .list-group-item > a:before, .advs-box .btn-text:after, .box-steps .step-item:after {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-left: -21px;
        top: 19px;
        position: absolute;
        border-top-width: 2px;
        border-top-style: solid;
        border-right-width: 2px;
        border-right-style: solid;
        content: "";
        width: 6px;
        height: 6px;
        transition: all .15s;
        border-color: rgba(93, 93, 93, 0.5);
    }

.accordion-list .list-group-item > .panel > .inner {
    padding: 0px 15px 10px 20px;
}

.accordion-list .list-group-item > a.active:before {
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}

.btn-lg, .btn-group-lg > .btn {
    padding: 10px 20px;
    font-size: 15px;
}

.btn-sm i {
    font-size: 14px;
    transform: translateY(1px);
    display: inline-block;
}

.btn-xs {
    font-size: 11px;
    line-height: 18px;
    padding-top: 2px;
    padding-bottom: 0;
}

    .btn-xs.btn-border {
        border-width: 1px;
    }

.load-more-maso.btn i, .load-more-grid.btn i {
    font-size: 11px;
    margin-left: 5px;
    transform: translateY(0px);
}

.btn-text {
    border-bottom-style: solid;
}

.btn-border, .btn-border, .white .btn-border {
    border-width: 1px;
    font-weight: 500;
}

.btn.white:hover, .white .btn:hover {
    opacity: .8;
}

.progress-circle .inner-circle .counter-circle {
    font-weight: 400;
    font-size: 19px;
}

.progress-circle .inner-circle .main {
    line-height: 18px;
    font-size: 11px;
    font-weight: 400;
    opacity: .7;
}

.progress-circle .inner-circle .subtitle {
    display: flex;
    flex-direction: column-reverse;
    margin: 5px 0 0 0;
}

.inner-circle hr {
    display: none;
}

.table:not(.grid-table) th {
    font-weight: 500;
}

table.table:not(.grid-table) > tbody > tr > td, table.table:not(.grid-table) > tbody > tr > th {
    font-size: 13px;
    padding: 15px;
}

.form-box .form-control {
    border: none;
    border-bottom: 1px solid #b9b9b9;
    border-radius: 0;
    background: none;
}

.comment-list .name {
    font-weight: 500;
}

.comment-list img {
    border-radius: 0;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}

.advs-box-top-icon-img.boxed .advs-box-content, .advs-box-top-icon-img.boxed-inverse .advs-box-content {
    padding: 30px;
}

.section-bg-color .advs-box.boxed, .section-bg-color .advs-box.boxed-inverse, .section-bg-color .adv-img-down-text.boxed-inverse, .section-bg-color .niche-box-testimonails-cloud p {
    box-shadow: 0 2px 1px rgba(0, 0, 0, 0.05);
    border: 0 solid #eee;
}

.adv-img-full-content h2 {
    line-height: 19px;
}

.advs-box {
    overflow: hidden;
}

    .advs-box .btn-text {
        border: none;
        font-weight: 400;
        position: relative;
    }

        .advs-box .btn-text:after {
            margin-left: 7px;
            top: 9px;
            right: -13px;
        }

.advs-box-top-icon-img .img-box {
    margin: 1px;
}

.img-box.adv-img-half-content .caption, .img-box.adv-img-side-content .caption {
    padding: 20px 20px;
}

.adv-img-side-content .btn, .adv-img-side-content .btn-text {
    margin-top: 10px;
}

.adv-img h2, .adv-circle h2, .caption-bottom h2 {
    font-weight: 500;
}

div.adv-img p {
    font-weight: 300;
    margin-top: 5px;
}

.niche-box-post .text-m {
    font-size: 23px !important;
    line-height: 30px;
}

.niche-box-post h2 {
    font-weight: 400;
    margin-top: 5px;
    margin-bottom: 15px;
}

.advs-box h2 a {
    color: #4C4C4C;
    font-weight: 400;
}

.niche-box-post .block-infos {
    width: 250px;
    text-align: left;
    margin-left: 25px;
}

    .niche-box-post .block-infos .block-data {
        display: block;
        float: left;
        height: 30px;
        border: none;
    }

.block-infos .block-comment {
    display: none;
}

.niche-box-post .block-infos p.bd-day {
    display: inline-block;
    padding: 5px 0px 5px 10px;
    font-size: 13px;
    font-weight: 500;
    color: #fff;
}

.niche-box-post .block-infos .bd-month {
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    padding-right: 9px;
    color: #fff;
}

.niche-box-post .img-box {
    margin: 0;
}

.advs-box-top-icon-img.niche-box-post {
    border-top: 2px solid #7a7a7a;
}

.niche-box-post .tag-row {
    margin-bottom: 15px;
}

.niche-box-blog p.excerpt {
    font-size: 14px;
}

.niche-box-blog .block-infos {
    position: relative;
    padding-right: 0;
    text-align: left;
    width: 75px;
}

    .niche-box-blog .block-infos:after {
        content: "";
        position: absolute;
        width: 1px;
        border-right: 1px solid #d0d0d0;
        height: 100%;
        top: 0;
        right: 22px;
    }

.niche-box-blog .block-data {
    border: none;
}

.niche-box-blog .bd-day {
    font-weight: 400;
}

.niche-box-blog .bd-month {
    font-weight: 400;
    font-size: 11px;
}

.niche-box-blog a.btn, .niche-box-blog a.btn-text {
    margin-top: 0;
}

.extra-content {
    font-weight: 500;
    font-size: 13px;
    text-transform: uppercase;
    background: none;
    border-left: none;
    color: #585858;
    border-top: 1px solid #7a7a7a;
    padding-left: 0;
    padding-right: 0;
}

.adv-img-down-text h2 a {
    font-weight: 400;
    padding-bottom: 5px;
    padding-top: 5px;
    font-size: 17px;
}

.adv-img-down-text .caption-bottom p {
    margin-top: 0;
}

.adv-img-down-text.boxed-inverse .caption-bottom {
    border: 1px solid #e4e4e4;
    border-top: none;
}

.section-bg-color .adv-img-down-text.boxed-inverse .caption-bottom {
    border: none;
}

.niche-box-testimonails-cloud p {
    border-radius: 0;
    text-align: left;
}

.niche-box-testimonails-cloud .name-box .subtitle {
    padding-top: 16px;
    font-weight: 400;
}

.adv-img-classic-box .caption {
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%,rgba(0, 0, 0, 0) 60%) !important;
    transform: translate3d(0,0,0);
}

.adv-img-classic-box > .img-box {
    background: #000;
}

.adv-img-classic-box:hover .img-box img {
    opacity: .5 !important;
}

.adv-img-classic-box .caption-inner h2 {
    margin-bottom: 0px;
    line-height: 20px;
}

.advs-box-top-icon {
    overflow: visible;
    position: relative;
}

    .advs-box-top-icon:not(.boxed) {
        padding-top: 27px !important;
    }

    .advs-box-top-icon.boxed-inverse, .advs-box-side-icon.boxed-inverse {
        background: none;
        border-style: solid !important;
        border-width: 1px;
        border-color: #dcdcdc;
    }

    .advs-box-top-icon:not(.boxed) .icon {
        box-shadow: none !important;
        font-size: 55px;
        height: 60px;
        width: 110px;
        padding: 0;
        margin: -70px 0 0 -56px;
        background: none;
    }

    .advs-box-top-icon.text-left .icon {
        text-align: left;
        left: 0;
        margin-left: 0;
    }

    .advs-box-top-icon.text-left.boxed .icon, .advs-box-top-icon.text-left.boxed-inverse .icon {
        left: 13px;
        text-align: center;
    }

    .advs-box-top-icon.boxed-inverse .icon {
        background: #fff;
    }

html body .advs-box-top-icon h3 {
    margin-top: 5px;
    font-weight: 400;
    font-size: 22px;
}

.list-items .list-item {
    border-bottom-style: solid;
}

    .list-items .list-item:first-child {
        padding-top: 0;
    }

    .list-items .list-item h3, ul.list-texts li b {
        font-weight: 500;
    }

    .list-items .list-item:hover {
        background: none;
    }

    .list-items .list-item span {
        font-size: 15px;
        font-weight: 400;
    }

    .list-items .list-item p {
        line-height: 19px;
        padding-top: 5px;
    }

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
    font-weight: 500;
    font-size: 15px;
}

ul li .fa-li.fa-square {
    font-size: 10px;
    margin-top: 3px;
    margin-left: -8px;
}

.icon-box-cell i.text-xl {
    width: 55px;
}

.white .icon-box:not(.icon-box-top-bottom) .icon-box-cell:first-child, div.white .countdown > div:after {
    border-right: 2px solid rgba(255, 255, 255, 0.31);
}

.icon-box:not(.icon-box-top-bottom) .icon-box-cell:first-child {
    padding-right: 15px;
    margin-right: 15px;
    border-right: 2px solid rgba(123, 123, 123, 0.25);
}

.icon-box.icon-box-right:not(.icon-box-top-bottom) .icon-box-cell:first-child {
    padding-right: 0;
    margin-right: 0;
    border-right: none;
}

.icon-box.icon-box-right:not(.icon-box-top-bottom) .icon-box-cell:last-child {
    padding-left: 15px;
    margin-left: 15px;
    border-left: 2px solid rgba(123, 123, 123, 0.25);
}

.icon-box.icon-box-top-bottom .icon-box-cell > i {
    margin: 0px 0 15px 0;
}

.icon-box-top-bottom .icon-box-cell label {
    margin-bottom: 5px;
}



.advs-box-multiple .circle > i {
    line-height: 45px;
    height: 45px;
    width: 45px;
}


.advs-box-multiple .advs-box-content {
    padding: 30px;
}

.advs-box-multiple.boxed-inverse .advs-box-content {
    border: 1px solid #dcdcdc;
    border-top: none;
}

.advs-box-multiple div.circle {
    border: none;
    border-radius: 3px;
    width: 70px;
    height: 70px;
    font-size: 24px;
    right: 20px;
    line-height: 28px;
    border: 1px solid #a2a2a2;
}

    .advs-box-multiple div.circle span {
        line-height: 16px;
        color: #717171;
        font-weight: 400;
    }

.section-bg-color .advs-box-multiple.boxed-inverse .advs-box-content {
    border: none;
}

.progress {
    overflow: visible;
    height: 3px;
    background-color: #e8e8e8;
}

.progress-bar {
    box-shadow: none !important;
    color: #30353b;
    height: 3px;
}

    .progress-bar > span {
        padding: 2px 0 2px 5px;
        width: 60px;
        transform: translateY(-31px);
        border-radius: 3px;
        display: block;
        white-space: nowrap;
        font-weight: 500;
        letter-spacing: 1px;
        float: right;
        font-size: 12px;
        background: #2d2d2d;
        color: #fff;
        text-align: center;
    }

.pricing-table {
    overflow: hidden;
}

    .pricing-table .pricing-price.list-group-item {
        font-weight: 500;
        font-size: 45px;
        padding-top: 15px;
    }

    .pricing-table .list-group-item:nth-child(even) {
        background-color: #fff;
    }

    .pricing-table .list-group-item {
        border-bottom: none;
        font-size: 13px;
    }

    .pricing-table h3 {
        font-weight: 400;
    }

    .pricing-table .btn {
        margin-top: 15px;
        padding: 10px 25px;
        margin-bottom: 40px;
    }

    .pricing-table .pricing-price span {
        font-size: 18px;
        display: inline-block;
        transform: translateY(-2px);
    }

.pricing-table-big, [class*="section-"] > div > .row:first-child > div > .pricing-table-big {
    margin: -15px 0 0 0;
}

.niche-box-team .content-box hr {
    display: none;
}

.niche-box-team .content-box h2 {
    margin-top: 15px;
    font-weight: 400;
}

.niche-box-team .content-box h4 {
    font-size: 13px;
}

.advs-box-side-icon .icon-box i {
    font-size: 35px;
    line-height: 35px;
    text-align: left;
    width: 65px;
    margin-left: 1px;
    height: 35px;
}

    .advs-box-side-icon .icon-box i.text-xl {
        margin-right: 20px;
        line-height: 45px;
    }

.advs-box-side-icon .icon-box {
    padding-right: 0;
    vertical-align: top;
}

    .advs-box-side-icon .icon-box + .caption-box {
        position: relative;
    }

        .advs-box-side-icon .icon-box + .caption-box:before {
            content: '';
            position: absolute;
            height: 100%;
            height: calc(100% - 4px);
            width: 1px;
            margin-left: -13px;
            margin-top: 2px;
            background: #d6d6d6;
        }

.advs-box-side h3 {
    font-size: 21px;
    margin-bottom: 15px;
}

.advs-box-side hr {
    display: none;
}

[class*="boxed-"].advs-box-side .col-md-4 {
    margin: -25px;
    padding-right: 40px;
}

[class*="boxed-"].advs-box-side .img-box {
}

.timeline > li > .timeline-panel {
    border: none;
    border-right: 1px solid #D2D2D2;
    background: none;
    padding: 0 20px 0 0;
}

.timeline > li.timeline-inverted > .timeline-panel {
    padding: 0 0 0 20px;
    border-right: none;
    border-left: 1px solid #D2D2D2;
}

.timeline:before {
    background: none;
}

.timeline > li > .timeline-badge {
    border-width: 2px;
    background: #fff;
}

.timeline > li {
    margin-bottom: 50px;
}

    .timeline > li:last-child {
        margin-bottom: 0;
    }

.niche-box-team:hover .img-box img {
    transform: translateY(25px) scale(1.2) !important;
}

.porfolio-bar a {
    font-size: 14px;
    font-weight: 500;
}

.counter-box-icon > div {
    text-align: left;
}

/*
-------------------------------------------------------------------
CONTAINERS
-------------------------------------------------------------------
*/
.nav-tabs > li > a, .nav-tabs > li.active > a, .nav-tabs > li.active:hover > a, .nav-tabs > li:hover > a {
    padding: 5px 0 30px 0;
    border: none !important;
    background: none;
    font-weight: 500;
    margin: 0;
}

.nav-tabs > li {
    margin-right: 30px;
}

.tab-box.inverse .panel {
    padding-top: 0;
    border-top: 0;
}

.inverse .nav-tabs > li > a, .inverse .nav-tabs > li:hover > a {
    padding: 30px 0 5px 0;
}

.inverse .nav:not(.ms-rounded) li > a:before {
    top: -1px;
    bottom: auto;
}

.nav-tabs > li > a i {
    margin: 0 10px 0 0;
}

.tab-box.inverse .nav-tabs li.active a {
    border-top: none;
}

.tab-box > .panel, .tab-box > .panel-box > .panel {
    border: none;
    padding: 25px 0;
}

.nav-pills > li a:before {
    display: none;
}

.tab-box.left .panel-box .panel, .tab-box.right .panel-box .panel {
    border: none;
    padding: 0 0 0 15px;
}

.left .nav-tabs > li > a, .right .nav-tabs > li > a {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

.tab-box.right .panel-box .panel {
    padding: 0 15px 0 0;
}

.tab-box.right .nav-tabs > li > a {
    padding-left: 15px;
}

.flexslider .flex-direction-nav li a:before {
    margin-top: 3px;
}

.flexslider .flex-direction-nav li a.flex-prev:before {
    margin-left: -15px;
}

.maso-box.row, .grid-box.row {
    margin: -7.5px;
    width: calc(100% + 15px);
}

.maso-box > .maso-item, .grid-box > .grid-item {
    padding: 7.5px;
}

.maso-30 .maso-box > .maso-item, .grid-30 .grid-box > .grid-item {
    padding: 15px;
}

.maso-30 .maso-box.row, .grid-30 .grid-box.row {
    margin: -15px;
    width: calc(100% + 30px);
}

.flex-control-paging li a, .header-slider .flex-control-paging li a {
    background: none;
    border-style: solid;
    border-width: 1px;
    border-color: rgba(93, 93, 93, 0.5);
}

    .flex-control-paging li a.flex-active, .header-slider .flex-control-paging li a.flex-active {
        background: #949494;
        border-color: #949494;
    }

.box-transparent .overlaybox-inner {
    box-shadow: none;
    padding: 0 5px;
}

.box-steps .step-number {
    opacity: 1;
}

.box-steps .step-item:before {
    content: '';
    position: absolute;
    width: 1px;
    right: 29px;
    top: 50%;
    margin-top: -38px;
    height: 70px;
    background: rgba(113, 113, 113, 0.5);
}

.box-steps .step-item:after {
    opacity: 1;
    width: 18px;
    height: 18px;
    top: 50%;
    margin-right: 15px;
    background: #fff;
    border-top-width: 1px;
    border-right-width: 1px;
}

.box-steps .step-item:last-child:before {
    display: none;
}

.section-bg-color .box-steps .step-item:after {
    background: #f7f7f7;
}

.mfp-arrow-right:before {
    margin: 24px 0 0 9px;
}

.fixed-area.active .nav.inner.ms-rounded li a {
    background: #fff;
    box-shadow: 0 3px 10px hsla(0, 0%, 0%, 0.22);
    transition: box-shadow .3s;
}

.pagination li a, .pagination li.active a {
    font-weight: 400;
    background: none;
}

.pagination li:not(.active) a {
    border: none !important;
    background: none;
}

.pagination-sm > li > a {
    font-size: 13px;
}

.maso-list .list-nav, .grid-list .list-nav {
    margin-top: 35px;
}

.album-box .caption h2 {
    font-size: 17px;
}

/*
-------------------------------------------------------------------
RESPONSIVE
-------------------------------------------------------------------
*/
.navbar-toggle > i {
    margin-top: 13px;
}

@media (max-width:994px) {
    header .nav li > .mega-menu, .search-box, .flexslider.nav-top-right {
        margin: 0 !important;
    }

    header .navbar-main .col + .col ul, header .navbar-main .dropdown a + ul, .nav-tabs > li:first-child > a, .box-steps .step-item:first-child {
        padding-top: 0 !important;
    }

    .box-steps .step-item:last-child {
        padding-bottom: 0 !important;
    }

    .nav-tabs > li {
        margin-right: 0;
    }

    .title-base.text-left, .vertical-row > div, .row.vertical-row > div, .advs-box-side-icon .icon-box, .advs-box-side-icon .caption-box, .advs-box-side, .advs-box-side-icon p, .advs-box.advs-box-side p,
    .section .background-page, .section .content, .section .container {
        text-align: left !important;
    }

    .navbar-nav > li > a {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    header .navbar-main ul {
        padding: 10px 0 0 0 !important;
    }

    .mega-menu .nav-tabs > li > a {
        padding-left: 15px !important;
    }

    .text-m-xs {
        font-size: 25px !important;
        line-height: 35px;
    }

    .text-m-sm {
        font-size: 30px !important;
        line-height: 35px;
    }

    .grid-table td {
        padding: 15px !important;
    }

    .grid-table {
        margin: -15px;
        width: calc(100% + 30px);
    }

    .nav.maso-filters a {
        padding-top: 0;
        margin-bottom: 10px;
    }

    .navbar-inner .navbar-toggle {
        border: 1px solid #e0e0e0;
    }

    .overlaybox-side .overlaybox-inner {
        padding: 30px;
    }

    .adv-img h2, .adv-circle h2, .caption-bottom h2 {
        line-height: 25px;
    }

    h2, .h2 {
        font-size: 20px;
        line-height: 30px;
    }

    h3 {
        line-height: 27px;
    }

    .nav-tabs > li {
        border: none;
    }

        .nav-tabs > li > a, .nav-tabs > li.active > a, .nav-tabs > li.active:hover > a, .nav-tabs > li:hover > a {
            padding: 15px 0 15px 0;
        }

    a.img-bubble {
        padding-bottom: 140px;
        margin-bottom: -140px !important;
    }

    .box-steps .step-item:before, .section-bg-color .box-steps .step-item:after {
        display: none;
    }

    .box-steps .step-item {
        padding: 15px 50px;
    }

    .flexslider.nav-right .flex-control-nav {
        bottom: -14px;
    }

    [class*=header-] .title-base h1, [class*=header-] .title-icon h2, [class*=header-] .title-icon h1, [class*=header-] .title-base.title-small h2 {
        font-size: 30px;
        line-height: 35px;
    }

    [class*=header-] .title-base p, [class*=header-] div.title-icon p {
        margin-top: 40px;
    }

    .header-title, .header-video, .header-animation, .header-slider {
        height: 205px !important;
    }

    .header-base {
        padding-bottom: 20px;
    }

    footer .container {
        padding: 80px 0;
    }

    .timeline > li > .timeline-label {
        position: absolute;
        left: auto;
        right: 0;
        max-width: 65px;
        margin: 0;
    }

    .timeline > li.timeline-inverted > .timeline-label {
        left: 0;
        right: auto;
        text-align: right;
    }

    .timeline > li > .timeline-badge {
        display: none;
    }

    .timeline > li > .timeline-label p {
        font-size: 12px;
        white-space: normal;
    }

    .timeline > li > .timeline-label h4 {
        font-size: 16px;
    }

    header .dropdown-submenu a + .dropdown-menu a {
        padding-left: 20px;
    }

    .comment-list img {
        position: absolute;
        margin-top: 10px;
    }

    .comment-list .col-md-10 {
        padding-left: 60px;
    }

    .img-box.adv-img-side-content .caption {
        min-height: 180px;
    }

    .header-base .breadcrumb, .header-bootstrap .breadcrumb {
        text-align: right;
    }

    .advs-box-side-icon .icon-box, .advs-box-side-icon .caption-box {
        display: table-cell;
    }

    .pricing-table-big {
        margin: 0 0 20px 0 !important;
    }
}

@media (max-width: 767px) {
    .pagination-lg > li > a span {
        font-size: 15px;
    }

    .pagination-lg > li > a, .pagination-lg > li > span {
        padding: 8px 10px;
        font-size: 15px;
    }

    .header-base .breadcrumb, .header-bootstrap .breadcrumb {
        text-align: left;
    }
}
/* ===== HERO (Personal Membership) ===== */
.pm-hero{
  background:#fff;
}

.pm-hero__inner{
  padding-top:70px;
  padding-bottom:70px;
}

.pm-hero__row{
  display:flex;
  align-items:center;
}

/* Left */
.pm-hero__title{
  margin:0 0 18px;
  line-height:1.05;
  font-weight:400;
  letter-spacing:.2px;
}

.pm-hero__title-top{
  display:inline-block;
  font-size:46px;
  color:#111;
  position:relative;
  padding:2px 6px;
  border:2px solid #6d5efc;   /* purple box like screenshot */
}

.pm-hero__title-highlight{
  display:inline-block;
  margin-top:10px;
  font-size:54px;
  font-weight:500;
  color:var(--samddra-yellow);              /* your theme yellow */
  position:relative;
  padding-bottom:10px;
}

.pm-hero__title-highlight:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:140px;
  height:3px;
  background:var(--samddra-yellow);
}

.pm-hero__desc{
  margin:0 0 18px;
  max-width:520px;
  font-size:15px;
  line-height:1.8;
  color:#666;
  font-weight:400;
}

.pm-hero__org{
  margin:0 0 22px;
  padding-left:14px;
  border-left:3px solid #2b7a6a; /* teal accent line like screenshot */
  color:#2b7a6a;
  font-size:13px;
  line-height:1.45;
  font-weight:500;
}

.pm-hero__actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.pm-hero__btn{
  background:var(--samddra-yellow) !important;
  border-color:var(--samddra-yellow) !important;
  color:#fff !important;
  border-radius:8px;
  padding:10px 18px;
}

.pm-hero__btn:hover{
  background:#f39f07 !important;
  border-color:#f39f07 !important;
}

/* Right image */
.pm-hero__imgwrap{
  position:relative;
  border-radius:14px;
  overflow:hidden;
}

.pm-hero__img{
  width:100%;
  height:auto;
  display:block;
}

.pm-hero__fade{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.25) 35%, rgba(255,255,255,0) 55%);
  pointer-events:none;
}

/* Make the columns behave nicely even if theme CSS changes */
.pm-hero__left{ padding-right:25px; }
.pm-hero__right{ padding-left:25px; }

/* Responsive */
@media (max-width: 994px){
  .pm-hero__row{ display:block; }
  .pm-hero__left, .pm-hero__right{ padding:0; }
  .pm-hero__right{ margin-top:26px; }

  .pm-hero__title-top{ font-size:34px; }
  .pm-hero__title-highlight{ font-size:40px; }
  .pm-hero__desc{ font-size:14px; }
  .pm-hero__fade{
    background:linear-gradient(180deg, rgba(255,255,255,.9) 0%, rgba(255,255,255,0) 40%);
  }
}

/* ===== events.css ===== */
:root {
    --events-green: var(--samddra-green);
    --events-green-dark: #075936;
    --events-lime: var(--samddra-yellow);
    --events-ink: #10241b;
    --events-muted: #66746d;
    --events-soft: #f3f7f4;
    --events-border: #dfe8e2;
    --events-white: #fff;
}

.events-page,
.event-detail-page {
    width: 100%;
    overflow-x: clip;
    overflow-y: visible;
    color: var(--events-ink);
    background: #fff;
}

.events-page *,
.event-detail-page * {
    box-sizing: border-box;
}

.events-page-header {
    background-position: center;
    background-size: cover;
}

.events-intro {
    padding: 70px 0;
    background: #fff;
}

.events-intro-inner {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .75fr);
    gap: 70px;
    align-items: center;
}

/* Bootstrap 3 clearfix pseudo-elements become grid/flex children and push
   real content into the next column. These layouts do not need clearfix. */
.container.events-intro-inner::before,
.container.events-intro-inner::after,
.container.events-stats-grid::before,
.container.events-stats-grid::after,
.container.events-cta-inner::before,
.container.events-cta-inner::after,
.container.career-intro-grid::before,
.container.career-intro-grid::after,
.container.event-detail-layout::before,
.container.event-detail-layout::after,
.container.career-detail-layout::before,
.container.career-detail-layout::after {
    display: none;
    content: none;
}

.events-intro-inner > *,
.events-section-heading > *,
.events-filters > * {
    min-width: 0;
}

.events-eyebrow {
    display: inline-block;
    margin-bottom: 14px;
    color: var(--events-green);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.events-cta .events-eyebrow { color: var(--events-lime); }

.events-hero-copy h2 {
    max-width: 730px;
    margin: 0 0 20px;
    color: var(--events-ink);
    font-size: clamp(36px, 4.5vw, 58px);
    font-weight: 400;
    line-height: 1.05;
    letter-spacing: -.045em;
}

.events-hero-copy > p {
    max-width: 640px;
    margin: 0;
    color: var(--events-muted);
    font-size: 18px;
    line-height: 1.65;
}

.events-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }

.events-primary-button,
.events-secondary-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    border-radius: 6px;
    padding: 12px 22px;
    font-weight: 400;
    text-decoration: none !important;
    transition: transform .2s ease, background .2s ease;
}

.events-primary-button { background: var(--events-lime); color: #173016 !important; }
.events-primary-button:hover { background: var(--samddra-yellow); filter: brightness(.92); transform: translateY(-2px); }
.events-secondary-button { border: 1px solid rgba(255,255,255,.4); color: #fff !important; }
.events-secondary-button:hover { background: rgba(255,255,255,.1); transform: translateY(-2px); }
.events-outline-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; border: 1px solid var(--events-green); border-radius: 6px; padding: 12px 22px; color: var(--events-green) !important; font-weight: 700; text-decoration: none !important; transition: background .2s ease, color .2s ease, transform .2s ease; }
.events-outline-button:hover { background: var(--events-green); color: #fff !important; transform: translateY(-2px); }

.events-hero-feature {
    position: relative;
    overflow: hidden;
    min-height: 430px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 18px;
    box-shadow: 0 30px 70px rgba(0,0,0,.28);
}

.events-hero-feature::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(transparent 20%, rgba(1,20,12,.9));
    content: "";
}

.events-hero-feature img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.events-hero-feature.events-empty { padding: 0; border-style: solid; background: #173b2b; }
.events-hero-feature-content { position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; padding: 32px; }
.events-hero-feature-content > span { color: var(--events-lime); font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.events-hero-feature-content h2 { margin: 9px 0 12px; color: #fff; font-size: 26px; line-height: 1.2; }
.events-hero-feature-content p { margin: 0 0 13px; color: rgba(255,255,255,.82); }
.events-hero-feature-content a { color: #fff; font-weight: 700; }

.events-stats { position: relative; z-index: 2; border-top: 1px solid var(--events-border); border-bottom: 1px solid var(--events-border); background: #fff; }
.events-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.events-stats-grid > div { display: flex; flex-direction: column; padding: 30px; border-right: 1px solid var(--events-border); text-align: center; }
.events-stats-grid > div:first-child { border-left: 1px solid var(--events-border); }
.events-stats-grid strong { color: var(--events-green); font-size: 28px; line-height: 1; }
.events-stats-grid span { margin-top: 8px; color: var(--events-muted); font-size: 13px; }

.events-browser { padding: 80px 0 95px; background: var(--events-soft); }
.events-section-heading { display: flex; justify-content: space-between; gap: 40px; align-items: end; margin-bottom: 32px; }
.events-section-heading h2 { margin: 0; color: var(--events-ink); font-size: clamp(32px, 4vw, 46px); letter-spacing: -.03em; }
.events-section-heading > p { max-width: 460px; margin: 0; color: var(--events-muted); line-height: 1.6; }

.events-filters {
    display: grid;
    grid-template-columns: minmax(260px, 1.4fr) repeat(3, minmax(150px, .7fr)) auto;
    gap: 12px;
    align-items: end;
    padding: 18px;
    border: 1px solid var(--events-border);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 40px rgba(21,62,42,.06);
}

.events-filters label { display: flex; flex-direction: column; gap: 7px; margin: 0; color: #52625a; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.events-filters input,
.events-filters select { width: 100%; height: 46px; border: 1px solid #d8e2dc; border-radius: 7px; padding: 0 13px; background: #fff; color: var(--events-ink); font-size: 14px; font-weight: 500; letter-spacing: normal; text-transform: none; outline: 0; }
.events-filters input:focus,
.events-filters select:focus { border-color: var(--events-green); box-shadow: 0 0 0 3px rgba(11,122,72,.1); }
.events-search { position: relative; }
.events-search i { position: absolute; z-index: 1; bottom: 15px; left: 14px; color: #809087; }
.events-search input { padding-left: 38px; }
.events-filter-button { height: 46px; border: 0; border-radius: 7px; padding: 0 20px; background: var(--events-green); color: #fff; font-weight: 700; cursor: pointer; }

.events-loading { margin: 18px 0 -5px; color: var(--events-green); font-size: 13px; font-weight: 700; }
.events-loading span { display: inline-block; width: 15px; height: 15px; margin-right: 7px; border: 2px solid #bcd4c6; border-top-color: var(--events-green); border-radius: 50%; vertical-align: -3px; animation: events-spin .7s linear infinite; }
@keyframes events-spin { to { transform: rotate(360deg); } }
.htmx-indicator { display: none; }
.htmx-request .htmx-indicator,
.htmx-request.htmx-indicator { display: block; }

.events-result-head { display: flex; justify-content: space-between; align-items: center; margin: 34px 0 18px; }
.events-result-head p { margin: 0; color: var(--events-muted); }
.events-result-head p strong { color: var(--events-ink); }
.events-updated { color: #87948e; font-size: 12px; }

.events-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.event-card { display: flex; overflow: hidden; min-width: 0; border: 1px solid var(--events-border); border-radius: 13px; background: #fff; box-shadow: 0 12px 32px rgba(15,51,34,.06); flex-direction: column; transition: transform .25s ease, box-shadow .25s ease; }
.event-card:hover { transform: translateY(-5px); box-shadow: 0 20px 45px rgba(15,51,34,.13); }
.event-card-media { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 9; background: #dbe6df; }
.event-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.event-card:hover .event-card-media img { transform: scale(1.045); }
.event-date-block { position: absolute; bottom: 12px; left: 12px; display: flex; width: 56px; height: 62px; border-radius: 8px; background: #fff; box-shadow: 0 6px 18px rgba(0,0,0,.18); color: var(--events-ink); align-items: center; justify-content: center; flex-direction: column; }
.event-date-block strong { font-size: 23px; line-height: 1; }
.event-date-block span { margin-top: 4px; color: var(--events-green); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.event-featured { position: absolute; top: 12px; right: 12px; border-radius: 20px; padding: 6px 10px; background: var(--events-lime); color: #173016; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.event-card-body { padding: 22px 22px 15px; flex: 1; }
.event-card-tags { display: flex; gap: 8px; align-items: center; justify-content: space-between; margin-bottom: 13px; }
.event-tag { border-radius: 20px; padding: 5px 9px; background: #e8f4ed; color: var(--events-green-dark); font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.event-format { color: #7b8982; font-size: 11px; }
.event-card-body h2 { margin: 0 0 10px; font-size: 20px; line-height: 1.25; }
.event-card-body h2 a { color: var(--events-ink); text-decoration: none; }
.event-card-body > p { margin: 0 0 18px; color: var(--events-muted); font-size: 14px; line-height: 1.6; }
.event-card-meta { margin: 0; }
.event-card-meta > div { display: grid; grid-template-columns: 20px 1fr; gap: 6px; margin-top: 7px; color: #52625a; font-size: 12px; }
.event-card-meta dt { color: var(--events-green); font-weight: normal; }
.event-card-meta dd { margin: 0; }
.event-card-footer { display: flex; align-items: center; justify-content: space-between; min-height: 57px; border-top: 1px solid var(--events-border); padding: 12px 22px; }
.event-price { color: var(--events-ink); font-size: 14px; font-weight: 800; }
.event-link { color: var(--events-green); font-size: 12px; font-weight: 800; text-decoration: none; }
.event-link i { margin-left: 4px; transition: transform .2s ease; }
.event-link:hover i { transform: translateX(3px); }

.events-empty { padding: 75px 20px; border: 1px dashed #cbd9d0; border-radius: 12px; background: #fff; text-align: center; }
.events-empty > span { color: #9caf9f; font-size: 42px; }
.events-empty h3 { margin: 17px 0 7px; color: var(--events-ink); }
.events-empty p { margin: 0; color: var(--events-muted); }
.events-pagination { display: flex; justify-content: center; gap: 7px; margin-top: 34px; }
.events-pagination button { width: 40px; height: 40px; border: 1px solid var(--events-border); border-radius: 6px; background: #fff; color: var(--events-ink); cursor: pointer; }
.events-pagination button.is-current { border-color: var(--events-green); background: var(--events-green); color: #fff; }

.events-cta { padding: 65px 0; background: var(--events-ink); color: #fff; }
.events-cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.events-cta h2 { max-width: 700px; margin: 0; color: #fff; font-size: clamp(27px, 4vw, 42px); }
.events-cta a { display: inline-flex; align-items: center; gap: 10px; border-bottom: 1px solid var(--events-lime); padding: 8px 0; color: #fff; font-weight: 700; white-space: nowrap; }

.event-detail-hero { position: relative; min-height: 530px; overflow: hidden; display: flex; align-items: end; background: #071f15; }
.event-detail-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.event-detail-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,23,14,.95), rgba(3,23,14,.52) 62%, rgba(3,23,14,.15)), linear-gradient(transparent 55%, rgba(3,23,14,.75)); }
.event-detail-hero-content { position: relative; z-index: 1; padding-top: 80px; padding-bottom: 65px; color: #fff; }
.event-back-link { display: inline-block; margin-bottom: 70px; color: rgba(255,255,255,.85); font-size: 13px; font-weight: 700; }
.event-back-link i { margin-right: 7px; }
.event-detail-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 17px; }
.event-detail-tags span { border: 1px solid rgba(255,255,255,.38); border-radius: 20px; padding: 6px 11px; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.event-detail-hero h1 { max-width: 850px; margin: 0 0 15px; color: #fff; font-size: clamp(40px, 6vw, 70px); line-height: 1.02; letter-spacing: -.04em; }
.event-detail-hero-content > p { max-width: 720px; margin: 0; color: rgba(255,255,255,.82); font-size: 18px; line-height: 1.6; }
.event-detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 70px; padding-top: 75px; padding-bottom: 90px; align-items: start; }
.event-detail-main h2 { margin: 0 0 18px; color: var(--events-ink); font-size: 38px; letter-spacing: -.03em; }
.event-detail-main h3 { margin: 38px 0 18px; color: var(--events-ink); font-size: 23px; }
.event-detail-intro { color: var(--events-muted); font-size: 17px; line-height: 1.85; }
.event-highlights { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin: 0; padding: 0; list-style: none; }
.event-highlights li { display: flex; gap: 10px; align-items: center; border-radius: 8px; padding: 15px; background: var(--events-soft); }
.event-highlights i { display: grid; width: 25px; height: 25px; border-radius: 50%; background: #d9eddf; color: var(--events-green); font-size: 10px; place-items: center; }
.event-detail-note { display: flex; gap: 15px; margin-top: 40px; border-left: 4px solid var(--events-lime); padding: 20px; background: #f6f8ee; }
.event-detail-note > i { margin-top: 2px; color: var(--events-green); font-size: 20px; }
.event-detail-note strong { color: var(--events-ink); }
.event-detail-note p { margin: 4px 0 0; color: var(--events-muted); line-height: 1.6; }
.event-booking-card { position: sticky; top: 95px; overflow: hidden; border: 1px solid var(--events-border); border-radius: 13px; background: #fff; box-shadow: 0 18px 50px rgba(15,51,34,.1); }
.event-booking-price { display: flex; align-items: end; justify-content: space-between; padding: 23px; background: var(--events-green); color: #fff; }
.event-booking-price span { color: rgba(255,255,255,.75); font-size: 12px; }
.event-booking-price strong { font-size: 22px; }
.event-booking-card dl { margin: 0; padding: 8px 23px; }
.event-booking-card dl > div { display: grid; grid-template-columns: 27px 1fr; gap: 10px; border-bottom: 1px solid var(--events-border); padding: 16px 0; }
.event-booking-card dl > div:last-child { border-bottom: 0; }
.event-booking-card dt { color: var(--events-green); font-size: 16px; font-weight: normal; }
.event-booking-card dd { display: flex; margin: 0; flex-direction: column; }
.event-booking-card dd span { color: #8a9790; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.event-booking-card dd strong { margin-top: 3px; color: var(--events-ink); font-size: 13px; line-height: 1.4; }
.event-booking-card dd small { margin-top: 2px; color: var(--events-muted); }
.event-register-button { display: flex; margin: 10px 23px 23px; }
.event-closed { display: block; margin: 10px 23px 23px; border-radius: 6px; padding: 14px; background: #eef1ef; color: #6b7771; font-weight: 700; text-align: center; }
.event-not-found { min-height: 620px; padding-top: 150px; padding-bottom: 100px; text-align: center; }
.event-not-found h1 { margin: 0 0 15px; color: var(--events-ink); font-size: 50px; }
.event-not-found p { margin-bottom: 25px; color: var(--events-muted); }

@media (max-width: 1100px) {
    .events-intro-inner { grid-template-columns: minmax(0, 1fr) 360px; gap: 35px; }
    .events-filters { grid-template-columns: repeat(3, 1fr); }
    .events-search { grid-column: span 2; }
    .events-filter-button { align-self: end; }
    .events-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 991px) {
    .events-intro-inner {
        display: grid;
        grid-template-columns: 1fr;
    }

    .events-hero-feature {
        width: 100%;
        max-width: 680px;
        margin-top: 10px;
    }
}

@media (max-width: 767px) {
    .events-intro { padding: 48px 0; }
    .events-intro-inner { display: block; }
    .events-hero-copy h2 { font-size: 38px; }
    .events-hero-copy > p { font-size: 16px; }
    .events-hero-feature { min-height: 340px; margin-top: 42px; }
    .events-hero-feature-content { padding: 23px; }
    .events-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .events-stats-grid > div { padding: 22px 10px; border-bottom: 1px solid var(--events-border); }
    .events-browser { padding: 55px 0 65px; }
    .events-section-heading { display: block; }
    .events-section-heading > p { margin-top: 14px; }
    .events-filters { grid-template-columns: 1fr 1fr; padding: 14px; }
    .events-search { grid-column: 1 / -1; }
    .events-filter-button { grid-column: 1 / -1; }
    .events-grid { grid-template-columns: 1fr; gap: 18px; }
    .event-card { border-radius: 9px; }
    .event-card-media { aspect-ratio: 4 / 3; }
    .event-date-block { bottom: 7px; left: 7px; width: 43px; height: 49px; }
    .event-date-block strong { font-size: 18px; }
    .event-featured { top: 7px; right: 7px; padding: 4px 7px; font-size: 8px; }
    .event-card-body { padding: 14px 12px 10px; }
    .event-card-tags { align-items: flex-start; flex-direction: column; }
    .event-card-body h2 { font-size: 15px; }
    .event-card-body > p { display: -webkit-box; overflow: hidden; font-size: 12px; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
    .event-card-meta > div { grid-template-columns: 15px 1fr; font-size: 10px; }
    .event-card-footer { min-height: 48px; padding: 9px 12px; }
    .event-price { font-size: 11px; }
    .event-link { font-size: 0; }
    .event-link i { font-size: 12px; }
    .events-cta-inner { align-items: flex-start; flex-direction: column; }
    .event-detail-hero { min-height: 500px; }
    .event-back-link { margin-bottom: 60px; }
    .event-detail-hero h1 { font-size: 41px; }
    .event-detail-layout { display: flex; gap: 40px; padding-top: 50px; padding-bottom: 60px; flex-direction: column; }
    .event-booking-card { position: static; width: 100%; order: -1; }
    .event-highlights { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
    .events-filters { grid-template-columns: 1fr; }
    .events-filters label,
    .events-search,
    .events-filter-button { grid-column: 1; }
    .events-section-heading h2 { font-size: 34px; }
    .events-result-head { align-items: flex-start; flex-direction: column; gap: 5px; }
    .event-card-body > p { -webkit-line-clamp: 2; }
    .event-card-tags { gap: 5px; }
    .event-format { font-size: 9px; }
}

/* ===== home-events.css ===== */
.home-events {
    padding: 85px 0 95px;
    background: #f3f7f4;
}

.home-events *,
.home-events *::before,
.home-events *::after {
    box-sizing: border-box;
}

.home-events-heading {
    display: flex;
    gap: 40px;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 34px;
}

.home-events-heading h2 {
    margin: 0 0 12px;
    color: #10241b;
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.home-events-heading p {
    max-width: 620px;
    margin: 0;
    color: #66746d;
    font-size: 16px;
    line-height: 1.65;
}

.home-events-heading .events-outline-button i,
.home-events-mobile-link i {
    margin-left: 9px;
}

.home-events-grid .event-card {
    height: 100%;
    border-radius: 8px;
}

.home-events-grid .event-card-media {
    border-radius: 7px 7px 0 0;
}

/* Keep the homepage service cards gently rounded rather than pill-shaped. */
.section-bg-color .advs-box.boxed-inverse {
    overflow: hidden;
    border-radius: 8px;
}

.section-bg-color .advs-box.boxed-inverse .img-box,
.section-bg-color .advs-box.boxed-inverse .img-box > span,
.section-bg-color .advs-box.boxed-inverse .img-box img {
    border-radius: 7px 7px 0 0;
}

.home-events-mobile-link {
    display: none;
}

@media (max-width: 767px) {
    .home-events {
        padding: 55px 0 65px;
    }

    .home-events-heading {
        display: block;
        margin-bottom: 25px;
    }

    .home-events-heading > .events-outline-button {
        display: none;
    }

    .home-events-mobile-link {
        display: flex;
        width: 100%;
        margin-top: 24px;
    }
}

/* ===== careers.css ===== */
:root { --career-green:var(--samddra-green); --career-dark:#10241b; --career-lime:var(--samddra-yellow); --career-muted:#68766f; --career-soft:#f3f7f4; --career-border:#dde7e1; }
.careers-page,.career-detail-page{width:100%;overflow-x:clip;overflow-y:visible}
.career-intro-grid>*,.career-filters>*{min-width:0}
.careers-page,.career-detail-page{color:var(--career-dark);background:#fff}.careers-page *,.career-detail-page *{box-sizing:border-box}.careers-page-header{background-position:center;background-size:cover}.career-eyebrow{display:inline-block;margin-bottom:13px;color:var(--career-green);font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.career-intro{padding:70px 0}.career-intro-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:center}.career-intro-copy h2,.career-section-heading h2,.career-detail-layout h2{margin:0 0 18px;color:var(--career-dark);font-size:clamp(34px,4.5vw,54px);line-height:1.08;letter-spacing:-.035em}.career-intro-copy p{max-width:650px;color:var(--career-muted);font-size:17px;line-height:1.75}.career-button{display:inline-flex;min-height:48px;margin-top:15px;align-items:center;justify-content:center;border:0;border-radius:6px;padding:12px 22px;background:var(--career-green);color:#fff!important;font-weight:700;text-decoration:none!important}.career-button:hover{background:#075b36}.career-intro-image{position:relative;overflow:hidden;min-height:410px;border-radius:16px;box-shadow:0 25px 55px rgba(17,63,40,.16)}.career-intro-image img{position:absolute;width:100%;height:100%;object-fit:cover}.career-intro-image>div{position:absolute;right:18px;bottom:18px;display:flex;border-radius:9px;padding:15px 18px;background:#fff;box-shadow:0 10px 25px rgba(0,0,0,.18);flex-direction:column}.career-intro-image strong{color:var(--career-green);font-size:28px}.career-intro-image span{color:var(--career-muted);font-size:11px}.career-values{padding:70px 0;background:var(--career-dark)}.career-values .career-eyebrow{color:var(--career-lime)}.career-values .career-section-heading h2{color:#fff}.career-section-heading{max-width:720px;margin-bottom:30px}.career-section-heading>p{color:var(--career-muted);line-height:1.6}.career-values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.career-values article{min-height:220px;border:1px solid rgba(255,255,255,.12);border-radius:11px;padding:25px;background:rgba(255,255,255,.05)}.career-values article i{color:var(--career-lime);font-size:27px}.career-values h3{margin:28px 0 10px;color:#fff;font-size:19px}.career-values p{margin:0;color:rgba(255,255,255,.65);font-size:13px;line-height:1.65}.career-openings{padding:80px 0;background:var(--career-soft)}.career-filters{display:grid;grid-template-columns:1fr 230px auto;gap:10px;padding:15px;border:1px solid var(--career-border);border-radius:10px;background:#fff}.career-filters label{position:relative;margin:0}.career-filters label i{position:absolute;top:16px;left:15px;color:#8c9992}.career-filters input,.career-filters select{width:100%;height:46px;border:1px solid #d5e0d9;border-radius:6px;padding:0 13px;background:#fff;outline:0}.career-filters input{padding-left:40px}.career-filters input:focus,.career-filters select:focus{border-color:var(--career-green);box-shadow:0 0 0 3px rgba(11,122,72,.1)}.career-filters button{border:0;border-radius:6px;padding:0 20px;background:var(--career-green);color:#fff;font-weight:700}.career-loading{margin:15px 0;color:var(--career-green);font-weight:700}.htmx-indicator{display:none}.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:block}.career-results-heading{margin:28px 0 13px;color:var(--career-muted)}.career-results-heading p{margin:0}.career-list{display:flex;gap:13px;flex-direction:column}.career-card{display:grid;grid-template-columns:56px 1fr auto;gap:18px;align-items:center;border:1px solid var(--career-border);border-radius:11px;padding:22px;background:#fff;box-shadow:0 8px 24px rgba(18,55,37,.05);transition:transform .2s ease,box-shadow .2s ease}.career-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(18,55,37,.1)}.career-card-icon{display:grid;width:56px;height:56px;border-radius:10px;background:#e4f1e8;color:var(--career-green);font-size:21px;place-items:center}.career-card-labels{display:flex;gap:7px;margin-bottom:7px}.career-card-labels span{border-radius:18px;padding:4px 8px;background:#eaf3ed;color:#406150;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.career-card h3{margin:0 0 7px;font-size:21px}.career-card h3 a{color:var(--career-dark)}.career-card-content>p{margin:0 0 11px;color:var(--career-muted);font-size:13px}.career-card-meta{display:flex;flex-wrap:wrap;gap:14px;color:#78867f;font-size:11px}.career-card-meta i{margin-right:5px;color:var(--career-green)}.career-card-link{color:var(--career-green);font-size:12px;font-weight:800;white-space:nowrap}.career-card-link i{margin-left:5px}.career-empty{border:1px dashed #c8d6ce;border-radius:10px;padding:60px 20px;background:#fff;text-align:center}.career-empty>i{color:#9cac9f;font-size:35px}.career-process{padding:75px 0}.career-process ol{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:0;padding:0;list-style:none}.career-process li{border-top:3px solid var(--career-green);padding:22px;background:var(--career-soft)}.career-process li>strong{color:var(--career-green);font-size:25px}.career-process h3{margin:22px 0 8px;font-size:18px}.career-process p{margin:0;color:var(--career-muted);font-size:13px;line-height:1.6}.career-detail-layout{display:grid;grid-template-columns:1fr 350px;gap:65px;padding-top:65px;padding-bottom:85px;align-items:start}.career-back{display:block;margin-bottom:38px;color:var(--career-green);font-weight:700}.career-back i{margin-right:6px}.career-detail-lead{color:var(--career-muted);font-size:17px;line-height:1.8}.career-detail-layout article h3{margin:38px 0 15px;color:var(--career-dark);font-size:23px}.career-detail-layout article ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}.career-detail-layout article li{display:flex;gap:10px;color:#53635b;line-height:1.55}.career-detail-layout article li i{margin-top:5px;color:var(--career-green)}.career-role-summary{position:sticky;top:95px;border:1px solid var(--career-border);border-radius:12px;padding:24px;background:#fff;box-shadow:0 16px 40px rgba(16,55,35,.1)}.career-role-summary h3{margin:0 0 10px}.career-role-summary dl{margin:0}.career-role-summary dl>div{border-bottom:1px solid var(--career-border);padding:14px 0}.career-role-summary dt{color:#89958f;font-size:10px;letter-spacing:.06em;text-transform:uppercase}.career-role-summary dd{margin:3px 0 0;color:var(--career-dark);font-weight:700}.career-role-summary .career-button{display:flex}.career-demo-note{margin-top:40px;border-left:4px solid var(--career-lime);padding:18px;background:#f5f8eb}.career-demo-note p{margin:5px 0 0;color:var(--career-muted)}.career-not-found{min-height:600px;padding-top:170px;text-align:center}.career-not-found h1{margin:0 0 20px}
@media(max-width:991px){.career-intro-grid{grid-template-columns:1fr;gap:35px}.career-intro-image{width:100%;max-width:680px}.career-filters{grid-template-columns:minmax(0,1fr) 210px}.career-filters button{grid-column:1/-1;height:46px}}
@media(max-width:950px){.career-values-grid,.career-process ol{grid-template-columns:repeat(2,1fr)}.career-detail-layout{grid-template-columns:1fr 310px;gap:35px}}
@media(max-width:767px){.career-intro{padding:48px 0}.career-intro-grid{display:block}.career-intro-image{min-height:320px;margin-top:38px}.career-values,.career-openings,.career-process{padding:55px 0}.career-values-grid{grid-template-columns:repeat(2,1fr);gap:10px}.career-values article{min-height:200px;padding:18px}.career-filters{grid-template-columns:1fr}.career-filters button{height:46px}.career-card{grid-template-columns:45px 1fr;padding:16px;gap:12px}.career-card-icon{width:45px;height:45px}.career-card-link{grid-column:2}.career-card-meta{gap:8px;flex-direction:column}.career-process ol{grid-template-columns:1fr}.career-detail-layout{display:flex;gap:35px;padding-top:45px;flex-direction:column}.career-detail-layout aside{width:100%;order:-1}.career-role-summary{position:static}.career-detail-layout h2{font-size:36px}}
@media(max-width:430px){.career-values-grid{grid-template-columns:1fr}.career-card{grid-template-columns:1fr}.career-card-icon{display:none}.career-card-link{grid-column:1}.career-card-labels{flex-wrap:wrap}}

/* ===== career-details.css ===== */
/* Career detail layout overrides: keep the page balanced instead of using a narrow sidebar. */
.career-detail-layout {
    display: flex;
    max-width: 1000px;
    gap: 35px;
    padding-top: 55px;
    padding-bottom: 85px;
    flex-direction: column;
}

.career-detail-layout > article,
.career-detail-layout > aside {
    width: 100%;
    min-width: 0;
}

.career-detail-layout > aside {
    order: -1;
}

.career-role-summary {
    position: static;
}

.career-role-summary dl {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
}

.career-role-summary dl > div {
    border-right: 1px solid var(--career-border);
    border-bottom: 0;
    padding: 10px 18px;
}

.career-role-summary dl > div:first-child {
    padding-left: 0;
}

.career-role-summary dl > div:last-child {
    border-right: 0;
}

.career-role-summary .career-button {
    width: fit-content;
    min-width: 190px;
}

@media (max-width: 950px) {
    .career-role-summary dl {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .career-role-summary dl > div {
        border-right: 0;
        border-bottom: 1px solid var(--career-border);
        padding: 12px 0;
    }

    .career-role-summary dl > div:nth-last-child(-n + 2) {
        border-bottom: 0;
    }
}

@media (max-width: 767px) {
    .career-detail-layout {
        gap: 30px;
        padding-top: 40px;
    }
}

@media (max-width: 480px) {
    .career-role-summary {
        padding: 20px;
    }

    .career-role-summary dl {
        grid-template-columns: 1fr;
    }

    .career-role-summary dl > div,
    .career-role-summary dl > div:nth-last-child(-n + 2) {
        border-bottom: 1px solid var(--career-border);
    }

    .career-role-summary dl > div:last-child {
        border-bottom: 0;
    }

    .career-role-summary .career-button {
        width: 100%;
    }
}

/* ===== home-careers.css ===== */
.home-career-callout {
    padding: 24px 0;
    background: #10241b;
    color: #fff;
}

.home-career-inner {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 24px;
    align-items: center;
}

.container.home-career-inner::before,
.container.home-career-inner::after {
    display: none;
    content: none;
}

.home-career-icon {
    display: grid;
    width: 62px;
    height: 62px;
    border-radius: 50%;
    background: var(--samddra-yellow);
    color: #10241b;
    font-size: 23px;
    place-items: center;
}

.home-career-icon i {
    color: var(--samddra-green) !important;
}

.home-career-copy span {
    color: var(--samddra-yellow);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.home-career-copy h2 {
    max-width: 780px;
    margin: 6px 0 0;
    color: #fff;
    font-size: clamp(18px, 2vw, 25px);
    line-height: 1.3;
}

.home-career-button {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    padding: 12px 20px;
    background: var(--samddra-yellow);
    color: #173016 !important;
    font-weight: 800;
    text-decoration: none !important;
    white-space: nowrap;
}

.home-career-button i { margin-left: 9px; }

@media (max-width: 767px) {
    .home-career-callout { padding: 28px 0; }
    .home-career-inner { grid-template-columns: 48px 1fr; gap: 15px; }
    .home-career-icon { width: 48px; height: 48px; font-size: 18px; }
    .home-career-button { grid-column: 1 / -1; width: 100%; margin-top: 5px; }
}

/* ===== gallery.css ===== */
.gallery-shell {
        width: min(1200px, 92%);
        margin: 0 auto;
        padding: 40px 0 60px;
    }

.gallery-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 14px;
        width: 100%;
    }

    .gallery-region {
        display: block;
        width: 100%;
        margin-bottom: 14px;
        border: 1px solid #e1e5e2;
        border-radius: 8px;
        background: #fff;
        scroll-margin-top: 24px;
    }

    .gallery-region:last-child {
        margin-bottom: 0;
    }

    .gallery-region-title {
        position: relative;
        margin: 0;
        padding: 18px 20px 18px 42px;
        color: #222;
        font-size: clamp(18px, 2vw, 22px);
        font-weight: 500;
        line-height: 1.2;
        cursor: pointer;
        list-style: none;
    }

    .gallery-region-title::-webkit-details-marker {
        display: none;
    }

    .gallery-region-title::before {
        position: absolute;
        top: 50%;
        left: 21px;
        width: 7px;
        height: 7px;
        border-top: 2px solid rgba(93,93,93,.6);
        border-right: 2px solid rgba(93,93,93,.6);
        content: '';
        transform: translateY(-65%) rotate(45deg);
        transition: border-color .2s ease, transform .2s ease;
    }

    .gallery-region[open] > .gallery-region-title {
        border-bottom: 2px solid #16833d;
    }

    .gallery-region[open] > .gallery-region-title::before,
    .gallery-location[open] > .gallery-region-title::before {
        border-color: var(--samddra-yellow);
        transform: translateY(-35%) rotate(135deg);
    }

    .gallery-region > .gallery-grid {
        padding: 20px;
    }

    .gallery-locations {
        display: grid;
        gap: 10px;
        padding: 14px;
        background: #f5f8f6;
    }

    .gallery-location {
        display: block;
        border: 1px solid #dbe4de;
        border-radius: 7px;
        background: #fff;
    }

    .gallery-location > .gallery-region-title {
        padding: 14px 18px 14px 40px;
        font-size: clamp(17px, 2vw, 21px);
    }

    .gallery-location[open] > .gallery-region-title {
        border-bottom: 1px solid #dbe4de;
        color: #126b35;
    }

    .gallery-location > .gallery-region-title::before {
        left: 19px;
    }

    .gallery-location > .gallery-grid {
        padding: 16px;
    }

    .gallery-head-office {
        margin-bottom: 18px;
        border: 2px solid #16833d;
    }

    /* Match the FAQ accordion treatment */
    .gallery-region,
    .gallery-location,
    .gallery-head-office {
        margin: 0;
        border: 0;
        border-bottom: 1px solid #dcdcdc;
        border-radius: 0;
        background: transparent;
    }

    .gallery-region:last-child,
    .gallery-location:last-child {
        border-bottom: 0;
    }

    .gallery-region-title,
    .gallery-location > .gallery-region-title {
        padding: 14px 0 14px 20px;
        color: #555;
        font-size: 15px;
        font-weight: 400;
        line-height: 1.5;
        transition: color .2s ease, padding-left .2s ease;
    }

    .gallery-region-title:hover {
        color: var(--samddra-yellow);
        padding-left: 25px;
    }

    .gallery-region-title::before,
    .gallery-location > .gallery-region-title::before {
        left: 1px;
        width: 6px;
        height: 6px;
        border-color: rgba(93,93,93,.5);
    }

    .gallery-region[open] > .gallery-region-title,
    .gallery-location[open] > .gallery-region-title {
        border-bottom: 0;
        color: var(--samddra-yellow);
    }

    .gallery-region > .gallery-grid,
    .gallery-location > .gallery-grid {
        padding: 0 15px 18px 20px;
    }

    .gallery-locations {
        gap: 0;
        padding: 0 15px 12px 20px;
        background: transparent;
    }

    .gallery-region-empty {
        margin: 20px;
        padding: 22px;
        border-radius: 8px;
        background: #f5f5f5;
        color: #777;
        text-align: center;
    }

    .gallery-column {
        display: flex;
        min-width: 0;
        gap: 14px;
        flex-direction: column;
    }

    .gallery-tabs {
        display: flex;
        gap: 8px;
        margin-bottom: 24px;
        border-bottom: 1px solid #ddd;
    }

    .gallery-tab {
        border: 0;
        border-bottom: 3px solid transparent;
        padding: 10px 24px;
        background: transparent;
        color: #777;
        font-weight: 600;
        cursor: pointer;
    }

    .gallery-tab.is-active {
        border-bottom-color: #16833d;
        color: #16833d;
    }

    .gallery-panel[hidden] {
        display: none;
    }

.gallery-item {
        position: relative;
        display: block;
        width: 100%;
        margin: 0;
        overflow: hidden;
        border: 0;
        border-radius: 8px;
        padding: 0;
        background: #eee;
        cursor: zoom-in;
        vertical-align: top;
    }

    .gallery-item img {
        display: block;
        width: 100%;
        height: auto;
        transition: transform 0.3s ease-in-out;
    }

    .gallery-item video {
        display: block;
        width: 100%;
        height: auto;
        pointer-events: none;
        transition: transform 0.3s ease-in-out;
    }

    .gallery-item:hover img,
    .gallery-item:focus-visible img,
    .gallery-item:hover video,
    .gallery-item:focus-visible video {
        transform: scale(1.08);
    }

    .video-card {
        position: relative;
    }

    .video-play {
        position: absolute;
        top: 50%;
        left: 50%;
        display: grid;
        place-items: center;
        width: 54px;
        height: 54px;
        border-radius: 50%;
        background: rgba(0, 0, 0, 0.72);
        color: #fff;
        font-size: 22px;
        transform: translate(-50%, -50%);
        pointer-events: none;
    }

    .media-title {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        padding: 28px 10px 9px;
        background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
        color: #fff;
        font-size: 14px;
        line-height: 1.3;
        text-align: left;
        pointer-events: none;
    }

    .gallery-item:focus-visible {
        outline: 3px solid #16833d;
        outline-offset: 3px;
    }

    .gallery-message {
        padding: 30px;
        color: #666;
        text-align: center;
    }

    .gallery-lightbox {
        position: fixed;
        z-index: 99999;
        inset: 0;
        display: none;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        padding: 16px;
        background: rgba(0, 0, 0, 0.92);
    }

    .gallery-lightbox.is-open {
        display: flex;
    }

    .gallery-lightbox-image {
        display: block;
        width: auto;
        height: auto;
        max-width: calc(100vw - 32px);
        max-height: calc(100vh - 32px);
        object-fit: contain;
        border-radius: 4px;
    }

    .gallery-lightbox-video {
        display: block;
        width: auto;
        height: auto;
        max-width: calc(100vw - 32px);
        max-height: calc(100vh - 32px);
        background: #000;
    }

    .gallery-lightbox-youtube {
        width: min(calc(100vw - 32px), calc((100vh - 32px) * var(--video-ratio, 1.7778)));
        aspect-ratio: var(--video-aspect, 16 / 9);
        max-height: calc(100vh - 32px);
        border: 0;
        background: #000;
    }

    .gallery-lightbox-close {
        position: fixed;
        z-index: 1;
        top: 12px;
        right: 18px;
        width: 44px;
        height: 44px;
        border: 0;
        background: transparent;
        color: #fff;
        font-size: 42px;
        line-height: 1;
        cursor: pointer;
    }

    body.gallery-lightbox-open {
        overflow: hidden;
    }

    @media (max-width: 420px) {
        .gallery-shell {
            width: 94%;
        }
    }

    @media (max-width: 1024px) {
        .gallery-grid {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }
    }

@media (max-width: 720px) {
        .gallery-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 8px;
        }

        .gallery-column {
            gap: 8px;
        }
    }


/* Site-wide motion system */
html { scroll-behavior: smooth; }
.motion-ready .motion-reveal { opacity:0;transform:translate3d(0,24px,0);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transition-delay:var(--motion-delay,0ms);will-change:opacity,transform }
.motion-ready .motion-reveal.is-visible { opacity:1;transform:translate3d(0,0,0);will-change:auto }
.motion-ready .home-hero-motion-item { animation:home-hero-in .75s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--hero-delay,0ms) }
.header-base .title-base { animation:site-title-in .7s cubic-bezier(.22,1,.36,1) both }
.advs-box,.event-card,.career-card,.home-service-card,.service-directory-card,.contact-method-card,.gallery-item,.career-values article,.career-process li { transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease }
.advs-box:hover,.event-card:hover,.career-card:hover,.home-service-card:hover,.service-directory-card:hover,.contact-method-card:hover,.gallery-item:hover,.career-values article:hover,.career-process li:hover { transform:translateY(-5px) }
.career-values article:hover { border-color:rgba(242,181,27,.55);box-shadow:0 18px 36px rgba(0,0,0,.16) }
.btn i,.career-button i,.events-primary-button i,.home-career-button i { transition:transform .22s ease }
.btn:hover i,.career-button:hover i,.events-primary-button:hover i,.home-career-button:hover i { transform:translateX(4px) }
.btn:active,.career-button:active,.events-primary-button:active,.events-outline-button:active,.home-career-button:active,.site-assistant-launcher:active { transform:translateY(1px) scale(.985) }
.home-hero-image-frame img { transform:translate3d(var(--hero-x,0),var(--hero-y,0),0) scale(1.025);transition:transform .6s cubic-bezier(.22,1,.36,1) }
.site-search-dialog:not([hidden]) .site-search-dialog-card { animation:site-panel-in .3s cubic-bezier(.22,1,.36,1) both }
.site-assistant:not([hidden]) { animation:site-panel-in .3s cubic-bezier(.22,1,.36,1) both }
.site-assistant-message,.site-assistant-results { animation:site-message-in .28s cubic-bezier(.22,1,.36,1) both }
@keyframes site-title-in { from { opacity:0;transform:translateY(18px) } to { opacity:1;transform:translateY(0) } }
@keyframes home-hero-in { from { opacity:0;transform:translateY(22px) } to { opacity:1;transform:translateY(0) } }
@keyframes site-panel-in { from { opacity:0;transform:translateY(14px) scale(.975) } to { opacity:1;transform:translateY(0) scale(1) } }
@keyframes site-message-in { from { opacity:0;transform:translateY(8px) } to { opacity:1;transform:translateY(0) } }
@media (prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto }
    *,*::before,*::after { animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important }
    .motion-reveal { opacity:1!important;transform:none!important }
}

/* Global button system */
.cookie-consent {
    position: fixed;
    z-index: 100000;
    right: 20px;
    bottom: 20px;
    left: 20px;
    display: flex;
    max-width: 1100px;
    margin: auto;
    gap: 24px;
    align-items: center;
    justify-content: space-between;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 10px;
    padding: 22px;
    background: #003f41;
    box-shadow: 0 16px 50px rgba(0, 0, 0, .3);
    color: #fff;
}

.cookie-consent[hidden],
.cookie-preferences[hidden] {
    display: none;
}

body.cookie-preferences-open {
    overflow: hidden;
}

.cookie-settings-link {
    border: 0;
    padding: 0;
    background: transparent;
    color: inherit;
    text-decoration: underline;
    cursor: pointer;
}

.cookie-consent-copy h2,
.cookie-preferences-card h2 {
    margin: 0 0 7px;
    font-size: 21px;
    font-weight: 600;
}

.cookie-consent-copy p,
.cookie-preferences-card > p {
    margin: 0;
    line-height: 1.55;
}

.cookie-consent-actions {
    display: flex;
    flex-shrink: 0;
    gap: 9px;
}

.cookie-button {
    min-height: 44px;
    border: 1px solid #f2b51b;
    border-radius: 7px;
    padding: 10px 16px;
    font-weight: 600;
    cursor: pointer;
}

.cookie-button-primary {
    background: #f2b51b;
    color: #173318;
}

.cookie-button-secondary {
    background: transparent;
    color: #fff;
}

.cookie-preferences {
    position: fixed;
    z-index: 100001;
    inset: 0;
    display: grid;
    overflow-y: auto;
    padding: 20px;
    background: rgba(0, 0, 0, .7);
    place-items: center;
}

.cookie-preferences-card {
    position: relative;
    width: min(560px, 100%);
    border-radius: 10px;
    padding: 28px;
    background: #fff;
    color: #28342e;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .35);
}

.cookie-preferences-close {
    position: absolute;
    top: 10px;
    right: 12px;
    border: 0;
    background: transparent;
    color: #333;
    font-size: 30px;
    cursor: pointer;
}

.cookie-choice {
    display: flex;
    margin: 16px 0;
    gap: 20px;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #dfe5e1;
    border-radius: 8px;
    padding: 15px;
}

.cookie-choice span,
.cookie-choice small {
    display: block;
}

.cookie-choice small {
    margin-top: 4px;
    color: #68736d;
}

.cookie-choice input {
    width: 22px;
    height: 22px;
    accent-color: #16833d;
}

.cookie-choice-required {
    background: #f4f7f5;
}

@media (max-width: 767px) {
    .cookie-consent {
        align-items: stretch;
        flex-direction: column;
        gap: 16px;
    }

    .cookie-consent-actions {
        flex-direction: column;
    }
}

.btn:not(.btn-border),
.events-primary-button,
.home-career-button,
.career-button {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--samddra-yellow);
    border-radius: 7px;
    padding: 12px 24px;
    background: var(--samddra-yellow);
    color: #fff !important;
    font-weight: 400;
    text-decoration: none !important;
    transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

.btn:not(.btn-border):hover,
.btn:not(.btn-border):focus,
.events-primary-button:hover,
.events-primary-button:focus,
.home-career-button:hover,
.home-career-button:focus,
.career-button:hover,
.career-button:focus {
    border-color: #d9a113;
    background: #d9a113;
    color: #fff !important;
    filter: none;
    transform: translateY(-1px);
}

.btn-border,
.btn.btn-border,
.events-outline-button {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--samddra-green);
    border-radius: 7px;
    padding: 12px 24px;
    background: transparent;
    color: var(--samddra-green) !important;
    font-weight: 400;
    text-decoration: none !important;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.btn-border:hover,
.btn-border:focus,
.btn.btn-border:hover,
.btn.btn-border:focus,
.events-outline-button:hover,
.events-outline-button:focus {
    border-color: var(--samddra-green) !important;
    background: var(--samddra-green) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.home-membership-actions .btn.btn-border {
    border-color: rgba(255,255,255,.8) !important;
    background: transparent !important;
    color: #fff !important;
}
.home-membership-actions .btn.btn-border:hover,
.home-membership-actions .btn.btn-border:focus {
    border-color: #fff !important;
    background: #fff !important;
    color: var(--samddra-green) !important;
}

.btn.btn-border:hover i,
.btn.btn-border:focus i,
.events-outline-button:hover i,
.events-outline-button:focus i {
    color: #fff !important;
}

/* Global image, card and boxed-panel radius */
main img:not(.img-circle):not(.avatar):not([class*="icon"]):not([class*="logo"]),
.img-box,
.img-box img,
.adv-img,
.adv-img img,
.event-card-media,
.event-card-media img {
    border-radius: var(--card-radius);
}

.event-detail-hero > img {
    border-radius: 0;
}

.events-hero-feature,
.career-intro-image {
    border-radius: var(--card-radius);
}

.panel,
.well,
.advs-box,
.boxed,
.boxed-inverse,
.base-box,
.events-filters,
.events-empty,
.career-filters,
.career-empty,
.cookie-preferences-card,
.advs-box.boxed,
.advs-box.boxed-inverse,
.base-box.boxed,
.base-box.boxed-inverse,
.event-card,
.event-booking-card,
.career-card,
.career-role-summary,
.career-values article,
.career-process li,
.gallery-item,
.gallery-lightbox-content {
    border-radius: var(--card-radius);
}

/* Homepage hero */
.home-loader { position:fixed; z-index:250000; inset:0; display:grid; align-content:center; justify-items:center; gap:18px; background:#fff; opacity:1; transition:opacity .42s ease,visibility .42s ease; }
.home-loader.is-leaving { visibility:hidden; opacity:0; }
.home-loader-mark { position:relative; display:grid; width:min(210px,55vw); min-height:90px; align-items:center; justify-items:center; }
.home-loader-mark img { display:block; width:100%; height:auto; }
.home-loader-mark span { position:absolute; right:0; bottom:-10px; left:0; height:3px; overflow:hidden; border-radius:3px; background:#e3ebe7; }
.home-loader-mark span::after { display:block; width:42%; height:100%; border-radius:inherit; background:var(--samddra-yellow); content:""; animation:home-loader-progress 1s cubic-bezier(.65,0,.35,1) infinite alternate; }
.home-loader p { margin:0; color:var(--samddra-green); font-size:12px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
body.home-loader-active { overflow:hidden; }
@keyframes home-loader-progress { from { transform:translateX(-10%); } to { transform:translateX(150%); } }

.home-hero {
    overflow: hidden;
    padding: 76px 0;
    background: #fff;
}

.home-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, .95fr);
    gap: 72px;
    align-items: center;
}

.container.home-hero-grid::before,
.container.home-hero-grid::after {
    display: none;
    content: none;
}

.home-hero-copy,
.home-hero-visual {
    min-width: 0;
}

.home-hero-eyebrow {
    display: inline-block;
    margin-bottom: 18px;
    color: var(--samddra-green);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.home-hero-copy h1 {
    max-width: 720px;
    margin: 0 0 22px;
    color: #10241b;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -.035em;
}

.home-hero-copy > p {
    max-width: 650px;
    margin: 0;
    color: #52625a;
    font-size: 17px;
    line-height: 1.75;
}

.home-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.home-hero-benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 24px;
    margin: 30px 0 0;
    padding: 0;
    color: #405249;
    font-size: 13px;
    list-style: none;
}

.home-hero-benefits i {
    margin-right: 7px;
    color: var(--samddra-green);
}

.home-hero-links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 24px;
    margin-top: 22px;
}

.home-hero-links a {
    color: var(--samddra-green);
    font-size: 12px;
    font-weight: 600;
}

.home-hero-links i {
    margin-left: 5px;
    color: var(--samddra-yellow);
}

.home-hero-visual {
    position: relative;
    padding: 0 18px 26px 0;
}

.home-hero-image-frame {
    position: relative;
    overflow: hidden;
    min-height: 470px;
    border: 1px solid rgba(0, 71, 73, .1);
    border-radius: var(--card-radius);
    background: transparent;
    box-shadow: 0 24px 60px rgba(0, 71, 73, .13);
}

.home-hero-image-frame img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-hero-card {
    position: absolute;
    right: 24px;
    bottom: 24px;
    left: 24px;
    display: flex;
    max-width: none;
    border-radius: var(--card-radius);
    padding: 20px 24px;
    background: rgba(0, 71, 73, .78);
    box-shadow: 0 10px 30px rgba(0, 35, 37, .18);
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
    flex-direction: column;
}

.home-hero-card span {
    margin-bottom: 4px;
    color: var(--samddra-yellow);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
}

@media (max-width: 991px) {
    .home-hero {
        padding: 58px 0;
    }

    .home-hero-grid {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .home-hero-visual {
        width: 100%;
        max-width: 680px;
    }
}

@media (max-width: 767px) {
    .home-hero {
        padding: 44px 0;
    }

    .home-hero-copy h1 {
        font-size: 32px;
    }

    .home-hero-copy > p {
        font-size: 15px;
    }

    .home-hero-actions,
    .home-hero-actions .btn {
        width: 100%;
    }

    .home-hero-benefits,
    .home-hero-links {
        align-items: flex-start;
        flex-direction: column;
    }

    .home-hero-visual {
        padding-right: 10px;
    }

    .home-hero-image-frame {
        min-height: 340px;
    }

    .home-hero-card {
        right: 16px;
        bottom: 16px;
        left: 16px;
        max-width: none;
        padding: 16px 18px;
    }
}

/* Final cascade overrides for the modern layout. */
header .navbar-mini { display: none !important; }
header.fixed-top { height: 78px; }
header .navbar-main {
    min-height: 78px;
    border: 0 !important;
    background: rgba(255,255,255,.98) !important;
    box-shadow: 0 8px 30px rgba(0,40,32,.1);
}
header .navbar-main .navbar-header { margin-top: 0 !important; background: transparent !important; }
header .navbar-main .navbar-header::before,
header .navbar-main .navbar-header::after { display: none !important; }
header .navbar-main .navbar-brand { height: 78px; margin-top: 0 !important; padding-block: 10px; }
header .navbar-main .navbar-brand img { width: auto; max-height: 58px; }
header .navbar-main .navbar-nav > li > a {
    padding: 29px 15px 25px;
    background: transparent !important;
    color: #17382e !important;
    font-size: 13px;
    font-weight: 600;
    line-height: 24px;
}
header .navbar-main .navbar-nav > li > a:hover,
header .navbar-main .navbar-nav > li > a:focus { color: var(--samddra-green) !important; }
header .navbar-main .nav-membership-cta > a i {
    margin-left: 7px;
    color: var(--samddra-yellow) !important;
    font-size: 11px;
}
header .navbar-main .dropdown-menu {
    border: 1px solid var(--site-border);
    border-radius: var(--card-radius);
    padding: 10px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(0,45,35,.14);
}
header .navbar-main .dropdown-menu > li > a {
    height: auto;
    margin: 0;
    border-radius: 6px;
    padding: 10px 12px;
    color: #29483e !important;
}

.header-base::after { z-index: 0; }
.header-base > .container { position: relative; z-index: 2; }
.header-base .title-base,
.header-base .title-base h1,
.header-base .title-base p { position: relative; z-index: 2; visibility: visible !important; opacity: 1 !important; }
.header-base .title-base h1 { color: #fff !important; }
.header-base .title-base p { color: rgba(255,255,255,.86) !important; }

.home-services .row::before,
.home-services .row::after { display: none; content: none; }
.home-services .row { display: flex; clear: both; flex-wrap: wrap; }
.home-services .col-md-4 { display: flex; float: none; }
.home-services .advs-box { overflow: hidden; }
.home-services .advs-box .img-box span { display: block; width: 100%; height: 100%; }
.home-services .advs-box .img-box img { display: block; width: 100%; height: 100%; object-fit: cover; }
.home-services .advs-box-content { display: flex; min-height: 245px; flex-direction: column; }
.home-services .advs-box-content .btn-text { margin-top: auto; }

@media (max-width: 1199px) and (min-width: 995px) {
    header .navbar-main .navbar-brand img { max-width: 150px; object-fit: contain; }
    header .navbar-main .navbar-nav > li > a { padding-inline: 9px; font-size: 11px; }
}

@media (max-width: 994px) {
    header.fixed-top { height: 68px; }
    header .navbar-main { min-height: 68px; }
    header .navbar-main .navbar-brand { height: 68px; padding-block: 8px; }
    header .navbar-main .navbar-brand img { max-height: 52px; }
    header .navbar-main .navbar-nav > li > a { padding: 13px 0; font-size: 13px; }
    .home-services .row { display: block; }
    .home-services .col-md-4 { display: block; width: 100%; }
    .home-services .advs-box-content { min-height: 0; }
}

/* Clean homepage layout */
.modern-home { overflow: clip; background: #fff; }
.modern-home .home-hero { padding: clamp(46px, 5.5vw, 70px) 0; }
.modern-home .home-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(380px, .85fr); gap: clamp(40px, 7vw, 84px); }
.modern-home .home-hero-copy h1 { max-width: 690px; font-size: clamp(42px, 5vw, 66px); }
.modern-home .home-hero-copy > p { max-width: 620px; }
.modern-home .home-hero-image-frame { min-height: 420px; }
.modern-home .home-impact-grid::before,
.modern-home .home-impact-grid::after { display: none; content: none; }
.modern-home .home-impact-grid > div { gap: 3px; }
.modern-home .home-impact-grid i { margin-bottom: 8px; color: var(--samddra-yellow); font-size: 20px; }

.home-section-heading { max-width: 720px; }
.home-section-heading > span { display: inline-block; margin-bottom: 12px; color: var(--samddra-green); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.home-section-heading h2 { margin: 0 0 14px; color: var(--site-ink); font-size: clamp(34px, 4.5vw, 52px); font-weight: 600; line-height: 1.12; }
.home-section-heading p { max-width: 620px; margin: 0; font-size: 16px; }

.modern-home .home-services { padding: var(--section-space) 0; background: var(--site-soft); }
.home-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 42px; }
.home-service-card { overflow: hidden; border: 1px solid var(--site-border); border-radius: var(--card-radius); background: #fff; box-shadow: 0 12px 36px rgba(12,61,40,.07); transition: transform .28s ease, box-shadow .28s ease; }
.home-service-card:hover { transform: translateY(-5px); box-shadow: var(--site-shadow); }
.home-service-image { overflow: hidden; aspect-ratio: 16 / 9; }
.home-service-image img { display: block; width: 100%; height: 100%; border-radius: 0; object-fit: cover; transition: transform .45s ease; }
.home-service-card:hover .home-service-image img { transform: scale(1.045); }
.home-service-content { display: flex; min-height: 235px; padding: 26px; flex-direction: column; }
.home-service-content h3 { margin: 0 0 10px; color: var(--site-ink); font-size: 20px; line-height: 1.3; }
.home-service-content p { margin: 0 0 22px; font-size: 14px; }
.home-service-content a { margin-top: auto; color: var(--samddra-green); font-size: 12px; font-weight: 700; }
.home-service-content a i { margin-left: 5px; color: var(--samddra-yellow); }

.modern-home .home-events { padding: var(--section-space) 0; background: #fff; }
.modern-home .home-events-heading { display: flex; gap: 30px; align-items: end; justify-content: space-between; }
.modern-home .home-events-grid { margin-top: 40px; }
.modern-home .home-career-callout { padding: 38px 0; }
.modern-home .home-membership-cta { padding: var(--section-space) 0; }
.modern-home > .section-empty { margin: 0; }

@media (max-width: 991px) {
    .modern-home .home-hero-grid { grid-template-columns: 1fr; }
    .modern-home .home-hero-visual { max-width: 720px; }
    .home-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
    .modern-home .home-hero { padding: 38px 0 44px; }
    .modern-home .home-hero-copy h1 { font-size: 39px; }
    .modern-home .home-hero-image-frame { min-height: 310px; }
    .modern-home .home-impact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-service-grid { grid-template-columns: 1fr; gap: 18px; }
    .home-service-content { min-height: 0; }
    .modern-home .home-events-heading { align-items: stretch; flex-direction: column; }
    .modern-home .home-events-heading .events-outline-button { width: 100%; }
}

@media (max-width: 420px) {
    .modern-home .home-impact-grid { grid-template-columns: 1fr; }
    .modern-home .home-impact-grid > div { border-right: 1px solid var(--site-border); }
}

/* Compact, full-colour industry relationships strip */
.relationships-section {
    margin: 0;
    border-top: 1px solid var(--site-border);
    padding: 36px 0 !important;
    background: var(--site-soft);
}
.relationships-section > .content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.relationships-section .title-base { margin: 0; }
.relationships-section .title-base h2 { margin-bottom: 6px; font-size: 24px; }
.relationships-section .title-base p { margin: 0; font-size: 12px; line-height: 1.5; }
.relationships-section .flexslider { margin: 0; }
.relationships-section .slides { display: flex; align-items: center; }
.relationships-section .img-box {
    display: grid;
    min-height: 76px !important;
    padding: 10px 14px !important;
    background: #fff;
    place-items: center;
}
.relationships-section .img-box img {
    width: auto !important;
    max-height: 52px !important;
    border-radius: 0;
    object-fit: contain;
    filter: none !important;
    opacity: 1 !important;
}
@media (max-width: 767px) {
    .relationships-section { padding: 28px 0 !important; }
    .relationships-section .title-base { margin-bottom: 20px; }
}

/* Modern contact page */
.contact-page { overflow: clip; color: var(--site-ink); background: #fff; }
.contact-page * { box-sizing: border-box; }
.contact-eyebrow { display: inline-block; margin-bottom: 12px; color: var(--samddra-green); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.contact-intro { padding: var(--section-space) 0; }
.contact-intro-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, .72fr); gap: clamp(45px, 8vw, 95px); align-items: center; }
.contact-intro-grid::before,
.contact-intro-grid::after,
.contact-pathways-grid::before,
.contact-pathways-grid::after,
.contact-social-inner::before,
.contact-social-inner::after { display: none; content: none; }
.contact-intro-copy h2,
.contact-section-heading h2 { margin: 0 0 18px; color: var(--site-ink); font-size: clamp(36px, 5vw, 56px); font-weight: 600; line-height: 1.08; }
.contact-intro-copy > p { max-width: 670px; margin: 0; font-size: 17px; }
.contact-response-note { display: flex; max-width: 520px; gap: 14px; margin-top: 30px; align-items: center; border: 1px solid var(--site-border); border-radius: var(--card-radius); padding: 17px; background: var(--site-soft); }
.contact-response-note > i { display: grid; width: 42px; height: 42px; flex: 0 0 42px; border-radius: 50%; background: #dcece4; color: var(--samddra-green); place-items: center; }
.contact-response-note strong,
.contact-response-note span { display: block; }
.contact-response-note span { margin-top: 3px; color: var(--site-muted); font-size: 12px; }
.contact-office-card { border: 1px solid var(--site-border); border-radius: var(--card-radius); padding: 30px; background: #fff; box-shadow: var(--site-shadow); }
.contact-office-card h2 { margin: 0 0 16px; font-size: 27px; }
.contact-office-card address { margin: 0; color: var(--site-muted); font-style: normal; line-height: 1.8; }
.contact-office-hours { display: flex; gap: 12px; margin: 22px 0; border-block: 1px solid var(--site-border); padding: 17px 0; color: var(--site-muted); }
.contact-office-hours > i { margin-top: 3px; color: var(--samddra-green); }
.contact-office-hours span,
.contact-office-hours strong { display: block; }
.contact-office-hours strong { margin-bottom: 3px; color: var(--site-ink); }
.contact-map-link { color: var(--samddra-green); font-weight: 700; }
.contact-map-link i { margin-left: 6px; color: var(--samddra-yellow); }

.contact-methods { padding: var(--section-space) 0; background: var(--site-soft); }
.contact-section-heading { max-width: 720px; margin-bottom: 36px; }
.contact-section-heading > p { margin: 0; }
.contact-method-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.contact-method-card { position: relative; display: flex; min-width: 0; gap: 16px; align-items: flex-start; border: 1px solid var(--site-border); border-radius: var(--card-radius); padding: 26px; background: #fff; box-shadow: 0 10px 30px rgba(12,61,40,.06); transition: transform .25s ease, box-shadow .25s ease; }
.contact-method-card:hover { transform: translateY(-5px); box-shadow: var(--site-shadow); }
.contact-method-icon { display: grid; width: 48px; height: 48px; flex: 0 0 48px; border-radius: var(--card-radius); background: #e3f0e8; color: var(--samddra-green); font-size: 18px; place-items: center; }
.contact-method-card small,
.contact-method-card strong { display: block; }
.contact-method-card small { margin-bottom: 5px; color: var(--site-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.contact-method-card strong { overflow-wrap: anywhere; color: var(--site-ink); font-size: 15px; }
.contact-method-card p { margin: 7px 0 0; font-size: 12px; line-height: 1.55; }
.contact-method-arrow { position: absolute; right: 20px; bottom: 20px; color: var(--samddra-yellow); }

.contact-pathways { padding: var(--section-space) 0; }
.contact-pathways-grid { display: grid; grid-template-columns: minmax(280px, .7fr) minmax(0, 1fr); gap: clamp(45px, 8vw, 100px); align-items: start; }
.contact-pathway-links { display: grid; gap: 10px; }
.contact-pathway-links > a { display: grid; grid-template-columns: 42px 1fr auto; gap: 14px; align-items: center; border: 1px solid var(--site-border); border-radius: var(--card-radius); padding: 17px 19px; color: var(--site-ink); transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.contact-pathway-links > a:hover { border-color: rgba(0,71,73,.35); box-shadow: 0 10px 26px rgba(12,61,40,.07); transform: translateX(4px); }
.contact-pathway-links > a > i:first-child { display: grid; width: 42px; height: 42px; border-radius: var(--card-radius); background: var(--site-soft); color: var(--samddra-green); place-items: center; }
.contact-pathway-links > a > i:last-child { color: var(--samddra-yellow); }
.contact-pathway-links strong,
.contact-pathway-links small { display: block; }
.contact-pathway-links small { margin-top: 3px; color: var(--site-muted); }

.contact-social { padding: 36px 0; background: var(--samddra-green); }
.contact-social-inner { display: flex; gap: 30px; align-items: center; justify-content: space-between; }
.contact-social .contact-eyebrow { margin: 0 0 4px; color: var(--samddra-yellow); }
.contact-social h2 { margin: 0; color: #fff; font-size: 28px; }
.contact-social-links { display: flex; gap: 10px; }
.contact-social-links a { display: grid; width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.3); border-radius: var(--card-radius); color: #fff; place-items: center; transition: background .2s ease, color .2s ease, transform .2s ease; }
.contact-social-links a i { color: #fff !important; transition: color .2s ease, transform .2s ease; }
.contact-social-links a:hover,
.contact-social-links a:focus-visible { border-color: var(--samddra-yellow); background: var(--samddra-yellow); color: var(--samddra-green); box-shadow: 0 8px 20px rgba(0,0,0,.18); transform: translateY(-2px); }
.contact-social-links a:hover i,
.contact-social-links a:focus-visible i { color: var(--samddra-green) !important; transform: scale(1.08); }

@media (max-width: 900px) {
    .contact-intro-grid,
    .contact-pathways-grid { grid-template-columns: 1fr; }
    .contact-office-card { max-width: 650px; }
    .contact-method-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .contact-intro { padding: 58px 0; }
    .contact-intro-copy h2,
    .contact-section-heading h2 { font-size: 36px; }
    .contact-method-card { padding: 20px; }
    .contact-social-inner { align-items: flex-start; flex-direction: column; }
}

.contact-form-section { padding: var(--section-space) 0; background: var(--site-soft); }
.contact-form-grid { display: grid; grid-template-columns: minmax(280px,.72fr) minmax(0,1fr); gap: clamp(45px,8vw,100px); align-items: start; }
.contact-form-grid::before,
.contact-form-grid::after { display: none; content: none; }
.contact-form-assurances { display: grid; gap: 12px; margin: 28px 0 0; padding: 0; color: var(--site-muted); font-size: 13px; list-style: none; }
.contact-form-assurances i { margin-right: 8px; color: var(--samddra-green); }
.contact-form-card { border: 1px solid var(--site-border); border-radius: var(--card-radius); padding: clamp(24px,4vw,38px); background: #fff; box-shadow: var(--site-shadow); }
.contact-form-card form { display: grid; gap: 18px; }
.contact-form-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.contact-form-card label { margin: 0; color: var(--site-ink); font-size: 12px; font-weight: 600; }
.contact-form-card label > span { color: #b62d2d; }
.contact-form-card input,
.contact-form-card select,
.contact-form-card textarea { display: block; width: 100%; margin-top: 8px; border: 1px solid #cedbd4; padding: 12px 13px; background: #fff; color: var(--site-ink); font-size: 14px; font-weight: 400; outline: 0; }
.contact-form-card input,
.contact-form-card select { height: 48px; }
.contact-form-card textarea { min-height: 145px; resize: vertical; }
.contact-form-card label small { display: block; margin-top: 6px; color: #b62d2d; font-weight: 500; }
.contact-submit { width: fit-content; margin-top: 2px; }
.contact-submit i { margin-left: 8px; }
.contact-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.contact-alert { display: flex; gap: 10px; margin-bottom: 20px; border-radius: var(--card-radius); padding: 14px 16px; align-items: flex-start; font-size: 13px; line-height: 1.55; }
.contact-alert-success { border: 1px solid #b9ddc6; background: #edf8f1; color: #176638; }
.contact-alert-error { border: 1px solid #efc3c3; background: #fff1f1; color: #962828; }
@media (max-width:900px) { .contact-form-grid { grid-template-columns:1fr; } }
@media (max-width:600px) { .contact-form-row { grid-template-columns:1fr; } .contact-submit { width:100%; } }

/* Modern services directory */
.services-page { overflow:clip; color:var(--site-ink); background:#fff; }
.services-page * { box-sizing:border-box; }
.services-eyebrow { display:inline-block; margin-bottom:12px; color:var(--samddra-green); font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.services-intro { padding:var(--section-space) 0; }
.services-intro-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.72fr); gap:clamp(45px,8vw,100px); align-items:start; }
.services-intro-grid::before,.services-intro-grid::after,.services-cta-inner::before,.services-cta-inner::after { display:none; content:none; }
.services-intro h2,.services-section-heading h2 { margin:0; color:var(--site-ink); font-size:clamp(36px,5vw,56px); font-weight:600; line-height:1.08; }
.services-intro p { margin:26px 0 18px; font-size:16px; }
.services-intro-link { color:var(--samddra-green); font-weight:700; }
.services-intro-link i { margin-left:6px; color:var(--samddra-yellow); }
.services-directory { padding:var(--section-space) 0; background:var(--site-soft); }
.services-section-heading { max-width:760px; margin-bottom:40px; }
.services-section-heading p { margin:14px 0 0; font-size:16px; }
.services-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.service-directory-card { display:flex; min-width:0; border:1px solid var(--site-border); border-radius:var(--card-radius); padding:30px; background:#fff; box-shadow:0 10px 32px rgba(12,61,40,.06); flex-direction:column; transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.service-directory-card:hover { border-color:rgba(0,71,73,.3); box-shadow:var(--site-shadow); transform:translateY(-5px); }
.service-directory-top { display:flex; gap:16px; align-items:center; justify-content:space-between; }
.service-directory-icon { display:grid; width:52px; height:52px; flex:0 0 52px; border-radius:var(--card-radius); background:#e2efe7; color:var(--samddra-green); font-size:20px; place-items:center; }
.service-directory-audience { border-radius:20px; padding:6px 10px; background:#f3f6f4; color:var(--site-muted); font-size:9px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.service-directory-card h3 { margin:24px 0 10px; font-size:23px; }
.service-directory-card > p { margin:0; font-size:14px; }
.service-directory-card ul { display:flex; flex-wrap:wrap; gap:8px 16px; margin:22px 0 26px; padding:0; color:#506158; font-size:11px; list-style:none; }
.service-directory-card li i { margin-right:6px; color:var(--samddra-green); }
.service-directory-card > a { margin-top:auto; color:var(--samddra-green); font-size:12px; font-weight:700; }
.service-directory-card > a i { margin-left:6px; color:var(--samddra-yellow); }
.services-journey { padding:var(--section-space) 0; background:#fff; }
.services-journey-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.services-journey-grid > a { display:grid; grid-template-columns:auto 1fr auto; gap:16px; align-items:center; border:1px solid var(--site-border); border-radius:var(--card-radius); padding:24px; color:var(--site-ink); transition:transform .2s ease,box-shadow .2s ease; }
.services-journey-grid > a:hover { box-shadow:var(--site-shadow); transform:translateY(-4px); }
.services-journey-grid > a > span { color:var(--samddra-yellow); font-size:24px; font-weight:700; }
.services-journey-grid strong,.services-journey-grid small { display:block; }
.services-journey-grid small { margin-top:5px; color:var(--site-muted); line-height:1.45; }
.services-journey-grid > a > i { color:var(--samddra-green); }
.services-cta { padding:70px 0; background:var(--samddra-green); }
.services-cta-inner { display:flex; gap:35px; align-items:center; justify-content:space-between; }
.services-cta .services-eyebrow { color:var(--samddra-yellow); }
.services-cta h2 { max-width:780px; margin:0; color:#fff; font-size:clamp(29px,4vw,44px); line-height:1.18; }
.services-cta .btn { flex-shrink:0; }
.services-cta .btn i { margin-left:7px; }
@media(max-width:900px) { .services-intro-grid { grid-template-columns:1fr; } .services-journey-grid { grid-template-columns:1fr; } .services-cta-inner { align-items:flex-start; flex-direction:column; } }
@media(max-width:700px) { .services-grid { grid-template-columns:1fr; } .service-directory-card { padding:24px; } .service-directory-audience { max-width:160px; text-align:right; } .services-cta .btn { width:100%; } }

/* Active navigation, accessible search and skip navigation */
.skip-link { position:fixed; z-index:200000; top:10px; left:10px; padding:12px 18px; border-radius:var(--card-radius); background:#fff; color:#003f41 !important; font-weight:700; box-shadow:0 8px 30px rgba(0,0,0,.25); transform:translateY(-150%); transition:transform .2s ease; }
.skip-link:focus { transform:translateY(0); outline:3px solid var(--samddra-yellow); outline-offset:2px; }
#main-content { scroll-margin-top:88px; }
header .navbar-main .navbar-nav > li.active > a { color:var(--samddra-green) !important; }
header .navbar-main .navbar-nav > li.active > a::before { width:100%; height:3px; background:var(--samddra-yellow); }
.nav-search-button { display:grid; width:44px; height:44px; margin:17px 0 17px 8px; border:0; padding:0; background:transparent; color:var(--samddra-green); cursor:pointer; place-items:center; }
.nav-search-button:hover,.nav-search-button:focus,.nav-search-button:active { color:var(--samddra-yellow); }
.site-search-dialog[hidden] { display:none; }
.site-search-dialog { position:fixed; z-index:150000; inset:0; display:grid; overflow-y:auto; padding:20px; background:rgba(0,0,0,.72); place-items:start center; }
.site-search-dialog-card { position:relative; width:min(760px,100%); margin-top:min(15vh,130px); border-radius:var(--card-radius); padding:clamp(28px,5vw,52px); background:#fff; box-shadow:0 28px 90px rgba(0,0,0,.32); }
.site-search-dialog-card > span { color:var(--samddra-green); font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.site-search-dialog-card h2 { margin:9px 45px 25px 0; color:var(--site-ink); font-size:clamp(28px,5vw,44px); }
.site-search-dialog-card form,.site-search-hero form { display:grid; grid-template-columns:1fr auto; gap:8px; }
.site-search-dialog-card input,.site-search-hero input { width:100%; height:54px; border:1px solid #cbd9d1; border-radius:var(--card-radius); padding:0 16px; font-size:15px; }
.site-search-dialog-card form button,.site-search-hero form button { display:inline-flex; gap:8px; align-items:center; justify-content:center; border:0; border-radius:var(--card-radius); padding:0 22px; background:var(--samddra-green); color:#fff; font-weight:700; }
.site-search-dialog-card > p { margin:14px 0 0; font-size:12px; }
.site-search-close { position:absolute; top:18px; right:18px; display:grid; width:40px; height:40px; border:0; border-radius:50%; background:var(--site-soft); color:var(--site-ink); place-items:center; }
body.site-search-open { overflow:hidden; }
.site-search-hero { padding:75px 0; background:var(--site-soft); }
.site-search-hero > .container { max-width:900px; }
.site-search-hero > .container > span { color:var(--samddra-green); font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.site-search-hero h1 { margin:10px 0 30px; font-size:clamp(36px,6vw,62px); }
.site-search-results { min-height:420px; padding:70px 0 90px; }
.site-search-results > .container { max-width:900px; }
.site-search-summary { margin-bottom:20px; color:var(--site-muted); }
.site-search-list { display:grid; gap:13px; }
.site-search-list article { border:1px solid var(--site-border); border-radius:var(--card-radius); padding:24px; background:#fff; box-shadow:0 8px 24px rgba(12,61,40,.05); }
.site-search-list article > span { color:var(--samddra-green); font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.site-search-list h2 { margin:7px 0 8px; font-size:22px; }
.site-search-list h2 a { color:var(--site-ink); }
.site-search-list p { margin:0 0 12px; }
.site-search-list article > a { color:var(--samddra-green); font-size:12px; font-weight:700; }
.site-search-empty { padding:70px 20px; text-align:center; }
.site-search-empty > i { color:#9aaba2; font-size:42px; }
.site-search-empty h2 { margin:18px 0 8px; }
*:focus-visible { outline:3px solid #d79d00; outline-offset:3px; }
@media(max-width:1199px) and (min-width:995px) { .nav-search-item { display:none !important; } }
@media(max-width:994px) { .nav-search-button { width:100%; margin:12px 0 0; } }
@media(max-width:600px) { .site-search-dialog-card form,.site-search-hero form { grid-template-columns:1fr; } .site-search-dialog-card form button,.site-search-hero form button { height:50px; } }

/* Local website assistant */
.site-assistant-launcher { position:fixed; z-index:10020; right:24px; bottom:24px; display:flex; align-items:center; gap:9px; min-height:52px; border:0; border-radius:28px; padding:0 20px; background:var(--samddra-green); box-shadow:0 12px 35px rgba(0,35,37,.28); color:#fff; font-weight:700; cursor:pointer; }
.scroll-top-mobile { right:32px; bottom:88px; }
.site-assistant-launcher i { color:var(--samddra-yellow); font-size:18px; }
.site-assistant-launcher:hover { transform:translateY(-2px); }
body.site-assistant-open .scroll-top-mobile { visibility:hidden !important; opacity:0 !important; pointer-events:none; }
.site-assistant { position:fixed; z-index:10030; right:24px; bottom:88px; width:min(390px,calc(100vw - 32px)); overflow:hidden; border:1px solid var(--site-border); border-radius:16px; background:#fff; box-shadow:0 24px 70px rgba(0,25,24,.28); color:var(--site-ink); }
.site-assistant[hidden] { display:none; }
.site-assistant > header { display:flex; align-items:flex-start; justify-content:space-between; padding:20px 20px 17px; background:var(--samddra-green); color:#fff; }
.site-assistant > header span { color:var(--samddra-yellow); font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.site-assistant > header h2 { margin:3px 0 0; color:#fff; font-size:22px; }
.site-assistant > header button { width:38px; height:38px; border:0; padding:0; background:transparent; color:#fff; cursor:pointer; }
.site-assistant-messages { height:330px; overflow-y:auto; padding:18px; background:#f5f8f6; }
.site-assistant-message { width:fit-content; max-width:88%; margin-bottom:12px; border-radius:12px; padding:11px 13px; font-size:13px; line-height:1.55; }
.site-assistant-message.is-bot { border:1px solid var(--site-border); border-bottom-left-radius:3px; background:#fff; }
.site-assistant-message.is-user { margin-left:auto; border-bottom-right-radius:3px; background:var(--samddra-green); color:#fff; }
.site-assistant-message.is-loading { color:var(--site-muted); }
.site-assistant-message.is-error { color:#8a2b22; }
.site-assistant-results { display:grid; gap:8px; margin:0 0 14px; }
.site-assistant-results a { display:block; border:1px solid var(--site-border); border-radius:10px; padding:11px 12px; background:#fff; color:var(--site-ink); }
.site-assistant-results a:hover { border-color:var(--samddra-green); }
.site-assistant-results strong,.site-assistant-results span { display:block; }
.site-assistant-results strong { color:var(--samddra-green); font-size:13px; }
.site-assistant-results span { margin-top:3px; color:var(--site-muted); font-size:11px; line-height:1.4; }
.site-assistant form { display:grid; grid-template-columns:1fr 48px; gap:8px; padding:12px; background:#fff; }
.site-assistant form input { min-width:0; height:46px; border:1px solid var(--site-border); border-radius:9px; padding:0 12px; }
.site-assistant form button { border:0; border-radius:9px; background:var(--samddra-yellow); color:#173318; cursor:pointer; }
.site-assistant form button i { color:#173318 !important; font-size:15px; }
.site-assistant-note { margin:0; padding:0 14px 13px; color:var(--site-muted); font-size:10px; text-align:center; }
.site-assistant-note a { color:var(--samddra-green); text-decoration:underline; }
@media(max-width:600px) { .site-assistant-launcher { right:16px; bottom:16px; } .scroll-top-mobile { right:24px; bottom:78px; } .site-assistant { right:16px; bottom:78px; } .site-assistant-messages { height:min(330px,45vh); } }

/* Personal member directory */
.member-directory { min-height:540px; background:#f5f8f6; }
.member-directory .content { padding-top:70px; padding-bottom:90px; }
.member-directory-heading { display:flex; gap:32px; align-items:flex-end; justify-content:space-between; margin-bottom:32px; }
.member-directory-eyebrow { display:block; margin-bottom:8px; color:var(--samddra-green); font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.member-directory-heading h2 { margin:0 0 8px; font-size:clamp(30px,4vw,44px); }
.member-directory-heading p { margin:0; }
.member-directory-back,.member-detail-back { flex-shrink:0; color:var(--samddra-green); font-size:12px; font-weight:700; }
.member-directory-back i,.member-detail-back i { margin-right:7px; color:var(--samddra-yellow); }
.member-directory-filters { display:grid; grid-template-columns:minmax(260px,1fr) 280px; gap:10px; margin-bottom:28px; border:1px solid var(--site-border); border-radius:var(--card-radius); padding:16px; background:#fff; box-shadow:0 10px 30px rgba(12,61,40,.05); }
.member-directory-filters label { position:relative; margin:0; }
.member-directory-filters label i { position:absolute; top:50%; left:16px; color:var(--samddra-green); transform:translateY(-50%); }
.member-directory-filters input,.member-directory-filters select { width:100%; height:50px; border:1px solid #ccd8d1; border-radius:7px; background:#fff; padding:0 15px; }
.member-directory-filters input { padding-left:43px; }
.member-directory-filters button { border:0; border-radius:7px; padding:0 25px; background:var(--samddra-green); color:#fff; font-weight:700; }
.member-directory-summary { margin:0 0 12px; color:var(--site-muted); font-size:12px; }
.member-table-wrap { overflow-x:auto; border:1px solid var(--site-border); border-radius:var(--card-radius); background:#fff; box-shadow:0 12px 35px rgba(12,61,40,.06); }
.member-table { width:100%; border-collapse:collapse; }
.member-table th { border-bottom:1px solid var(--site-border); padding:19px 24px; background:#e8f0eb; color:#355147; font-size:11px; letter-spacing:.08em; text-align:left; text-transform:uppercase; }
.member-table td { border-bottom:1px solid #e8eeea; padding:21px 24px; color:#43554d; font-size:14px; line-height:1.55; }
.member-table th,.member-table td,.member-table a,.member-table span { font-weight:400 !important; }
.member-table th:first-child,.member-table td:first-child { padding-left:34px; }
.member-table tbody tr:last-child td { border-bottom:0; }
.member-table tbody tr { transition:background .2s ease; }
.member-table tbody tr:hover { background:#f7faf8; }
.member-table td:first-child a { color:var(--site-ink); font-size:15px; font-weight:400; }
.member-category { display:inline-block; border-radius:20px; padding:5px 10px; background:#e5f0e9; color:var(--samddra-green); font-size:11px; font-weight:400; }
.member-view-link { white-space:nowrap; color:var(--samddra-green); font-weight:700; }
.member-view-link i { margin-left:5px; color:var(--samddra-yellow); }
.member-table-pagination { display:flex; min-height:72px; align-items:center; justify-content:space-between; border:1px solid var(--site-border); border-top:0; border-radius:0 0 var(--card-radius) var(--card-radius); padding:12px 20px; background:#fff; }
.member-table-wrap:has(+ .member-table-pagination) { border-radius:var(--card-radius) var(--card-radius) 0 0; }
.member-page-size label { display:flex; align-items:center; gap:9px; margin:0; color:var(--site-ink); font-size:13px; font-weight:400; }
.member-page-size select { width:27px; border:0; padding:0; background:transparent; color:transparent; cursor:pointer; }
.member-page-size select:focus { color:var(--site-ink); width:auto; }
.member-page-size label::after { content:""; width:0; height:0; margin-left:-26px; border-top:6px solid var(--site-ink); border-right:6px solid transparent; border-left:6px solid transparent; pointer-events:none; }
.member-pagination { display:flex; gap:12px; align-items:center; justify-content:flex-end; margin:0; }
.member-pagination a,.member-pagination > span.is-disabled { display:grid; width:38px; height:42px; border:0; background:transparent; color:var(--site-ink); font-size:20px; place-items:center; }
.member-pagination a:hover { color:var(--samddra-green); }
.member-pagination > span.is-disabled { color:#b7bdb9; }
.member-page-jump { margin:0; }
.member-page-jump input[type="number"] { width:58px; height:48px; border:1px solid #cbd2ce; border-radius:8px; padding:0 5px; background:#fff; color:var(--site-ink); font-size:16px; text-align:center; appearance:textfield; }
.member-page-jump input[type="number"]::-webkit-inner-spin-button,.member-page-jump input[type="number"]::-webkit-outer-spin-button { margin:0; appearance:none; }
.member-page-total { color:var(--site-ink); font-size:14px; white-space:nowrap; }
@media(max-width:600px) { .member-table-pagination { gap:12px; align-items:flex-start; flex-direction:column; padding:15px; } .member-pagination { width:100%; gap:5px; justify-content:space-between; } .member-pagination a,.member-pagination > span.is-disabled { width:32px; } .member-page-jump input[type="number"] { width:52px; } }
.member-directory-state { border:1px solid var(--site-border); border-radius:var(--card-radius); padding:65px 25px; background:#fff; text-align:center; }
.member-directory-state > i { color:#91a69a; font-size:40px; }
.member-directory-state h2 { margin:17px 0 7px; }
.member-directory-state .btn { margin-top:15px; }
.member-detail-page { min-height:650px; background:#f5f8f6; }
.member-detail-hero { padding:65px 0 75px; background:var(--samddra-green); color:#fff; }
.member-detail-hero .member-detail-back { display:inline-block; margin-bottom:42px; color:#fff; }
.member-detail-hero .member-directory-eyebrow { color:var(--samddra-yellow); }
.member-detail-hero h1 { margin:4px 0 8px; color:#fff; font-size:clamp(38px,6vw,62px); }
.member-detail-hero p { margin:0; color:#d8e7de; font-size:16px; }
.member-detail-content { padding-top:0; padding-bottom:90px; }
.member-detail-content > .member-directory-state { margin-top:60px; }
.member-profile-card { max-width:850px; margin:-34px auto 0; overflow:hidden; border:1px solid var(--site-border); border-radius:var(--card-radius); background:#fff; box-shadow:0 20px 60px rgba(0,45,38,.13); }
.member-profile-status { display:flex; gap:14px; align-items:center; padding:24px 30px; background:#e4f0e8; }
.member-profile-status > i { display:grid; width:42px; height:42px; border-radius:50%; background:var(--samddra-green); color:var(--samddra-yellow); place-items:center; }
.member-profile-status span,.member-profile-status strong { display:block; }
.member-profile-status span { color:var(--site-muted); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.member-profile-status strong { margin-top:2px; color:var(--samddra-green); font-size:18px; }
.member-profile-card dl { display:grid; grid-template-columns:1fr 1fr; margin:0; padding:12px 30px; }
.member-profile-card dl div { border-bottom:1px solid var(--site-border); padding:20px 0; }
.member-profile-card dl div:nth-child(odd) { padding-right:25px; }
.member-profile-card dl div:nth-child(even) { border-left:1px solid var(--site-border); padding-left:25px; }
.member-profile-card dt { color:var(--site-muted); font-size:10px; letter-spacing:.07em; text-transform:uppercase; }
.member-profile-card dd { margin:5px 0 0; color:var(--site-ink); font-size:15px; font-weight:700; }
.member-profile-note { margin:0; padding:20px 30px 26px; color:var(--site-muted); font-size:11px; }
.member-profile-note i { margin-right:7px; color:var(--samddra-green); }
@media(max-width:760px) { .member-directory-heading { align-items:flex-start; flex-direction:column; } .member-directory-filters { grid-template-columns:1fr; } .member-directory-filters button { height:50px; } .member-table thead { display:none; } .member-table,.member-table tbody,.member-table tr,.member-table td { display:block; } .member-table tr { border-bottom:1px solid var(--site-border); padding:13px 18px; } .member-table td { display:flex; gap:18px; justify-content:space-between; border:0; padding:7px 0; text-align:right; } .member-table td[data-label]::before { content:attr(data-label); color:var(--site-muted); font-size:9px; font-weight:700; letter-spacing:.06em; text-align:left; text-transform:uppercase; } .member-profile-card dl { grid-template-columns:1fr; } .member-profile-card dl div:nth-child(odd),.member-profile-card dl div:nth-child(even) { border-left:0; padding:18px 0; } }

/* Refined personal member profile */
.member-detail-hero { position:relative; overflow:hidden; padding:52px 0 105px; background:linear-gradient(125deg,#003f41 0%,#075d52 100%); }
.member-detail-hero::after { content:""; position:absolute; top:-180px; right:-90px; width:430px; height:430px; border:70px solid rgba(255,255,255,.035); border-radius:50%; }
.member-detail-hero .container { position:relative; z-index:1; }
.member-detail-hero .member-detail-back { margin-bottom:45px; }
.member-detail-hero h1 { font-size:clamp(36px,5vw,54px); }
.member-profile-card-v2 { position:relative; max-width:1020px; margin-top:-55px; border-radius:14px; }
.member-profile-card-v2::before { content:""; position:absolute; z-index:2; top:0; left:0; width:100%; height:4px; background:var(--samddra-yellow); }
.member-profile-header { display:grid; grid-template-columns:auto 1fr auto; gap:20px; align-items:center; padding:30px 34px; border-bottom:1px solid var(--site-border); }
.member-profile-avatar { display:grid; width:72px; height:72px; border-radius:50%; background:var(--samddra-green); box-shadow:inset 0 0 0 5px rgba(255,255,255,.12); color:var(--samddra-yellow); font-size:22px; font-weight:700; letter-spacing:.04em; place-items:center; }
.member-profile-identity > span,.member-profile-section-heading > span { color:var(--samddra-green); font-size:9px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.member-profile-identity h2 { margin:4px 0 6px; font-size:clamp(25px,4vw,34px); }
.member-profile-identity p { margin:0; color:var(--site-muted); font-size:12px; }
.member-profile-identity p i { margin-right:6px; color:var(--samddra-green); }
.member-profile-card-v2 .member-profile-status { border:1px solid #c8e1d1; border-radius:9px; padding:13px 17px; background:#edf7f0; }
.member-profile-card-v2 .member-profile-status > i { width:32px; height:32px; font-size:12px; }
.member-profile-card-v2 .member-profile-status span { font-size:8px; }
.member-profile-card-v2 .member-profile-status strong { font-size:15px; }
.member-profile-body { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(270px,.75fr); gap:35px; padding:36px 34px; }
.member-profile-section-heading h3 { margin:5px 0 18px; font-size:22px; }
.member-profile-details dl { display:grid; grid-template-columns:1fr 1fr; gap:0 26px; margin:0; padding:0; }
.member-profile-details dl div,.member-profile-details dl div:nth-child(odd),.member-profile-details dl div:nth-child(even) { border-width:1px 0 0; border-style:solid; border-color:var(--site-border); padding:18px 0; }
.member-profile-details dt { color:var(--site-muted); font-size:9px; letter-spacing:.06em; text-transform:uppercase; }
.member-profile-details dt i { width:17px; color:var(--samddra-green); font-size:12px; }
.member-profile-details dd { margin:7px 0 0; font-size:14px; }
.member-profile-details dd > span:not(.member-profile-category) { margin:0 4px; color:var(--site-muted); font-size:10px; font-weight:400; }
.member-profile-category { display:inline-block; border-radius:18px; padding:5px 10px; background:#e5f0e9; color:var(--samddra-green); font-size:10px; }
.member-verification-card { position:relative; overflow:hidden; border-radius:11px; padding:27px; background:var(--samddra-green); color:#fff; }
.member-verification-card::after { content:""; position:absolute; right:-38px; bottom:-48px; width:135px; height:135px; border:28px solid rgba(255,255,255,.04); border-radius:50%; }
.member-verification-icon { position:relative; display:grid; width:53px; height:53px; margin-bottom:22px; border-radius:50%; background:rgba(255,255,255,.11); color:var(--samddra-yellow); font-size:23px; place-items:center; }
.member-verification-icon > span { position:absolute; right:-3px; bottom:-2px; display:grid; width:20px; height:20px; border:2px solid var(--samddra-green); border-radius:50%; background:var(--samddra-yellow); color:var(--samddra-green); font-size:8px; place-items:center; }
.member-verification-card > span { color:var(--samddra-yellow); font-size:9px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.member-verification-card h3 { margin:6px 0 9px; color:#fff; font-size:21px; }
.member-verification-card p { color:#cfe1d8; font-size:12px; line-height:1.65; }
.member-verification-date { position:relative; z-index:1; margin-top:20px; border-top:1px solid rgba(255,255,255,.14); padding-top:17px; }
.member-verification-date small,.member-verification-date strong { display:block; }
.member-verification-date small { color:#9fc1b3; font-size:9px; letter-spacing:.07em; text-transform:uppercase; }
.member-verification-date strong { margin-top:3px; color:#fff; font-size:14px; }
.member-profile-footer { display:flex; gap:25px; align-items:center; justify-content:space-between; border-top:1px solid var(--site-border); padding:20px 34px; background:#f8faf9; }
.member-profile-footer p { margin:0; color:var(--site-muted); font-size:10px; }
.member-profile-footer p i { margin-right:6px; color:var(--samddra-green); }
.member-profile-footer a { flex-shrink:0; color:var(--samddra-green); font-size:11px; font-weight:700; }
.member-profile-footer a i { margin-left:6px; color:var(--samddra-yellow); }
@media(max-width:760px) { .member-detail-hero { padding-bottom:85px; } .member-profile-card-v2 { margin-top:-38px; } .member-profile-header { grid-template-columns:auto 1fr; padding:25px 22px; } .member-profile-avatar { width:58px; height:58px; font-size:18px; } .member-profile-card-v2 .member-profile-status { grid-column:1/-1; justify-content:center; } .member-profile-body { grid-template-columns:1fr; padding:28px 22px; } .member-profile-details dl { grid-template-columns:1fr; } .member-profile-footer { align-items:flex-start; flex-direction:column; padding:20px 22px; } }

/* Business member directory and profile */
.business-active-status { color:var(--samddra-green); font-size:12px; font-weight:700; }
.business-active-status i { display:inline-grid; width:19px; height:19px; margin-right:5px; border-radius:50%; background:#e5f0e9; color:var(--samddra-green); font-size:8px; place-items:center; }
.business-profile-logo { display:grid; width:82px; height:82px; overflow:hidden; border:1px solid var(--site-border); border-radius:11px; background:#f5f8f6; color:var(--samddra-green); font-size:30px; place-items:center; }
.business-profile-logo img { width:100%; height:100%; object-fit:contain; }
.business-profile-body { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(270px,.75fr); gap:35px; padding:36px 34px; }
.business-profile-about { margin-bottom:26px; }
.business-profile-about p { margin:10px 0 0; color:#4d6057; font-size:14px; line-height:1.75; }
.business-info-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.business-info-grid > div { position:relative; min-width:0; border:1px solid var(--site-border); border-radius:9px; padding:18px 16px 18px 46px; background:#fafcfb; }
.business-info-grid > div > i { position:absolute; top:20px; left:17px; color:var(--samddra-green); }
.business-info-grid span,.business-info-grid strong { display:block; }
.business-info-grid span { color:var(--site-muted); font-size:8px; letter-spacing:.07em; text-transform:uppercase; }
.business-info-grid strong { margin-top:5px; overflow-wrap:anywhere; color:var(--site-ink); font-size:12px; line-height:1.5; }
.business-info-grid strong a { color:var(--samddra-green); }
@media(max-width:760px) { .business-profile-logo { width:62px; height:62px; } .business-profile-body { grid-template-columns:1fr; padding:28px 22px; } .business-info-grid { grid-template-columns:1fr; } }

/* Keep membership tables intact and horizontally scrollable on small screens */
.member-table-wrap { overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:thin; scrollbar-color:var(--samddra-green) #e5ece8; }
.member-table-wrap::-webkit-scrollbar { height:8px; }
.member-table-wrap::-webkit-scrollbar-track { background:#e5ece8; }
.member-table-wrap::-webkit-scrollbar-thumb { border-radius:8px; background:var(--samddra-green); }
@media(max-width:760px) {
    .member-table { display:table; min-width:820px; }
    .member-table thead { display:table-header-group; }
    .member-table tbody { display:table-row-group; }
    .member-table tr { display:table-row; border:0; padding:0; }
    .member-table th,.member-table td { display:table-cell; padding:17px 20px; text-align:left; white-space:nowrap; }
    .member-table th:first-child,.member-table td:first-child { padding-left:26px; }
    .member-table td[data-label]::before { content:none; }
}
/* Public campaigns */
.campaign-public-page{background:#fff;color:#263548}.campaign-page-header{background-position:center}.campaign-province-section,.campaign-results-section,.campaign-detail-section{padding:70px 0 90px}.campaign-province-layout{display:grid;grid-template-columns:minmax(280px,460px) minmax(260px,1fr);gap:80px;align-items:start}.campaign-eyebrow,.campaign-open-label{display:inline-block;color:#e98200;font-size:12px;font-weight:400;letter-spacing:.09em;text-transform:uppercase}.campaign-province-layout h2{margin:8px 0 10px;font-size:38px;font-weight:400}.campaign-intro{max-width:570px;margin:0;color:#6b7889;font-size:16px;line-height:1.65}.campaign-province-list{margin-top:28px;border-top:1px solid #e1e7ed}.campaign-province-list>a{display:flex;min-height:57px;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #e1e7ed;color:#e98200;font-size:17px;text-decoration:none;transition:padding .18s ease,background .18s ease}.campaign-province-list>a:hover{padding-left:10px;background:#fffaf3}.campaign-province-list>a span{display:flex;align-items:center;gap:9px}.campaign-province-list small{min-width:28px;padding:4px 7px;border-radius:99px;background:#fff2df;color:#a75e06;text-align:center}.campaign-public-callout{margin-top:42px;padding:30px;border-radius:18px;background:linear-gradient(145deg,#075c5e,#063f41);color:#fff}.campaign-public-callout>i{margin-bottom:19px;color:#ffc06a;font-size:35px}.campaign-public-callout h3{margin:0 0 10px;color:#fff;font-size:24px;font-weight:400}.campaign-public-callout p{margin:0 0 20px;color:#d8eeee;line-height:1.7}.campaign-public-callout a{display:inline-flex;padding:10px 14px;border:1px solid rgba(255,255,255,.7);border-radius:8px;color:#fff;text-decoration:none}.campaign-api-notice{margin-top:25px;padding:13px 15px;border-radius:8px;background:#fff6e7;color:#8a570d}.campaign-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:27px;color:#075c5e;text-decoration:none}.campaign-result-list{display:grid;gap:14px}.campaign-result-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;align-items:center;padding:23px;border:1px solid #e0e7ed;border-radius:14px;background:#fff;color:#263548;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.campaign-result-card:hover{transform:translateY(-2px);border-color:#a7c5c3;box-shadow:0 10px 28px rgba(28,49,61,.08)}.campaign-result-card h2{margin:6px 0 9px;font-size:21px;font-weight:400}.campaign-result-card>i{color:#e98200;font-size:20px}.campaign-result-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:#6c798b;font-size:13px}.campaign-result-meta span{display:inline-flex;align-items:center;gap:6px}.campaign-result-meta i{color:#075c5e}.campaign-empty{padding:55px 20px;border:1px dashed #bdc9d2;border-radius:15px;background:#f6f8f8;text-align:center}.campaign-empty>i{display:block;margin-bottom:12px;color:#91a0af;font-size:30px}.campaign-empty h2{margin:0 0 7px;font-size:21px;font-weight:400}.campaign-empty p{margin:0 0 16px;color:#6c798b}.campaign-empty a{color:#075c5e}.campaign-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start}.campaign-detail-card,.campaign-apply-card{border:1px solid #e0e7ed;border-radius:16px;background:#fff}.campaign-detail-card{overflow:hidden}.campaign-detail-head{padding:29px;background:linear-gradient(145deg,#f0f7f6,#fff)}.campaign-detail-head h1{margin:8px 0 15px;font-size:38px;font-weight:400;line-height:1.2}.campaign-detail-copy{padding:29px}.campaign-detail-copy h2,.campaign-apply-card h2{margin:0 0 10px;font-size:21px;font-weight:400}.campaign-detail-copy p{margin:0;color:#4e5e71;line-height:1.75}.campaign-apply-card{position:sticky;top:125px;padding:23px}.campaign-apply-card p{margin:0 0 18px;color:#6c798b;line-height:1.65}.campaign-apply-button{display:flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border-radius:9px;background:#e98200;color:#fff;text-decoration:none}.campaign-apply-button:hover{background:#c96f00;color:#fff}.campaign-register-link{display:block;margin-top:15px;color:#075c5e;font-size:13px;text-align:center}.campaign-apply-card small{display:block;margin-top:10px;color:#8290a0;text-align:center}@media(max-width:800px){.campaign-province-layout,.campaign-detail-layout{grid-template-columns:1fr;gap:24px}.campaign-public-callout{margin-top:5px}.campaign-apply-card{position:static}.campaign-province-section,.campaign-results-section,.campaign-detail-section{padding:48px 0 65px}}@media(max-width:520px){.campaign-province-layout h2{font-size:31px}.campaign-detail-head,.campaign-detail-copy{padding:21px}.campaign-detail-head h1{font-size:29px}.campaign-result-card{padding:18px}}
