:root {
  --brand-navy:#0f3287;
  --brand-orange:#ff7300;
  --brand-white:#fff;
  --white:#fff !important;
  --gray:#0f3287 !important;
  --primary:#ff7300 !important;
  --primary-2:#d95f00 !important;
  --secondary:#0f3287 !important;
  --third:#ff7300 !important;
  --third-2:#ff8a26 !important;
  --third-3:#ff7300 !important;
  --third-4:#ffd4b3 !important;
  --price:#fff0e5 !important;
}
.c3-logo { display:flex; align-items:center; text-decoration:none; line-height:1; color:var(--gray); }
.c3-logo img { display:block; width:auto; height:64px; max-width:100%; object-fit:contain; }
.tf-header .logo-site.c3-logo img { height:64px; }
.ft-logo .logo-site.c3-logo img { height:64px; }
.canvas-mb .logo-site.c3-logo img { height:60px; }
/* Storefront HTML templates use .logo-site without the Razor .c3-logo class. */
.tf-header .logo-site:not(.c3-logo) img,
.ft-logo .logo-site:not(.c3-logo) img,
.canvas-mb .logo-site:not(.c3-logo) img { display:block; width:160px; height:auto; max-width:100%; max-height:none; object-fit:contain; }
@media (min-width:1200px) {
  .tf-header.style-2 .inner-header { padding-block:15px; }
}
@media (max-width:1199px) {
  .tf-header .logo-site:not(.c3-logo) img { width:100px; }
}
.hero-c3 { min-height:480px; border-radius:10px; background-size:cover; background-position:center; display:flex; align-items:center; }
.hero-c3 .content { max-width:560px; padding:70px; }
.hero-c3 .content h1 { font-size:54px; line-height:1.05; }
.s-banner-wrapper > .wrap-item-1 { position:relative; z-index:2; }
.s-banner-wrapper .c3-home-hero { position:relative; z-index:1; flex:1 1 0; width:100%; min-width:0; }
.c3-home-hero[hidden], .c3-home-slider [hidden] { display:none !important; }
.c3-home-slider { width:100%; height:100%; min-height:550px; border-radius:8px; overflow:hidden; background:transparent; }
.c3-home-slider .swiper-wrapper { height:auto; min-height:100%; }
.c3-home-slider .swiper-slide { height:auto; }
.c3-home-slide { position:relative; display:block; min-height:550px; height:100%; }
.c3-home-slide picture { position:absolute; inset:0; display:block; padding:0 12px 12px; }
.c3-home-slide picture img { display:block; width:100%; height:100%; object-fit:contain; object-position:center top; filter:drop-shadow(0 3px 8px rgba(0,0,0,.12)); }
.c3-home-slider-arrow { position:absolute; top:50%; z-index:2; display:grid; place-items:center; width:36px; height:44px; padding:0; border:1px solid rgba(255,255,255,.35); border-radius:5px; background:rgba(7,13,32,.5); color:#fff; transform:translateY(-50%); cursor:pointer; }
.c3-home-slider-prev { left:12px; }
.c3-home-slider-next { right:12px; }
.c3-home-slider-controls { position:absolute; bottom:24px; left:50%; z-index:2; display:flex; align-items:center; gap:12px; max-width:calc(100% - 32px); padding:4px 10px; border-radius:24px; background:rgba(7,13,32,.6); transform:translateX(-50%); }
.c3-home-slider-pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:4px; }
.c3-home-slider-pagination .swiper-pagination-bullet { flex-shrink:0; width:12px; height:12px; margin:6px !important; background:#fff; opacity:.6; }
.c3-home-slider-pagination .swiper-pagination-bullet-active { background:var(--brand-orange); opacity:1; }
.c3-home-slider-toggle { flex-shrink:0; width:32px; height:32px; padding:0; border:0; border-radius:50%; background:transparent; color:#fff; font-size:13px; cursor:pointer; }
.c3-home-slider button:focus-visible, .c3-home-slider .swiper-pagination-bullet:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.c3-home-slide:focus-visible { outline:3px solid var(--brand-orange); outline-offset:-4px; }
@media (max-width:767px) {
  .c3-home-slider { min-height:360px; }
  .c3-home-slide { min-height:360px; }
  .c3-home-slider-arrow { width:30px; }
  .c3-home-slider-prev { left:8px; }
  .c3-home-slider-next { right:8px; }
}
.product-empty { padding:70px 20px; text-align:center; border:1px solid var(--line); border-radius:8px; }
.field-validation-error,.validation-summary-errors { color:#d80027; font-size:13px; }
.validation-summary-errors ul { margin:0 0 20px; padding-left:18px; }
.c3-flyout-item { position:relative; }
.c3-category-flyout { position:absolute; top:-1px; left:100%; z-index:20; min-width:240px; padding:10px 14px !important; background:var(--white); border:1px solid var(--gray-5); border-radius:8px; box-shadow:0 6px 18px rgba(0,0,0,.09); opacity:0; visibility:hidden; pointer-events:none; transform:translateX(8px); transition:opacity .18s ease, transform .18s ease, visibility .18s ease; }
.c3-flyout-item:hover > .c3-category-flyout { opacity:1; visibility:visible; pointer-events:auto; transform:translateX(0); }
.c3-category-flyout li { display:block !important; box-shadow:none !important; }
.c3-category-flyout a { display:flex !important; align-items:center; justify-content:space-between; min-height:36px; padding:7px 4px !important; white-space:nowrap; font-size:14px; }
.c3-category-arrow { margin-left:18px; font-size:11px; }
.tf-nav-menu .sub-menu-list { min-width:240px; }
.tf-nav-menu .sub-menu-list > .c3-flyout-item { display:block; }
.main-nav-menu .c3-brands-menu { min-width:240px; max-height:min(480px,calc(100vh - 180px)); overflow-y:auto; overscroll-behavior:contain; }
.main-nav-menu .c3-brands-nav-item:focus-within > .sub-menu-container { transform:translateY(0); opacity:1; visibility:visible; pointer-events:auto; }
.main-nav-menu .c3-brands-menu .sub-menu-list { min-width:240px; }
.main-nav-menu .c3-brands-menu .sub-menu-list li a span { white-space:nowrap; }
.c3-mobile-brands-menu { max-height:360px; overflow-y:auto; overscroll-behavior:contain; }
.list-star .c3-rating-star { display:inline-block; color:transparent !important; }
.list-star .c3-rating-star::before { color:transparent; background:linear-gradient(90deg,#fcb500 0%,#fcb500 var(--c3-star-fill),var(--gray-4) var(--c3-star-fill),var(--gray-4) 100%); -webkit-background-clip:text; background-clip:text; }
.c3-technical-details:not(:empty) { margin-top:24px; }
.c3-technical-details ul, .c3-technical-details ol { padding-left:20px; }
.c3-sidebar-category-list { margin:0; }
.c3-sidebar-category-list ul { padding-left:18px; }
.c3-sidebar-category-row { display:flex; align-items:center; min-height:36px; }
.c3-sidebar-category-row > a { flex:1; padding:7px 0 !important; }
.c3-category-toggle { display:inline-grid; place-items:center; width:32px; height:32px; padding:0; border:0; background:transparent; color:var(--main); cursor:pointer; transition:transform .2s ease, color .2s ease; }
.c3-category-toggle:hover { color:var(--primary); }
.c3-category-toggle[aria-expanded="true"] { transform:rotate(90deg); }
.c3-sidebar-category-children[hidden] { display:none !important; }
.c3-sidebar-category-children { margin:0; }
#category .nav-ul-mb .sub-nav-menu { padding-left:16px; }
#category .nav-ul-mb .sub-nav-menu .sub-nav-menu { padding-left:14px; }
.c3-language-select:not(.bs-select-hidden) { min-width:84px; padding:4px 24px 4px 6px; border:0; background-color:transparent; color:inherit; font:inherit; cursor:pointer; }
.c3-language-select:focus { outline:2px solid color-mix(in srgb, var(--primary) 35%, transparent); outline-offset:2px; }
.c3-mobile-language { padding:16px 20px 6px; }
.c3-mobile-language .c3-language-select { width:100%; padding:10px 12px; border:1px solid var(--gray-4); border-radius:6px; }
.canvas-sidebar-account .sidebar-mobile-append { position:static; display:flex; width:100%; }
.canvas-sidebar-account .sidebar-mobile-append > li { display:block; width:100%; }
.form-search-product.c3-product-search-only { gap:0; padding-right:48px; }
.form-search-product.c3-product-search-only fieldset { flex:1 1 auto; max-width:none; }
.form-search-product.c3-product-search-only fieldset input { width:100%; }
.tf-header { position:-webkit-sticky !important; position:sticky !important; top:0 !important; z-index:990 !important; background:var(--white); }
.tf-topbar { position:relative; z-index:1000; }
.tf-header.header-type-stc { top:0 !important; }
.tf-header.style-2 .header-right { margin-right:0 !important; }
.tf-header.style-2 .support-wrap { position:relative; z-index:2; align-items:center; }
.tf-header.style-2 .support-wrap > img { width:34px !important; height:34px !important; object-fit:contain; transform:translateY(-1px); }
.tf-header.style-2 .support-wrap .mail-us { display:flex; align-items:baseline; gap:4px; flex-wrap:nowrap; white-space:nowrap; }
.tf-header.style-2 .support-wrap .mail-us a { flex:0 0 auto; white-space:nowrap; }
.c3-account-menu { position:relative; }
.bar-lang > .c3-account-menu-topbar { display:flex; align-items:stretch; }
.c3-account-menu .c3-account-menu-trigger { cursor:pointer; }
.c3-account-menu .c3-account-menu-trigger .icon-arrow-down { transition:transform .18s ease; }
.c3-account-menu.is-open .c3-account-menu-trigger .icon-arrow-down { transform:rotate(180deg); }
.c3-account-menu .c3-account-menu-card { position:absolute; top:calc(100% + 12px); right:0; z-index:1100; width:min(270px,calc(100vw - 24px)); overflow:hidden; border:1px solid var(--gray-4); border-radius:12px; background:var(--white); box-shadow:0 18px 45px rgba(15,50,135,.18); opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-7px); transition:opacity .18s ease,visibility .18s ease,transform .18s ease; }
.c3-account-menu.is-open .c3-account-menu-card { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
.c3-account-menu .c3-account-menu-heading { position:relative; display:flex; align-items:center; gap:12px; padding:18px 20px 15px; border-bottom:1px solid var(--gray-4); background:color-mix(in srgb,var(--secondary) 5%,var(--white)); }
.c3-account-menu .c3-account-menu-avatar { display:inline-grid; flex:0 0 42px; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--secondary); color:var(--white); font-size:19px; line-height:1; }
.c3-account-menu .c3-account-menu-identity { display:grid; gap:3px; min-width:0; }
.c3-account-menu .c3-account-menu-identity > span { color:var(--primary); font-size:10px; line-height:1.2; font-weight:800; letter-spacing:.12em; }
.c3-account-menu .c3-account-menu-identity strong { overflow:hidden; color:var(--secondary); font-size:15px; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
.c3-account-menu .c3-account-menu-card nav { display:grid; padding:8px; }
.c3-account-menu .c3-account-menu-card nav a { display:flex; align-items:center; gap:11px; min-height:43px; padding:9px 11px; border-radius:7px; color:var(--secondary); font-size:14px; font-weight:600; transition:background-color .16s ease,color .16s ease; }
.c3-account-menu .c3-account-menu-card nav a:hover,.c3-account-menu .c3-account-menu-card nav a:focus-visible { background:color-mix(in srgb,var(--primary) 9%,var(--white)); color:var(--primary); outline:none; }
.c3-account-menu .c3-account-menu-icon { display:inline-grid; flex:0 0 28px; place-items:center; width:28px; height:28px; border-radius:7px; background:color-mix(in srgb,var(--secondary) 7%,var(--white)); color:var(--secondary); font-size:17px; line-height:1; }
.c3-account-menu .c3-account-menu-icon i { font-size:15px; }
.c3-account-menu .c3-account-menu-card nav .c3-account-menu-logout { margin-top:5px; border-top:1px solid var(--gray-4); border-radius:0 0 7px 7px; color:#b42318; }
.c3-account-menu .c3-account-menu-card nav .c3-account-menu-logout .c3-account-menu-icon { background:#fff1f0; color:#b42318; }
.bar-lang { gap:16px; }
.bar-lang .tf-cur-item > .icon-budget {
    display:none !important;
}
.bar-lang > .tf-cur-item:first-child > span {
    display:inline-flex;
    min-width:12px;
    align-items:center;
    justify-content:center;
    font-size:16px;
    line-height:1;
}
.type-cur + .dropdown-toggle .filter-option-inner-inner,
select.type-cur + .nice-select .current {
    color:var(--secondary) !important;
    font-family:"Segoe UI Symbol", "Segoe UI", Arial, sans-serif;
    font-size:16px !important;
    line-height:25px;
}
.type-cur + .dropdown-toggle .filter-option-inner-inner::after,
select.type-cur + .nice-select .current::after {
    content:none;
}
.bar-lang .c3-header-register { padding:0; border:0; background:transparent !important; color:var(--secondary) !important; font-weight:400; white-space:nowrap; transition:color .18s ease; }
.bar-lang .c3-header-register .body-small { color:inherit !important; }
.bar-lang .c3-header-register-icon { display:grid; place-items:center; width:22px; height:22px; color:inherit; }
.bar-lang .c3-header-register-icon svg,
.bar-lang .c3-header-register-icon svg path,
.bar-lang .c3-header-register-icon svg circle { width:22px; height:22px; fill:none !important; stroke:currentColor !important; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; }
.bar-lang .c3-header-register:hover,
.bar-lang .c3-header-register:hover .body-small,
.bar-lang .c3-header-register:hover .c3-header-register-icon { background:transparent !important; color:var(--primary) !important; }
.tf-header .c3-header-register-item { display:none; }
.tf-header .c3-header-register-item .c3-header-register { align-items:center; color:var(--secondary) !important; font-weight:400; white-space:nowrap; }
.tf-header .c3-header-register-item .c3-header-register-icon { display:grid; place-items:center; width:26px; height:26px; color:var(--secondary); }
.tf-header .c3-header-register-item .c3-header-register-icon svg,
.tf-header .c3-header-register-item .c3-header-register-icon svg path,
.tf-header .c3-header-register-item .c3-header-register-icon svg circle { width:26px; height:26px; fill:none !important; stroke:currentColor !important; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; }
.tf-header .c3-header-register-item .c3-header-register:hover,
.tf-header .c3-header-register-item .c3-header-register:hover .c3-header-register-icon { color:var(--primary) !important; }
@media (min-width:1200px) {
    .tf-header .c3-header-register-item { display:block; }
    .tf-header:not(.style-2) .c3-header-actions-column { flex:0 0 25% !important; max-width:25% !important; }
    .tf-header:not(.style-2) .c3-header-search-column { flex:0 0 58.333333% !important; max-width:58.333333% !important; }
    .tf-header:not(.style-2) .c3-header-actions-column .header-right { width:100%; }
    .tf-header:not(.style-2) .c3-header-actions { width:100%; justify-content:flex-end !important; gap:16px !important; }
    .tf-header:not(.style-2) .c3-header-actions > li { display:flex; align-items:center; justify-content:center; min-width:43px; }
    .tf-header:not(.style-2) .c3-header-actions .nav-icon-item { align-items:center; gap:4px; }
    .tf-header:not(.style-2) .c3-header-actions .nav-icon-item > span:first-child { min-height:26px; }
    .tf-header:not(.style-2) .c3-header-actions .body-small { line-height:18px; white-space:nowrap; }
}
@media (min-width:1200px) { .tf-header.style-2 .header-center { margin-right:0 !important; padding-right:16px; } }
.c3-checkout-order-form { display:grid; gap:40px; }
.c3-checkout-order-form[hidden], .c3-corporate-fields[hidden] { display:none; }
.c3-checkout-gate { display:grid; gap:16px; padding:20px; border:1px solid var(--gray-5); border-radius:8px; background:var(--gray-6); }
.c3-checkout-gate-actions { display:flex; gap:12px; flex-wrap:wrap; }
.c3-checkout-gate-actions .tf-btn { min-width:190px; }
.c3-checkout-account-status { font-weight:600; color:var(--secondary); }
.c3-customer-type { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:22px; }
.c3-customer-type label { display:flex; align-items:center; gap:10px; padding:14px 16px; border:1px solid var(--gray-4); border-radius:8px; cursor:pointer; }
.c3-customer-type label:has(input:checked) { border-color:var(--primary); background:color-mix(in srgb,var(--primary) 7%,white); }
.c3-customer-type input { width:18px; height:18px; accent-color:var(--primary); }
.c3-checkout-fields, .c3-corporate-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.c3-corporate-fields { grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:20px; }
.c3-checkout-order-form fieldset { min-width:0; }
.c3-checkout-fields + fieldset, .c3-checkout-order-form section > fieldset + fieldset { margin-top:20px; }
.c3-checkout-order-form label { display:block; margin-bottom:7px; font-weight:600; }
.c3-checkout-order-form input[type="text"], .c3-checkout-order-form input[type="email"], .c3-checkout-order-form input[type="tel"], .c3-checkout-order-form textarea { width:100%; }
.c3-saved-addresses { margin-bottom:24px; }
.c3-saved-addresses[hidden], .c3-new-address-options[hidden] { display:none; }
.c3-saved-addresses-title { margin-bottom:12px; font-weight:700; }
.c3-saved-address-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.c3-saved-address-card { display:flex !important; align-items:flex-start; gap:12px; min-height:96px; margin:0 !important; padding:15px; border:1px solid var(--gray-4); border-radius:8px; cursor:pointer; transition:border-color .18s ease,background-color .18s ease; }
.c3-saved-address-card:has(input:checked) { border-color:var(--primary); background:color-mix(in srgb,var(--primary) 6%,white); }
.c3-saved-address-card > input { flex:0 0 auto; width:18px; height:18px; margin-top:2px; accent-color:var(--primary); }
.c3-saved-address-content { display:grid; gap:5px; min-width:0; font-weight:400; }
.c3-saved-address-content strong { color:var(--main); }
.c3-saved-address-content span { color:var(--text-2); font-size:13px; line-height:1.45; }
.c3-new-address-options { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:end; gap:20px; margin-bottom:22px; padding:16px; border:1px dashed var(--gray-4); border-radius:8px; background:var(--gray-6); }
.c3-save-address { display:flex !important; align-items:center; gap:9px; min-height:46px; margin:0 !important; cursor:pointer; }
.c3-save-address input { width:18px; height:18px; accent-color:var(--primary); }
.c3-account-address-heading { margin-bottom:18px; }
.c3-account-address-type { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
.c3-account-address-type label { display:flex; align-items:center; gap:9px; margin:0; padding:13px 15px; border:1px solid var(--gray-4); border-radius:8px; font-weight:600; cursor:pointer; }
.c3-account-address-type label:has(input:checked) { border-color:var(--primary); background:color-mix(in srgb,var(--primary) 6%,white); }
.c3-account-address-type input, .c3-account-default-address input { width:18px; height:18px; accent-color:var(--primary); }
.c3-account-corporate-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-bottom:15px; }
.c3-account-corporate-fields[hidden] { display:none; }
.c3-account-default-address { display:flex; align-items:center; gap:9px; margin-top:16px; font-weight:600; cursor:pointer; }
.c3-account-dashboard { display:grid; gap:24px; }
.c3-account-welcome { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; padding:28px 30px; border-radius:12px; background:linear-gradient(135deg,var(--secondary),#173f9f); color:var(--white); box-shadow:0 12px 30px rgba(15,50,135,.14); }
.c3-account-welcome h3 { margin:5px 0 8px; color:var(--white); }
.c3-account-welcome p { max-width:650px; margin:0; color:rgba(255,255,255,.78); }
.c3-account-welcome .tf-btn.btn-line { flex:0 0 auto; min-height:44px; border-color:var(--white); background:var(--white); color:var(--secondary); }
.c3-account-welcome .tf-btn.btn-line:hover { border-color:var(--primary); background:var(--primary); color:var(--white); }
.c3-account-eyebrow,.c3-account-panel-heading span { display:block; color:var(--primary); font-size:11px; line-height:1.2; font-weight:800; letter-spacing:.11em; }
.c3-account-welcome .c3-account-eyebrow { color:rgba(255,255,255,.7); }
.c3-account-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.c3-account-stat { display:grid; gap:5px; min-width:0; padding:20px; border:1px solid var(--gray-4); border-radius:10px; background:var(--white); color:var(--secondary); transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.c3-account-stat:hover { border-color:color-mix(in srgb,var(--primary) 48%,var(--gray-4)); box-shadow:0 10px 28px rgba(15,50,135,.09); transform:translateY(-2px); }
.c3-account-stat > span { color:var(--text-2); font-size:13px; font-weight:600; }
.c3-account-stat > strong { color:var(--secondary); font-size:30px; line-height:1.15; }
.c3-account-stat > small { overflow:hidden; color:var(--text-3); font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.c3-account-main-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr); gap:20px; align-items:start; }
.c3-account-side { display:grid; gap:20px; }
.c3-account-panel { overflow:hidden; border:1px solid var(--gray-4); border-radius:12px; background:var(--white); }
.c3-account-panel-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 22px; border-bottom:1px solid var(--gray-4); }
.c3-account-panel-heading h5 { margin-top:4px; color:var(--secondary); }
.c3-account-panel-heading > a { color:var(--primary); font-size:13px; font-weight:700; }
.c3-account-order-list { display:grid; }
.c3-account-order-row { display:grid; grid-template-columns:minmax(120px,1.2fr) minmax(90px,.8fr) minmax(90px,.8fr) minmax(105px,.8fr) 16px; align-items:center; gap:12px; padding:17px 22px; border-bottom:1px solid var(--gray-4); color:var(--text-2); font-size:13px; transition:background-color .18s ease; }
.c3-account-order-row:last-child { border-bottom:0; }
.c3-account-order-row:hover { background:var(--gray-5); }
.c3-account-order-row span:not(.c3-account-order-status):not(.c3-account-order-arrow) { display:grid; gap:3px; min-width:0; }
.c3-account-order-row small { color:var(--text-3); font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.c3-account-order-number strong { overflow:hidden; color:var(--secondary); text-overflow:ellipsis; white-space:nowrap; }
.c3-account-order-status { justify-self:start; padding:6px 9px; border-radius:999px; font-size:11px; line-height:1; font-weight:700; white-space:nowrap; }
.c3-account-order-status.is-success { background:#e7f7ed; color:#18733a; }
.c3-account-order-status.is-danger { background:#fff0ef; color:#b42318; }
.c3-account-order-status.is-info { background:#eaf2ff; color:#1855a9; }
.c3-account-order-status.is-warning { background:#fff6df; color:#8a5a00; }
.c3-account-order-arrow { color:var(--primary); font-size:24px; }
.c3-account-empty { display:grid; justify-items:start; gap:9px; padding:36px 22px; color:var(--text-2); }
.c3-account-empty strong { color:var(--secondary); font-size:17px; }
.c3-account-empty .tf-btn { margin-top:8px; }
.c3-account-profile-card,.c3-account-quick-card { padding-bottom:20px; }
.c3-account-progress-label { display:flex; justify-content:space-between; gap:12px; padding:20px 22px 8px; color:var(--text-2); font-size:13px; }
.c3-account-progress-label strong { color:var(--secondary); }
.c3-account-progress { height:7px; margin:0 22px 18px; overflow:hidden; border-radius:999px; background:var(--gray-5); }
.c3-account-progress span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--primary),#ff7869); }
.c3-account-info-list { display:grid; gap:0; margin:0 22px; }
.c3-account-info-list > div { display:grid; gap:4px; padding:11px 0; border-bottom:1px solid var(--gray-4); }
.c3-account-info-list dt { color:var(--text-3); font-size:11px; font-weight:700; text-transform:uppercase; }
.c3-account-info-list dd { overflow-wrap:anywhere; color:var(--secondary); font-size:13px; font-weight:600; }
.c3-account-text-link { display:flex; justify-content:space-between; gap:10px; margin:18px 22px 0; color:var(--primary); font-size:13px; font-weight:700; }
.c3-account-quick-links { display:grid; padding:8px 22px 0; }
.c3-account-quick-links a { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 0; border-bottom:1px solid var(--gray-4); color:var(--secondary); font-size:13px; font-weight:600; }
.c3-account-quick-links a:last-child { border-bottom:0; }
.c3-account-quick-links b { display:grid; place-items:center; min-width:26px; height:26px; padding:0 7px; border-radius:999px; background:var(--gray-5); color:var(--primary); font-size:12px; }
@media (max-width:1199px) { .c3-account-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .c3-account-main-grid { grid-template-columns:1fr; } .c3-account-side { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767px) { .c3-account-welcome { align-items:flex-start; flex-direction:column; padding:24px 20px; } .c3-account-welcome .tf-btn { width:100%; } .c3-account-stat-grid,.c3-account-side { grid-template-columns:1fr; } .c3-account-order-row { grid-template-columns:minmax(0,1fr) auto; gap:9px 14px; padding:16px 18px; } .c3-account-order-row > span { grid-column:1; } .c3-account-order-row .c3-account-order-status { grid-column:2; grid-row:1; } .c3-account-order-row .c3-account-order-arrow { grid-column:2; grid-row:2/4; align-self:center; } }
.c3-payment-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.c3-payment-options.is-single { grid-template-columns:1fr; }
.c3-payment-method { display:flex; align-items:flex-start; gap:12px; padding:18px; border:1px solid var(--gray-4); border-radius:8px; background:#fff; }
.c3-payment-method:has(input:checked) { border-color:var(--primary); background:color-mix(in srgb,var(--primary) 5%,white); box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 8%,transparent); }
.c3-payment-method.is-unavailable { background:#fafafa; border-style:dashed; }
.c3-payment-method.is-unavailable input { cursor:not-allowed; }
.c3-payment-method.is-unavailable label { cursor:default; }
.c3-payment-method input { flex:0 0 auto; width:18px; height:18px; margin-top:2px; accent-color:var(--primary); }
.c3-payment-method label { display:grid; gap:4px; margin:0; cursor:pointer; }
.c3-payment-method label span { color:var(--text-2); font-weight:400; }
.c3-payment-method label em { display:inline-flex; padding:3px 6px; margin-left:5px; color:#8a5b00; background:#fff2c9; border-radius:4px; font-size:10px; font-style:normal; font-weight:700; vertical-align:middle; }
.c3-moka-card-fields { padding:20px; margin-bottom:18px; background:#fafafa; border:1px solid var(--gray-4); border-radius:10px; }
.c3-shipping-options { display:grid; gap:18px; padding:20px; margin-bottom:18px; background:#fff; border:1px solid var(--gray-4); border-radius:10px; }
.c3-carrier-fieldset { min-width:0; }
.c3-carrier-fieldset legend { position:relative; display:flex; align-items:center; gap:8px; width:100%; margin-bottom:12px; font-size:15px; font-weight:600; }
.c3-shipping-help { display:inline-flex; align-items:center; }
.c3-shipping-help .c3-shipping-help-button { display:inline-grid; flex:0 0 auto; place-items:center; width:22px; height:22px; padding:0; margin:0; color:var(--secondary); background:#f6f7fa; border:1px solid #cbd2dd; border-radius:50%; font-size:13px; line-height:1; font-weight:700; cursor:help; }
.c3-shipping-help-button:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
.c3-shipping-help-text { position:absolute; top:calc(100% + 8px); inset-inline-start:0; z-index:20; width:min(460px, calc(100vw - 80px)); padding:16px 18px; color:#fff; background:#26344a; border-radius:10px; box-shadow:0 8px 28px rgba(0,0,0,.18); font-size:13px; line-height:1.7; font-weight:400; white-space:normal; }
.c3-shipping-help-text[hidden] { display:none !important; }
.c3-carrier-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.c3-carrier-options .c3-carrier-option { display:flex; align-items:center; gap:12px; padding:13px 14px; margin:0; border:1px solid var(--gray-4); border-radius:8px; font-size:13px; cursor:pointer; }
.c3-carrier-option:has(input:checked) { border-color:var(--primary); background:color-mix(in srgb,var(--primary) 5%,white); }
.c3-carrier-option input { flex:0 0 auto; width:17px; height:17px; margin:0; accent-color:var(--primary); }
.c3-cargo-registration-field input { width:100%; }
@media (max-width: 575px) { .c3-carrier-options { grid-template-columns:1fr; } }
.c3-moka-card-fields[hidden] { display:none; }
.c3-moka-card-fields > fieldset { margin-top:16px; }
.c3-moka-card-fields input, .c3-moka-card-fields select { width:100%; }
.c3-moka-card-fields .tf-select select { appearance:none; min-height:46px; padding:12px 40px 12px 14px; border-radius:10px; background:var(--white); color:var(--secondary); }
.c3-moka-card-fields .tf-select::after { pointer-events:none; }
.c3-moka-card-fields select:disabled { background-color:#f3f4f6; color:var(--text-3); cursor:not-allowed; }
.c3-moka-card-fields.is-unavailable input, .c3-moka-card-fields.is-unavailable select { cursor:not-allowed; opacity:.68; }
.c3-moka-setup-notice { display:grid; gap:3px; padding:12px 14px; margin-bottom:12px; color:#674c12; background:#fff8e7; border:1px solid #ead9ad; border-radius:7px; }
.c3-moka-setup-notice strong { font-size:13px; }
.c3-moka-setup-notice span { color:#756442; font-size:12px; line-height:1.45; }
.c3-moka-card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:16px; }
.c3-moka-card-grid > fieldset { min-width:0; }
.c3-bank-transfer-instructions { display:grid; gap:16px; padding:22px; margin-bottom:18px; border:1px solid #ddd9cf; border-radius:10px; background:#fbfaf7; }
.c3-bank-transfer-instructions[hidden] { display:none; }
.c3-transfer-heading { display:grid; gap:5px; }
.c3-transfer-heading h6, .c3-transfer-heading p { margin:0; }
.c3-transfer-heading p { color:var(--text-2); line-height:1.55; }
.c3-transfer-kicker { color:var(--primary); font-size:11px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.c3-bank-account { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; overflow:hidden; border:1px solid #dfddd7; border-radius:8px; background:#fff; }
.c3-bank-account > div { display:grid; gap:3px; padding:13px 15px; border-bottom:1px solid #eceae5; }
.c3-bank-account > div:nth-child(odd) { border-right:1px solid #eceae5; }
.c3-bank-account > div:nth-last-child(-n+2) { border-bottom:0; }
.c3-bank-account dt { color:var(--text-3); font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.c3-bank-account dd { margin:0; color:var(--text); font-size:13px; font-weight:650; line-height:1.45; }
.c3-bank-account .c3-bank-iban dd { font-variant-numeric:tabular-nums; letter-spacing:.035em; }
.c3-transfer-copy { display:grid; gap:10px; color:var(--text-2); font-size:13px; line-height:1.65; }
.c3-transfer-copy p { margin:0; }
.c3-transfer-copy a, .c3-transfer-contact a { color:var(--primary); font-weight:650; overflow-wrap:anywhere; }
.c3-mail-order-box { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px; border:1px solid #d8dfeb; border-radius:8px; background:#f6f8fc; }
.c3-mail-order-box > div { display:grid; gap:4px; }
.c3-mail-order-box strong { font-size:13px; }
.c3-mail-order-box span { color:var(--text-2); font-size:12px; line-height:1.55; }
.c3-mail-order-box .tf-btn { flex:0 0 auto; min-height:40px; padding:10px 15px; white-space:nowrap; }
.c3-transfer-contact { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:14px; border-top:1px solid #e2dfd7; color:var(--text-2); font-size:12px; }
.c3-checkout-coupon-status { display:inline-flex; width:auto; max-width:100%; align-items:center; gap:7px; padding:6px 8px; border:1px solid color-mix(in srgb,var(--primary) 28%,white); border-radius:6px; background:color-mix(in srgb,var(--primary) 4%,white); color:var(--primary); font-size:12px; font-weight:600; }
.c3-checkout-coupon-status[hidden] { display:none; }
.c3-checkout-coupon-remove { flex:0 0 auto; padding:1px 3px; border:0; border-bottom:1px solid currentColor; color:var(--primary); background:transparent; font-size:11px; line-height:1.3; font-weight:600; }
.c3-checkout-coupon-remove:hover { color:var(--primary-2); }
.c3-checkout-coupon-feedback, .c3-checkout-order-feedback { margin-top:8px; color:#218838; font-size:13px; }
.c3-checkout-coupon-feedback.is-error, .c3-checkout-order-feedback { color:#c0392b; }
.c3-checkout-order-feedback { margin-bottom:14px; }
.c3-place-order:disabled { cursor:not-allowed; opacity:.58; }
.tf-order-detail .order-notice.is-payment-failed { border:1px solid #efc7c3; background:#fff7f6; }
.tf-order-detail .order-notice.is-payment-failed .icon { background:#b42318; }
.sec-total-price del { margin-right:5px; color:var(--text-3); }
.c3-compare-remove { padding:0; border:0; background:transparent; color:inherit; cursor:pointer; }
.c3-out-of-stock-button { cursor:not-allowed !important; pointer-events:none; opacity:.72; }
.box-icon.c3-out-of-stock-button { width:auto !important; min-width:70px; padding:0 9px; border-radius:6px; }
.c3-out-of-stock-label { color:var(--text); font-size:11px; line-height:1; font-weight:700; white-space:nowrap; }
.c3-cart-added-button { cursor:pointer; }
.box-icon.c3-cart-added-button { width:auto !important; min-width:118px; padding:0 12px; border-radius:999px; }
.c3-cart-added-label { display:inline-flex; align-items:center; justify-content:center; gap:7px; color:inherit; font-size:12px; line-height:1; font-weight:700; white-space:nowrap; }
.c3-cart-added-label::before { content:""; flex:0 0 auto; width:7px; height:11px; margin-top:-2px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); }
.tf-btn .c3-cart-added-label { color:var(--white); }
.card-product .list-product-btn li.c3-cart-added-item { opacity:1 !important; visibility:visible !important; transform:translateX(0) !important; }
.card-product .box-icon.c3-cart-added-button { width:40px !important; min-width:40px !important; height:40px !important; padding:0; overflow:visible; border:0; border-radius:50%; background:#218838 !important; color:var(--white); box-shadow:0 7px 20px rgba(33,136,56,.26); }
.card-product .box-icon.c3-cart-added-button .c3-cart-added-label { position:absolute; top:50%; right:0; z-index:2; min-height:36px; padding:0 13px; border-radius:999px; background:#218838; color:var(--white); box-shadow:0 8px 24px rgba(33,136,56,.28); letter-spacing:.01em; transform:translateY(-50%); animation:c3-cart-added-reveal .22s ease-out both; }
@keyframes c3-cart-added-reveal { from { opacity:0; transform:translate(8px,-50%) scale(.94); } to { opacity:1; transform:translate(0,-50%) scale(1); } }
@media (max-width:991.98px) { .card-product .box-icon.c3-cart-added-button { width:35px !important; min-width:35px !important; height:35px !important; } .card-product .box-icon.c3-cart-added-button .c3-cart-added-label { min-height:34px; padding:0 11px; font-size:11px; } }
.tf-header .c3-header-cart-count { display:flex !important; }
.product-box-btn .c3-detail-wishlist { width:100%; border:1px solid var(--secondary); background:var(--white); color:var(--secondary); transition:background-color .18s ease,border-color .18s ease,color .18s ease; }
.product-box-btn .c3-detail-wishlist:hover { border-color:var(--primary); background:color-mix(in srgb,var(--primary) 7%,white); color:var(--primary); }
.product-box-btn .c3-detail-wishlist.is-added { border-color:#218838; background:color-mix(in srgb,#218838 7%,white); color:#218838; }
.c3-review-stars { display:flex; align-items:center; gap:5px; }
.c3-review-star { display:grid; place-items:center; width:34px; height:34px; padding:0; border:0; background:transparent; color:var(--gray-4); font-size:24px; cursor:pointer; transition:color .15s ease,transform .15s ease; }
.c3-review-star:hover { transform:translateY(-1px); }
.c3-review-star.is-active { color:var(--primary); }
.c3-review-star:focus-visible { outline:2px solid var(--secondary); outline-offset:2px; border-radius:4px; }
.c3-auth-notice { position:fixed; top:24px; right:24px; z-index:100000; display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:12px; width:min(440px,calc(100vw - 32px)); padding:14px; border:1px solid color-mix(in srgb,var(--secondary) 16%,white); border-left:4px solid var(--primary); border-radius:12px; background:var(--white); color:var(--secondary); box-shadow:0 16px 45px rgba(15,50,135,.20); opacity:0; visibility:hidden; transform:translateY(-12px); transition:opacity .2s ease,visibility .2s ease,transform .2s ease; pointer-events:none; }
.c3-auth-notice.is-visible { opacity:1; visibility:visible; transform:translateY(0); pointer-events:auto; }
.c3-auth-notice-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:color-mix(in srgb,var(--primary) 12%,white); color:var(--primary); font-size:20px; }
.c3-auth-notice-content { display:grid; gap:2px; min-width:0; }
.c3-auth-notice-content strong { color:var(--secondary); font-size:14px; line-height:1.3; }
.c3-auth-notice-message { color:var(--text-2); font-size:13px; line-height:1.4; }
.c3-auth-notice-login { min-height:36px; padding:8px 13px; border:0; border-radius:7px; background:var(--primary); color:var(--white); font-size:13px; font-weight:700; white-space:nowrap; cursor:pointer; transition:background-color .18s ease,transform .18s ease; }
.c3-auth-notice-login:hover { background:var(--primary-2); transform:translateY(-1px); }
.c3-auth-notice-login:focus-visible,.c3-auth-notice-close:focus-visible { outline:2px solid var(--secondary); outline-offset:2px; }
.c3-auth-notice-close { display:grid; place-items:center; width:28px; height:28px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--text-2); font-size:23px; line-height:1; cursor:pointer; }
.c3-auth-notice-close:hover { background:color-mix(in srgb,var(--secondary) 7%,white); color:var(--secondary); }
.c3-home-promo-collection[hidden], .c3-home-showcase-section[hidden], .c3-home-showcase > .tf-grid-product-item[hidden] { display:none !important; }
.c3-home-showcase > .tf-grid-product-item { flex-grow:1; min-width:0; max-width:none; }
.c3-home-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; }
.c3-home-product-grid > .card-product { height:100%; min-width:0; }
.c3-home-product-carousel { padding:4px 2px 24px; }
.c3-home-product-carousel .swiper-slide { display:flex; height:auto; }
.c3-home-product-carousel .card-product { width:100%; height:100%; }
.c3-home-product-grid .card-product-wrapper,
.c3-home-product-carousel .card-product-wrapper { aspect-ratio:1/0.87; }
.c3-home-product-grid .card-image,
.c3-home-product-grid .card-image img,
.c3-home-product-carousel .card-image,
.c3-home-product-carousel .card-image img { width:100%; height:100%; }
.c3-home-product-grid .card-image img,
.c3-home-product-carousel .card-image img { object-fit:contain; }
.c3-home-product-grid .name-product,
.c3-home-product-carousel .name-product { display:-webkit-box; min-height:48px; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.c3-home-product-grid .c3-home-price,
.c3-home-product-carousel .c3-home-price { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.c3-home-carousel-shell { position:relative; }
.c3-home-carousel-shell .c3-home-carousel-pagination { margin-top:14px; }
.c3-home-showcase > .c3-home-sale-showcase { flex:0 0 100%; width:100%; order:1; }
.c3-home-sale-navigation { display:flex; align-items:center; gap:8px; }
.c3-home-sale-navigation .nav-swiper { position:static; display:grid; place-items:center; width:36px; height:36px; margin:0; color:var(--secondary); background:#fff; border:1px solid var(--gray-4); border-radius:50%; transform:none; }
.c3-home-sale-navigation .nav-swiper:hover { color:#fff; background:var(--primary); border-color:var(--primary); }
.c3-home-sale-navigation .swiper-button-lock { display:none; }
.c3-home-sale-carousel:not(.swiper-initialized) { overflow-x:auto; scroll-snap-type:x mandatory; }
.c3-home-sale-carousel:not(.swiper-initialized) .swiper-wrapper { gap:24px; }
.c3-home-sale-carousel:not(.swiper-initialized) .swiper-slide { flex:0 0 calc((100% - 72px)/4); scroll-snap-align:start; }
@media (max-width:1199px) { .c3-home-sale-carousel:not(.swiper-initialized) .swiper-slide { flex-basis:calc((100% - 48px)/3); } }
@media (max-width:767px) { .c3-home-sale-carousel:not(.swiper-initialized) .swiper-slide { flex-basis:calc((100% - 24px)/2); } }
@media (max-width:479px) { .c3-home-sale-carousel:not(.swiper-initialized) .swiper-slide { flex-basis:87%; } }
.card-product.c3-home-sale-card { display:flex; flex-direction:column; gap:0; border:1px solid var(--gray-4); border-radius:12px; background:#fff; transition:border-color .2s ease, box-shadow .2s ease; }
.card-product.c3-home-sale-card:hover { border-color:var(--primary); box-shadow:0 8px 24px rgba(15,50,135,.08); }
.c3-home-sale-card .card-product-wrapper { position:relative; aspect-ratio:1; margin:0; overflow:hidden; border-radius:11px 11px 0 0; }
.c3-home-sale-card .product-img img { width:100%; height:100%; padding:16px; object-fit:contain; }
.c3-home-sale-card .card-product-info { padding:16px; }
.c3-home-sale-card .product-tag { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:11px; }
.c3-home-sale-card .name-product { min-height:48px; font-size:14px; line-height:1.6; }
.c3-home-sale-card .price-wrap { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; }
.c3-home-sale-card .new-price { color:var(--primary); font-size:20px; font-weight:600; }
.c3-home-sale-card .old-price { color:var(--text-2); font-size:13px; text-decoration:line-through; }
.c3-home-sale-card .c3-home-sale-badge { position:absolute; top:12px; left:12px; z-index:5; display:flex; flex-direction:row; align-items:center; gap:5px; width:auto; height:auto; min-width:0; padding:8px 10px; border-radius:6px; background:var(--primary); color:#fff; }
.c3-home-sale-badge .small-text { font-size:10px; line-height:1.2; }
.c3-home-sale-badge .title-sidebar-2 { font-size:14px; font-weight:700; line-height:1.2; }
.c3-home-product-empty { grid-column:1/-1; padding:52px 20px; text-align:center; border:1px dashed var(--line); border-radius:8px; color:var(--text-2); }
.s-search-faq.c3-faq-hero { overflow:hidden; background:linear-gradient(135deg,var(--secondary),#173f9f); }
.s-search-faq.c3-faq-hero::after { position:absolute; inset:0; z-index:1; background:linear-gradient(100deg,rgba(5,24,72,.92),rgba(15,50,135,.72)); content:""; }
.s-search-faq.c3-faq-hero .parallax-image { height:390px; opacity:.38; }
.s-search-faq.c3-faq-hero .parallax-image img { width:100%; height:100%; object-fit:cover; }
.s-search-faq.c3-faq-hero .content { gap:25px; text-align:center; }
.s-search-faq.c3-faq-hero .box-title { align-items:center; gap:10px; text-align:center; }
.s-search-faq.c3-faq-hero .box-title h2 { margin:0; font-size:clamp(32px,4vw,48px); line-height:1.12; }
.s-search-faq.c3-faq-hero .box-title p { margin:0; color:rgba(255,255,255,.78); font-size:16px; }
.c3-faq-hero-badge { width:max-content; margin:0 auto 3px; padding:7px 11px; border:1px solid rgba(255,255,255,.3); border-radius:999px; background:rgba(255,255,255,.1); color:var(--white); font-size:10px; line-height:1; font-weight:800; letter-spacing:.14em; }
.s-search-faq.c3-faq-hero .form-search-3 { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:7px; max-width:650px; padding:7px; border:1px solid rgba(255,255,255,.26); border-radius:12px; background:var(--white); box-shadow:0 18px 45px rgba(3,18,57,.24); }
.s-search-faq.c3-faq-hero .form-search-3 fieldset { width:100%; min-width:0; }
.s-search-faq.c3-faq-hero .form-search-3 input { width:100%; height:48px; padding:0 10px 0 17px; border:0; background:transparent; color:var(--secondary); font-size:15px; line-height:48px; text-align:left; }
.s-search-faq.c3-faq-hero .form-search-3 input::placeholder { color:var(--text-3); opacity:1; }
.s-search-faq.c3-faq-hero .form-search-3 input:focus { outline:none; }
.s-search-faq.c3-faq-hero .form-search-3 .button-submit { position:static; display:inline-flex; align-items:center; justify-content:center; gap:7px; min-width:96px; width:auto; height:48px; padding:0 17px; border:0; border-radius:9px; background:var(--primary); color:var(--white); font-size:13px; line-height:1; font-weight:800; transform:none; transition:background-color .18s ease,transform .18s ease; }
.s-search-faq.c3-faq-hero .form-search-3 .button-submit i { display:block; margin:0; color:var(--white); font-size:17px; line-height:1; }
.s-search-faq.c3-faq-hero .form-search-3 .button-submit:hover { background:var(--primary-2); transform:translateY(-1px); }
.s-search-faq.c3-faq-hero .form-search-3 .button-submit:hover i { color:var(--white); }
.s-faq.c3-faq-section { display:block; width:100%; }
.c3-faq-layout { display:grid; grid-template-columns:minmax(240px,300px) minmax(0,1fr); gap:34px; align-items:start; width:100%; }
.c3-faq-sidebar { position:sticky; top:112px; display:grid; gap:18px; min-width:0; }
.c3-faq-sidebar-heading { display:grid; gap:7px; padding:0 3px; text-align:left; }
.c3-faq-sidebar-heading > span,.c3-faq-content-heading > span { color:var(--primary); font-size:10px; line-height:1.2; font-weight:800; letter-spacing:.13em; }
.c3-faq-sidebar-heading h4 { margin:0; color:var(--secondary); font-size:20px; line-height:1.35; }
.c3-faq-category-list { display:grid; gap:6px; padding:8px; border:1px solid var(--gray-4); border-radius:12px; background:var(--white); box-shadow:0 10px 30px rgba(15,50,135,.06); }
.c3-faq-category-list button { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:48px; padding:9px 11px; border:0; border-radius:8px; background:transparent; color:var(--secondary); text-align:left; cursor:pointer; transition:background-color .18s ease,color .18s ease,transform .18s ease; }
.c3-faq-category-list button > span { display:flex; align-items:center; gap:10px; min-width:0; font-size:14px; font-weight:700; }
.c3-faq-category-list button i { display:grid; flex:0 0 29px; place-items:center; width:29px; height:29px; border-radius:7px; background:color-mix(in srgb,var(--secondary) 7%,var(--white)); color:var(--secondary); font-size:10px; line-height:1; font-style:normal; letter-spacing:.03em; }
.c3-faq-category-list button b { display:grid; flex:0 0 26px; place-items:center; min-width:26px; height:24px; padding:0 5px; border-radius:999px; background:var(--gray-6); color:var(--text-2); font-size:11px; line-height:1; }
.c3-faq-category-list button:hover { background:color-mix(in srgb,var(--primary) 6%,var(--white)); color:var(--primary); transform:translateX(2px); }
.c3-faq-category-list button.is-active { background:var(--secondary); color:var(--white); }
.c3-faq-category-list button.is-active i { background:rgba(255,255,255,.14); color:var(--white); }
.c3-faq-category-list button.is-active b { background:var(--primary); color:var(--white); }
.c3-faq-category-list button:focus-visible,.c3-faq-question:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
.c3-faq-contact-card { display:grid; gap:9px; padding:20px; border-radius:12px; background:linear-gradient(145deg,var(--secondary),#173f9f); color:var(--white); text-align:left; box-shadow:0 14px 34px rgba(15,50,135,.16); }
.c3-faq-contact-icon { display:grid; place-items:center; width:38px; height:38px; margin-bottom:3px; border-radius:50%; background:var(--primary); color:var(--white); font-size:20px; font-weight:800; }
.c3-faq-contact-card strong { color:var(--white); font-size:15px; line-height:1.4; }
.c3-faq-contact-card p { margin:0; color:rgba(255,255,255,.72); font-size:13px; line-height:1.55; }
.c3-faq-contact-card a { display:flex; align-items:center; justify-content:space-between; margin-top:5px; padding-top:13px; border-top:1px solid rgba(255,255,255,.18); color:var(--white); font-size:13px; font-weight:700; }
.c3-faq-contact-card a:hover { color:var(--primary); }
.c3-faq-content { display:grid; gap:28px; min-width:0; }
.c3-faq-content-heading { display:grid; gap:7px; padding-bottom:22px; border-bottom:1px solid var(--gray-4); text-align:left; }
.c3-faq-content-heading h3 { margin:0; color:var(--secondary); font-size:clamp(26px,3vw,36px); line-height:1.2; }
.c3-faq-content-heading p { margin:2px 0 0; color:var(--text-2); font-size:13px; }
.c3-faq-groups { display:grid; gap:34px; }
.c3-faq-group { display:grid; gap:16px; scroll-margin-top:120px; }
.c3-faq-group-heading { display:flex; align-items:center; gap:12px; text-align:left; }
.c3-faq-group-heading > span { display:grid; flex:0 0 42px; place-items:center; width:42px; height:42px; border-radius:10px; background:color-mix(in srgb,var(--primary) 11%,var(--white)); color:var(--primary); font-size:12px; font-weight:800; }
.c3-faq-group-heading div { display:grid; gap:2px; }
.c3-faq-group-heading h4 { margin:0; color:var(--secondary); font-size:19px; line-height:1.3; }
.c3-faq-group-heading p { margin:0; color:var(--text-3); font-size:12px; }
.c3-faq-list { display:grid; gap:10px; }
.c3-faq-card { overflow:hidden; border:1px solid var(--gray-4); border-radius:11px; background:var(--white); transition:border-color .18s ease,box-shadow .18s ease; }
.c3-faq-card:hover { border-color:color-mix(in srgb,var(--secondary) 26%,var(--gray-4)); }
.c3-faq-card.is-open { border-color:color-mix(in srgb,var(--primary) 56%,var(--gray-4)); box-shadow:0 10px 26px rgba(15,50,135,.08); }
.c3-faq-question { display:grid; grid-template-columns:38px minmax(0,1fr) 34px; align-items:center; gap:12px; width:100%; min-height:68px; padding:13px 17px; border:0; background:transparent; color:var(--secondary); text-align:left; cursor:pointer; }
.c3-faq-question-number { display:grid; place-items:center; width:34px; height:34px; border-radius:8px; background:var(--gray-6); color:var(--text-2); font-size:11px; font-weight:800; }
.c3-faq-question-text { font-size:15px; line-height:1.45; font-weight:700; }
.c3-faq-toggle { position:relative; display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:color-mix(in srgb,var(--secondary) 7%,var(--white)); }
.c3-faq-toggle::before,.c3-faq-toggle::after { position:absolute; width:12px; height:2px; border-radius:2px; background:var(--secondary); content:""; transition:transform .18s ease,background-color .18s ease; }
.c3-faq-toggle::after { transform:rotate(90deg); }
.c3-faq-question[aria-expanded="true"] { color:var(--primary); }
.c3-faq-question[aria-expanded="true"] .c3-faq-question-number,.c3-faq-question[aria-expanded="true"] .c3-faq-toggle { background:var(--primary); color:var(--white); }
.c3-faq-question[aria-expanded="true"] .c3-faq-toggle::before,.c3-faq-question[aria-expanded="true"] .c3-faq-toggle::after { background:var(--white); }
.c3-faq-question[aria-expanded="true"] .c3-faq-toggle::after { transform:rotate(0); }
.c3-faq-answer { padding:0 20px 20px 67px; }
.c3-faq-answer > div { padding:17px 19px; border-left:3px solid var(--primary); border-radius:0 8px 8px 0; background:color-mix(in srgb,var(--secondary) 4%,var(--white)); color:var(--text-2); font-size:14px; line-height:1.75; text-align:left; overflow-wrap:anywhere; }
.c3-faq-empty { padding:50px 24px; border:1px dashed var(--gray-4); border-radius:12px; background:var(--gray-6); text-align:center; }
.c3-faq-empty > span { display:grid; place-items:center; width:48px; height:48px; margin:0 auto 14px; border-radius:50%; background:var(--white); color:var(--primary); font-size:22px; font-weight:800; }
.c3-faq-empty h4 { margin:0 0 7px; color:var(--secondary); }
.c3-faq-empty p { margin:0; color:var(--text-2); }
.c3-faq-group[hidden],.c3-faq-card[hidden],.c3-faq-empty[hidden] { display:none !important; }
.ft-body-center .notice .main-title { display:none !important; }
.ft-body-bottom .ft-menu-list-2 { display:none !important; }
.nocopy .c3-footer-credit { color:inherit; font-weight:600; white-space:nowrap; text-decoration:underline; text-underline-offset:3px; }
.nocopy .c3-footer-credit:hover { text-decoration-thickness:2px; }
.nocopy .c3-footer-credit:focus-visible { outline:2px solid currentColor; outline-offset:3px; border-radius:2px; }
.c3-social-list { flex-wrap:wrap; gap:10px; }
.c3-social-list[hidden] { display:none !important; }
.c3-social-list .c3-social-link { display:flex; align-items:center; justify-content:center; min-width:36px; min-height:36px; }
.c3-social-link svg { display:block; width:18px; height:18px; fill:currentColor; }
.c3-social-link:focus-visible { outline:2px solid currentColor; outline-offset:3px; border-radius:50%; }
.c3-content-page .container { max-width:1100px; }
.c3-content-title { margin:0 0 30px; color:var(--secondary); font-size:clamp(25px,3vw,38px); font-weight:650; line-height:1.3; }
.c3-content-body { color:var(--text-2); font-size:16px; line-height:1.85; overflow-wrap:anywhere; }
.c3-content-body p, .c3-content-body ul, .c3-content-body ol { margin:0 0 18px; }
.c3-content-body ul { padding-left:24px; list-style:disc; }
.c3-content-body ol { padding-left:24px; list-style:decimal; }
.c3-content-body :is(h1,h2,h3,h4,h5,h6) { margin:28px 0 14px; color:var(--secondary); font-weight:600; line-height:1.4; }
.c3-content-body a { color:var(--primary); text-decoration:underline; text-underline-offset:3px; }
.c3-content-body table { display:block; width:100%; margin:20px 0; overflow-x:auto; border-collapse:collapse; }
.c3-content-body :is(th,td) { padding:10px 14px; border:1px solid var(--gray-4); text-align:left; }
.c3-content-body img { max-width:100%; height:auto; }
.c3-footer-mail-icon { display:block; width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
@media (max-width: 1199px) { .c3-home-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; } }
@media (max-width: 991px) {
    .c3-faq-layout { grid-template-columns:1fr; gap:28px; }
    .c3-faq-sidebar { position:static; }
    .c3-faq-category-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .c3-faq-contact-card { display:none; }
}
@media (max-width: 1199px) {
    body:has(.tf-toolbar-bottom) { padding-bottom:calc(68px + env(safe-area-inset-bottom)); }
    .tf-toolbar-bottom { align-items:stretch; min-height:68px; padding:8px max(4px,env(safe-area-inset-left)) calc(8px + env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-right)); }
    .tf-toolbar-bottom .toolbar-item { flex:1 1 0; width:20%; min-width:0; }
    .tf-toolbar-bottom .toolbar-item > a { min-height:48px; height:100%; padding:0 3px; gap:4px; }
    .tf-toolbar-bottom .toolbar-icon { display:grid; place-items:center; flex:0 0 22px; width:22px !important; height:22px !important; }
    .tf-toolbar-bottom .toolbar-icon > svg { display:block; width:20px; height:20px; }
    .tf-toolbar-bottom .toolbar-label { display:block; width:100%; overflow:hidden; color:var(--secondary); font-size:11px !important; line-height:15px !important; font-weight:600; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
    .tf-toolbar-bottom .toolbar-item > a:hover .toolbar-label { color:var(--primary); }
}
@media (max-width: 767px) {
    .c3-bank-account { grid-template-columns:1fr; }
    .c3-bank-account > div, .c3-bank-account > div:nth-child(odd), .c3-bank-account > div:nth-last-child(-n+2) { border-right:0; border-bottom:1px solid #eceae5; }
    .c3-bank-account > div:last-child { border-bottom:0; }
    .c3-mail-order-box, .c3-transfer-contact { align-items:flex-start; flex-direction:column; }
    .c3-mail-order-box .tf-btn { width:100%; }
    .s-search-faq.c3-faq-hero .parallax-image { height:330px; }
    .s-search-faq.c3-faq-hero .box-title h2 { font-size:30px; }
    .s-search-faq.c3-faq-hero .box-title p { font-size:14px; }
    .s-search-faq.c3-faq-hero .form-search-3 .button-submit { min-width:48px; width:48px; padding:0; }
    .s-search-faq.c3-faq-hero .form-search-3 .button-submit span { display:none; }
    .c3-faq-category-list { display:flex; padding:7px; overflow-x:auto; scroll-snap-type:x proximity; }
    .c3-faq-category-list button { flex:0 0 auto; width:auto; scroll-snap-align:start; }
    .c3-faq-question { grid-template-columns:32px minmax(0,1fr) 30px; gap:9px; min-height:62px; padding:12px; }
    .c3-faq-question-number { width:30px; height:30px; }
    .c3-faq-question-text { font-size:14px; }
    .c3-faq-toggle { width:28px; height:28px; }
    .c3-faq-answer { padding:0 12px 14px; }
    .c3-faq-answer > div { padding:14px 15px; }
}
@media (max-width: 767px) { .hero-c3 { min-height:380px; } .hero-c3 .content { padding:30px; } .hero-c3 .content h1 { font-size:36px; } .c3-home-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; } .c3-checkout-fields,.c3-corporate-fields,.c3-saved-address-list,.c3-new-address-options,.c3-account-corporate-fields,.c3-payment-options { grid-template-columns:1fr; } .c3-moka-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .c3-checkout-gate-actions .tf-btn { width:100%; } }
@media (max-width: 479px) { .c3-home-product-grid { grid-template-columns:1fr; } .c3-auth-notice { top:16px; right:16px; grid-template-columns:auto minmax(0,1fr) auto; } .c3-auth-notice-login { grid-column:2/4; width:max-content; } .c3-auth-notice-close { grid-column:3; grid-row:1; } }

/* About page */
.c3-about-breadcrumb-soft { padding-top:24px; }
.c3-about-breadcrumb-soft .breakcrumbs { margin:0; }
.c3-about-breadcrumb-soft .breakcrumbs li:last-child span { color:var(--secondary); font-weight:700; }
.c3-about-section { padding-top:48px; padding-bottom:86px; }
.c3-about-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); align-items:center; gap:clamp(40px,6vw,86px); }
.c3-about-media { position:relative; min-width:0; margin:0; overflow:hidden; border-radius:14px; background:#f3f5f8; box-shadow:0 18px 45px rgba(15,50,135,.1); }
.c3-about-media::after { position:absolute; inset:0; border:1px solid rgba(15,50,135,.08); border-radius:inherit; pointer-events:none; content:""; }
.c3-about-image { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.c3-about-copy { max-width:590px; }
.c3-about-kicker { display:inline-flex; width:max-content; align-items:center; gap:8px; margin-bottom:18px; color:var(--primary); font-size:10px; line-height:1; font-weight:800; letter-spacing:.14em; }
.c3-about-kicker::before { width:24px; height:2px; border-radius:2px; background:var(--primary); content:""; }
.c3-about-title { margin:0 0 22px; color:var(--secondary); font-size:clamp(32px,3.5vw,48px); line-height:1.14; letter-spacing:-.025em; }
.c3-about-body { color:var(--text-2); font-size:16px; line-height:1.8; }
.c3-about-body > :first-child { margin-top:0; }
.c3-about-body > :last-child { margin-bottom:0; }
.c3-about-body p + p { margin-top:12px; }
.c3-about-body h2,.c3-about-body h3,.c3-about-body h4 { margin:22px 0 10px; color:var(--secondary); }
.c3-about-body ul,.c3-about-body ol { margin:14px 0; padding-left:22px; }
.c3-about-body a { color:var(--primary); text-decoration:underline; }
@media (max-width:991px) {
    .c3-about-grid { gap:36px; }
}
@media (max-width:767px) {
    .c3-about-breadcrumb-soft { padding-top:18px; }
    .c3-about-section { padding-top:32px; padding-bottom:64px; }
    .c3-about-grid { grid-template-columns:1fr; gap:30px; }
    .c3-about-media { border-radius:10px; }
    .c3-about-copy { max-width:none; }
    .c3-about-kicker { margin-bottom:14px; }
    .c3-about-title { margin-bottom:16px; font-size:31px; }
    .c3-about-body { font-size:15px; line-height:1.75; }
}

/* Contact page */
.c3-contact-breadcrumb { padding-top:24px; }
.c3-contact-breadcrumb .breakcrumbs { margin:0; }
.c3-contact-breadcrumb .breakcrumbs li:last-child span { color:var(--secondary); font-weight:700; }
.c3-contact-section { padding-top:46px; }
.c3-contact-heading { display:grid; max-width:750px; gap:10px; margin-bottom:38px; }
.c3-contact-kicker,.c3-contact-form-head > span,.c3-contact-info-head > span { color:var(--primary); font-size:10px; line-height:1; font-weight:800; letter-spacing:.14em; }
.c3-contact-heading h1 { margin:0; color:var(--secondary); font-size:clamp(34px,4vw,50px); line-height:1.12; letter-spacing:-.025em; }
.c3-contact-heading p { max-width:660px; margin:2px 0 0; color:var(--text-2); font-size:15px; line-height:1.75; }
.c3-contact-grid { display:grid; grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr); overflow:hidden; border:1px solid #e2e6ed; border-radius:14px; background:var(--white); box-shadow:0 18px 48px rgba(15,50,135,.09); }
.c3-contact-info { display:flex; min-width:0; flex-direction:column; justify-content:space-between; gap:38px; padding:clamp(32px,4vw,52px); background:linear-gradient(145deg,var(--secondary),#173f9f); color:var(--white); }
.c3-contact-info-head { display:grid; gap:12px; }
.c3-contact-info-head > span { color:#ff9d4c; }
.c3-contact-info-head h2 { max-width:390px; margin:0; color:var(--white); font-size:clamp(25px,2.6vw,34px); line-height:1.2; }
.c3-contact-info-head p { max-width:430px; margin:0; color:rgba(255,255,255,.72); font-size:14px; line-height:1.7; }
.c3-contact-list { display:grid; gap:23px; margin:0; padding:0; }
.c3-contact-list li { display:grid; grid-template-columns:42px minmax(0,1fr); align-items:start; gap:14px; }
.c3-contact-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:10px; background:rgba(255,255,255,.11); color:#ff9d4c; font-size:19px; }
.c3-contact-list li > div { display:grid; min-width:0; gap:4px; }
.c3-contact-list small { color:rgba(255,255,255,.58); font-size:10px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.c3-contact-list a,.c3-contact-list li > div > span { color:var(--white); font-size:14px; line-height:1.55; overflow-wrap:anywhere; }
.c3-contact-list a:hover { color:#ff9d4c; }
.c3-contact-form-card { padding:clamp(32px,4vw,52px); }
.c3-contact-form-head { display:grid; gap:10px; margin-bottom:28px; }
.c3-contact-form-head h2 { margin:0; color:var(--secondary); font-size:clamp(25px,2.7vw,36px); line-height:1.2; }
.c3-contact-form-head p { margin:0; color:var(--text-2); font-size:14px; line-height:1.6; }
.c3-contact-form { display:grid; gap:20px; }
.c3-contact-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.c3-contact-form fieldset { display:grid; min-width:0; gap:8px; }
.c3-contact-form label { color:var(--secondary); font-size:12px; font-weight:700; }
.c3-contact-form input,.c3-contact-form textarea { width:100%; border:1px solid #dce1e9; border-radius:8px; background:#fafbfc; color:var(--secondary); transition:border-color .18s ease,box-shadow .18s ease,background .18s ease; }
.c3-contact-form input { height:48px; padding:0 15px; }
.c3-contact-form textarea { min-height:150px; padding:13px 15px; resize:vertical; }
.c3-contact-form input:focus,.c3-contact-form textarea:focus { border-color:var(--primary); outline:0; background:var(--white); box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent); }
.c3-contact-form input::placeholder,.c3-contact-form textarea::placeholder { color:#9aa3b2; }
.c3-contact-submit { display:flex; align-items:center; gap:16px; }
.c3-contact-trap { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; clip-path:inset(50%) !important; }
.c3-contact-check { padding:16px; background:#f6f8fc; border:1px solid #dce1e9; border-radius:8px; }
.c3-contact-check [data-contact-question] { margin-left:6px; font-size:16px; font-weight:700; white-space:nowrap; }
.c3-contact-check-controls { display:flex; align-items:center; gap:12px; }
.c3-contact-check-controls input { max-width:140px; background:#fff; }
.c3-contact-check-controls .c3-contact-refresh { flex:0 0 auto; padding:8px 0; color:var(--secondary); border:0; border-bottom:1px solid currentColor; background:transparent; font-size:12px; font-weight:600; }
.c3-contact-refresh:disabled { opacity:.6; cursor:wait; }
.c3-contact-check small { color:var(--text-2); font-size:12px; }
.c3-contact-submit .tf-btn { display:inline-flex; width:auto; min-width:190px; min-height:48px; align-items:center; justify-content:center; gap:10px; border-radius:8px; }
.c3-contact-submit .tf-btn:disabled { cursor:wait; opacity:.65; }
.c3-contact-feedback { margin:0; color:#218838; font-size:13px; line-height:1.5; }
.c3-contact-feedback.is-error { color:#c0392b; }
@media (max-width:991px) {
    .c3-contact-grid { grid-template-columns:1fr; }
    .c3-contact-info { gap:30px; }
    .c3-contact-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px) {
    .c3-contact-breadcrumb { padding-top:18px; }
    .c3-contact-section { padding-top:32px; }
    .c3-contact-heading { margin-bottom:27px; }
    .c3-contact-heading h1 { font-size:31px; }
    .c3-contact-grid { border-radius:10px; }
    .c3-contact-info,.c3-contact-form-card { padding:27px 22px; }
    .c3-contact-list,.c3-contact-fields { grid-template-columns:1fr; }
    .c3-contact-submit { align-items:stretch; flex-direction:column; }
    .c3-contact-submit .tf-btn { width:100%; }
}
