
#product_area {position: relative;overflow: hidden;padding: 120px 0 150px;background: radial-gradient(circle at 16% 18%, rgba(184, 12, 24, .2), transparent 34%), radial-gradient(circle at 80% 72%, rgba(236, 105, 30, .13), transparent 32%), linear-gradient(135deg, #120c0a 0%, #241714 46%, #070605 100%);}
#product_area.inner{padding:0;width: 100%;background: unset;}
#product_area.inner #product_list{margin: 0 0px;}
#product_area.inner::before{background:unset;}
#product_area .review_bg_video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; pointer-events: none; }
#product_area::before { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.35); z-index: 1; pointer-events: none; }
#product_area .review_content { position: relative; z-index: 2; }
#product_area::before {content: "";position: absolute;inset: 0;background: rgb(0 0 0 / 61%);z-index: 2;pointer-events: none;}



#product_area .workframe { position: relative; z-index: 2; }
#product_area .area_title {display: flex;align-items: center;gap: 22px;margin: 0 0 54px;color: white;}
#product_area .area_title::before {content: "PRODUCTS";display: inline-flex;align-items: center;justify-content: center;padding: 8px 14px 7px;background: linear-gradient(
90deg, #a30d18, #FF9800);color: #fff;font-size: 13px;line-height: 1;letter-spacing: .22em;font-family: "Times New Roman",serif;font-weight: 600;}
#product_area .area_title::after {content: "";flex: 1;height: 1px;background: linear-gradient(90deg, rgb(253 149 0 / 55%), transparent);}
#product_area #product_list { position: relative; margin: 0 -14px; }
#product_area #product_list ul { margin: 0; padding: 0; list-style: none; }
#product_area #product_list .slick-list { overflow: visible; }
#product_area #product_list .slick-track { display: flex; }
#product_area #product_list li { height: auto; padding: 0 14px; }
#product_area #product_list .item_row {position: relative;height: 100%;overflow: hidden;padding: 18px 18px 28px;background: linear-gradient(145deg,rgba(255,255,255,.96),rgba(246,239,231,.9)),#fff;border: 1px solid rgba(42,29,24,.14);transition: transform .45s ease,border-color .45s ease,background .45s ease;}
#product_area #product_list .item_row::before {content: "";position: absolute;left: 18px;top: 18px;right: 18px;aspect-ratio: 1/1;background: radial-gradient(circle at 50% 42%,rgba(184,12,24,.16),transparent 40%),linear-gradient(145deg,#241d1b,#070707);pointer-events: none;}
#product_area #product_list .item_row::after { content: ""; position: absolute; left: 18px; top: 18px; right: 18px; aspect-ratio: 1/1; border: 1px solid rgba(255,255,255,.12); pointer-events: none; }
#product_area #product_list .item_row:hover { transform: translateY(-12px); border-color: rgba(184,12,24,.48); background: linear-gradient(145deg,rgba(255,255,255,1),rgba(250,244,237,.94)),#fff; }
#product_area #product_list .category_btn {position: absolute;z-index: 5;left: 18px;top: 18px;display: inline-flex;align-items: center;justify-content: center;max-width: calc(100% - 36px);padding: 11px 18px 10px;background: #303030;color: #ffcc31;font-size: 14px;line-height: 1;letter-spacing: .14em;text-decoration: none;font-weight: 600;transition: background .35s ease,color .35s ease;}
#product_area #product_list .category_btn::after {content: "";position: absolute;right: -13px;top: 0;width: 14px;height: 100%;background: #303030;clip-path: polygon(0 0,100% 0,0 100%);transition: background .35s ease;}
#product_area #product_list .item_row:hover .category_btn,#product_area #product_list .item_row:hover .category_btn::after { background: #18110f; }
#product_area #product_list .img_box {position: relative;z-index: 2;overflow: hidden;display: flex;align-items: center;justify-content: center;aspect-ratio: 1/1;margin: 0 0 24px;padding: 26px;}
#product_area #product_list .img_box::before { content: ""; position: absolute; left: 18%; right: 18%; bottom: 18px; height: 18px; border-radius: 50%; background: rgba(0,0,0,.36); filter: blur(12px); }
#product_area #product_list .img_box img { position: relative; z-index: 2; display: block; width: 100%; height: 100%; object-fit: contain; transition: transform .55s ease,filter .55s ease; }
#product_area #product_list .item_row:hover .img_box img { transform: scale(1.06); filter: contrast(1.04) saturate(1.04); }
#product_area #product_list .info_box { position: relative; z-index: 3; min-height: 96px; padding: 4px 4px 0; }
#product_area #product_list .info_box::before { content: ""; display: block; width: 42px; height: 3px; margin: 0 0 18px; background: #b80c18; }
#product_area #product_list .info_box .h3 { margin: 0 0 10px; color: #1b1513; font-size: clamp(20px,1.5vw,26px); line-height: 1.45; letter-spacing: .1em; font-family: "Noto Serif TC","Noto Sans TC",serif; font-weight: 700; }
#product_area #product_list .info_box p { margin: 0; color: rgba(27,21,19,.64); font-size: 14px; line-height: 1.7; letter-spacing: .08em; }
#product_area #product_list .atag_item { z-index: 4; inset: 0; }
#product_area #product_list .atag_item::before { content: ""; position: absolute; right: 20px; bottom: 22px; width: 42px; aspect-ratio: 1/1; border: 1px solid rgba(184,12,24,.32); border-radius: 50%; background: rgba(255,255,255,.66); transition: background .35s ease,border-color .35s ease,transform .35s ease; }
#product_area #product_list .atag_item::after { content: ""; position: absolute; right: 38px; bottom: 38px; width: 8px; height: 8px; border-top: 2px solid #b80c18; border-right: 2px solid #b80c18; transform: rotate(45deg); transition: border-color .35s ease,transform .35s ease; }
#product_area #product_list .item_row:hover .atag_item::before { background: #b80c18; border-color: #b80c18; transform: scale(1.08); }
#product_area #product_list .item_row:hover .atag_item::after { border-color: #fff; transform: translateX(3px) rotate(45deg); }
#product_area #product_list .slick-dots {display: flex !important;align-items: center;justify-content: center;gap: 12px;margin: 42px 0 0;padding: 0;list-style: none;bottom: -60px;}
#product_area #product_list .slick-dots li { width: auto; height: auto; padding: 0; margin: 0; }
#product_area #product_list .slick-dots button {display: block;width: 38px;height: 3px;padding: 0;border: 0;background: rgb(255 255 255 / 40%);font-size: 0;line-height: 0;cursor: pointer;transition: width .35s ease,background .35s ease;}
#product_area #product_list .slick-dots .slick-active button { width: 68px; background: #b80c18; }

