:root {
  --hds-navy: #0b2e63;
  --hds-blue: #1464b4;
  --hds-green: #159447;
  --hds-orange: #f47c20;
  --hds-light: #f5f9fd;
  --hds-white: #ffffff;
  --hds-text: #162033;
  --hds-muted: #596579;
  --hds-border: #dbe7f3;
  --hds-shadow: 0 18px 46px rgba(11, 46, 99, 0.11);
  --hds-radius: 18px;
}

html { scroll-behavior: smooth; }
body {
  color: var(--hds-text);
  font-family: Inter, Arial, sans-serif;
  overflow-x: hidden;
}
body.elementor-page { background: var(--hds-white); }
.elementor h1, .elementor h2, .elementor h3, .elementor h4,
.elementor-heading-title { font-family: Poppins, Arial, sans-serif; }
.hds-page-shell { min-height: 100vh; }
.hds-main { width: 100%; }
.hds-section {
  padding: 88px 24px;
  scroll-margin-top: 96px;
}
.hds-section-inner {
  width: min(1180px, 100%);
  margin-inline: auto;
}
.hds-section-head { max-width: 760px; margin: 0 auto 42px; text-align: center; }
.hds-eyebrow .elementor-heading-title {
  color: var(--hds-blue);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.hds-section-title .elementor-heading-title {
  color: var(--hds-navy);
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.14;
}
.hds-section-intro { color: var(--hds-muted); font-size: 1.05rem; line-height: 1.75; }
.hds-soft-bg { background: var(--hds-light); }
.hds-card-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.hds-card-grid.hds-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hds-card-grid.hds-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hds-card {
  height: 100%;
  padding: 28px;
  border: 1px solid var(--hds-border);
  border-radius: var(--hds-radius);
  background: var(--hds-white);
  box-shadow: 0 10px 30px rgba(11, 46, 99, 0.06);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.hds-card:hover { transform: translateY(-4px); box-shadow: var(--hds-shadow); border-color: #b9d1e9; }
.hds-card .elementor-icon { color: var(--hds-blue); font-size: 32px; }
.hds-card .elementor-heading-title { color: var(--hds-navy); font-size: 1.18rem; line-height: 1.35; }
.hds-card .elementor-widget-text-editor { color: var(--hds-muted); line-height: 1.7; }
.hds-icon-tile {
  align-items: center !important;
  justify-content: center !important;
  width: 58px !important;
  min-height: 58px;
  border-radius: 16px;
  background: #eaf3fc;
  margin-bottom: 14px;
}
.hds-list .elementor-icon-list-item { align-items: flex-start; margin-bottom: 9px; }
.hds-list .elementor-icon-list-icon { margin-top: 4px; color: var(--hds-green); }
.hds-list .elementor-icon-list-text { color: var(--hds-muted); line-height: 1.45; }

.hds-header {
  position: sticky !important;
  top: 0;
  z-index: 1000;
  padding: 12px 24px;
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid rgba(219,231,243,.9);
  box-shadow: 0 8px 25px rgba(11,46,99,.06);
  backdrop-filter: blur(12px);
}
.admin-bar .hds-header { top: 32px; }
.hds-header-inner { width: min(1180px, 100%); margin-inline: auto; align-items: center !important; }
.hds-brand { min-width: 285px; align-items: center !important; gap: 12px !important; }
.hds-logo-mark {
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  min-height: 54px;
  border-radius: 15px;
  background: linear-gradient(135deg, var(--hds-navy), var(--hds-blue));
  box-shadow: 0 8px 20px rgba(20,100,180,.24);
}
.hds-logo-mark .elementor-heading-title { color: #fff; font-size: 1.18rem; letter-spacing: .04em; }
.hds-brand-name .elementor-heading-title { color: var(--hds-navy); font-size: 1rem; line-height: 1.2; }
.hds-brand-tagline { color: var(--hds-muted); font-size: .71rem; line-height: 1.25; }
.hds-desktop-nav { align-items: center !important; justify-content: flex-end !important; gap: 2px !important; }
.hds-nav-link .elementor-button { color: var(--hds-text); background: transparent; padding: 12px 9px; font-weight: 600; font-size: .84rem; }
.hds-nav-link .elementor-button:hover, .hds-nav-link .elementor-button:focus { color: var(--hds-blue); background: #eef6fd; }
.hds-header-cta .elementor-button, .hds-button-primary .elementor-button {
  color: #fff;
  background: var(--hds-green);
  border-radius: 12px;
  padding: 14px 20px;
  font-weight: 700;
  box-shadow: 0 9px 20px rgba(21,148,71,.2);
}
.hds-header-cta .elementor-button:hover, .hds-button-primary .elementor-button:hover { color: #fff; background: #107b3b; transform: translateY(-1px); }
.hds-button-secondary .elementor-button {
  color: var(--hds-navy);
  background: #fff;
  border: 1px solid #b9cce0;
  border-radius: 12px;
  padding: 14px 20px;
  font-weight: 700;
}
.hds-button-secondary .elementor-button:hover { color: var(--hds-blue); border-color: var(--hds-blue); background: #f7fbff; }
.hds-mobile-menu { display: none; }
.hds-mobile-menu details { position: relative; }
.hds-mobile-menu summary {
  cursor: pointer;
  list-style: none;
  border: 1px solid var(--hds-border);
  border-radius: 10px;
  padding: 11px 14px;
  color: var(--hds-navy);
  font-weight: 700;
}
.hds-mobile-menu summary::-webkit-details-marker { display: none; }
.hds-mobile-menu nav {
  position: absolute;
  right: 0;
  top: calc(100% + 9px);
  width: min(290px, calc(100vw - 30px));
  padding: 12px;
  background: #fff;
  border: 1px solid var(--hds-border);
  border-radius: 14px;
  box-shadow: var(--hds-shadow);
}
.hds-mobile-menu nav a { display: block; padding: 12px; color: var(--hds-text); border-radius: 8px; text-decoration: none; font-weight: 600; }
.hds-mobile-menu nav a:hover, .hds-mobile-menu nav a:focus { color: var(--hds-blue); background: var(--hds-light); }

.hds-hero { padding-top: 72px; padding-bottom: 72px; background: radial-gradient(circle at 85% 15%, #e9f4ff 0, transparent 30%), linear-gradient(180deg,#fff,#f7fbff); }
.hds-hero-inner { width: min(1180px,100%); margin-inline: auto; align-items: center !important; gap: 54px !important; }
.hds-hero-copy { width: 55% !important; }
.hds-hero-title .elementor-heading-title { color: var(--hds-navy); font-size: clamp(2.55rem, 5vw, 4.65rem); line-height: 1.03; letter-spacing: -.04em; }
.hds-hero-title .elementor-heading-title em { color: var(--hds-green); font-style: normal; }
.hds-hero-subtitle .elementor-heading-title { color: var(--hds-text); font-size: clamp(1.1rem, 2vw, 1.4rem); line-height: 1.45; font-family: Inter, Arial, sans-serif; font-weight: 600; }
.hds-hero-description { color: var(--hds-muted); font-size: 1.06rem; line-height: 1.75; max-width: 670px; }
.hds-actions { flex-wrap: wrap !important; gap: 12px !important; margin-top: 8px; }
.hds-trust-strip { flex-wrap: wrap !important; gap: 10px 18px !important; margin-top: 15px; }
.hds-trust-item { width: auto !important; }
.hds-trust-item .elementor-icon-list-text { color: var(--hds-muted); font-size: .86rem; font-weight: 600; }
.hds-trust-item .elementor-icon-list-icon { color: var(--hds-green); }
.hds-hero-visual { width: 45% !important; }
.hds-device-stage { position: relative; min-height: 465px; width: 100%; }
.hds-laptop {
  position: absolute; inset: 35px 28px auto 0; height: 290px;
  border: 12px solid #0e2340; border-bottom-width: 24px; border-radius: 18px;
  background: linear-gradient(150deg,#e9f5ff 0 35%,#fff 35%); box-shadow: var(--hds-shadow);
}
.hds-laptop:after { content:""; position:absolute; left:50%; bottom:-39px; width:78%; height:15px; transform:translateX(-50%); border-radius:0 0 15px 15px; background:#b7c7d8; }
.hds-browser { height: 28px; border-bottom: 1px solid #cfdeed; background: #fff; }
.hds-browser:before { content:"●  ●  ●"; color:#8fa7bd; font-size:11px; line-height:28px; padding-left:10px; word-spacing:3px; }
.hds-site-mock { padding: 28px; }
.hds-site-mock strong { display:block; width:65%; height:14px; margin-bottom:15px; border-radius:10px; background:var(--hds-navy); }
.hds-site-mock span { display:block; width:86%; height:8px; margin:8px 0; border-radius:10px; background:#c8d9e9; }
.hds-site-mock i { display:block; width:110px; height:34px; margin-top:20px; border-radius:9px; background:var(--hds-green); }
.hds-phone {
  position:absolute; right:0; top:145px; width:155px; height:300px; padding:12px 10px;
  border:9px solid #102643; border-radius:28px; background:#fff; box-shadow:0 22px 45px rgba(11,46,99,.2); z-index:2;
}
.hds-phone:before { content:""; display:block; width:52px; height:6px; margin:0 auto 18px; border-radius:9px; background:#102643; }
.hds-app-screen { height:238px; border-radius:14px; padding:18px 13px; background:linear-gradient(180deg,#e9f6ef,#f8fcff); }
.hds-app-screen b { display:block; width:62%; height:10px; border-radius:8px; background:var(--hds-green); }
.hds-app-screen span { display:block; height:44px; margin-top:14px; border-radius:10px; background:#fff; border:1px solid #d9e7ef; }
.hds-float-badge { position:absolute; z-index:3; padding:10px 13px; border-radius:12px; background:#fff; box-shadow:0 10px 28px rgba(11,46,99,.14); color:var(--hds-navy); font-size:.78rem; font-weight:700; }
.hds-badge-one { left:18px; bottom:42px; }
.hds-badge-two { right:88px; top:12px; }

.hds-process-grid { display:grid !important; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; counter-reset:hds-step; }
.hds-process-card { position:relative; padding:26px 20px; border-top:4px solid var(--hds-blue); }
.hds-step-number .elementor-heading-title { color:var(--hds-blue); font-size:.84rem; text-transform:uppercase; letter-spacing:.08em; }
.hds-process-card:not(:last-child):after { content:"→"; position:absolute; right:-14px; top:48px; z-index:2; color:#8eabc7; font-size:1.3rem; }
.hds-portfolio-visual { min-height:150px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:linear-gradient(145deg,#e8f3fd,#f7fbff); border:1px dashed #aac6df; color:var(--hds-blue); font:700 1rem Poppins, sans-serif; text-align:center; padding:20px; }
.hds-placeholder-note { padding:10px 12px; border-radius:10px; background:#fff7ed; color:#8a4b15; font-size:.84rem; line-height:1.5; }
.hds-disabled-actions { display:flex; gap:8px; flex-wrap:wrap; }
.hds-disabled-actions span { display:inline-flex; padding:10px 12px; border-radius:9px; border:1px solid #cddbea; color:#708095; background:#f8fafc; font-size:.8rem; font-weight:700; cursor:not-allowed; }
.hds-benefit-grid { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.hds-benefit { align-items:center !important; text-align:center; padding:20px; border-radius:16px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.16); }
.hds-benefit .elementor-icon { color:#7fe6a6; font-size:30px; }
.hds-benefit .elementor-heading-title { color:#fff; font-size:1rem; line-height:1.45; }
.hds-benefits-section { background:linear-gradient(135deg,var(--hds-navy),#124d91); }
.hds-benefits-section .hds-section-title .elementor-heading-title, .hds-benefits-section .hds-section-intro { color:#fff; }

.hds-about-inner { align-items:center !important; gap:55px !important; }
.hds-about-copy { width:100% !important; max-width:880px; margin-inline:auto; }
.hds-person-card { padding:18px 20px; border-left:4px solid var(--hds-green); border-radius:0 12px 12px 0; background:var(--hds-light); }
.hds-person-card .elementor-heading-title { color:var(--hds-navy); font-size:1.2rem; }

.hds-cta { padding:64px 24px; background:var(--hds-navy); }
.hds-cta-inner { width:min(980px,100%); margin-inline:auto; text-align:center; align-items:center !important; }
.hds-cta .elementor-heading-title { color:#fff; }
.hds-cta .elementor-widget-text-editor { color:#dbe9f8; font-size:1.05rem; }
.hds-cta .hds-actions { justify-content:center !important; }
.hds-cta .hds-button-secondary .elementor-button { color:#fff; background:transparent; border-color:rgba(255,255,255,.55); }

.hds-contact-layout { align-items:flex-start !important; gap:34px !important; }
.hds-contact-info { width:38% !important; padding:30px; border-radius:var(--hds-radius); color:#fff; background:linear-gradient(145deg,var(--hds-navy),#134d8f); }
.hds-contact-info .elementor-heading-title, .hds-contact-info .elementor-icon-list-text { color:#fff; }
.hds-contact-info .elementor-icon-list-icon { color:#79dfa0; }
.hds-contact-info a { color:#fff; }
.hds-contact-form { width:62% !important; padding:32px; border:1px solid var(--hds-border); border-radius:var(--hds-radius); background:#fff; box-shadow:var(--hds-shadow); }
.hds-contact-form label { display:block; color:var(--hds-text); font-weight:700; font-size:.9rem; }
.hds-contact-form input:not([type="checkbox"]):not([type="radio"]), .hds-contact-form select, .hds-contact-form textarea {
  width:100%; min-height:48px; margin-top:7px; border:1px solid #bacbda; border-radius:10px; padding:11px 12px; color:var(--hds-text); background:#fff;
}
.hds-contact-form textarea { min-height:120px; resize:vertical; }
.hds-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px 18px; }
.hds-field-full { grid-column:1 / -1; }
.hds-contact-form .wpcf7-list-item { margin:6px 16px 6px 0; }
.hds-contact-form .wpcf7-submit { min-height:50px; padding:13px 22px; border:0; border-radius:11px; color:#fff; background:var(--hds-green); font-weight:700; cursor:pointer; }
.hds-contact-form .wpcf7-submit:hover { background:#107b3b; }
.hds-contact-form .wpcf7-not-valid-tip { margin-top:5px; color:#b42318; }
.hds-consent { font-weight:500 !important; color:var(--hds-muted) !important; line-height:1.55; }

.hds-footer { padding:58px 24px 28px; background:#071d3f; color:#dce8f6; }
.hds-footer-inner { width:min(1180px,100%); margin-inline:auto; }
.hds-footer-grid { display:grid !important; grid-template-columns:1.4fr 1fr 1fr 1.15fr; gap:32px; }
.hds-footer .elementor-heading-title { color:#fff; }
.hds-footer .elementor-widget-text-editor, .hds-footer .elementor-icon-list-text { color:#c3d4e7; }
.hds-footer a { color:#dce8f6; }
.hds-footer a:hover, .hds-footer a:focus { color:#fff; }
.hds-footer-bottom { margin-top:36px; padding-top:20px; border-top:1px solid rgba(255,255,255,.13); text-align:center; color:#aebfd2; font-size:.83rem; }

.hds-floating-whatsapp { position:fixed; right:20px; bottom:22px; z-index:998; }
.hds-floating-whatsapp .elementor-button { width:56px; height:56px; padding:0; border-radius:50%; color:#fff; background:var(--hds-green); box-shadow:0 10px 25px rgba(21,148,71,.35); }
.hds-mobile-bar { display:none; }
.hds-skip-link { position:fixed; left:12px; top:-80px; z-index:9999; padding:12px 16px; color:#fff !important; background:#000; border-radius:8px; }
.hds-skip-link:focus { top:12px; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline:3px solid var(--hds-orange) !important; outline-offset:3px; }

.hds-legal-wrap { padding:70px 24px 90px; background:var(--hds-light); }
.hds-legal-card { width:min(900px,100%); margin-inline:auto; padding:clamp(26px,5vw,56px); border:1px solid var(--hds-border); border-radius:22px; background:#fff; box-shadow:var(--hds-shadow); }
.hds-legal-card .elementor-heading-title { color:var(--hds-navy); }
.hds-legal-card .elementor-widget-text-editor { color:var(--hds-text); line-height:1.8; }
.hds-legal-card h2 { margin-top:1.6em; color:var(--hds-navy); font-size:1.35rem; }
.hds-thank-card { text-align:center; align-items:center !important; }

@media (max-width: 1024px) {
  .hds-desktop-nav { display:none !important; }
  .hds-mobile-menu { display:block; width:auto !important; margin-left:auto; }
  .hds-header-cta { width:auto !important; }
  .hds-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hds-process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hds-process-card:not(:last-child):after { display:none; }
  .hds-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  .admin-bar .hds-header { top:46px; }
  .hds-section { padding:64px 18px; }
  .hds-header { padding:9px 14px; }
  .hds-header-inner { gap:10px !important; }
  .hds-brand { min-width:0; flex:1 1 auto !important; }
  .hds-logo-mark { width:46px !important; min-height:46px; }
  .hds-brand-name .elementor-heading-title { font-size:.83rem; }
  .hds-brand-tagline { display:none; }
  .hds-header-cta { display:none !important; }
  .hds-hero { padding-top:48px; padding-bottom:50px; }
  .hds-hero-inner, .hds-about-inner, .hds-contact-layout { flex-direction:column !important; }
  .hds-hero-title .elementor-heading-title { font-size:2.65rem; }
  .hds-actions .elementor-widget-button { width:100%; }
  .hds-actions .elementor-button { width:100%; justify-content:center; }
  .hds-device-stage { min-height:390px; transform:scale(.92); transform-origin:top center; margin-bottom:-28px; }
  .hds-card-grid, .hds-card-grid.hds-grid-3, .hds-card-grid.hds-grid-2, .hds-process-grid, .hds-benefit-grid, .hds-footer-grid { grid-template-columns:1fr; }
  .hds-about-copy { order:1; }
  .hds-form-grid { grid-template-columns:1fr; }
  .hds-field-full { grid-column:auto; }
  .hds-footer { padding-bottom:96px; }
  .hds-floating-whatsapp { display:none; }
  .hds-mobile-bar {
    display:flex !important; position:fixed !important; left:10px; right:10px; bottom:10px; z-index:999;
    flex-direction:row !important; gap:4px !important; padding:7px; border:1px solid var(--hds-border); border-radius:16px; background:rgba(255,255,255,.97); box-shadow:0 10px 32px rgba(11,46,99,.18);
  }
  .hds-mobile-bar .elementor-widget-button { flex:1 1 0; width:auto !important; }
  .hds-mobile-bar .elementor-button { width:100%; min-height:44px; padding:10px 6px; color:var(--hds-navy); background:transparent; font-size:.78rem; font-weight:700; }
  .hds-mobile-bar .hds-mobile-whatsapp .elementor-button { color:#fff; background:var(--hds-green); border-radius:10px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}


/* Business 360 benefit-card contrast and navigation-fit correction. */
.hds-benefit {
  background:#fff !important; border:1px solid #c9dced !important;
  box-shadow:0 12px 28px rgba(4,27,65,.18); color:#162033 !important;
}
.hds-benefit .elementor-heading-title { color:#0b2e63 !important; }
.hds-benefit .elementor-icon { color:#107b3b !important; }
.hds-benefit:hover { transform:translateY(-3px); box-shadow:0 16px 34px rgba(4,27,65,.24); }
.hds-desktop-nav { flex-wrap:nowrap !important; }
.hds-desktop-nav .elementor-widget-button, .hds-nav-link { flex:0 0 auto !important; width:auto !important; }
.hds-nav-link .elementor-button-text { white-space:nowrap; }
@media(max-width:1180px){
 .hds-desktop-nav{display:none !important}
 .hds-mobile-menu{display:block !important;width:auto !important;margin-left:auto}
 .hds-header-cta{width:auto !important;flex:0 0 auto !important}
}


/* Business 360 brand/menu collision prevention. */
.hds-header-inner { flex-wrap:nowrap !important; }
.hds-brand { flex:0 0 285px !important; width:285px !important; min-width:285px !important; overflow:visible; }
.hds-desktop-nav { min-width:0; }
@media(max-width:1400px){
 .hds-desktop-nav{display:none !important}
 .hds-mobile-menu{display:block !important;flex:0 0 auto !important;width:auto !important;margin-left:auto}
 .hds-header-cta{flex:0 0 auto !important;width:auto !important}
}
@media(max-width:1024px){
 .hds-brand{flex-basis:225px !important;width:225px !important;min-width:225px !important}
}
@media(max-width:767px){
 .hds-brand{flex:1 1 auto !important;width:auto !important;min-width:0 !important;max-width:190px}
}
@media(max-width:410px){ .hds-brand{max-width:168px} }


/* Business 360 guaranteed collision-free compact navigation. */
.hds-desktop-nav { display:none !important; }
.hds-mobile-menu { display:block !important; flex:0 0 auto !important; width:auto !important; margin-left:auto !important; }
.hds-header-inner { display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; align-items:center !important; }
.hds-brand { flex:1 1 auto !important; width:auto !important; min-width:0 !important; max-width:285px !important; }
.hds-header-cta { flex:0 0 auto !important; width:auto !important; }
@media(max-width:767px){ .hds-brand{max-width:190px !important} .hds-header-cta{display:none !important} }
@media(max-width:410px){ .hds-brand{max-width:168px !important} }


/* Business 360 verified portfolio projects. */
.hds-project-card{height:100%;gap:14px !important;align-content:start !important;overflow:hidden}
.hds-project-image{width:100% !important;margin-bottom:2px}
.hds-project-image img{display:block;width:100% !important;aspect-ratio:16/9;object-fit:cover;object-position:center top;border:1px solid #d7e4ef;border-radius:14px;background:#eef4f8}
.hds-project-shop .hds-project-image img{object-fit:contain;object-position:center 18%;background:linear-gradient(145deg,#eaf2f8,#f8fbfd)}
.hds-project-category{align-self:flex-start;width:auto !important;padding:7px 11px;border-radius:999px;color:#0b5f31;background:#e7f6ed;font-size:.74rem;font-weight:800;line-height:1.2;letter-spacing:.03em;text-transform:uppercase}
.hds-project-category p,.hds-project-summary p{margin:0}
.hds-project-summary{color:#4d5e73;line-height:1.65}
.hds-project-meta{display:grid;gap:11px;margin:0}
.hds-project-meta>div{padding-top:11px;border-top:1px solid #dce7f1}
.hds-project-meta dt{margin:0 0 3px;color:#0b2e63;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em}
.hds-project-meta dd{margin:0;color:#34445a;font-size:.88rem;line-height:1.55}
@media(max-width:767px){.hds-project-image img{aspect-ratio:16/10}.hds-project-shop .hds-project-image img{aspect-ratio:4/3}}


/* Business 360 portfolio responsive grid refinement. */
@media(max-width:1100px){#portfolio .hds-card-grid.hds-grid-3{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media(max-width:767px){#portfolio .hds-card-grid.hds-grid-3{grid-template-columns:1fr !important}}
