admin.scss 50 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291
  1. @charset "UTF-8";
  2. @font-face {
  3. font-family: 'AudiType';
  4. src: url('/fonts/AudiTypeVF.woff2') format('woff2-variations');
  5. font-display: swap;
  6. font-style: normal;
  7. font-stretch: 130%;
  8. }
  9. // Utility classes for padding and margin (1-100)
  10. @for $i from 1 through 200 {
  11. // Padding
  12. .pt--#{$i} { padding-top: #{$i}px !important; }
  13. .pr--#{$i} { padding-right: #{$i}px !important; }
  14. .pb--#{$i} { padding-bottom: #{$i}px !important; }
  15. .pl--#{$i} { padding-left: #{$i}px !important; }
  16. .p--#{$i} { padding: #{$i}px !important; }
  17. // Margin
  18. .mt--#{$i} { margin-top: #{$i}px !important; }
  19. .mr--#{$i} { margin-right: #{$i}px !important; }
  20. .mb--#{$i} { margin-bottom: #{$i}px !important; }
  21. .ml--#{$i} { margin-left: #{$i}px !important; }
  22. .m--#{$i} { margin: #{$i}px !important; }
  23. }
  24. @for $i from 14 through 40 {
  25. .ft--#{$i} {font-size : #{$i}px !important;}
  26. }
  27. :root {
  28. --max-content-width: 1920px;
  29. --page-margin: 16px;
  30. @media (min-width: 375px) {
  31. --page-margin: 28px;
  32. }
  33. @media (min-width: 768px) {
  34. --page-margin: 40px;
  35. }
  36. @media (min-width: 1024px) {
  37. --page-margin: 60px;
  38. }
  39. @media (min-width: 1440px) {
  40. --page-margin: 96px;
  41. }
  42. @media (min-width: 1920px) {
  43. --page-margin: 96px;
  44. }
  45. @property --gradient-start {
  46. syntax: '<color>';
  47. initial-value: transparent;
  48. inherits: false;
  49. }
  50. @property --gradient-end {
  51. syntax: '<color>';
  52. initial-value: transparent;
  53. inherits: false;
  54. }
  55. --spacing-relative-2xs: 4px;
  56. --spacing-relative-xs: 8px;
  57. --spacing-relative-sm: 12px;
  58. --spacing-relative-md: 16px;
  59. --spacing-relative-lg: 24px;
  60. --spacing-relative-xl: 28px;
  61. --spacing-relative-2xl: 36px;
  62. --spacing-relative-3xl: 40px;
  63. --spacing-relative-4xl: 48px;
  64. --spacing-relative-5xl: 64px;
  65. --spacing-relative-6xl: 80px;
  66. --spacing-relative-7xl: 96px;
  67. --spacing-relative-8xl: 120px;
  68. @media (min-width: 768px) {
  69. --spacing-relative-3xl: 48px;
  70. --spacing-relative-4xl: 64px;
  71. --spacing-relative-5xl: 72px;
  72. --spacing-relative-6xl: 88px;
  73. --spacing-relative-7xl: 104px;
  74. --spacing-relative-8xl: 136px;
  75. }
  76. @media (min-width: 1024px) {
  77. --spacing-relative-2xl: 40px;
  78. --spacing-relative-3xl: 56px;
  79. --spacing-relative-4xl: 72px;
  80. --spacing-relative-5xl: 88px;
  81. --spacing-relative-6xl: 104px;
  82. --spacing-relative-7xl: 128px;
  83. --spacing-relative-8xl: 168px;
  84. }
  85. @media (min-width: 1440px) {
  86. --spacing-relative-xl: 32px;
  87. --spacing-relative-2xl: 56px;
  88. --spacing-relative-3xl: 72px;
  89. --spacing-relative-4xl: 88px;
  90. --spacing-relative-5xl: 104px;
  91. --spacing-relative-6xl: 120px;
  92. --spacing-relative-7xl: 160px;
  93. --spacing-relative-8xl: 216px;
  94. }
  95. @media (min-width: 1920px) {
  96. --spacing-relative-xl: 40px;
  97. --spacing-relative-2xl: 72px;
  98. --spacing-relative-3xl: 88px;
  99. --spacing-relative-4xl: 104px;
  100. --spacing-relative-5xl: 120px;
  101. --spacing-relative-6xl: 136px;
  102. --spacing-relative-7xl: 176px;
  103. --spacing-relative-8xl: 248px;
  104. }
  105. }
  106. //풀사이즈 레이아웃 구성
  107. .detail--container--full{
  108. .inner--wrapper{
  109. padding:0 var(--spacing-relative-3xl);
  110. .service--detail{
  111. padding:45px 0px;
  112. h2{
  113. margin: 0 0 var(--spacing-relative-md) 0;
  114. color: rgb(252, 252, 253);
  115. font-family: AudiType, sans-serif;
  116. letter-spacing: 0px;
  117. font-weight: 400;
  118. text-decoration: none;
  119. font-size: 24px;
  120. line-height: 36px;
  121. font-stretch: 130%;
  122. &.middle{
  123. font-size:26px;
  124. }
  125. @media (min-width: 1024px) {
  126. font-size: 28px;
  127. line-height: 40px;
  128. }
  129. @media (min-width: 1440px) {
  130. font-size: 32px;
  131. line-height: 44px;
  132. }
  133. @media (min-width: 1920px) {
  134. font-size: 36px;
  135. line-height: 52px;
  136. }
  137. }
  138. h3{
  139. margin: 20px 0 var(--spacing-relative-md) 0;
  140. color: rgba(252, 252, 253, 0.7);
  141. letter-spacing: 0px;
  142. font-weight: 400;
  143. text-decoration: none;
  144. font-size: 16px;
  145. line-height: 24px;
  146. font-stretch: 105%;
  147. }
  148. .service--process--list{
  149. padding-top:80px;
  150. >li{
  151. position: relative;
  152. padding-left:20px;
  153. margin-bottom:80px;
  154. &.not--before{
  155. padding-left:0px;
  156. &::before{
  157. display: none;
  158. }
  159. }
  160. &::before{
  161. content: ">";
  162. display: block;
  163. width: 100%;
  164. height: 100%;
  165. background-size: contain;
  166. position: absolute;
  167. top: 0;
  168. left: 0;
  169. }
  170. >p{
  171. margin: 0 0 var(--spacing-relative-md) 0;
  172. color: rgba(252, 252, 253, 0.7);
  173. font-family: AudiType, sans-serif;
  174. letter-spacing: 0px;
  175. font-weight: 400;
  176. }
  177. }
  178. }
  179. .data--table--wrap{
  180. @media (min-width: 768px) {
  181. table tbody tr:first-child th,
  182. table tbody tr:first-child td {
  183. border-top: 1px solid rgb(255, 255, 255) !important;
  184. border-right-color: rgb(255, 255, 255) !important;
  185. border-bottom-color: rgb(255, 255, 255) !important;
  186. border-left-color: rgb(255, 255, 255) !important;
  187. }
  188. }
  189. table{
  190. display: block;
  191. width: 100%;
  192. border-spacing: 8px 0px;
  193. border-collapse: separate;
  194. @media (min-width: 768px) {
  195. width: 100%;
  196. }
  197. @media (min-width: 768px) {
  198. display: table;
  199. }
  200. tbody{
  201. @media (min-width: 768px) {
  202. display: table-row-group;
  203. thead{
  204. display: table-header-group;
  205. }
  206. }
  207. td{
  208. letter-spacing: 0px;
  209. font-weight: 400;
  210. text-decoration: none;
  211. font-size: 16px;
  212. line-height: 24px;
  213. font-stretch: 105%;
  214. color: rgba(252, 252, 253, 0.7);
  215. padding: 16px 4px 8px;
  216. vertical-align: top;
  217. display: table-cell;
  218. border-bottom: 1px solid rgb(252, 252, 253);
  219. @media (min-width: 768px) {
  220. padding: 12px 4px 24px;
  221. }
  222. &:not(:last-child) {
  223. margin-bottom: 4px;
  224. }
  225. }
  226. }
  227. }
  228. }
  229. .desc--caution--text{
  230. margin: 0px;
  231. color: rgba(252, 252, 253, 0.7);
  232. letter-spacing: 0px;
  233. font-weight: 400;
  234. text-decoration: none;
  235. font-size: 16px;
  236. line-height: 24px;
  237. font-stretch: 105%;
  238. }
  239. }
  240. }
  241. }
  242. /*=================================================
  243. |컴포넌트 별 css
  244. |START
  245. =================================================*/
  246. //풀사이즈 배너 텍스트1 형
  247. .img--section--full{
  248. width:100%;
  249. position: relative;
  250. &[data-type="cover"] {
  251. >div {
  252. position: relative;
  253. height:100vh;
  254. overflow: hidden;
  255. }
  256. img{
  257. object-fit: cover;
  258. height:auto;
  259. position: absolute;
  260. top:50%;
  261. transform: translateY(-50%);
  262. }
  263. }
  264. &:before{
  265. content:'';
  266. display: block;
  267. width:100%;
  268. height:100%;
  269. position: absolute;
  270. z-index: 2;
  271. pointer-events: none;
  272. inset: 0px;
  273. z-index: 1;
  274. background: linear-gradient(rgba(0, 0, 0, 0) 46.66%, rgb(0, 0, 0) 100%);
  275. }
  276. img{
  277. width:100%;
  278. max-width:100%;
  279. height:100vh;
  280. }
  281. &[data-text-location="top"]{
  282. &:before{
  283. background: linear-gradient(rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 50%);
  284. }
  285. .alt--text{
  286. bottom:auto;
  287. top:40px;
  288. }
  289. }
  290. .alt--text{
  291. color: rgb(252, 252, 253);
  292. letter-spacing: 0px;
  293. font-weight: 400;
  294. text-decoration: none;
  295. font-size: 28px;
  296. line-height: 40px;
  297. position: absolute;
  298. bottom:40px;
  299. left:0px;
  300. overflow: hidden;
  301. padding: 0 96px;
  302. white-space: pre-wrap;
  303. z-index: 2;
  304. }
  305. }
  306. //풀사이즈 패럴렉스 1형
  307. .prallax--banner--wrapper{
  308. position: relative;
  309. overflow: hidden;
  310. height:1000px;
  311. .prallax--banner{
  312. position: absolute;
  313. width: 100%;
  314. height: 120%;
  315. transform: translate3d(0, 0, 0); // 초기값 GPU 레이어 생성
  316. -webkit-transform: translate3d(0, 0, 0);
  317. backface-visibility: hidden;
  318. -webkit-backface-visibility: hidden;
  319. //perspective: 1000px;
  320. //-webkit-perspective: 1000px;
  321. position: absolute;
  322. top: -17%;
  323. left: 50%;
  324. will-change: transform;
  325. backface-visibility: hidden;
  326. picture {
  327. width: 100%;
  328. height: 100%;
  329. display: block;
  330. }
  331. img {
  332. width: 100%;
  333. height: 100%;
  334. object-fit: cover;
  335. object-position: center;
  336. transform: translateZ(0); // GPU 가속
  337. -webkit-transform: translateZ(0);
  338. }
  339. }
  340. .text--box--wrapper{
  341. position: absolute;
  342. backface-visibility: hidden;
  343. -webkit-backface-visibility: hidden;
  344. width: 100%;
  345. top:147px;
  346. left: 0px;
  347. z-index: 1;
  348. will-change: transform, opacity;
  349. transform: translate3d(0, 0, 0); // 초기값 GPU 레이어 생성
  350. -webkit-transform: translate3d(0, 0, 0);
  351. display: flex;
  352. -webkit-box-pack: center;
  353. justify-content: center;
  354. transition: opacity 0.1s ease-out;
  355. perspective: 1000px;
  356. -webkit-perspective: 1000px;
  357. .text--container{
  358. max-width:50%;
  359. position: relative;
  360. box-sizing: border-box;
  361. background: linear-gradient(134deg, rgb(44, 52, 63) 0%, rgb(35, 42, 52) 100%);
  362. backdrop-filter: blur(60px);
  363. display: flex;
  364. flex-direction: column;
  365. gap: 24px;
  366. flex-shrink: 0;
  367. flex-basis: 86%;
  368. margin: 88px auto 0 auto;
  369. padding: 40px;
  370. border-radius: 20px;
  371. left: 4%;
  372. flex-basis: 44%;
  373. h2{
  374. margin: 0px;
  375. color: rgb(252, 252, 253);
  376. letter-spacing: 0px;
  377. font-weight: 400;
  378. text-decoration: none;
  379. font-size: 24px;
  380. line-height: 36px;
  381. font-stretch: 130%;
  382. }
  383. p{
  384. margin: 0px;
  385. color: rgba(252, 252, 253, 0.7);
  386. font-family: AudiType, sans-serif;
  387. letter-spacing: 0px;
  388. font-weight: 400;
  389. text-decoration: none;
  390. font-size: 16px;
  391. line-height: 24px;
  392. font-stretch: 105%;
  393. }
  394. a{
  395. transition-timing-function:
  396. cubic-bezier(0.75, 0.02, 0.5, 1);
  397. transition-duration: 250ms;
  398. transition-property: color, text-decoration-color;
  399. display: inline-flex ;
  400. -webkit-box-align: center;
  401. align-items: center;
  402. font-family: AudiType, sans-serif;
  403. letter-spacing: 0px;
  404. font-weight: 400;
  405. text-decoration: underline 1px rgb(252, 252, 253);
  406. font-size: 16px;
  407. line-height: 24px;
  408. font-stretch: 105%;
  409. color: rgb(252, 252, 253);
  410. box-sizing: border-box;
  411. text-underline-offset: 7px;
  412. padding-bottom: 2px;
  413. min-height: 24px;
  414. }
  415. }
  416. }
  417. }
  418. //Swiper 배너 컴포넌트 (30% + 70% 레이아웃)
  419. .swiper--banner--wrapper {
  420. width: 100%;
  421. padding: 40px 96px;
  422. &[data-fit="contain"]{
  423. .swiper--banner--container{
  424. .swiper--banner--section{
  425. .swiper--container{
  426. .swiper-slide{
  427. .slide--image{
  428. img{
  429. object-fit: contain;
  430. }
  431. }
  432. }
  433. }
  434. }
  435. }
  436. }
  437. &[data-type="vertical"]{
  438. padding:0px;
  439. .swiper--banner--container{
  440. flex-direction: column-reverse;
  441. height:auto;
  442. .swiper--controls--section{
  443. flex-direction: row-reverse;
  444. @media(min-width:768px){
  445. padding: 0px 96px;
  446. }
  447. @media(min-width:1024px){
  448. padding: 0px 96px;
  449. }
  450. @media(min-width:1440px){
  451. padding: 0px 96px;
  452. }
  453. @media(min-width:1920px){
  454. padding:24px 96px;
  455. }
  456. .text--content{
  457. width:100%;
  458. .main--title{
  459. margin: 0px;
  460. color: rgb(252, 252, 253);
  461. font-family: AudiType, sans-serif;
  462. letter-spacing: 0px;
  463. font-weight: 400;
  464. text-decoration: none;
  465. font-size: 20px;
  466. line-height: 32px;
  467. font-stretch: 130%;
  468. @media(min-width:1440px){
  469. font-size: 24px;
  470. line-height: 36px;
  471. }
  472. }
  473. .sub--title{
  474. margin: 0px;
  475. color: rgba(252, 252, 253, 0.7);
  476. letter-spacing: 0px;
  477. font-weight: 400;
  478. text-decoration: none;
  479. font-size: 16px;
  480. line-height: 24px;
  481. font-stretch: 105%;
  482. }
  483. }
  484. }
  485. > div{
  486. width:100%;
  487. max-height:100vh;
  488. .swiper--container {
  489. .swiper-slide {
  490. .slide--image {
  491. border-radius: 0px;
  492. }
  493. }
  494. }
  495. }
  496. }
  497. }
  498. .swiper--banner--container {
  499. max-width: 1920px;
  500. height: 70vh;
  501. margin: 0 auto;
  502. display: flex;
  503. min-height: 600px;
  504. // 30% 영역: 컨트롤 및 텍스트
  505. .swiper--controls--section {
  506. width: 30%;
  507. padding: 40px;
  508. display: flex;
  509. flex-direction: column;
  510. justify-content: flex-end;
  511. .controls--top {
  512. margin-bottom: 40px;
  513. .pagination--nav--wrapper {
  514. display: flex;
  515. align-items: flex-start;
  516. justify-content: flex-start;
  517. flex-direction: column;
  518. gap: 20px;
  519. .swiper-pagination {
  520. position: relative;
  521. width: auto;
  522. display: flex;
  523. justify-content: center;
  524. align-items: center;
  525. gap: 12px;
  526. .swiper-pagination-bullet {
  527. width: 24px;
  528. height: 24px;
  529. background: transparent;
  530. border-radius: 50%;
  531. color: rgba(255, 255, 255, 0.6);
  532. font-size: 14px;
  533. font-weight: 400;
  534. display: flex;
  535. align-items: center;
  536. justify-content: center;
  537. cursor: pointer;
  538. transition: all 0.3s ease;
  539. opacity: 1;
  540. margin:0px;
  541. &:hover {
  542. background:rgba(252,252,253,.3)!important;
  543. color: rgba(255, 255, 255, 0.8);
  544. }
  545. &.swiper-pagination-bullet-active {
  546. background: transparent;
  547. color: #fff;
  548. font-weight: 600;
  549. }
  550. }
  551. }
  552. .navigation--buttons {
  553. display: flex;
  554. align-items: center;
  555. justify-content: center;
  556. gap: 16px;
  557. .swiper-pagination{
  558. top:0px;
  559. bottom:0px;
  560. }
  561. .swiper-button-prev{
  562. background: url(/img/ico--back--s.svg) no-repeat center;
  563. }
  564. .swiper-button-next{
  565. background: url(/img/ico--forward--s.svg) no-repeat center;
  566. }
  567. .swiper-button-prev,
  568. .swiper-button-next {
  569. position: relative;
  570. width: 24px;
  571. height: 24px;
  572. border-radius: 50%;
  573. color: white;
  574. margin: 0;
  575. transition: all 0.3s ease;
  576. cursor: pointer;
  577. &:hover{
  578. background:rgba(252,252,253,.3) ;
  579. }
  580. &.swiper-button-disabled {
  581. opacity: 0.3;
  582. cursor: not-allowed;
  583. &:hover {
  584. transform: none;
  585. }
  586. }
  587. }
  588. }
  589. }
  590. }
  591. .text--content {
  592. text-align: center;
  593. height:60%;
  594. .text--slider {
  595. position: relative;
  596. overflow: hidden;
  597. height:100%;
  598. .text--slide {
  599. position: absolute;
  600. top: 0;
  601. left: 0;
  602. width: 100%;
  603. opacity: 0;
  604. transform: translateX(-100%);
  605. transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  606. text-align: left;
  607. visibility: hidden;
  608. &.active {
  609. opacity: 1;
  610. transform: translateX(0);
  611. visibility: visible;
  612. position: relative; // 활성 슬라이드는 relative로 높이 확보
  613. }
  614. // 이전 슬라이드는 오른쪽으로 사라짐
  615. &:not(.active) {
  616. transform: translateX(-100%);
  617. position: absolute; // 비활성 슬라이드는 absolute로 겹침
  618. }
  619. }
  620. }
  621. .main--title {
  622. margin:0px;
  623. color: rgb(252, 252, 253);
  624. letter-spacing: 0px;
  625. font-weight: 400;
  626. text-decoration: none;
  627. font-size: 20px;
  628. line-height: 32px;
  629. font-stretch: 130%;
  630. padding-bottom:12px;
  631. }
  632. .sub--title {
  633. margin: 0px;
  634. color: rgba(252, 252, 253, 0.7);
  635. letter-spacing: 0px;
  636. font-weight: 400;
  637. text-decoration: none;
  638. font-size: 16px;
  639. line-height: 24px;
  640. font-stretch: 105%;
  641. }
  642. .desc--title{
  643. margin-top:25px;
  644. color: rgba(252, 252, 253, 0.7);
  645. letter-spacing: 0px;
  646. font-weight: 400;
  647. text-decoration: none;
  648. font-size: 15px;
  649. line-height: 24px;
  650. font-stretch: 105%;
  651. }
  652. .notice--text {
  653. margin-top: 40px;
  654. padding-top: 20px;
  655. // border-top: 1px solid rgba(255, 255, 255, 0.1);
  656. text-align: left;
  657. p {
  658. margin: 0;
  659. color: rgba(252, 252, 253, 0.5);
  660. font-size: 14px;
  661. line-height: 20px;
  662. font-style: italic;
  663. }
  664. }
  665. }
  666. }
  667. // 70% 영역: 단일 배너
  668. .swiper--banner--section {
  669. width: 70%;
  670. position: relative;
  671. overflow: hidden;
  672. .swiper--container {
  673. width: 100%;
  674. height: 100%;
  675. .swiper-slide {
  676. .slide--image {
  677. width: 100%;
  678. height: 100%;
  679. border-radius: 20px;
  680. overflow: hidden;
  681. img {
  682. width: 100%;
  683. height: 100%;
  684. max-height:100vh;
  685. object-fit: cover;
  686. object-position: center;
  687. transition: transform 0.8s ease;
  688. }
  689. }
  690. &.swiper-slide-active {
  691. .slide--image img {
  692. //transform: scale(1.02);
  693. }
  694. }
  695. }
  696. }
  697. }
  698. }
  699. // 반응형 처리
  700. @media (max-width: 1024px) {
  701. .swiper--banner--container {
  702. flex-direction: column;
  703. .swiper--controls--section {
  704. width: 100%;
  705. order: 2;
  706. padding: 30px 20px;
  707. }
  708. .swiper--banner--section {
  709. width: 100%;
  710. height: 400px;
  711. order: 1;
  712. }
  713. }
  714. }
  715. @media (max-width: 768px) {
  716. padding: 40px 0;
  717. .swiper--banner--container {
  718. .swiper--controls--section {
  719. padding: 20px;
  720. .text--content {
  721. .text--slider {
  722. height: 100px; // 모바일에서는 높이 조정
  723. }
  724. .main--title {
  725. font-size: 24px;
  726. line-height: 32px;
  727. }
  728. .sub--title {
  729. font-size: 16px;
  730. line-height: 22px;
  731. }
  732. }
  733. }
  734. .swiper--banner--section {
  735. height: 300px;
  736. }
  737. }
  738. }
  739. }
  740. .title--visual {
  741. position: relative;
  742. width: 100%;
  743. overflow: hidden;
  744. padding:40px 0px;
  745. &[data-type="middle"] {
  746. .title--visual--wrapper{
  747. max-width:100%;
  748. padding:0px 96px;
  749. .title--visual--content{
  750. h2{
  751. color: rgb(252, 252, 253);
  752. letter-spacing: 0px;
  753. font-weight: 400;
  754. text-decoration: none;
  755. font-size: 24px;
  756. line-height: 36px;
  757. font-stretch: 130%;
  758. @media (min-width: 1024px) {
  759. font-size: 28px;
  760. line-height: 40px;
  761. }
  762. @media (min-width: 1440px) {
  763. font-size: 32px;
  764. line-height: 44px;
  765. }
  766. @media (min-width: 1920px) {
  767. font-size: 36px;
  768. line-height: 52px;
  769. }
  770. }
  771. }
  772. }
  773. }
  774. // 테마별 스타일
  775. &[data-theme="dark"] {
  776. color: rgb(252, 252, 253);
  777. .title--description {
  778. color: rgba(252, 252, 253, 0.8);
  779. }
  780. }
  781. &[data-theme="light"] {
  782. background: rgb(252, 252, 253);
  783. color: #000;
  784. .title--description {
  785. color: rgba(0, 0, 0, 0.7);
  786. }
  787. }
  788. .title--visual--wrapper {
  789. margin: 0 auto;
  790. padding: 0 60px;
  791. align-content: center;
  792. box-sizing: content-box;
  793. display: grid;
  794. grid-template-columns: 100%;
  795. padding-bottom: 0px;
  796. padding-top: 0px;
  797. @media (min-width:1920px){
  798. margin: 0 auto;
  799. max-width:1248px;
  800. }
  801. @media (max-width: 1024px) {
  802. padding: 0 40px;
  803. }
  804. @media (max-width: 768px) {
  805. padding: 0 20px;
  806. }
  807. }
  808. .title--visual--content {
  809. margin: 0 auto;
  810. &[data-align="left"] {
  811. margin-left: 0;
  812. text-align: left;
  813. .title--main{
  814. text-align: left;
  815. }
  816. }
  817. &[data-align="center"] {
  818. text-align: center;
  819. }
  820. &[data-align="right"] {
  821. margin-right: 0;
  822. margin-left: auto;
  823. text-align: right;
  824. .title--main{
  825. text-align: right;
  826. }
  827. }
  828. // 애니메이션 상태
  829. &[data-animated="true"] {
  830. opacity: 0;
  831. transform: translateY(40px);
  832. transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  833. &.visible {
  834. opacity: 1;
  835. transform: translateY(0);
  836. }
  837. }
  838. }
  839. .title--main {
  840. margin: 0 0 24px 0;
  841. color: rgb(252, 252, 253);
  842. letter-spacing: 0px;
  843. font-weight: 400;
  844. text-decoration: none;
  845. font-size: 36px;
  846. line-height: 52px;
  847. font-stretch: 130%;
  848. overflow-wrap: break-word;
  849. text-align: center;
  850. @media (max-width: 1920px) {
  851. font-size: 72px;
  852. line-height: 100px;
  853. }
  854. @media (max-width: 1440px) {
  855. font-size: 60px;
  856. line-height: 84px;
  857. }
  858. @media (max-width: 1024px) {
  859. font-size: 52px;
  860. line-height: 76px;
  861. }
  862. @media (max-width: 768px) {
  863. font-size: 44px;
  864. line-height: 60px;
  865. }
  866. }
  867. .title--description {
  868. margin: 0;
  869. color: rgba(252, 252, 253, 0.7);
  870. letter-spacing: 0px;
  871. font-weight: 400;
  872. text-decoration: none;
  873. font-size: 16px;
  874. line-height: 24px;
  875. font-stretch: 105%;
  876. }
  877. .title--additional {
  878. margin-top: 40px;
  879. @media (max-width: 768px) {
  880. margin-top: 32px;
  881. }
  882. }
  883. }
  884. .caution--text--wrapper{
  885. padding:120px 96px;
  886. p{
  887. margin: 0 0 26px 0;
  888. color: rgba(252, 252, 253, 0.7);
  889. font-family: AudiType, sans-serif;
  890. letter-spacing: 0px;
  891. font-weight: 400;
  892. text-decoration: none;
  893. font-size: 16px;
  894. line-height: 24px;
  895. font-stretch: 105%;
  896. }
  897. }
  898. //좌우 2배열 배너
  899. .grid--banner--type2{
  900. width: 100%;
  901. padding:0 var(--spacing-relative-3xl);
  902. @media(min-width:1024px){
  903. padding:0 var(--spacing-relative-xl);
  904. }
  905. @media(min-width:1440px){
  906. padding:0 var(--spacing-relative-2xl);
  907. }
  908. @media(min-width:1920px){
  909. padding:0 var(--spacing-relative-3xl);
  910. }
  911. >ul{
  912. width:100%;
  913. display: flex;
  914. flex-wrap: wrap;
  915. gap:16px;
  916. >li{
  917. width:calc( (100% - 16px)/2);
  918. padding-bottom:40px;
  919. @media(max-width:720px){
  920. width:100%;
  921. }
  922. .thumb{
  923. border-radius: 20px;
  924. overflow: hidden;
  925. img{
  926. width: 100%;;
  927. object-fit: cover;
  928. }
  929. }
  930. .desc--wrapper{
  931. @media screen and (min-width: 768px) {
  932. padding-block-start: var(--spacing-relative-lg);
  933. padding-inline-end: var(--spacing-relative-xl);
  934. }
  935. @media screen and (min-width: 1920px) {
  936. padding-block-start: var(--spacing-relative-lg);
  937. padding-inline-end: var(--spacing-relative-xl);
  938. }
  939. h2{
  940. margin: 0px;
  941. color: rgb(252, 252, 253);
  942. letter-spacing: 0px;
  943. font-weight: 400;
  944. text-decoration: none;
  945. font-size: 20px;
  946. line-height: 32px;
  947. font-stretch: 130%;
  948. @media(min-width:1440px){
  949. font-size: 24px;
  950. line-height: 36px;
  951. }
  952. }
  953. h3{
  954. margin: var(--spacing-relative-xs) 0 0 0;
  955. color: rgba(252, 252, 253, 0.7);
  956. letter-spacing: 0px;
  957. font-weight: 400;
  958. text-decoration: none;
  959. font-size: 16px;
  960. line-height: 24px;
  961. font-stretch: 105%;
  962. }
  963. }
  964. }
  965. }
  966. }
  967. /*=================================================
  968. |컴포넌트 별 css
  969. |END
  970. =================================================*/
  971. // 로그인 폼 기본 디폴트 디자인
  972. .admin--login {
  973. min-height: 100vh;
  974. background: #000000;
  975. display: flex;
  976. align-items: center;
  977. justify-content: center;
  978. font-family: 'AudiType', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  979. .login--container {
  980. width: 100%;
  981. max-width: 480px;
  982. padding: 20px;
  983. }
  984. .login--box {
  985. background: #0a0a0a;
  986. border: 1px solid rgba(255, 255, 255, 0.1);
  987. border-radius: 12px;
  988. padding: 60px 40px;
  989. box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8);
  990. }
  991. .login--logo {
  992. text-align: center;
  993. margin-bottom: 50px;
  994. h1 {
  995. font-size: 48px;
  996. font-weight: 700;
  997. color: #ffffff;
  998. letter-spacing: 8px;
  999. margin: 0;
  1000. font-stretch: 130%;
  1001. }
  1002. .subtitle {
  1003. color: rgba(255, 255, 255, 0.4);
  1004. font-size: 14px;
  1005. text-transform: uppercase;
  1006. letter-spacing: 3px;
  1007. margin-top: 10px;
  1008. }
  1009. }
  1010. .login--form {
  1011. .form--group {
  1012. margin-bottom: 24px;
  1013. }
  1014. .form--input {
  1015. width: 100%;
  1016. height: 52px;
  1017. background: #000000;
  1018. border: 1px solid rgba(255, 255, 255, 0.15);
  1019. border-radius: 8px;
  1020. padding: 0 20px;
  1021. font-size: 15px;
  1022. color: #ffffff;
  1023. transition: all 0.3s ease;
  1024. &::placeholder {
  1025. color: rgba(255, 255, 255, 0.6);
  1026. }
  1027. &:focus {
  1028. outline: none;
  1029. border-color: rgba(255, 255, 255, 0.4);
  1030. background: rgba(255, 255, 255, 0.02);
  1031. }
  1032. &:hover {
  1033. border-color: rgba(255, 255, 255, 0.25);
  1034. }
  1035. }
  1036. .form--options {
  1037. display: flex;
  1038. justify-content: space-between;
  1039. align-items: center;
  1040. margin-bottom: 32px;
  1041. .checkbox--label {
  1042. display: flex;
  1043. align-items: center;
  1044. cursor: pointer;
  1045. color: rgba(255, 255, 255, 0.6);
  1046. font-size: 14px;
  1047. input[type="checkbox"] {
  1048. width: 18px;
  1049. height: 18px;
  1050. margin-right: 10px;
  1051. background: #000000;
  1052. border: 1px solid rgba(255, 255, 255, 0.3);
  1053. border-radius: 4px;
  1054. cursor: pointer;
  1055. accent-color: #ffffff;
  1056. }
  1057. &:hover {
  1058. color: rgba(255, 255, 255, 0.8);
  1059. }
  1060. }
  1061. .forgot--password {
  1062. color: rgba(255, 255, 255, 0.6);
  1063. font-size: 14px;
  1064. text-decoration: none;
  1065. transition: color 0.3s ease;
  1066. &:hover {
  1067. color: #ffffff;
  1068. }
  1069. }
  1070. }
  1071. .login--button {
  1072. width: 100%;
  1073. height: 52px;
  1074. background: #ffffff;
  1075. color: #000000;
  1076. border: none;
  1077. border-radius: 8px;
  1078. font-size: 16px;
  1079. font-weight: 600;
  1080. letter-spacing: 1px;
  1081. cursor: pointer;
  1082. transition: all 0.3s ease;
  1083. &:hover {
  1084. background: rgba(255, 255, 255, 0.9);
  1085. transform: translateY(-2px);
  1086. box-shadow: 0 10px 30px rgba(255, 255, 255, 0.2);
  1087. }
  1088. &:active {
  1089. transform: translateY(0);
  1090. }
  1091. }
  1092. }
  1093. .login--footer {
  1094. text-align: center;
  1095. margin-top: 40px;
  1096. p {
  1097. color: rgba(255, 255, 255, 0.3);
  1098. font-size: 12px;
  1099. letter-spacing: 0.5px;
  1100. }
  1101. }
  1102. }
  1103. //자세히 보기
  1104. .more--detail--href{
  1105. display: inline-flex;
  1106. align-items: center;
  1107. position: relative;
  1108. letter-spacing: 0px;
  1109. font-weight: 400;
  1110. font-size: 14px;
  1111. min-height:24px;
  1112. &:after{
  1113. content:'';
  1114. display: block;
  1115. width:calc(100% - 24px);
  1116. height:1px;
  1117. background: rgb(252, 252, 253);
  1118. position: absolute;
  1119. bottom:0px;
  1120. left:0px;
  1121. }
  1122. .ico{
  1123. width: 24px;
  1124. height: 24px;
  1125. background-image: url(/img/ico--arrow.svg);
  1126. }
  1127. }
  1128. //탭 링크
  1129. .text--tab--layout{
  1130. display: flex;
  1131. background: linear-gradient(134deg, rgb(44, 52, 63) 0%, rgb(35, 42, 52) 100%);
  1132. position: sticky;
  1133. top: 0;
  1134. z-index: 100;
  1135. @media(min-width:1440px){
  1136. display: grid;
  1137. grid-auto-flow: column;
  1138. grid-template-columns: max-content 1fr auto;
  1139. gap: 28px;
  1140. width: 100%;
  1141. box-sizing: border-box;
  1142. overflow: hidden;
  1143. }
  1144. @media(min-width:1025px){
  1145. padding-block:12px;
  1146. }
  1147. ul{
  1148. display: flex;
  1149. position: relative;
  1150. padding-inline:96px;
  1151. -webkit-box-align: center;
  1152. align-items: center;
  1153. -webkit-box-pack: justify;
  1154. justify-content: space-between;
  1155. li {
  1156. &:first-child{
  1157. a{
  1158. margin-left:-12px;
  1159. pointer-events: none;
  1160. }
  1161. }
  1162. a{
  1163. cursor: pointer;
  1164. display: flex;
  1165. -webkit-box-align: center;
  1166. align-items: center;
  1167. -webkit-box-pack: center;
  1168. justify-content: center;
  1169. text-decoration: none;
  1170. border-radius: 10px;
  1171. background: rgba(44, 52, 63, 0);
  1172. box-shadow: rgba(219, 223, 230, 0) 0px 0px 0px 1px inset;
  1173. outline-offset: -3px;
  1174. box-sizing: border-box;
  1175. transition-timing-function: cubic-bezier(0.75, 0.02, 0.5, 1);
  1176. transition-duration: 250ms;
  1177. transition-property: color, background, box-shadow;
  1178. min-height: 48px;
  1179. min-width: 64px;
  1180. color: rgba(252, 252, 253, 0.7);
  1181. padding: 0px 16px;
  1182. text-align: center;
  1183. letter-spacing: 0px;
  1184. font-weight: 400;
  1185. text-decoration: none;
  1186. font-size: 14px;
  1187. line-height: 20px;
  1188. font-stretch: 105%;
  1189. &:hover{
  1190. color:rgb(252,252,253);
  1191. background-color: rgb(44,52,63);
  1192. box-shadow: rgba(219, 223,230, .2) 0px 0px 0px 1px inset;
  1193. }
  1194. }
  1195. }
  1196. }
  1197. }
  1198. .inner--link--contents {
  1199. width: 100%;
  1200. padding: 40px 0;
  1201. ul {
  1202. list-style: none;
  1203. margin: 0;
  1204. padding: 0;
  1205. display: flex;
  1206. flex-wrap: wrap;
  1207. gap: 24px;
  1208. width: 100%;
  1209. padding:0 96px;
  1210. li {
  1211. width:calc( (100% - 48px) / 3);
  1212. --gradient-start: hsla(216, 20%, 17%, 1);
  1213. --gradient-end: hsla(216, 21%, 12%, 1);
  1214. transition-timing-function: cubic-bezier(0.75, 0.02, 0.5, 1);
  1215. transition-duration: 250ms;
  1216. transition-property: --gradient-start, --gradient-end, box-shadow;
  1217. padding:28px 16px;
  1218. overflow: hidden;
  1219. border-radius: 20px;
  1220. border: none;
  1221. cursor: pointer;
  1222. box-shadow: rgb(44, 52, 63) 0px 0px 0px 1px inset;
  1223. backdrop-filter: blur(40px);
  1224. background: linear-gradient(180deg, var(--gradient-start) 0%, var(--gradient-end) 100%);
  1225. display: flex;
  1226. text-decoration: none;
  1227. &:hover{
  1228. --gradient-start: hsla(216, 18%, 21%, 1);
  1229. --gradient-end: hsla(216, 18%, 21%, 1);
  1230. box-shadow: rgb(42,57,64) 0px 0px 0px 1px inset;
  1231. }
  1232. a {
  1233. display: inline-flex;
  1234. align-items: center;
  1235. color: rgba(252, 252, 253, 0.7);;
  1236. letter-spacing: 0px;
  1237. font-weight: 400;
  1238. text-decoration: none;
  1239. font-size: 12px;
  1240. line-height: 24px;
  1241. font-stretch: 105%;
  1242. padding-left:40px;
  1243. position: relative;
  1244. width:100%;
  1245. svg{
  1246. position: absolute;
  1247. top:50%;
  1248. transform: translateY(-50%);
  1249. right:0px;
  1250. }
  1251. }
  1252. }
  1253. }
  1254. }
  1255. .product--card--wrapper{
  1256. margin: auto;
  1257. max-width: var(--max-content-width);
  1258. padding: var(--spacing-relative-xl) var(--spacing-relative-md);
  1259. padding-inline: var(--page-margin);
  1260. padding-block-end: var(--spacing-relative-2xl);
  1261. @media (min-width: 375px) {
  1262. padding-inline: var(--page-margin);
  1263. }
  1264. @media (min-width: 768px) {
  1265. padding-inline: var(--page-margin);
  1266. }
  1267. @media (min-width: 1024px) {
  1268. padding-inline: var(--spacing-relative-3xl);
  1269. padding-block-end: var(--spacing-relative-2xl);
  1270. }
  1271. @media (min-width: 1440px) {
  1272. padding-inline: var(--page-margin);
  1273. padding-block-end: var(--spacing-relative-2xl);
  1274. }
  1275. &[data-type="square"] {
  1276. max-height:100%!important;
  1277. .product--card{
  1278. max-height:100%!important;
  1279. .product--card--thumb{
  1280. max-height: 100%!important;
  1281. padding-top:50%;
  1282. .product--card--thumb--inner{
  1283. position: absolute;
  1284. inset: 0px;
  1285. height: 100%;
  1286. img{
  1287. position: relative;
  1288. }
  1289. }
  1290. }
  1291. }
  1292. }
  1293. .product--card {
  1294. display: flex;
  1295. overflow: hidden;
  1296. max-height: 50vh;
  1297. // 가로 레이아웃
  1298. &[data-layout="horizontal"] {
  1299. flex-direction: row;
  1300. align-items: center;
  1301. .product--card--thumb {
  1302. flex: 0 0 40%;
  1303. max-width: 600px;
  1304. }
  1305. .product--card--content {
  1306. flex: 1;
  1307. }
  1308. // 이미지 오른쪽 배치
  1309. &[data-image-position="right"] {
  1310. flex-direction: row-reverse;
  1311. }
  1312. @media (max-width: 1024px) {
  1313. flex-direction: column;
  1314. .product--card--thumb {
  1315. flex: 1;
  1316. max-width: 100%;
  1317. }
  1318. .product--card--content {
  1319. padding-left: 0;
  1320. padding-right: 0;
  1321. padding-top: 20px;
  1322. }
  1323. // 모바일에서는 이미지 위치 상관없이 세로 배치
  1324. &[data-image-position="right"] {
  1325. flex-direction: column;
  1326. .product--card--content {
  1327. padding-right: 0;
  1328. padding-top: 20px;
  1329. }
  1330. }
  1331. }
  1332. }
  1333. // 세로 레이아웃
  1334. &[data-layout="vertical"] {
  1335. flex-direction: column;
  1336. max-width: 600px;
  1337. .product--card--thumb {
  1338. width: 100%;
  1339. }
  1340. .product--card--content {
  1341. padding-top: 24px;
  1342. }
  1343. }
  1344. .product--card--thumb {
  1345. background: rgba(255, 255, 255, 0.05);
  1346. min-width:50%;
  1347. position: relative;
  1348. max-height: 50vh;
  1349. border-radius: 20px;
  1350. position: relative;
  1351. overflow: hidden;
  1352. .product--card--thumb--inner{
  1353. height:100%;
  1354. min-height:50vh;
  1355. img {
  1356. width: 100%;
  1357. height: 100%;
  1358. object-fit: cover;
  1359. display: block;
  1360. transition: transform 0.6s ease;
  1361. position: absolute;
  1362. height: 100%;
  1363. }
  1364. &:hover img {
  1365. transform: scale(1.05);
  1366. }
  1367. }
  1368. }
  1369. .product--card--content {
  1370. display: flex;
  1371. flex-direction: column;
  1372. gap: 16px;
  1373. @media screen and (min-width: 320px) {
  1374. padding-block-start: var(--spacing-relative-lg);
  1375. }
  1376. @media screen and (min-width: 1024px) {
  1377. -webkit-box-pack: center;
  1378. justify-content: center;
  1379. align-items: flex-start;
  1380. padding-inline-start: var(--spacing-relative-2xl);
  1381. padding-inline-end: var(--spacing-relative-2xl);
  1382. padding-block-start: 0px;
  1383. }
  1384. }
  1385. .product--card--title {
  1386. margin: 0px;
  1387. color: rgb(252, 252, 253);
  1388. letter-spacing: 0px;
  1389. font-weight: 400;
  1390. text-decoration: none;
  1391. font-size: 24px;
  1392. line-height: 36px;
  1393. font-stretch: 130%;
  1394. @media (min-width: 1024px) {
  1395. font-size: 28px;
  1396. line-height: 40px;
  1397. }
  1398. @media (min-width: 1440px) {
  1399. font-size: 32px;
  1400. line-height: 44px;
  1401. }
  1402. @media (min-width: 1920px) {
  1403. font-size: 36px;
  1404. line-height: 52px;
  1405. }
  1406. }
  1407. .product--card--subtitle {
  1408. margin: 0;
  1409. color: rgba(252, 252, 253, 0.8);
  1410. font-size: 16px;
  1411. line-height: 24px;
  1412. }
  1413. .product--card--description {
  1414. margin-top: 8px;
  1415. p {
  1416. margin: 0px;
  1417. color: rgba(252, 252, 253, 0.7);
  1418. letter-spacing: 0px;
  1419. font-weight: 400;
  1420. text-decoration: none;
  1421. font-size: 16px;
  1422. line-height: 24px;
  1423. font-stretch: 105%;
  1424. }
  1425. }
  1426. .product--card--actions {
  1427. margin-top: 24px;
  1428. display: flex;
  1429. gap: 16px;
  1430. flex-wrap: wrap;
  1431. }
  1432. @media (max-width: 768px) {
  1433. padding: 24px;
  1434. gap: 24px;
  1435. }
  1436. }
  1437. }
  1438. .radius--img--wrap{
  1439. overflow: hidden;
  1440. border-radius: 20px;
  1441. }
  1442. // 딜러 검색 드롭다운 스타일
  1443. .dealer--search--section {
  1444. width: 100%;
  1445. max-width: 1920px;
  1446. margin: 0 auto;
  1447. padding: 80px 96px;
  1448. background-color: hsla(216, 23%, 8%, 1);
  1449. }
  1450. .dealer--search--container {
  1451. display: flex;
  1452. flex-direction: column;
  1453. gap: 48px;
  1454. border-top: 1px solid rgba(252, 252, 253, 0.15);
  1455. }
  1456. .dealer--category--wrap {
  1457. display: flex;
  1458. flex-direction: column;
  1459. }
  1460. .dealer--category--title {
  1461. font-size: 28px;
  1462. font-weight: 600;
  1463. margin: 0 0 24px 0;
  1464. color: rgb(252, 252, 253);
  1465. padding-bottom: 16px;
  1466. border-bottom: 2px solid rgba(252, 252, 253, 0.3);
  1467. }
  1468. .dealer--region--item {
  1469. border-bottom: 1px solid rgba(252, 252, 253, 0.15);
  1470. }
  1471. .dealer--region--header {
  1472. width: 100%;
  1473. display: flex;
  1474. justify-content: space-between;
  1475. align-items: center;
  1476. padding: 20px 24px;
  1477. background-color: transparent;
  1478. border: none;
  1479. color: rgb(252, 252, 253);
  1480. cursor: pointer;
  1481. transition: all 0.3s ease;
  1482. &:hover {
  1483. background-color: rgba(252, 252, 253, 0.05);
  1484. }
  1485. &.active {
  1486. background-color: rgba(252, 252, 253, 0.08);
  1487. }
  1488. }
  1489. .dealer--region--name {
  1490. font-size: 18px;
  1491. font-weight: 500;
  1492. }
  1493. .dealer--toggle--icon {
  1494. font-size: 28px;
  1495. line-height: 1;
  1496. transition: transform 0.3s ease;
  1497. }
  1498. .dealer--list--content {
  1499. padding: 0 24px 24px;
  1500. animation: slideDown 0.3s ease;
  1501. }
  1502. @keyframes slideDown {
  1503. from {
  1504. opacity: 0;
  1505. transform: translateY(-10px);
  1506. }
  1507. to {
  1508. opacity: 1;
  1509. transform: translateY(0);
  1510. }
  1511. }
  1512. .dealer--list {
  1513. list-style: none;
  1514. padding: 0;
  1515. padding-left:10px;
  1516. margin: 0;
  1517. display: flex;
  1518. flex-direction: column;
  1519. gap: 0px;
  1520. li {
  1521. margin: 0;
  1522. position: relative;
  1523. &:before{
  1524. content:'>';
  1525. font-size:12px;
  1526. margin-right:10px;
  1527. }
  1528. a{
  1529. text-decoration: underline;
  1530. }
  1531. }
  1532. }
  1533. .dealer--link {
  1534. display: inline-block;
  1535. color: rgba(252, 252, 253, 0.7);
  1536. text-decoration: none;
  1537. font-size: 16px;
  1538. transition: all 0.2s ease;
  1539. padding: 8px 0;
  1540. &:hover {
  1541. color: rgb(252, 252, 253);
  1542. text-decoration: underline;
  1543. }
  1544. }
  1545. // 반응형 처리
  1546. @media (max-width: 1024px) {
  1547. .dealer--search--section {
  1548. padding: 60px 48px;
  1549. }
  1550. .dealer--search--container {
  1551. gap: 40px;
  1552. }
  1553. .dealer--category--title {
  1554. font-size: 24px;
  1555. margin-bottom: 20px;
  1556. padding-bottom: 12px;
  1557. }
  1558. .dealer--region--header {
  1559. padding: 16px 20px;
  1560. }
  1561. .dealer--region--name {
  1562. font-size: 16px;
  1563. }
  1564. .dealer--list--content {
  1565. padding: 0 20px 20px;
  1566. }
  1567. .dealer--list {
  1568. gap: 6px;
  1569. }
  1570. }
  1571. @media (max-width: 768px) {
  1572. .dealer--search--section {
  1573. padding: 40px 24px;
  1574. }
  1575. .dealer--search--container {
  1576. gap: 32px;
  1577. }
  1578. .dealer--category--title {
  1579. font-size: 20px;
  1580. margin-bottom: 16px;
  1581. padding-bottom: 10px;
  1582. }
  1583. .dealer--region--header {
  1584. padding: 14px 16px;
  1585. }
  1586. .dealer--region--name {
  1587. font-size: 15px;
  1588. }
  1589. .dealer--toggle--icon {
  1590. font-size: 24px;
  1591. }
  1592. .dealer--list--content {
  1593. padding: 0 16px 16px;
  1594. }
  1595. .dealer--list {
  1596. gap: 6px;
  1597. }
  1598. .dealer--link {
  1599. font-size: 14px;
  1600. padding: 6px 0;
  1601. }
  1602. }
  1603. // 딜러 검색 페이지 스타일
  1604. .dealer--search--section{
  1605. padding: 64px 96px;
  1606. .dealer--search--container{
  1607. margin: 0 auto;
  1608. }
  1609. .dealer--category--wrap{
  1610. display: flex;
  1611. flex-direction: column;
  1612. gap: 16px;
  1613. }
  1614. .dealer--region--item{
  1615. border-bottom: 1px solid rgba(252, 252, 253, 0.1);
  1616. }
  1617. .dealer--region--header{
  1618. width: 100%;
  1619. display: flex;
  1620. justify-content: space-between;
  1621. align-items: center;
  1622. padding: 24px 0;
  1623. background: transparent;
  1624. border: none;
  1625. color: #fcfcfd;
  1626. font-size: 24px;
  1627. font-family: 'AudiType';
  1628. font-weight: 400;
  1629. transition: all 0.3s;
  1630. &:hover{
  1631. color: rgba(252, 252, 253, 0.7);
  1632. }
  1633. &.active{
  1634. color: #fcfcfd;
  1635. }
  1636. }
  1637. .dealer--region--name{
  1638. font-size: 24px;
  1639. }
  1640. .dealer--toggle--icon{
  1641. font-size: 32px;
  1642. line-height: 1;
  1643. font-weight: 300;
  1644. }
  1645. .dealer--list--content{
  1646. padding-bottom: 24px;
  1647. }
  1648. .dealer--list{
  1649. display: flex;
  1650. flex-direction: column;
  1651. gap: 16px;
  1652. >li{
  1653. list-style: none;
  1654. }
  1655. }
  1656. .dealer--link{
  1657. display: inline-block;
  1658. color: rgba(252, 252, 253, 0.7);
  1659. font-size: 16px;
  1660. text-decoration: underline;
  1661. text-underline-offset: 4px;
  1662. transition: all 0.3s;
  1663. background: transparent;
  1664. border: none;
  1665. font-family: 'AudiType';
  1666. font-weight: 400;
  1667. padding: 0;
  1668. cursor: pointer;
  1669. &:hover{
  1670. color: #fcfcfd;
  1671. }
  1672. }
  1673. }
  1674. // 딜러 팝업 스타일
  1675. .dealer--popup--overlay{
  1676. position: fixed;
  1677. top: 0;
  1678. left: 0;
  1679. width: 100%;
  1680. height: 100%;
  1681. background-color: rgba(2, 2, 3, 0.85);
  1682. display: flex;
  1683. justify-content: center;
  1684. align-items: center;
  1685. z-index: 9999;
  1686. padding: 20px;
  1687. }
  1688. .dealer--popup--container{
  1689. position: relative;
  1690. background-color: #1a1d23;
  1691. border-radius: 20px;
  1692. max-width: 1024px;
  1693. width: 100%;
  1694. max-height: 90vh;
  1695. overflow-y: auto;
  1696. box-shadow: 0 24px 48px rgba(0, 0, 0, 0.4);
  1697. &::-webkit-scrollbar{
  1698. width: 8px;
  1699. }
  1700. &::-webkit-scrollbar-track{
  1701. background: transparent;
  1702. }
  1703. &::-webkit-scrollbar-thumb{
  1704. background: rgba(252, 252, 253, 0.2);
  1705. border-radius: 4px;
  1706. &:hover{
  1707. background: rgba(252, 252, 253, 0.3);
  1708. }
  1709. }
  1710. @media (min-width: 320px) {
  1711. padding: 16px;
  1712. }
  1713. @media (min-width: 375px) {
  1714. padding: 28px;
  1715. }
  1716. @media (min-width: 768px) {
  1717. padding: 48px;
  1718. }
  1719. @media (min-width: 1024px) {
  1720. padding: 56px;
  1721. }
  1722. @media (min-width: 1440px) {
  1723. padding: 64px;
  1724. }
  1725. }
  1726. .dealer--popup--close{
  1727. position: absolute;
  1728. top: 24px;
  1729. right: 24px;
  1730. width: 40px;
  1731. height: 40px;
  1732. background: transparent;
  1733. border: none;
  1734. cursor: pointer;
  1735. z-index: 1;
  1736. display: flex;
  1737. justify-content: center;
  1738. align-items: center;
  1739. border-radius: 50%;
  1740. transition: all 0.3s;
  1741. &:hover{
  1742. background-color: rgba(252, 252, 253, 0.1);
  1743. }
  1744. .close--icon{
  1745. width: 24px;
  1746. height: 24px;
  1747. position: relative;
  1748. &::before,
  1749. &::after{
  1750. content: '';
  1751. position: absolute;
  1752. top: 50%;
  1753. left: 50%;
  1754. width: 20px;
  1755. height: 2px;
  1756. background-color: #fcfcfd;
  1757. }
  1758. &::before{
  1759. transform: translate(-50%, -50%) rotate(45deg);
  1760. }
  1761. &::after{
  1762. transform: translate(-50%, -50%) rotate(-45deg);
  1763. }
  1764. }
  1765. }
  1766. .dealer--popup--content{
  1767. margin: auto;
  1768. max-width: var(--max-content-width);
  1769. display: grid;
  1770. grid-template-columns: 1fr;
  1771. grid-template-rows: 1fr;
  1772. grid-template-areas:"media" "textarea";
  1773. padding: var(--spacing-relative-xl) var(--spacing-relative-md);
  1774. @media (min-width: 1024px) {
  1775. grid-template-columns: 1fr 1fr;
  1776. grid-template-areas: "media textarea";
  1777. }
  1778. @media (min-width: 1440px) {
  1779. grid-template-columns: 1fr 1fr;
  1780. grid-template-areas: "media textarea";
  1781. }
  1782. .dealer--thumb--wrap{
  1783. border-radius: 20px;
  1784. overflow: hidden;
  1785. }
  1786. .dealer--infos--wrap{
  1787. grid-area: textarea;
  1788. align-self: center;
  1789. @media screen and (min-width: 320px) {
  1790. padding-block-start: var(--spacing-relative-lg);
  1791. }
  1792. @media screen and (min-width: 1024px) {
  1793. display: flex;
  1794. flex-direction: column;
  1795. -webkit-box-pack: center;
  1796. justify-content: center;
  1797. align-items: flex-start;
  1798. padding-inline-start: var(--spacing-relative-2xl);
  1799. padding-inline-end: var(--spacing-relative-2xl);
  1800. padding-block-start: 0px;
  1801. }
  1802. }
  1803. }
  1804. .dealer--popup--header{
  1805. .dealer--name{
  1806. margin: 0px;
  1807. color: rgb(252, 252, 253);
  1808. font-family: AudiType, sans-serif;
  1809. letter-spacing: 0px;
  1810. font-weight: 400;
  1811. text-decoration: none;
  1812. font-size: 24px;
  1813. line-height: 36px;
  1814. font-stretch: 130%;
  1815. @media (min-width: 1024px) {
  1816. font-size: 28px;
  1817. line-height: 40px;
  1818. }
  1819. @media (min-width: 1440px) {
  1820. font-size: 32px;
  1821. line-height: 44px;
  1822. }
  1823. @media (min-width: 1920px) {
  1824. font-size: 36px;
  1825. line-height: 52px;
  1826. }
  1827. }
  1828. .dealer--type{
  1829. display: inline-block;
  1830. font-size: 14px;
  1831. color: rgba(252, 252, 253, 0.7);
  1832. padding: 4px 12px;
  1833. background-color: rgba(252, 252, 253, 0.1);
  1834. border-radius: 100px;
  1835. }
  1836. }
  1837. .dealer--popup--body{
  1838. display: flex;
  1839. flex-direction: column;
  1840. gap: 8px;
  1841. padding-top:8px;
  1842. }
  1843. .dealer--info--section{
  1844. display: flex;
  1845. flex-direction: column;
  1846. gap: 8px;
  1847. .info--label{
  1848. margin: 0px;
  1849. color: rgba(252, 252, 253, 0.7);
  1850. font-family: AudiType, sans-serif;
  1851. letter-spacing: 0px;
  1852. font-weight: 400;
  1853. text-decoration: none;
  1854. font-size: 16px;
  1855. line-height: 24px;
  1856. font-stretch: 105%;
  1857. a{
  1858. word-break: break-all;
  1859. }
  1860. }
  1861. .phone--link,
  1862. .email--link,
  1863. .website--link{
  1864. color: #fcfcfd;
  1865. text-decoration: underline;
  1866. text-underline-offset: 4px;
  1867. transition: all 0.3s;
  1868. &:hover{
  1869. color: rgba(252, 252, 253, 0.7);
  1870. }
  1871. }
  1872. .business--hours--item{
  1873. line-height: 1.8;
  1874. }
  1875. }
  1876. .dealer--popup--footer{
  1877. margin-top: 40px;
  1878. padding-top: 24px;
  1879. border-top: 1px solid rgba(252, 252, 253, 0.1);
  1880. display: flex;
  1881. justify-content: center;
  1882. }
  1883. .dealer--popup--empty{
  1884. padding: 80px 48px;
  1885. text-align: center;
  1886. >p{
  1887. font-size: 16px;
  1888. color: rgba(252, 252, 253, 0.7);
  1889. }
  1890. }
  1891. // 팝업 페이드 애니메이션
  1892. .dealer--popup--fade-enter-active,
  1893. .dealer--popup--fade-leave-active{
  1894. transition: opacity 0.3s ease;
  1895. .dealer--popup--container{
  1896. transition: transform 0.3s ease, opacity 0.3s ease;
  1897. }
  1898. }
  1899. .dealer--popup--fade-enter-from,
  1900. .dealer--popup--fade-leave-to{
  1901. opacity: 0;
  1902. .dealer--popup--container{
  1903. transform: scale(0.95);
  1904. opacity: 0;
  1905. }
  1906. }
  1907. .dealer--popup--fade-enter-to,
  1908. .dealer--popup--fade-leave-from{
  1909. opacity: 1;
  1910. .dealer--popup--container{
  1911. transform: scale(1);
  1912. opacity: 1;
  1913. }
  1914. }
  1915. /*=================================================
  1916. |버튼 리스트 css
  1917. |START
  1918. =================================================*/
  1919. .light--gray--btn{
  1920. border: 0px;
  1921. flex-direction: column;
  1922. -webkit-box-align: center;
  1923. align-items: center;
  1924. -webkit-box-pack: center;
  1925. justify-content: center;
  1926. transition-timing-function:cubic-bezier(0.75, 0.02, 0.5, 1);
  1927. transition-duration: 250ms;
  1928. border-radius: 999px;
  1929. cursor: pointer;
  1930. display: inline-flex;
  1931. box-sizing: border-box;
  1932. text-align: center;
  1933. letter-spacing: 0px;
  1934. font-weight: 400;
  1935. text-decoration: none;
  1936. font-size: 12px;
  1937. line-height: 16px;
  1938. font-stretch: 105%;
  1939. padding: 8px 16px;
  1940. min-height: 36px;
  1941. background: rgb(101, 112, 129);
  1942. color: rgb(252, 252, 253);
  1943. box-shadow: rgba(101, 112, 129, 0) 0px 0px 0px 1px inset;
  1944. &:hover{
  1945. color:rgb(252,252,253);
  1946. background-color: rgb(44,52,63);
  1947. box-shadow: rgba(219, 223,230, .2) 0px 0px 0px 1px inset;
  1948. }
  1949. }
  1950. .default--round--btn {
  1951. flex-direction: column;
  1952. -webkit-box-align: center;
  1953. align-items: center;
  1954. -webkit-box-pack: center;
  1955. justify-content: center;
  1956. transition-timing-function: cubic-bezier(0.75, 0.02, 0.5, 1);
  1957. transition-duration: 250ms;
  1958. border-radius: 999px;
  1959. cursor: pointer;
  1960. display: inline-flex;
  1961. border: 0px;
  1962. letter-spacing: 0px;
  1963. font-weight: 400;
  1964. text-decoration: none;
  1965. font-size: 14px;
  1966. line-height: 20px;
  1967. font-stretch: 105%;
  1968. padding: 12px 24px;
  1969. min-height: 48px;
  1970. background-color: rgb(24, 29, 37);
  1971. color: rgb(252, 252, 253);
  1972. box-shadow: rgb(44, 52, 63) 0px 0px 0px 1px inset;
  1973. transition-property: color, box-shadow, background-color;
  1974. &:hover {
  1975. background: rgba(44,52,63);
  1976. box-shadow: rgba(219,223,230, .2) 0px 0px 0px 1px inset;
  1977. }
  1978. &:active {
  1979. transform: translateY(0);
  1980. }
  1981. }
  1982. /*=================================================
  1983. |버튼 리스트 css
  1984. |뚱
  1985. =================================================*/