/* ==========================================================
   Amico - professional theme layer (Japanese business style)
   Loaded AFTER main.css. Delete the <link> to this file to go back to the original look.
   ========================================================== */
:root{
  --accent-color:#1d63d6;
  --heading-color:#0b2a6b;
  --default-color:#38455a;
  --nav-hover-color:#1d63d6;
  --nav-dropdown-hover-color:#1d63d6;
  --default-font:"Noto Sans JP","Roboto",system-ui,-apple-system,"Segoe UI",sans-serif;
  --heading-font:"Noto Sans JP","Raleway",sans-serif;
  --nav-font:"Noto Sans JP","Poppins",sans-serif;
  --amico-red:#d7261e;
  --amico-gold:#ffd45a;
}
body{color:#38455a;-webkit-font-smoothing:antialiased}
html[lang="ja"] body{line-height:1.85;letter-spacing:.02em}
h1,h2,h3,h4,h5,h6{color:#0b2a6b}

/* ---------- header: white bar, vermilion top rule (Japanese corporate look) ---------- */
body .header,body.index-page .header,body.index-page.scrolled .header,body.service-page .header{
  background-color:#fff !important;border-top:4px solid var(--amico-red);
  box-shadow:0 2px 16px rgba(11,42,107,.08);
  --background-color:#fff;--default-color:#0b2a6b;--heading-color:#0b2a6b;
  --nav-color:#2b3a55;--nav-hover-color:#1d63d6;--nav-mobile-background-color:#fff;
  --nav-dropdown-background-color:#fff;--nav-dropdown-color:#2b3a55;--nav-dropdown-hover-color:#1d63d6;
}
.header .logo img{max-height:52px;filter:none !important}
.header .sitename{color:#0b2a6b !important;font-weight:700;letter-spacing:.2px;font-size:22px}
.header .cta-btn,.header .btn-getstarted{background:#1d63d6 !important;color:#fff !important;border-radius:6px;font-weight:600}
.header .cta-btn:hover{background:#0b2a6b !important}

/* ---------- dark sections: always readable white text ---------- */
.dark-background,.dark-background h1,.dark-background h2,.dark-background h3,.dark-background h4,.dark-background h5,.dark-background p,.dark-background span{color:#fff}
.testimonials .testimonial-item h3{color:#fff !important;font-weight:700}
.testimonials .testimonial-item h4{color:#cfe0ff !important}
.testimonials .testimonial-item p{color:#fff !important;font-size:18px;line-height:1.8;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.testimonials .testimonial-item .quote-icon-left,.testimonials .testimonial-item .quote-icon-right{color:rgba(255,255,255,.55)}
.testimonials .testimonial-item .stars i{color:#ffd45a}
.testimonials .swiper-pagination .swiper-pagination-bullet{background:rgba(255,255,255,.5)}
.testimonials .swiper-pagination .swiper-pagination-bullet-active{background:#fff}

/* ---------- hero ---------- */
.hero{min-height:100vh;position:relative;overflow:hidden}
.hero>img{animation:amicoZoom 26s ease-in-out infinite alternate;transform-origin:70% 60%}
@keyframes amicoZoom{from{transform:scale(1)}to{transform:scale(1.12)}}
.hero:before{background:linear-gradient(90deg,rgba(6,24,66,.82) 0%,rgba(6,24,66,.52) 45%,rgba(6,24,66,.08) 100%) !important}
.hero .container{align-items:flex-start !important;text-align:left;position:relative;z-index:3;padding-top:40px}
.hero-kicker{display:inline-block;font-weight:700;letter-spacing:.14em;font-size:14px;color:#fff;border-left:5px solid var(--amico-red);padding:4px 0 4px 14px;margin-bottom:18px;text-transform:uppercase}
.hero h2{color:#fff !important;font-size:clamp(34px,5.4vw,66px);font-weight:800;letter-spacing:.5px;line-height:1.14;text-shadow:0 3px 20px rgba(0,0,0,.4);margin-bottom:20px;text-align:left}
.hero h2 .hl{color:var(--amico-gold);position:relative;display:inline-block}
.hero h2 .hl:after{content:"";position:absolute;left:0;bottom:-4px;height:5px;width:100%;background:var(--amico-red);border-radius:3px;transform-origin:left;animation:amicoLine 2.4s .6s ease both}
@keyframes amicoLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hero p{color:#eaf2ff !important;font-size:clamp(16px,1.55vw,21px);max-width:690px;line-height:1.85;text-shadow:0 2px 12px rgba(0,0,0,.4);margin:0 0 14px;text-align:left}
.hero-rotator{font-size:20px;font-weight:500;color:#fff}
.hero-rotator b{color:var(--amico-gold);font-weight:800;display:inline-block;min-width:8ch;transition:opacity .45s,transform .45s;border-bottom:3px solid var(--amico-red);padding-bottom:2px}
.hero-rotator b.swap{opacity:0;transform:translateY(8px)}
.hero .btn-get-started{background:#1d63d6;border:2px solid #1d63d6;border-radius:6px;font-weight:700;color:#fff;padding:12px 30px}
.hero .btn-get-started:hover{background:#fff;color:#0b2a6b;border-color:#fff}
.hero .btn-get-started.ghost{background:transparent;border-color:#fff}
.hero .btn-get-started.ghost:hover{background:#fff;color:#0b2a6b}
.hero .btn-get-started.red{background:var(--amico-red);border-color:var(--amico-red)}
.hero-waves{position:absolute;left:0;right:0;bottom:-1px;height:90px;z-index:3;overflow:hidden;line-height:0;pointer-events:none}
.hero-waves svg{position:absolute;bottom:0;left:0;width:200%;height:100%;animation:amicoWave 20s linear infinite}
.hero-waves svg.w2{animation-duration:32s;animation-direction:reverse;opacity:.45;height:80%}
@keyframes amicoWave{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.hero-dot{position:absolute;z-index:2;border-radius:50%;background:rgba(255,255,255,.22);animation:amicoFloat 14s ease-in-out infinite}
.hero-dot.d1{width:14px;height:14px;left:12%;bottom:18%}.hero-dot.d2{width:22px;height:22px;left:44%;bottom:28%;animation-duration:19s}
.hero-dot.d3{width:10px;height:10px;left:72%;bottom:22%;animation-duration:16s}.hero-dot.d4{width:18px;height:18px;left:88%;bottom:34%;animation-duration:22s}
@keyframes amicoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-60px)}}

/* ---------- section headings ---------- */
.section-title h2{color:#1d63d6;letter-spacing:1.5px}
.section-title h2:after{background:var(--amico-red) !important}
.section-title p{color:#0b2a6b;font-weight:700}

/* ---------- cards, tabs and portfolio ---------- */
.services .service-item,.services-2 .service-item,.team .member,.client-card{border-radius:12px}
.services-2 .service-item{border:1px solid rgba(11,42,107,.08);transition:.3s}
.services-2 .service-item:hover{box-shadow:0 12px 30px rgba(11,42,107,.12);transform:translateY(-4px)}
.features .nav-link.active,.features .nav-link:hover{background:#1d63d6;border-color:#1d63d6;color:#fff}
.features .nav-link.active h4,.features .nav-link:hover h4{color:#fff}
.portfolio .portfolio-filters li.filter-active,.portfolio .portfolio-filters li:hover{color:#1d63d6}
.portfolio .portfolio-content{border-radius:10px;overflow:hidden}
.team .member .pic img{border-radius:50%;max-width:200px;margin:0 auto;display:block}
.testimonials .testimonial-item .testimonial-img{border-radius:50%;width:90px;height:90px;object-fit:cover}

/* ---------- footer with seigaiha (wave) pattern ---------- */
.footer{background:#071a44 !important;--background-color:#071a44;--default-color:#d4def5;--heading-color:#fff;position:relative;padding-top:60px}
.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:28px;opacity:.35;background-repeat:repeat-x;background-size:56px 28px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='56' height='28' viewBox='0 0 56 28'><g fill='none' stroke='white' stroke-width='1.4'><circle cx='28' cy='28' r='26'/><circle cx='28' cy='28' r='18'/><circle cx='28' cy='28' r='10'/><circle cx='0' cy='14' r='26'/><circle cx='0' cy='14' r='18'/><circle cx='0' cy='14' r='10'/><circle cx='56' cy='14' r='26'/><circle cx='56' cy='14' r='18'/><circle cx='56' cy='14' r='10'/></g></svg>")}
.footer h4,.footer .sitename{color:#fff !important}
.footer a{color:#cfe0ff}.footer a:hover{color:#fff}
.footer .social-links a{border-color:#cfe0ff;color:#fff}
.scroll-top{background:#1d63d6}
.svx-profile-btn:hover{background:#0b2a6b !important}