/*--------------------in-----------------------*/
/* grid_list */
.grid_list {display: grid;grid-template-columns: repeat(4, 1fr);grid-gap: 2em;}

/* product_item */
.product_item { margin: 0 auto 3em; }
.product_item .item_title_box {position: relative;margin-bottom: 2em;padding-bottom: .3em;letter-spacing: .1em;text-align: center;font-weight: 500;font-size: 1.5em;margin-top: 3em;}
.product_item #tabs_container{
    padding: 10px;
}
/* product_detail */
#product_detail { flex-wrap: wrap; display: flex; justify-content: space-between; }

/* imglist */
#imglist {width: 100%;}
#imglist a , #imglist img {width: 100%;aspect-ratio: 4/3;object-fit: cover;}
#imglist .img_box {margin-bottom: 1.3em;}
#imglist .img_nav .item {margin: 0 .5em;width: 100px;aspect-ratio: 1/1;}
#imglist .img_nav .item img {width: 100%;}

/* 商品上半部 */
#wrap #product_detail {display: grid;grid-template-columns: 40% 54%;gap: 6%;align-items: start;margin-bottom: 82px;}
/* 圖片區 */
#wrap #imglist { position: relative; min-width: 0; }
#wrap #imglist .img_box { position: relative; overflow: hidden; border-radius: 70px 10px 70px 10px; background: #f1efec; border: 1px solid rgba(0,0,0,.08); }
#wrap #imglist .img_box::before { content: ""; display: block; padding-bottom: 100%; }
#wrap #imglist .img_box .slick-list,#wrap #imglist .img_box .slick-track,#wrap #imglist .img_box .item {position: absolute !important;inset: 0;height: 100%;}
#wrap #imglist .img_box .item a { display: block; width: 100%; height: 100%; }
#wrap #imglist .img_box .slick-list .slick-active{left:0!important;}
#wrap #imglist .img_box img {width: 100%;height: 100%;object-fit: contain;padding: 38px;transition: transform .45s ease;}
#wrap #imglist .img_box .item:hover img { transform: scale(1.035); }
#wrap #imglist .img_nav { margin-top: 18px; overflow: hidden; }
#wrap #imglist .img_nav .slick-track { display: flex; gap: 12px; }
#wrap #imglist .img_nav .item { position: relative; overflow: hidden; margin: 0 6px; background: #fff; border: 1px solid rgba(0,0,0,.1); cursor: pointer; opacity: .58; transition: opacity .3s ease,border-color .3s ease; }
#wrap #imglist .img_nav .item::before { content: ""; display: block; padding-bottom: 100%; }
#wrap #imglist .img_nav .item img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 10px; }
#wrap #imglist .img_nav .slick-current,#wrap #imglist .img_nav .item:hover { opacity: 1; border-color: #d80c18; }
/* 商品資訊 */
#wrap #product_info {position: relative;padding: 18px 0 0;}
#wrap #product_info::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 60px;
    aspect-ratio: 1 / 1;
    background: #d80c18;
    clip-path: polygon(100% 0, 100% 100%, 0 0);
    pointer-events: none;
    z-index: 2;
}
#wrap #product_info::before { content: "QUALITY & PROFESSIONAL"; display: block; margin-bottom: 24px; color: #333; font-family: Georgia,"Times New Roman",serif; font-size: 15px; letter-spacing: .28em; }
#wrap #product_info .tit_box { position: relative; }
#wrap #product_info .title {position: relative;margin: 0 0 18px;padding-bottom: 26px;color: #252525;font-family: "Noto Serif TC","Noto Sans TC",serif;font-size: clamp(30px,4vw,55px);line-height: 1.18;letter-spacing: .1em;font-weight: 800;}
#content_wrap #community .title{font-size:16px;line-height:1;margin: 0 10px 0px 0;padding: 0 0 4px;}
#wrap #product_info .title::after {content: "";position: absolute;left: 0;bottom: -2px;width: 58px;height: 3px;background: #d80c18;}
#wrap #product_info .cat { display: inline-block; margin: 8px 0 28px; padding: 9px 18px; color: #d80c18; font-size: 14px; letter-spacing: .12em; border: 1px solid rgba(216,12,24,.24); background: rgba(255,255,255,.72); }
#wrap #product_info article { margin: 0; color: #666; font-size: 16px; line-height: 2.1; letter-spacing: .05em; }
#wrap #product_info .price_box { margin-top: 28px; }
#wrap #product_info .price_box ins { color: #d80c18; font-size: 28px; font-family: Georgia,"Times New Roman",serif; text-decoration: none; }
#wrap #product_info .price_box del { margin-left: 12px; color: #999; font-size: 16px; }
#wrap #ask_btns { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 42px; }
#wrap #ask_btns .btn {position: relative;display: inline-flex;align-items: center;justify-content: center;min-width: 159px;min-height: 56px;padding: 0 34px;color: #252525;max-width: 47%;font-family: Georgia,"Times New Roman",serif;font-size: 15px;letter-spacing: .18em;text-decoration: none;background: #fff;border: 1px solid #252525;transition: color .35s ease,background .35s ease,border-color .35s ease;}
#wrap #ask_btns .btn::after { content: ""; position: absolute; right: -4px; top: -4px; width: 8px; height: 8px; background: #252525; transition: background .35s ease; }
#wrap #ask_btns .contact_btn,#wrap #ask_btns .btn:hover { color: #fff; background: #d80c18; border-color: #d80c18; }
#wrap #ask_btns .contact_btn::after,#wrap #ask_btns .btn:hover::after { background: #d80c18; }

