Files
PVHFrontend/src/pages/ItemPage/ItemPage.module.css
T

257 lines
3.7 KiB
CSS

.page {
min-height: 100vh;
padding: 126px 20px 96px;
background: #ffffff;
color: #151515;
box-sizing: border-box;
}
.loading {
min-height: 60vh;
padding-top: 140px;
color: #596474;
text-align: center;
font-size: 18px;
}
.top,
.hero,
.details {
width: 100%;
max-width: 1200px;
margin: 0 auto;
}
.top {
margin-bottom: 22px;
}
.back {
display: inline-flex;
align-items: center;
gap: 10px;
min-height: 44px;
padding: 0 18px;
border: 1px solid #d7dce3;
border-radius: 50px;
background: #ffffff;
color: #151515;
cursor: pointer;
font-size: 14px;
font-weight: 700;
transition: border-color 0.2s ease, transform 0.2s ease;
}
.back:hover {
border-color: #111111;
transform: translateY(-1px);
}
.hero {
display: grid;
grid-template-columns: minmax(320px, 0.9fr) minmax(0, 1.1fr);
gap: 30px;
align-items: stretch;
}
.left,
.right,
.details {
border: 1px solid #e7ebf0;
border-radius: 8px;
}
.left {
display: flex;
align-items: center;
justify-content: center;
min-height: 520px;
padding: 46px;
background: #f8fafc;
}
.left img {
display: block;
width: 100%;
max-width: 430px;
max-height: 430px;
object-fit: contain;
}
.right {
display: flex;
flex-direction: column;
justify-content: center;
padding: 48px;
background: linear-gradient(135deg, #f7fbff 0%, #ffffff 58%, #fff7cf 100%);
box-shadow: 0 18px 50px rgba(17, 31, 51, 0.06);
}
.breadcrumbs {
display: flex;
flex-wrap: wrap;
gap: 8px;
align-items: center;
margin-bottom: 28px;
color: #77808c;
font-size: 14px;
line-height: 1.4;
}
.breadcrumbs a {
color: #596474;
text-decoration: none;
cursor: pointer;
transition: color 0.2s ease;
}
.breadcrumbs a:hover {
color: #111111;
}
.kicker {
display: inline-block;
margin-bottom: 14px;
color: var(--lightblue);
font-size: 13px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
}
.title {
max-width: 720px;
margin: 0;
color: #111111;
font-size: clamp(32px, 3vw, 54px);
line-height: 1.08;
}
.short {
max-width: 620px;
margin: 24px 0 0;
color: #3f4652;
font-size: 17px;
line-height: 1.7;
}
.status {
width: fit-content;
margin: 28px 0 24px;
padding: 8px 14px;
border-radius: 50px;
background: #fff7cf;
color: #111111;
font-size: 14px;
font-weight: 700;
}
.details {
overflow: hidden;
margin-top: 30px;
background: #ffffff;
}
.tabs {
display: flex;
gap: 0;
border-bottom: 1px solid #e7ebf0;
background: #f8fafc;
}
.tabs button {
min-height: 58px;
padding: 0 30px;
border: none;
border-right: 1px solid #e7ebf0;
background: transparent;
color: #596474;
cursor: pointer;
font-size: 15px;
font-weight: 800;
letter-spacing: 0.04em;
text-transform: uppercase;
transition: background 0.2s ease, color 0.2s ease;
}
.tabs button:hover {
color: #111111;
}
.tabs .active {
background: #ffffff;
color: #111111;
}
.content {
padding: 36px;
}
.content h2 {
margin: 0 0 18px;
color: #151515;
font-size: clamp(26px, 3vw, 36px);
line-height: 1.16;
}
.content p {
max-width: 900px;
margin: 0 0 14px;
color: #3f4652;
font-size: 17px;
line-height: 1.75;
}
@media (max-width: 980px) {
.page {
padding-top: 104px;
}
.hero {
grid-template-columns: 1fr;
}
.left {
min-height: 360px;
}
}
@media (max-width: 560px) {
.page {
padding: 92px 16px 72px;
}
.left,
.right,
.content {
padding: 22px;
}
.left {
min-height: 280px;
}
.left img {
max-height: 260px;
}
.title {
font-size: 30px;
}
.short,
.content p {
font-size: 16px;
}
.tabs {
flex-direction: column;
}
.tabs button {
width: 100%;
border-right: none;
border-bottom: 1px solid #e7ebf0;
}
}