/* HP-CHG-0017 — AI business brand and public product showcase */
:root{
  --hp17-black:#0d0e10;
  --hp17-black-soft:#171719;
  --hp17-gold:#ad8b50;
  --hp17-gold-light:#dbc59a;
  --hp17-ivory:#f7f3eb;
  --hp17-paper:#fffdf9;
  --hp17-ink:#1f1e1b;
  --hp17-muted:#706b63;
  --hp17-line:#ded6c8;
}

.hp17-shell{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.hp17-section{padding:72px 0}
.hp17-kicker{margin:0 0 14px;color:var(--hp17-gold);font-size:.72rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.hp17-heading{margin:0;font:500 clamp(2.05rem,9vw,4.5rem)/1.12 Georgia,"Yu Mincho",serif;letter-spacing:-.025em}
.hp17-copy{max-width:760px;margin:20px 0 0;color:var(--hp17-muted);font-size:1rem}
.hp17-button{min-height:52px;padding:12px 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--hp17-gold);border-radius:999px;font-size:.88rem;font-weight:900;text-align:center;transition:transform .2s ease,background .2s ease,color .2s ease}
.hp17-button:hover{transform:translateY(-2px)}
.hp17-button--gold{background:var(--hp17-gold);color:#fff}
.hp17-button--gold:hover{background:#8a6e3c}
.hp17-button--light{border-color:rgba(255,255,255,.42);color:#fff}
.hp17-button--light:hover{background:#fff;color:var(--hp17-black)}
.hp17-button--ink{border-color:var(--hp17-black);background:var(--hp17-black);color:#fff}
.hp17-button--ink:hover{background:#2a2927}
.hp17-button:focus-visible,.hp17-card a:focus-visible{outline:3px solid var(--hp17-gold-light);outline-offset:4px}

/* AI-first hero */
.hp17-hero{position:relative;isolation:isolate;overflow:hidden;min-height:760px;padding:126px 0 72px;background:radial-gradient(circle at 82% 16%,rgba(173,139,80,.24),transparent 27%),radial-gradient(circle at 8% 92%,rgba(173,139,80,.12),transparent 28%),linear-gradient(135deg,#090a0b,#171615 64%,#211c15);color:#fff}
.hp17-hero::after{content:"AI";position:absolute;z-index:-1;right:-.08em;bottom:-.26em;color:rgba(255,255,255,.026);font:700 clamp(15rem,52vw,40rem)/1 Georgia,serif;pointer-events:none}
.hp17-hero__grid{display:grid;gap:48px;align-items:center}
.hp17-hero__brand{display:inline-flex;align-items:center;gap:10px;margin:0 0 22px;color:var(--hp17-gold-light);font-size:.72rem;font-weight:900;letter-spacing:.17em}
.hp17-hero__brand b{color:#fff}.hp17-hero__brand span{color:var(--hp17-gold)}
.hp17-hero h1{max-width:820px;margin:0;font:500 clamp(2.75rem,12.4vw,6.4rem)/1.04 Georgia,"Yu Mincho",serif;letter-spacing:-.045em}
.hp17-hero h1 em{display:block;color:var(--hp17-gold-light);font-style:normal}
.hp17-hero__lead{max-width:720px;margin:24px 0 0;color:#d4cec3;font-size:clamp(.98rem,3.8vw,1.18rem)}
.hp17-hero__actions{display:grid;gap:12px;margin-top:30px}
.hp17-hero__promise{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:28px}
.hp17-hero__promise span{padding:10px 8px;border:1px solid rgba(219,197,154,.26);background:rgba(255,255,255,.035);color:#c9c1b7;font-size:.64rem;font-weight:800;text-align:center}
.hp17-command{position:relative;padding:18px;border:1px solid rgba(219,197,154,.3);border-radius:26px;background:rgba(8,8,9,.72);box-shadow:0 34px 90px rgba(0,0,0,.34);backdrop-filter:blur(12px)}
.hp17-command__top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px 16px;border-bottom:1px solid rgba(255,255,255,.1)}
.hp17-command__top strong{font-family:Georgia,serif;font-size:1.05rem}
.hp17-command__top span{color:var(--hp17-gold-light);font-size:.64rem;font-weight:900;letter-spacing:.12em}
.hp17-command__core{padding:24px 4px 16px}.hp17-command__core small{color:#aaa39a;font-weight:800;letter-spacing:.08em}.hp17-command__core h2{margin:8px 0 0;font:500 clamp(1.7rem,8vw,3rem)/1.18 Georgia,"Yu Mincho",serif}.hp17-command__core h2 span{color:var(--hp17-gold-light)}
.hp17-command__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hp17-command__card{min-height:100px;padding:16px;border:1px solid rgba(255,255,255,.11);border-radius:15px;background:rgba(255,255,255,.045)}.hp17-command__card b{display:block;color:var(--hp17-gold-light);font-size:.65rem;letter-spacing:.12em}.hp17-command__card strong{display:block;margin-top:9px;font-size:.88rem}.hp17-command__card small{display:block;margin-top:5px;color:#aaa39a;font-size:.68rem}
.hp17-command__foot{margin-top:12px;padding:13px 15px;border-radius:13px;background:rgba(173,139,80,.12);color:#d9d0c4;font-size:.72rem;text-align:center}

/* Business structure */
.hp17-structure{background:var(--hp17-paper)}
.hp17-structure__intro{display:grid;gap:24px;margin-bottom:34px}
.hp17-structure__grid{display:grid;gap:12px}
.hp17-structure__card{padding:24px;border:1px solid var(--hp17-line);border-radius:20px;background:#fff}
.hp17-structure__card small{color:var(--hp17-gold);font-size:.67rem;font-weight:900;letter-spacing:.14em}.hp17-structure__card h3{margin:12px 0 8px;font-size:1.18rem}.hp17-structure__card p{margin:0;color:var(--hp17-muted);font-size:.88rem}.hp17-structure__card--lead{background:var(--hp17-black);color:#fff}.hp17-structure__card--lead p{color:#bdb5aa}

/* Employee flagship */
.hp17-employee{position:relative;overflow:hidden;background:var(--hp17-black);color:#fff}
.hp17-employee::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 14%,rgba(173,139,80,.18),transparent 30%);pointer-events:none}
.hp17-employee__grid{position:relative;display:grid;gap:38px}
.hp17-employee .hp17-copy{color:#c9c1b7}
.hp17-safety{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.hp17-safety span{padding:7px 10px;border:1px solid rgba(219,197,154,.35);border-radius:999px;color:var(--hp17-gold-light);font-size:.65rem;font-weight:900;letter-spacing:.06em}
.hp17-feature-list{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:26px}.hp17-feature-list span{padding:12px;border-left:2px solid var(--hp17-gold);background:rgba(255,255,255,.04);color:#d4cec3;font-size:.76rem;font-weight:700}
.hp17-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}
.hp17-shot{position:relative;margin:0;border:1px solid rgba(219,197,154,.3);border-radius:20px;overflow:hidden;background:#111;box-shadow:0 28px 70px rgba(0,0,0,.32)}
.hp17-shot img{width:100%;height:auto;aspect-ratio:1568/1003;object-fit:cover}
.hp17-sample-note{position:absolute;right:8px;bottom:8px;margin:0;padding:5px 8px;border-radius:6px;background:rgba(5,5,5,.82);color:#fff;font-size:.58rem;letter-spacing:.02em}

/* Product showcase */
.hp17-showcase{background:var(--hp17-ivory)}
.hp17-showcase__header{display:grid;gap:20px;margin-bottom:34px}
.hp17-showcase__grid{display:grid;gap:18px}
.hp17-product{overflow:hidden;border:1px solid var(--hp17-line);border-radius:22px;background:var(--hp17-paper);box-shadow:0 20px 55px rgba(68,52,27,.06)}
.hp17-product__media{position:relative;overflow:hidden;background:#111}.hp17-product__media img{width:100%;height:auto;aspect-ratio:1568/1003;object-fit:cover;transition:transform .45s ease}.hp17-product:hover .hp17-product__media img{transform:scale(1.018)}
.hp17-product__body{padding:24px}.hp17-product__meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.hp17-product__code{color:var(--hp17-gold);font-size:.65rem;font-weight:900;letter-spacing:.15em}.hp17-product__status{padding:5px 8px;border:1px solid #cfbd9c;border-radius:999px;color:#806432;font-size:.61rem;font-weight:900}.hp17-product h3{margin:16px 0 10px;font:500 1.65rem/1.2 Georgia,"Yu Mincho",serif}.hp17-product p{margin:0;color:var(--hp17-muted);font-size:.89rem}.hp17-product ul{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 0;padding:0;list-style:none}.hp17-product li{padding:5px 8px;border-radius:999px;background:#eee7da;color:#5f574c;font-size:.64rem;font-weight:800}.hp17-product__link{display:inline-flex;margin-top:20px;color:#7e6230;font-size:.8rem;font-weight:900}
.hp17-showcase__web{margin-top:18px;padding:26px;border:1px solid rgba(219,197,154,.28);border-radius:22px;background:linear-gradient(125deg,#111,#211c15);color:#fff}.hp17-showcase__web h3{margin:9px 0;font:500 1.6rem/1.25 Georgia,"Yu Mincho",serif}.hp17-showcase__web p{margin:0;color:#c8c0b5}.hp17-showcase__web .hp17-actions{margin-top:20px}

/* Story and CTA */
.hp17-story{background:var(--hp17-paper)}
.hp17-story__grid{display:grid;gap:30px;align-items:center}.hp17-story__path{display:grid;gap:10px}.hp17-story__step{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:18px;border:1px solid var(--hp17-line);border-radius:16px}.hp17-story__step b{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--hp17-black);color:var(--hp17-gold-light);font-family:Georgia,serif}.hp17-story__step strong{display:block}.hp17-story__step span{display:block;margin-top:4px;color:var(--hp17-muted);font-size:.82rem}
.hp17-brandline{padding:66px 0;background:linear-gradient(125deg,#0a0b0c,#1c1812);color:#fff;text-align:center}.hp17-brandline strong{display:block;color:var(--hp17-gold-light);font:500 clamp(2.5rem,13vw,6rem)/1 Georgia,serif;letter-spacing:.02em}.hp17-brandline p{margin:18px auto 0;color:#cbc3b8;font-size:clamp(.95rem,3.7vw,1.18rem)}

/* About page */
.hp17-about-hero{padding:76px 0 68px;background:radial-gradient(circle at 82% 16%,rgba(173,139,80,.22),transparent 28%),linear-gradient(140deg,#090a0b,#1b1813);color:#fff}.hp17-about-hero .hp17-heading{max-width:900px}.hp17-about-hero .hp17-copy{color:#cbc4ba}.hp17-about-grid{display:grid;gap:16px}.hp17-about-card{padding:25px;border:1px solid var(--hp17-line);border-radius:19px;background:#fff}.hp17-about-card b{color:var(--hp17-gold);font-size:.69rem;letter-spacing:.13em}.hp17-about-card h3{margin:10px 0 8px}.hp17-about-card p{margin:0;color:var(--hp17-muted);font-size:.88rem}

/* Product catalog page */
body.hp17-products-page{margin:0;background:var(--hp17-ivory);color:var(--hp17-ink);font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.8;overflow-x:hidden}
.hp17-products-page *{box-sizing:border-box}.hp17-products-page a{color:inherit;text-decoration:none}.hp17-products-page img{display:block;max-width:100%}
.hp17-products-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 0}.hp17-products-nav a{font-weight:900}.hp17-products-nav__contact{padding:9px 14px;border:1px solid var(--hp17-gold);border-radius:999px;font-size:.76rem}
.hp17-products-hero{padding:0 0 68px;background:var(--hp17-black);color:#fff}.hp17-products-hero .hp17-copy{color:#c9c1b7}.hp17-products-main{padding:64px 0 84px}.hp17-products-safety{margin-top:28px;padding:20px;border-left:3px solid var(--hp17-gold);background:rgba(255,255,255,.055);color:#d6cec3;font-size:.82rem}.hp17-products-footer{padding:28px 0;background:#090909;color:#aaa39a;font-size:.75rem}.hp17-products-footer .hp17-shell{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}

@media(min-width:560px){
  .hp17-hero__actions{display:flex;flex-wrap:wrap}
}
@media(min-width:720px){
  .hp17-section{padding:92px 0}
  .hp17-structure__intro,.hp17-showcase__header{grid-template-columns:1fr 1fr;align-items:end}
  .hp17-structure__grid{grid-template-columns:repeat(2,1fr)}
  .hp17-showcase__grid{grid-template-columns:repeat(2,1fr)}
  .hp17-product--employee{grid-column:1/-1;display:grid;grid-template-columns:1.2fr .8fr}.hp17-product--employee .hp17-product__media{min-height:100%}.hp17-product--employee .hp17-product__media img{height:100%}
  .hp17-about-grid{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:960px){
  .hp17-shell{width:min(1180px,calc(100% - 48px))}
  .hp17-hero{padding:142px 0 90px}
  .hp17-hero__grid{grid-template-columns:1.05fr .95fr;gap:64px}
  .hp17-command{padding:24px}
  .hp17-structure__grid{grid-template-columns:repeat(4,1fr)}
  .hp17-employee__grid{grid-template-columns:.84fr 1.16fr;align-items:center}
  .hp17-showcase__grid{grid-template-columns:repeat(2,1fr)}
  .hp17-story__grid{grid-template-columns:.82fr 1.18fr}
  .hp17-about-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:430px){
  .hp17-shell{width:min(100% - 28px,1180px)}
  .hp17-section{padding:62px 0}
  .hp17-hero{min-height:auto;padding-top:112px}
  .hp17-hero__promise{grid-template-columns:1fr}
  .hp17-hero__actions .hp17-button,.hp17-actions .hp17-button{width:100%}
  .hp17-command__grid,.hp17-feature-list{grid-template-columns:1fr}
  .hp17-product__body{padding:21px}
  .hp17-sample-note{font-size:.54rem}
}
@media(prefers-reduced-motion:reduce){.hp17-button,.hp17-product__media img{transition:none}.hp17-button:hover,.hp17-product:hover .hp17-product__media img{transform:none}}
