| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300 |
- @charset "UTF-8";
- @font-face {
- font-family: 'AudiType';
- src: url('/fonts/AudiTypeVF.woff2') format('woff2-variations');
- font-display: swap;
- font-style: normal;
- font-stretch: 130%;
- }
- // Utility classes for padding and margin (1-100)
- @for $i from 1 through 200 {
- // Padding
- .pt--#{$i} { padding-top: #{$i}px !important; }
- .pr--#{$i} { padding-right: #{$i}px !important; }
- .pb--#{$i} { padding-bottom: #{$i}px !important; }
- .pl--#{$i} { padding-left: #{$i}px !important; }
- .p--#{$i} { padding: #{$i}px !important; }
- // Margin
- .mt--#{$i} { margin-top: #{$i}px !important; }
- .mr--#{$i} { margin-right: #{$i}px !important; }
- .mb--#{$i} { margin-bottom: #{$i}px !important; }
- .ml--#{$i} { margin-left: #{$i}px !important; }
- .m--#{$i} { margin: #{$i}px !important; }
- }
- //풀사이즈 레이아웃 구성
- .detail--container--full{
- }
- /*=================================================
- |컴포넌트 별 css
- |START
- =================================================*/
- //풀사이즈 배너 텍스트1 형
- .img--section--full{
- width:100%;
- position: relative;
- &[data-type="cover"] {
- >div {
- position: relative;
- height:100vh;
- overflow: hidden;
- }
- img{
- object-fit: cover;
- height:auto;
- position: absolute;
- top:50%;
- transform: translateY(-50%);
- }
- }
- &:before{
- content:'';
- display: block;
- width:100%;
- height:100%;
- position: absolute;
- z-index: 2;
- pointer-events: none;
- inset: 0px;
- z-index: 1;
- background: linear-gradient(rgba(0, 0, 0, 0) 46.66%, rgb(0, 0, 0) 100%);
- }
- img{
- width:100%;
- max-width:100%;
- height:100vh;
- }
- .alt--text{
- color: rgb(252, 252, 253);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 28px;
- line-height: 40px;
- position: absolute;
- bottom:40px;
- left:0px;
- overflow: hidden;
- padding: 0 96px;
- white-space: pre-wrap;
- z-index: 2;
- }
- }
- //풀사이즈 패럴렉스 1형
- .prallax--banner--wrapper{
- position: relative;
- overflow: hidden;
- height:1000px;
-
- .prallax--banner{
- position: absolute;
- width: 100%;
- height: 120%;
- transform: translate3d(0, 0, 0); // 초기값 GPU 레이어 생성
- -webkit-transform: translate3d(0, 0, 0);
- backface-visibility: hidden;
- -webkit-backface-visibility: hidden;
- //perspective: 1000px;
- //-webkit-perspective: 1000px;
- position: absolute;
- top: -17%;
- left: 50%;
- will-change: transform;
- backface-visibility: hidden;
-
- picture {
- width: 100%;
- height: 100%;
- display: block;
- }
-
- img {
- width: 100%;
- height: 100%;
- object-fit: cover;
- object-position: center;
- transform: translateZ(0); // GPU 가속
- -webkit-transform: translateZ(0);
- }
- }
-
- .text--box--wrapper{
- position: absolute;
- backface-visibility: hidden;
- -webkit-backface-visibility: hidden;
- width: 100%;
- top:147px;
- left: 0px;
- z-index: 1;
- will-change: transform, opacity;
- transform: translate3d(0, 0, 0); // 초기값 GPU 레이어 생성
- -webkit-transform: translate3d(0, 0, 0);
- display: flex;
- -webkit-box-pack: center;
- justify-content: center;
- transition: opacity 0.1s ease-out;
- perspective: 1000px;
- -webkit-perspective: 1000px;
- .text--container{
- max-width:50%;
- position: relative;
- box-sizing: border-box;
- background: linear-gradient(134deg, rgb(44, 52, 63) 0%, rgb(35, 42, 52) 100%);
- backdrop-filter: blur(60px);
- display: flex;
- flex-direction: column;
- gap: 24px;
- flex-shrink: 0;
- flex-basis: 86%;
- margin: 88px auto 0 auto;
- padding: 40px;
- border-radius: 20px;
- left: 4%;
- flex-basis: 44%;
- h2{
- margin: 0px;
- color: rgb(252, 252, 253);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 24px;
- line-height: 36px;
- font-stretch: 130%;
- }
- p{
- margin: 0px;
- color: rgba(252, 252, 253, 0.7);
- font-family: AudiType, sans-serif;
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 16px;
- line-height: 24px;
- font-stretch: 105%;
- }
- a{
- transition-timing-function:
- cubic-bezier(0.75, 0.02, 0.5, 1);
- transition-duration: 250ms;
- transition-property: color, text-decoration-color;
- display: inline-flex ;
- -webkit-box-align: center;
- align-items: center;
- font-family: AudiType, sans-serif;
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: underline 1px rgb(252, 252, 253);
- font-size: 16px;
- line-height: 24px;
- font-stretch: 105%;
- color: rgb(252, 252, 253);
- box-sizing: border-box;
- text-underline-offset: 7px;
- padding-bottom: 2px;
- min-height: 24px;
- }
- }
- }
- }
- //Swiper 배너 컴포넌트 (30% + 70% 레이아웃)
- .swiper--banner--wrapper {
- width: 100%;
- padding: 40px 96px;
- &[data-fit="contain"]{
- .swiper--banner--container{
- .swiper--banner--section{
- .swiper--container{
- .swiper-slide{
- .slide--image{
- img{
- object-fit: contain;
- }
- }
- }
- }
- }
- }
- }
- &[data-type="vertical"]{
- padding:0px;
- .swiper--banner--container{
- flex-direction: column-reverse;
- height:auto;
-
- .swiper--controls--section{
- flex-direction: row-reverse;
- @media(min-width:768px){
- padding: 0px 96px;
- }
- @media(min-width:1024px){
- padding: 0px 96px;
- }
- @media(min-width:1440px){
- padding: 0px 96px;
- }
- @media(min-width:1920px){
- padding:24px 96px;
- }
- .text--content{
- width:100%;
- .main--title{
- margin: 0px;
- color: rgb(252, 252, 253);
- font-family: AudiType, sans-serif;
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 20px;
- line-height: 32px;
- font-stretch: 130%;
- @media(min-width:1440px){
- font-size: 24px;
- line-height: 36px;
- }
- }
- .sub--title{
- margin: 0px;
- color: rgba(252, 252, 253, 0.7);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 16px;
- line-height: 24px;
- font-stretch: 105%;
- }
- }
- }
- > div{
- width:100%;
- max-height:100vh;
- .swiper--container {
-
- .swiper-slide {
- .slide--image {
- border-radius: 0px;
- }
- }
- }
- }
- }
- }
-
- .swiper--banner--container {
- max-width: 1920px;
- height: 70vh;
- margin: 0 auto;
- display: flex;
- min-height: 600px;
-
-
- // 30% 영역: 컨트롤 및 텍스트
- .swiper--controls--section {
- width: 30%;
- padding: 40px;
- display: flex;
- flex-direction: column;
- justify-content: flex-end;
-
- .controls--top {
- margin-bottom: 40px;
-
- .pagination--nav--wrapper {
- display: flex;
- align-items: flex-start;
- justify-content: flex-start;
- flex-direction: column;
- gap: 20px;
-
- .swiper-pagination {
- position: relative;
- width: auto;
- display: flex;
- justify-content: center;
- align-items: center;
- gap: 12px;
-
- .swiper-pagination-bullet {
- width: 24px;
- height: 24px;
- background: transparent;
- border-radius: 50%;
- color: rgba(255, 255, 255, 0.6);
- font-size: 14px;
- font-weight: 400;
- display: flex;
- align-items: center;
- justify-content: center;
- cursor: pointer;
- transition: all 0.3s ease;
- opacity: 1;
- margin:0px;
-
- &:hover {
- background:rgba(252,252,253,.3)!important;
- color: rgba(255, 255, 255, 0.8);
- }
-
- &.swiper-pagination-bullet-active {
- background: transparent;
- color: #fff;
- font-weight: 600;
- }
- }
- }
-
- .navigation--buttons {
- display: flex;
- align-items: center;
- justify-content: center;
- gap: 16px;
- .swiper-pagination{
- top:0px;
- bottom:0px;
- }
- .swiper-button-prev{
- background: url(/img/ico--back--s.svg) no-repeat center;
- }
- .swiper-button-next{
- background: url(/img/ico--forward--s.svg) no-repeat center;
- }
-
- .swiper-button-prev,
- .swiper-button-next {
- position: relative;
- width: 24px;
- height: 24px;
- border-radius: 50%;
- color: white;
- margin: 0;
- transition: all 0.3s ease;
- cursor: pointer;
-
- &:hover{
- background:rgba(252,252,253,.3) ;
- }
-
- &.swiper-button-disabled {
- opacity: 0.3;
- cursor: not-allowed;
-
- &:hover {
- transform: none;
- }
- }
- }
- }
- }
- }
-
- .text--content {
- text-align: center;
- height:60%;
-
- .text--slider {
- position: relative;
- overflow: hidden;
- height:100%;
-
- .text--slide {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- opacity: 0;
- transform: translateX(-100%);
- transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
- text-align: left;
- visibility: hidden;
-
- &.active {
- opacity: 1;
- transform: translateX(0);
- visibility: visible;
- position: relative; // 활성 슬라이드는 relative로 높이 확보
- }
-
- // 이전 슬라이드는 오른쪽으로 사라짐
- &:not(.active) {
- transform: translateX(-100%);
- position: absolute; // 비활성 슬라이드는 absolute로 겹침
- }
- }
- }
-
- .main--title {
- margin:0px;
- color: rgb(252, 252, 253);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 20px;
- line-height: 32px;
- font-stretch: 130%;
- padding-bottom:12px;
- }
-
- .sub--title {
- margin: 0px;
- color: rgba(252, 252, 253, 0.7);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 16px;
- line-height: 24px;
- font-stretch: 105%;
- }
- .desc--title{
- margin-top:25px;
- color: rgba(252, 252, 253, 0.7);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 15px;
- line-height: 24px;
- font-stretch: 105%;
- }
-
- .notice--text {
- margin-top: 40px;
- padding-top: 20px;
- // border-top: 1px solid rgba(255, 255, 255, 0.1);
- text-align: left;
-
- p {
- margin: 0;
- color: rgba(252, 252, 253, 0.5);
- font-size: 14px;
- line-height: 20px;
- font-style: italic;
- }
- }
- }
- }
-
- // 70% 영역: 단일 배너
- .swiper--banner--section {
- width: 70%;
- position: relative;
- overflow: hidden;
-
- .swiper--container {
- width: 100%;
- height: 100%;
-
- .swiper-slide {
- .slide--image {
- width: 100%;
- height: 100%;
- border-radius: 20px;
- overflow: hidden;
-
- img {
- width: 100%;
- height: 100%;
- max-height:100vh;
- object-fit: cover;
- object-position: center;
- transition: transform 0.8s ease;
- }
- }
-
- &.swiper-slide-active {
- .slide--image img {
- //transform: scale(1.02);
- }
- }
- }
- }
- }
- }
-
- // 반응형 처리
- @media (max-width: 1024px) {
- .swiper--banner--container {
- flex-direction: column;
-
- .swiper--controls--section {
- width: 100%;
- order: 2;
- padding: 30px 20px;
- }
-
- .swiper--banner--section {
- width: 100%;
- height: 400px;
- order: 1;
- }
- }
- }
-
- @media (max-width: 768px) {
- padding: 40px 0;
-
- .swiper--banner--container {
- .swiper--controls--section {
- padding: 20px;
-
- .text--content {
- .text--slider {
- height: 100px; // 모바일에서는 높이 조정
- }
-
- .main--title {
- font-size: 24px;
- line-height: 32px;
- }
-
- .sub--title {
- font-size: 16px;
- line-height: 22px;
- }
- }
- }
-
- .swiper--banner--section {
- height: 300px;
- }
- }
- }
- }
- .title--visual {
- position: relative;
- width: 100%;
- overflow: hidden;
- padding:40px 0px;
- &[data-type="middle"] {
- .title--visual--wrapper{
- max-width:100%;
- padding:0px 96px;
- .title--visual--content{
- h2{
- color: rgb(252, 252, 253);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 24px;
- line-height: 36px;
- font-stretch: 130%;
-
- @media (min-width: 1024px) {
- font-size: 28px;
- line-height: 40px;
- }
- @media (min-width: 1440px) {
- font-size: 32px;
- line-height: 44px;
- }
- @media (min-width: 1920px) {
- font-size: 36px;
- line-height: 52px;
- }
- }
- }
- }
- }
-
- // 테마별 스타일
- &[data-theme="dark"] {
- color: rgb(252, 252, 253);
-
- .title--description {
- color: rgba(252, 252, 253, 0.8);
- }
- }
-
- &[data-theme="light"] {
- background: rgb(252, 252, 253);
- color: #000;
-
- .title--description {
- color: rgba(0, 0, 0, 0.7);
- }
- }
-
- .title--visual--wrapper {
- margin: 0 auto;
- padding: 0 60px;
- align-content: center;
- box-sizing: content-box;
- display: grid;
- grid-template-columns: 100%;
- padding-bottom: 0px;
- padding-top: 0px;
- @media (min-width:1920px){
- margin: 0 auto;
- max-width:1248px;
- }
-
- @media (max-width: 1024px) {
- padding: 0 40px;
- }
-
- @media (max-width: 768px) {
- padding: 0 20px;
- }
- }
-
- .title--visual--content {
- margin: 0 auto;
-
- &[data-align="left"] {
- margin-left: 0;
- text-align: left;
- .title--main{
- text-align: left;
- }
- }
-
- &[data-align="center"] {
- text-align: center;
- }
-
- &[data-align="right"] {
- margin-right: 0;
- margin-left: auto;
- text-align: right;
- .title--main{
- text-align: right;
- }
- }
-
- // 애니메이션 상태
- &[data-animated="true"] {
- opacity: 0;
- transform: translateY(40px);
- transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
-
- &.visible {
- opacity: 1;
- transform: translateY(0);
- }
- }
- }
-
- .title--main {
- margin: 0 0 24px 0;
- color: rgb(252, 252, 253);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 36px;
- line-height: 52px;
- font-stretch: 130%;
- overflow-wrap: break-word;
- text-align: center;
-
- @media (max-width: 1920px) {
- font-size: 72px;
- line-height: 100px;
- }
- @media (max-width: 1440px) {
- font-size: 60px;
- line-height: 84px;
- }
- @media (max-width: 1024px) {
- font-size: 52px;
- line-height: 76px;
- }
-
- @media (max-width: 768px) {
- font-size: 44px;
- line-height: 60px;
- }
- }
-
- .title--description {
- margin: 0;
- color: rgba(252, 252, 253, 0.7);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 16px;
- line-height: 24px;
- font-stretch: 105%;
- }
-
- .title--additional {
- margin-top: 40px;
-
- @media (max-width: 768px) {
- margin-top: 32px;
- }
- }
- }
- .caution--text--wrapper{
- padding:120px 96px;
- p{
- margin: 0 0 26px 0;
- color: rgba(252, 252, 253, 0.7);
- font-family: AudiType, sans-serif;
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 16px;
- line-height: 24px;
- font-stretch: 105%;
- }
- }
- /*=================================================
- |컴포넌트 별 css
- |END
- =================================================*/
- // 로그인 폼 기본 디폴트 디자인
- .admin--login {
- min-height: 100vh;
- background: #000000;
- display: flex;
- align-items: center;
- justify-content: center;
- font-family: 'AudiType', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
-
- .login--container {
- width: 100%;
- max-width: 480px;
- padding: 20px;
- }
-
- .login--box {
- background: #0a0a0a;
- border: 1px solid rgba(255, 255, 255, 0.1);
- border-radius: 12px;
- padding: 60px 40px;
- box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8);
- }
-
- .login--logo {
- text-align: center;
- margin-bottom: 50px;
-
- h1 {
- font-size: 48px;
- font-weight: 700;
- color: #ffffff;
- letter-spacing: 8px;
- margin: 0;
- font-stretch: 130%;
- }
-
- .subtitle {
- color: rgba(255, 255, 255, 0.4);
- font-size: 14px;
- text-transform: uppercase;
- letter-spacing: 3px;
- margin-top: 10px;
- }
- }
-
- .login--form {
- .form--group {
- margin-bottom: 24px;
- }
-
- .form--input {
- width: 100%;
- height: 52px;
- background: #000000;
- border: 1px solid rgba(255, 255, 255, 0.15);
- border-radius: 8px;
- padding: 0 20px;
- font-size: 15px;
- color: #ffffff;
- transition: all 0.3s ease;
-
- &::placeholder {
- color: rgba(255, 255, 255, 0.6);
- }
-
- &:focus {
- outline: none;
- border-color: rgba(255, 255, 255, 0.4);
- background: rgba(255, 255, 255, 0.02);
- }
-
- &:hover {
- border-color: rgba(255, 255, 255, 0.25);
- }
- }
-
- .form--options {
- display: flex;
- justify-content: space-between;
- align-items: center;
- margin-bottom: 32px;
-
- .checkbox--label {
- display: flex;
- align-items: center;
- cursor: pointer;
- color: rgba(255, 255, 255, 0.6);
- font-size: 14px;
-
- input[type="checkbox"] {
- width: 18px;
- height: 18px;
- margin-right: 10px;
- background: #000000;
- border: 1px solid rgba(255, 255, 255, 0.3);
- border-radius: 4px;
- cursor: pointer;
- accent-color: #ffffff;
- }
-
- &:hover {
- color: rgba(255, 255, 255, 0.8);
- }
- }
-
- .forgot--password {
- color: rgba(255, 255, 255, 0.6);
- font-size: 14px;
- text-decoration: none;
- transition: color 0.3s ease;
-
- &:hover {
- color: #ffffff;
- }
- }
- }
-
- .login--button {
- width: 100%;
- height: 52px;
- background: #ffffff;
- color: #000000;
- border: none;
- border-radius: 8px;
- font-size: 16px;
- font-weight: 600;
- letter-spacing: 1px;
- cursor: pointer;
- transition: all 0.3s ease;
-
- &:hover {
- background: rgba(255, 255, 255, 0.9);
- transform: translateY(-2px);
- box-shadow: 0 10px 30px rgba(255, 255, 255, 0.2);
- }
-
- &:active {
- transform: translateY(0);
- }
- }
- }
-
- .login--footer {
- text-align: center;
- margin-top: 40px;
-
- p {
- color: rgba(255, 255, 255, 0.3);
- font-size: 12px;
- letter-spacing: 0.5px;
- }
- }
- }
- //자세히 보기
- .more--detail--href{
- display: inline-flex;
- align-items: center;
- position: relative;
- letter-spacing: 0px;
- font-weight: 400;
- font-size: 14px;
- min-height:24px;
- &:after{
- content:'';
- display: block;
- width:calc(100% - 24px);
- height:1px;
- background: rgb(252, 252, 253);
- position: absolute;
- bottom:0px;
- left:0px;
- }
- .ico{
- width: 24px;
- height: 24px;
- background-image: url(/img/ico--arrow.svg);
- }
- }
- //탭 링크
- .text--tab--layout{
- display: flex;
- background: linear-gradient(134deg, rgb(44, 52, 63) 0%, rgb(35, 42, 52) 100%);
- @media(min-width:1440px){
- display: grid;
- grid-auto-flow: column;
- grid-template-columns: max-content 1fr auto;
- gap: 28px;
- width: 100%;
- box-sizing: border-box;
- overflow: hidden;
- }
- @media(min-width:1025px){
- padding-block:12px;
- }
- ul{
- display: flex;
- position: relative;
- padding-inline:96px;
- -webkit-box-align: center;
- align-items: center;
- -webkit-box-pack: justify;
- justify-content: space-between;
- li {
- &:first-child{
- a{
- margin-left:-12px;
- pointer-events: none;
- }
- }
- a{
- cursor: pointer;
- display: flex;
- -webkit-box-align: center;
- align-items: center;
- -webkit-box-pack: center;
- justify-content: center;
- text-decoration: none;
- border-radius: 10px;
- background: rgba(44, 52, 63, 0);
- box-shadow: rgba(219, 223, 230, 0) 0px 0px 0px 1px inset;
- outline-offset: -3px;
- box-sizing: border-box;
- transition-timing-function: cubic-bezier(0.75, 0.02, 0.5, 1);
- transition-duration: 250ms;
- transition-property: color, background, box-shadow;
- min-height: 48px;
- min-width: 64px;
- color: rgba(252, 252, 253, 0.7);
- padding: 0px 16px;
- text-align: center;
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 14px;
- line-height: 20px;
- font-stretch: 105%;
- &:hover{
- color:rgb(252,252,253);
- background-color: rgb(44,52,63);
- box-shadow: rgba(219, 223,230, .2) 0px 0px 0px 1px inset;
- }
- }
- }
- }
- }
- .inner--link--contents {
- width: 100%;
- padding: 40px 0;
-
- ul {
- list-style: none;
- margin: 0;
- padding: 0;
- display: flex;
- flex-wrap: wrap;
- gap: 24px;
- width: 100%;
- padding:0 96px;
-
- li {
- width:calc( (100% - 48px) / 3);
- --gradient-start: hsla(216, 20%, 17%, 1);
- --gradient-end: hsla(216, 21%, 12%, 1);
- transition-timing-function: cubic-bezier(0.75, 0.02, 0.5, 1);
- transition-duration: 250ms;
- transition-property: --gradient-start, --gradient-end, box-shadow;
- padding:28px 16px;
- overflow: hidden;
- border-radius: 20px;
- border: none;
- cursor: pointer;
- box-shadow: rgb(44, 52, 63) 0px 0px 0px 1px inset;
- backdrop-filter: blur(40px);
- background: linear-gradient(180deg, var(--gradient-start) 0%, var(--gradient-end) 100%);
- display: flex;
- text-decoration: none;
- &:hover{
- --gradient-start: hsla(216, 18%, 21%, 1);
- --gradient-end: hsla(216, 18%, 21%, 1);
- box-shadow: rgb(42,57,64) 0px 0px 0px 1px inset;
- }
- a {
- display: inline-flex;
- align-items: center;
- color: rgba(252, 252, 253, 0.7);;
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 12px;
- line-height: 24px;
- font-stretch: 105%;
- padding-left:40px;
- position: relative;
- width:100%;
- svg{
- position: absolute;
- top:50%;
- transform: translateY(-50%);
- right:0px;
- }
- }
- }
- }
- }
- .product--card {
- display: flex;
- gap: 40px;
- padding: 40px;
- border-radius: 24px;
- overflow: hidden;
-
- // 가로 레이아웃
- &[data-layout="horizontal"] {
- flex-direction: row;
- align-items: center;
-
- .product--card--thumb {
- flex: 0 0 40%;
- max-width: 600px;
- }
-
- .product--card--content {
- flex: 1;
- padding-left: 20px;
- }
-
- // 이미지 오른쪽 배치
- &[data-image-position="right"] {
- flex-direction: row-reverse;
-
- .product--card--content {
- padding-left: 0;
- padding-right: 20px;
- }
- }
-
- @media (max-width: 1024px) {
- flex-direction: column;
-
- .product--card--thumb {
- flex: 1;
- max-width: 100%;
- }
-
- .product--card--content {
- padding-left: 0;
- padding-right: 0;
- padding-top: 20px;
- }
-
- // 모바일에서는 이미지 위치 상관없이 세로 배치
- &[data-image-position="right"] {
- flex-direction: column;
-
- .product--card--content {
- padding-right: 0;
- padding-top: 20px;
- }
- }
- }
- }
-
- // 세로 레이아웃
- &[data-layout="vertical"] {
- flex-direction: column;
- max-width: 600px;
-
- .product--card--thumb {
- width: 100%;
- }
-
- .product--card--content {
- padding-top: 24px;
- }
- }
-
- .product--card--thumb {
- border-radius: 16px;
- overflow: hidden;
- background: rgba(255, 255, 255, 0.05);
-
- img {
- width: 100%;
- height: 100%;
- object-fit: cover;
- display: block;
- transition: transform 0.6s ease;
- }
-
- &:hover img {
- transform: scale(1.05);
- }
- }
-
- .product--card--content {
- display: flex;
- flex-direction: column;
- gap: 16px;
- }
-
- .product--card--title {
- margin: 0px;
- color: rgb(252, 252, 253);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 24px;
- line-height: 36px;
- font-stretch: 130%;
-
- @media (min-width: 1024px) {
- font-size: 28px;
- line-height: 40px;
- }
- @media (min-width: 1440px) {
- font-size: 32px;
- line-height: 44px;
- }
- @media (min-width: 1920px) {
- font-size: 36px;
- line-height: 52px;
- }
- }
-
- .product--card--subtitle {
- margin: 0;
- color: rgba(252, 252, 253, 0.8);
- font-size: 20px;
- line-height: 28px;
- font-weight: 300;
-
- @media (max-width: 768px) {
- font-size: 18px;
- line-height: 26px;
- }
- }
-
- .product--card--description {
- margin-top: 8px;
-
- p {
- margin: 0px;
- color: rgba(252, 252, 253, 0.7);
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 16px;
- line-height: 24px;
- font-stretch: 105%;
- }
- }
-
- .product--card--actions {
- margin-top: 24px;
- display: flex;
- gap: 16px;
- flex-wrap: wrap;
-
- .default--round--btn {
- flex-direction: column;
- -webkit-box-align: center;
- align-items: center;
- -webkit-box-pack: center;
- justify-content: center;
- transition-timing-function: cubic-bezier(0.75, 0.02, 0.5, 1);
- transition-duration: 250ms;
- border-radius: 999px;
- cursor: pointer;
- display: inline-flex;
- border: 0px;
- letter-spacing: 0px;
- font-weight: 400;
- text-decoration: none;
- font-size: 14px;
- line-height: 20px;
- font-stretch: 105%;
- padding: 12px 24px;
- min-height: 48px;
- background-color: rgb(24, 29, 37);
- color: rgb(252, 252, 253);
- box-shadow: rgb(44, 52, 63) 0px 0px 0px 1px inset;
- transition-property: color, box-shadow, background-color;
-
- &:hover {
- background: rgba(44,52,63);
- box-shadow: rgba(219,223,230, .2) 0px 0px 0px 1px inset;
- }
-
- &:active {
- transform: translateY(0);
- }
- }
- }
-
- @media (max-width: 768px) {
- padding: 24px;
- gap: 24px;
- }
- }
|