/* ==========================================================
   Smartwork Corporate — Main Frontend Stylesheet
   Breakpoints (Section 49): Desktop >=1200 / Laptop 992-1199 /
   Tablet 768-991 / Mobile <768
   ========================================================== */

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--sw-font-body);
  font-size:var(--sw-font-size-base);
  line-height:var(--sw-line-height-base);
  color:var(--sw-color-text);
  background:var(--sw-color-white);
}
h1,h2,h3,h4,h5,h6{font-family:var(--sw-font-heading);color:var(--sw-color-primary);line-height:1.3;margin:0 0 .5em;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--sw-color-secondary);text-decoration:none;transition:color var(--sw-transition);}
a:hover{color:var(--sw-color-accent);}

/* Focus states — Accessibility Section 33 */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:3px solid var(--sw-color-accent);
  outline-offset:2px;
}

.screen-reader-text{
  position:absolute !important;
  clip:rect(1px,1px,1px,1px);
  width:1px;height:1px;overflow:hidden;
}
.sw-skip-link{
  position:absolute;left:-9999px;top:0;
  background:var(--sw-color-primary);color:#fff;padding:12px 20px;z-index:10000;
}
.sw-skip-link:focus{left:0;}

.sw-container{max-width:var(--sw-container-max);margin:0 auto;padding:0 24px;}

