@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
:root{--gl-navy:#0e0024;--gl-blue:#006cb1;--gl-deep:#0b3a6b;--cassiopeia-color-primary:#0b3a6b;--cassiopeia-color-hover:#006cb1;--cassiopeia-color-link:#006cb1;--link-color:#006cb1;--bs-primary:#006cb1;}
body,.btn,input,select,textarea,button{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;}
body{color:#0e0024;background:#f5f7fb;}
h1,h2,h3,h4{color:#0e0024;font-weight:700;letter-spacing:-.01em;}
.container-header{background-image:linear-gradient(135deg,#0e0024 0%,#0a2350 55%,#0b3a6b 100%)!important;background-color:#0e0024;border-bottom:3px solid #006cb1;box-shadow:none;padding:.6rem 0;}
.container-header .navbar-brand{margin:0;}
.container-header .brand-logo{display:block;width:260px;max-width:70vw;height:54px;background:url(https://www.glyndwrconsulting.co.uk/images/logo_horizontal23.png) no-repeat left center/contain;margin-left:.75rem;}
.container-header .brand-logo img{opacity:0;width:100%;height:100%;}
.btn-primary,.gcrm-btn-primary{background-color:#006cb1;border-color:#006cb1;color:#fff;}
.btn-primary:hover,.btn-primary:focus{background-color:#0b3a6b;border-color:#0b3a6b;}
.container-main .com-content-article__body,.container-component{max-width:1180px;}
.mod-breadcrumbs__wrapper,.breadcrumb{background:transparent;}
/* staff landing page */
.gl-hero{background:linear-gradient(135deg,#0e0024 0%,#0a2350 55%,#0b3a6b 100%);color:#fff;border-radius:14px;padding:2.25rem 2rem;margin:0 0 1.75rem;}
.gl-hero h1{color:#fff;margin:0 0 .5rem;font-size:clamp(1.6rem,4vw,2.3rem);}
.gl-hero p{margin:0;color:#d6e2f3;font-size:1.05rem;max-width:46rem;}
.gl-pill{display:inline-block;border:1px solid #3a8fd1;border-radius:999px;padding:.2rem .8rem;font-size:.8rem;color:#cfe4f7;margin-bottom:.9rem;}
.gl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin:0 0 2rem;}
.gl-card{display:block;background:#fff;border:1px solid #dbe3ef;border-radius:12px;padding:1.25rem 1.25rem 1.1rem;text-decoration:none;color:#0e0024;transition:box-shadow .15s,transform .15s,border-color .15s;}
.gl-card:hover,.gl-card:focus{box-shadow:0 8px 22px rgba(11,58,107,.14);transform:translateY(-2px);border-color:#006cb1;color:#0e0024;text-decoration:none;}
.gl-card .gl-ico{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;background:#e6f1fa;color:#006cb1;font-size:1.25rem;margin-bottom:.7rem;font-weight:700;}
.gl-card strong{display:block;font-size:1.05rem;margin-bottom:.2rem;}
.gl-card span.gl-sub{color:#566074;font-size:.9rem;line-height:1.4;display:block;}
.gl-card.gl-primary{background:#006cb1;border-color:#006cb1;color:#fff;}
.gl-card.gl-primary .gl-ico{background:rgba(255,255,255,.18);color:#fff;}
.gl-card.gl-primary span.gl-sub{color:#dcecf8;}
.gl-card.gl-primary:hover{background:#0b3a6b;border-color:#0b3a6b;color:#fff;}
.gl-help{background:#fff;border:1px solid #dbe3ef;border-radius:12px;padding:1.5rem 1.5rem 1.2rem;}
.gl-help h2{font-size:1.25rem;margin-top:0;}
.gl-help ol{padding-left:1.2rem;margin:.5rem 0 1rem;}
.gl-help li{margin-bottom:.45rem;}
.gl-note{background:#fff7e6;border:1px solid #f0d9a6;border-radius:8px;padding:.7rem .9rem;font-size:.92rem;}
.com-content-article .article-info,.mod-breadcrumbs__wrapper,.container-breadcrumbs{display:none!important;}
.container-component{padding-top:1.25rem;}
/* SP Page Builder staff home */
.sppb-addon-feature a,.sppb-addon-feature a:hover{text-decoration:none;}
.sppb-addon-feature .sppb-addon-title{margin-top:.9rem;}
.sppb-addon-heading .sppb-addon-title{margin-bottom:.5rem;}
.sppb-section .sppb-container-inner{max-width:none;}

/* ===== wider page content ===== */
.site-grid{grid-template-columns:[full-start] minmax(1rem,1fr) [main-start] repeat(4,minmax(0,28rem)) [main-end] minmax(1rem,1fr) [full-end];}
.container-main .com-content-article__body,.container-component{max-width:none;}
.sppb-section .sppb-row-container{max-width:none;padding-left:0;padding-right:0;}
.gcrm-table td.proj{max-width:520px;}

/* ===== header: top bar, logo and menu ===== */
.container-header{display:flex;flex-wrap:wrap;align-items:center;padding:0;}
.container-header .container-topbar{flex:0 0 100%;background:#08001a;color:#cfe4f7;font-size:.85rem;padding:.3rem 1.25rem;text-align:right;border-bottom:1px solid rgba(255,255,255,.08);}
.container-topbar .jmodedit,.container-topbar .mod-login-logout .visually-hidden{display:none;}
.container-topbar form:has(input[name=username]){display:none;}
.container-topbar .mod-login-logout{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;margin:0;}
.container-topbar .mod-login-logout__login-greeting,.container-topbar .login-greeting{margin:0;color:#cfe4f7;}
.container-topbar .mod-login-logout__button{margin:0;}
.container-topbar .btn{background:transparent;border:1px solid #3a8fd1;color:#fff;font-size:.8rem;padding:.15rem .8rem;border-radius:999px;}
.container-topbar .btn:hover{background:#006cb1;border-color:#006cb1;}
.container-header .grid-child:not(.container-nav):not(.container-topbar){flex:0 0 auto;padding:.7rem 0;}
.container-header .container-nav{flex:1 1 auto;margin-left:auto;padding:0 1rem 0 0;display:flex;justify-content:flex-end;}
.container-header .container-nav .mod-menu{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.25rem;list-style:none;margin:0;padding:0;}
.container-header .container-nav .mod-menu li{margin:0;}
.container-header .container-nav .mod-menu a{display:block;color:#fff;font-weight:500;font-size:.95rem;padding:.55rem .95rem;border-radius:8px;text-decoration:none;white-space:nowrap;}
.container-header .container-nav .mod-menu a:hover,.container-header .container-nav .mod-menu a:focus{background:rgba(255,255,255,.14);color:#fff;}
.container-header .container-nav .mod-menu .active>a,.container-header .container-nav .mod-menu .current>a{background:#006cb1;color:#fff;}
.container-header .container-nav .item-108{order:-1;}
@media (max-width:767px){.container-header .container-nav{flex:0 0 100%;justify-content:flex-start;padding:0 .75rem .75rem;}.container-header .container-nav .mod-menu{justify-content:flex-start;}.container-header .container-topbar{text-align:left;}}

/* ===== sign-in page ===== */
body.view-login main{background:transparent;}
body.view-login .com-users-login{max-width:440px;margin:2.5rem auto 3rem;}
body.view-login .com-users-login__form{background:#fff;border:1px solid #dbe3ef;border-radius:14px;padding:2rem 2rem 1.5rem;box-shadow:0 10px 30px rgba(11,58,107,.12);}
body.view-login .com-users-login__form::before{content:"Staff sign-in";display:block;font-size:1.6rem;font-weight:700;color:#0e0024;margin-bottom:1rem;}
body.view-login .com-users-login__form::after{content:"Authorised Glyndwr Consulting staff only.";display:block;text-align:center;color:#566074;font-size:.85rem;margin-top:1rem;}
body.view-login .com-users-login__form .control-group{margin-bottom:1rem;}
body.view-login .com-users-login__form .control-label{width:100%;max-width:none;float:none;padding:0 0 .25rem;}
body.view-login .com-users-login__form .controls{margin-left:0;width:100%;}
body.view-login .com-users-login__form .form-control{border-radius:8px;padding:.6rem .75rem;}
body.view-login .com-users-login__form .btn-primary{background:#006cb1;border-color:#006cb1;width:100%;padding:.65rem;border-radius:8px;font-weight:600;}
body.view-login .com-users-login__form .btn-primary:hover{background:#0b3a6b;border-color:#0b3a6b;}
body.view-login .com-users-login__form .btn-secondary,body.view-login .com-users-login__form .plg_system_webauthn_login_button{width:100%;border-radius:8px;margin-bottom:.75rem;}
body.view-login .com-users-login__options{max-width:440px;margin:1rem auto 2rem;}
body.view-login .com-users-login__options .list-group-item{border:0;background:transparent;padding:.25rem 0;text-align:center;}
body.view-login .container-sidebar-right,body.view-login .container-header .container-nav{display:none;}
/* header-fit */
.container-header>.grid-child{width:auto!important;max-width:none;margin:0;}
.container-header>.grid-child:not(.container-nav){padding-left:1.25rem;}
.container-header>.container-nav{flex:1 1 0;min-width:0;}
.jmodedit{display:none!important;}
.sppb-section:first-child .sppb-row-container{padding-left:2rem;padding-right:2rem;}
/* menu-row */
.container-header .container-nav .mod-menu{flex-direction:row!important;align-items:center;}
.container-header .container-nav .mod-menu li{width:auto;}
.container-header .container-nav .mod-menu a{padding:.5rem .8rem;}
@media (max-width:991px){.container-header>.grid-child:not(.container-nav){flex:0 0 100%;}.container-header>.container-nav{flex:0 0 100%;justify-content:flex-start;padding:0 .75rem .75rem;}.container-header .container-nav .mod-menu{justify-content:flex-start;}}
/* card-click: whole feature box is clickable */
.sppb-addon-feature{position:relative;cursor:pointer;transition:box-shadow .15s,transform .15s;}
.sppb-addon-feature:hover{box-shadow:0 10px 24px rgba(11,58,107,.18);transform:translateY(-2px);}
.sppb-addon-feature .sppb-feature-box-title a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:12px;}
.sppb-addon-feature .sppb-feature-box-title a:focus-visible::after{outline:3px solid #006cb1;outline-offset:2px;}
