.flow-section{background-color:var(--color-white);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E")}.flow-header{text-align:center;margin-bottom:var(--spacing-xl)}.flow-title{font-family:var(--font-primary);font-size:2.2rem;font-weight:400;font-style:italic;line-height:1.45;color:var(--color-text-primary);margin-top:var(--spacing-sm)}.flow-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:900px;margin:0 auto var(--spacing-xl);position:relative}.flow-step{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;padding:0 var(--spacing-sm)}.flow-step-line{position:absolute;top:28px;left:calc(50% + 28px);right:calc(-50% + 28px);height:2px;background:linear-gradient(to right,var(--color-accent),var(--color-border));z-index:0}.flow-step-circle{width:56px;height:56px;border-radius:50%;background-color:var(--color-primary);border:2px solid var(--color-accent);display:flex;align-items:center;justify-content:center;position:relative;z-index:1;margin-bottom:var(--spacing-sm);transition:background-color .3s ease,transform .3s ease,box-shadow .3s ease;box-shadow:0 2px 8px rgba(201,169,110,.2)}.flow-step:hover .flow-step-circle{background-color:var(--color-accent);transform:scale(1.1);box-shadow:0 4px 16px rgba(201,169,110,.4)}.flow-step--highlight .flow-step-circle{background-color:var(--color-accent);box-shadow:0 4px 20px rgba(201,169,110,.4);width:64px;height:64px}.flow-step-icon{font-size:1.4rem;line-height:1}.flow-step-num{font-family:var(--font-primary);font-size:.65rem;font-weight:400;letter-spacing:.1em;color:var(--color-accent);margin-bottom:.25rem}.flow-step-title{font-family:var(--font-primary);font-size:1rem;font-weight:500;color:var(--color-text-primary);margin-bottom:var(--spacing-xs);line-height:1.4}.flow-step--highlight .flow-step-title{color:var(--color-accent)}.flow-step-desc{font-family:var(--font-secondary),var(--font-japanese);font-size:.82rem;color:var(--color-text-secondary);line-height:1.7}.flow-note{font-size:.8rem;letter-spacing:.15em;color:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-md);display:inline-block;margin:0 auto;display:table}.flow-certification-badge,.flow-note{text-align:center;font-family:var(--font-secondary),var(--font-japanese);font-weight:600;padding:var(--spacing-sm) var(--spacing-xl)}.flow-certification-badge{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.4em;font-size:.78rem;letter-spacing:.05em;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);width:-moz-fit-content;width:fit-content;margin:var(--spacing-md) auto 0;text-decoration:none;transition:border-color .3s ease,color .3s ease}.flow-certification-badge:hover{border-color:var(--color-accent);color:var(--color-accent)}@media (max-width:768px){.flow-timeline{grid-template-columns:1fr;gap:0;max-width:420px}.flow-step{flex-direction:row;text-align:left;align-items:flex-start;padding:0 0 var(--spacing-lg);gap:var(--spacing-md)}.flow-step-line{top:56px;left:27px;right:auto;width:2px;height:calc(100% - 28px);background:linear-gradient(to bottom,var(--color-accent),var(--color-border))}.flow-step-circle{flex-shrink:0;margin-bottom:0;margin-top:0}.flow-step--highlight .flow-step-circle{margin-top:-4px}.flow-step-content{padding-top:.25rem}.flow-title{font-size:1.6rem}}@media (max-width:480px){.flow-title{font-size:1.3rem}.flow-step-desc{font-size:.8rem}}