.rail-wrap{position:relative}.rail-count{position:absolute;z-index:3;top:calc(var(--space-sm) * -1);right:0;margin:0;padding:2px var(--space-sm);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-surface) 85%,transparent);border:1px solid var(--color-border);color:var(--color-text-soft);font-size:var(--text-xs);pointer-events:none}.rail-arrow{position:absolute;top:50%;z-index:2;display:none;place-items:center;width:36px;height:36px;transform:translateY(-50%);border-radius:50%;border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface) 90%,transparent);color:var(--color-text);font-size:20px;line-height:1;cursor:pointer;transition:transform var(--dur-fast,.15s) var(--ease,ease-out),background var(--dur-fast,.15s) var(--ease,ease-out)}.rail-arrow--prev{left:calc(var(--gutter) * -.25)}.rail-arrow--next{right:calc(var(--gutter) * -.25)}.rail-arrow:hover{background:var(--color-surface-strong);transform:translateY(-50%) scale(1.06)}.rail-arrow:active{transform:translateY(-50%) scale(.96)}.rail-arrow:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (hover:hover) and (pointer:fine){.rail-arrow{display:grid}}@media (prefers-reduced-motion:reduce){.rail-arrow{transition:none}.rail-arrow:hover{transform:translateY(-50%)}}.carousel .rail-count{right:var(--carousel-edge,16px);top:var(--space-sm)}.carousel .rail-arrow--prev{left:var(--carousel-edge,16px)}.carousel .rail-arrow--next{right:var(--carousel-edge,16px)}.shelf{margin-top:var(--home-gap-rail)}.shelf-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-lg)}.shelf-head__title{font-size:var(--text-xl);font-weight:800;line-height:var(--lh-snug);letter-spacing:-.03em}.shelf-head__more{flex:0 0 auto;font-size:var(--text-sm);color:var(--color-text-faint)}.shelf-rail{display:flex;gap:var(--card-gap);margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scroll-padding-inline:var(--gutter);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.shelf-rail::-webkit-scrollbar{display:none}.shelf-rail[data-dragging=true]{scroll-snap-type:none;cursor:-webkit-grabbing;cursor:grabbing}.shelf-rail>li{scroll-snap-align:start}.shelf-rail__slot{flex:0 0 calc((100% - var(--card-gap) * 2) / 2.3)}.qcover{position:relative;display:block;aspect-ratio:var(--card-poster-ratio);border-radius:var(--radius-2xl);overflow:hidden;background:var(--color-surface-strong);color:var(--color-text-on-accent)}.qcover__img{width:100%;height:100%;object-fit:cover;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qcover__shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,color-mix(in srgb,var(--color-overlay-dark) 78%,transparent) 100%)}.qcover__copy{position:absolute;left:var(--space-lg);right:var(--space-md);bottom:var(--space-md);display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.qcover__kicker{font-size:var(--text-xxs);color:color-mix(in srgb,var(--color-overlay-light) 72%,transparent)}.qcover__title{font-size:var(--text-xl);font-weight:700;line-height:var(--lh-snug);letter-spacing:-.03em;word-break:keep-all}.qcover__price{margin-top:var(--space-2xs);font-size:var(--text-xs);color:var(--color-accent-bg)}.rank{border:1px solid var(--color-border);border-radius:var(--radius-2xl);overflow:hidden}.rank li+li{border-top:1px solid var(--color-border-soft)}.rank__item{display:grid;grid-template-columns:42px 1fr auto;align-items:center;min-height:var(--header-height);padding:var(--space-sm) var(--space-lg)}.rank__no{font-size:var(--text-5xl);font-weight:300;color:var(--color-accent)}.rank__body{display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs);min-width:0}.rank__title{font-size:var(--text-md);font-weight:650}.rank__meta{font-size:var(--text-xxs);color:var(--color-text-faint)}.rank__price{font-size:var(--text-sm);font-weight:700;color:var(--color-accent)}.expert-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--card-gap-sm);gap:var(--card-gap-sm)}.expert-card{position:relative;display:block;aspect-ratio:3/4;border-radius:var(--radius-2xl);overflow:hidden;background:var(--color-surface-strong);color:var(--color-text-on-accent)}.expert-card__img{width:100%;height:100%;object-fit:cover}.expert-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,color-mix(in srgb,var(--color-overlay-dark) 70%,transparent) 100%)}.expert-card__copy{position:absolute;left:var(--space-md);bottom:var(--space-md);display:grid}.expert-card__name{font-size:var(--text-lg);font-weight:800}.expert-card__field{font-size:var(--text-xxs);color:color-mix(in srgb,var(--color-overlay-light) 82%,transparent)}.review-slot{flex:0 0 250px}.review{height:100%;padding:var(--space-xl);border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-bg);box-shadow:var(--shadow-sm)}.review__nick{font-size:var(--text-sm);font-weight:700}.review__body{margin-top:var(--space-sm);font-size:var(--text-md);line-height:var(--lh-body);color:var(--color-text-body)}.review__chip{display:inline-flex;margin-top:var(--space-md);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-pill);background:var(--color-accent-bg);color:var(--color-accent);font-size:var(--text-xs)}.qlist{border:1px solid var(--color-border);border-radius:var(--radius-2xl);overflow:hidden}.qlist li+li{border-top:1px solid var(--color-border-soft)}.qlist__row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:var(--space-md);gap:var(--space-md);padding:var(--space-lg) var(--space-xl)}.qlist__tag{padding:var(--space-3xs) var(--space-sm);border-radius:var(--radius-pill);background:var(--color-accent-bg);color:var(--color-accent);font-size:var(--text-xxs);font-weight:700}.qlist__label{font-size:var(--text-md)}.qlist__go{color:var(--color-accent);font-size:var(--text-3xl);line-height:1}.banner-slot{flex:0 0 calc(100% - var(--space-8xl))}.banner{position:relative;display:block;aspect-ratio:16/9;border-radius:var(--radius-2xl);overflow:hidden;background:var(--color-surface-strong)}.banner__img{width:100%;height:100%;object-fit:cover;-webkit-user-select:none;-moz-user-select:none;user-select:none}.banner__copy{position:absolute;top:0;bottom:0;display:grid;align-content:center;grid-gap:var(--space-2xs);gap:var(--space-2xs);padding:var(--space-lg)}.banner[data-align=end] .banner__copy{right:0;width:40%}.banner[data-align=start] .banner__copy{left:0;width:50%;padding-left:var(--space-2xl)}.banner[data-tone=light]{color:var(--color-text-on-accent)}.banner[data-tone=dark]{color:var(--color-text)}.banner__eyebrow{font-size:var(--text-xxs);opacity:.8}.banner__title{font-size:var(--text-xl);font-weight:800;line-height:var(--lh-snug);letter-spacing:-.03em;word-break:keep-all}.banner__caption{font-size:var(--text-xxs);line-height:var(--lh-title);opacity:.8;word-break:keep-all}.situation{position:relative;display:block;aspect-ratio:var(--card-expert-ratio);border-radius:var(--radius-2xl);overflow:hidden;background:var(--color-surface-strong);color:var(--color-text-on-accent)}.situation__img{width:100%;height:100%;object-fit:cover;-webkit-user-select:none;-moz-user-select:none;user-select:none}.situation__shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,color-mix(in srgb,var(--color-overlay-dark) 30%,transparent) 52%,color-mix(in srgb,var(--color-overlay-dark) 62%,transparent) 72%,color-mix(in srgb,var(--color-overlay-dark) 82%,transparent) 100%);border-radius:inherit}.situation__copy{position:absolute;left:var(--space-lg);right:var(--space-md);bottom:var(--space-md);display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.situation__line{font-size:var(--text-xl);font-weight:800;line-height:var(--lh-snug);letter-spacing:-.03em;word-break:keep-all}.situation__part{display:block}.situation__kicker{font-size:clamp(11px,3.4vw,var(--text-md));white-space:nowrap;letter-spacing:-.01em;color:color-mix(in srgb,var(--color-overlay-light) 80%,transparent)}.shelf .rail-count{top:calc(100% + var(--space-sm))}.shelf .rail-wrap{margin-bottom:calc(var(--space-4xl) * 2)}.qcover__label{font-size:var(--text-xxs);line-height:var(--lh-title);color:color-mix(in srgb,var(--color-overlay-light) 78%,transparent)}.qlist__text{display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs);min-width:0}.qlist__hook{font-size:var(--text-md);font-weight:700}.qlist__text .qlist__label{font-size:var(--text-xxs);color:var(--color-text-soft)}.shelf-rail__slot--wide{flex:0 0 calc((100% - var(--card-gap)) / 1.6)}.premium-card{display:grid;border:1px solid var(--color-border);border-radius:var(--radius-2xl);overflow:hidden;background:var(--color-bg);box-shadow:var(--shadow-sm)}.premium-card__media{display:block;aspect-ratio:3/4;background:var(--color-surface-strong)}.premium-card__img{width:100%;height:100%;object-fit:cover;object-position:center top;-webkit-user-select:none;-moz-user-select:none;user-select:none}.premium-card__body{display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs);padding:var(--space-lg) var(--space-lg) var(--space-xl)}.premium-card__chapters{justify-self:start;padding:var(--space-3xs) var(--space-sm);border-radius:var(--radius-pill);background:var(--color-accent-bg);color:var(--color-accent);font-size:var(--text-xxs);font-weight:700}.premium-card__name{font-size:var(--text-xl);font-weight:800;line-height:var(--lh-snug);letter-spacing:-.03em}.premium-card__desc{font-size:var(--text-sm);line-height:var(--lh-normal);color:var(--color-text-soft)}.premium-card__price{margin-top:var(--space-2xs);font-size:var(--text-lg);font-weight:800;color:var(--color-accent)}.talk-rail{list-style:none;display:flex;gap:var(--card-gap);margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.talk-rail::-webkit-scrollbar{display:none}.talk-rail__slot{flex:0 0 42%;scroll-snap-align:start}.talk-card{position:relative;display:block;aspect-ratio:9/16;border-radius:var(--radius-2xl);overflow:hidden;color:var(--color-text-on-accent);background:var(--color-media-placeholder)}.talk-card__media,.talk-card__shade{position:absolute;inset:0}.talk-card__shade{background:linear-gradient(180deg,transparent 50%,color-mix(in srgb,var(--color-overlay-dark) 80%,transparent))}.talk-card__copy{position:absolute;left:var(--space-md);right:var(--space-md);bottom:var(--space-md);display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.talk-card__name{font-size:var(--text-xl);font-weight:800}.talk-card__spec{font-size:var(--text-xs);font-weight:600;opacity:.85}.talk-card__line{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--text-xs);line-height:var(--lh-normal);opacity:.9;word-break:keep-all}.qgrid-more{display:flex;align-items:center;justify-content:center;min-height:var(--cta-height);margin-top:var(--space-lg);border-radius:var(--radius-xl);border:1px solid var(--color-border-strong);color:var(--color-accent);font-size:var(--text-lg);font-weight:700}.spotlight{position:relative;display:block;aspect-ratio:4/5;border-radius:var(--radius-2xl);overflow:hidden;color:var(--color-text-on-accent)}.spotlight__img{width:100%;height:100%;object-fit:cover}.spotlight__shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,color-mix(in srgb,var(--color-overlay-dark) 82%,transparent))}.spotlight__copy{position:absolute;left:var(--space-2xl);right:var(--space-2xl);bottom:var(--space-2xl);display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.spotlight__eyebrow{font-size:var(--text-xs);font-weight:700;opacity:.85}.spotlight__name{font-size:var(--text-5xl);font-weight:800;line-height:var(--lh-tight)}.spotlight__desc{font-size:var(--text-md);line-height:var(--lh-normal);opacity:.9}.spotlight__price{margin-top:var(--space-2xs);font-size:var(--text-xl);font-weight:800}.premium-banner{position:relative;display:block;margin-bottom:var(--card-gap);border-radius:var(--radius-2xl);overflow:hidden;color:var(--color-text-on-accent)}.premium-banner__img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.premium-banner__copy{position:absolute;right:var(--space-2xl);top:50%;transform:translateY(-50%);display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs);width:48%;text-align:right}.premium-banner__eyebrow{font-size:var(--text-xs);font-weight:700;color:var(--color-gold)}.premium-banner__title{font-size:var(--text-3xl);font-weight:700;line-height:var(--lh-snug);word-break:keep-all}.talk-expand{position:fixed;z-index:100;border-radius:var(--radius-2xl);background:var(--color-text) center 20% /cover no-repeat;transition:top .4s var(--ease),left .4s var(--ease),width .4s var(--ease),height .4s var(--ease),border-radius .4s var(--ease)}.talk-expand[data-open=true]{top:0!important;left:var(--app-edge)!important;width:min(100vw,var(--layout-shell-max))!important;height:100dvh!important;border-radius:0}.expert-card{border-radius:var(--radius-xl)}