
:root{
  --one-bg-primary:#111110;
  --one-bg-secondary:#1A1918;
  --one-bg-tertiary:#242320;
  --one-bg-elevated:#2A2926;
  --one-text-primary:#FAF9F5;
  --one-text-secondary:#B0AEA5;
  --one-text-tertiary:#9C9A92;
  --one-text-muted:#6B6960;
  --one-accent-red:#C8232D;
  --one-accent-red-hover:#A81D25;
  --one-accent-gold:#D4AF69;
  --one-accent-gold-dim:#A8894F;
  --one-border-primary:#3D3D3A;
  --one-border-secondary:#2A2926;
  --one-border-subtle:#1F1E1D;
  --one-success:#4A9E6B;
  --one-star:#D4AF69;
  --one-radius-sm:6px;
  --one-radius-md:10px;
  --one-radius-lg:14px;
  --font-display:'Covered By Your Grace',cursive;
  --font-body:'Inter',-apple-system,sans-serif;
}

html{scroll-behavior:smooth}

/* module: fadein */
.one-fadein{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;}
.one-fadein.is-visible{opacity:1;transform:translateY(0);}

/* module: lazy */
.one-lazy{opacity:0;transition:opacity .4s ease;}
.one-lazy.is-loaded{opacity:1;}


/* module: typewriter (mobile only) */
.one-typewriter-container{min-height:320px;padding:80px 15px;text-align:center;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;z-index:-1!important;}
.one-typewriter-h1{
    font-size:30px;
    color:#000;
    display:block;
    font-weight:bolder;
    text-shadow:
          -2px -2px 0 rgba(255,255,255,0.4),
           0px -2px 0 rgba(255,255,255,0.4),
           2px -2px 0 rgba(255,255,255,0.4),
          -2px  0px 0 rgba(255,255,255,0.4),
           2px  0px 0 rgba(255,255,255,0.4),
          -2px  2px 0 rgba(255,255,255,0.4),
           0px  2px 0 rgba(255,255,255,0.4),
           2px  2px 0 rgba(255,255,255,0.4);
}
.one-typewriter-h1-sub{display:block;padding:10px 40px;font-size:20px;color:#fff;text-align:center;min-height:70px;}
.one-typewriter-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
.one-typewriter-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}


