.hero-home{
padding-top:4px;
padding-bottom:8px;
display:flex;
flex-direction:column;
gap:12px;
}

.hero-strip-wrap{
width:100%;
}

.hero-strip-head{
display:flex;
align-items:end;
justify-content:space-between;
gap:16px;
margin-bottom:14px;
}

.hero-strip-title{
font-size:22px;
font-weight:600;
color:#0f172a;
}

.hero-strip-note{
font-size:13px;
color:#64748b;
}

.hero-products-scroll{
display:flex;
gap:18px;
overflow-x:auto;
overflow-y:hidden;
align-items:stretch;
padding-bottom:14px;
scrollbar-gutter:stable both-edges;
min-height:360px;
}

.hero-products-scroll::-webkit-scrollbar{
height:8px;
}

.hero-products-scroll::-webkit-scrollbar-thumb{
background:#c6d1db;
border-radius:999px;
}

.hero-card{
height:345px;
min-width:240px;
perspective:1200px;
padding-top:6px;
flex:0 0 240px;
will-change:transform;
}

.hero-card:hover{
transform:none;
}

.hero-card-inner{
position:relative;
width:100%;
height:100%;
transition:transform .5s ease, box-shadow .25s ease;
transform-style:preserve-3d;
}

.hero-card:hover .hero-card-inner{
transform:rotateY(180deg) translateY(-6px);
}

.hero-front,
.hero-back{
position:absolute;
inset:0;
border-radius:22px;
overflow:hidden;
backface-visibility:hidden;
}

.hero-front{
background:#f8fbfd;
border:1px solid #d5dde7;
box-shadow:0 10px 28px rgba(15,23,42,.06);
background-image:
linear-gradient(rgba(0,93,109,.05) 1px, transparent 1px),
linear-gradient(90deg, rgba(0,93,109,.05) 1px, transparent 1px);
background-size:22px 22px;
display:flex;
flex-direction:column;
align-items:center;
padding:20px 16px 20px;
position:relative;
transition:.25s ease;
min-height:100%;
}

.hero-front:before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:4px;
background:#005D6D;
}

.hero-ribbon{
position:absolute;
top:10px;
left:-6px;
background:#005D6D;
color:#ffffff;
font-size:10px;
font-weight:700;
padding:5px 12px;
border-radius:6px;
box-shadow:0 6px 12px rgba(0,0,0,.15);
}

.hero-card:hover .hero-front{
border-color:#8fb3bb;
box-shadow:
0 18px 40px rgba(0,93,109,.18),
0 0 0 1px rgba(0,93,109,.25);
}

.hero-front img{
height:140px;
max-width:100%;
object-fit:contain;
filter:contrast(1.05);
mix-blend-mode:multiply;
margin-bottom:10px;
}

.hero-front-code{
font-size:14px;
font-weight:700;
color:#0f172a;
text-align:center;
margin-bottom:8px;
}

.hero-front-tags{
display:flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;
gap:6px;
margin-bottom:10px;
max-width:180px;
margin-left:auto;
margin-right:auto;
}

.hero-front-tags span{
display:inline-flex;
align-items:center;
justify-content:center;
padding:6px 9px;
border-radius:999px;
font-size:11px;
font-weight:600;
background:#eef4f6;
color:#35535a;
border:1px solid #dce7ea;
min-width:72px;
text-align:center;
}

.hero-apps{
display:flex;
gap:10px;
margin-top:auto;
}

.hero-apps i{
width:18px;
height:18px;
color:#005D6D;
opacity:.8;
}

.hero-back{
background:linear-gradient(180deg,#0f172a 0%, #081327 100%);
color:#ffffff;
transform:rotateY(180deg);
padding:22px 18px 18px;
display:flex;
flex-direction:column;
gap:10px;
border:1px solid rgba(255,255,255,.08);
box-shadow:0 18px 42px rgba(15,23,42,.18);
}

.hero-back-icon{
width:36px;
height:36px;
display:flex;
align-items:center;
justify-content:center;
border-radius:10px;
background:rgba(255,255,255,.08);
color:#b5dfe5;
}

.hero-back h4{
font-size:16px;
font-weight:700;
line-height:1.2;
}

.hero-back p{
font-size:12px;
line-height:1.6;
color:rgba(255,255,255,.82);
}

.hero-back-specs{
display:flex;
flex-wrap:wrap;
gap:6px;
}

.hero-back-specs span{
display:inline-flex;
align-items:center;
padding:6px 8px;
border-radius:999px;
font-size:11px;
font-weight:600;
background:rgba(255,255,255,.08);
color:#d7e8eb;
}

.hero-card-btn{
margin-top:auto;
width:100%;
display:flex;
align-items:center;
justify-content:center;
padding:10px 12px;
border-radius:12px;
background:#005D6D;
color:#ffffff;
font-size:12px;
font-weight:700;
text-decoration:none;
transition:.2s;
}

.hero-card-btn:hover{
background:#014652;
transform:translateY(-1px);
}

.section-why{
position:relative;
padding-top:32px;
margin-top:10px;
}

.section-why:before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:1px;
background:linear-gradient(90deg,transparent,#d9e2ea,transparent);
}

.section-why .info-card{
min-height:230px;
transition:.25s;
}

.section-why .info-card:hover{
transform:translateY(-6px);
box-shadow:0 18px 38px rgba(15,23,42,.08);
}

/* ===============================
CONTACT SECTION (HOMEPAGE)
Professional equal height layout
=============================== */

.contact-box-home{
padding-top:54px;
padding-bottom:10px;
}

/* Main 2 column layout */

.contact-shell{

display:grid;
grid-template-columns:1fr 1fr;
gap:28px;
align-items:stretch;

}

/* Both sides equal height */

.contact-copy,
.contact-form-card{

height:100%;

}

/* LEFT COLUMN */

.contact-copy{

display:flex;
flex-direction:column;

background:#ffffff;
border:1px solid #e6eaf0;
border-radius:24px;

padding:32px;

box-shadow:0 12px 28px rgba(15,23,42,.05);

background-image:
linear-gradient(rgba(0,93,109,.035) 1px, transparent 1px),
linear-gradient(90deg, rgba(0,93,109,.035) 1px, transparent 1px);

background-size:28px 28px;

}

/* Title */

.contact-copy h2{

font-size:34px;
font-weight:600;

margin:10px 0 8px;

color:#0f172a;

}

/* Description */

.contact-copy p{

font-size:15px;
line-height:1.8;

color:#475569;

margin-bottom:20px;

}

/* Points pushed to bottom (PRO FIX) */

.contact-points{

display:grid;
gap:12px;

margin-top:auto;

}

/* Individual point */

.contact-point{

display:flex;

gap:12px;

padding:14px 16px;

border-radius:16px;

background:#f8fafc;

border:1px solid #e6edf2;

}

.contact-point i{

width:18px;
height:18px;

color:#005D6D;

}

.contact-point span{

font-size:14px;

color:#334155;

}

/* RIGHT COLUMN FORM */

.contact-form-card{

background:#ffffff;

border:1px solid #e6eaf0;

border-radius:24px;

padding:28px;

box-shadow:0 12px 28px rgba(15,23,42,.05);

display:flex;
flex-direction:column;

}

/* Mobile layout */

@media(max-width:1180px){

.contact-shell{

grid-template-columns:1fr;

}

}

@media(max-width:760px){

.contact-copy{

padding:24px;

}

.contact-copy h2{

font-size:28px;

}

.contact-form-card{

padding:18px;

}

}
.contact-form-card form{

height:100%;
display:flex;
flex-direction:column;

}

.btn-submit{

margin-top:auto;

}
