@charset "UTF-8";

/*
Theme Name: Twenty Twenty-One-child
Theme URI: https://wordpress.org/themes/twentytwentyone/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Twenty Twenty-One-child is a blank canvas for your ideas and it makes the block editor your best brush. With new block patterns, which allow you to create a beautiful layout in a matter of seconds, this theme’s soft colors and eye-catching — yet timeless — design will let your work shine. Take it for a spin! See how Twenty Twenty-One elevates your portfolio, business website, or personal blog.
Requires at least: 5.3
Tested up to: 6.7
Requires PHP: 5.6
Version: 2.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyone-child
Tags: one-column, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, blog, portfolio

Twenty Twenty-One-child WordPress Theme, (C) 2020 WordPress.org
Twenty Twenty-One-child is distributed under the terms of the GNU GPL.
*/

@import url('https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');


:root {
    --paper: #FAF9F6;
    --paper2: #FFFFFF;
    --paper3: #F2F0E9;
    --ink: #1E2122;
    --ink2: #3D3F42;
    --mid: #83837F;
    --faint: #A9A8A1;
    --amber: #FBAF17;
    --amber-d: #C38A00;
    --amber-soft: #FCF4E2;
    --rule: #E6E4DC;
    --rule2: #D7D5CC;
    --char: #1E2122;
    --char2: #26292B;
    --char3: #15171A;
    --display: 'Poppins', system-ui, -apple-system, sans-serif;
    --mono: 'JetBrains Mono', ui-monospace, monospace;
    --maxw: 1180px;
}
ul {
    margin: 0;
    padding: 0;
}
.elementor-button-text, .footerNav h2, .getInTouch, .mono {
    font-family: "JetBrains Mono", monospace !important;

}
.pagesize {
    width: 1200px;
    margin:0px auto;
}
.pageSize {
    width: 900px;
    margin:0px auto;
}
.dots::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(var(--rule2) 1.1px, transparent 1.1px);
    background-size: 28px 28px;
    opacity: .5;
    mask-image: radial-gradient(ellipse 80% 70% at 30% 30%, #000 30%, transparent 75%);
    -webkit-mask-image: radial-gradient(ellipse 80% 70% at 30% 30%, #000 30%, transparent 75%);
    z-index: 9;
}
.darkHeader {
    position: fixed;
    top:0px;
	left:0px;
    right:0;
    z-index: 9999;
    width:auto;
    animation: slide-in 500ms ease-out;
}
.headerMain .current_page_item a {
    font-weight: 600;
}
.headerMain .current_page_item a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6px;
    height: 2px;
    background:#FBAF17;
}
@keyframes slide-in {
	from { transform: translateY(-100%); } 
}

.headerMain {
	backdrop-filter: blur(14px);
	border-bottom: 2px solid #E6E4DC;
	background: rgba(250, 249, 246, .85);
    padding: 10px 0;
}
.headerMain ul li {
    position: relative;
}
.footerNav .current_page_item a {
    font-weight: 600;
    color: #FBAF17;
}

body{
	font-family: 'Poppins',system-ui,-apple-system,sans-serif !important;
	background-color: #FAF9F6 !important;

}

h1, h2, h3, h4, p, a button, .elementor-widget-text-editor, .elementor-counter-number, .elementor-counter-number-suffix, 
.elementor-icon-list-text, .contactForm input{
	font-family: 'Poppins',system-ui,-apple-system,sans-serif !important;
}

.elementor-counter-number-suffix {
    color: #FBAF17;
}
header .menu-menu-1-container .menu{
	display: flex;
	align-items: center;
	gap: 30px;
	list-style: none;
	font-size: 14px;
	font-weight: 400;
	a{
		text-decoration: none;
		color: #3D3F42;
		font-family: 'Poppins',system-ui,-apple-system,sans-serif;
	}
}

.callBtn .elementor-button:hover{
	background-color: #000;
	color: #fff;
}

