.ace-wrapper{
max-width:1500px;
margin:60px auto;
padding:20px;
font-family:Inter,sans-serif;
}

.ace-progress{
height:10px;
background:#e5e7eb;
border-radius:999px;
overflow:hidden;
margin-bottom:30px;
}

.ace-progress-bar{
height:100%;
width:100%;
background:linear-gradient(90deg,#2563eb,#3b82f6);
}

.ace-grid{
display:grid;
grid-template-columns:1.7fr .8fr;
gap:30px;
align-items:start;
}

.ace-form,
.ace-summary{
background:#fff;
border-radius:24px;
padding:35px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.ace-form h2{
font-size:38px;
font-weight:800;
margin-bottom:30px;
}

.ace-group{
margin-bottom:24px;
}

.ace-group > label{
display:block;
font-size:15px;
font-weight:700;
margin-bottom:10px;
color:#0f172a;
}

.ace-form select{
width:100%;
height:55px;
padding:0 15px;
border:1px solid #dbe4f0;
border-radius:12px;
font-size:16px;
background:#fff;
}

.ace-form input,
.ace-form textarea{
width:100%;
padding:14px 16px;
border:1px solid #dbe4f0;
border-radius:12px;
font-size:16px;
margin-bottom:15px;
}

.ace-form textarea{
height:120px;
resize:vertical;
}

/* INCLUDED FEATURES */

.ace-included{
background:#f8fafc;
padding:20px;
border-radius:16px;
border:1px solid #e2e8f0;
margin-bottom:20px;
}

.ace-included{
max-width:350px !important;
width:100%;
}
.ace-included h4{
margin:0 0 15px;
font-size:18px;
font-weight:700;
}

.ace-included ul{
list-style:none !important;
padding-left:10px !important;
margin-left:0 !important;
}


.ace-included li{
padding:8px 0;
font-size:15px;
font-weight:500;
text-align:left;
}

/* EXTRA FEATURES */

.ace-features{
display:grid !important;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:12px;
}

.ace-features label{
display:flex !important;
align-items:center;
gap:4px;
background:#f8fafc;
border:1px solid #e2e8f0;
padding:10px 12px;
border-radius:12px;
cursor:pointer;
margin:0 !important;
font-size:14px;
font-weight:600;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.ace-features input[type="checkbox"]{
width:auto !important;
margin:0 !important;
flex-shrink:0;
}

.ace-features label:hover{
background:#eff6ff;
border-color:#2563eb;
}



/* BUTTON */

#ace_submit{
width:100%;
height:58px;
border:none;
border-radius:14px;
background:linear-gradient(135deg,#2563eb,#3b82f6);
color:#fff;
font-size:18px;
font-weight:700;
cursor:pointer;
transition:.3s;
}

#ace_submit:hover{
transform:translateY(-2px);
}

/* SUMMARY */

.ace-summary{
position:sticky;
top:30px;
background:linear-gradient(135deg,#0f172a,#1e293b);
color:#fff;
}

.ace-summary h3{
font-size:28px;
margin-bottom:20px;
color:#fff;
}

.ace-price{
font-size:64px;
font-weight:800;
line-height:1;
margin-bottom:20px;
}

.ace-timeline,
.ace-package,
.ace-package-card{
padding:18px;
background:rgba(255,255,255,.08);
border-radius:16px;
margin-bottom:15px;
}

.ace-timeline strong,
.ace-package strong{
display:block;
margin-top:5px;
font-size:18px;
}

.ace-package-badge{
display:inline-block;
background:#3b82f6;
padding:6px 12px;
border-radius:999px;
font-size:12px;
font-weight:700;
margin-bottom:15px;
}

.ace-package-card h3{
color:#fff;
font-size:24px;
margin-bottom:10px;
}

.ace-package-card p{
opacity:.85;
margin-bottom:15px;
}

.ace-package-card ul{
list-style:none;
padding:0;
margin:0;
}

.ace-package-card li{
padding:8px 0;
border-bottom:1px solid rgba(255,255,255,.08);
}

/* HR */

hr{
margin:30px 0;
border:none;
height:1px;
background:#e5e7eb;
}

/* TABLET */

@media(max-width:991px){

.ace-grid{
grid-template-columns:1fr;
}

.ace-summary{
position:relative;
top:auto;
}

}

/* MOBILE */

@media(max-width:768px){

.ace-form,
.ace-summary{
padding:25px;
}

.ace-form h2{
font-size:30px;
}

.ace-price{
font-size:48px;
}

.ace-features label{
white-space:normal;
}

}