/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* Mission 23: keep Elementor's native page tree while restoring V3.8 geometry. */
body.fajrfiber-v38 .elementor[data-elementor-type="wp-page"] > .e-con {
  --width: 100%;
  width: 100%;
  max-width: none;
  margin: 0;
}
body.fajrfiber-v38 .elementor .e-con {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
}
body.fajrfiber-v38 .elementor .container {
  --width: calc(var(--maxw) + var(--gutter)*2);
  width: 100%;
  max-width: calc(var(--maxw) + var(--gutter)*2);
  margin-inline: auto;
  padding-inline: var(--gutter);
}
body.fajrfiber-v38 .elementor .elementor-heading-title {
  font-family: Archivo, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color: var(--ink);
}
body.fajrfiber-v38 .elementor .elementor-widget-text-editor {
  font-family: Archivo, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

body.fajrfiber-v38 #content > .ast-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

/* Preserve the frozen shell button and visible keyboard focus against Astra. */
body.fajrfiber-v38 .site-header .menu-toggle,
body.fajrfiber-v38 .site-header .menu-toggle:hover,
body.fajrfiber-v38 .site-header .menu-toggle:focus,
body.fajrfiber-v38 .site-header .nav__trigger:hover,
body.fajrfiber-v38 .site-header .nav__trigger:focus {
  background: transparent;
  color: var(--ink);
  box-shadow: none;
}
body.fajrfiber-v38 .site-header .menu-toggle:focus-visible,
body.fajrfiber-v38 .site-header .nav__trigger:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 3px;
}