/* mobile: category tiles */
.one-home-mobile-list-container{background:rgba(0,0,0,0.9) !important;padding:20px 25px 60px 25px}
.one-home-mobile-list-title{text-align:center;font-size:32px;color:#ffffff;font-family:var(--font-display);margin-top:40px}
.one-home-mobile-list-subtitle{color:#ccc;font-size:14px;text-align:center;margin-bottom:15px;}
.one-home-mobile-node{padding:3px;}
.one-home-mobile-node img{border:1px solid rgba(19,21,23,0.9);border-radius:5px;}

/* module: marquee (mobile only) */
.one-marquee-container-fluid{padding:50px 0;background:rgba(11,16,21,0.9);}
.one-marquee-container{overflow:hidden;position:relative;text-align:center;}
.one-marquee-title{text-align:center;margin-bottom:0px}
.one-marquee-title a{font-size:36px;color:#fff;font-family:var(--font-display);}
.one-marquee-subtitle{font-size:14px;color:#ccc;padding:0px 15px 10px 15px;text-align:center;}
.one-marquee-btn{margin-bottom:30px;display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:14px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
.one-marquee-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}
.one-marquee-track{display:flex;gap:14px;will-change:transform;cursor:grab;user-select:none;}
.one-marquee-track.is-dragging{cursor:grabbing;}
.one-marquee-card{flex-shrink:0;width:200px;border:0}
.one-marquee-figure{margin-bottom:0}
.one-marquee-body{padding-top:6px;}
.one-marquee-item-title a{color:#111;font-size:1.2em}
.one-marquee-item-price{font-size:1.15em;font-weight:bolder;color:#198754}
.one-marquee-item-price-was{color:#222;font-size:12px;}
.one-marquee-badge{background-color:#931717;letter-spacing:1px;padding:3px 12px;border-radius:20px;color:#f9d7d7;font-size:10px;width:-moz-fit-content;width:fit-content;position:absolute;top:15px;left:15px;}
.one-marquee-fade-l{position:absolute;left:0;top:0;bottom:0;width:30px;}
.one-marquee-fade-r{position:absolute;right:0;top:0;bottom:0;width:30px;}



/* reviews */
.one-home-reviews{background-attachment:fixed;background-position:center center;background-size:cover;background-color:rgba(24,28,33,0.5) !important;padding:70px 0;}
.one-home-reviews-data{min-height:180px;}
.one-home-reviews-h3{font-weight:bolder;color:#eee;font-size:32px;font-family:var(--font-display);font-display:optional;}
.one-home-reviews-h6{margin-bottom:10px;color:#ffe083}
.one-home-reviews-container{max-width:75%;margin:auto;}
.one-home-reviews-item{color:#fcfcfc;text-align:center;min-height:300px;margin-top:40px}
.one-home-reviews-item strong{color: var(--one-accent-gold);}
.one-home-reviews-star{font-size:2em}
.one-home-reviews-content{color:#eee;font-size:18px;}
.one-reviews-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
.one-reviews-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}



/* blog */
.one-home-blog-fluid{background:#060606 !important;}
.one-home-blog-container{padding:60px 15px}
.one-home-blog-title{color:#eee;font-family:var(--font-display);font-display:optional;font-size:32px;font-weight:bolder;}
.one-home-blog-subtitle{max-width:900px;margin:auto;color:#ccc;margin-bottom:30px;}
.one-blogs-related-block {border-radius: var(--one-radius-lg); overflow: hidden; border: 1px solid var(--one-border-secondary); background: var(--one-bg-secondary); cursor: pointer; transition: border-color 0.2s, transform 0.25s; display: flex; flex-direction: column; }
.one-blogs-related-block:hover{ border-color:var(--one-border-primary); transform:translateY(-5px); }
.one-blogs-related-h2{font-family:var(--font-display);color:var(--one-text-primary);font-size:2.25em;padding:10px 0}
.one-blogs-related-figure{margin-bottom:0}
.one-blogs-related-figure img{width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s;}
.one-blogs-related-figure img::hover{ transform: scale(1.05); }
.one-blogs-related-tag { font-size: 11px; font-weight: 600; color: var(--one-accent-gold); text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 8px; }
.one-blogs-related-title { font-size: 17px; font-weight: 600; line-height: 1.4; margin-bottom: 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.one-blogs-related-title a{color:var(--one-text-primary);}
.one-blogs-related-title a:hover{color:var(--one-accent-gold);}
.one-blogs-related-content { font-size:13px; color: var(--one-text-secondary); line-height: 1.55; flex: 1; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow:hidden;margin-bottom:16px; }
.one-blogs-related-datetime { display: flex; align-items: center; gap: 12px; font-size:12px; color: var(--one-text-muted); padding-top: 14px; border-top: 1px solid var(--one-border-subtle); }
.one-blogs-related-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
.one-blogs-related-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}



/* FAQs */
.one-home-accordio-fluid{background:rgba(12,15,18,0.9);}
.one-home-accordio{padding:60px 15px;}
.one-home-accordio-title{font-weight:bolder;color:#eee;font-family:var(--font-display);font-display:optional;font-size:32px;margin-bottom:30px;}
.one-home-accordio-item{background:rgba(24,28,33,0.9) !important;color:#eee;padding:12px 15px;margin-top:10px;border-radius:5px;cursor:pointer;font-size:15px}
.one-home-accordio-item:hover{color:#fff}
.one-home-accordio-body{background:#000 !important;color:#ccc;padding:25px;}
.one-home-accordio-body a{color:#ccc;}


/* subscribe */
.one-home-subscribe{background-attachment:fixed;background-position:center center;background-size:cover;background-color:rgba(24,28,33,0.5) !important;padding:80px 15px;}
.one-home-subscribe-h1{font-family:Impact;font-size:3.5em !important;}
.one-home-subscribe-h3{color:#eee;font-family:var(--font-display);font-display:optional;font-size:1.5em;}
.one-home-subscribe-h5{font-size:1em;max-width:85%;margin:auto;}
.one-home-subscribe-body{max-width:760px;margin:auto;}
.one-home-subscribe-body input::placeholder{color:#ddd;font-weight:normal;font-size:0.8em}
.one-home-subscribe-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
.one-home-subscribe-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}


/* about-us */
#jumbotron-block-two{background:#060606 !important;}
.one-home-jumbotron-container{padding:80px 10px;}
.one-home-jumbotron-img{padding-top:0px;}
.one-home-jumbotron-img img{max-width:90%;}
.one-home-jumbotron-title{color:#fff;font-family:var(--font-display);font-display:optional;font-size:36px;font-weight:bolder;text-align:center;}
.one-home-jumbotron-subtitle{text-align:left;color:#b8bdc3;}
.one-home-jumbotron-btn{float:right;}
.one-home-jumbotron-subtitle p{margin-bottom:26px!important;font-size:15px;line-height:1.5}
.one-home-jumbotron-subtitle a{color:var(--one-accent-gold);}
.one-home-jumbotron-subtitle a:hover{color:var(--one-accent-gold-dim);text-decoration:underline;}


/* desktop & pad device */
@media(min-width:768px) {
    .one-typewriter-container{min-height:550px;padding:180px 15px 130px 15px;text-align:center;background-size:cover!important;background-position:bottom!important;background-repeat:no-repeat!important;z-index:-1!important;}
    .one-typewriter-h1{
        font-size:3.8rem;
        color:#000;
        display:block;
        font-weight:900;
        text-shadow:
          -3px -3px 0 rgba(255,255,255,0.4),
           0px -3px 0 rgba(255,255,255,0.4),
           3px -3px 0 rgba(255,255,255,0.4),
          -3px  0px 0 rgba(255,255,255,0.4),
           3px  0px 0 rgba(255,255,255,0.4),
          -3px  3px 0 rgba(255,255,255,0.4),
           0px  3px 0 rgba(255,255,255,0.4),
           3px  3px 0 rgba(255,255,255,0.4);
    }

    .one-typewriter-h1-sub{
        display:block;
        padding:10px 40px;
        font-size:32px;
        color:#fff;
        text-align:center;
        min-height:70px;
        text-shadow:
          -2px -2px 0 rgba(0,0,0,0.4),
           0px -2px 0 rgba(0,0,0,0.4),
           2px -2px 0 rgba(0,0,0,0.4),
          -2px  0px 0 rgba(0,0,0,0.4),
           2px  2px 0 rgba(0,0,0,0.4),
          -2px  2px 0 rgba(0,0,0,0.4),
           0px  2px 0 rgba(0,0,0,0.4),
           2px  2px 0 rgba(0,0,0,0.4);
    }

    .one-typewriter-btn-container{display:flex;gap:16px;margin-top:28px;justify-content:center;text-align:center;}
    .one-typewriter-btn{display:inline-flex;align-items:center;gap:8px;padding:15px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:20px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
    .one-typewriter-btn:hover{background:var(--one-accent-red-hover);transform:translateY(-1px)}
    .one-typewriter-btn2{display:inline-flex;align-items:center;gap:8px;padding:15px 40px;background:var(--one-bg-secondary);color:var(--one-text-primary);font-family:var(--font-body);font-size:20px;font-weight:500;border:1px solid var(--one-border-primary);border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s}
    .one-typewriter-btn2:hover{border-color:var(--one-accent-gold);color:var(--one-accent-gold)}



    /* PC: category block with images */
    .one-home-block-fluid{background:rgba(14,17,20,0.9) !important;padding:100px 0;}
    .one-home-block-container{text-align:center;}
    .one-home-block-title{color:#fff;font-weight:bolder;font-family:var(--font-display);font-display:optional;font-size:2.75em;}
    .one-home-block-subtitle{max-width:900px;margin:auto;color:#ccc;}
    .one-home-block-list{margin-top:40px;}
    .one-home-block-node{padding:6px !important;}
    .one-home-block-node img{border-radius:8px;}


    /* PC: product grid (Katana/Ninjato/Wakizashi/Tachi/Armor) */
    .one-home-items-block{background:rgba(24,28,33,0.9) !important;padding-bottom:50px;}
    .one-home-items-title{font-size:2.75em;}
    .one-home-items-title a{color:#eee;font-family:var(--font-display);font-display:optional;}
    .one-home-items-block-card{border:0;}
    .one-home-items-block-col{padding:4px;}
    .one-home-items-block-title{color:#444;font-weight:400;}
    .one-home-items-block-price{color:#E32E2E;font-size:1.25em;}


    /* PC: on-sale product grid */
    .one-home-onsale-block{background:rgba(24,28,33,0.9) !important;padding-top:100px!important;padding-bottom:100px;}
    .one-home-onsale-title{font-size:2.75em;margin-bottom:10px!important;font-weight:bolder}
    .one-home-onsale-title a{color:#eee;font-family:var(--font-display);}
    .one-home-onsale-subtitle{color:#ccc;font-size:15px;margin-bottom:40px}
    .one-home-onsale-block-card{border:0;}
    .one-home-onsale-block-body{padding:10px 8px 25px 8px}
    .one-home-onsale-block-title{color:#444;font-weight:400;}
    .one-home-onsale-block-price{color:#000;font-size:18px;}
    .one-home-onsale-block-was{color:#E32E2E;font-size:12px;}
    .one-home-onsale-shipping-tips{color:#009353;font-size:0.85em;margin-bottom:3px;}
    .one-home-onsale-block-col{padding:4px;}
    .one-home-onsale-block figure span{position:absolute;top:15px;left:15px;background-color:#B90000;padding:2px 12px;border-radius:20px;color:#fff;font-size:11px;}
    .one-home-onsale-btn-container{text-align:center;margin-top:15px}
    .one-home-onsale-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
    .one-home-onsale-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}



    /* reviews */
    .one-home-reviews{background-attachment:fixed;background-position:center center;background-size:cover;background-color:rgba(24,28,33,0.5) !important;padding:100px 0;}
    .one-home-reviews-data{min-height:180px;}
    .one-home-reviews-h3{font-weight:bolder;color:#fff;font-size:3rem;font-family:var(--font-display);font-display:optional;}
    .one-home-reviews-h6{margin-bottom:10px;color:#ddd;font-size:13px}
    .one-home-reviews-container{max-width:980px;margin:auto;max-width:600px;padding-top:40px}
    .one-home-reviews-item{color:#fcfcfc;text-align:center;min-height:300px;}
    .one-home-reviews-item strong{color: var(--one-accent-gold);}
    .one-home-reviews-star{font-size:2em}
    .one-home-reviews-content{color:#eee;font-size:24px;}
    .one-reviews-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
    .one-reviews-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}



    /* blog */
    .one-home-blog-fluid{background:#060606 !important;}
    .one-home-blog-container{padding:60px 15px}
    .one-home-blog-title{color:#eee;font-family:var(--font-display);font-display:optional;font-size:44px;font-weight:bolder;}
    .one-home-blog-subtitle{max-width:900px;margin:auto;color:#ccc;margin-bottom:30px;}
    .one-blogs-related-block {border-radius: var(--one-radius-lg); overflow: hidden; border: 1px solid var(--one-border-secondary); background: var(--one-bg-secondary); cursor: pointer; transition: border-color 0.2s, transform 0.25s; display: flex; flex-direction: column; }
    .one-blogs-related-block:hover{ border-color:var(--one-border-primary); transform:translateY(-5px); }
    .one-blogs-related-h2{font-family:var(--font-display);color:var(--one-text-primary);font-size:2.25em;padding:10px 0}
    .one-blogs-related-figure{margin-bottom:0}
    .one-blogs-related-figure img{width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s;}
    .one-blogs-related-figure img::hover{ transform: scale(1.05); }
    .one-blogs-related-tag { font-size: 11px; font-weight: 600; color: var(--one-accent-gold); text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 8px; }
    .one-blogs-related-title { font-size: 17px; font-weight: 600; line-height: 1.4; margin-bottom: 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
    .one-blogs-related-title a{color:var(--one-text-primary);}
    .one-blogs-related-title a:hover{color:var(--one-accent-gold);}
    .one-blogs-related-content { font-size:13px; color: var(--one-text-secondary); line-height: 1.55; flex: 1; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow:hidden;margin-bottom:16px; }
    .one-blogs-related-datetime { display: flex; align-items: center; gap: 12px; font-size:12px; color: var(--one-text-muted); padding-top: 14px; border-top: 1px solid var(--one-border-subtle); }
    .one-blogs-related-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
    .one-blogs-related-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}





    /* FAQs */
    .one-home-accordio-fluid{background:rgba(12,15,18,0.9);}
    .one-home-accordio{padding-top:80px;padding-bottom:100px;}
    .one-home-accordio-title{font-weight:bolder;color:#eee;font-family:var(--font-display);font-display:optional;font-size:44px;margin-bottom:30px;}
    .one-home-accordio-item{background:rgba(24,28,33,0.9) !important;color:#eee;padding:12px 15px;margin-top:10px;border-radius:5px;cursor:pointer;font-size:16px}
    .one-home-accordio-item:hover{color:#fff}
    .one-home-accordio-body{background:#000 !important;color:#ccc;padding:25px;}
    .one-home-accordio-body a{color:var(--one-accent-gold);text-decoration:underline;}


    /* subscribe */
    .one-home-subscribe{background-attachment:fixed;background-position:center center;background-size:cover;background-color:rgba(24,28,33,0.5) !important;padding:100px 0;}
    .one-home-subscribe-h1{font-family:Impact;font-size:7em !important;}
    .one-home-subscribe-h3{color:#eee;font-family:var(--font-display);font-display:optional;font-size:32px;}
    .one-home-subscribe-h5{font-size:1em;max-width:600px;margin:auto;}
    .one-home-subscribe-body{max-width:760px;margin:auto;}
    .one-home-subscribe-body input::placeholder{color:#ddd;font-weight:normal;font-size:0.8em}
    .one-home-subscribe-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 40px;background:var(--one-accent-red);color:#fff;font-family:var(--font-body);font-size:16px;font-weight:600;border:none;border-radius:var(--one-radius-sm);cursor:pointer;transition:all .2s;letter-spacing:.3px}
    .one-home-subscribe-btn:hover{color:#fff;background:var(--one-accent-red-hover);transform:translateY(-1px)}


    /* about-us */
    .one-home-pages-fluid{background:#060606 !important;}
    .one-home-pages-container{color:#ccc;padding-bottom:20px;}
    .one-home-pages-container p{margin-bottom:5px !important;}
    .one-home-pages-container a{color:#ccc;}
    .one-home-pages-container a:hover{color:#fc5a5c;}
    .one-home-pages-container img{max-width:98%;border-radius:10px;margin-bottom:20px;}
    .one-home-pages-item{padding:20px !important;background-color:rgba(10,13,16,0.9) !important;margin-bottom:20px;border-radius:5px;}
    .one-home-pages-title{font-family:var(--font-display);font-display:optional;font-size:2.75em;padding:15px 0;font-weight:bolder;}
    .one-home-pages-content{max-width:85%;}


    #jumbotron-block-two{background:#060606 !important;}
    .one-home-jumbotron-container{padding:80px 10px;color:#ddd;font-size:16px}
    .one-home-jumbotron-container p a{color:#ddd;text-decoration:underline;}
    .one-home-jumbotron-img{padding-top:0px;}
    .one-home-jumbotron-img img{max-width:70%;}
    .one-home-jumbotron-title{color:#fff;font-family:var(--font-display);font-display:optional;font-size:36px;font-weight:bolder;text-align:center;}
    .one-home-jumbotron-subtitle{text-align:left;color:#eee;}
    .one-home-jumbotron-btn{float:right;}

}