#wrap #product_tabs .tabs li::after {
    content: "";
    position: absolute;
    bottom: -2px;
    width: 30%;
    height: 3px;
    background: #d80c18;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .3s ease;
}
#wrap #product_tabs .tabs li.active::after, #wrap #product_tabs .tabs li:hover::after {
    transform: scaleX(1);
}
/* product_info */
#product_info {margin-left: 0;width: 100%;flex: 1 1 auto;}
#product_info .tit_box { margin-bottom: 2em; }
#product_info .tit_box .cat {color: var(--g_400);display: flex;justify-content: flex-end;}
#product_info .tit_box .title {fonttit_boxv-weight: 500;font-size: 1.7em;margin-bottom: 18px;letter-spacing: 0.04em;border-bottom: #bbbbbb dotted 2px;padding: 10px 0 5px;}
#product_info .tit_box article {margin-top: 1em;color: var(--g_700);}
#product_info .price_box ins { margin: 0 .5em 0 0; font-size: 1.3em; }

/* order_box */
#order_box .box label { width: 4em; display: block; font-size: .9em; color: var(--g_600); }
#order_box #quantity_box label { width: 100%; }

/* shape_box */
#shape_box { margin-top: 1.3em; }
#shape_box .control_list { margin-bottom: 1.3em; }
#shape_box .control_list .option_list { display: flex; flex-wrap: wrap; align-items: center; gap: .5em; }
#shape_box .control_list .option_list font { padding: .4em 1em; border: 1px var(--g_200) solid; line-height: 1; color: var(--g_700); cursor: pointer; }
#shape_box .control_list .option_list font.action { background: var(--primary); border-color: var(--primary); color: var(--g_100); }