.getInTouch{
	background-color: #FBAF17;
	color: #000;
	text-decoration: none;
	border-radius: 6px;
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1.62;
	letter-spacing: .06em;
    text-transform: uppercase;
    padding: 12px 20px;
	border: 1px solid transparent;
    transition: all .18s ease;
}
.custom-menu{
	display: flex;
	align-items: center;
	gap: 20px;

}
.sp .cert{
	color: #C9CAC6 !important;
}
p b{
	font-weight: 600;
	color: #fff;
}
.nav{
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 50px;
}
.logo img{
	width: 180px;
	height: auto;
}
footer{
	background-color: #1E2122;
    padding: 58px 0px 10px;
}
.details img{
	height: auto;
    /* margin-bottom: 16px; */
    width: 210px;
}
.cert {
    font-family: 'JetBrains Mono',ui-monospace,monospace;
    font-size: 11px;
    letter-spacing: .05em;
    color: #fff;
    border: 1px solid #34383A;
    border-radius: 4px;
    padding: 5px 11px;
	margin-top: 20px;
}
.speciality{
	font-size: 13.5px;
    color: #A3A29B;
    line-height: 1.6;
    max-width: 330px;
	font-family: 'Poppins',system-ui,-apple-system,sans-serif;
}
.site-footer{
	display: flex;
	gap: 80px;
}
.site-footer .fcerts {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: -10px 0px 30px 0px;
}
.footerNav ul li a{
	display: block;
    font-size: 13.5px;
    color: #D7D8D4;
    line-height: 2.0;
}
.footerNav ul li {
    list-style: none;
}
.menu a:hover{
	color: #FBAF17;
}
.footerNav h2 {
    font-size: 11px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: #fbaf17;
    margin-bottom: 13px;
}
.site-footer .left{
	width: 45%;
}
.site-footer .right{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 30px;
	width: 100%;
}
.line{
	background-color: #b8b8d021;
	width: 100%;
	height: 0.2px;
}
.rights{
	color: #7C7C78;
	font-size: 11px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding-top: 20px;
}
.privacy span:hover{
	color: #FBAF17;
	cursor: pointer;
}
.build{
	font-family: 'Poppins',system-ui,-apple-system,sans-serif;
	font-size: 14px;
}
@keyframes pulse {
	0% {
		box-shadow: 0 0 0 0 rgba(237, 28, 36, .45);
	}
	70% {
		box-shadow: 0 0 0 9px rgba(237, 28, 36, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(237, 28, 36, 0);
	}
}
#pulse {
	display: inline-flex;
    width: 8px;
    height: 8px;
    border-radius: 50% !important;
	background-color: #FBAF17 !important;
	margin-right: 6px;
    box-shadow: 0 0 0 0 rgba(251, 175, 23,0.5);
    animation: pulse 2.4s infinite;
}
.ic {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #FCF4E2;
    display: flex;
    align-items: center;
    justify-content: center;
    /* margin-bottom: 18px; */
}
.details h1{
	font-weight: 300;
	font-size: 50px;
	margin: 0;
	padding: 0;
	b{
		font-weight: 700;
	}

}
.explanation{
	color: #3D3D5C;
	font-size: 17.5px;
	margin: 0;
	padding: 0;
	max-width: 680px;
	line-height: 1.6;
}
.details{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.ctfUI{
	display: flex;
	gap: 100px;
	margin-top: 50px;
	margin-bottom: 50px;
}
.contact_details table th{
	text-align: left;
	font-family: 'JetBrains Mono',ui-monospace,monospace;
    font-size: 12px;
	font-weight: 400;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #6B6B85;
    min-width: 110px;
    padding-top: 3px;
}
a{
	text-decoration: none;
}
.contact_details table td{
	font-family: 'Poppins',system-ui,-apple-system,sans-serif;
	font-size: 15px;
	font-weight: 300;
	max-width: 226px;
	a{
		color: #6B6B85;
	}
}
.box {
    position: relative;
    overflow: hidden;
}
.box::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #fbaf1707;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}
.box:hover::before {
    opacity: 1;
}
.cCollege .elementor-widget-wrap{
	border-top: 8px solid #FBAF17 !important;
	cursor: pointer;
}
#ndsCallBtn:hover{
	background-color: #000;
	color: #fff;
}
#fullProcessBtn:hover{
	background-color: transparent;
}
.premium-card .elementor-widget-wrap{
    position: relative;
    overflow: hidden;
}
.premium-card .elementor-widget-wrap::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #FBAF17;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease-in-out;
}
.premium-card .elementor-widget-wrap:hover::before{
    transform: scaleX(1);
}
.custom-table{
    width:100%;
    border-collapse:collapse;
}
.custom-table tr{
    border-bottom:1px solid #e7e7e7;
    transition:.3s;
}
.custom-table tr:last-child{
    border-bottom:none;
}
.custom-table td{
    padding:8px 0;
    font-size:13px;
    vertical-align:middle;
}
.custom-table .code{
    width:200px;
    color:#c58b10;
    font-weight:500;
    letter-spacing:1px;
    white-space:nowrap;
}
.custom-table td:last-child{
    color: #33333390;
    font-weight:400;
}
.entity-card{
    max-width:850px;
    margin-top:18px;
    background:#fff;
    border:1px solid #d8d3ca;
    border-radius:12px;
    padding:24px 26px;
}
.entity-title{
    font-size:11px;
    letter-spacing:5px;
    text-transform:uppercase;
    color: #83837F;
    margin-bottom:14px;
    font-weight:600;
}
.entity-table{
    width:100%;
    border-collapse:collapse;
}
.entity-table tr{
    border-bottom:1px solid #e8e8e8;
}
.entity-table tr:last-child{
    border-bottom:none;
}
.entity-table td{
    padding:8px 0;
    font-size:13.5px;
    color:#3D3F42;
    vertical-align:middle;
	border-spacing: 2px;
}
.entity-table .label{
    width:190px;
    color:#c88b08;
    font-weight:500;
    letter-spacing:1px;
}
.compliance-card{
    max-width:900px;
    margin:auto;
    background:#fff;
    border:1px solid #d8d2c8;
    border-radius:12px;
    padding:24px 26px;
	display: flex;
	justify-content: center;
	flex-direction: column;
}
.card-title{
    font-size:11px;
    letter-spacing:5px;
    text-transform:uppercase;
    color:#83837F;
    margin-bottom:14px;
    font-weight:600;
}
.compliance-table{
    width:100%;
    border-collapse:collapse;
}
.compliance-table tr{
    border-bottom:1px solid #e7e7e7;
}
.compliance-table tr:last-child{
    border-bottom:none;
}
.compliance-table td{
    padding:8px 0;
    font-size:13px;
	font-weight: 300;
    color:#333;
    vertical-align:middle;
}
.compliance-table .label{
    width:240px;
    color:#c88b08;
    font-weight:500;
    letter-spacing:1px;
}
.singleBox{
	display: flex;
	justify-content: flex-start;
}
.macombLoc .elementor-container{
    border: 1px solid #D7D5CC;
    border-radius: 12px;
}
.table-wrapper{
    width:100%;
    overflow-x:auto;
}
.product-table{
    width:100%;
    border-collapse:collapse;
    background:transparent;
}
.product-table thead th{
    background:#1E2122;
    color:#fff;
    text-align:left;
    padding:12px 14px;
    font-size:11px;
    letter-spacing:1.2px;
    text-transform:uppercase;
    font-weight:500;
}
.product-table thead th:first-child{
    border-top-left-radius:14px;
}
.product-table thead th:last-child{
    border-top-right-radius:14px;
}
.product-table td{
    padding:12px 14px;
    font-size:14px;
    color:#3D3F42;
    line-height:1.7;
    vertical-align:top;
    border-top: 1px solid #E6E4DC;
}
.product-table td:nth-child(3){
    font-family:monospace;
    font-size:14px;
    font-weight:500;
}
.badge{
    display:inline-block;
    padding:3px 8px;
    border-radius:4px;
    font-size:10px;
    font-weight:500;
    letter-spacing:1px;
}
.standard{
    background:#ecebea;
    color:#333;
}
.high{
    background:#f8ae18;
    color:#111;
}
/* Bold Evaluation Factor */
.product-table tbody td:nth-child(2){
    font-weight:500;
}
/* Badge Base */
.badge{
    display:inline-block;
    padding:3px 8px;
    border-radius:8px;
    font-size:10px;
    font-weight:600;
    letter-spacing:.5px;
    white-space:nowrap;
}
/* Pass / Fail */
.pass{
    background:#fde9e7;
    color:#d14b3d;
}
/* Primary */
.primary{
    background:#fff3d8;
    color:#d18b00;
}
/* Evaluated */
.evaluated{
    background:#e6eef8;
    color:#3a6aa6;
}
/* Mandatory */
.mandatory{
    background:#ecebea;
    color:#444;
}
.timeline{
    position:relative;
    max-width:1400px;
    margin:auto;
}
.timeline::before{
    content:"";
    position:absolute;
    left:18px;
    top:0;
    bottom:0;
    width:2px;
    background:#d8d5cf;
}
.timeline-item{
    display:flex;
    gap:18px;
    position:relative;
    padding-bottom:25px;
}
.timeline-marker{
    position:relative;
    width:40px;
    flex-shrink:0;
}
.timeline-marker span{
    width:20px;
    height:20px;
    border-radius:50%;
    background:#f6f4ed;
    border:2px solid #d8d5cf;
    position:absolute;
    left:8px;
    top:8px;
}
/* Active Dot */
.timeline-item.active .timeline-marker span{
    background:#f2a51c;
    border-color:#f2a51c;
}
.timeline-number{
    color:#d08b00;
    font-size:20px;
    font-weight:700;
    letter-spacing:2px;
    font-family:monospace;
    padding-top:6px;
}
.timeline-content{
    flex:1;
}
.timeline-content{
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.timeline-content h3{
    font-size:16px;
    padding-top: 6px;
    color:#111827;
    font-weight:600;
}
.timeline-content p{
    font-size:16px;
    line-height:1.4;
    letter-spacing: 0.4;
    font-weight: 300;
    color:#3D3F42;
}
/* Alternate Row Background */
.spt tbody tr:nth-child(odd){
    background:#ffffff;
}
.spt tbody tr:nth-child(even){
    background:#f5f2eb;
}


/* Blog Style Start */
.apps-blog-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}
.apps-blog-card{
    background:#fff;
    border:1px solid #e6e6e6;
    border-top: 7px solid #f5aa16;
    border-radius: 11px;
    padding:24px;
    transition:.3s;
    display:flex;
    flex-direction:column;
}
.apps-blog-card:hover{
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    border:1px solid #f5aa16;
    border-top: 7px solid #f5aa16;
}
.blog-category{
    color:#f5aa16;
    font-family: var(--mono);
    font-size: 10.5px;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.blog-title{
    font-weight: 600;
    font-size: 19px;
    line-height: 1.25;
    margin: 10px 0 10px;
    letter-spacing: -.01em;
}
.blog-title a{
    color:#0f172a;
    text-decoration:none;
}
.blog-excerpt{
    color:#555;
    font-size:14px;
    line-height:1.5em;
    flex:1;
}
.blog-footer{
    display:flex;
    align-items:center;
    gap:12px;
    color:#666;
    font-size:12px;
    margin-top:15px;
    font-family: var(--mono);
}
.blog-footer .dot{
    width:5px;
    height:5px;
    border-radius:50%;
    background:#999;
}

.article p {
    font-size: 17px;
    line-height: 1.72;
    color: #3D3F42;
    margin: 0 0 20px;
}
.article h2 {
    font-weight: 600;
    font-size: 25px;
    letter-spacing: -.01em;
    color:#1E2122;
    margin: 38px 0 14px;
}
.article strong {
    color:#1E2122;
}
.article .pullquote {
    border-left: 3px solid #FBAF17;
    padding: 6px 0 6px 24px;
    margin: 30px 0;
    font-weight: 300;
    font-size: 23px;
    line-height: 1.35;
    color:#1E2122;
    letter-spacing: -.01em;
}
.article ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 15px;
    width: 10px;
    height: 3px;
    background:#FBAF17;
}
.article ul li {
    position: relative;
    padding: 7px 0 7px 26px;
    font-size: 16.5px;
    color:#3D3F42;
    line-height: 1.6;
    list-style:none;
}
.single-blog-title {
    font-weight: 300;
    font-size: clamp(32px, 4.4vw, 48px);
    line-height: 1.08;
    letter-spacing: -.025em;
    margin: 14px 0 16px;
}
.single-blog-meta{
    display:flex;
    align-items:center;
    gap:12px;
    color:#6b7280;
    font-size:12px;
    border-bottom: 1px solid #E6E4DC;
    padding-bottom: 22px;
}
.single-blog-meta .dot{
    width:5px;
    height:5px;
    background:#999;
    border-radius:50%;
}
.single-blog-hero {
    padding-top: 48px;
    padding-bottom: 30px;
}
/* Blog Style End */

