/* =========================================================
Under Construction Page
style.css
========================================================= */

/* ---------- Reset ---------- */

{
margin: 0;
padding: 0;
box-sizing: border-box;
}

html {
scroll-behavior: smooth;
}

body {
min-height: 100vh;
font-family:
Inter,
-apple-system,
BlinkMacSystemFont,
"Segoe UI",
Roboto,
Helvetica,
Arial,
sans-serif;
color: #172033;
background: #eef2f7;
}

/* ---------- Page ---------- */

.page {
position: relative;
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
padding: 40px 20px;
overflow: hidden;
background:
radial-gradient(
circle at 15% 15%,
rgba(38, 99, 235, 0.12),
transparent 30%
),
radial-gradient(
circle at 85% 85%,
rgba(14, 165, 164, 0.10),
transparent 30%
),
#eef2f7;
}

/* ---------- Decorative Background ---------- */

.background-shape {
position: absolute;
border-radius: 50%;
pointer-events: none;
filter: blur(2px);
}

.shape-one {
width: 420px;
height: 420px;
top: -220px;
right: -120px;
background: rgba(37, 99, 235, 0.08);
}

.shape-two {
width: 350px;
height: 350px;
bottom: -190px;
left: -120px;
background: rgba(14, 165, 164, 0.08);
}

/* ---------- Main Card ---------- */

.construction-card {
position: relative;
z-index: 2;
width: 100%;
max-width: 900px;
min-height: 720px;
display: flex;
flex-direction: column;
background: rgba(255, 255, 255, 0.94);
border: 1px solid rgba(255, 255, 255, 0.8);
border-radius: 24px;
box-shadow:
0 30px 80px rgba(20, 32, 55, 0.12),
0 8px 25px rgba(20, 32, 55, 0.05);
overflow: hidden;
backdrop-filter: blur(10px);
}

/* ---------- Header ---------- */

.site-header {
padding: 30px 45px;
border-bottom: 1px solid #edf0f4;
}

.brand {
display: flex;
align-items: center;
gap: 11px;
}

.brand-mark {
width: 34px;
height: 34px;
display: inline-flex;
align-items: center;
justify-content: center;
color: #ffffff;
font-size: 13px;
background: #2563eb;
border-radius: 9px;
box-shadow: 0 5px 15px rgba(37, 99, 235, 0.25);
}

.brand-name {
color: #172033;
font-size: 14px;
font-weight: 750;
letter-spacing: 1.6px;
}

/* ---------- Content ---------- */

.content {
flex: 1;
width: 100%;
max-width: 650px;
margin: 0 auto;
padding: 55px 30px 45px;
text-align: center;
}

/* ---------- Construction Icon ---------- */

.icon-wrapper {
width: 76px;
height: 76px;
margin: 0 auto 28px;
display: flex;
align-items: center;
justify-content: center;
background: #eff6ff;
border: 1px solid #dbeafe;
border-radius: 20px;
}

.construction-icon {
position: relative;
width: 44px;
height: 44px;
display: flex;
align-items: center;
justify-content: center;
color: #2563eb;
font-size: 31px;
}

.tool {
display: block;
animation: floatingTool 3s ease-in-out infinite;
}

@keyframes floatingTool {
0%,
100% {
transform: translateY(0) rotate(-8deg);
}

50% {
    transform: translateY(-5px) rotate(8deg);
}


}

/* ---------- Typography ---------- */

.eyebrow {
margin-bottom: 15px;
color: #2563eb;
font-size: 12px;
font-weight: 800;
letter-spacing: 2px;
}

h1 {
max-width: 700px;
margin: 0 auto;
color: #172033;
font-size: clamp(38px, 6vw, 64px);
line-height: 1.08;
font-weight: 750;
letter-spacing: -2.5px;
}

h1 span {
display: block;
color: #2563eb;
}

.description {
max-width: 580px;
margin: 24px auto 0;
color: #667085;
font-size: 16px;
line-height: 1.8;
}