/* ---------------- Top Bar ---------------- */
.sw-topbar{background:var(--sw-color-dark);color:#cfd9e6;font-size:.85rem;}
.sw-topbar-inner{display:flex;justify-content:space-between;align-items:center;padding:8px 24px;gap:16px;flex-wrap:wrap;}
.sw-topbar a{color:#cfd9e6;}
.sw-topbar-right{display:flex;align-items:center;gap:16px;}
.sw-search-trigger{background:none;border:0;color:#fff;cursor:pointer;padding:4px;}

/* ---------------- Main Header ---------------- */
.sw-site-header{position:relative;z-index:999;background:#fff;box-shadow:var(--sw-shadow-sm);}
.sw-site-header.is-sticky-enabled.is-stuck{
  position:fixed;top:0;left:0;right:0;
  animation:sw-slide-down .22s ease;
}
@keyframes sw-slide-down{from{transform:translateY(-100%);}to{transform:translateY(0);}}
.sw-main-header-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;height:var(--sw-header-height);transition:height var(--sw-transition);}
.is-stuck .sw-main-header-inner{height:var(--sw-header-height-compact);}
.sw-logo img{max-height:64px;}
.is-stuck .sw-logo img{max-height:44px;transition:max-height var(--sw-transition);}

.sw-primary-nav{flex:1;display:flex;justify-content:center;}
.sw-main-menu,.sw-main-menu ul{list-style:none;margin:0;padding:0;}
.sw-main-menu{display:flex;align-items:center;gap:8px;position:relative;}
.sw-main-menu > li{position:relative;display:flex;align-items:center;}
.sw-main-menu .menu-link{display:block;padding:12px 16px;font-weight:600;color:var(--sw-color-primary);border-radius:var(--sw-radius-sm);text-decoration:none;}
.sw-main-menu > li.menu-item-has-children > .menu-link{padding-right:4px;}
.sw-main-menu > li:hover > .menu-link,.sw-main-menu > li:focus-within > .menu-link,
.sw-main-menu > li.current-menu-item > .menu-link,.sw-main-menu > li.current-menu-ancestor > .menu-link{background:var(--sw-color-light);color:var(--sw-color-secondary);}

/* Submenu toggle (caret) */
.sw-submenu-toggle{background:none;border:0;padding:8px;cursor:pointer;color:inherit;line-height:0;}
.sw-caret{display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform var(--sw-transition);margin-top:-4px;}
.is-open > .sw-submenu-toggle .sw-caret{transform:rotate(-135deg);margin-top:4px;}

/* Full-width submenu panel (see inc/walker-mega-menu.php) */
.sw-main-header{position:relative;}
.sw-primary-nav{align-self:stretch;}
.sw-main-menu{height:100%;position:static;}
.sw-main-menu > li{height:100%;}
.sw-main-menu > li.has-mega-menu{position:static;}
.sw-mega-panel{
  position:absolute;left:0;right:0;top:100%;z-index:60;
  background:#fff;color:var(--sw-color-text);box-shadow:0 24px 48px rgba(7,17,31,.12);
  border-top:1px solid var(--sw-color-border,#e3e8ef);
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .22s ease,transform .22s ease,visibility .22s;
}
/* invisible bridge so the pointer can travel from the menu item to the panel */
.sw-mega-panel::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:24px;}
.has-mega-menu:hover > .sw-mega-panel,
.has-mega-menu:focus-within > .sw-mega-panel,
.has-mega-menu.is-open > .sw-mega-panel{opacity:1;visibility:visible;transform:none;}
.sw-panel-inner{display:grid;grid-template-columns:minmax(260px,3fr) minmax(0,8fr);gap:64px;padding-top:44px;padding-bottom:52px;}
.sw-panel-title{
  display:inline-flex;align-items:center;gap:16px;margin-bottom:28px;
  font-family:var(--sw-font-heading);font-size:1.6rem;font-weight:700;line-height:1.3;color:var(--sw-color-dark);
}
a.sw-panel-title:hover{color:var(--sw-color-secondary);}
.sw-panel-arrow{position:relative;width:26px;height:2px;background:var(--sw-color-accent);transition:transform var(--sw-transition);}
.sw-panel-arrow::after{content:"";position:absolute;right:0;top:50%;width:9px;height:9px;margin-top:-5px;border-top:2px solid var(--sw-color-accent);border-right:2px solid var(--sw-color-accent);transform:rotate(45deg);}
a.sw-panel-title:hover .sw-panel-arrow{transform:translateX(5px);}
.sw-panel-image{display:block;width:100%;max-width:320px;aspect-ratio:3/2;object-fit:cover;}
.sw-panel-links{columns:2;column-gap:64px;list-style:none;margin:0;padding:12px 0 0;}
.sw-panel-links > li{break-inside:avoid;padding:0 0 22px;}
.sw-main-menu .sw-panel-link{
  display:inline;padding:0;border-radius:0;background:none !important;
  font-family:var(--sw-font-heading);font-size:1.08rem;font-weight:600;line-height:1.6;color:var(--sw-color-dark);
  background-image:linear-gradient(var(--sw-color-accent),var(--sw-color-accent)) !important;
  background-repeat:no-repeat !important;background-position:0 100% !important;background-size:0 2px !important;
  transition:background-size .25s ease,color var(--sw-transition);
}
.sw-main-menu .sw-panel-link:hover,.sw-main-menu .sw-panel-link[aria-current="page"]{color:var(--sw-color-secondary);background-size:100% 2px !important;}
.sw-panel-sublist{list-style:none;margin:10px 0 0;padding:0 0 0 14px;border-left:2px solid var(--sw-color-border,#e3e8ef);}
.sw-panel-sublist li{padding:4px 0;}
.sw-main-menu .sw-panel-sublist .sw-panel-link{font-family:var(--sw-font-body);font-size:.95rem;font-weight:500;color:var(--sw-color-text-muted);}
@media (max-width:1199px){
  .sw-panel-inner{gap:40px;}
  .sw-panel-links{column-gap:40px;}
}

.sw-hamburger{display:none;flex-direction:column;gap:5px;width:26px;cursor:pointer;}
.sw-hamburger span{display:block;height:2px;background:var(--sw-color-primary);}
.sw-mobile-menu-trigger{display:none;background:none;border:0;}

/* ---------------- Search Overlay ---------------- */
.sw-search-overlay{
  position:fixed;inset:0;background:rgba(7,17,31,.97);z-index:9999;
  display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;
}
.sw-search-overlay[hidden]{display:none;}
.sw-search-overlay-inner{width:100%;max-width:760px;padding:0 24px;}
.sw-search-form{display:flex;border-bottom:2px solid var(--sw-color-accent);padding-bottom:16px;}
.sw-search-input{flex:1;background:none;border:0;color:#fff;font-size:2rem;padding:8px 0;}
.sw-search-input::placeholder{color:#8fa2ba;}
.sw-search-submit{background:var(--sw-color-accent);color:var(--sw-color-dark);border:0;padding:0 24px;border-radius:var(--sw-radius-sm);cursor:pointer;}
.sw-search-close{position:absolute;top:24px;right:32px;background:none;border:0;color:#fff;font-size:2.5rem;cursor:pointer;}
.sw-search-filters{display:flex;gap:8px;margin:20px 0;flex-wrap:wrap;}
.sw-search-filter{background:rgba(255,255,255,.08);color:#fff;border:0;padding:6px 14px;border-radius:20px;cursor:pointer;font-size:.85rem;}
.sw-search-filter.is-active{background:var(--sw-color-accent);color:var(--sw-color-dark);}
.sw-search-results{max-height:50vh;overflow-y:auto;}
.sw-search-result-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;}
.sw-search-result-item img{width:64px;height:64px;object-fit:cover;border-radius:6px;}

/* ---------------- Mobile Menu ---------------- */
.sw-mobile-menu{position:fixed;inset:0;background:#fff;z-index:9998;overflow-y:auto;}
.sw-mobile-menu[hidden]{display:none;}
.sw-mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--sw-color-border);}
.sw-mobile-menu-close{background:none;border:0;font-size:2rem;cursor:pointer;}
.sw-mobile-menu-list{list-style:none;margin:0;padding:0 24px;}
.sw-mobile-menu-list,.sw-mobile-menu-list ul{list-style:none;margin:0;}
.sw-mobile-menu-list li{border-bottom:1px solid var(--sw-color-border);}
.sw-mobile-menu-list li.menu-item-has-children{display:flex;flex-wrap:wrap;align-items:center;}
.sw-mobile-menu-list li.menu-item-has-children > a{flex:1;}
.sw-mobile-menu-list a{display:block;padding:16px 0;font-weight:600;color:var(--sw-color-primary);text-decoration:none;}
.sw-mobile-menu-list .sw-submenu-toggle{width:48px;height:48px;display:flex;align-items:center;justify-content:center;}
/* Submenus collapsed by default on mobile — opened by the toggle */
.sw-mobile-menu-list .sub-menu{display:none;flex-basis:100%;padding:0 0 8px 16px;border-left:2px solid var(--sw-color-border);margin-bottom:12px;}
.sw-mobile-menu-list li.is-open > .sub-menu{display:block;}
.sw-mobile-menu-list .sub-menu li{border-bottom:0;}
.sw-mobile-menu-list .sub-menu a{padding:10px 0;font-weight:500;color:var(--sw-color-text-muted);}
.sw-mobile-menu-footer{padding:24px;border-top:1px solid var(--sw-color-border);}

/* ---------------- Buttons ---------------- */
.sw-btn{display:inline-block;padding:14px 28px;border-radius:var(--sw-radius-sm);font-weight:600;cursor:pointer;border:2px solid transparent;transition:all var(--sw-transition);}
.sw-btn-primary{background:var(--sw-color-primary);color:#fff;}
.sw-btn-primary:hover{background:var(--sw-color-secondary);color:#fff;}
.sw-btn-outline{background:transparent;border-color:var(--sw-color-primary);color:var(--sw-color-primary);}
.sw-btn-outline:hover{background:var(--sw-color-primary);color:#fff;}

/* ---------------- Cards ---------------- */
.sw-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:32px 0;}
.sw-news-card,.sw-business-card,.sw-person-card{background:#fff;border-radius:var(--sw-radius-md);overflow:hidden;box-shadow:var(--sw-shadow-sm);transition:box-shadow var(--sw-transition),transform var(--sw-transition);}
.sw-news-card:hover,.sw-business-card:hover,.sw-person-card:hover{box-shadow:var(--sw-shadow-md);transform:translateY(-4px);}
.sw-news-card-thumb{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--sw-color-light);}
.sw-news-card-thumb img{width:100%;height:100%;object-fit:cover;}
.sw-news-card-category{position:absolute;top:12px;left:12px;background:var(--sw-color-accent);color:var(--sw-color-dark);font-size:.75rem;padding:4px 10px;border-radius:20px;}
.sw-news-card-body{padding:20px;}
.sw-news-card-date{font-size:.8rem;color:var(--sw-color-text-muted);}
.sw-person-card-photo{aspect-ratio:1;overflow:hidden;background:var(--sw-color-light);}
.sw-person-card-photo img{width:100%;height:100%;object-fit:cover;}
.sw-person-card-body{padding:16px;text-align:center;}
.sw-business-card-media{position:relative;aspect-ratio:16/10;background:var(--sw-color-light);}
.sw-business-card-logo{position:absolute;bottom:12px;left:12px;max-height:40px;width:auto;background:#fff;padding:6px;border-radius:6px;}
.sw-business-card-body{padding:20px;}

/* ---------------- Breadcrumb ---------------- */
.sw-breadcrumb{margin:20px 0;font-size:.85rem;color:var(--sw-color-text-muted);}
.sw-breadcrumb ol{list-style:none;display:flex;gap:6px;padding:0;margin:0;flex-wrap:wrap;}
.sw-breadcrumb li:not(:last-child)::after{content:"/";margin-left:6px;color:var(--sw-color-border);}

/* ---------------- Archive tabs ---------------- */
.sw-archive-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 32px;}
.sw-tab{padding:8px 18px;border-radius:20px;background:var(--sw-color-light);color:var(--sw-color-primary);font-weight:600;}
.sw-tab.is-active{background:var(--sw-color-primary);color:#fff;}

/* ---------------- Footer ---------------- */
.sw-site-footer{background:var(--sw-color-dark);color:#b9c4d1;padding-top:60px;}
.sw-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1.4fr;gap:32px;padding-bottom:40px;}
.sw-footer-col h4{color:#fff;font-size:1rem;margin-bottom:16px;}
.sw-footer-menu{list-style:none;padding:0;margin:0;}
.sw-footer-menu a{color:#b9c4d1;display:block;padding:4px 0;}
.sw-footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:20px 0;}
.sw-footer-bottom-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.85rem;}
.sw-legal-links{list-style:none;display:flex;gap:16px;padding:0;margin:0;}
.sw-legal-links a{color:#b9c4d1;}
.sw-social-links{list-style:none;display:flex;gap:10px;padding:0;margin:16px 0 0;}
.sw-social-links a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;}

/* ---------------- 404 ---------------- */
.sw-404-content{text-align:center;padding:100px 24px;}
.sw-404-code{font-size:6rem;font-weight:800;color:var(--sw-color-accent);margin:0;}
.sw-404-actions{display:flex;gap:12px;justify-content:center;margin-top:24px;flex-wrap:wrap;}

/* ---------------- Accessibility toolbar ---------------- */
.sw-a11y-toolbar{position:fixed;bottom:20px;right:20px;z-index:9997;font-size:.85rem;}
.sw-a11y-toggle{width:48px;height:48px;border-radius:50%;background:var(--sw-color-primary);color:#fff;border:0;cursor:pointer;font-weight:700;}
.sw-a11y-panel{position:absolute;bottom:56px;right:0;background:#fff;border-radius:var(--sw-radius-md);box-shadow:var(--sw-shadow-lg);padding:12px;display:flex;flex-direction:column;gap:6px;width:220px;}
.sw-a11y-panel[hidden]{display:none;}
.sw-a11y-panel button{text-align:left;background:var(--sw-color-light);border:0;padding:8px 12px;border-radius:6px;cursor:pointer;}

/* Contact page */
.sw-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:32px 0;}
.sw-contact-map iframe{width:100%;height:300px;border:0;border-radius:var(--sw-radius-md);margin-top:16px;}
.sw-contact-form{display:flex;flex-direction:column;gap:12px;}
.sw-contact-form input,.sw-contact-form textarea{padding:12px;border:1px solid var(--sw-color-border);border-radius:var(--sw-radius-sm);font-family:inherit;}
.sw-honeypot{position:absolute !important;left:-9999px;width:1px;height:1px;}
.sw-form-error{color:var(--sw-color-danger);}
.sw-form-success{color:var(--sw-color-success);}

/* ---------------- Responsive breakpoints (Section 49) ---------------- */
@media (max-width:1199px){
  .sw-post-grid{grid-template-columns:repeat(2,1fr);}
  .sw-footer-grid{grid-template-columns:1fr 1fr 1fr;}
}
@media (max-width:991px){
  .sw-primary-nav{display:none;}
  .sw-mobile-menu-trigger{display:block;}
  .sw-hamburger{display:flex;}
  .sw-footer-grid{grid-template-columns:1fr 1fr;}
  .sw-contact-grid{grid-template-columns:1fr;}
}
@media (max-width:767px){
  .sw-post-grid{grid-template-columns:1fr;}
  .sw-footer-grid{grid-template-columns:1fr;text-align:center;}
  .sw-main-header-inner{padding:12px 16px;}
  .sw-404-code{font-size:4rem;}
}

/* ==========================================================
   HOMEPAGE (front-page.php) — Section 10-22
   ========================================================== */

.sw-eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sw-color-accent);margin-bottom:10px;}
.sw-eyebrow-on-dark{color:var(--sw-color-accent);}
.sw-section{padding:80px 0;}
.sw-bg-light{background:var(--sw-color-light);}
.sw-bg-dark{background:var(--sw-color-dark);color:#cfd9e6;}
.sw-heading-on-dark{color:#fff;}
.sw-section-head{margin-bottom:40px;max-width:720px;}
.sw-section-head-row{display:flex;justify-content:space-between;align-items:flex-end;max-width:none;flex-wrap:wrap;gap:16px;}
.sw-section-head-center{max-width:none;text-align:center;margin-left:auto;margin-right:auto;}
.sw-empty-state{color:var(--sw-color-text-muted);font-style:italic;}

/* ---- Hero ---- */
.sw-hero{
  position:relative;min-height:88vh;display:flex;align-items:center;
  background:linear-gradient(135deg,var(--sw-color-dark),var(--sw-color-primary));
  background-size:cover;background-position:center;color:#fff;overflow:hidden;
}
.sw-hero-video-wrap{position:absolute;inset:0;z-index:0;}
.sw-hero-video-wrap video,.sw-hero-video-wrap iframe{width:100%;height:100%;object-fit:cover;border:0;}
.sw-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,17,31,.55),rgba(7,17,31,.85));z-index:1;}
.sw-hero-inner{position:relative;z-index:2;padding:100px 24px;}
.sw-hero-heading{font-size:clamp(2.2rem,5vw,4rem);color:#fff;margin-bottom:20px;font-weight:800;}
.sw-hero-subheading{font-size:1.15rem;max-width:620px;color:#dbe4ef;margin-bottom:36px;}
.sw-hero-actions{display:flex;gap:16px;flex-wrap:wrap;}
.sw-btn-lg{padding:16px 36px;font-size:1rem;}
.sw-btn-ghost{background:transparent;border:2px solid rgba(255,255,255,.6);color:#fff;}
.sw-btn-ghost:hover{background:#fff;color:var(--sw-color-primary);}
.sw-hero-scroll-hint{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:2;}
.sw-hero-scroll-hint span{display:block;width:26px;height:42px;border:2px solid rgba(255,255,255,.6);border-radius:20px;position:relative;}
.sw-hero-scroll-hint span::before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:4px;height:8px;background:#fff;border-radius:2px;animation:sw-scroll-bounce 1.8s infinite;}
@keyframes sw-scroll-bounce{0%,100%{opacity:1;top:8px;}50%{opacity:.3;top:18px;}}

/* ---- About / Stats ---- */
.sw-about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:56px;align-items:center;}
.sw-about-media img,.sw-about-video{border-radius:var(--sw-radius-lg);overflow:hidden;box-shadow:var(--sw-shadow-md);}
.sw-about-video iframe,.sw-about-video video{width:100%;aspect-ratio:16/9;border:0;}
.sw-about-text p{color:var(--sw-color-text-muted);}
.sw-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px;padding-top:32px;border-top:1px solid var(--sw-color-border);}
.sw-stat-value{display:block;font-size:2.2rem;font-weight:800;color:var(--sw-color-primary);font-family:var(--sw-font-heading);}
.sw-stat-label{display:block;font-size:.85rem;color:var(--sw-color-text-muted);}

/* ---- Business grid ---- */
.sw-business-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}

/* ---- Featured content ---- */
.sw-featured-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;}
.sw-featured-thumb{display:block;aspect-ratio:16/9;border-radius:var(--sw-radius-md);overflow:hidden;background:var(--sw-color-light);}
.sw-featured-thumb img{width:100%;height:100%;object-fit:cover;}
.sw-featured-body time{font-size:.8rem;color:var(--sw-color-text-muted);}
.sw-featured-body h2{margin-top:8px;}
.sw-featured-side{display:flex;flex-direction:column;gap:20px;}
.sw-featured-side-item{display:flex;gap:14px;}
.sw-featured-side-thumb{flex:0 0 96px;aspect-ratio:1;border-radius:var(--sw-radius-sm);overflow:hidden;background:var(--sw-color-light);}
.sw-featured-side-thumb img{width:100%;height:100%;object-fit:cover;}
.sw-featured-side-item h3{font-size:1rem;margin:4px 0 0;}
.sw-featured-side-item time{font-size:.75rem;color:var(--sw-color-text-muted);}

/* ---- News center tabs (JS filter) ---- */
.sw-archive-tabs button.sw-tab{border:0;cursor:pointer;font-family:inherit;}
.sw-news-card[hidden]{display:none;}

/* ---- Person grid ---- */
.sw-person-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}

/* ---- Timeline ---- */
.sw-timeline{list-style:none;margin:0 auto;padding:0;max-width:760px;position:relative;}
.sw-timeline::before{content:"";position:absolute;left:100px;top:0;bottom:0;width:2px;background:rgba(255,255,255,.15);}
.sw-timeline-item{display:grid;grid-template-columns:80px 20px 1fr;gap:20px;align-items:start;padding:24px 0;position:relative;}
.sw-timeline-year{font-weight:800;color:var(--sw-color-accent);text-align:right;}
.sw-timeline-dot{width:14px;height:14px;border-radius:50%;background:var(--sw-color-accent);margin-top:6px;justify-self:center;position:relative;z-index:1;}
.sw-timeline-content h3{color:#fff;font-size:1.1rem;margin:0 0 4px;}
.sw-timeline-content p{color:#a9b8ca;margin:0;font-size:.9rem;}

/* ---- CTA ---- */
.sw-cta-section{background:linear-gradient(135deg,var(--sw-color-primary),var(--sw-color-secondary));color:#fff;text-align:center;}
.sw-cta-inner{max-width:640px;margin:0 auto;}
.sw-cta-inner h2{color:#fff;}
.sw-cta-inner p{color:#dbe4ef;margin-bottom:28px;}
.sw-cta-section .sw-btn-primary{background:var(--sw-color-accent);color:var(--sw-color-dark);}
.sw-cta-section .sw-btn-primary:hover{background:#fff;}

@media (max-width:1199px){
  .sw-business-grid,.sw-person-grid{grid-template-columns:repeat(2,1fr);}
  .sw-about-grid,.sw-featured-grid{grid-template-columns:1fr;}
  .sw-stats-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:767px){
  .sw-business-grid,.sw-person-grid{grid-template-columns:1fr;}
  .sw-hero-actions{flex-direction:column;}
  .sw-timeline::before{left:14px;}
  .sw-timeline-item{grid-template-columns:20px 1fr;}
  .sw-timeline-year{grid-column:1/3;text-align:left;order:-1;}
}

/* High contrast mode (toggled via JS, Section 33) */
body.sw-high-contrast a{text-decoration:underline;}
body.sw-high-contrast .sw-btn-outline{border-width:3px;}

/* ==========================================================
   Transparent header over a full-bleed hero (homepage, board pages)
   ========================================================== */
/* ---------- Transparent header over the hero ---------- */
.sw-header-overlay .sw-site-header:not(.is-stuck){
  position:absolute;top:0;left:0;right:0;
  background:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,0) 100%);
  box-shadow:none;
}
.admin-bar.sw-header-overlay .sw-site-header:not(.is-stuck){top:32px;}
@media (max-width:782px){.admin-bar.sw-header-overlay .sw-site-header:not(.is-stuck){top:46px;}}
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-topbar{background:transparent;}
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-main-menu > li > .menu-link,
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-main-menu > li > .sw-submenu-toggle,
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-logo-text{color:#fff;}
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-main-menu > li:hover > .menu-link,
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-main-menu > li:focus-within > .menu-link,
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-main-menu > li.current-menu-item > .menu-link,
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-main-menu > li.current-menu-ancestor > .menu-link{
  background:transparent;color:#fff;box-shadow:inset 0 -2px 0 #fff;border-radius:0;
}
/* Dark logos turn white over the photo (remove this rule if you upload a white logo). */
.sw-header-overlay .sw-site-header:not(.is-stuck) .custom-logo{filter:brightness(0) invert(1);}
.sw-header-overlay .sw-site-header:not(.is-stuck) .sw-hamburger span{background:#fff;}


/* ==========================================================
   Inner-page hero banner + centered breadcrumb (board, about pages)
   ========================================================== */
/* ---------- Hero banner ---------- */
.sw-page-hero{
  position:relative;display:flex;align-items:center;justify-content:center;
  min-height:400px;padding:150px 0 70px;
  background:linear-gradient(135deg,var(--sw-color-dark),var(--sw-color-primary));
  color:#fff;text-align:center;overflow:hidden;
}
.sw-page-hero.has-image{background:var(--sw-color-dark) var(--sw-hero-bg) center/cover no-repeat;}
.sw-page-hero::before{content:"";position:absolute;inset:0;background:rgba(7,17,31,.35);}
.sw-page-hero-inner{position:relative;z-index:1;}
.sw-page-hero-title{margin:0;color:#fff;font-size:clamp(2rem,4.2vw,3.4rem);font-weight:700;line-height:1.2;text-shadow:0 2px 24px rgba(0,0,0,.35);}

/* ---------- Breadcrumb (centered, chevrons) ---------- */
.sw-board-crumbs .sw-breadcrumb{margin:30px 0 0;font-size:.95rem;}
.sw-board-crumbs .sw-breadcrumb ol{justify-content:center;gap:0;}
.sw-board-crumbs .sw-breadcrumb li{display:flex;align-items:center;color:var(--sw-color-text-muted);}
.sw-board-crumbs .sw-breadcrumb a{color:var(--sw-color-text-muted);}
.sw-board-crumbs .sw-breadcrumb a:hover{color:var(--sw-color-primary);}
.sw-board-crumbs .sw-breadcrumb li:not(:last-child)::after{
  content:"";width:6px;height:6px;margin:0 16px;color:var(--sw-color-text-muted);
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);
}

@media (max-width:991px){.sw-page-hero{min-height:320px;padding:120px 0 56px;}}
@media (max-width:767px){.sw-page-hero{min-height:260px;padding:110px 0 44px;}.sw-board-crumbs .sw-breadcrumb{font-size:.85rem;}.sw-board-crumbs .sw-breadcrumb li:not(:last-child)::after{margin:0 10px;}}

/* [smartwork_breadcrumb] shortcode */
.sw-crumbs-sc .sw-breadcrumb{margin:0;font-size:.95rem;}
.sw-crumbs-sc .sw-breadcrumb ol{gap:0;}
.sw-crumbs-sc--center .sw-breadcrumb ol{justify-content:center;}
.sw-crumbs-sc--right .sw-breadcrumb ol{justify-content:flex-end;}
.sw-crumbs-sc .sw-breadcrumb li{display:flex;align-items:center;color:var(--sw-color-text-muted);}
.sw-crumbs-sc .sw-breadcrumb a{color:var(--sw-color-text-muted);}
.sw-crumbs-sc .sw-breadcrumb a:hover{color:var(--sw-color-primary);}
.sw-crumbs-sc .sw-breadcrumb li:not(:last-child)::after{
  content:"";width:6px;height:6px;margin:0 16px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);
}
.sw-crumbs-sc--light .sw-breadcrumb li,.sw-crumbs-sc--light .sw-breadcrumb a{color:rgba(255,255,255,.85);}
.sw-crumbs-sc--light .sw-breadcrumb a:hover{color:#fff;}
@media (max-width:767px){
  .sw-crumbs-sc .sw-breadcrumb{font-size:.85rem;}
  .sw-crumbs-sc .sw-breadcrumb li:not(:last-child)::after{margin:0 10px;}
}
