/*
Theme Name: Medtech
Theme URI: https://medtechmentor.co.uk/
Template: hello-elementor
Author: E.G. Web Design
Author URI: http://elliottgreenman.com/
Version: 3.3.1770976164
Updated: 2026-02-13 09:49:24
*/

/* =========================================================
   GLOBAL
   ========================================================= */

:root {
    --header-height: 96px;
}
body { margin: 0; }
li {
    padding-bottom: 15px;
    transition: color 0.3s ease-in-out;
}

li::marker {
    color: currentColor;
}

ul {
    padding-left: 25px;
}


/* =========================================================
   SINGLE POST STYLING
   ========================================================= */

.elementor-toc__list-item-text-wrapper i,
.elementor-toc__list-item-text-wrapper:before {
    color: var(--marker-color);
    margin-inline-end: 8px;
    margin-block-start: 10px;
}

.elementor-toc__list-item-text-wrapper svg {
    display: none !important;
    opacity: 0;
}

.elementor-toc__list-wrapper {
    list-style: inherit;
    padding: 0 0 0 20px;
}

.elementor-toc__list-item-text-wrapper {
    align-items: start;
}

.elementor-widget-theme-post-content p + h2,
.wp-block-paragraph + h2 {
    margin-top: 32px;
}

.elementor-toc__list-item {
    margin-bottom: 0px;
}

.elementor-widget-theme-post-content p + h3,
.wp-block-paragraph + h3 {
    margin-top: 20px;
}

.elementor-toc__header {
    padding-left: 25px;
    padding: 10px;
    margin-bottom: 10px;
}

.sidebar ul li:hover,
.sidebar ul li a:hover {
    color: var(--e-global-color-df4f924);
    text-decoration: none !important;
}

.sidebar ul li a,
.sidebar ul li a::marker {
    transition: 0.3s ease-in-out;
    color: var(--e-global-color-primary);
    font-size: var(--e-global-typography-daffe12-font-size) !important;
}


/* =========================================================
   SECTION BACKGROUNDS — Dark
   ========================================================= */