/* ---------- Progress ---------- */

.progress-section {
margin-top: 42px;
text-align: left;
}

.progress-label {
display: flex;
justify-content: space-between;
margin-bottom: 10px;
color: #667085;
font-size: 12px;
font-weight: 650;
}

#progress-value {
color: #2563eb;
}

.progress-bar {
width: 100%;
height: 8px;
overflow: hidden;
background: #e8edf4;
border-radius: 20px;
}

.progress-fill {
width: 0;
height: 100%;
background: linear-gradient(
90deg,
#2563eb,
#14b8a6
);
border-radius: inherit;
transition: width 1.5s ease;
}

/* ---------- Countdown ---------- */

.launch-section {
margin-top: 40px;
}

.launch-label {
margin-bottom: 18px;
color: #98a2b3;
font-size: 10px;
font-weight: 800;
letter-spacing: 2px;
}

.countdown {
display: flex;
justify-content: center;
align-items: center;
gap: 18px;
}

.countdown-item {
min-width: 70px;
}

.countdown-item strong {
display: block;
color: #172033;
font-size: 29px;
line-height: 1;
font-weight: 700;
font-variant-numeric: tabular-nums;
}

.countdown-item span {
display: block;
margin-top: 7px;
color: #98a2b3;
font-size: 10px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 1px;
}

.separator {
margin-top: -15px;
color: #cbd5e1;
font-size: 24px;
font-weight: 300;
}

/* ---------- Contact ---------- */

.contact-section {
margin-top: 40px;
}

.contact-section p {
margin-bottom: 14px;
color: #667085;
font-size: 13px;
}

.contact-button {
display: inline-flex;
align-items: center;
gap: 10px;
padding: 12px 20px;
color: #ffffff;
background: #172033;
border: 1px solid #172033;
border-radius: 10px;
font-size: 13px;
font-weight: 700;
text-decoration: none;
transition:
background 0.2s ease,
transform 0.2s ease,
box-shadow 0.2s ease;
}

.contact-button span {
font-size: 17px;
transition: transform 0.2s ease;
}

.contact-button:hover {
background: #2563eb;
border-color: #2563eb;
box-shadow: 0 8px 20px rgba(37, 99, 235, 0.2);
transform: translateY(-2px);
}

.contact-button:hover span {
transform: translateX(3px);
}

/* ---------- Footer ---------- */

.site-footer {
padding: 22px 30px;
border-top: 1px solid #edf0f4;
text-align: center;
}

.site-footer p {
color: #98a2b3;
font-size: 11px;
}

/* ---------- Responsive ---------- */

@media (max-width: 700px) {

.page {
    padding: 20px 12px;
}

.construction-card {
    min-height: auto;
    border-radius: 18px;
}

.site-header {
    padding: 22px 25px;
}

.content {
    padding: 45px 22px 40px;
}

.icon-wrapper {
    width: 68px;
    height: 68px;
    margin-bottom: 23px;
}

h1 {
    font-size: clamp(36px, 11vw, 52px);
    letter-spacing: -1.8px;
}

.description {
    font-size: 14px;
    line-height: 1.7;
}

.countdown {
    gap: 8px;
}

.countdown-item {
    min-width: 58px;
}

.countdown-item strong {
    font-size: 23px;
}

.separator {
    font-size: 19px;
}


}

@media (max-width: 420px) {

.content {
    padding-left: 17px;
    padding-right: 17px;
}

.eyebrow {
    font-size: 10px;
    letter-spacing: 1.5px;
}

h1 {
    font-size: 35px;
}

.countdown {
    gap: 3px;
}

.countdown-item {
    min-width: 52px;
}

.countdown-item strong {
    font-size: 20px;
}

.countdown-item span {
    font-size: 8px;
    letter-spacing: 0.5px;
}

.separator {
    font-size: 16px;
}


}

/* ---------- Reduced Motion ---------- */

@media (prefers-reduced-motion: reduce) {

*,
*::before,
*::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
}


}