:root {
    --hb-bg: #090b11;
    --hb-bg-soft: #0d1018;
    --hb-surface: rgba(255,255,255,.045);
    --hb-surface-strong: rgba(255,255,255,.075);
    --hb-line: rgba(255,255,255,.085);
    --hb-line-soft: rgba(255,255,255,.055);
    --hb-text: #f5f7fb;
    --hb-muted: #9ca4b5;
    --hb-muted-2: #71798a;
    --hb-cyan: #59dcff;
    --hb-blue: #7fa5ff;
    --hb-purple: #b27aff;
    --hb-pink: #ef8ddb;
    --hb-success: #70dab0;
    --hb-warning: #f2c76b;
    --hb-radius: 26px;
    --hb-radius-sm: 16px;
    --hb-shadow: 0 35px 100px rgba(0,0,0,.42);
    --hb-width: 1280px;
    --hb-reading: 780px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.hibiki-site {
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 50% -20%, rgba(103,129,255,.11), transparent 35rem),
        linear-gradient(180deg, #0b0d13 0%, #090b11 54%, #080a0f 100%);
    color: var(--hb-text);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
body.hibiki-site .wp-site-blocks { padding: 0; }
body.hibiki-site main { min-height: 58vh; }
body.hibiki-site a { text-underline-offset: .18em; }
body.hibiki-site img { max-width: 100%; height: auto; }

/* Header */
.hibiki-header {
    position: sticky;
    top: 0;
    z-index: 90;
    margin: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.055);
    background: rgba(9,11,17,.73);
    backdrop-filter: blur(24px) saturate(145%);
}
.admin-bar .hibiki-header { top: 32px; }
.hibiki-header__inner { min-height: 68px; gap: 24px; }
.hibiki-brand-wrap { margin: 0 !important; }
.hibiki-brand {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    color: var(--hb-text);
    text-decoration: none;
}
.hibiki-brand__logo {
    width: 34px;
    height: 34px;
    display: block;
    border-radius: 10px;
    box-shadow: 0 8px 28px rgba(88,141,255,.18);
}
.hibiki-brand__copy { display:flex; flex-direction:column; line-height:1.05; }
.hibiki-brand__copy strong { font-size: 15px; font-weight: 730; letter-spacing: -.01em; }
.hibiki-brand__copy small { margin-top:4px; color:#7e8798; font-size:9px; letter-spacing:.09em; text-transform:uppercase; }
.hibiki-nav { color: #a7aebe; font-size: 13px; font-weight: 630; }
.hibiki-nav .wp-block-navigation-item__content {
    padding: 9px 12px;
    border-radius: 999px;
    text-decoration: none;
    transition: color .18s ease, background .18s ease;
}
.hibiki-nav .wp-block-navigation-item__content:hover { color: #fff; background: rgba(255,255,255,.055); }
.hibiki-nav-download .wp-block-navigation-item__content {
    color: #10131d !important;
    background: linear-gradient(135deg,#b8d6ff 0%,#bca5ff 100%) !important;
    padding: 10px 16px !important;
    box-shadow: 0 10px 34px rgba(121,150,255,.16);
}
.wp-block-navigation__responsive-container.is-menu-open {
    background: rgba(8,10,15,.985);
    color: var(--hb-text);
    padding: 24px;
}

/* Shared */
.hibiki-main { margin: 0; }
.hibiki-section { position: relative; margin: 0 !important; padding: 112px 22px; }
.hibiki-section--tight { padding-top: 58px; padding-bottom: 58px; }
.hibiki-section--muted {
    border-top: 1px solid var(--hb-line-soft);
    border-bottom: 1px solid var(--hb-line-soft);
    background: rgba(255,255,255,.012);
}
.hibiki-eyebrow {
    margin: 0 0 18px !important;
    color: #aab9ff !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .17em;
    text-transform: uppercase;
}
.hibiki-eyebrow a { color: inherit; text-decoration: none; }
.hibiki-hero-copy { color: var(--hb-muted) !important; font-size: clamp(1.04rem,1.5vw,1.2rem); line-height:1.65; }

.wp-block-button__link {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: #f4f6fb;
    color: #0b0e15;
    box-shadow: 0 12px 36px rgba(0,0,0,.18);
    font-size: 14px;
    font-weight: 720;
    text-decoration: none;
    transition: transform .18s ease, filter .18s ease, background .18s ease;
}
.wp-block-button__link:hover { transform: translateY(-1px); filter: brightness(1.02); }
.wp-block-button.is-style-outline .wp-block-button__link {
    color: #ecf0f8;
    border-color: var(--hb-line);
    background: rgba(255,255,255,.035);
    box-shadow: none;
}

/* Premium home */
.hb-home-hero {
    position: relative;
    isolation: isolate;
    margin: 0 !important;
    padding: 112px 22px 48px;
    overflow: hidden;
}
.hb-home-hero::before {
    content: "";
    position: absolute;
    z-index: -2;
    width: 980px;
    height: 720px;
    left: 50%;
    top: 48%;
    transform: translate(-50%,-50%);
    background:
        radial-gradient(circle at 35% 48%, rgba(42,201,255,.15), transparent 38%),
        radial-gradient(circle at 65% 45%, rgba(142,85,255,.18), transparent 42%);
    filter: blur(20px);
    opacity: .85;
    pointer-events: none;
}
.hb-home-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(180deg, transparent 70%, var(--hb-bg) 100%);
}
.hb-home-hero__copy {
    max-width: 980px;
    margin: 0 auto 62px !important;
    text-align: center;
}
.hb-home-kicker {
    margin: 0 0 22px !important;
    color: #b9c5ee !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.hb-home-hero h1 {
    max-width: 1050px;
    margin: 0 auto 28px;
    font-size: clamp(4rem, 8vw, 7.6rem);
    line-height: .93;
    letter-spacing: -.067em;
    font-weight: 760;
    text-wrap: balance;
}
.hb-gradient-text {
    background: linear-gradient(96deg,#f7f9ff 8%,#9edcff 46%,#b896ff 75%,#f2a9df 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.hb-home-hero__lead {
    max-width: 690px;
    margin: 0 auto !important;
    color: #a8b0c0 !important;
    font-size: clamp(1.08rem,1.7vw,1.28rem);
    line-height: 1.65;
}
.hb-home-actions { justify-content: center; margin-top: 32px !important; gap: 10px; }
.hb-home-actions .wp-block-button:first-child .wp-block-button__link {
    min-width: 178px;
    background: linear-gradient(135deg,#dceaff 0%,#c4b5ff 100%);
}
.hb-home-platforms {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 22px;
    flex-wrap: wrap;
    margin-top: 28px;
    color: #737c8f;
    font-size: 12px;
    font-weight: 650;
}
.hb-home-platforms span { position: relative; }
.hb-home-platforms span + span::before {
    content: "";
    position: absolute;
    left: -12px;
    top: 50%;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #4a5260;
}
.hb-product-shot {
    position: relative;
    width: min(1320px, calc(100vw - 42px));
    margin: 0 auto;
    padding: 1px;
    border-radius: 24px;
    background: linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.035));
    box-shadow: 0 45px 120px rgba(0,0,0,.46), 0 0 90px rgba(87,107,255,.08);
}
.hb-product-shot::before {
    content: "";
    position: absolute;
    inset: -70px 7% auto;
    height: 160px;
    z-index: -1;
    background: linear-gradient(90deg,rgba(61,207,255,.15),rgba(137,92,255,.19),rgba(236,121,220,.1));
    filter: blur(56px);
}
.hb-product-shot img {
    display: block;
    width: 100%;
    border-radius: 23px;
    background: #11141c;
}
.hb-product-shot__caption {
    display: flex;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: 22px;
    color: #697284;
    font-size: 11px;
}

.hb-story-section {
    position: relative;
    margin: 0 !important;
    padding: 168px 22px;
}
.hb-story-section--soft {
    background: linear-gradient(180deg,transparent,rgba(255,255,255,.014) 20%,rgba(255,255,255,.014) 80%,transparent);
}
.hb-story-head {
    max-width: 980px;
    margin: 0 auto 78px !important;
    text-align: center;
}
.hb-story-head h2 {
    margin: 0 auto 20px;
    font-size: clamp(3.2rem,6.4vw,6rem);
    line-height: .98;
    letter-spacing: -.06em;
    font-weight: 730;
    text-wrap: balance;
}
.hb-story-head p {
    max-width: 650px;
    margin: 0 auto;
    color: var(--hb-muted);
    font-size: 1.08rem;
    line-height: 1.7;
}
.hb-story-grid {
    max-width: var(--hb-width);
    margin: 0 auto !important;
    gap: 82px !important;
    align-items: center !important;
}
.hb-story-copy { max-width: 500px; }
.hb-story-copy h2 {
    margin: 0 0 20px;
    font-size: clamp(2.8rem,5vw,5rem);
    line-height: 1;
    letter-spacing: -.055em;
    font-weight: 730;
    text-wrap: balance;
}
.hb-story-copy p:not(.hibiki-eyebrow) {
    color: var(--hb-muted);
    font-size: 1.08rem;
    line-height: 1.7;
}
.hb-story-link {
    display: inline-flex;
    margin-top: 14px;
    color: #b9c6ff;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}
.hb-media-card {
    position: relative;
    overflow: hidden;
    min-height: 620px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 32px;
    background: #11141d;
    box-shadow: 0 34px 90px rgba(0,0,0,.33);
}
.hb-media-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
}
.hb-media-card img {
    width: 100%;
    height: 100%;
    min-height: 620px;
    display: block;
    object-fit: cover;
}
.hb-media-card--chat img { object-position: center top; }
.hb-media-card--activity img { object-position: center top; }
.hb-media-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(75px);
    opacity: .16;
    pointer-events: none;
}
.hb-media-glow--cyan { left: -120px; top: 20%; background: var(--hb-cyan); }
.hb-media-glow--purple { right: -130px; bottom: 5%; background: var(--hb-purple); }

.hb-feature-moment {
    max-width: var(--hb-width);
    margin: 0 auto !important;
    padding: 0 22px 162px;
}
.hb-feature-moment__panel {
    position: relative;
    overflow: hidden;
    min-height: 620px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: clamp(34px,6vw,76px);
    border: 1px solid rgba(255,255,255,.085);
    border-radius: 34px;
    background:
        radial-gradient(circle at 75% 20%, rgba(87,210,255,.09), transparent 26%),
        radial-gradient(circle at 24% 80%, rgba(173,92,255,.12), transparent 30%),
        linear-gradient(145deg,#11151f,#0d1018 68%);
    box-shadow: 0 34px 100px rgba(0,0,0,.28);
}
.hb-feature-moment__panel h2 {
    max-width: 870px;
    margin: 0;
    font-size: clamp(3rem,6vw,5.8rem);
    line-height: .98;
    letter-spacing: -.06em;
    font-weight: 730;
    text-wrap: balance;
}
.hb-feature-moment__bottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 30px;
    margin-top: 130px;
}
.hb-feature-moment__bottom p {
    max-width: 560px;
    margin: 0;
    color: var(--hb-muted);
    font-size: 1.05rem;
    line-height: 1.65;
}
.hb-mini-control {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 13px 16px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    background: rgba(255,255,255,.045);
    color: #dfe4ef;
    box-shadow: 0 12px 34px rgba(0,0,0,.18);
}
.hb-mini-control i {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--hb-cyan);
    box-shadow: 0 0 18px rgba(89,220,255,.55);
}
.hb-mini-control strong { font-size: 13px; }
.hb-mini-control span { color: #788295; font-size: 11px; }

.hb-home-links {
    margin: 0 !important;
    padding: 150px 22px 170px;
    border-top: 1px solid var(--hb-line-soft);
}
.hb-home-links__inner { max-width: var(--hb-width); margin: 0 auto !important; }
.hb-home-links__head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 32px;
    margin-bottom: 50px !important;
}
.hb-home-links__head h2 {
    max-width: 800px;
    margin: 0;
    font-size: clamp(3rem,5.4vw,5rem);
    line-height: 1;
    letter-spacing: -.055em;
}
.hb-home-links__head p { max-width: 420px; margin: 0; color: var(--hb-muted); }
.hb-link-grid { gap: 14px !important; }
.hb-link-card {
    height: 100%;
    min-height: 250px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 28px;
    border: 1px solid var(--hb-line);
    border-radius: 24px;
    background: rgba(255,255,255,.025);
    transition: transform .2s ease,border-color .2s ease,background .2s ease;
}
.hb-link-card:hover { transform: translateY(-3px); border-color: rgba(160,181,255,.22); background: rgba(255,255,255,.04); }
.hb-link-card p:first-child { margin:0; color:#778196; font-size:11px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.hb-link-card h3 { margin: 56px 0 9px; font-size: 1.45rem; letter-spacing: -.03em; }
.hb-link-card p:last-of-type { color: var(--hb-muted); font-size: .93rem; }
.hb-link-card a { color: #dce4ff; font-size: 13px; font-weight: 700; text-decoration: none; }

.hb-final-cta {
    position: relative;
    margin: 0 !important;
    padding: 150px 22px 164px;
    text-align: center;
    overflow: hidden;
}
.hb-final-cta::before {
    content: "";
    position: absolute;
    width: 700px;
    height: 300px;
    left: 50%;
    top: 45%;
    transform: translate(-50%,-50%);
    background: radial-gradient(ellipse,rgba(110,153,255,.14),rgba(177,103,255,.08) 42%,transparent 72%);
    filter: blur(22px);
    pointer-events: none;
}
.hb-final-cta > * { position: relative; }
.hb-final-cta h2 {
    max-width: 900px;
    margin: 0 auto 24px;
    font-size: clamp(3.5rem,6.8vw,6.6rem);
    line-height: .95;
    letter-spacing: -.065em;
    text-wrap: balance;
}
.hb-final-cta p { max-width: 610px; margin: 0 auto; color: var(--hb-muted); font-size:1.08rem; }
.hb-final-cta .wp-block-buttons { justify-content:center; margin-top:32px; }

/* Standard content pages */
.hibiki-page-shell,
.hibiki-guide-single,
.hibiki-guides-archive,
.hibiki-not-found { padding: 104px 22px 130px; }
.hibiki-page-hero { padding-bottom: 58px; }
.hibiki-page-hero h1,
.hibiki-guide-single__hero h1,
.hibiki-guides-hero h1 {
    max-width: 980px;
    margin-bottom: 0;
    font-size: clamp(3.3rem,6.4vw,6rem);
    line-height: .98;
    letter-spacing: -.06em;
    font-weight: 730;
}
.hibiki-page-shell > .wp-block-post-content { max-width: var(--hb-reading); }
.hibiki-page-shell .wp-block-post-content > p:first-child { color: var(--hb-muted); font-size: 1.13rem; line-height:1.7; }
.hibiki-page-shell .wp-block-post-content > h2,
.hibiki-guide-content-wrap h2 { margin-top: 2.6em; font-size: clamp(1.8rem,3vw,2.55rem); letter-spacing:-.035em; }
.hibiki-page-shell .wp-block-post-content > h3,
.hibiki-guide-content-wrap h3 { margin-top: 2em; }
.hibiki-page-shell .wp-block-post-content p,
.hibiki-page-shell .wp-block-post-content li,
.hibiki-guide-content-wrap p,
.hibiki-guide-content-wrap li { color: #bdc4d0; }
.hibiki-page-shell .wp-block-post-content a,
.hibiki-guide-content-wrap a { color:#c5d1ff; }

/* Existing feature/pricing/download blocks */
.hibiki-feature-grid { gap: 14px !important; margin-top: 14px !important; }
.hibiki-feature-card {
    height: 100%;
    min-height: 260px;
    padding: 30px;
    border: 1px solid var(--hb-line);
    border-radius: 24px;
    background: rgba(255,255,255,.027);
}
.hibiki-feature-card__index { margin:0 0 64px !important; color:#7e89a0 !important; font-size:10px; font-weight:800; letter-spacing:.14em; }
.hibiki-feature-card h3 { margin-bottom:10px; font-size:1.35rem; }
.hibiki-feature-card p:last-child { color:var(--hb-muted); }

.hibiki-price-grid { gap:18px !important; align-items:stretch !important; }
.hibiki-price-card {
    height:100%;
    min-height:500px;
    padding:36px;
    border:1px solid var(--hb-line);
    border-radius:28px;
    background:rgba(255,255,255,.025);
}
.hibiki-price-card--featured {
    border-color:rgba(158,176,255,.22);
    background:linear-gradient(160deg,rgba(126,157,255,.09),rgba(172,102,255,.055),rgba(255,255,255,.024));
}
.hibiki-plan-label { display:inline-flex; margin:0 !important; color:#aebcf0 !important; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.hibiki-price { margin:28px 0 10px !important; color:var(--hb-text) !important; font-size:clamp(2.7rem,5vw,4.2rem); font-weight:750; letter-spacing:-.055em; line-height:1; }
.hibiki-checklist { padding-left:0 !important; list-style:none; }
.hibiki-checklist li { position:relative; padding-left:24px; margin:12px 0; color:#b8c0ce; }
.hibiki-checklist li::before { content:"✓"; position:absolute; left:0; color:#a8b9ff; font-weight:900; }
.hibiki-paddle-button { margin-top:26px; }
.hibiki-paddle-button.is-disabled { opacity:.6; pointer-events:none; }

/* Guides */
.hibiki-guides-hero { padding-bottom:70px; }
.hibiki-guide-search { max-width:660px; margin-top:34px !important; }
.hibiki-guide-search .wp-block-search__inside-wrapper { border:1px solid var(--hb-line); border-radius:999px; background:rgba(255,255,255,.035); overflow:hidden; padding:5px; }
.hibiki-guide-search input { color:var(--hb-text); background:transparent; border:0; padding:0 16px; }
.hibiki-guide-search button { border:0; border-radius:999px; background:rgba(255,255,255,.08); color:var(--hb-text); }
.hibiki-guide-grid .wp-block-post-template { gap:14px; }
.hibiki-guide-card {
    min-height:250px;
    padding:28px;
    border:1px solid var(--hb-line);
    border-radius:24px;
    background:rgba(255,255,255,.027);
    transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.hibiki-guide-card:hover { transform:translateY(-3px); border-color:rgba(161,181,255,.22); background:rgba(255,255,255,.04); }
.hibiki-guide-card__term,.hibiki-guide-card__term a { color:#aebcf1 !important; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; text-decoration:none; }
.hibiki-guide-card h2 { margin:60px 0 10px; font-size:1.3rem; letter-spacing:-.025em; }
.hibiki-guide-card h2 a { color:var(--hb-text); text-decoration:none; }
.hibiki-guide-card .wp-block-post-excerpt__excerpt { color:var(--hb-muted); font-size:.92rem; }
.hibiki-guide-card .wp-block-post-excerpt__more-link { display:inline-block; margin-top:13px; color:#c9d3ff; font-size:13px; font-weight:700; text-decoration:none; }
.hibiki-empty-state { padding:38px; border:1px dashed var(--hb-line); border-radius:24px; text-align:center; }

.hibiki-guide-single__hero { max-width:940px; padding-bottom:54px; }
.hibiki-guide-single__hero .wp-block-post-excerpt { max-width:740px; color:var(--hb-muted); font-size:1.12rem; }
.hibiki-guide-meta { gap:8px 14px !important; margin-top:24px !important; color:#7f899b; font-size:12px; }
.hibiki-guide-meta a { color:#b9c5ef; text-decoration:none; }
.hibiki-guide-content-wrap { max-width:940px; }
.hibiki-guide-content-wrap .wp-block-post-content { max-width:780px; }
.hibiki-guide-content-wrap figure img { border:1px solid var(--hb-line); border-radius:20px; }
.hibiki-guide-step {
    position:relative;
    margin:36px 0 !important;
    padding:26px 26px 26px 78px;
    border:1px solid var(--hb-line);
    border-radius:20px;
    background:rgba(255,255,255,.025);
}
.hibiki-guide-step__number { position:absolute; left:22px; top:23px; width:38px; height:38px; display:grid; place-items:center; overflow:hidden; margin:0 !important; color:#cbd4ff !important; font-size:0; font-weight:850; border-radius:13px; background:rgba(148,173,255,.11); }
.hibiki-guide-step__number::after { content:"→"; font-size:16px; }
.hibiki-guide-step h3 { margin:0 0 8px !important; font-size:1.15rem; }
.hibiki-guide-callout { margin:30px 0 !important; padding:22px 24px; border-radius:18px; border:1px solid var(--hb-line); background:rgba(255,255,255,.025); }
.hibiki-guide-callout--tip { border-color:rgba(112,218,176,.18); background:rgba(74,177,139,.05); }
.hibiki-guide-callout--warning { border-color:rgba(242,199,107,.19); background:rgba(242,199,107,.05); }
.hibiki-guide-callout__label { margin:0 0 6px !important; color:#dfe4ef !important; font-size:10px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.hibiki-guide-video { margin:32px 0 !important; padding:24px; border:1px solid var(--hb-line); border-radius:22px; background:rgba(255,255,255,.027); }

/* Checkout */
.hibiki-checkout-status { position:fixed; z-index:120; left:50%; bottom:22px; transform:translateX(-50%); width:min(620px,calc(100% - 28px)); padding:13px 16px; border:1px solid rgba(156,178,255,.22); border-radius:16px; background:rgba(16,20,29,.94); box-shadow:0 20px 60px rgba(0,0,0,.34); backdrop-filter:blur(16px); color:#dce2ef; font-size:13px; }
.hibiki-checkout-status strong { color:white; }

/* Footer */
.hibiki-footer {
    margin: 0;
    padding: 82px 22px 28px;
    border-top: 1px solid var(--hb-line-soft);
    background: rgba(3,5,9,.18);
}
.hibiki-footer__top { gap: 70px; align-items:flex-start !important; }
.hibiki-footer__brand { max-width:420px; }
.hibiki-footer__brand h3 { margin-bottom:9px; font-size:1.35rem; }
.hibiki-footer__brand p { color:#7f8899; font-size:13px; line-height:1.65; }
.hibiki-footer__links { width:min(560px,100%); gap:34px; margin:0 !important; }
.hibiki-footer__links h4 { margin:0 0 12px; color:#d4d9e3; font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.hibiki-footer__links p { margin:0; line-height:2.15; font-size:13px; }
.hibiki-footer__links a { color:#818b9d; text-decoration:none; }
.hibiki-footer__links a:hover { color:white; }
.hibiki-footer__bottom { margin-top:48px !important; padding-top:24px; border-top:1px solid rgba(255,255,255,.05); gap:20px; }
.hibiki-footer__bottom p { margin:0; color:#596273; font-size:11px; }

.hibiki-not-found { min-height:70vh; display:flex; flex-direction:column; justify-content:center; }
.hibiki-not-found h1 { max-width:850px; }

/* Reveals: very restrained */
.hibiki-reveal { opacity:1; transform:none; }
.hibiki-js .hibiki-reveal { opacity:0; transform:translateY(18px); transition:opacity .7s cubic-bezier(.2,.65,.2,1),transform .7s cubic-bezier(.2,.65,.2,1); }
.hibiki-js .hibiki-reveal.is-visible { opacity:1; transform:none; }

@media (max-width: 1000px) {
    .hb-story-grid { grid-template-columns:1fr !important; gap:52px !important; }
    .hb-story-copy { max-width:720px; }
    .hb-story-grid--reverse .wp-block-column:first-child { order:2; }
    .hb-story-grid--reverse .wp-block-column:last-child { order:1; }
    .hb-home-links__head { align-items:flex-start; flex-direction:column; }
    .hibiki-price-grid { grid-template-columns:1fr !important; }
}
@media (max-width: 782px) {
    .admin-bar .hibiki-header { top:46px; }
    .hibiki-header__inner { min-height:62px; }
    .hb-home-hero { padding-top:80px; }
    .hb-home-hero h1 { font-size:clamp(3.2rem,14vw,5.2rem); }
    .hb-product-shot { width:calc(100vw - 26px); border-radius:17px; }
    .hb-product-shot img { border-radius:16px; }
    .hb-story-section { padding:112px 18px; }
    .hb-story-head { margin-bottom:52px !important; }
    .hb-media-card,.hb-media-card img { min-height:480px; }
    .hb-feature-moment { padding-inline:18px; padding-bottom:112px; }
    .hb-feature-moment__panel { min-height:540px; border-radius:26px; }
    .hb-feature-moment__bottom { margin-top:90px; flex-direction:column; align-items:flex-start; }
    .hb-home-links { padding:112px 18px 126px; }
    .hb-link-grid { grid-template-columns:1fr !important; }
    .hb-final-cta { padding:112px 18px 126px; }
    .hibiki-page-shell,.hibiki-guide-single,.hibiki-guides-archive,.hibiki-not-found { padding:76px 18px 100px; }
    .hibiki-feature-grid { grid-template-columns:1fr !important; }
    .hibiki-footer { padding-inline:18px; }
    .hibiki-footer__links { grid-template-columns:1fr 1fr 1fr !important; }
}
@media (max-width: 560px) {
    .hibiki-brand__copy small { display:none; }
    .hb-home-hero__copy { margin-bottom:44px !important; }
    .hb-home-actions { flex-direction:column; align-items:stretch; }
    .hb-home-actions .wp-block-button { width:100%; }
    .hb-home-actions .wp-block-button__link { width:100%; }
    .hb-home-platforms { gap:18px; }
    .hb-story-section { padding-top:92px; padding-bottom:92px; }
    .hb-story-head h2,.hb-story-copy h2 { font-size:clamp(2.65rem,13vw,4rem); }
    .hb-media-card,.hb-media-card img { min-height:390px; }
    .hb-feature-moment__panel { padding:30px; min-height:500px; }
    .hb-feature-moment__panel h2 { font-size:clamp(2.65rem,13vw,4.2rem); }
    .hb-home-links__head h2 { font-size:clamp(2.65rem,13vw,4rem); }
    .hb-final-cta h2 { font-size:clamp(3rem,14vw,4.8rem); }
    .hibiki-guide-step { padding:68px 20px 22px; }
    .hibiki-guide-step__number { left:20px; top:18px; }
    .hibiki-footer__links { grid-template-columns:1fr !important; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

/* =========================================================

/* =========================================================
   Hibiki v7 — shared site system
   One container, one type scale, one responsive rhythm.
   ========================================================= */
:root {
    --hb-site-width: 1180px;
    --hb-reading-width: 820px;
    --hb-gutter: clamp(20px, 4vw, 44px);
    --hb-page-top: clamp(76px, 8vw, 116px);
    --hb-page-bottom: clamp(96px, 10vw, 148px);
    --hb-section-space: clamp(76px, 8vw, 116px);
    --hb-page-title-size: clamp(3.1rem, 5.2vw, 5rem);
    --hb-section-title-size: clamp(2.35rem, 4vw, 4.15rem);
    --hb-card-title-size: clamp(1.35rem, 2vw, 1.8rem);
    --hb-content-heading-size: clamp(1.8rem, 3vw, 2.5rem);
    --hb-content-section-gap: clamp(50px, 5.5vw, 68px);
}

/* ---------- Global layout ---------- */
.hibiki-header__inner,
.hibiki-page-inner,
.hibiki-guides-archive,
.hibiki-guide-single,
.hibiki-footer__top,
.hibiki-footer__bottom,
.hb-home-links__inner {
    width: min(var(--hb-site-width), calc(100vw - (var(--hb-gutter) * 2)));
    max-width: var(--hb-site-width);
    margin-left: auto !important;
    margin-right: auto !important;
}

.hibiki-page-shell {
    width: 100%;
    padding: var(--hb-page-top) 0 var(--hb-page-bottom);
}

.hibiki-page-inner {
    display: block;
}

.hibiki-page-hero {
    width: 100%;
    margin: 0 0 clamp(38px, 4vw, 56px) !important;
    padding: 0;
}

.hibiki-page-hero h1 {
    max-width: 980px;
    margin: 0;
    font-size: var(--hb-page-title-size);
    line-height: .95;
    letter-spacing: -.062em;
    font-weight: 740;
    text-wrap: balance;
}

.hibiki-page-content {
    width: 100%;
    margin: 0;
}

/* Normal content/legal pages: same left edge as their title. */
.hibiki-page-content > * {
    width: min(var(--hb-reading-width), 100%);
    max-width: var(--hb-reading-width);
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.hibiki-page-content > p:first-child {
    margin-top: 0;
    margin-bottom: clamp(48px, 5vw, 66px);
    color: var(--hb-muted) !important;
    font-size: 1.05rem;
    line-height: 1.7;
}

.hibiki-page-content h2 {
    margin: var(--hb-content-section-gap) 0 18px;
    font-size: var(--hb-content-heading-size);
    line-height: 1.12;
    letter-spacing: -.04em;
}

.hibiki-page-content h3 {
    margin: 42px 0 14px;
    font-size: clamp(1.25rem, 2vw, 1.55rem);
    letter-spacing: -.025em;
}

.hibiki-page-content p,
.hibiki-page-content li {
    color: #b7bfcd;
    font-size: 1rem;
    line-height: 1.78;
}

.hibiki-page-content ul,
.hibiki-page-content ol {
    padding-left: 1.35rem;
}

.hibiki-page-content a {
    color: #cbd4ff;
}

/* Marketing pages deliberately use the full site rail. */
.hibiki-page-features .hibiki-page-content > *,
.hibiki-page-pricing .hibiki-page-content > *,
.hibiki-page-download .hibiki-page-content > * {
    width: 100%;
    max-width: none;
}

.hb-page-deck,
.hb-download-page > .hibiki-hero-copy {
    max-width: 760px !important;
    margin: 0 0 clamp(54px, 7vw, 82px) !important;
    color: var(--hb-muted) !important;
    font-size: clamp(1.05rem, 1.4vw, 1.18rem);
    line-height: 1.72;
}

/* ---------- Buttons ---------- */
.wp-block-button:not(.is-style-outline) .wp-block-button__link,
.hibiki-action-button {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 22px;
    border: 1px solid transparent;
    border-radius: 15px;
    background: linear-gradient(135deg, #f2f7ff 0%, #dce7ff 34%, #cab8ff 100%);
    color: #0a0d14;
    box-shadow: 0 16px 42px rgba(122,140,255,.18), 0 6px 22px rgba(0,0,0,.14);
    font-size: 14px;
    font-weight: 760;
    line-height: 1;
    text-decoration: none;
    transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.hibiki-action-button:hover {
    transform: translateY(-1px);
    filter: brightness(1.035);
    box-shadow: 0 19px 48px rgba(122,140,255,.22), 0 8px 24px rgba(0,0,0,.15);
}

.hibiki-action-button.is-disabled {
    color: #8f98a8;
    border-color: rgba(255,255,255,.075);
    background: rgba(255,255,255,.055);
    box-shadow: none;
    pointer-events: none;
}

.hibiki-action-button__icon {
    width: 18px;
    height: 18px;
    display: inline-flex;
    flex: 0 0 18px;
}
.hibiki-action-button__icon svg { width: 100%; height: 100%; display: block; }

/* ---------- Features ---------- */
.hb-features-page { width: 100%; margin: 0 !important; }

.hb-feature-story {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(460px, 1.12fr);
    gap: clamp(54px, 6vw, 94px);
    align-items: center;
    min-height: 600px;
    padding: clamp(70px, 8vw, 96px) 0;
    border-top: 1px solid var(--hb-line-soft);
}

.hb-feature-story--reverse {
    grid-template-columns: minmax(460px, 1.12fr) minmax(0, .88fr);
}

.hb-feature-story__copy { max-width: 500px; }
.hb-feature-story__copy h2,
.hb-feature-wide h2,
.hb-feature-final h2 {
    margin: 0 0 24px;
    font-size: var(--hb-section-title-size);
    line-height: .97;
    letter-spacing: -.058em;
    font-weight: 735;
    text-wrap: balance;
}
.hb-feature-story__copy > p:last-child,
.hb-feature-wide__columns p,
.hb-feature-final__copy > p:last-child {
    color: var(--hb-muted) !important;
    font-size: 1.04rem;
    line-height: 1.72;
}

.hb-page-product-image {
    position: relative;
    width: 100%;
    margin: 0 !important;
    padding: clamp(12px, 1.8vw, 22px);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 28px;
    background: radial-gradient(circle at 50% 0%, rgba(106,132,255,.09), transparent 52%), rgba(255,255,255,.025);
    box-shadow: 0 40px 100px rgba(0,0,0,.30);
}
.hb-page-product-image img { display:block; width:100%; border-radius:17px; background:#11141c; }

.hb-feature-wide {
    margin: 62px 0 112px !important;
    padding: clamp(44px, 5vw, 72px);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 32px;
    background: radial-gradient(circle at 86% -10%, rgba(108,86,255,.14), transparent 38%), radial-gradient(circle at 4% 110%, rgba(42,194,255,.09), transparent 34%), rgba(255,255,255,.025);
}
.hb-feature-wide__heading { max-width: 860px; }
.hb-feature-wide__columns {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 0 !important;
    margin-top: 82px !important;
    border-top: 1px solid var(--hb-line);
}
.hb-feature-wide__columns > .wp-block-column { padding: 30px 8% 0 0; }
.hb-feature-wide__columns > .wp-block-column + .wp-block-column { padding-left:8%; padding-right:0; border-left:1px solid var(--hb-line); }
.hb-feature-wide__columns h3 { margin:0 0 12px; font-size:1.4rem; letter-spacing:-.035em; }

.hb-feature-final { padding: 98px 0 0; border-top:1px solid var(--hb-line-soft); }
.hb-feature-final__copy { max-width: 850px; margin-bottom: 52px !important; }
.hb-feature-final .hb-page-product-image { padding:1px; border-radius:24px; }
.hb-feature-final .hb-page-product-image img { border-radius:23px; }

/* ---------- Pricing ---------- */
.hb-pricing-page { width:100%; margin:0 !important; }
.hb-pricing-grid {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px !important;
    align-items:stretch !important;
    margin:0 !important;
}
.hb-pricing-grid > .wp-block-column { min-width:0; display:flex; }
.hb-price-card-v4 {
    position:relative;
    display:flex;
    flex:1;
    flex-direction:column;
    min-height:560px;
    padding:clamp(30px,4vw,46px);
    border:1px solid rgba(255,255,255,.095);
    border-radius:28px;
    background:rgba(255,255,255,.024);
}
.hb-price-card-v4--pro {
    border-color:rgba(159,176,255,.23);
    background:radial-gradient(circle at 100% 0%, rgba(130,112,255,.14), transparent 42%), linear-gradient(155deg,rgba(109,128,255,.07),rgba(169,99,255,.04) 56%,rgba(255,255,255,.024));
}
.hb-price-label-row { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.hb-price-badge { display:inline-flex; min-height:28px; align-items:center; padding:0 11px; border:1px solid rgba(177,192,255,.18); border-radius:999px; background:rgba(151,164,255,.08); color:#cbd4ff; font-size:10px; font-weight:750; }
.hb-price-v4 { display:flex; align-items:baseline; gap:10px; margin:32px 0 18px; white-space:nowrap; }
.hb-price-v4 strong { color:var(--hb-text); font-size:clamp(3.5rem,6vw,5.35rem); line-height:.9; letter-spacing:-.07em; font-weight:740; }
.hb-price-v4 span { color:#7e8798; font-size:.92rem; }
.hb-price-card-v4__lead { max-width:390px; min-height:54px; margin:0 !important; color:#aeb6c5 !important; line-height:1.65; }
.hb-price-card-v4 .hibiki-checklist { margin:42px 0 36px !important; }
.hb-price-card-v4 .hibiki-checklist li { margin:14px 0; padding-left:26px; color:#b9c0ce; line-height:1.55; }
.hb-price-card-v4 .wp-block-buttons,
.hb-price-card-v4 .wp-block-shortcode { margin-top:auto !important; margin-bottom:0 !important; width:100%; }
.hb-price-card-v4 .wp-block-button,
.hb-price-card-v4 .wp-block-button__link,
.hb-price-card-v4 .hibiki-action-button { width:100%; }
.hb-billing-note { margin:22px 0 0 !important; padding:22px 2px 0; border-top:1px solid var(--hb-line-soft); }
.hb-billing-note p { max-width:780px; margin:0 !important; color:#7f8999 !important; font-size:.9rem; line-height:1.65; }

/* ---------- Download ---------- */
.hb-download-page { width:100%; margin:0 !important; }
.hb-download-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:0 !important; }
.hb-download-card {
    position:relative;
    min-width:0;
    min-height:410px;
    display:flex;
    flex-direction:column;
    padding:30px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:28px;
    background:radial-gradient(circle at 95% 0%, rgba(135,117,255,.1), transparent 38%), linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018));
    transition:transform .2s ease,border-color .2s ease;
}
.hb-download-card:hover { transform:translateY(-3px); border-color:rgba(169,184,255,.18); }
.hb-download-card--windows { background:radial-gradient(circle at 90% 5%, rgba(76,194,255,.12), transparent 42%),linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018)); }
.hb-download-card--steam { background:radial-gradient(circle at 90% 5%, rgba(102,192,244,.09), transparent 42%),linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018)); }
.hb-download-card--microsoft { background:radial-gradient(circle at 90% 5%, rgba(129,188,6,.08), transparent 42%),radial-gradient(circle at 72% 0%, rgba(5,166,240,.08), transparent 32%),linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018)); }
.hb-download-card__top { display:flex; align-items:center; gap:14px; margin-bottom:32px; }
.hb-download-card__icon { width:54px; height:54px; flex:0 0 54px; display:grid; place-items:center; padding:11px; border:1px solid rgba(255,255,255,.09); border-radius:17px; background:rgba(255,255,255,.055); }
.hb-download-card__icon svg { width:32px; height:32px; display:block; }
.hb-download-card__eyebrow { margin:0 0 4px !important; color:#aebcf1 !important; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.hb-download-card__platform { margin:0; color:#eff2f9; font-size:1.08rem; font-weight:720; letter-spacing:-.03em; }
.hb-download-card__title { max-width:14ch; margin:0 0 14px; font-size:var(--hb-card-title-size); line-height:1.08; letter-spacing:-.04em; }
.hb-download-card__description { max-width:34ch; margin:0; color:var(--hb-muted); font-size:.98rem; line-height:1.68; }
.hb-download-card__footer { display:grid; grid-template-columns:1fr; gap:10px; margin-top:auto; padding-top:32px; }
.hb-download-card__note { order:-1; display:inline-flex; align-items:center; gap:7px; color:#778196; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.hb-download-card__note::before { content:""; width:6px; height:6px; border-radius:50%; background:#626b7b; }
.hb-download-card .hibiki-action-button { width:100%; min-height:54px; white-space:nowrap; }

/* ---------- Guides ---------- */
.hibiki-guides-archive { padding: var(--hb-page-top) 0 var(--hb-page-bottom); }
.hb-guides-head { width:100%; margin:0 !important; padding:0 0 clamp(60px,7vw,88px); }
.hb-guides-head h1 { max-width:820px; margin:0 0 24px; font-size:var(--hb-page-title-size); line-height:.96; letter-spacing:-.062em; font-weight:735; text-wrap:balance; }
.hb-guides-lead { max-width:650px; margin:0 !important; color:var(--hb-muted) !important; font-size:1.08rem; line-height:1.68; }
.hb-guide-search-form { max-width:720px; min-height:58px; display:flex; align-items:center; gap:8px; margin:34px 0 0; padding:5px 6px 5px 18px; border:1px solid rgba(255,255,255,.11); border-radius:999px; background:rgba(255,255,255,.028); }
.hb-guide-search-form input[type="search"] { min-width:0; flex:1; padding:0; border:0; outline:0; background:transparent; color:#eef1f7; font:inherit; font-size:15px; }
.hb-guide-search-form button { width:46px; height:46px; flex:0 0 46px; display:grid; place-items:center; padding:0; border:0; border-radius:999px; background:rgba(255,255,255,.065); color:#eef1f7; cursor:pointer; }
.hb-guide-chips { display:flex; gap:8px; flex-wrap:wrap; margin-top:18px; }
.hb-guide-chips a { display:inline-flex; align-items:center; min-height:34px; padding:0 13px; border:1px solid rgba(255,255,255,.075); border-radius:999px; background:rgba(255,255,255,.022); color:#9099aa; font-size:12px; font-weight:650; text-decoration:none; }
.hb-guides-library { width:100%; margin:0 !important; padding-top:50px; border-top:1px solid var(--hb-line-soft); }
.hb-guides-library__head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:30px !important; }
.hb-guides-library__head h2 { margin:0; font-size:clamp(2rem,3.3vw,3rem); letter-spacing:-.045em; }
.hb-guides-library__head p { max-width:380px; margin:0; color:#767f90; font-size:.92rem; }
.hibiki-guide-grid .wp-block-post-template { gap:12px; }
.hibiki-guide-card { min-height:235px; padding:26px; border:1px solid var(--hb-line); border-radius:20px; background:rgba(255,255,255,.022); }
.hibiki-guide-card h2,.hibiki-guide-card h3 { margin:52px 0 10px; font-size:1.25rem; letter-spacing:-.027em; }
.hibiki-empty-state { min-height:250px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:42px; text-align:left; border:1px solid var(--hb-line); border-radius:22px; background:rgba(255,255,255,.016); }

/* ---------- Footer ---------- */
.hibiki-footer { padding:68px 0 28px; }
.hibiki-footer__top { display:grid !important; grid-template-columns:minmax(280px,1.1fr) minmax(0,1fr); gap:52px; align-items:start !important; }
.hibiki-footer__brand { max-width:390px; }
.hibiki-footer__links { width:100%; display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:0 !important; }
.hibiki-footer__bottom { margin-top:44px !important; }

/* ---------- Header / mobile navigation ---------- */
.hibiki-header__inner { padding-left:0; padding-right:0; }

@media (max-width: 1000px) {
    .hb-feature-story,
    .hb-feature-story--reverse { grid-template-columns:1fr; min-height:0; gap:46px; }
    .hb-feature-story--reverse .wp-block-shortcode { order:2; }
    .hb-feature-story--reverse .hb-feature-story__copy { order:1; }
    .hb-feature-story__copy { max-width:700px; }
    .hb-pricing-grid { grid-template-columns:1fr !important; }
    .hb-price-card-v4 { min-height:0; }
    .hb-download-grid { grid-template-columns:1fr; }
    .hb-download-card { min-height:320px; }
    .hibiki-footer__top { grid-template-columns:1fr; gap:34px; }
}

@media (max-width: 782px) {
    :root {
        --hb-gutter: 18px;
        --hb-page-top: 56px;
        --hb-page-bottom: 88px;
        --hb-section-space: 70px;
        --hb-page-title-size: clamp(2.55rem, 12vw, 3.8rem);
        --hb-section-title-size: clamp(2.3rem, 11vw, 3.7rem);
        --hb-content-heading-size: clamp(1.65rem, 8vw, 2.2rem);
        --hb-content-section-gap: 52px;
    }

    .admin-bar .hibiki-header { top:46px; }
    .hibiki-header { background:rgba(9,11,17,.94); }
    .hibiki-header__inner { min-height:64px; width:calc(100vw - (var(--hb-gutter) * 2)); gap:14px; }
    .hibiki-brand__logo { width:32px; height:32px; }
    .hibiki-brand__copy strong { font-size:14px; }

    /* Force a predictable full-screen navigation instead of WordPress' mixed defaults. */
    .hibiki-nav { margin-left:auto; }
    .hibiki-nav .wp-block-navigation__responsive-container-open {
        width:42px;
        height:42px;
        display:flex !important;
        align-items:center;
        justify-content:center;
        margin:0 !important;
        padding:0;
        border:1px solid rgba(255,255,255,.075);
        border-radius:13px;
        background:rgba(255,255,255,.035);
        color:#eef1f7;
    }
    .hibiki-nav .wp-block-navigation__responsive-container-open svg { width:20px; height:20px; }
    .hibiki-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none !important; }
    .hibiki-nav .wp-block-navigation__responsive-container.is-menu-open {
        position:fixed !important;
        inset:0 !important;
        width:100vw !important;
        height:100dvh !important;
        max-width:none !important;
        display:flex !important;
        flex-direction:column;
        padding:18px var(--hb-gutter) 28px !important;
        background:#090b11 !important;
        color:var(--hb-text) !important;
        z-index:999999 !important;
        overflow-y:auto;
    }
    .hibiki-nav .wp-block-navigation__responsive-close { width:100%; max-width:none; }
    .hibiki-nav .wp-block-navigation__responsive-dialog { width:100%; min-height:calc(100dvh - 46px); }
    .hibiki-nav .wp-block-navigation__responsive-container-close {
        top:0 !important;
        right:0 !important;
        width:42px;
        height:42px;
        display:flex;
        align-items:center;
        justify-content:center;
        margin:0 !important;
        padding:0;
        border:1px solid rgba(255,255,255,.075);
        border-radius:13px;
        background:rgba(255,255,255,.035);
        color:#eef1f7;
    }
    .hibiki-nav .wp-block-navigation__responsive-container-content {
        width:100%;
        padding-top:78px !important;
        align-items:stretch !important;
    }
    .hibiki-nav .wp-block-navigation__container {
        width:100%;
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        gap:0 !important;
    }
    .hibiki-nav .wp-block-navigation-item { width:100%; }
    .hibiki-nav .wp-block-navigation-item__content {
        width:100%;
        display:flex;
        align-items:center;
        justify-content:space-between;
        min-height:64px;
        padding:0 !important;
        border-bottom:1px solid rgba(255,255,255,.065);
        border-radius:0 !important;
        color:#f1f4fa !important;
        background:transparent !important;
        font-size:clamp(1.35rem,7vw,1.85rem);
        font-weight:690;
        letter-spacing:-.035em;
    }
    .hibiki-nav .wp-block-navigation-item__content::after { content:"↗"; color:#626c7d; font-size:.95rem; }
    .hibiki-nav .hibiki-nav-download { margin-top:22px; }
    .hibiki-nav .hibiki-nav-download .wp-block-navigation-item__content {
        min-height:56px;
        justify-content:center;
        padding:0 20px !important;
        border:0;
        border-radius:15px !important;
        background:linear-gradient(135deg,#e8f2ff,#c9b9ff) !important;
        color:#0a0d14 !important;
        font-size:1rem;
    }
    .hibiki-nav .hibiki-nav-download .wp-block-navigation-item__content::after { display:none; }

    .hibiki-page-hero { margin-bottom:34px !important; }
    .hibiki-page-content > p:first-child { margin-bottom:50px; font-size:1rem; }
    .hibiki-page-content h2 { margin-top:var(--hb-content-section-gap); font-size:var(--hb-content-heading-size); }
    .hibiki-page-content h3 { margin-top:36px; }
    .hibiki-page-content p,.hibiki-page-content li { font-size:.98rem; line-height:1.72; }

    .hb-page-deck,.hb-download-page > .hibiki-hero-copy { margin-bottom:48px !important; }
    .hb-feature-story { padding:58px 0; gap:34px; }
    .hb-page-product-image { padding:10px; border-radius:22px; }
    .hb-page-product-image img { border-radius:14px; }
    .hb-feature-wide { margin:50px 0 78px !important; padding:30px 24px; border-radius:24px; }
    .hb-feature-wide__columns { grid-template-columns:1fr !important; margin-top:52px !important; }
    .hb-feature-wide__columns > .wp-block-column { padding:24px 0 !important; }
    .hb-feature-wide__columns > .wp-block-column + .wp-block-column { border-left:0; border-top:1px solid var(--hb-line); }
    .hb-feature-final { padding-top:72px; }

    .hb-price-card-v4 { padding:28px 24px; border-radius:24px; }
    .hb-price-v4 strong { font-size:clamp(3.2rem,16vw,4.6rem); }
    .hb-billing-note { padding-inline:0; }

    .hb-download-card { min-height:0; padding:24px; border-radius:24px; }
    .hb-download-card__top { margin-bottom:26px; }
    .hb-download-card__icon { width:48px; height:48px; flex-basis:48px; padding:10px; }
    .hb-download-card__icon svg { width:28px; height:28px; }

    .hibiki-guides-archive { padding-top:var(--hb-page-top); padding-bottom:var(--hb-page-bottom); }
    .hb-guides-head { padding-bottom:58px; }
    .hb-guide-search-form { margin-top:28px; }
    .hb-guide-chips { gap:7px; }
    .hb-guides-library { padding-top:38px; }
    .hb-guides-library__head { align-items:flex-start; flex-direction:column; gap:8px; }
    .hibiki-guide-grid .wp-block-post-template { grid-template-columns:1fr !important; }

    .hibiki-footer { padding-top:56px; }
    .hibiki-footer__links { grid-template-columns:1fr 1fr !important; gap:28px 18px; }
    .hibiki-footer__bottom { flex-direction:column; align-items:flex-start !important; gap:8px; }
}

@media (max-width: 520px) {
    :root { --hb-gutter:16px; }
    .hibiki-brand__copy small { display:none; }
    .hibiki-footer__links { grid-template-columns:1fr !important; }
    .hb-download-card .hibiki-action-button { white-space:normal; text-align:center; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

/* Guides, taxonomy and search follow the same content rails. */
.hibiki-guide-single {
    width: min(var(--hb-site-width), calc(100vw - (var(--hb-gutter) * 2)));
    max-width: var(--hb-site-width);
    margin: 0 auto !important;
    padding: var(--hb-page-top) 0 var(--hb-page-bottom);
}
.hibiki-guide-single__hero,
.hibiki-guide-content-wrap,
.hb-guide-taxonomy__head,
.hb-guide-taxonomy > .wp-block-query {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.hibiki-guide-single__hero {
    max-width: 900px !important;
    padding-bottom: 52px;
}
.hibiki-guide-single__hero h1,
.hb-guide-taxonomy__head h1,
.hibiki-page-shell > .wp-block-query-title {
    max-width: 900px;
    margin: 0;
    font-size: var(--hb-page-title-size);
    line-height: .96;
    letter-spacing: -.06em;
    font-weight: 735;
}
.hibiki-guide-content-wrap .wp-block-post-content {
    width: min(var(--hb-reading-width), 100%);
    max-width: var(--hb-reading-width);
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.hb-guide-taxonomy__head { margin-bottom: 56px !important; }
.hb-guide-taxonomy__head .taxonomy-description,
.hb-guide-taxonomy__head .wp-block-term-description { max-width: 680px; color: var(--hb-muted); }

/* Search page uses the same rail as all other pages. */
.hibiki-page-shell > .wp-block-query-title,
.hibiki-page-shell > .wp-block-query {
    width: min(var(--hb-site-width), calc(100vw - (var(--hb-gutter) * 2)));
    max-width: var(--hb-site-width);
    margin-left: auto !important;
    margin-right: auto !important;
}
.hibiki-page-shell > .wp-block-query-title { margin-bottom: 48px !important; }

@media (max-width: 782px) {
    .hibiki-guide-single { width: calc(100vw - (var(--hb-gutter) * 2)); }
    .hibiki-guide-single__hero { padding-bottom: 38px; }
    .hb-guide-taxonomy__head { margin-bottom: 42px !important; }
}

/* Mobile density pass across the marketing homepage. */
@media (max-width: 782px) {
    .hb-home-hero { padding: 70px var(--hb-gutter) 36px; }
    .hb-home-hero__copy { margin-bottom: 42px !important; }
    .hb-home-hero h1 { font-size: clamp(3rem, 13vw, 4.8rem); }
    .hb-product-shot { width: calc(100vw - (var(--hb-gutter) * 2)); }

    .hb-story-section { padding: 76px var(--hb-gutter); }
    .hb-story-head { margin-bottom: 42px !important; }
    .hb-story-grid { gap: 36px !important; }
    .hb-media-card,
    .hb-media-card img { min-height: 360px; }

    .hb-feature-moment { padding: 0 var(--hb-gutter) 78px; }
    .hb-feature-moment__panel { min-height: 470px; padding: 28px; border-radius: 24px; }
    .hb-feature-moment__bottom { margin-top: 68px; }

    .hb-home-links { padding: 76px var(--hb-gutter) 88px; }
    .hb-home-links__head { margin-bottom: 34px !important; }
    .hb-link-card { min-height: 220px; padding: 24px; }

    .hb-final-cta { padding: 86px var(--hb-gutter) 96px; }
    .hb-final-cta h2 { font-size: clamp(2.9rem, 13vw, 4.5rem); }

    .hibiki-footer { padding-left: var(--hb-gutter); padding-right: var(--hb-gutter); }
}

@media (max-width: 520px) {
    .hb-media-card,
    .hb-media-card img { min-height: 320px; }
    .hb-feature-moment__panel { min-height: 430px; }
    .hb-home-actions { gap: 9px; }
}