/* q_control */
.q_control { border: 1px var(--g_200) solid; display: inline-flex; align-items: stretch; }
.q_control button { position: relative; width: 2em; cursor: pointer; }
.q_control button:before { position: absolute; width: 30%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); content: ""; }
.q_control button.plus:after { position: absolute; width: 30%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%) rotate(90deg); transform: translate(-50%, -50%) rotate(90deg); content: ""; }
.q_control input {padding: .3em;width: 5em;border: 0;border-radius: 0;text-align: center;background: transparent;}
.q_control button[disabled] , .q_control input[disabled] , #buy_btns button[disabled] { opacity: .5; cursor: not-allowed; }

/* buy_btns */
#buy_btns { display: flex; flex-wrap: wrap; align-items: center; gap: .3em .5em; }
#buy_btns button { padding: .3em .5em; width: 7em; border: 1px var(--g_200) solid; text-align: center; }
#buy_btns button[data-type="0"] { background: var(--primary); border-color: var(--primary); color: white; }

/* quantity_box */
#quantity_box { margin-bottom: 1.3em; display: flex; flex-wrap: wrap; align-items: center; gap: .3em .5em; }
#quantity_box .inventory_txt { margin-top: .3em; width: 100%; font-size: .9em; color: var(--g_600); }
#quantity_box .inventory_txt.red { color: var(--red); }

/* track */
#track { display: inline-flex; align-items: center; color: var(--g_500); }
#track:before { margin-right: .2em; font-family: 'Font Awesome 5 Free'; font-weight: 400; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; -webkit-transition: none; transition: none; content: "\f004"; }

/* add_product_list */
#add_product_list .grid_list { grid-gap: .8em 1em; }
#add_product_list li { position: relative; padding: 4%; border: 2px var(--g_100) solid; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
#add_product_list li [class*="icheck-material"] { position: absolute; margin-right: 0; top: 4%; right: 0; }
#add_product_list li .img_box img { width: 100px; aspect-ratio: 1/1; }
#add_product_list li .info_box { margin-left: 4%; width: 1%; flex: 1 1 auto; }
#add_product_list li .info_box h3 { margin-bottom: .5em; max-height: 3.2em; height: auto; -webkit-line-clamp: 2; }

/* product_tabs */
#product_tabs .tabs {margin-bottom: 1.5em;display: flex;align-items: center;justify-content: center;border: 1px solid #b1b1b1;grid-template-columns: repeat(4, 1fr);}
#product_tabs .tabs li {position: relative;padding: 1em .2em;letter-spacing: .2em;font-weight: 500;font-size: 1em;color: var(--g_400);cursor: pointer;text-align: center;border-right: 1px solid #b1b1b1;width: 100%;background-color: rgb(246 246 246 / 82%);display: flex;flex-direction: column;align-items: center;}
#product_tabs .tabs li:last-child {border-right: 0;}
#product_tabs .tabs li.active {color: var(--primary);background: rgb(255 255 255);}
#product_tabs .tabs li.active a, #product_tabs .tabs li:hover{color: var(--primary);}
/* other_product */
#other_product { grid-template-columns: repeat(4, 1fr); grid-gap: .5em; }

