/*
Theme Name: TEOLNANDA Core
Theme URI: https://teolnanda.com/
Author: TEOLNANDA
Description: Lightweight replacement theme prepared for staged migration from Uncode/WPBakery.
Version: 0.2.0
Text Domain: teolnanda-core
*/

:root { --tn-orange: #ef6514; --tn-ink: #171717; --tn-line: #e9e4df; --tn-page: #fff; }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; color: var(--tn-ink); background: var(--tn-page); font-family: Pretendard, "Noto Sans KR", Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.tn-core-shell { width: min(100% - 32px, 1240px); margin-inline: auto; }
.tn-core-topbar { color: #fff; background: #171717; font-size: 12px; }
.tn-core-topbar .tn-core-shell { min-height: 30px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.tn-core-topbar nav { display: flex; align-items: center; gap: 20px; }
.tn-core-topbar b { display: inline-grid; place-items: center; min-width: 18px; height: 18px; margin-left: 3px; border-radius: 20px; background: var(--tn-orange); font-size: 10px; }
.tn-core-header { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--tn-line); backdrop-filter: blur(10px); }
.tn-core-header__row { min-height: 72px; display: flex; align-items: center; gap: 36px; }
.tn-core-logo { display: inline-flex; flex: 0 0 auto; }
.tn-core-logo img { display: block; width: 180px; height: auto; }
.tn-core-nav { min-width: 0; margin-left: auto; }
.tn-core-menu { display: flex; align-items: center; justify-content: flex-end; gap: 27px; margin: 0; padding: 0; list-style: none; }
.tn-core-menu li { position: relative; margin: 0; list-style: none; }
.tn-core-menu > li > a { display: block; padding: 25px 0; font-size: 15px; font-weight: 700; white-space: nowrap; }
.tn-core-menu .sub-menu { position: absolute; top: calc(100% - 5px); left: 50%; z-index: 5; display: none; min-width: 190px; margin: 0; padding: 12px; transform: translateX(-50%); border: 1px solid var(--tn-line); border-radius: 14px; background: #fff; box-shadow: 0 18px 45px rgba(31,22,17,.12); list-style: none; }
.tn-core-menu .sub-menu::before { content: ""; position: absolute; left: 0; right: 0; bottom: 100%; height: 12px; }
.tn-core-menu li:hover > .sub-menu, .tn-core-menu li:focus-within > .sub-menu { display: block; }
.tn-core-menu .sub-menu a { display: block; padding: 9px 11px; border-radius: 8px; font-size: 14px; }
.tn-core-menu .sub-menu a:hover { color: var(--tn-orange); background: #fff5ee; }
.tn-core-menu-toggle { display: none; width: 40px; height: 40px; margin-left: auto; padding: 9px; border: 0; background: transparent; }
.tn-core-menu-toggle span { display: block; height: 2px; margin: 5px 0; background: #171717; }
.tn-core-drawer,.tn-core-drawer-backdrop { display: none; }
.tn-core-main { min-height: 55vh; }
.tn-core-subhero{position:relative;isolation:isolate;display:flex;min-height:238px;align-items:center;overflow:hidden;background:linear-gradient(125deg,#211711 0%,#512514 54%,#d85a15 130%)}
.tn-core-subhero::before{position:absolute;z-index:-2;inset:0;content:"";background-image:var(--tn-subhero-image,none);background-position:center 43%;background-size:cover;opacity:.54;transform:scale(1.015)}
.tn-core-subhero::after{position:absolute;z-index:-1;inset:0;content:"";background:linear-gradient(100deg,rgba(15,10,8,.82),rgba(26,14,9,.58) 50%,rgba(230,84,12,.18)),radial-gradient(circle at 82% 24%,rgba(255,151,77,.48),transparent 31%)}
.tn-core-subhero__inner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-block:44px;text-align:center}
.tn-core-subhero h1{max-width:900px;margin:18px 0 0;color:#fff;font-size:clamp(32px,3.3vw,48px);font-weight:800;line-height:1.15;letter-spacing:-.035em;text-shadow:0 3px 24px rgba(0,0,0,.24)}
.tn-core-breadcrumb{display:flex;max-width:min(94vw,920px);align-items:center;justify-content:center;gap:9px;padding:9px 16px;overflow:hidden;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:rgba(255,255,255,.82);background:rgba(20,12,8,.36);font-size:13px;line-height:1.25;white-space:nowrap;backdrop-filter:blur(9px)}
.tn-core-breadcrumb a{color:rgba(255,255,255,.8);text-decoration:none}.tn-core-breadcrumb a:hover{color:#fff}.tn-core-breadcrumb strong{overflow:hidden;color:#fff;text-overflow:ellipsis}
.tn-core-entry, .tn-core-commerce { padding-block: 32px 40px; }
.tn-core-entry > h1 { margin: 0 0 24px; font-size: clamp(28px, 4vw, 44px); }
.tn-core-magazine-archive__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tn-core-magazine-archive article{overflow:hidden;border:1px solid var(--tn-line);border-radius:18px;background:#fff}.tn-core-magazine-archive article>a{display:block;height:100%;color:inherit;text-decoration:none}.tn-core-magazine-archive img{display:block;width:100%;aspect-ratio:1.45/1;object-fit:cover}.tn-core-magazine-archive small,.tn-core-magazine-archive h2,.tn-core-magazine-archive p{display:block;margin-left:18px;margin-right:18px}.tn-core-magazine-archive small{margin-top:16px;color:var(--tn-orange);font-weight:700}.tn-core-magazine-archive h2{margin-top:8px;margin-bottom:8px;font-size:19px;line-height:1.45}.tn-core-magazine-archive p{margin-top:0;margin-bottom:20px;color:#756f6a;line-height:1.65}.tn-core-magazine-archive>.page-numbers{display:flex;justify-content:center;gap:6px;margin:28px 0 0;padding:0;list-style:none}.tn-core-magazine-archive>.page-numbers a,.tn-core-magazine-archive>.page-numbers span{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid var(--tn-line);border-radius:10px}
.tn-core-post-page{padding-bottom:24px;background:linear-gradient(180deg,#fff8f1 0,#faf8f6 420px,#fff 760px)}
.tn-core-post-hero{position:relative;overflow:hidden;padding:56px 0 72px;background:radial-gradient(circle at 88% 8%,rgba(255,183,128,.38),transparent 32%),linear-gradient(135deg,#fff9f4,#fff0e4)}
.tn-core-post-hero::after{position:absolute;right:-60px;bottom:-115px;content:"JOURNAL";color:rgba(229,78,8,.045);font-size:190px;font-weight:900;line-height:1;letter-spacing:-.07em;pointer-events:none}
.tn-core-post-hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.78fr);gap:58px;align-items:center}
.tn-core-post-hero__copy{min-width:0}
.tn-core-post-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:28px;color:#8f7d71;font-size:13px}.tn-core-post-breadcrumb a{color:inherit;text-decoration:none}.tn-core-post-breadcrumb a:hover{color:var(--tn-orange)}
.tn-core-post-kicker{display:block;margin-bottom:16px;color:var(--tn-orange);font-size:12px;font-weight:850;letter-spacing:.15em}
.tn-core-post-hero h1{max-width:760px;margin:0;color:#171513;font-size:clamp(36px,4.1vw,58px);font-weight:800;line-height:1.24;letter-spacing:-.045em;word-break:keep-all}
.tn-core-post-meta{display:flex;align-items:center;gap:9px;margin-top:25px;color:#81766e;font-size:14px}
.tn-core-post-hero__image{position:relative;margin:0;overflow:hidden;border:8px solid rgba(255,255,255,.88);border-radius:28px;background:#fff;box-shadow:0 26px 65px rgba(104,55,24,.17);transform:rotate(1.2deg)}
.tn-core-post-hero__image img{display:block;width:100%;aspect-ratio:1.35/1;object-fit:cover}
.tn-core-post-layout{position:relative;z-index:2;margin-top:-34px}
.tn-core-post-card{max-width:920px;margin:0 auto;padding:54px 68px;border:1px solid #eee4dc;border-radius:28px;background:#fff;box-shadow:0 24px 70px rgba(65,39,23,.09)}
.tn-core-post__content{color:#403b37;font-size:18px;line-height:1.85;overflow-wrap:anywhere}
.tn-core-post__content>div:first-child>h1:first-child{display:none}
.tn-core-post__content>div{max-width:100%;margin-bottom:12px}
.tn-core-post__content p{margin:0 0 1.2em}
.tn-core-post__content h2,.tn-core-post__content h3,.tn-core-post__content h4{color:#191715;line-height:1.4;letter-spacing:-.025em;word-break:keep-all}
.tn-core-post__content h2{margin:2.1em 0 .75em;font-size:28px}.tn-core-post__content h3{margin:1.8em 0 .7em;font-size:23px}
.tn-core-post__content>div:first-child h2{margin-top:0}.tn-core-post__content>div:first-child h2 a{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:12px;color:#fff!important;background:linear-gradient(135deg,#f36b1d,var(--tn-orange));box-shadow:0 10px 24px rgba(231,82,10,.2);font-size:16px;text-decoration:none}
.tn-core-post__content>div:first-child h2 a::after{content:"→"}
.tn-core-post__content hr{height:1px;margin:26px 0;border:0;background:#eee5de}
.tn-core-post__content img{display:block;width:auto;max-width:100%;height:auto;margin:30px auto;border-radius:20px;box-shadow:0 14px 38px rgba(40,28,20,.09)}
.tn-core-post__content figure{max-width:100%;margin:32px auto}.tn-core-post__content figcaption{margin-top:10px;color:#81776f;font-size:13px;text-align:center}
.tn-core-post__content blockquote{margin:28px 0;padding:22px 24px;border-left:4px solid var(--tn-orange);border-radius:0 15px 15px 0;color:#5e554e;background:#fff6ee}
.tn-core-post__content ul,.tn-core-post__content ol{margin:18px 0;padding-left:1.35em}.tn-core-post__content li{margin:7px 0}
.tn-core-post__content table{display:block;width:100%;margin:28px 0;overflow-x:auto;border-collapse:collapse}.tn-core-post__content th,.tn-core-post__content td{padding:12px 14px;border:1px solid var(--tn-line)}.tn-core-post__content th{background:#fff6ee}
.tn-core-post__content a{color:#d94d08;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.tn-core-post-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:48px;padding-top:24px;border-top:1px solid var(--tn-line)}.tn-core-post-footer>a{display:inline-flex;padding:11px 16px;border:1px solid var(--tn-line);border-radius:999px;color:#2b2825;text-decoration:none}.tn-core-post-footer>a:hover{border-color:var(--tn-orange);color:var(--tn-orange)}
.tn-core-post-tags{display:flex;gap:8px;flex-wrap:wrap}.tn-core-post-tags a{padding:7px 10px;border-radius:999px;color:#8b7568;background:#fff3e9;font-size:12px;text-decoration:none}
.tn-core-post-nav{display:grid;max-width:920px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px auto 0}.tn-core-post-nav a{display:flex;min-height:112px;padding:20px 22px;border:1px solid var(--tn-line);border-radius:18px;color:#2b2724;background:#fff;flex-direction:column;text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.tn-core-post-nav a:hover{border-color:#efb48e;box-shadow:0 13px 28px rgba(54,35,24,.08);transform:translateY(-2px)}.tn-core-post-nav small{margin-bottom:8px;color:var(--tn-orange);font-weight:750}.tn-core-post-nav strong{display:-webkit-box;overflow:hidden;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.tn-core-post-nav__next{text-align:right}
.tn-core-post-related{margin-top:68px}.tn-core-post-related>header{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:20px}.tn-core-post-related>header span{color:var(--tn-orange);font-size:12px;font-weight:850;letter-spacing:.15em}.tn-core-post-related>header h2{margin:8px 0 0;font-size:32px;letter-spacing:-.035em}.tn-core-post-related>header>a{color:#3b3632;text-decoration:none}
.tn-core-post-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tn-core-post-related__grid>a{display:flex;min-width:0;overflow:hidden;border:1px solid var(--tn-line);border-radius:20px;color:#211e1c;background:#fff;flex-direction:column;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.tn-core-post-related__grid>a:hover{box-shadow:0 16px 34px rgba(54,35,24,.09);transform:translateY(-3px)}.tn-core-post-related__grid img,.tn-core-post-related__placeholder{display:block;width:100%;aspect-ratio:1.5/1;object-fit:cover}.tn-core-post-related__placeholder{display:grid;place-items:center;color:#b89e8d;background:#fff3e9;font-weight:800}.tn-core-post-related__grid small{margin:16px 18px 7px;color:var(--tn-orange);font-weight:700}.tn-core-post-related__grid strong{display:-webkit-box;margin:0 18px 20px;overflow:hidden;font-size:18px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.tn-core-commerce .woocommerce { width: 100%; }
.tn-core-commerce .woocommerce-message,
.tn-core-commerce .woocommerce-info,
.tn-core-commerce .woocommerce-error { border-top-color: var(--tn-orange); }
.tn-core-commerce a.button,
.tn-core-commerce button.button,
.tn-core-commerce input.button { color: #fff; background: var(--tn-orange); border-radius: 10px; }
.tn-core-filter-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; width:100%; margin:0 0 28px; padding:16px; border:1px solid var(--tn-line); border-radius:18px; }
.tn-core-filter-grid a { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:10px 14px; border:1px solid #eee9e5; border-radius:12px; background:#fff; font-size:14px; font-weight:700; }
.tn-core-filter-grid a.is-active { color:#fff; border-color:#171717; background:#171717; }
.tn-core-filter-grid b { color:var(--tn-orange); }
.tn-core-commerce .woocommerce-ordering select { min-height:46px; padding:0 40px 0 14px; border:1px solid var(--tn-line); border-radius:10px; background:#fff; }
.tn-core-commerce ul.products,.tn-core-page-catalog ul.products { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px !important; clear:both; margin:24px 0 0 !important; }
.tn-core-commerce ul.products::before,.tn-core-commerce ul.products::after,.tn-core-page-catalog ul.products::before,.tn-core-page-catalog ul.products::after { display:none!important; }
.tn-core-commerce ul.products li.product,.tn-core-page-catalog ul.products li.product { width:auto !important; min-width:0; margin:0 !important; padding:0 8px 16px; float:none !important; overflow:hidden; border:1px solid var(--tn-line); border-radius:18px; background:#fff; }
.tn-core-commerce ul.products li.product a img,.tn-core-page-catalog ul.products li.product a img { width:calc(100% + 16px); max-width:none; margin:0 -8px 12px; aspect-ratio:1/.8; object-fit:contain; background:transparent; }
.tn-core-commerce ul.products .woocommerce-loop-product__title,.tn-core-page-catalog ul.products .woocommerce-loop-product__title { min-height:48px; padding:0 !important; font-size:15px !important; line-height:1.5; text-align:center; }
.tn-core-commerce ul.products .price,.tn-core-page-catalog ul.products .price { display:flex !important; flex-wrap:wrap; justify-content:center; gap:3px 6px; color:var(--tn-orange) !important; font-size:15px !important; text-align:center; }
.tn-core-commerce nav.woocommerce-pagination,.tn-core-page-catalog nav.woocommerce-pagination { margin-top:30px; }
.tn-core-commerce nav.woocommerce-pagination ul,.tn-core-page-catalog nav.woocommerce-pagination ul { overflow:hidden; border:1px solid var(--tn-line); border-radius:10px; }
.tn-core-commerce nav.woocommerce-pagination ul li,.tn-core-page-catalog nav.woocommerce-pagination ul li { border:0; }
.tn-core-commerce .woocommerce-ordering select,.tn-core-page-catalog .woocommerce-ordering select { min-width:150px; padding:10px 34px 10px 12px; border:1px solid var(--tn-line); border-radius:10px; color:#24211f; background:#fff; font:inherit; }
.tn-core-commerce .onsale,.tn-core-page-catalog .onsale,.tn-core-products .onsale { min-width:auto!important; min-height:auto!important; padding:7px 10px!important; border-radius:10px!important; color:#fff!important; background:var(--tn-orange)!important; font-size:12px!important; line-height:1.2!important; }
.single-product .tn-core-commerce .single_add_to_cart_button { min-height:46px; padding:0 28px!important; border-radius:10px!important; color:#fff!important; background:var(--tn-orange)!important; font-weight:800!important; }
.single-product .tn-core-commerce .quantity .qty { width:82px; min-height:46px; padding:8px; border:1px solid var(--tn-line); border-radius:10px; text-align:center; }
.tn-core-commerce nav.woocommerce-pagination ul li a,.tn-core-commerce nav.woocommerce-pagination ul li span { min-width:42px; padding:13px; }
.tn-core-commerce nav.woocommerce-pagination ul li span.current { color:#fff; background:var(--tn-orange); }
.single-product .tn-core-commerce div.product { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr); gap:48px; align-items:start; }
.single-product .tn-core-commerce div.product .woocommerce-product-gallery,.single-product .tn-core-commerce div.product .summary { width:auto; float:none; margin:0; }
.tn-core-product-gallery { min-width:0; }
.tn-core-product-gallery__main { overflow:hidden; border:1px solid var(--tn-line); border-radius:24px; background:#f7f7f7; }
.tn-core-product-gallery__main img { display:block; width:100%; aspect-ratio:1/1; object-fit:contain; }
.tn-core-product-gallery__thumbs { display:flex; gap:10px; margin-top:12px; overflow-x:auto; }
.tn-core-product-gallery__thumbs button { flex:0 0 78px; padding:0; overflow:hidden; border:1px solid var(--tn-line); border-radius:10px; background:#fff; }
.tn-core-product-gallery__thumbs img { display:block; width:100%; height:78px; object-fit:contain; }
.single-product .tn-core-commerce div.product .summary { padding:28px; border:1px solid var(--tn-line); border-radius:24px; box-shadow:0 20px 50px rgba(36,25,18,.08); }
.single-product .tn-core-commerce div.product .summary .price { color:var(--tn-orange); font-size:24px; }
.single-product .tn-core-commerce .woocommerce-tabs,.single-product .tn-core-commerce .related { grid-column:1/-1; }
.single-product .tn-core-commerce .woocommerce-tabs { margin-top:20px; border:1px solid var(--tn-line); border-radius:20px; overflow:hidden; }
.single-product .tn-core-commerce .woocommerce-tabs .panel { margin:0; padding:28px; }
.single-product .tn-core-commerce .related{position:relative}.single-product .tn-core-commerce .related ul.products{display:flex!important;gap:20px!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.single-product .tn-core-commerce .related ul.products::-webkit-scrollbar{display:none}.single-product .tn-core-commerce .related ul.products li.product{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start}.tn-core-related-nav{position:absolute;z-index:2;top:48%;display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--tn-line);border-radius:50%;background:#fff;box-shadow:0 8px 24px rgb(0 0 0/.12);transform:translateY(-50%);cursor:pointer}.tn-core-related-prev{left:-21px}.tn-core-related-next{right:-21px}.tn-core-related-dots{display:flex;justify-content:center;gap:7px;margin-top:16px}.tn-core-related-dots i{width:8px;height:8px;border-radius:50%;background:#d5d0cb}.tn-core-related-dots i.is-active{width:24px;border-radius:6px;background:var(--tn-orange)}
.tn-core-footer { margin-top: 56px; padding: 48px 0 30px; color: #fff; background: radial-gradient(circle at 5% 0,#4a2413 0,#171717 32%,#121212 100%); }
.tn-core-footer p { margin: 0; color: #d8d2cd; line-height: 1.7; }
.tn-core-footer__brand img { width: 210px; filter: brightness(0) invert(1); }
.tn-core-footer__brand h2 { margin: 22px 0 8px; font-size: 26px; }
.tn-core-footer__notice { margin-top: 26px; padding: 18px 20px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; }
.tn-core-footer__bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12); }
.tn-core-footer__bottom ul { display: flex; gap: 20px; margin: 0; padding: 0; list-style: none; }
.tn-core-home { padding: 22px 0 0; }
.tn-core-hero { width: min(100% - 32px, 1440px); margin: 0 auto 30px; }
.tn-core-hero__viewport { position: relative; overflow: hidden; width: 100%; aspect-ratio: 2.55 / 1; border-radius: 24px; background: #f7f5f2; box-shadow: 0 18px 48px rgba(38,28,20,.08); }
.tn-core-hero__track { position: relative; width: 100%; height: 100%; }
.tn-core-hero__slide { position: absolute; top: 50%; left: 50%; z-index: 0; display: block; width: 78%; overflow: hidden; border-radius: 20px; opacity: 0; transform: translate(-50%,-50%) scale(.9); transition: left .52s cubic-bezier(.22,.72,.2,1), width .52s cubic-bezier(.22,.72,.2,1), transform .52s cubic-bezier(.22,.72,.2,1), opacity .36s ease, filter .36s ease, box-shadow .36s ease; pointer-events: none; }
.tn-core-hero__slide.is-active { left:50%; z-index: 2; width:78%; opacity: 1; filter:none; box-shadow:0 22px 55px rgba(33,22,16,.16); transform: translate(-50%,-50%) scale(1); pointer-events: auto; }
.tn-core-hero__slide.is-prev { left:0; z-index: 1; width:68%; opacity: .13; filter: saturate(.3) brightness(1.16); transform: translate(-80%,-50%) scale(.88); pointer-events: auto; }
.tn-core-hero__slide.is-next { left:100%; z-index: 1; width:68%; opacity: .13; filter: saturate(.3) brightness(1.16); transform: translate(-20%,-50%) scale(.88); pointer-events: auto; }
.tn-core-hero img { display: block; width: 100%; height:auto; aspect-ratio: 2 / 1; object-fit: contain; background:#fff; }
.tn-core-hero__prev,.tn-core-hero__next { position:absolute; z-index:4; top:50%; display:grid; place-items:center; width:46px; height:46px; padding:0 0 4px; border:1px solid rgba(25,25,25,.08); border-radius:50%; color:#171717; background:rgba(255,255,255,.94); box-shadow:0 8px 24px rgba(20,15,10,.12); font:400 34px/1 Arial,sans-serif; transform:translateY(-50%); cursor:pointer; transition:color .2s ease,background .2s ease,transform .2s ease; }
.tn-core-hero__prev { left:24px; }.tn-core-hero__next { right:24px; }
.tn-core-hero__prev:hover,.tn-core-hero__next:hover { color:#fff; background:var(--tn-orange); transform:translateY(-50%) scale(1.06); }
.tn-core-hero__dots { position:absolute; z-index:4; left:50%; bottom:14px; display:flex; align-items:center; justify-content:center; gap:7px; transform:translateX(-50%); }
.tn-core-hero__dots button { width:8px; height:8px; padding:0; border:0; border-radius:8px; background:#d3cec9; cursor:pointer; transition:width .25s ease,background .25s ease; }
.tn-core-hero__dots button.is-active { width:28px; background:var(--tn-orange); }
.tn-core-search { margin-bottom: 48px; }
.tn-core-search form { display: flex; overflow: hidden; max-width: 760px; margin: auto; border: 1px solid var(--tn-line); border-radius: 16px; }
.tn-core-search input { min-width: 0; flex: 1; padding: 17px 20px; border: 0; font: inherit; }
.tn-core-search button { padding: 0 28px; border: 0; color: #fff; background: var(--tn-orange); font: inherit; font-weight: 700; }
.tn-core-section { margin-bottom: 56px; }
.tn-core-section__head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.tn-core-section__head span { display: block; color: var(--tn-orange); font-size: 12px; font-weight: 800; letter-spacing: .14em; }
.tn-core-section__head h1, .tn-core-section__head h2 { margin: 8px 0 0; font-size: clamp(27px,2.35vw,36px); line-height: 1.22; letter-spacing:-.035em; font-weight:750; }
.tn-core-section__head a { white-space: nowrap; }
.tn-core-categories { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 14px; }
.tn-core-categories a { display: grid; grid-template-columns: 68px minmax(0,1fr); align-items: center; gap: 0 12px; padding: 14px; border: 1px solid var(--tn-line); border-radius: 18px; }
.tn-core-categories img { grid-row: span 2; width: 68px; height: 68px; object-fit: contain; }
.tn-core-categories strong { font-size: 15px; }.tn-core-categories small { color: #8b8580; }
.tn-core-products .products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; gap:20px; margin:0; background:transparent!important; }
.tn-core-products .products::before,.tn-core-products .products::after { display:none!important; content:none!important; }
.tn-core-products .products .product { display:flex; width:auto!important; min-width:0; height:100%; margin:0!important; padding:0 8px 14px; float:none!important; overflow:hidden; border:1px solid var(--tn-line); border-radius:18px; background:#fff!important; flex-direction:column; }
.tn-core-products .products .woocommerce-LoopProduct-link { display:flex; min-width:0; flex:1; flex-direction:column; }
.tn-core-products .products .button { align-self:center; margin-top:auto; }
.tn-core-products .products img { aspect-ratio: 1 / .76; object-fit: cover; object-position:center; background: transparent; }
.tn-core-promos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-bottom:64px; }
.tn-core-promos a{
  position:relative;
  display:grid;
  overflow:hidden;
  isolation:isolate;
  aspect-ratio:2.63/1;
  border:1px solid var(--tn-line);
  border-radius:18px;
  background:linear-gradient(112deg,#fbf2e5 0%,#fffaf3 52%,#eff6fc 100%);
}

/* Code-rendered benefit medallions: crisp text at every density, no artwork crop. */
.tn-core-benefits{
  --benefit-bronze:#9a5b38;
  --benefit-copper:#c98255;
  --benefit-ink:#201c19;
  margin-bottom:32px;
  padding:12px 0 16px;
  overflow:hidden;
  border:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.tn-core-benefits__intro{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px;
  margin:0 6px 12px;
}
.tn-core-benefits__intro span{
  color:var(--benefit-copper);
  font-size:10px;
  font-weight:800;
  letter-spacing:.18em;
}
.tn-core-benefits__intro h2{
  margin:0;
  color:var(--benefit-ink);
  font-size:clamp(18px,1.5vw,22px);
  line-height:1.2;
  letter-spacing:-.035em;
}
.tn-core-benefits__rail{
  display:grid;
  grid-template-columns:repeat(5,96px);
  align-items:center;
  justify-content:center;
  min-width:0;
  gap:8px;
  padding:2px 0 6px;
}
.tn-core-benefits__rail:focus-visible{
  outline:3px solid rgba(238,92,17,.25);
  outline-offset:6px;
  border-radius:18px;
}
.tn-core-benefit{
  position:relative;
  isolation:isolate;
  display:flex;
  width:96px;
  flex:0 0 96px;
  aspect-ratio:1;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-width:0;
  margin-left:0;
  padding:12px 6px 9px;
  text-align:center;
  color:var(--benefit-ink);
  border:1.5px solid var(--benefit-bronze);
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 35%,#fff 0%,#faf8f4 58%,#ece6de 100%);
  box-shadow:
    inset 0 0 0 2px #ead8c8,
    inset 0 0 0 3px #fff,
    0 6px 13px rgba(89,55,33,.1);
}
.tn-core-benefit:first-child{margin-left:0}
.tn-core-benefit::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:4px;
  border:1px solid rgba(154,91,56,.32);
  border-radius:50%;
}
.tn-core-benefit::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:54%;
  height:7px;
  left:23%;
  bottom:-4px;
  border-radius:50%;
  background:rgba(82,53,35,.15);
  filter:blur(5px);
}
.tn-core-benefit__icon{
  display:grid;
  width:18px;
  height:18px;
  margin-bottom:4px;
  place-items:center;
  color:var(--benefit-bronze);
  border:1px solid rgba(154,91,56,.26);
  border-radius:50%;
  background:#fffaf5;
}
.tn-core-benefit__icon svg,
.tn-core-benefit__sub svg{
  width:11px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.tn-core-benefit h3{
  margin:0;
  font-size:8.5px;
  font-weight:800;
  line-height:1.16;
  letter-spacing:-.04em;
}
.tn-core-benefit h3 em{
  color:var(--benefit-bronze);
  font-style:normal;
}
.tn-core-benefit strong{
  margin-top:3px;
  color:var(--benefit-bronze);
  font-size:6.5px;
  line-height:1.18;
}
.tn-core-benefit p{
  margin:3px 0 0;
  color:#5f5751;
  font-size:5.8px;
  line-height:1.2;
}
.tn-core-benefit__sub{
  display:flex;
  align-items:center;
  gap:3px;
  margin-top:3px;
  color:#62574f;
  font-size:5.8px;
  line-height:1.2;
  text-align:center;
}
.tn-core-benefit__sub svg{
  width:11px;
  flex:none;
  color:var(--benefit-bronze);
}
.tn-core-benefit__sub b{color:var(--benefit-bronze)}
.tn-core-benefits__hint{display:none}
@media (max-width: 1100px){
  .tn-core-benefits{
    width:auto;
    margin-right:15px;
    margin-left:15px;
    padding:10px 0 14px;
  }
  .tn-core-benefits__rail{
    grid-template-columns:repeat(5,minmax(0,80px));
    gap:5px;
  }
  .tn-core-benefit{
    width:100%;
    flex:none;
    margin-left:0;
    padding:9px 4px 7px;
  }
}
@media (max-width: 640px){
  .tn-core-benefits{
    width:auto;
    margin-right:15px;
    margin-bottom:24px;
    margin-left:15px;
    padding:8px 0 12px;
  }
  .tn-core-benefits__intro{
    display:block;
    margin:0 8px 13px;
  }
  .tn-core-benefits__intro span{
    display:block;
    margin-bottom:5px;
    font-size:10px;
  }
  .tn-core-benefits__intro h2{
    font-size:20px;
  }
  .tn-core-benefits__rail{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    align-items:stretch;
    width:100%;
    gap:3px;
    overflow:visible;
    padding:2px 0 6px;
  }
  .tn-core-benefits__rail::-webkit-scrollbar{display:none}
  .tn-core-benefit{
    width:100%;
    min-width:0;
    margin-left:0;
    padding:7px 2px 5px;
    border-width:1px;
    box-shadow:
      inset 0 0 0 2px #ead8c8,
      inset 0 0 0 3px #fff,
      0 5px 10px rgba(89,55,33,.1);
  }
  .tn-core-benefit::before{inset:4px}
  .tn-core-benefit::after{bottom:-4px;height:7px;filter:blur(5px)}
  .tn-core-benefit__icon{
    width:13px;
    height:13px;
    margin-bottom:2px;
    border-width:.5px;
  }
  .tn-core-benefit__icon svg{width:8px;stroke-width:1.8}
  .tn-core-benefit h3{
    font-size:6.7px;
    line-height:1.16;
    letter-spacing:-.055em;
  }
  .tn-core-benefit strong{
    margin-top:2px;
    font-size:5px;
    line-height:1.15;
  }
  .tn-core-benefit p,
  .tn-core-benefit__sub{
    margin-top:2px;
    font-size:4.6px;
    line-height:1.17;
  }
  .tn-core-benefit__sub{gap:2px;text-align:center}
  .tn-core-benefit__sub svg{display:none}
  .tn-core-benefits__hint{
    display:none;
  }
  .tn-core-benefits__hint span{
    position:relative;
    width:34px;
    height:2px;
    background:#c78358;
  }
  .tn-core-benefits__hint span::after{
    content:"";
    position:absolute;
    top:-3px;
    right:0;
    width:7px;
    height:7px;
    transform:rotate(45deg);
    border-top:2px solid #c78358;
    border-right:2px solid #c78358;
  }
}
@media (max-width: 360px){
  .tn-core-benefits{margin-right:12px;margin-left:12px}
  .tn-core-benefits__rail{gap:2px}
  .tn-core-benefit{padding:6px 1px 4px}
  .tn-core-benefit__icon{width:12px;height:12px}
  .tn-core-benefit__icon svg{width:7px}
  .tn-core-benefit h3{font-size:6.1px}
  .tn-core-benefit strong{font-size:4.6px}
  .tn-core-benefit p,
  .tn-core-benefit__sub{font-size:4.2px}
}
.tn-core-promos a::before{
  position:absolute;
  z-index:-1;
  inset:0;
  content:"";
  background:
    radial-gradient(circle at 54% 58%,rgba(204,157,102,.18) 0 12%,transparent 30%),
    radial-gradient(circle at 96% 10%,rgba(124,170,211,.16) 0 9%,transparent 24%);
}
.tn-core-promos a:nth-child(2){
  background:linear-gradient(112deg,#fff8ee 0%,#fffdf8 48%,#fff0db 100%);
}
.tn-core-promos a:nth-child(2)::before{
  background:
    radial-gradient(circle at 52% 56%,rgba(235,181,87,.16) 0 12%,transparent 30%),
    radial-gradient(circle at 94% 10%,rgba(244,194,127,.18) 0 9%,transparent 25%);
}
.tn-core-promos a:first-child{
  background:#f7f3ed;
}
.tn-core-promos a:first-child::before{
  display:none;
}
.tn-core-promos a:first-child img{
  content:url('/wp-content/themes/teolnanda-core/assets/teolnanda-original-promo-referral-v4.png');
  mix-blend-mode:normal;
}
.tn-core-promos img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  background:transparent;
  mix-blend-mode:multiply;
}
.tn-core-service { display:grid; grid-template-columns:.8fr 2fr; gap:34px; margin-bottom:64px; padding:42px; border-radius:28px; background:#fff3e9; }.tn-core-service__intro>span,.tn-core-faq header>span{color:var(--tn-orange);font-size:12px;font-weight:800;letter-spacing:.15em}.tn-core-service__intro h2{margin:12px 0 0;font-size:38px;line-height:1.15}.tn-core-service__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tn-core-service__cards article{padding:24px;border:1px solid #eaded4;border-radius:20px;background:#fff}.tn-core-service__cards b{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;color:var(--tn-orange);background:#ffede0;font-size:26px}.tn-core-service__cards b svg{display:block;overflow:visible;stroke-linecap:round;stroke-linejoin:round}.tn-core-service__cards h3{margin:18px 0 9px}.tn-core-service__cards p{margin:0;color:#756f6a;line-height:1.65}
.tn-core-youtube .tn-core-section__head span{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:9px;color:#fff;background:#f00;letter-spacing:.04em}.tn-core-youtube .tn-core-section__head span::before{content:'▶';font-size:10px}.tn-core-youtube__viewport{position:relative}.tn-core-youtube__track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.tn-core-youtube__track::-webkit-scrollbar{display:none}.tn-core-youtube__card{flex:0 0 calc((100% - 40px)/3);overflow:hidden;border:1px solid var(--tn-line);border-radius:18px;color:inherit;background:#fff;scroll-snap-align:start}.tn-core-youtube__card>span{position:relative;display:block}.tn-core-youtube__card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.tn-core-youtube__card b{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:50px;height:50px;border-radius:50%;color:#fff;background:#f00;transform:translate(-50%,-50%)}.tn-core-youtube__card strong,.tn-core-youtube__card small{display:block;margin:0 18px}.tn-core-youtube__card strong{min-height:54px;margin-top:17px;line-height:1.5}.tn-core-youtube__card small{margin-top:14px;margin-bottom:20px;color:#9b8176;font-weight:700}.tn-core-youtube__prev,.tn-core-youtube__next{position:absolute;z-index:2;top:50%;display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--tn-line);border-radius:50%;background:#fff;box-shadow:0 8px 24px rgb(0 0 0/.12);transform:translateY(-50%);cursor:pointer}.tn-core-youtube__prev{left:-21px}.tn-core-youtube__next{right:-21px}.tn-core-youtube__dots{display:flex;justify-content:center;gap:7px;margin-top:18px}.tn-core-youtube__dots i{width:8px;height:8px;border-radius:50%;background:#d5d0cb}.tn-core-youtube__dots i.is-active{width:24px;border-radius:6px;background:#f00}
.tn-core-magazine {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tn-core-magazine a{display:grid;grid-template-columns:42% 1fr;align-items:center;overflow:hidden;border:1px solid var(--tn-line);border-radius:16px}.tn-core-magazine img{grid-row:span 2;width:100%;height:130px;object-fit:cover}.tn-core-magazine small,.tn-core-magazine strong{padding:0 14px}.tn-core-magazine small{align-self:end;color:var(--tn-orange);font-size:11px}.tn-core-magazine strong{align-self:start;padding-top:7px;line-height:1.45}
.tn-core-reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.tn-core-reviews>a{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;align-items:center}.tn-core-reviews img{display:block;width:130px;height:130px;border-radius:18px;object-fit:contain;background:#f7f5f2}.tn-core-reviews span{display:grid;gap:7px}.tn-core-reviews i{color:#ffbf00;font-style:normal;letter-spacing:2px}.tn-core-reviews small{display:-webkit-box;overflow:hidden;color:#756f6a;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.tn-core-faq{margin-bottom:30px}.tn-core-faq header{margin-bottom:18px}.tn-core-faq h2{margin:9px 0 0;font-size:36px}.tn-core-faq details{border-bottom:1px solid var(--tn-line)}.tn-core-faq summary{padding:19px 2px;cursor:pointer;font-weight:700}.tn-core-faq details p{margin:0;padding:0 2px 20px;color:#716a64;line-height:1.7}
.tn-core-youtube__prev,.tn-core-related-prev{left:6px!important}.tn-core-youtube__next,.tn-core-related-next{right:6px!important}

/* One product-card system for home shortcodes, archives and category landings. */
.tn-core-products ul.products,.tn-core-commerce ul.products,.tn-core-page-catalog ul.products{display:grid!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:20px!important;margin:24px auto 0!important;padding:0!important;padding-inline:0!important;list-style:none!important;background:transparent!important}
.tn-core-products ul.products li.product,.tn-core-commerce ul.products li.product,.tn-core-page-catalog ul.products li.product{position:relative;display:flex!important;width:auto!important;min-width:0;height:100%;margin:0!important;padding:0 8px 14px!important;float:none!important;overflow:hidden;border:1px solid #ebe4de;border-radius:20px;background:#fff!important;box-shadow:0 10px 30px rgba(42,31,23,.045);transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;flex-direction:column}
.tn-core-products ul.products li.product:hover,.tn-core-commerce ul.products li.product:hover,.tn-core-page-catalog ul.products li.product:hover{border-color:#efc2a7;box-shadow:0 16px 38px rgba(63,40,25,.1);transform:translateY(-4px)}
.tn-core-products ul.products li.product .woocommerce-LoopProduct-link,.tn-core-commerce ul.products li.product .woocommerce-LoopProduct-link,.tn-core-page-catalog ul.products li.product .woocommerce-LoopProduct-link{display:flex;min-width:0;flex:1;flex-direction:column}
.tn-core-products ul.products li.product a img,.tn-core-commerce ul.products li.product a img,.tn-core-page-catalog ul.products li.product a img{display:block;width:calc(100% + 16px)!important;max-width:none!important;margin:0 -8px 12px!important;aspect-ratio:1/.78;object-fit:cover;object-position:center;background:transparent!important}
.tn-core-products ul.products .woocommerce-loop-product__title,.tn-core-commerce ul.products .woocommerce-loop-product__title,.tn-core-page-catalog ul.products .woocommerce-loop-product__title{min-height:48px;margin:0!important;padding:0!important;color:#191614;font-size:15px!important;font-weight:760;line-height:1.5;text-align:center;word-break:keep-all}
.tn-core-products ul.products .price,.tn-core-commerce ul.products .price,.tn-core-page-catalog ul.products .price{display:flex!important;min-height:25px;align-items:center;justify-content:center;gap:3px 6px;margin:7px 0 0!important;color:#e7550d!important;font-size:15px!important;font-weight:750;text-align:center;flex-wrap:wrap}
.tn-core-products ul.products .price del,.tn-core-commerce ul.products .price del,.tn-core-page-catalog ul.products .price del{color:#9d9690;opacity:1;font-size:.84em;font-weight:500}
.tn-core-products ul.products .price ins,.tn-core-commerce ul.products .price ins,.tn-core-page-catalog ul.products .price ins{color:#e7550d;text-decoration:none}
.tn-core-products ul.products .button,.tn-core-commerce ul.products .button,.tn-core-page-catalog ul.products .button{display:flex!important;width:100%;min-height:44px;align-items:center;justify-content:center;align-self:center;gap:7px;margin:12px auto 0!important;padding:10px 14px!important;border:1px solid #f2b58f!important;border-radius:12px!important;color:#d94e08!important;background:#fff7f1!important;box-shadow:0 6px 16px rgba(224,84,16,.07);font-size:13px!important;font-weight:800!important;line-height:1.2!important;text-align:center;transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.tn-core-products ul.products .button::after,.tn-core-commerce ul.products .button::after,.tn-core-page-catalog ul.products .button::after{content:"›";font-size:20px;font-weight:500;line-height:.8;transition:transform .2s ease}
.tn-core-products ul.products .button:hover,.tn-core-commerce ul.products .button:hover,.tn-core-page-catalog ul.products .button:hover{border-color:var(--tn-orange)!important;color:#fff!important;background:var(--tn-orange)!important;box-shadow:0 9px 22px rgba(232,84,10,.22);transform:translateY(-1px)}
.tn-core-products ul.products .button:hover::after,.tn-core-commerce ul.products .button:hover::after,.tn-core-page-catalog ul.products .button:hover::after{transform:translateX(3px)}
.tn-core-products ul.products .onsale,.tn-core-commerce ul.products .onsale,.tn-core-page-catalog ul.products .onsale{position:absolute!important;z-index:3;top:12px!important;left:12px!important;right:auto!important;display:inline-flex!important;min-width:0!important;min-height:0!important;align-items:center;padding:7px 11px!important;border:1px solid rgba(255,255,255,.55)!important;border-radius:999px!important;color:#fff!important;background:linear-gradient(135deg,#ff7a20,#ea500b)!important;box-shadow:0 8px 18px rgba(235,80,10,.25);font-size:0!important;font-weight:800!important;line-height:1!important}
.tn-core-products ul.products .onsale::after,.tn-core-commerce ul.products .onsale::after,.tn-core-page-catalog ul.products .onsale::after{content:"할인";font-size:11px;letter-spacing:-.02em}
.single-product .tn-core-commerce .related ul.products{display:flex!important}.single-product .tn-core-commerce .related ul.products li.product{flex:0 0 calc((100% - 40px)/3)}

/* Product detail: compact, builder-independent and consistent with the shop grid. */
.single-product .tn-core-commerce{padding-top:34px}
.single-product .tn-core-commerce div.product{gap:36px}
.single-product .tn-core-commerce div.product .woocommerce-product-gallery{padding:22px;overflow:hidden;border:1px solid var(--tn-line);border-radius:24px;background:#faf9f7}
.single-product .tn-core-commerce div.product .woocommerce-product-gallery__image img{display:block;width:100%;max-height:620px;object-fit:contain}
.single-product .tn-core-commerce div.product .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}
.single-product .tn-core-commerce div.product .flex-control-thumbs li{width:auto!important;float:none!important}
.single-product .tn-core-commerce div.product .flex-control-thumbs img{border:1px solid transparent;border-radius:10px}.single-product .tn-core-commerce div.product .flex-control-thumbs img.flex-active{border-color:var(--tn-orange)}
.single-product .tn-core-commerce div.product .summary{position:static;padding:30px;border-radius:24px;background:#fff}
.single-product .tn-core-commerce div.product .product_title{margin:0 0 16px;font-size:clamp(28px,3vw,38px);line-height:1.25;letter-spacing:-.035em;word-break:keep-all}
.single-product .tn-core-commerce div.product .woocommerce-product-details__short-description{color:#5f5853;line-height:1.75}
.single-product .tn-core-commerce div.product .summary .price{display:flex;align-items:baseline;gap:8px;margin:20px 0;color:var(--tn-orange);font-size:28px;font-weight:800;flex-wrap:wrap}
.single-product .tn-core-commerce div.product .summary .price del{color:#9b9691;font-size:17px;font-weight:500}.single-product .tn-core-commerce div.product .summary .price ins{text-decoration:none}
.single-product .tn-core-commerce div.product form.cart{display:flex;gap:10px;margin:24px 0 20px;padding:16px;border:1px solid #f0ded1;border-radius:18px;background:#fff8f2;flex-wrap:wrap}
.single-product .tn-core-commerce div.product form.cart .quantity{flex:0 0 92px}.single-product .tn-core-commerce div.product form.cart .single_add_to_cart_button{min-width:180px;flex:1}
.single-product .tn-core-commerce div.product form.cart .tn-core-buy-now{min-width:150px;min-height:46px;padding:0 24px!important;border:1px solid #1b1b1b!important;border-radius:10px!important;color:#fff!important;background:#1b1b1b!important;font-weight:800!important;flex:1}
.single-product .tn-core-commerce div.product form.cart .tn-core-buy-now:hover{border-color:var(--tn-orange)!important;background:var(--tn-orange)!important}
.single-product .tn-core-commerce div.product form.cart .tn-core-buy-now:disabled{cursor:not-allowed;opacity:.42}
.single-product .tn-core-commerce div.product table.variations{width:100%;margin:0 0 12px}.single-product .tn-core-commerce div.product table.variations th,.single-product .tn-core-commerce div.product table.variations td{display:block;width:100%;padding:4px 0}.single-product .tn-core-commerce div.product table.variations select{width:100%;min-height:46px;padding:8px 12px;border:1px solid var(--tn-line);border-radius:10px;background:#fff}
.single-product .tn-core-commerce div.product .product_meta{display:flex;gap:7px;margin-top:20px;padding-top:18px;border-top:1px solid var(--tn-line);color:#7b746f;font-size:13px;line-height:1.6;flex-direction:column}
.single-product .tn-core-commerce .woocommerce-tabs{margin-top:38px;border:0;border-radius:24px;background:#fff;box-shadow:0 16px 45px rgba(36,25,18,.07)}
.single-product .tn-core-commerce .woocommerce-tabs ul.tabs{display:flex;justify-content:center;gap:8px;margin:0!important;padding:16px!important;border-bottom:1px solid var(--tn-line);background:#faf8f5}
.single-product .tn-core-commerce .woocommerce-tabs ul.tabs::before{display:none!important}.single-product .tn-core-commerce .woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;border:0!important;border-radius:999px!important;background:transparent!important}
.single-product .tn-core-commerce .woocommerce-tabs ul.tabs li::before,.single-product .tn-core-commerce .woocommerce-tabs ul.tabs li::after{display:none!important}
.single-product .tn-core-commerce .woocommerce-tabs ul.tabs li a{padding:10px 18px!important;color:#726a64!important;font-weight:700!important}.single-product .tn-core-commerce .woocommerce-tabs ul.tabs li.active a{border-radius:999px;color:#fff!important;background:#191919}
.single-product .tn-core-commerce .woocommerce-tabs .panel{padding:32px!important;color:#4f4945;line-height:1.8}
.single-product .tn-core-commerce .woocommerce-tabs .panel>h2:first-child{margin-top:0;font-size:26px}
.single-product .tn-core-commerce .related{margin-top:42px}.single-product .tn-core-commerce .related>h2{margin:0 0 20px;font-size:30px;letter-spacing:-.03em}

/* Product-page refinement: custom gallery, options, tabs and related cards. */
.single-product .tn-core-commerce div.product>.onsale{position:absolute!important;z-index:4;top:12px!important;left:12px!important}
.single-product .tn-core-commerce .tn-core-product-gallery{align-self:start;padding:18px;overflow:hidden;border:1px solid var(--tn-line);border-radius:24px;background:#fff}
.single-product .tn-core-commerce .tn-core-product-gallery__main{display:grid;place-items:center;min-height:0;border:0;border-radius:16px;background:#f7f7f7}
.single-product .tn-core-commerce .tn-core-product-gallery__main img{width:100%;height:auto;max-height:540px;aspect-ratio:4/3;object-fit:contain}
.single-product .tn-core-commerce div.product .summary{min-width:0}
.single-product .tn-core-commerce div.product .summary .price .woocommerce-Price-amount{white-space:nowrap}
.single-product .tn-core-commerce div.product form.cart{align-items:end}
.single-product .tn-core-commerce div.product form.cart table.variations{flex:1 0 100%}
.single-product .tn-core-commerce div.product form.cart .reset_variations{display:inline-block;margin-top:7px;color:#746d67;font-size:12px}
.single-product .tn-core-commerce div.product .woocommerce-variation-add-to-cart{display:flex;width:100%;gap:10px;align-items:center}
.single-product .tn-core-commerce .woocommerce-tabs .panel>*:first-child{margin-top:0}
.single-product .tn-core-commerce .woocommerce-tabs .panel>*:last-child{margin-bottom:0}
.single-product .tn-core-commerce .woocommerce-Reviews{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:30px}
.single-product .tn-core-commerce .woocommerce-Reviews-title{grid-column:1/-1;margin:0;font-size:24px}
.single-product .tn-core-commerce .commentlist{margin:0!important;padding:0!important;list-style:none}
.single-product .tn-core-commerce .commentlist li{margin:0 0 14px!important;padding:18px!important;border:1px solid var(--tn-line);border-radius:14px;background:#fff}
.single-product .tn-core-commerce .commentlist img.avatar{width:46px!important;height:46px!important;border:0!important;border-radius:50%}
.single-product .tn-core-commerce .commentlist .comment-text{margin-left:62px!important;border:0!important;padding:0!important}
.single-product .tn-core-commerce #review_form_wrapper{padding:22px;border:1px solid var(--tn-line);border-radius:16px;background:#faf8f5}
.single-product .tn-core-commerce #review_form_wrapper .comment-reply-title{font-size:20px;font-weight:800}
.single-product .tn-core-commerce #review_form_wrapper textarea,.single-product .tn-core-commerce #review_form_wrapper input[type=text],.single-product .tn-core-commerce #review_form_wrapper input[type=email]{width:100%;padding:12px;border:1px solid var(--tn-line);border-radius:10px;background:#fff}
.single-product .tn-core-commerce #review_form_wrapper .submit{min-height:44px;padding:0 24px!important;border:0!important;border-radius:10px!important;color:#fff!important;background:var(--tn-orange)!important;font-weight:800!important}
.single-product .tn-core-commerce .related{padding-inline:48px}
.single-product .tn-core-commerce .related>h2{padding-inline:2px}
.single-product .tn-core-commerce .related ul.products{margin-top:0!important}
.single-product .tn-core-commerce .related ul.products li.product{min-width:0}
.single-product .tn-core-commerce .tn-core-related-nav{top:50%;border-color:#e5ddd7;color:#1a1715;font-size:26px;line-height:1}
.single-product .tn-core-commerce .tn-core-related-prev{left:0!important}
.single-product .tn-core-commerce .tn-core-related-next{right:0!important}
.single-product .tn-core-commerce .tn-core-related-nav:disabled{opacity:.3;cursor:default}

@media (max-width: 1280px) {
  .tn-core-nav { display: none; }
  .tn-core-menu-toggle { display: block; border-radius:11px; transition:background .2s ease; cursor:pointer; }
  .tn-core-menu-toggle:hover,.tn-core-menu-toggle:focus-visible { background:#fff2e9; outline:none; }
  .tn-core-drawer { position: fixed; top: 0; right: 0; bottom: 0; z-index: 1001; display: flex; width: min(92vw,420px); color:#201b18; border-left:1px solid rgba(62,42,28,.09); border-radius:24px 0 0 24px; background:#fbfaf8; box-shadow:-24px 0 70px rgba(27,18,12,.2); transform:translateX(105%); transition:transform .3s cubic-bezier(.22,.7,.25,1); overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; flex-direction:column; }
  .tn-core-drawer.is-open { transform: translateX(0); }
  .tn-core-drawer-backdrop { position: fixed; inset: 0; z-index: 1000; display: block; border: 0; background:rgba(20,13,9,.58); opacity: 0; pointer-events: none; transition: opacity .25s ease; backdrop-filter:blur(3px); }
  .tn-core-drawer-backdrop.is-open { opacity: 1; pointer-events: auto; }
  .tn-core-drawer__head { position:sticky; top:0; z-index:4; display:flex; min-height:76px; align-items:center; justify-content:space-between; gap:18px; padding:16px 18px 14px 22px; border-bottom:1px solid #eee7e1; background:rgba(251,250,248,.96); backdrop-filter:blur(12px); }
  .tn-core-drawer__brand { display:flex; min-width:0; align-items:center; }
  .tn-core-drawer__brand img { display:block; width:142px; height:auto; }
  .tn-core-drawer__close { position:relative; display:grid; width:40px; height:40px; flex:0 0 40px; place-items:center; padding:0; border:1px solid #e9e1da; border-radius:50%; color:#2c2520; background:#fff; box-shadow:0 5px 18px rgba(38,25,17,.07); cursor:pointer; }
  .tn-core-drawer__close span { position:relative; display:block; width:18px; height:18px; }
  .tn-core-drawer__close span::before,.tn-core-drawer__close span::after { position:absolute; top:8px; left:0; width:18px; height:2px; border-radius:3px; content:""; background:currentColor; }
  .tn-core-drawer__close span::before { transform:rotate(45deg); }
  .tn-core-drawer__close span::after { transform:rotate(-45deg); }
  .tn-core-drawer__close:hover,.tn-core-drawer__close:focus-visible { color:#fff; border-color:var(--tn-orange); background:var(--tn-orange); outline:none; }
  .tn-core-drawer__quick { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:16px 18px 0; }
  .tn-core-drawer__quick a { display:flex; min-width:0; min-height:42px; align-items:center; justify-content:center; gap:5px; padding:8px 5px; border:1px solid #eae3dc; border-radius:12px; color:#4c433d; background:#fff; font-size:12px; font-weight:750; text-align:center; }
  .tn-core-drawer__quick a:hover { color:var(--tn-orange); border-color:#f1c6aa; background:#fff7f2; }
  .tn-core-drawer__quick b { display:grid; min-width:18px; height:18px; place-items:center; border-radius:20px; color:#fff; background:var(--tn-orange); font-size:10px; }
  .tn-core-drawer__search { position:relative; display:flex; margin:12px 18px 0; overflow:hidden; border:1px solid #e5ddd6; border-radius:14px; background:#fff; box-shadow:0 8px 24px rgba(39,25,17,.045); }
  .tn-core-drawer__search input[type=search] { width:100%; min-width:0; height:50px; padding:0 82px 0 16px; border:0; color:#241f1b; background:transparent; font-size:15px; outline:none; }
  .tn-core-drawer__search input[type=search]::placeholder { color:#9a918a; }
  .tn-core-drawer__search button { position:absolute; top:5px; right:5px; bottom:5px; min-width:66px; padding:0 14px; border:0; border-radius:10px; color:#fff; background:var(--tn-orange); font-size:13px; font-weight:800; cursor:pointer; }
  .tn-core-drawer__label { margin:22px 22px 8px; color:var(--tn-orange); font-size:11px; font-weight:850; letter-spacing:.16em; }
  .tn-core-drawer__nav { padding:0 18px 30px; }
  .tn-core-mobile-menu,.tn-core-mobile-menu ul { margin: 0; padding: 0; list-style: none; }
  .tn-core-mobile-menu>li { position:relative; border-bottom:1px solid #eae4df; }
  .tn-core-mobile-menu>li>a { display:block; padding:16px 50px 16px 4px; color:#201b18; font-size:17px; font-weight:800; line-height:1.35; }
  .tn-core-mobile-menu>li.current-menu-item>a,.tn-core-mobile-menu>li.current-menu-ancestor>a { color:var(--tn-orange); }
  .tn-core-submenu-toggle { position:absolute; top:9px; right:0; display:grid; width:38px; height:38px; place-items:center; padding:0; border:1px solid #e8e0da; border-radius:11px; color:#4d4540; background:#fff; cursor:pointer; transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease; }
  .tn-core-submenu-toggle span { width:8px; height:8px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-2px) rotate(45deg); transition:transform .2s ease; }
  .tn-core-mobile-menu li.is-expanded>.tn-core-submenu-toggle { color:#fff; border-color:var(--tn-orange); background:var(--tn-orange); }
  .tn-core-mobile-menu li.is-expanded>.tn-core-submenu-toggle span { transform:translateY(2px) rotate(225deg); }
  .tn-core-mobile-menu .sub-menu { margin:0 0 13px!important; padding:9px!important; border:1px solid #eee4dc; border-radius:14px; background:#fff6f0; box-shadow:inset 0 1px 0 rgba(255,255,255,.8); animation:tnCoreSubmenuIn .18s ease; }
  .tn-core-mobile-menu .sub-menu[hidden] { display:none!important; }
  .tn-core-mobile-menu .sub-menu li+li { border-top:1px solid rgba(228,203,186,.55); }
  .tn-core-mobile-menu .sub-menu a { display:block; padding:11px 12px; border-radius:9px; color:#5f554e; font-size:14px; font-weight:650; line-height:1.4; }
  .tn-core-mobile-menu .sub-menu a::before { display:inline-block; width:4px; height:4px; margin:0 9px 3px 0; border-radius:50%; content:""; background:#e9a477; }
  .tn-core-mobile-menu .sub-menu a:hover,.tn-core-mobile-menu .sub-menu a:focus-visible { color:#d84e08; background:#fff; outline:none; }
  @keyframes tnCoreSubmenuIn { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:translateY(0); } }
  body.tn-core-menu-open { overflow: hidden; }
  .tn-core-categories { grid-template-columns: repeat(5,minmax(0,1fr)); }.tn-core-products .products{grid-template-columns:repeat(3,minmax(0,1fr));}
  .tn-core-commerce ul.products,.tn-core-page-catalog ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .tn-core-magazine-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tn-core-post-hero__inner{grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:34px}
  .tn-core-post-hero h1{font-size:clamp(34px,4.5vw,48px)}
  .tn-core-post-card{padding:46px 50px}
  .single-product .tn-core-commerce div.product { grid-template-columns:1fr; gap:24px; }
  .tn-core-service{grid-template-columns:1fr;padding:34px}.tn-core-magazine{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tn-core-youtube__card{flex-basis:calc((100% - 20px)/2)}
  .tn-core-subhero{min-height:200px}.tn-core-subhero__inner{padding-block:36px}
}

/* Tablet header: keep every primary menu visible and wrap it below the logo. */
@media (min-width: 768px) and (max-width: 1280px) {
  .tn-core-header__row {
    display: grid;
    min-height: 0;
    grid-template-columns: auto minmax(0,1fr);
    gap: 8px 22px;
    padding: 12px 0 9px;
  }
  .tn-core-logo {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
  }
  .tn-core-logo img { width: 172px; }
  .tn-core-menu-toggle { display: none !important; }
  .tn-core-nav {
    display: block !important;
    width: 100%;
    margin: 0;
    grid-column: 1 / -1;
    grid-row: 2;
  }
  .tn-core-menu {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 2px 20px;
    flex-wrap: wrap;
  }
  .tn-core-menu > li > a {
    padding: 6px 0;
    font-size: 14px;
    line-height: 1.35;
  }
  .tn-core-drawer,
  .tn-core-drawer-backdrop { display: none !important; }
  body.tn-core-menu-open { overflow: auto; }
}

/* Cart: compact checkout-ready layout shared by the empty and populated states. */
.woocommerce-cart .tn-core-entry{padding-top:42px;padding-bottom:64px}
.woocommerce-cart .tn-core-entry>.woocommerce{max-width:1180px;margin:0 auto}
.woocommerce-cart .cart-empty{margin:0;padding:34px 24px!important;border:1px solid var(--tn-line)!important;border-radius:22px!important;color:#554d48!important;background:#fffaf6!important;text-align:center}
.woocommerce-cart .cart-empty::before{display:none!important}
.woocommerce-cart .return-to-shop{margin:18px 0 0!important;text-align:center}
.woocommerce-cart .return-to-shop .button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:0 22px!important;border-radius:12px!important;color:#fff!important;background:var(--tn-orange)!important;font-weight:800!important}
.woocommerce-cart .woocommerce-cart-form{overflow:hidden;border:1px solid var(--tn-line);border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(43,30,20,.05)}
.woocommerce-cart table.shop_table{width:100%;margin:0!important;border:0!important;border-collapse:separate;border-spacing:0}
.woocommerce-cart table.shop_table thead{background:#faf7f4}
.woocommerce-cart table.shop_table th{padding:16px 14px!important;border:0!important;color:#81776f;font-size:13px;font-weight:800}
.woocommerce-cart table.shop_table td{padding:18px 14px!important;border:0!important;border-top:1px solid #f0ebe6!important;vertical-align:middle}
.woocommerce-cart .product-remove a.remove{display:grid!important;width:30px!important;height:30px!important;place-items:center;border:1px solid #eddad0!important;border-radius:50%!important;color:#a35f45!important;font-size:20px!important;line-height:1!important}
.woocommerce-cart .product-remove a.remove:hover{color:#fff!important;background:#d9532c!important}
.woocommerce-cart .product-thumbnail img{display:block!important;width:88px!important;height:88px!important;max-width:none!important;border:1px solid #f0ebe6;border-radius:12px;object-fit:contain}
.woocommerce-cart .product-name a{color:#211d1a;font-size:16px;font-weight:800;line-height:1.45;text-decoration:none}
.woocommerce-cart .product-name .variation{margin:8px 0 0;color:#807770;font-size:12px}
.woocommerce-cart .product-name .variation dd{margin:0}
.woocommerce-cart .product-price,.woocommerce-cart .product-subtotal{color:#342c27;font-size:15px;font-weight:750;white-space:nowrap}
.woocommerce-cart .quantity .qty{width:78px;min-height:42px;padding:7px;border:1px solid var(--tn-line);border-radius:10px;text-align:center}
.woocommerce-cart .actions{padding:14px!important;background:#fcfaf8}
.woocommerce-cart .actions .coupon{display:flex;gap:8px;align-items:center}
.woocommerce-cart .actions .coupon .input-text{width:180px;min-height:42px;margin:0!important;padding:8px 12px;border:1px solid var(--tn-line);border-radius:10px}
.woocommerce-cart .actions button,.woocommerce-cart .actions .button{min-height:42px;padding:0 15px!important;border:0!important;border-radius:10px!important;color:#fff!important;background:#342d28!important;font-weight:750!important}
.woocommerce-cart .actions button[name=update_cart]{background:var(--tn-orange)!important}
.woocommerce-cart .cart-collaterals{display:grid;justify-content:end;margin-top:24px}
.woocommerce-cart .cart-collaterals .cart_totals{width:min(100%,430px)!important;margin:0!important;padding:25px;border:1px solid var(--tn-line);border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(43,30,20,.05)}
.woocommerce-cart .cart_totals h2{margin:0 0 16px;font-size:24px;letter-spacing:-.03em}
.woocommerce-cart .cart_totals table{margin:0!important;border:0!important}
.woocommerce-cart .cart_totals th,.woocommerce-cart .cart_totals td{padding:13px 0!important;border:0!important;border-top:1px solid #f0ebe6!important}
.woocommerce-cart .wc-proceed-to-checkout{margin:18px 0 0!important;padding:0!important}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{display:flex!important;min-height:54px;align-items:center;justify-content:center;margin:0!important;border-radius:12px!important;color:#fff!important;background:var(--tn-orange)!important;font-size:16px!important;font-weight:850!important}

/* A product detail must never reserve desktop grid widths on a phone. */
@media (max-width:767px){
  .single-product,.single-product .tn-core-main{overflow-x:hidden}
  .single-product .tn-core-shell,.single-product .tn-core-commerce,.single-product .tn-core-commerce div.product,.single-product .tn-core-commerce div.product>*{min-width:0;max-width:100%;box-sizing:border-box}
  .single-product .tn-core-commerce div.product{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;gap:18px!important}
  .single-product .tn-core-commerce .tn-core-product-gallery,.single-product .tn-core-commerce div.product .summary,.single-product .tn-core-commerce .woocommerce-tabs,.single-product .tn-core-commerce .related{width:100%!important;max-width:100%!important;grid-column:1!important}
  .single-product .tn-core-commerce .tn-core-product-gallery{padding:8px!important}
  .single-product .tn-core-commerce .tn-core-product-gallery__main img{max-width:100%!important}
  .single-product .tn-core-commerce div.product .summary{padding:16px!important}
  .single-product .tn-core-commerce div.product .product_title{overflow-wrap:anywhere}
  .single-product .tn-core-commerce div.product form.cart{display:block!important;width:100%!important;margin:16px 0!important;padding:12px!important;overflow:hidden}
  .single-product .tn-core-commerce div.product form.cart table.variations{display:table!important;width:100%!important;max-width:100%!important;table-layout:fixed}
  .single-product .tn-core-commerce div.product form.cart table.variations th,.single-product .tn-core-commerce div.product form.cart table.variations td{max-width:100%!important;overflow-wrap:anywhere}
  .single-product .tn-core-commerce div.product .woocommerce-variation-add-to-cart{display:grid!important;width:100%!important;grid-template-columns:76px minmax(0,1fr);gap:8px!important;align-items:stretch!important}
  .single-product .tn-core-commerce div.product form.cart .quantity{width:76px!important;min-width:0!important;margin:0!important}
  .single-product .tn-core-commerce div.product form.cart .quantity .qty{width:100%!important;max-width:100%!important}
  .single-product .tn-core-commerce div.product form.cart .single_add_to_cart_button{width:100%!important;min-width:0!important;margin:0!important}
  .single-product .tn-core-commerce div.product form.cart .tn-core-buy-now{grid-column:1/-1;width:100%!important;min-width:0!important;margin:0!important}
  .single-product .tn-core-commerce .woocommerce-tabs{overflow:hidden!important}
  .single-product .tn-core-commerce .woocommerce-tabs ul.tabs{display:flex!important;max-width:100%!important;padding:10px!important;overflow-x:auto!important;flex-wrap:nowrap!important;justify-content:flex-start!important}
  .single-product .tn-core-commerce .woocommerce-tabs .panel{max-width:100%!important;padding:16px!important;overflow:hidden}
  .single-product .tn-core-commerce .woocommerce-tabs .panel table{display:block;max-width:100%;overflow-x:auto}
  .single-product .tn-core-commerce .related{padding:0!important;overflow:visible!important}
  .single-product .tn-core-commerce .related>h2{padding:0 2px!important}
  .single-product .tn-core-commerce .related ul.products{width:100%!important;margin:0!important;padding:0!important;gap:14px!important;overflow-x:auto!important}
  .single-product .tn-core-commerce .related ul.products li.product{flex:0 0 calc(100% - 38px)!important;max-width:calc(100% - 38px)!important}
  .single-product .tn-core-commerce .related .tn-core-related-nav{top:56%!important;width:36px!important;height:36px!important}
  .single-product .tn-core-commerce .related .tn-core-related-prev{left:-8px!important}
  .single-product .tn-core-commerce .related .tn-core-related-next{right:-8px!important}
  .woocommerce-cart .tn-core-entry{padding-top:24px;padding-bottom:40px}
  .woocommerce-cart .woocommerce-cart-form{border-radius:16px}
  .woocommerce-cart table.shop_table,.woocommerce-cart table.shop_table tbody{display:block;width:100%}
  .woocommerce-cart table.shop_table thead{display:none}
  .woocommerce-cart table.shop_table tr.woocommerce-cart-form__cart-item{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) 30px;gap:0 12px;padding:14px;border-top:1px solid #f0ebe6}
  .woocommerce-cart table.shop_table tr.woocommerce-cart-form__cart-item:first-child{border-top:0}
  .woocommerce-cart table.shop_table tr.woocommerce-cart-form__cart-item td{display:block;min-width:0;padding:0!important;border:0!important}
  .woocommerce-cart table.shop_table .product-thumbnail{grid-row:1/5;grid-column:1}
  .woocommerce-cart .product-thumbnail img{width:72px!important;height:72px!important}
  .woocommerce-cart table.shop_table .product-name{grid-column:2;padding-right:4px!important}
  .woocommerce-cart table.shop_table .product-remove{grid-column:3;grid-row:1;justify-self:end}
  .woocommerce-cart table.shop_table .product-price,.woocommerce-cart table.shop_table .product-quantity,.woocommerce-cart table.shop_table .product-subtotal{grid-column:2;margin-top:8px;font-size:14px}
  .woocommerce-cart table.shop_table .product-subtotal{color:var(--tn-orange);font-weight:850}
  .woocommerce-cart table.shop_table .product-price::before,.woocommerce-cart table.shop_table .product-quantity::before,.woocommerce-cart table.shop_table .product-subtotal::before{display:inline;margin-right:6px;color:#8c817a;font-size:12px;font-weight:600}
  .woocommerce-cart table.shop_table .product-price::before{content:'가격'}
  .woocommerce-cart table.shop_table .product-quantity::before{content:'수량'}
  .woocommerce-cart table.shop_table .product-subtotal::before{content:'합계'}
  .woocommerce-cart table.shop_table tr.woocommerce-cart-form__cart-item+tr:not(.woocommerce-cart-form__cart-item){display:block;padding:12px}
  .woocommerce-cart .actions{display:block!important;padding:12px!important}
  .woocommerce-cart .actions .coupon{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;margin-bottom:10px}
  .woocommerce-cart .actions .coupon .input-text{width:100%!important;min-width:0}
  .woocommerce-cart .actions button[name=update_cart]{width:100%}
  .woocommerce-cart .cart-collaterals{display:block;margin-top:16px}
  .woocommerce-cart .cart-collaterals .cart_totals{width:100%!important;padding:20px;border-radius:16px}
}

@media (min-width: 768px) and (max-width: 900px) {
  .tn-core-categories { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .tn-core-categories a:nth-last-child(2) { grid-column:2; }
  .tn-core-categories a:last-child { grid-column:3; }
}

@media (max-width: 767px) {
  .tn-core-shell { width: min(100% - 30px, 1240px); }
  .tn-core-subhero{min-height:158px}.tn-core-subhero::before{background-position:center}.tn-core-subhero__inner{padding-block:25px}.tn-core-subhero h1{margin-top:12px;font-size:28px}.tn-core-breadcrumb{max-width:calc(100vw - 30px);gap:7px;padding:8px 12px;font-size:12px}
  .tn-core-header__row { min-height: 62px; }
  .tn-core-logo img { width: 145px; }
  .tn-core-topbar .tn-core-shell { justify-content: flex-end; }.tn-core-topbar span { display: none; }.tn-core-topbar nav { gap: 14px; }
  .tn-core-home { padding-top: 0; }
  .tn-core-hero { width:calc(100% - 30px); margin:0 auto 22px; overflow:visible; }
  .tn-core-hero__viewport { width:100%; height:47vw; min-height:0; max-height:360px; aspect-ratio:auto; overflow:hidden; border-radius:18px; background:linear-gradient(180deg,#fbfaf9 0%,#f5f1ee 100%); box-shadow:0 10px 26px rgba(38,28,20,.07); }
  .tn-core-hero__slide { width:88%; border-radius:14px; box-shadow:0 12px 28px rgba(42,28,20,.10); }
  .tn-core-hero__slide.is-active { left:50%; width:88%; opacity:1; filter:none; transform:translate(-50%,-50%) scale(1); }
  .tn-core-hero__slide.is-prev { left:0; width:76%; opacity:.28; filter:saturate(.62) brightness(1.08); transform:translate(-87%,-50%) scale(.9); pointer-events:auto; }
  .tn-core-hero__slide.is-next { left:100%; width:76%; opacity:.28; filter:saturate(.62) brightness(1.08); transform:translate(-13%,-50%) scale(.9); pointer-events:auto; }
  .tn-core-hero img { display:block; width:100%; height:auto; aspect-ratio:2 / 1; object-fit:contain; border-radius:inherit; background:#fff; }
  .tn-core-hero__prev,.tn-core-hero__next { width:34px; height:34px; border-color:rgba(25,25,25,.06); background:rgba(255,255,255,.88); font-size:25px; box-shadow:0 6px 18px rgba(20,15,10,.11); }
  .tn-core-hero__prev { left:4px; }.tn-core-hero__next { right:4px; }
  .tn-core-hero__dots { bottom:7px; }
  .tn-core-search { margin-bottom: 36px; }
  .tn-core-search form { border-radius: 12px; }.tn-core-search input { padding: 14px; }.tn-core-search button { padding: 0 18px; }
  .tn-core-section { margin-bottom: 44px; }.tn-core-section__head { align-items: flex-start; flex-direction: column; gap: 10px; }.tn-core-section__head h1,.tn-core-section__head h2 { font-size: 28px; }
  .tn-core-categories { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px 8px; }
  .tn-core-categories a { display:flex; width:100%; min-width:0; max-width:100%; padding:0; border:0; border-radius:0; align-items:center; flex-direction:column; gap:7px; text-align:center; }
  .tn-core-categories img { display:block; width:68px; height:68px; max-width:100%; aspect-ratio:1; border:1px solid var(--tn-line); border-radius:50%; object-fit:contain; }
  .tn-core-categories strong { display:flex; box-sizing:border-box; width:100%; min-width:0; min-height:2.7em; align-items:flex-start; justify-content:center; padding:0 2px; font-size:12px; line-height:1.35; text-align:center; white-space:normal; word-break:keep-all; overflow-wrap:anywhere; }
  .tn-core-categories small { display:none; }
  .tn-core-categories a:nth-last-child(2) { grid-column:2; }
  .tn-core-categories a:last-child { grid-column:3; }
  .tn-core-products .products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }.tn-core-products .products .woocommerce-loop-product__title { font-size:14px; }.tn-core-products .products .price { font-size:14px; }
  .tn-core-commerce { padding-block:24px; }
  .tn-core-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:10px; }
  .tn-core-filter-grid a { min-width:0; padding:9px; font-size:13px; }
  .tn-core-commerce ul.products,.tn-core-page-catalog ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px!important; }
  .tn-core-magazine-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tn-core-magazine-archive small,.tn-core-magazine-archive h2,.tn-core-magazine-archive p{margin-left:10px;margin-right:10px}.tn-core-magazine-archive h2{font-size:15px}.tn-core-magazine-archive p{display:none}
  .tn-core-post-page{background:linear-gradient(180deg,#fff8f1 0,#faf8f6 320px,#fff 620px)}
  .tn-core-post-hero{padding:30px 0 48px}
  .tn-core-post-hero::after{right:-25px;bottom:-35px;font-size:74px}
  .tn-core-post-hero__inner{grid-template-columns:1fr;gap:24px}
  .tn-core-post-breadcrumb{margin-bottom:20px}
  .tn-core-post-kicker{margin-bottom:12px;font-size:11px}
  .tn-core-post-hero h1{font-size:30px;line-height:1.3}
  .tn-core-post-meta{margin-top:18px}
  .tn-core-post-hero__image{border-width:5px;border-radius:20px;transform:none}
  .tn-core-post-hero__image img{aspect-ratio:1.55/1}
  .tn-core-post-layout{margin-top:-22px}
  .tn-core-post-card{padding:28px 20px;border-radius:20px}
  .tn-core-post__content{font-size:16px;line-height:1.8}
  .tn-core-post__content h2{margin-top:1.8em;font-size:23px}.tn-core-post__content h3{font-size:20px}
  .tn-core-post__content>div:first-child h2 a{padding:10px 14px;font-size:14px}
  .tn-core-post__content img{margin:22px auto;border-radius:14px}
  .tn-core-post__content blockquote{margin:22px 0;padding:18px}
  .tn-core-post-footer{align-items:flex-start;margin-top:36px;flex-direction:column}
  .tn-core-post-nav{grid-template-columns:1fr;gap:10px}.tn-core-post-nav a{min-height:94px;padding:17px 18px}.tn-core-post-nav__next{text-align:left}
  .tn-core-post-related{margin-top:48px}.tn-core-post-related>header{align-items:flex-start;flex-direction:column}.tn-core-post-related>header h2{font-size:27px}
  .tn-core-post-related__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tn-core-post-related__grid small{margin:11px 11px 5px;font-size:11px}.tn-core-post-related__grid strong{margin:0 11px 14px;font-size:14px;line-height:1.45}.tn-core-post-related__grid>a{border-radius:15px}
  .tn-core-commerce ul.products li.product,.tn-core-page-catalog ul.products li.product { padding:0 8px 12px; }
  .tn-core-commerce ul.products .woocommerce-loop-product__title,.tn-core-page-catalog ul.products .woocommerce-loop-product__title { min-height:44px; font-size:14px!important; }
  .tn-core-commerce ul.products .price,.tn-core-page-catalog ul.products .price { font-size:14px!important; }
  .tn-core-products ul.products,.tn-core-commerce ul.products,.tn-core-page-catalog ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px!important}
  .tn-core-products ul.products li.product,.tn-core-commerce ul.products li.product,.tn-core-page-catalog ul.products li.product{padding:0 8px 12px!important}
  .tn-core-products ul.products .woocommerce-loop-product__title,.tn-core-commerce ul.products .woocommerce-loop-product__title,.tn-core-page-catalog ul.products .woocommerce-loop-product__title{min-height:44px;font-size:14px!important}
  .tn-core-products ul.products .price,.tn-core-commerce ul.products .price,.tn-core-page-catalog ul.products .price{font-size:14px!important}
  .single-product .tn-core-commerce div.product .summary { padding:18px; border-radius:18px; }
  .single-product .tn-core-commerce{padding-top:20px}.single-product .tn-core-commerce div.product{gap:18px}.single-product .tn-core-commerce div.product .woocommerce-product-gallery{padding:10px;border-radius:18px}.single-product .tn-core-commerce div.product .summary{position:static;padding:18px;box-shadow:0 10px 30px rgba(36,25,18,.06)}.single-product .tn-core-commerce div.product .product_title{font-size:25px}.single-product .tn-core-commerce div.product .summary .price{margin:14px 0;font-size:22px}.single-product .tn-core-commerce div.product form.cart{padding:12px}.single-product .tn-core-commerce .woocommerce-tabs{margin-top:24px;border-radius:16px;box-shadow:none}.single-product .tn-core-commerce .woocommerce-tabs ul.tabs{justify-content:flex-start;padding:10px!important;overflow-x:auto}.single-product .tn-core-commerce .woocommerce-tabs ul.tabs li a{padding:8px 13px!important;white-space:nowrap}.single-product .tn-core-commerce .woocommerce-tabs .panel { padding:15px!important; }.single-product .tn-core-commerce .woocommerce-tabs .panel>h2:first-child{font-size:21px}.single-product .tn-core-commerce .related{margin-top:28px}.single-product .tn-core-commerce .related>h2{font-size:25px}
  .single-product .tn-core-commerce .related ul.products li.product{flex-basis:calc((100% - 20px)/2)}.tn-core-related-nav{top:50%}.tn-core-related-prev{left:4px}.tn-core-related-next{right:4px}
  .single-product .tn-core-commerce .tn-core-product-gallery{padding:8px;border-radius:16px}
  .single-product .tn-core-commerce .tn-core-product-gallery__main{border-radius:12px}
  .single-product .tn-core-commerce .tn-core-product-gallery__main img{max-height:340px;aspect-ratio:1.08/1}
  .single-product .tn-core-commerce div.product>.onsale{top:8px!important;left:8px!important}
  .single-product .tn-core-commerce div.product .summary{padding:16px}
  .single-product .tn-core-commerce div.product .product_title{margin-bottom:10px;font-size:23px;line-height:1.32}
  .single-product .tn-core-commerce div.product form.cart{gap:8px;margin:16px 0;padding:11px}
  .single-product .tn-core-commerce div.product .woocommerce-variation-add-to-cart{align-items:stretch}
  .single-product .tn-core-commerce div.product form.cart .quantity{flex:0 0 76px}
  .single-product .tn-core-commerce div.product form.cart .single_add_to_cart_button{min-width:0}
  .single-product .tn-core-commerce div.product form.cart .tn-core-buy-now{min-width:0;padding-inline:12px!important}
  .single-product .tn-core-commerce .woocommerce-Reviews{grid-template-columns:1fr;gap:18px}
  .single-product .tn-core-commerce #review_form_wrapper{padding:15px}
  .single-product .tn-core-commerce .woocommerce-tabs ul.tabs{justify-content:center;overflow:visible;flex-wrap:wrap}
  .single-product .tn-core-commerce .woocommerce-tabs .panel{padding:14px 12px!important}
  .single-product .tn-core-commerce .related{padding-inline:34px}
  .single-product .tn-core-commerce .related ul.products li.product{flex-basis:100%}
  .single-product .tn-core-commerce .related .tn-core-related-prev{left:0!important}
  .single-product .tn-core-commerce .related .tn-core-related-next{right:0!important}
  .tn-core-promos{grid-template-columns:1fr;gap:12px;margin-bottom:44px}.tn-core-service{gap:20px;padding:24px 18px;margin-bottom:36px}.tn-core-service__intro h2{font-size:30px}.tn-core-service__cards{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.tn-core-service__cards::-webkit-scrollbar{display:none}.tn-core-service__cards article{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;row-gap:5px;align-content:center;flex:0 0 88%;min-height:132px;padding:18px;scroll-snap-align:center}.tn-core-service__cards b{grid-column:1;grid-row:1 / span 2;align-self:start;width:48px;height:48px}.tn-core-service__cards h3{grid-column:2;grid-row:1;margin:2px 0 0;font-size:18px;line-height:1.35}.tn-core-service__cards p{grid-column:2;grid-row:2;font-size:14px;line-height:1.55}.tn-core-magazine{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tn-core-magazine a{display:block}.tn-core-magazine img{width:100%;height:auto;aspect-ratio:1.3/1}.tn-core-magazine small,.tn-core-magazine strong{display:block;padding:8px 8px 0}.tn-core-reviews{grid-template-columns:1fr;gap:16px}.tn-core-reviews>a{grid-template-columns:100px minmax(0,1fr)}.tn-core-reviews img{width:100px;height:100px}.tn-core-faq h2{font-size:28px}
  .tn-core-youtube__card{flex-basis:88%}.tn-core-youtube__prev,.tn-core-youtube__next{display:none}.tn-core-youtube__card strong,.tn-core-youtube__card small{margin-left:14px;margin-right:14px}
  .tn-core-footer { margin-top: 32px; padding: 34px 0 24px; }.tn-core-footer__brand img { width: 176px; }.tn-core-footer__brand h2 { font-size: 22px; }.tn-core-footer__notice { padding: 14px; font-size: 13px; }.tn-core-footer__bottom { flex-direction: column; }
}

/* Account and registration: preserve WooCommerce/MShop fields, replace only their presentation. */
.woocommerce-account:not(.logged-in) .tn-core-subhero,
body.page-id-155109 .tn-core-subhero{display:none}
.woocommerce-account:not(.logged-in) .tn-core-entry,
body.page-id-155109 .tn-core-entry{max-width:1320px;padding-top:56px;padding-bottom:76px}
.tn-core-auth{display:grid;grid-template-columns:minmax(360px,.88fr) minmax(520px,1.12fr);gap:28px;align-items:start}
.tn-core-auth__brand{position:relative;min-height:640px;overflow:hidden;border-radius:30px;color:#fff;background:linear-gradient(145deg,#181310 0%,#422215 52%,#ea5b12 150%);box-shadow:0 26px 68px rgba(42,23,13,.18)}
.tn-core-auth__brand::before,.tn-core-auth__brand::after{position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;content:'';pointer-events:none}
.tn-core-auth__brand::before{top:-130px;right:-150px;width:420px;height:420px;background:radial-gradient(circle at 35% 40%,rgba(255,153,80,.24),transparent 67%)}
.tn-core-auth__brand::after{right:-90px;bottom:-110px;width:310px;height:310px;background:rgba(255,255,255,.035)}
.tn-core-auth__brand-inner{position:relative;z-index:1;display:flex;min-height:640px;flex-direction:column;padding:54px 48px}
.tn-core-auth__eyebrow{margin-bottom:18px;color:#ff9a5f;font-size:12px;font-weight:900;letter-spacing:.18em}
.tn-core-auth__brand-logo{display:inline-flex;width:max-content;max-width:100%;align-items:center;margin-bottom:42px;padding:11px 15px;border-radius:12px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.tn-core-auth__brand-logo img{display:block;width:184px;max-width:100%;height:auto}
.tn-core-auth__brand h2{margin:0 0 19px;color:#fff;font-size:46px;font-weight:900;line-height:1.08;letter-spacing:-.055em}
.tn-core-auth__brand p{max-width:400px;margin:0;color:rgba(255,255,255,.73);font-size:16px;line-height:1.72}
.tn-core-auth__brand ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:42px 0 34px;padding:0;list-style:none}
.tn-core-auth__brand li{display:flex;min-width:0;min-height:96px;flex-direction:column;justify-content:center;padding:14px 10px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.055)}
.tn-core-auth__brand li strong{color:#fff;font-size:17px;font-weight:900}
.tn-core-auth__brand li span{margin-top:7px;color:rgba(255,255,255,.58);font-size:11px;line-height:1.35}
.tn-core-auth__brand small{margin-top:auto;color:rgba(255,255,255,.48);font-size:11px;letter-spacing:.04em}
.tn-core-auth__panel{overflow:hidden;border:1px solid var(--tn-line);border-radius:30px;background:#fff;box-shadow:0 24px 68px rgba(44,29,18,.1)}
.tn-core-auth__tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:12px;padding:6px;border-radius:16px;background:#f7f3ef}
.tn-core-auth__tabs a{display:flex;min-height:50px;align-items:center;justify-content:center;border-radius:12px;color:#82756c;font-size:15px;font-weight:850;transition:color .2s,background .2s,box-shadow .2s}
.tn-core-auth__tabs a:hover{color:#ea5b12}
.tn-core-auth__tabs a.is-active{color:#fff;background:#181411;box-shadow:0 7px 18px rgba(28,20,15,.16)}
.tn-core-auth__form{padding:22px 42px 42px}
.tn-core-auth__form>.woocommerce>h2,.tn-core-auth__form>h2{display:none}
.tn-core-auth .woocommerce-form-login,
.tn-core-auth form.ui.form{max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.tn-core-auth .woocommerce-form-login::before,
.tn-core-auth form.ui.form::before{margin-bottom:25px!important;font-size:27px!important}
.woocommerce-account .tn-core-entry{padding-top:48px;padding-bottom:68px}
.woocommerce-account .tn-core-entry>.woocommerce{max-width:620px;margin:0 auto}
.woocommerce-account .woocommerce-form-login{margin:0!important;padding:34px!important;border:1px solid var(--tn-line)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 18px 46px rgba(44,29,18,.08)}
.woocommerce-account .woocommerce-form-login::before{display:block;margin-bottom:22px;color:#201b18;content:'환영합니다';font-size:25px;font-weight:850;letter-spacing:-.04em}
.woocommerce-account .woocommerce-form-login .form-row{margin:0 0 17px!important;padding:0!important}
.woocommerce-account .woocommerce-form-login label{display:block;margin-bottom:8px;color:#554d48;font-size:14px;font-weight:750}
.woocommerce-account .woocommerce-form-login input.input-text{width:100%!important;min-height:50px;padding:10px 14px;border:1px solid #e4ddd7!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__submit{min-height:50px;margin:0 14px 0 0!important;padding:0 24px!important;border:0!important;border-radius:12px!important;color:#fff!important;background:var(--tn-orange)!important;font-weight:850!important}
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:7px;color:#766d67;font-size:13px}
.woocommerce-account .woocommerce-form-login .lost_password{margin:18px 0 0!important;padding-top:17px!important;border-top:1px solid #f0ebe7}
.woocommerce-account .woocommerce-form-login .lost_password a{color:#766d67;font-size:13px;text-decoration:underline;text-underline-offset:3px}
body.page-id-155109 .tn-core-entry{padding-top:48px;padding-bottom:68px}
body.page-id-155109 form.ui.form{max-width:620px;margin:0 auto!important;padding:34px!important;border:1px solid var(--tn-line)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 18px 46px rgba(44,29,18,.08)}
body.page-id-155109 form.ui.form::before{display:block;margin-bottom:22px;color:#201b18;content:'회원 정보 입력';font-size:25px;font-weight:850;letter-spacing:-.04em}
body.page-id-155109 form.ui.form .field{margin:0 0 17px!important;padding:0!important}
body.page-id-155109 form.ui.form .field>label{display:block!important;margin:0 0 8px!important;color:#554d48!important;font-size:14px!important;font-weight:750!important}
body.page-id-155109 form.ui.form input:not([type=hidden]),body.page-id-155109 form.ui.form select{width:100%!important;min-height:50px!important;padding:10px 14px!important;border:1px solid #e4ddd7!important;border-radius:12px!important;color:#2b2521!important;background:#fff!important;box-shadow:none!important;font:inherit!important}
body.page-id-155109 form.ui.form .phone-field{display:grid!important;grid-template-columns:100px minmax(0,1fr) minmax(0,1fr);gap:8px}
body.page-id-155109 form.ui.form .phone-field>label{grid-column:1/-1}
body.page-id-155109 form.ui.form .phone-field .phone-part{min-width:0!important}
body.page-id-155109 form.ui.form .submit.ui.button{display:flex!important;width:100%!important;min-height:52px;align-items:center;justify-content:center;margin:8px 0 0!important;border:0!important;border-radius:12px!important;color:#fff!important;background:var(--tn-orange)!important;font-size:16px!important;font-weight:850!important}
body.page-id-155109 form.ui.form .submit.ui.button i{display:none!important}
body.page-id-155109 form.ui.form .ui.error.message{margin:0 0 14px!important;border-radius:12px!important}

@media (max-width:767px){
  .tn-core-hero__viewport{height:47vw!important;max-height:360px!important;border-radius:18px!important}
  .tn-core-hero__slide,.tn-core-hero__slide.is-active{width:94%!important}
  .tn-core-hero__slide.is-prev,.tn-core-hero__slide.is-next{width:66%!important;opacity:.22!important}
  .tn-core-hero__slide.is-prev{transform:translate(-96%,-50%) scale(.89)!important}
  .tn-core-hero__slide.is-next{transform:translate(-4%,-50%) scale(.89)!important}
  .woocommerce-account .tn-core-entry,body.page-id-155109 .tn-core-entry{padding-top:28px;padding-bottom:42px}
  .woocommerce-account .woocommerce-form-login,body.page-id-155109 form.ui.form{padding:23px 18px!important;border-radius:18px!important}
  .woocommerce-account .woocommerce-form-login::before,body.page-id-155109 form.ui.form::before{margin-bottom:18px;font-size:22px}
  .woocommerce-account .woocommerce-form-login input.input-text,body.page-id-155109 form.ui.form input:not([type=hidden]),body.page-id-155109 form.ui.form select{min-height:48px!important}
  .woocommerce-account:not(.logged-in) .tn-core-entry,body.page-id-155109 .tn-core-entry{padding:18px 15px 42px}
  .tn-core-auth{grid-template-columns:1fr;gap:14px}
  .tn-core-auth__brand{min-height:0;border-radius:22px}
  .tn-core-auth__brand-inner{min-height:0;padding:27px 24px 25px}
  .tn-core-auth__eyebrow{margin-bottom:11px;font-size:10px}
  .tn-core-auth__brand-logo{margin-bottom:21px;padding:8px 10px}
  .tn-core-auth__brand-logo img{width:145px}
  .tn-core-auth__brand h2{margin-bottom:10px;font-size:32px}
  .tn-core-auth__brand p{font-size:13px;line-height:1.55}
  .tn-core-auth__brand ul{gap:6px;margin:21px 0 0}
  .tn-core-auth__brand li{min-height:72px;padding:10px 7px;border-radius:12px}
  .tn-core-auth__brand li strong{font-size:14px}
  .tn-core-auth__brand li span{margin-top:4px;font-size:9px}
  .tn-core-auth__brand small{display:none}
  .tn-core-auth__panel{border-radius:22px}
  .tn-core-auth__tabs{margin:9px}
  .tn-core-auth__tabs a{min-height:46px;font-size:14px}
  .tn-core-auth__form{padding:19px 18px 26px}
  .tn-core-auth .woocommerce-form-login,
  .tn-core-auth form.ui.form{padding:0!important}
  .tn-core-auth .woocommerce-form-login::before,
  .tn-core-auth form.ui.form::before{margin-bottom:18px!important;font-size:22px!important}
}

/* Unified member gateway: one joined card with a calmer form hierarchy. */
.tn-core-auth{
  gap:0;
  align-items:stretch;
  overflow:hidden;
  border:1px solid #eadfd7;
  border-radius:30px;
  background:#fff;
  box-shadow:0 28px 72px rgba(52,31,20,.12);
}
.tn-core-auth__brand{
  min-height:620px;
  border-radius:0;
  box-shadow:none;
}
.tn-core-auth__brand-inner{min-height:620px}
.tn-core-auth__panel{
  display:flex;
  min-width:0;
  flex-direction:column;
  border:0;
  border-radius:0;
  background:linear-gradient(180deg,#fff 0%,#fdfaf7 100%);
  box-shadow:none;
}
.tn-core-auth__tabs{
  gap:4px;
  margin:24px 30px 0;
  padding:5px;
  border:1px solid #eadfd7;
  border-radius:15px;
  background:#f7f1ec;
}
.tn-core-auth__tabs a{
  min-height:48px;
  border-radius:10px;
  color:#796d65;
  font-size:15px;
  font-weight:800;
}
.tn-core-auth__tabs a.is-active{
  color:#fff;
  background:linear-gradient(135deg,#f36a1b,#df4d05);
  box-shadow:0 8px 20px rgba(234,91,18,.22);
}
.tn-core-auth__form{
  display:flex;
  flex:1;
  align-items:center;
  padding:34px 58px 46px;
}
.tn-core-auth__form>.woocommerce,
.tn-core-auth__form>form{width:100%}
.woocommerce-account .tn-core-auth .woocommerce-form-login,
body.page-id-155109 .tn-core-auth form.ui.form{
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.woocommerce-account .tn-core-auth .woocommerce-form-login::before,
body.page-id-155109 .tn-core-auth form.ui.form::before{
  margin-bottom:28px!important;
  color:#201b18;
  font-size:30px!important;
  font-weight:900;
  letter-spacing:-.045em;
}
.woocommerce-account .tn-core-auth .woocommerce-form-login .form-row,
body.page-id-155109 .tn-core-auth form.ui.form .field{margin-bottom:19px!important}
.woocommerce-account .tn-core-auth .woocommerce-form-login label,
body.page-id-155109 .tn-core-auth form.ui.form .field>label{
  color:#4f4640!important;
  font-size:13px!important;
  font-weight:800!important;
}
.woocommerce-account .tn-core-auth .woocommerce-form-login input.input-text,
body.page-id-155109 .tn-core-auth form.ui.form input:not([type=hidden]),
body.page-id-155109 .tn-core-auth form.ui.form select{
  min-height:54px!important;
  border:1px solid #dfd3cb!important;
  border-radius:11px!important;
  background:#fff!important;
  transition:border-color .2s,box-shadow .2s;
}
.woocommerce-account .tn-core-auth .woocommerce-form-login input.input-text:focus,
body.page-id-155109 .tn-core-auth form.ui.form input:not([type=hidden]):focus,
body.page-id-155109 .tn-core-auth form.ui.form select:focus{
  border-color:#ed7a3e!important;
  outline:0!important;
  box-shadow:0 0 0 4px rgba(234,91,18,.1)!important;
}
.woocommerce-account .tn-core-auth .woocommerce-form-login .woocommerce-form-login__submit,
body.page-id-155109 .tn-core-auth form.ui.form .submit.ui.button{
  width:100%!important;
  min-height:52px!important;
  margin:6px 0 0!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,#f36a1b,#df4d05)!important;
  box-shadow:0 10px 22px rgba(234,91,18,.2)!important;
}
.woocommerce-account .tn-core-auth .woocommerce-form-login .woocommerce-form-login__rememberme{
  display:flex!important;
  width:max-content;
  align-items:center;
  margin-top:14px;
}
.woocommerce-account .tn-core-auth .woocommerce-form-login .lost_password{
  margin-top:22px!important;
  padding-top:19px!important;
}

/* Tablet portrait/account forms: avoid the desktop two-column minimum widths
   clipping the registration form around 768-1024px. */
@media (min-width:768px) and (max-width:1024px){
  .woocommerce-account:not(.logged-in) .tn-core-entry,
  body.page-id-155109 .tn-core-entry{
    width:100%;
    max-width:860px;
    padding:30px 24px 58px;
    overflow:visible;
  }
  .tn-core-auth{
    width:100%;
    grid-template-columns:minmax(0,1fr);
    gap:0;
    overflow:hidden;
    border-radius:26px;
  }
  .tn-core-auth__brand{
    min-width:0;
    min-height:0;
  }
  .tn-core-auth__brand-inner{
    min-height:0;
    padding:34px 38px 32px;
  }
  .tn-core-auth__brand-logo{margin-bottom:22px}
  .tn-core-auth__brand h2{
    max-width:520px;
    margin-bottom:12px;
    font-size:38px;
  }
  .tn-core-auth__brand p{max-width:620px}
  .tn-core-auth__brand ul{
    max-width:660px;
    margin:24px 0 0;
  }
  .tn-core-auth__brand small{display:none}
  .tn-core-auth__panel{
    width:100%;
    min-width:0;
  }
  .tn-core-auth__tabs{
    width:auto;
    margin:18px 24px 0;
  }
  .tn-core-auth__form{
    width:100%;
    min-width:0;
    justify-content:center;
    padding:30px 38px 40px;
  }
  .tn-core-auth__form>.woocommerce,
  .tn-core-auth__form>.memberswrap,
  .tn-core-auth__form>form{
    width:100%!important;
    max-width:680px!important;
    min-width:0!important;
    margin-inline:auto!important;
  }
  body.page-id-155109 .tn-core-auth form.ui.form .field,
  body.page-id-155109 .tn-core-auth form.ui.form input,
  body.page-id-155109 .tn-core-auth form.ui.form select{
    max-width:100%!important;
    min-width:0!important;
  }
}

@media (max-width:767px){
  .tn-core-auth{
    gap:0;
    border-radius:22px;
  }
  .tn-core-auth__brand{
    min-height:0;
    border-radius:0;
  }
  .tn-core-auth__brand-inner{
    min-height:0;
    padding:24px 22px 22px;
  }
  .tn-core-auth__eyebrow{
    margin-bottom:10px;
    font-size:10px;
    letter-spacing:.16em;
  }
  .tn-core-auth__brand-logo{
    margin-bottom:17px;
    padding:8px 11px;
    border-radius:10px;
  }
  .tn-core-auth__brand-logo img{width:148px}
  .tn-core-auth__brand h2{
    margin:0 0 10px;
    font-size:0;
    line-height:1.2;
    white-space:nowrap;
  }
  .tn-core-auth__brand h2::before{
    content:"건강 쇼핑을 더 편리하게.";
    color:#fff;
    font-size:clamp(19px,5.2vw,22px);
    font-weight:900;
    letter-spacing:-.045em;
    white-space:nowrap;
  }
  .tn-core-auth__brand p{
    max-width:none;
    font-size:13px;
    line-height:1.55;
  }
  .tn-core-auth__brand ul{
    gap:7px;
    margin:18px 0 0;
  }
  .tn-core-auth__brand li{
    min-height:66px;
    padding:8px 7px;
    border-radius:12px;
  }
  .tn-core-auth__brand li strong{font-size:15px}
  .tn-core-auth__brand li span{
    margin-top:4px;
    font-size:10px;
    line-height:1.25;
  }
  .tn-core-auth__brand small{display:none}
  .tn-core-auth__tabs{margin:12px 14px 0}
  .tn-core-auth__form{padding:25px 20px 30px}
  .woocommerce-account .tn-core-auth .woocommerce-form-login::before,
  body.page-id-155109 .tn-core-auth form.ui.form::before{
    margin-bottom:21px!important;
    font-size:24px!important;
  }
  .woocommerce-account .tn-core-auth .woocommerce-form-login input.input-text,
  body.page-id-155109 .tn-core-auth form.ui.form input:not([type=hidden]),
  body.page-id-155109 .tn-core-auth form.ui.form select{min-height:50px!important}
}

@media (max-width:359px){
  .tn-core-auth__brand-inner{padding-inline:18px}
  .tn-core-auth__brand h2::before{font-size:19px}
}

/* Product detail gallery: let the main artwork meet the card edges. */
.single-product .tn-core-commerce .tn-core-product-gallery{
  padding:0;
  background:transparent;
}
.single-product .tn-core-commerce .tn-core-product-gallery__main{
  overflow:hidden;
  border-radius:23px;
}
.single-product .tn-core-commerce .tn-core-product-gallery__thumbs{
  margin:12px 12px 12px;
}
@media (max-width:767px){
  .single-product .tn-core-commerce .tn-core-product-gallery{padding:0!important}
  .single-product .tn-core-commerce .tn-core-product-gallery__main{border-radius:15px}
  .single-product .tn-core-commerce .tn-core-product-gallery__thumbs{margin:9px}
}

/* Keep SKU data for inventory/orders, but do not expose it on product pages. */
.single-product .product_meta .sku_wrapper{
  display:none!important;
}

/* CodeMShop registration: keep the nested form centered and full-width. */
body.page-id-155109 .tn-core-auth__form{
  justify-content:center;
}
body.page-id-155109 .tn-core-auth__form>.memberswrap,
body.page-id-155109 .tn-core-auth__form>.memberswrap>.mfs_form,
body.page-id-155109 .tn-core-auth__form>.memberswrap>.mfs_form>form.ui.form{
  width:100%!important;
  min-width:0!important;
}

/* CodeMShop phone field has its own inner three-part wrapper. */
body.page-id-155109 .tn-core-auth form.ui.form .phone-field{
  display:block!important;
}
body.page-id-155109 .tn-core-auth form.ui.form .phone-field>.phone-number-wrapper{
  display:grid!important;
  width:100%!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
body.page-id-155109 .tn-core-auth form.ui.form .phone-field>.phone-number-wrapper>.field{
  width:auto!important;
  min-width:0!important;
  margin:0!important;
}
body.page-id-155109 .tn-core-auth form.ui.form .phone-field .phone-part{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  min-width:0!important;
  pointer-events:auto!important;
  text-align:center;
}
body.page-id-155109 .tn-core-auth form.ui.form .phone-field select.phone-part{
  appearance:none!important;
  padding-right:14px!important;
  background-color:#fff!important;
  background-image:none!important;
  cursor:default!important;
  pointer-events:none!important;
}

@media (max-width:420px){
  body.page-id-155109 .tn-core-auth form.ui.form .phone-field>.phone-number-wrapper{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
}

/* Checkout and order-complete pages: focused, compact commerce layout. */
/* Remove leftover builder placeholder and KBoard vendor credit from public board views. */
.tn-core-entry .vc_custom_heading.vc_do_custom_heading,
.tn-core-entry .kboard-default-poweredby{
  display:none!important;
}

body.woocommerce-checkout .tn-core-entry,
body.woocommerce-order-received .tn-core-entry{
  width:min(1180px,calc(100% - 40px));
  padding-top:48px;
  padding-bottom:64px;
}
body.woocommerce-checkout .woocommerce-info{
  margin:0 0 28px!important;
  padding:17px 20px 17px 52px!important;
  border:1px solid #f0d6c4!important;
  border-top:1px solid #f0d6c4!important;
  border-radius:14px!important;
  color:#594b42!important;
  background:#fff9f5!important;
  box-shadow:0 10px 28px rgba(58,34,19,.05);
}
body.woocommerce-checkout .woocommerce-info::before{
  top:50%!important;
  left:20px!important;
  color:#f25f0d!important;
  transform:translateY(-50%);
}
body.woocommerce-checkout .woocommerce-info a{
  color:#bd4100!important;
  font-weight:800!important;
}
body.woocommerce-checkout form.checkout{
  display:block;
}
body.woocommerce-checkout #customer_details{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:22px;
  margin-bottom:28px;
}
body.woocommerce-checkout #customer_details::before,
body.woocommerce-checkout #customer_details::after{
  display:none;
}
body.woocommerce-checkout #customer_details>.col-1,
body.woocommerce-checkout #customer_details>.col-2{
  float:none!important;
  width:auto!important;
  min-width:0;
  padding:28px!important;
  border:1px solid #eadfd7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 38px rgba(45,27,16,.06);
}
body.woocommerce-checkout .woocommerce-billing-fields>h3,
body.woocommerce-checkout .woocommerce-shipping-fields>h3,
body.woocommerce-checkout #order_review_heading{
  margin:0 0 22px!important;
  color:#19130f;
  font-size:24px!important;
  font-weight:900!important;
  letter-spacing:-.04em;
}
body.woocommerce-checkout .woocommerce-billing-fields>h3::after,
body.woocommerce-checkout .woocommerce-shipping-fields>h3::after,
body.woocommerce-checkout #order_review_heading::after{
  display:block;
  width:34px;
  height:3px;
  margin-top:10px;
  border-radius:999px;
  content:"";
  background:#f25f0d;
}
body.woocommerce-checkout form.checkout .form-row{
  margin:0 0 17px!important;
  padding:0!important;
}
body.woocommerce-checkout form.checkout .form-row label{
  margin:0 0 8px!important;
  color:#302720;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.4;
}
body.woocommerce-checkout form.checkout .input-text,
body.woocommerce-checkout form.checkout select,
body.woocommerce-checkout form.checkout .select2-selection{
  width:100%!important;
  min-height:50px!important;
  border:1px solid #dfd4cc!important;
  border-radius:11px!important;
  color:#201914!important;
  background:#fff!important;
  box-shadow:none!important;
  font-size:15px!important;
}
body.woocommerce-checkout form.checkout .input-text{
  padding:0 15px!important;
}
body.woocommerce-checkout form.checkout textarea.input-text{
  min-height:112px!important;
  padding:14px 15px!important;
  resize:vertical;
}
body.woocommerce-checkout form.checkout .input-text:focus,
body.woocommerce-checkout form.checkout select:focus,
body.woocommerce-checkout form.checkout .select2-container--focus .select2-selection{
  border-color:#f25f0d!important;
  outline:3px solid rgba(242,95,13,.12)!important;
}
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{
  padding:10px 38px 10px 15px!important;
  line-height:28px!important;
}
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{
  top:50%!important;
  right:12px!important;
  transform:translateY(-50%);
}
body.woocommerce-checkout #order_review_heading{
  margin-top:8px!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout #order_review{
  overflow:hidden;
  border:1px solid #eadfd7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 16px 42px rgba(45,27,16,.07);
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  width:100%;
  margin:0!important;
  border:0!important;
  border-collapse:collapse!important;
  background:#fff;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  padding:17px 22px!important;
  border:0!important;
  border-bottom:1px solid #eee6e0!important;
  color:#3e332b;
  font-size:14px;
  line-height:1.55;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{
  color:#19130f;
  background:#fff8f3;
  font-size:14px;
  font-weight:900;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  text-align:right;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{
  padding-top:20px!important;
  padding-bottom:20px!important;
  color:#f25f0d;
  background:#fffdfb;
  font-size:18px!important;
  font-weight:900!important;
}
body.woocommerce-checkout #payment{
  margin:0!important;
  padding:22px!important;
  border:0!important;
  border-radius:0!important;
  color:#45372e;
  background:#fff!important;
}
body.woocommerce-checkout #payment .payment_methods{
  margin:0 0 16px!important;
  padding:0!important;
  border:0!important;
}
body.woocommerce-checkout #payment .payment_box{
  margin:10px 0 0!important;
  padding:16px 18px!important;
  border-radius:12px!important;
  color:#51443b!important;
  background:#f7f2ee!important;
  font-size:14px!important;
  line-height:1.7!important;
}
body.woocommerce-checkout #payment .payment_box::before{
  display:none!important;
}
body.woocommerce-checkout #payment .place-order{
  margin:0!important;
  padding:0!important;
}

/* Thank-you page. */
body.woocommerce-order-received .woocommerce-order{
  max-width:1000px;
  margin:0 auto;
}
body.woocommerce-order-received .woocommerce-thankyou-order-received{
  position:relative;
  margin:0 0 24px!important;
  padding:30px 30px 30px 92px!important;
  border:1px solid #bde3c9;
  border-radius:18px;
  color:#174f2d!important;
  background:linear-gradient(135deg,#f1fff5 0%,#fbfffc 100%);
  box-shadow:0 16px 38px rgba(34,105,60,.08);
  font-size:22px!important;
  font-weight:900!important;
  line-height:1.45;
}
body.woocommerce-order-received .woocommerce-thankyou-order-received::before{
  position:absolute;
  top:50%;
  left:30px;
  display:grid;
  width:44px;
  height:44px;
  place-items:center;
  border-radius:50%;
  color:#fff;
  content:"✓";
  background:#25a85a;
  box-shadow:0 8px 20px rgba(37,168,90,.24);
  font-size:24px;
  transform:translateY(-50%);
}
body.woocommerce-order-received .woocommerce-order-overview{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:0 0 26px!important;
  padding:0!important;
  list-style:none!important;
}
body.woocommerce-order-received .woocommerce-order-overview li{
  float:none!important;
  min-width:0;
  margin:0!important;
  padding:18px!important;
  border:1px solid #eadfd7!important;
  border-radius:14px;
  color:#76685f;
  background:#fff;
  font-size:12px!important;
  line-height:1.45;
  text-transform:none!important;
}
body.woocommerce-order-received .woocommerce-order-overview li strong{
  display:block;
  overflow-wrap:anywhere;
  margin-top:8px;
  color:#211914;
  font-size:15px!important;
  font-weight:900!important;
}
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details{
  margin:0 0 22px!important;
  padding:26px!important;
  border:1px solid #eadfd7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 36px rgba(45,27,16,.06);
}
body.woocommerce-order-received .woocommerce-order-details__title,
body.woocommerce-order-received .woocommerce-column__title{
  margin:0 0 18px!important;
  color:#19130f;
  font-size:22px!important;
  font-weight:900!important;
  letter-spacing:-.03em;
}
body.woocommerce-order-received .woocommerce-table--order-details{
  margin:0!important;
  border:0!important;
  border-collapse:collapse!important;
}
body.woocommerce-order-received .woocommerce-table--order-details th,
body.woocommerce-order-received .woocommerce-table--order-details td{
  padding:15px 12px!important;
  border:0!important;
  border-bottom:1px solid #eee6e0!important;
  color:#44372f;
  font-size:14px;
  line-height:1.55;
}
body.woocommerce-order-received .woocommerce-table--order-details thead th{
  color:#211914;
  background:#fff8f3;
  font-weight:900;
}
body.woocommerce-order-received .woocommerce-table--order-details tfoot tr:last-child th,
body.woocommerce-order-received .woocommerce-table--order-details tfoot tr:last-child td{
  color:#f25f0d;
  font-size:17px;
  font-weight:900;
}
body.woocommerce-order-received .woocommerce-customer-details address{
  margin:0!important;
  padding:18px!important;
  border:0!important;
  border-radius:12px;
  color:#504239;
  background:#faf7f4;
  font-size:14px;
  line-height:1.8;
}
body.woocommerce-order-received .woocommerce-notice--error,
body.woocommerce-order-received .woocommerce-thankyou-order-failed{
  padding:22px!important;
  border:1px solid #f2b8b5;
  border-radius:16px;
  color:#8e1d18!important;
  background:#fff5f4;
  font-weight:800;
}

@media (max-width:767px){
  body.woocommerce-checkout .tn-core-entry,
  body.woocommerce-order-received .tn-core-entry{
    width:calc(100% - 30px);
    padding-top:28px;
    padding-bottom:42px;
  }
  body.woocommerce-checkout .woocommerce-info{
    margin-bottom:18px!important;
    padding:14px 14px 14px 44px!important;
    font-size:13px!important;
  }
  body.woocommerce-checkout .woocommerce-info::before{
    left:16px!important;
  }
  body.woocommerce-checkout #customer_details{
    grid-template-columns:1fr;
    gap:16px;
    margin-bottom:20px;
  }
  body.woocommerce-checkout #customer_details>.col-1,
  body.woocommerce-checkout #customer_details>.col-2{
    padding:20px 16px!important;
    border-radius:15px;
  }
  body.woocommerce-checkout .woocommerce-billing-fields>h3,
  body.woocommerce-checkout .woocommerce-shipping-fields>h3,
  body.woocommerce-checkout #order_review_heading{
    margin-bottom:18px!important;
    font-size:21px!important;
  }
  body.woocommerce-checkout form.checkout .form-row-first,
  body.woocommerce-checkout form.checkout .form-row-last{
    float:none!important;
    width:100%!important;
  }
  body.woocommerce-checkout form.checkout .form-row{
    margin-bottom:14px!important;
  }
  body.woocommerce-checkout form.checkout .input-text,
  body.woocommerce-checkout form.checkout select,
  body.woocommerce-checkout form.checkout .select2-selection{
    min-height:48px!important;
    font-size:14px!important;
  }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
    padding:14px 12px!important;
    font-size:13px;
  }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{
    width:68%;
    overflow-wrap:anywhere;
  }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{
    font-size:16px!important;
  }
  body.woocommerce-checkout #payment{
    padding:16px!important;
  }
  body.woocommerce-order-received .woocommerce-thankyou-order-received{
    padding:74px 20px 22px!important;
    font-size:19px!important;
    text-align:center;
  }
  body.woocommerce-order-received .woocommerce-thankyou-order-received::before{
    top:20px;
    left:50%;
    width:42px;
    height:42px;
    transform:translateX(-50%);
  }
  body.woocommerce-order-received .woocommerce-order-overview{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  body.woocommerce-order-received .woocommerce-order-overview li{
    padding:14px!important;
  }
  body.woocommerce-order-received .woocommerce-order-details,
  body.woocommerce-order-received .woocommerce-customer-details{
    padding:18px 14px!important;
    border-radius:15px;
  }
  body.woocommerce-order-received .woocommerce-order-details__title,
  body.woocommerce-order-received .woocommerce-column__title{
    font-size:19px!important;
  }
  body.woocommerce-order-received .woocommerce-table--order-details th,
  body.woocommerce-order-received .woocommerce-table--order-details td{
    padding:13px 8px!important;
    font-size:13px;
  }
}

/* Product tabs: replace embedded reviews with the dedicated live-review page. */
.single-product .woocommerce-tabs ul.tabs li.teolnanda_live_reviews_tab a{
  color:var(--tn-orange)!important;
}
.single-product .woocommerce-tabs ul.tabs li.teolnanda_live_reviews_tab a::after{
  margin-left:6px;
  content:'↗';
  font-size:.92em;
}
.single-product .woocommerce-tabs ul.tabs li.teolnanda_live_reviews_tab:hover a{
  color:#fff!important;
  border-radius:999px;
  background:var(--tn-orange);
}
.tn-core-live-reviews-fallback{
  text-align:center;
}
.tn-core-live-reviews-fallback a{
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border-radius:999px;
  color:#fff;
  background:var(--tn-orange);
  font-weight:800;
  text-decoration:none;
}

/* Checkout: make the required final consent and order action unmistakable. */
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout #order_review{
  overflow:hidden;
  border:1px solid #eadfd7;
  border-radius:18px;
  background:#fff;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  margin:18px 0 14px!important;
  padding:16px 18px!important;
  border:1px solid #f2c9ae!important;
  border-radius:14px!important;
  background:#fff8f3!important;
}
.woocommerce-checkout .woocommerce-privacy-policy-text{
  color:#594c44!important;
  font-size:14px!important;
  line-height:1.7!important;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row.validate-required,
.woocommerce-checkout .place-order .form-row.validate-required{
  margin:12px 0 0!important;
  padding:14px!important;
  border:1px solid #f26a17!important;
  border-radius:11px!important;
  background:#fff!important;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.woocommerce-form__label-for-checkbox,
.woocommerce-checkout .place-order label.woocommerce-form__label-for-checkbox{
  display:flex!important;
  align-items:flex-start!important;
  gap:11px!important;
  color:#17120f!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.55!important;
  cursor:pointer!important;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"],
.woocommerce-checkout .place-order .validate-required input[type="checkbox"]{
  -webkit-appearance:none!important;
  appearance:none!important;
  position:relative!important;
  clip:auto!important;
  clip-path:none!important;
  flex:0 0 25px!important;
  width:25px!important;
  min-width:25px!important;
  height:25px!important;
  margin:0!important;
  border:2px solid #d6530e!important;
  border-radius:6px!important;
  opacity:1!important;
  visibility:visible!important;
  background:#fff!important;
  cursor:pointer!important;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"]:checked,
.woocommerce-checkout .place-order .validate-required input[type="checkbox"]:checked{
  border-color:#f25f0d!important;
  background:#f25f0d!important;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"]:checked::after,
.woocommerce-checkout .place-order .validate-required input[type="checkbox"]:checked::after{
  position:absolute!important;
  top:3px!important;
  left:7px!important;
  width:6px!important;
  height:11px!important;
  border:solid #fff!important;
  border-width:0 2px 2px 0!important;
  content:""!important;
  transform:rotate(45deg)!important;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-link,
.woocommerce-checkout .woocommerce-privacy-policy-link{
  color:#bd4100!important;
  font-weight:800!important;
  text-decoration:underline!important;
  text-underline-offset:3px;
}
.woocommerce-checkout .place-order{
  padding:16px 0 0!important;
}
.woocommerce-checkout #place_order{
  width:100%!important;
  min-height:58px!important;
  border:0!important;
  border-radius:12px!important;
  color:#fff!important;
  background:#f25f0d!important;
  box-shadow:0 12px 26px rgba(242,95,13,.22)!important;
  font-size:17px!important;
  font-weight:900!important;
  letter-spacing:-.02em;
}
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus{
  color:#fff!important;
  background:#d94d05!important;
}

@media (max-width:767px){
  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
    margin:14px 0 12px!important;
    padding:14px!important;
  }
  .woocommerce-checkout .woocommerce-privacy-policy-text{
    font-size:13px!important;
    line-height:1.65!important;
  }
  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.woocommerce-form__label-for-checkbox,
  .woocommerce-checkout .place-order label.woocommerce-form__label-for-checkbox{
    gap:10px!important;
    font-size:15px!important;
  }
  .woocommerce-checkout #place_order{
    min-height:58px!important;
    font-size:16px!important;
  }
}
/* Hide KBoard vendor credit without affecting board controls. */
.kboard-ocean-rating-poweredby {
  display: none !important;
}

.tn-core-post__content>div:first-child h2 a span{color:#fff!important}

/* Unified Kakao entry for the current member gateway and the legacy /login/ page. */
body.page-id-155108 .tn-core-entry,
body.page-id-155109 .tn-core-entry,
.woocommerce-account:not(.logged-in) .tn-core-entry{
  max-width:1320px;
  padding-top:56px;
  padding-bottom:76px;
}
.tn-core-auth__form{
  flex-direction:column;
  align-items:stretch;
}
.tn-core-auth__native,
.tn-core-auth__native>.woocommerce,
.tn-core-auth__native>.memberswrap,
.tn-core-auth__native form{width:100%}
.tn-core-social-login{
  display:flex;
  width:100%;
  flex-direction:column;
  align-items:stretch;
}
.tn-core-social-login__eyebrow{
  margin:0 0 10px;
  color:#8a776a;
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
}
.tn-core-social-login__kakao{
  display:flex;
  width:100%;
  min-height:54px;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid #f1d900;
  border-radius:12px;
  color:#191600!important;
  background:#fee500;
  box-shadow:0 9px 22px rgba(124,109,0,.14);
  font-size:15px;
  font-weight:900;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
}
.tn-core-social-login__kakao:hover,
.tn-core-social-login__kakao:focus{
  color:#191600!important;
  background:#ffea2b;
  box-shadow:0 12px 26px rgba(124,109,0,.2);
  transform:translateY(-1px);
}
.tn-core-social-login__kakao svg{
  width:23px;
  height:23px;
  flex:0 0 23px;
  fill:#191600;
}
.tn-core-social-login small{
  margin-top:9px;
  color:#8d8179;
  font-size:11px;
  line-height:1.5;
  text-align:center;
}
.tn-core-auth__separator{
  display:flex;
  width:100%;
  align-items:center;
  gap:12px;
  margin:24px 0;
  color:#a2958c;
  font-size:11px;
  font-weight:750;
  white-space:nowrap;
}
.tn-core-auth__separator::before,
.tn-core-auth__separator::after{
  height:1px;
  flex:1;
  background:#ece4de;
  content:"";
}
body.page-id-155108 .tn-core-auth .woocommerce-form-login{
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.page-id-155108 .tn-core-auth .woocommerce-form-login::before{
  display:block;
  margin-bottom:28px;
  color:#201b18;
  content:'환영합니다';
  font-size:30px;
  font-weight:900;
  letter-spacing:-.045em;
}
body.page-id-155108 .tn-core-auth .woocommerce-form-login .form-row{margin-bottom:19px!important}
body.page-id-155108 .tn-core-auth .woocommerce-form-login label{color:#4f4640!important;font-size:13px!important;font-weight:800!important}
body.page-id-155108 .tn-core-auth .woocommerce-form-login input.input-text{
  width:100%!important;
  min-height:54px!important;
  padding:10px 14px!important;
  border:1px solid #dfd3cb!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.page-id-155108 .tn-core-auth .woocommerce-form-login .woocommerce-form-login__submit{
  width:100%!important;
  min-height:52px!important;
  margin:6px 0 0!important;
  border:0!important;
  border-radius:11px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#f36a1b,#df4d05)!important;
  box-shadow:0 10px 22px rgba(234,91,18,.2)!important;
  font-weight:850!important;
}
body.page-id-155108 .tn-core-auth .woocommerce-form-login .lost_password{
  margin-top:22px!important;
  padding-top:19px!important;
  border-top:1px solid #f0ebe7;
}

@media (max-width:767px){
  body.page-id-155108 .tn-core-entry,
  body.page-id-155109 .tn-core-entry,
  .woocommerce-account:not(.logged-in) .tn-core-entry{
    padding:18px 15px 42px;
  }
  .tn-core-social-login__kakao{min-height:52px;font-size:14px}
  .tn-core-auth__separator{margin:20px 0}
}

/* Logged-in account: the login-form width must not constrain the dashboard. */
body.woocommerce-account.logged-in .tn-core-entry{
  width:min(100% - 48px,1240px);
  max-width:1240px;
  padding-top:48px;
  padding-bottom:64px;
}
body.woocommerce-account.logged-in .tn-core-entry>.woocommerce{
  width:100%;
  max-width:none;
  margin:0 auto;
}
body.woocommerce-account.logged-in .tn-core-entry .msma-block{
  width:100%;
  max-width:none;
  margin-right:auto;
  margin-left:auto;
}
body.woocommerce-account.logged-in .tn-core-entry .msma-navigation-block{
  margin-bottom:28px;
}
body.woocommerce-account.logged-in .tn-core-entry .msma-progress-orders-block,
body.woocommerce-account.logged-in .tn-core-entry .msma-recent-orders-block{
  margin-top:26px;
}

@media (min-width:768px) and (max-width:1024px){
  body.woocommerce-account.logged-in .tn-core-entry{
    width:min(100% - 40px,960px);
    padding-top:36px;
    padding-bottom:52px;
  }
}

@media (max-width:767px){
  body.woocommerce-account.logged-in .tn-core-entry{
    width:calc(100% - 30px);
    padding-top:24px;
    padding-bottom:40px;
  }
  body.woocommerce-account.logged-in .tn-core-entry .msma-navigation-block{
    margin-bottom:20px;
  }
  body.woocommerce-account.logged-in .tn-core-entry .msma-progress-orders-block,
  body.woocommerce-account.logged-in .tn-core-entry .msma-recent-orders-block{
    margin-top:20px;
  }
}

/* 2026-08-10 PC density pass: keep the current visual language while
   reducing oversized hero and single-product presentation on desktop. */
@media (min-width:1181px){
  .tn-core-hero{
    width:min(100% - 64px,1240px);
    margin-bottom:24px;
  }
  .tn-core-hero__viewport{
    aspect-ratio:2.75 / 1;
    border-radius:22px;
  }
  .tn-core-hero__slide,
  .tn-core-hero__slide.is-active{
    width:72%;
  }
  .tn-core-hero__slide.is-prev,
  .tn-core-hero__slide.is-next{
    width:60%;
  }

  .tn-core-commerce ul.products,
  .tn-core-page-catalog ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .tn-core-subhero{
    min-height:188px;
  }
  .tn-core-subhero__inner{
    padding-top:30px;
    padding-bottom:30px;
  }
  .tn-core-subhero h1{
    margin-top:12px;
    font-size:clamp(30px,2.5vw,40px);
  }

  body.single-product .tn-core-commerce{
    width:min(100% - 48px,1120px);
    padding-top:28px;
  }
  body.single-product .tn-core-commerce div.product{
    grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr);
    gap:30px;
  }
  body.single-product .tn-core-commerce .tn-core-product-gallery__main img{
    max-height:450px;
  }
  body.single-product .tn-core-commerce div.product .summary{
    padding:24px;
  }
  body.single-product .tn-core-commerce div.product .product_title{
    margin-bottom:12px;
    font-size:clamp(26px,2.15vw,32px);
    line-height:1.22;
  }
  body.single-product .tn-core-commerce div.product .summary .price{
    margin:14px 0;
    font-size:24px;
  }
  body.single-product .tn-core-commerce div.product form.cart{
    margin:18px 0 14px;
    padding:14px;
  }
  body.single-product .tn-core-commerce .woocommerce-tabs{
    margin-top:28px;
  }
  body.single-product .tn-core-commerce .woocommerce-tabs .panel{
    padding:26px !important;
  }
  body.single-product .tn-core-commerce .related{
    margin-top:30px;
  }
}
