*{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-height) + 24px)}body{margin:0;color:var(--yusen-text);background:var(--yusen-bg);font-family:var(--font-sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15;letter-spacing:-.035em;overflow-wrap:anywhere;hyphens:auto}h1{font-size:clamp(2.15rem,4.3vw,4.2rem);font-weight:650;margin-bottom:var(--space-5);max-width:20ch}h2{font-size:clamp(1.6rem,2.8vw,2.6rem);font-weight:600;margin-bottom:var(--space-5)}h3{font-size:1.24rem;letter-spacing:-.02em}p{margin-bottom:var(--space-4)}a{color:var(--yusen-accent);text-underline-offset:4px}a:hover{color:var(--yusen-accent-hover)}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img,svg{max-width:100%}img{height:auto;display:block}figure{margin:0}a,td,th,p,li,dd{overflow-wrap:anywhere}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--yusen-focus);outline-offset:4px}button:disabled{opacity:.6;cursor:wait}[hidden]{display:none!important}.container{width:min(var(--container),calc(100% - 64px));margin-inline:auto}.reading{max-width:var(--reading)}.reading-wide{max-width:var(--reading-wide)}.page-shell{padding-block:var(--space-6) var(--space-8)}.page-intro{padding-block:var(--space-6);border-bottom:1px solid var(--yusen-border);margin-bottom:var(--space-7)}.section{margin-block:var(--section-space)}.section-heading{max-width:780px;margin-bottom:var(--space-6)}.soft-section{background:var(--yusen-bg-soft);padding-block:var(--section-space)}.soft-section .section{margin:0}.split-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-8);align-items:center}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap)}.eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:var(--yusen-accent);margin-bottom:var(--space-4)}.muted,small{color:var(--yusen-text-muted)}small{font-size:.82rem}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-block:var(--space-6)}.button{min-height:48px;display:inline-flex;gap:var(--space-3);align-items:center;justify-content:center;background:var(--yusen-accent);color:var(--yusen-inverse);border:1px solid var(--yusen-accent);border-radius:var(--radius);padding:.7rem 1.25rem;text-decoration:none;font-size:.9rem;font-weight:650;line-height:1.4}.button:hover{background:var(--yusen-accent-hover);color:var(--yusen-inverse)}.button.secondary{background:transparent;color:var(--yusen-accent)}.button.secondary:hover{background:var(--yusen-bg-soft)}.button svg{flex-shrink:0}.notice{background:var(--yusen-bg-soft);border-left:3px solid var(--yusen-accent);padding:var(--space-5);font-size:.9rem}.demo-label{font-size:.68rem;font-weight:700;letter-spacing:.12em;color:var(--yusen-text-muted);margin-block:var(--space-5) 0}.success{color:var(--yusen-success);border:1px solid currentColor;padding:var(--space-4)}.form-error{color:var(--yusen-error)}.skip-link{position:fixed;top:0;left:12px;z-index:999;padding:12px;background:var(--yusen-bg);transform:translateY(-120%)}.skip-link:focus{transform:none}.entry-content h2,.entry-content h3{margin-top:var(--space-7)}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.gallery img{width:100%;height:auto}.pagination{margin-top:var(--space-6)}.page-numbers{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;border:1px solid var(--yusen-border);padding:var(--space-2)}
@media(min-width:1200px){.grid-12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap)}}
@media(max-width:900px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-section{gap:var(--space-6)}}
@media(max-width:600px){:root{--header-height:76px;--grid-gap:1rem}.container{width:calc(100% - 32px)}.card-grid,.split-section,.gallery{grid-template-columns:1fr}.page-intro{padding-block:var(--space-5);margin-bottom:var(--space-6)}.page-shell{padding-top:var(--space-4)}.button-row{align-items:stretch}.button-row .button{flex:1 1 180px}.section{margin-block:var(--space-7)}.soft-section{padding-block:var(--space-7)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
