/* Husni main-site dark portfolio layer: scoped to Elementor pages with .hb-main-site */
.hb-main-site{--ha-bg:#0a0b0b;--ha-panel:#131514;--ha-panel-2:#1a1c1b;--ha-ink:#f3f5ef;--ha-muted:#aeb4aa;--ha-line:rgba(243,245,239,.18);--ha-accent:#b8ff3d;--ha-display:"Cabinet Grotesk",Arial,sans-serif;--ha-body:"General Sans",Inter,Arial,sans-serif;background:var(--ha-bg);color:var(--ha-ink);font-family:var(--ha-body)}
.hb-main-site .site-content,.hb-main-site .elementor-location-single,.hb-main-site .elementor-location-archive{background:var(--ha-bg)}
.hb-main-site .elementor-widget-container{color:inherit}
.hb-main-site .ha-page,.hb-main-site .ha-pro-header,.hb-main-site .ha-pro-footer{background:var(--ha-bg);color:var(--ha-ink)}
.hb-main-site .ha-page .elementor-heading-title,.hb-main-site .ha-pro-header .elementor-heading-title,.hb-main-site .ha-pro-footer .elementor-heading-title{font-family:var(--ha-display);letter-spacing:-.055em;color:var(--ha-ink)}
.hb-main-site .ha-eyebrow,.hb-main-site .ha-kicker{color:var(--ha-accent);font-size:.69rem;line-height:1.25;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.hb-main-site .ha-intro{color:var(--ha-muted);font-size:1.08rem;line-height:1.62;max-width:35rem}
.hb-main-site .ha-hero{min-height:calc(100svh - 72px);padding:clamp(3.5rem,8vw,8rem) clamp(1.25rem,4vw,5rem) clamp(3rem,6vw,6rem);border-bottom:1px solid var(--ha-line)}
.hb-main-site .ha-hero-title .elementor-heading-title{font-size:clamp(3.4rem,9.3vw,10.5rem);line-height:.86;font-weight:700;max-width:10ch}
.hb-main-site .ha-hero-copy{padding-top:1.8rem}.hb-main-site .ha-hero-portrait{min-height:28rem;background:var(--ha-panel);overflow:hidden;border-left:1px solid var(--ha-line)}
.hb-main-site .ha-hero-portrait img{width:100%;height:100%;min-height:28rem;object-fit:cover;object-position:center top;filter:grayscale(100%) contrast(1.06)}
.hb-main-site .ha-portrait-label{border-top:1px solid var(--ha-line);padding-top:.85rem;color:var(--ha-muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.hb-main-site .ha-section{padding:clamp(4.5rem,10vw,9rem) clamp(1.25rem,4vw,5rem);border-bottom:1px solid var(--ha-line)}
.hb-main-site .ha-section-title .elementor-heading-title{font-size:clamp(2.4rem,5.4vw,6rem);line-height:.94;max-width:13ch}
.hb-main-site .ha-work-list{border-top:1px solid var(--ha-line)}
.hb-main-site .ha-work-item{display:grid;grid-template-columns:2.25rem 1fr auto;gap:1rem;align-items:center;padding:1.25rem 0;border-bottom:1px solid var(--ha-line);transition:padding .25s ease,background .25s ease}
.hb-main-site .ha-work-item:hover{padding-left:.7rem;background:rgba(184,255,61,.04)}
.hb-main-site .ha-work-index{color:var(--ha-accent);font-weight:700}.hb-main-site .ha-work-name{font-family:var(--ha-display);font-size:clamp(1.35rem,2.2vw,2.25rem);line-height:1}.hb-main-site .ha-work-type{color:var(--ha-muted);font-size:.8rem;text-align:right}
.hb-main-site .ha-work-item a{color:inherit;text-decoration:none}.hb-main-site .ha-work-item a:focus-visible{outline:3px solid var(--ha-accent);outline-offset:5px}
.hb-main-site .ha-statement{background:var(--ha-accent);color:#10120f;padding:clamp(3rem,7vw,7rem) clamp(1.25rem,7vw,9rem)}
.hb-main-site .ha-statement .elementor-heading-title{color:#10120f;font-size:clamp(2.6rem,6vw,7.5rem);line-height:.9;letter-spacing:-.06em}
.hb-main-site .ha-statement .elementor-widget-text-editor{color:#20241d;font-size:1.05rem;line-height:1.55}
.hb-main-site .ha-service-row{border-top:1px solid var(--ha-line);padding:1.4rem 0;align-items:start}.hb-main-site .ha-service-row:last-child{border-bottom:1px solid var(--ha-line)}
.hb-main-site .ha-service-number{color:var(--ha-accent);font-weight:700}.hb-main-site .ha-service-title .elementor-heading-title{font-size:clamp(1.5rem,2.7vw,3rem);line-height:.96}.hb-main-site .ha-service-copy{color:var(--ha-muted);font-size:.98rem;line-height:1.55}
.hb-main-site .ha-process-step{border-top:1px solid var(--ha-line);padding-top:1.2rem}.hb-main-site .ha-process-no{color:var(--ha-accent);font-family:var(--ha-display);font-size:2rem}.hb-main-site .ha-process-step .elementor-heading-title{font-size:1.35rem;line-height:1.05}.hb-main-site .ha-process-step .elementor-widget-text-editor{color:var(--ha-muted);line-height:1.5}
.hb-main-site .ha-cta{padding:clamp(4rem,9vw,9rem) clamp(1.25rem,7vw,8rem);background:var(--ha-panel);border-bottom:1px solid var(--ha-line)}.hb-main-site .ha-cta .elementor-heading-title{font-size:clamp(2.8rem,6.5vw,8.5rem);line-height:.87;max-width:10ch}
.hb-main-site .ha-button .elementor-button{border-radius:0;background:var(--ha-accent);color:#111310;padding:.9rem 1.2rem;font-weight:800;transition:transform .2s ease,background .2s ease}.hb-main-site .ha-button .elementor-button:hover{transform:translate(-3px,-3px);background:#d0ff7d}.hb-main-site .ha-button .elementor-button:focus-visible{outline:3px solid #fff;outline-offset:4px}
.hb-main-site .ha-quiet-button .elementor-button{border-radius:0;background:transparent;border:1px solid var(--ha-line);color:var(--ha-ink);padding:.86rem 1.15rem}.hb-main-site .ha-quiet-button .elementor-button:hover{border-color:var(--ha-accent);color:var(--ha-accent)}
.hb-main-site .ha-pro-header{border-bottom:1px solid var(--ha-line)}.hb-main-site .ha-header-inner{min-height:72px;padding:0 clamp(1.25rem,4vw,5rem);align-items:center}.hb-main-site .ha-brand .elementor-heading-title{font-size:1.08rem;letter-spacing:-.035em}.hb-main-site .ha-brand a{color:inherit;text-decoration:none}.hb-main-site .ha-pro-header .elementor-nav-menu--main .elementor-item{color:var(--ha-ink);font-family:var(--ha-body);font-size:.78rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:.7rem .55rem}.hb-main-site .ha-pro-header .elementor-nav-menu--main .elementor-item:hover,.hb-main-site .ha-pro-header .elementor-nav-menu--main .elementor-item-active{color:var(--ha-accent)}.hb-main-site .ha-pro-header .elementor-menu-toggle{color:var(--ha-ink);border-color:var(--ha-line)}
.hb-main-site .ha-pro-footer{padding:2.4rem clamp(1.25rem,4vw,5rem);background:#080909}.hb-main-site .ha-footer-rule{border-top:1px solid var(--ha-line);padding-top:1.2rem}.hb-main-site .ha-footer-copy{font-size:.78rem;color:var(--ha-muted)}.hb-main-site .ha-footer-links a{color:var(--ha-ink);font-size:.78rem;text-decoration:none}.hb-main-site .ha-footer-links a:hover{color:var(--ha-accent)}
.hb-main-site .ha-page .elementor-widget-icon-list .elementor-icon-list-text{color:var(--ha-muted)}.hb-main-site .ha-page .elementor-widget-icon-list .elementor-icon-list-icon i{color:var(--ha-accent)}
.hb-main-site .ha-page .elementor-field-group input,.hb-main-site .ha-page .elementor-field-group textarea,.hb-main-site .ha-page .wpforms-field input,.hb-main-site .ha-page .wpforms-field textarea,.hb-main-site .ha-page .wpforms-field select{border-radius:0!important;border:1px solid var(--ha-line)!important;background:#101210!important;color:var(--ha-ink)!important}.hb-main-site .ha-page .wpforms-submit{border-radius:0!important;background:var(--ha-accent)!important;color:#101210!important;border:0!important;font-weight:800!important}.hb-main-site a:focus-visible{outline:3px solid var(--ha-accent);outline-offset:4px}
@media(min-width:768px){.hb-main-site .ha-hero-copy{padding-left:18%}.hb-main-site .ha-hero-portrait{min-height:calc(100svh - 72px)}.hb-main-site .ha-hero-portrait img{min-height:calc(100svh - 72px)}.hb-main-site .ha-section-title{position:sticky;top:7rem;align-self:start}.hb-main-site .ha-work-item{grid-template-columns:3rem 1fr 12rem}.hb-main-site .ha-pro-footer{padding-top:3.5rem;padding-bottom:3.5rem}}
@media(prefers-reduced-motion:reduce){.hb-main-site *{transition:none!important;scroll-behavior:auto!important}}

/* Existing scoped Xpro shell remains active until Elementor Pro conditions are fully recognized. */
.hb-main-site .elementor-location-header,.hb-main-site .elementor-location-footer{background:#0a0b0b!important;color:#f3f5ef!important;border-color:rgba(243,245,239,.18)!important}
.hb-main-site .elementor-location-header a,.hb-main-site .elementor-location-footer a{color:#f3f5ef!important}
.hb-main-site .elementor-location-header a:hover,.hb-main-site .elementor-location-footer a:hover{color:#b8ff3d!important}