.val a{
    font-size: 15px;
    color:#1E2122;
}
.val a:hover {
    color:#FBAF17;
}

/* Form style */

.contactForm input, .contactForm textarea {
    width: 100%;
    font-size: 15px;
    color:#1E2122;
    background:#FFFFFF;
    border: 1px solid #D7D5CC;
    border-radius: 8px;
    padding: 13px 15px;
}
.contactForm textarea  {
    height: 110px;
    resize: none;
}
.contactForm input:focus, .contactForm textarea:focus {
    outline: none;
    border-color: #FBAF17;
}
.contactForm label {
    display: block;
    font-family: var(--mono);
    font-size: 11px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color:#83837F;
    margin-bottom: 7px;
}
.contactForm p {
    margin: 0;
    margin-bottom: 15px;
}
.contactForm br {
    display: none;
}
.wpcf7-not-valid-tip {
    font-size: 11px !important;
    margin-top: 4px;
}
.subBtn input {
    padding: 16px 30px;
    font-size: 13px;
    background:#1E2122;
    color:#fff;
    font-family: var(--mono);
    font-weight: 500;
    letter-spacing: .08em;
    text-transform: uppercase;
    border-radius: 6px;
    border: 1px solid #1E2122;
    cursor: pointer;
    transition: all .18s ease;
}
.subBtn input:hover {
    background:#fbaf17;
    color:#1E2122;
    border: 1px solid #1E2122;
}


@media only screen and 
(min-width:10px) and 
(max-width:1200px) {

    .pagesize, .pageSize {
        width: auto;
        margin:0px 20px;
    }
}

@media only screen and 
(min-width:10px) and 
(max-width:900px) {

    .custom-menu {
       display: none;
    }
}

@media only screen and 
(min-width:10px) and 
(max-width:768px) {

    .site-footer {
        display: block !important;
    }
    .site-footer .right {
        display: block !important;
        width: 100%;
    }
    .footerNav {
        margin-bottom: 20px;
    }
    .rights {
        font-size: 11px;
        display: block;
        padding: 15px 0;
        text-align: center;
    }
    .apps-blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and 
(min-width:10px) and 
(max-width:600px) {

    .apps-blog-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}