/* sort_box */
#sort_box {position: relative;margin-top: 1em;display: flex;justify-content: flex-start;align-items: stretch;gap: .5em 1em;flex-direction: column;padding: 1em .5em .5em;border-top: 1px solid #c9c9c9;}
#sort_box font {padding: .3em 1em;width: 9em;background: url("data:image/svg+xml,%3Csvg viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 5l-6.5 7L1 5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") rgb(255 255 255 / 0%) no-repeat calc(100% - .5em) 50% / auto .5em;background-clip: padding-box;border: 1px solid var(--g_200);border-radius: .2em;cursor: pointer;width: 100%;}
#sort_box .sort_list {position: absolute;width: calc(100% - 1em);display: flex;flex-direction: column;background: #fff;top: 6em;right: .5em;-webkit-transform: translateY(-.5em);transform: translateY(-.5em);opacity: 0;z-index: -1;pointer-events: none;}
#sort_box .sort_list button { padding: .3em 1em; text-align: center; }
#sort_box .sort_list button.action {background: var(--secondary);border-color: var(--secondary);color: white;}
#sort_box .sort_list button:not(:last-child) { border-bottom: 1px var(--g_200) solid; }
#sort_box font[data-type="1"] { background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M.5 7.5L7 .5l6.5 7' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
#sort_box .sort_list[data-type="1"] { -webkit-transform: translateY(.2em); transform: translateY(.2em); opacity: 1; z-index: 999; pointer-events: auto; }

/* ask_btns */
#ask_btns { margin: 1.3em 0; display: flex; align-items: center; }
#ask_btns .btn { width: min(50%, 15em); background: #fff; border: 1px var(--g_200) solid; border-radius: 0; }
#ask_btns .btn.contact_btn { background: var(--primary); border-color: var(--primary); color: white; }


@media screen and (min-width: 1161px){
	#shape_box .control_list .option_list font:hover { background: var(--primary); border-color: var(--primary); color: var(--g_100); }
	#track:hover { color: var(--primary); }
	#track:hover:before { font-weight: 900; }
}

@media (max-width:1280px) {
  #product_area { padding: 100px 0 92px; }
  #product_area #product_list { margin: 0 -10px; }
  #product_area #product_list li { padding: 0 10px; }
}
@media screen and (max-width: 1160px){
    #sort_box{display: grid;align-items: center;border: 0;margin: 0;padding: 0;width: min(100%, 310px);grid-template-columns: 100px 1fr;}
    #sort_box font{width: 12em;}
    #sort_box .sort_list{width:12em;right: 0;top: 40px;}
}
@media screen and (max-width: 1024px)
{
	#wrap #product_detail{display:flex;margin-bottom: 50px;}
}
@media screen and (max-width: 980px){
	.product_item {width: min(700px, 100%);margin-bottom: 10px;}
	#imglist {margin: 0 auto 4rem;width: min(500px , 100%);}
	#product_info { margin-left: 0; width: 100%; }
	#add_product_list .grid_list { grid-template-columns: repeat(2, 1fr); }
	#other_product { grid-template-columns: repeat(2, 1fr); grid-gap: 2em; }
}
@media (max-width:768px) {
  #product_area {padding: 76px 0 152px;}
  #product_area .area_title {display: flex;margin-bottom: 0;font-size: 32px;gap: 0;align-items: flex-start;padding: 0 15px;}
  #product_area .area_title::before { margin: 0 0 14px; }
  #product_area .area_title::after { display: block; width: 100%; margin-top: 18px; }
  #product_area #product_list .item_row { padding: 14px 14px 24px; }
  #product_area #product_list .item_row::before,#product_area #product_list .item_row::after { left: 14px; top: 14px; right: 14px; }
  #product_area #product_list .category_btn { left: 14px; top: 14px; }
}
@media (max-width:550px) {
  #product_area {padding: 5px 0 120px;}
	#wrap #imglist .img_box img{padding:20px;}
	#wrap #imglist .img_box{border-radius: 40px 10px 40px 10px;}
  #wrap #product_info::after{width:40px;}
	#product_area #product_list { margin: 0; }
  #product_area #product_list li {padding: 0 15px;}
  #product_area #product_list .img_box { padding: 32px; }
  #product_area #product_list .info_box { min-height: auto; padding-right: 58px; }
  #product_area #product_list .slick-dots button { width: 28px; }
  #product_area #product_list .slick-dots .slick-active button { width: 48px; }
  .grid_list{grid-template-columns: repeat(2, 1fr);gap: 1em;display: flex;flex-direction: column;}
  #other_product { grid-gap: 3% 2%; }
}