.main-hero {
    background-color: #364F63;
    background-image:
        radial-gradient(circle at 50% 100%, #364F63 0%, transparent 90%),
        radial-gradient(circle at 20% 20%, #1B2832 40%, transparent 90%),
        radial-gradient(circle at 0% 50%, #364F63 0%, transparent 105%);
    background-blend-mode: normal, normal, normal;
}

.sectionbg2 {
    background-color: #364F63;
    background-image:
        radial-gradient(circle at 40% 10%, #1B2832 0%, transparent 50%),
        radial-gradient(circle at 80% 0%, #364F63 0%, transparent 70%),
        radial-gradient(circle at 0% 50%, #1B2832 0%, transparent 80%);
    background-blend-mode: normal, normal, normal;
}

.sectionbg1 {
    background-color: #F0C808;
    background-image:
        radial-gradient(circle at 30% 68%, #94B0DA 0%, transparent 145%),
        radial-gradient(circle at 66% 7%, #364F63 0%, transparent 84%),
        radial-gradient(circle at 18% 36%, #1B2832 0%, transparent 85%);
    background-blend-mode: normal, normal, normal;
}


/* =========================================================
   SECTION BACKGROUNDS — Light
   ========================================================= */

.lightbg2 {
    background-color: hsla(206, 12%, 72%, 1);
    background-image:
        radial-gradient(circle at 40% 20%, hsla(210, 100%, 93%, 1) 0%, transparent 50%),
        radial-gradient(circle at 80% 0%, hsla(210, 28%, 97%, 1) 0%, transparent 50%),
        radial-gradient(circle at 0% 50%, hsla(210, 100%, 94%, 1) 0%, transparent 107%);
    background-blend-mode: normal, normal, normal;
}

.lightbg3 {
    background-color: hsla(206, 0%, 95%, 1);
    background-image:
        radial-gradient(circle at 40% 20%, hsla(210, 100%, 93%, 1) 0%, transparent 50%),
        radial-gradient(circle at 80% 0%, hsla(210, 28%, 97%, 1) 0%, transparent 50%),
        radial-gradient(circle at 0% 50%, hsla(210, 100%, 94%, 1) 0%, transparent 107%);
    background-blend-mode: normal, normal, normal;
}

.lightbg4 {
    background-color: hsla(0, 0%, 100%, 1);
    background-image:
        radial-gradient(circle at 40% 20%, hsla(210, 100%, 93%, 1) 0%, transparent 50%),
        radial-gradient(circle at 90.13% 10.73%, hsla(210, 28%, 97%, 1) 0%, transparent 84%),
        radial-gradient(circle at 71.34% 55.25%, hsla(210, 100%, 94%, 1) 0%, transparent 146%);
    background-blend-mode: normal, normal, normal;
}


/* =========================================================
   GRAIN TEXTURE OVERLAY
   ========================================================= */

.gdbg::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    opacity: .18;
    mix-blend-mode: overlay;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.43' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size: 220px 220px;
}

.gdbg > div {
    z-index: 1;
}


/* =========================================================
   LAYOUT UTILITIES (desktop only)
   ========================================================= */

@media (min-width: 1025px) {
    .rmad { margin-right: auto; }
    .lmad { margin-left: auto; }
    .bmad { margin-bottom: 100px; }
}


/* =========================================================
   HEADER
   ========================================================= */

header .site-header {
    background: rgba(246, 248, 250, 0.03);
    backdrop-filter: blur(33px);
    -webkit-backdrop-filter: blur(33px);
    height: var(--header-height);
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
}


/* =========================================================
   NAVIGATION — Hamburger (mobile)
   ========================================================= */

.main-menu .elementor-menu-toggle {
    position: relative;
    width: 33px !important;
    height: 33px !important;
}

.main-menu .elementor-menu-toggle svg,
.main-menu .elementor-menu-toggle i {
    opacity: 0 !important;
}

.main-menu .elementor-menu-toggle {
    background-image: linear-gradient(#F6F8FA, #F6F8FA);
    background-repeat: no-repeat;
    background-size: 28px 3px;
    background-position: center;
    transition: background-size 140ms ease;
}

.main-menu .elementor-menu-toggle::before,
.main-menu .elementor-menu-toggle::after {
    content: "";
    position: absolute;
    left: 50%;
    width: 28px;
    height: 3px;
    background: #F6F8FA;
    border-radius: 0;
    transform: translateX(-50%);
    transition: transform 180ms ease, top 180ms ease, opacity 140ms ease;
}

.main-menu .elementor-menu-toggle::before { top: 6px; }
.main-menu .elementor-menu-toggle::after  { top: 24px; }

.main-menu .elementor-menu-toggle.elementor-active {
    background-size: 0 3px;
}

.main-menu .elementor-menu-toggle.elementor-active::before {
    top: 16.5px;
    transform: translateX(-50%) rotate(45deg);
}

.main-menu .elementor-menu-toggle.elementor-active::after {
    top: 16.5px;
    transform: translateX(-50%) rotate(-45deg);
}


/* =========================================================
   NAVIGATION — Sub-menu arrows & dropdowns
   ========================================================= */

.main-menu .elementor-nav-menu .sub-arrow {
    padding: 3px 4px 0;
}

.main-menu .elementor-nav-menu .sub-arrow .e-font-icon-svg.fa-svg-chevron-down {
    height: 0.6em;
    width: 0.6em;
}

.main-menu .elementor-nav-menu .sub-menu {
    width: fit-content !important;
    min-width: fit-content !important;
}

.main-menu .elementor-nav-menu .sub-menu li {
    padding-right: 15px;
}

.elementor-nav-menu.sm li > ul {
    opacity: 0;
    transition: opacity 90ms ease-out;
    will-change: opacity;
}

.price .elementor-widget-button {
    margin-top: auto;
}

.elementor-nav-menu.sm li > ul.sm-show { opacity: 1; }
.elementor-nav-menu.sm li > ul.sm-hide { opacity: 0; }

@media (min-width: 1025px) {
    header .site-header {
        height: var(--header-height);
    }

    .elementor-nav-menu.sm li > ul.sub-menu {
        opacity: 0;
        transition: opacity 200ms ease;
        will-change: opacity;
        width: fit-content;
    }

    .elementor-nav-menu.sm li > ul.sub-menu.sm-show { opacity: 1; }
    .elementor-nav-menu.sm li > ul.sub-menu.sm-hide { opacity: 0; }
}


/* =========================================================
   FORM UTILITY
   ========================================================= */

.fsct input,
.fsct button {
    height: 46px;
}

.fsct {
    font-size: 22px !important;
}