.rawcut-practices-grid {
display: flex;
flex-direction: column;
gap: 0;
margin: 30px 0;
} .practice-card {
display: flex;
justify-content: space-between;
border-bottom: 1px solid #E6E6E6;
padding: 30px 0;
transition: background 0.2s ease;
align-items: flex-end;
text-decoration: none;
color: inherit;
position: relative;
opacity: 0;
transform: translateY(40px);
transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), 
transform 0.8s cubic-bezier(0.4, 0, 0.2, 1),
background 0.2s ease;
}
.practice-card.animate-in {
opacity: 1;
transform: translateY(0);
}
.practice-card:after {
content: '';
height: 4px;
width: 0;
position: absolute;
background: #B11656;
bottom: -1px;
left: 0;
transition: width 0.3s ease;
}
.practice-card:hover:after {
width: 65px;
}
.practice-card:first-child {
border-top: 1px solid #E6E6E6;
}
.practice-card-content {
flex: 1;
padding: 0;
order: 1;
}
.practice-card-content h3 {
margin: 0 !important;
font-size: 32px;
font-weight: 500 !important;
line-height: 1.3;
color: #333;
transition: color 0.3s ease;
}
.practice-card-excerpt {
margin: 12px 0 0 0;
color: #666;
font-size: 15px;
line-height: 1.6;
display: none; }
.practice-card-image {
flex-shrink: 0;
width:49%;
max-width: 100%;
order: 2;
margin-left: 40px;
}
.practice-card-image img {
width: 100%;
object-fit: cover;
display: block;
transition: transform 0.3s ease;
margin-bottom: 0 !important;
height: 240px !important;
border-radius: 15px !important;
}
.practice-card:hover .practice-card-image img {
transform: translateX(5px);
} .rawcut-practice-detail {
width: 100%;
padding: 0;
margin: 0 auto;
} .practice-page-title {
font-size: 12px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 1.5px;
color: #666;
margin-bottom: 20px;
display: inline-block;
} .practice-main-title {
margin: 0 0 40px 0 !important;
} .practice-detail-header {
display: flex;
justify-content: space-between;
gap: 60px;
margin-bottom: 60px;
}
.practice-detail-header-left {
flex: 1;
max-width: 45%;
opacity: 0;
transform: translateY(40px);
animation: fadeInBottom 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
animation-delay: 0.2s;
}
.practice-detail-header-right {
flex: 1;
max-width: 45%;
opacity: 0;
transform: translateY(40px);
animation: fadeInBottom 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
animation-delay: 0.5s;
} @keyframes fadeInBottom {
from {
opacity: 0;
transform: translateY(40px);
}
to {
opacity: 1;
transform: translateY(0);
}
} .practice-detail-image {
width: 100%;
opacity: 0;
transform: translateY(40px);
animation: fadeInBottom 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
animation-delay: 0.9s;
}
.practice-detail-image img {
width: 100%;
height: 400px !important;
object-fit: cover;
border-radius: 15px !important;
display: block;
border-radius: 0;
}
@media (max-width: 768px) {
.practice-detail-image img {
height: auto !important;
}
} .practice-detail-body {
display: flex;
gap: 100px;
margin-bottom: 60px;
margin-top: 60px;
}
@media (max-width: 690px) {
.practice-detail-body {
margin-bottom: 25px;
}
.practice-detail-team-members {
margin-top: 25px !important;
padding-top: 30px !important;
}
}
.practice-detail-body p {
text-align: justify;
} .practice-content-heading {
flex: 0 0 30%;
position: sticky;
top: 150px;
align-self: flex-start;
height: fit-content;
} .practice-detail-content {
flex: 1;
} .practice-detail-team {
margin-bottom: 60px;
}
.practice-detail-team h2 {
font-size: 32px !important;
font-weight: 400;
border-top: 1px solid #E6E6E6;
border-bottom: 1px solid #E6E6E6;
margin: 0 0 30px 0 !important;
padding: 8px 0;
}
.practice-detail-team .team-grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 30px;
}
@media (max-width: 1440px) {
.practice-detail-team .team-grid {
grid-template-columns: repeat(5, 1fr);
}
}
.team-member-card {
transition: transform 0.3s ease;
}
.team-member-card:hover {
transform: translateY(-5px);
}
.team-member-image {
overflow: hidden;
margin-bottom: 12px;
}
.team-member-image img {
width: 100%;
height: auto;
display: block;
}
.team-member-info h3 {
margin: 0 0 5px 0 !important;
font-size: 18px !important;
font-weight: 600;
}
.team-member-info h3 a {
color: #333;
text-decoration: none;
transition: color 0.3s ease;
}
.team-member-info h3 a:hover {
color: #0073aa;
}
.team-member-position {
margin: 0;
color: #797979;
font-size: 15px;
line-height: 1.2;
}
.team-member-branch {
margin: 5px 0 0 0;
color: #999;
font-size: 13px;
} .practice-detail-team-members {
margin-top: 80px;
padding-top: 60px;
border-top: 1px solid #E6E6E6;
}
.practice-detail-team-members .rawcut-team-grid {
grid-template-columns: repeat(6, 1fr) !important;
}
@media (max-width: 1440px) {
.practice-detail-team-members .rawcut-team-grid {
grid-template-columns: repeat(5, 1fr) !important;
}
}
@media (max-width: 1280px) {
.practice-detail-team-members .rawcut-team-grid {
grid-template-columns: repeat(4, 1fr) !important;
}
}
@media (max-width: 1024px) {
.practice-detail-team-members .rawcut-team-grid {
grid-template-columns: repeat(3, 1fr) !important;
}
}
@media (max-width: 768px) {
.practice-detail-team-members .rawcut-team-grid {
grid-template-columns: repeat(2, 1fr) !important;
}
}
.practice-detail-team-members-header {
display: flex;
justify-content: space-between;
align-items: flex-start;
}
@media (max-width: 690px) {
.practice-detail-team-members-header {
flex-direction: column;
gap: 8px;
}
}
.practice-detail-team-members-header h2 {
max-width: 560px !important;
}
.practice-detail-team-members-header a {
transition: all 0.3s ease;
border-bottom: 1px solid #000 !important;
}
.practice-detail-team-members-header a:hover {
color: #B11656;
border-color: #B11656 !important;
}
.team-members-title {
font-size: 32px;
font-weight: 500;
margin: 0 0 40px 0 !important;
color: #333;
}
.team-members-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 30px;
}
.team-member-card {
background: #fff;
border: 1px solid #E6E6E6;
border-radius: 8px;
overflow: hidden;
transition: all 0.3s ease;
opacity: 0;
transform: translateY(20px);
animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
.team-member-card:nth-child(1) { animation-delay: 0.1s; }
.team-member-card:nth-child(2) { animation-delay: 0.2s; }
.team-member-card:nth-child(3) { animation-delay: 0.3s; }
.team-member-card:nth-child(4) { animation-delay: 0.4s; }
.team-member-card:nth-child(5) { animation-delay: 0.5s; }
.team-member-card:nth-child(6) { animation-delay: 0.6s; }
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.team-member-card:hover {
transform: translateY(-5px);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
border-color: #B11656;
}
.team-member-link {
display: block;
text-decoration: none;
color: inherit;
}
.team-member-photo {
width: 100%;
height: 320px;
overflow: hidden;
background: #f5f5f5;
}
.team-member-photo img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.team-member-card:hover .team-member-photo img {
transform: scale(1.05);
}
.team-member-info {
padding: 20px;
}
.team-member-name {
font-size: 20px;
font-weight: 600;
margin: 0 0 8px 0 !important;
color: #333;
line-height: 1.3;
}
.team-member-title {
font-size: 14px;
color: #B11656;
margin-bottom: 12px;
font-weight: 500;
}
.team-member-email,
.team-member-phone {
font-size: 13px;
margin: 6px 0;
}
.team-member-email a,
.team-member-phone a {
color: #666;
text-decoration: none;
transition: color 0.2s ease;
}
.team-member-email a:hover,
.team-member-phone a:hover {
color: #B11656;
} .practice-detail-articles {
margin-bottom: 60px;
}
.practice-detail-articles h2 {
font-size: 32px !important;
font-weight: 400;
border-top: 1px solid #E6E6E6;
border-bottom: 1px solid #E6E6E6;
margin: 0 0 24px 0 !important;
padding: 8px 0;
}
.practice-detail-articles .articles-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 1px;
background: #e5e5e5;
border: 1px solid #e5e5e5;
}
.practice-detail-articles .article-card {
background: #fff;
padding: 24px 28px;
transition: background 0.2s ease;
}
.practice-detail-articles .article-card:hover {
background: #f9f9f9;
}
.article-content {
display: flex;
flex-direction: column;
gap: 8px;
}
.article-title {
margin: 0;
font-size: 15px;
font-weight: 400;
line-height: 1.5;
}
.article-title a {
color: #000;
text-decoration: none;
transition: color 0.2s ease;
}
.article-title a:hover {
color: #0073aa;
}
.article-date {
font-size: 13px;
color: #999;
margin: 0;
} @media (max-width: 1200px) {
.practice-detail-team .team-grid {
grid-template-columns: repeat(4, 1fr);
}
.practice-detail-articles .articles-grid {
grid-template-columns: repeat(3, 1fr);
}
}
@media (max-width: 1024px) {
.practice-card {
padding: 25px 0;
}
.practice-card-image {
width: 45%;
height: 200px;
margin-left: 30px;
}
.practice-card-content h3 {
font-size: 28px;
}
.practice-detail-team .team-grid {
grid-template-columns: repeat(3, 1fr);
}
.practice-detail-articles .articles-grid {
grid-template-columns: repeat(2, 1fr);
}
.practice-detail-articles .articles-grid {
grid-template-columns: repeat(2, 1fr);
} .practice-main-title {
font-size: 36px !important;
}
.practice-detail-header {
gap: 40px;
}
.practice-detail-body {
gap: 40px;
}
.practice-content-heading {
flex: 0 0 150px;
}
.team-members-grid {
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 20px;
}
}
@media (max-width: 768px) {
.practice-card {
flex-direction: column;
align-items: flex-start;
padding: 20px 0;
}
.practice-card-content {
padding: 0;
order: 2;
}
.practice-card-content h3 {
font-size: 24px;
}
.practice-card-image {
width: 100%;
height: 220px;
order: 1;
margin-left: 0;
margin-bottom: 20px;
}
.practice-detail-header h1 {
font-size: 32px;
}
.practice-detail-team h2,
.practice-detail-articles h2 {
font-size: 26px !important;
}
.practice-detail-team .team-grid {
grid-template-columns: repeat(2, 1fr);
gap: 20px;
}
.practice-detail-articles .articles-grid {
grid-template-columns: 1fr;
} .practice-main-title {
font-size: 26px !important;
margin-bottom: 0 !important;
}
.practice-detail-header {
flex-direction: column;
gap: 30px;
margin-bottom: 40px;
}
.practice-detail-header-left,
.practice-detail-header-right {
max-width: 100%;
}
.practice-detail-body {
flex-direction: column;
gap: 20px;
margin-top: 40px !important;
}
.practice-content-heading {
flex: 0 0 auto;
font-size: 12px;
}
.team-members-grid {
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: 15px;
}
.team-members-title {
font-size: 24px;
margin-bottom: 30px !important;
}
.team-member-photo {
height: 250px;
}
}
@media (max-width: 640px) {
.rawcut-practices-grid {
border-top: 1px solid #E6E6E6 !important;
margin-top: 5px !important;
padding-top: 25px !important;
}
.practice-card {
padding: 15px 0;
border: none !important;
}
.practice-card-content h3 {
font-size: 20px !important;
font-weight: 400 !important;
}
.practice-card-image {
height: 140px;
}
.practice-card-image img {
height: 140px !important;
object-fit: cover;
border-radius: 10px !important;
}
.practice-detail-team .team-grid {
grid-template-columns: 1fr;
}
.practice-detail-articles .article-card {
padding: 20px;
}
.team-members-grid {
grid-template-columns: 1fr;
}
}
@media (max-width: 690px) {
.practice-detail-body {
margin-bottom: 25px;
}
.practice-detail-team-members {
margin-top: 25px !important;
padding-top: 30px !important;
} .practice-detail-team-members {
overflow: visible;
}
.practice-detail-team-members .rawcut-team-grid {
display: grid;
grid-auto-flow: column;
grid-auto-columns: minmax(160px, 1fr);
gap: 16px;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
grid-template-columns: unset !important;
padding-bottom: 8px;
}
.view-all-team-members {
display: inline-block;
margin-bottom: 20px;
}
}
.view-all-team-members {
border-bottom: 1px solid #000 !important;
}