/* Mission 25: Form 3 presentation only. Fluent Forms fields live inside one fieldset. */
body.fajrfiber-v38 #engineer { width:min(720px,calc(100% - 32px)); max-width:720px; max-height:calc(100dvh - 32px); overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
body.fajrfiber-v38 #engineer .form { padding:32px; }
body.fajrfiber-v38 #engineer .dialog__head { align-items:flex-start; gap:24px; position:sticky;top:0;z-index:2;background:#fff;padding-bottom:12px; }
body.fajrfiber-v38 .dialog__close,body.fajrfiber-v38 .dialog__close:hover,body.fajrfiber-v38 .dialog__close:focus { background:transparent;color:var(--ink);flex-shrink:0;min-width:44px;min-height:44px; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .fluentform form { display:block; width:100%; min-width:0; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .fluentform form>fieldset { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 24px; width:100%; min-width:0; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-el-group { margin:0;min-width:0; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-el-group:is(:has(input[type=email]),:has(textarea),:has(select),.ff_submit_btn_wrapper) { grid-column:1/-1; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-el-input--label { margin:0 0 8px;line-height:1.4; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-el-input--label label { display:inline;font:inherit;font-weight:600; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-el-input--label label::after { display:inline;white-space:nowrap; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-el-input--content { min-width:0;width:100%; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-el-form-control { box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:48px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:2px;box-shadow:none;background:#fff;color:var(--ink);font:inherit;line-height:1.4; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) textarea.ff-el-form-control { min-height:120px;resize:vertical; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) select.ff-el-form-control { padding-right:36px; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-btn-submit { width:100%;min-height:48px;padding:12px 24px;border:1px solid var(--blue);border-radius:2px;background:var(--blue);color:#fff;font:inherit;font-weight:600; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) :focus-visible { outline:2px solid var(--blue);outline-offset:3px; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .ff-el-is-error .ff-el-form-control { border-color:#B42318; }
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .error.text-danger { margin-top:8px; }
body.fajrfiber-v38 #engineer .form-notice { margin-top:24px; }
@media(max-width:800px){body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .fluentform form>fieldset{grid-template-columns:minmax(0,1fr);gap:16px;}body.fajrfiber-v38 #engineer{width:min(600px,calc(100% - 24px));max-height:calc(100dvh - 24px);}body.fajrfiber-v38 #engineer .form{padding:24px;} }
@media(max-width:480px){body.fajrfiber-v38 #engineer .form{padding:20px;}body.fajrfiber-v38 #engineer .dialog__head{gap:12px;} }

/* Elementor heading wrappers inherit the frozen semantic type roles. */
body.fajrfiber-v38 .elementor .elementor-heading-title {font-size:inherit;line-height:inherit!important;font-weight:inherit;letter-spacing:inherit;color:inherit;}
body.fajrfiber-v38 .elementor .reading-stack > .elementor-widget:has(> .rule-list) {margin-top:0;}
body.fajrfiber-v38 .elementor .section-intro > .elementor-widget-text-editor {margin-top:24px;color:var(--ink-2);}
body.fajrfiber-v38 .elementor .destination-close .elementor-heading-title {color:white;}

body.fajrfiber-v38 .elementor .section-intro + .elementor-widget .page-route {margin-top:0;}
body.fajrfiber-v38 .elementor .proof-links {flex-direction:row;flex-wrap:wrap;gap:8px 28px;}
body.fajrfiber-v38 .elementor .proof-links > .elementor-widget {width:auto;--container-widget-width:auto;}
body.fajrfiber-v38 .elementor .ecosystem-head > .elementor-widget-text-editor {font-size:18px;line-height:1.6;color:var(--ink-2);}
body.fajrfiber-v38 .elementor .ecosystem-head > .elementor-widget-text-editor p {font-size:inherit;line-height:inherit;}
@media(max-width:960px){body.fajrfiber-v38 .elementor .ecosystem-head > .elementor-widget-text-editor{margin-top:24px;}}
@media(max-width:600px){body.fajrfiber-v38 .elementor .ecosystem-head > .elementor-widget-text-editor{font-size:16px;line-height:1.5;margin-top:16px;}}

body.fajrfiber-v38 .elementor .proof-row > .elementor-widget-text-editor:has(>a){min-height:44px;}
body.fajrfiber-v38 .elementor .proof-row > .elementor-widget-text-editor > a{display:inline-flex;align-items:center;min-height:44px;}

body.fajrfiber-v38 .elementor .elementor-widget-text-editor{font-size:17px;line-height:1.6;}
body.fajrfiber-v38 .elementor .ecosystem-rows strong{line-height:1.6;}
body.fajrfiber-v38 .elementor .ecosystem-rows p{line-height:1.6;}

@media(max-width:600px){body.fajrfiber-v38 .elementor .ecosystem-rows p{line-height:1.45;}}

body.fajrfiber-v38 #ast-scroll-top{display:none!important;}

body.fajrfiber-v38 .elementor .requirement-widget{display:contents!important;}

body.fajrfiber-v38 .elementor .hero-actions{flex-direction:row;flex-wrap:wrap;}
body.fajrfiber-v38 .elementor-widget-button.btn{display:contents!important;}
body.fajrfiber-v38 .elementor-widget-button.btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:12px 22px;border:1px solid;border-color:inherit;border-radius:2px;background:inherit;color:inherit;font:inherit;font-weight:560;line-height:1.5;text-decoration:none;}
body.fajrfiber-v38 .brief-options label{font:inherit;line-height:inherit;}

body.fajrfiber-v38 .elementor .brief-intro .elementor-widget-heading.h2{margin-bottom:24px;}
/* Match frozen stacked mobile hero actions through native Elementor wrappers. */@media(max-width:600px){body.fajrfiber-v38 .elementor .hero-actions{flex-direction:column;align-items:stretch;}body.fajrfiber-v38 .elementor .hero-actions .elementor-button{width:100%;}}
/* Keep Astra table defaults out of the frozen service comparison. */body.fajrfiber-v38 .compare{border:0;margin:0;}body.fajrfiber-v38 .compare th,body.fajrfiber-v38 .compare td{border-right:0;}body.fajrfiber-v38 .compare tbody th,body.fajrfiber-v38 .compare tbody td{border-bottom:0;}body.fajrfiber-v38 .compare th{border-left:0;}
body.fajrfiber-v38 .elementor .reading-stack>.elementor-widget-text-editor:has(>a:only-child){margin-top:0;}

body.fajrfiber-v38 .elementor .policy-measure{max-width:calc(72ch + var(--gutter)*2);}body.fajrfiber-v38 .operation-stage h4{margin:1.33em 0;}

body.fajrfiber-v38 .contact-enquiry-runtime{margin-top:32px;}body.fajrfiber-v38 .contact-enquiry-runtime .ff-el-group:has(textarea),body.fajrfiber-v38 .contact-enquiry-runtime .ff-el-group:has(select){grid-column:1/-1;}

body.fajrfiber-v38 .service-objectives h4{margin:1.33em 0;}body.fajrfiber-v38.page-id-133 .surface-paper figure{margin:1em 40px;}

/* Preserve frozen interaction contrast against Astra hover/focus button fills. */
body.fajrfiber-v38 .scope-item__button:hover,body.fajrfiber-v38 .scope-item__button:focus{background:transparent;}
body.fajrfiber-v38 .mb-option:hover,body.fajrfiber-v38 .mb-option:focus{background:transparent;color:var(--ink-2);}
body.fajrfiber-v38 .mb-option[aria-pressed="true"],body.fajrfiber-v38 .mb-option[aria-pressed="true"]:hover,body.fajrfiber-v38 .mb-option[aria-pressed="true"]:focus{background:var(--navy);color:#fff;}

/* Migrated headings inherit their approved surface foreground; neutralize Astra tag colors. */
body.fajrfiber-v38 :where(h1,h2,h3,h4,h5,h6){color:inherit;}

/* Retain frozen inverse CTA foregrounds against Astra hover/focus colors. */
body.fajrfiber-v38 .btn--inverse{--button-foreground:var(--blue-deep);}
body.fajrfiber-v38 :is(.resolution,.product-close) .btn--inverse{--button-foreground:var(--navy);}
body.fajrfiber-v38 .btn--inverse:is(:hover,:focus){background:var(--blue-tint);color:var(--button-foreground);}

/* Restore the frozen visible keyboard focus against Astra button resets. */
body.fajrfiber-v38 :focus-visible{outline:2px solid var(--blue);outline-offset:3px;}
body.fajrfiber-v38 :is(.ops,.close,.footer,.resolution,.product-close) :focus-visible{outline-color:#fff;}

body.fajrfiber-v38 .destination-close :focus-visible{outline-color:#fff;}

/* Use the frozen V3.8 accessible error foreground in the real enquiry form. */
body.fajrfiber-v38 :is(#engineer,.contact-enquiry-runtime) .error.text-danger{color:#B42318;}

/* Approved dark-surface grammar also covers network/operations chapter links. */
body.fajrfiber-v38 :is(.span-floor,.position,.plate-operations,.plate-mobile-ops,.operations-band,.navy-hero,.stages__ops,.route__ops,.governance) :focus-visible{outline-color:#fff;}
