.section-bg-primary{background-color:hsl(var(--surface-0))}.section-bg-secondary{background-color:hsl(var(--surface-1))}.section-divider-hairline{border-top:1px solid hsl(var(--border))}.decision-ui-box{border:1px solid hsl(var(--border));border-radius:var(--radius-xl);padding:clamp(1.5rem,3vw,2.5rem) clamp(1.75rem,4vw,3rem)}.dark .decision-ui-box,.decision-ui-box{background-color:hsl(var(--surface-2))}.section-wrapper{overflow:hidden;padding:5rem 0;position:relative}@media (min-width:768px){.section-wrapper{padding:6rem 0}}@media (min-width:1024px){.section-wrapper{padding:7rem 0}}.section-container-unified{margin:0 auto;max-width:1200px;padding:0 2rem;position:relative;z-index:10}@media (min-width:640px){.section-container-unified{padding:0 3rem}}@media (min-width:1024px){.section-container-unified{padding:0 4rem}}.section-container-narrow{margin-left:auto;margin-right:auto;max-width:880px}.section-container-tight{margin-left:auto;margin-right:auto;max-width:720px}.container-7xl-padded{margin-left:auto;margin-right:auto;max-width:80rem;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.container-7xl-padded{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container-7xl-padded{padding-left:2rem;padding-right:2rem}}.content-5xl-padded{max-width:64rem}.content-5xl-padded,.content-md-padded{margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}.content-md-padded{max-width:28rem}@media (min-width:640px){.content-5xl-padded,.content-md-padded{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.content-5xl-padded,.content-md-padded{padding-left:2rem;padding-right:2rem}}.card-unified{background-color:hsl(var(--surface-2));border:1px solid hsl(var(--border));border-radius:var(--radius-xl);color:hsl(var(--card-foreground));padding:1.75rem;transition:background-color .2s ease,border-color .2s ease,color .2s ease}@media (min-width:768px){.card-unified{padding:2.25rem 2.5rem}}.card-unified dd,.card-unified li,.card-unified p,.card-unified span.block{font-size:clamp(1rem,.2vw + .94rem,1.125rem);line-height:1.8}.card-unified h3,.card-unified h4{font-size:clamp(1.125rem,.35vw + 1rem,1.3125rem);line-height:1.45}.dark .card-unified{background-color:hsl(var(--surface-2))}.card-unified .text-muted-foreground,.surface-panel .text-muted-foreground,.surface-panel-muted .text-muted-foreground{color:hsl(var(--text-secondary))}.icon-badge-primary{align-items:center;background-color:hsl(var(--primary)/.12);border:1px solid hsl(var(--primary)/.22);border-radius:9999px;color:hsl(var(--primary));display:inline-flex;flex-shrink:0;justify-content:center}.dark .icon-badge-primary{background-color:hsl(var(--primary)/.18);border-color:hsl(var(--primary)/.28)}.card-elevated{border:1px solid hsl(var(--border));border-radius:var(--radius-xl);color:hsl(var(--card-foreground));padding:2rem;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.card-elevated,.dark .card-elevated,.surface-panel{background-color:hsl(var(--surface-2))}.surface-panel{border:1px solid hsl(var(--border));border-radius:var(--radius-xl);color:hsl(var(--foreground));padding:clamp(1.75rem,4vw,2.5rem)}@media (min-width:768px){.surface-panel{padding:clamp(2rem,4vw,3rem)}}.surface-panel-muted{background-color:hsl(var(--surface-1));border:1px solid hsl(var(--border));border-radius:var(--radius-xl);color:hsl(var(--foreground));padding:clamp(1.75rem,4vw,2.5rem)}.site-refined-text{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.box-border{border:1px solid hsl(var(--border));border-radius:var(--radius-xl)}.box-border-2{border:2px solid hsl(var(--border));border-radius:var(--radius-xl)}.box-border-lg{border:1px solid hsl(var(--border));border-radius:var(--radius,.5rem)}.section-heading{margin-bottom:var(--section-gap-sm,clamp(3rem,6vw,5rem));text-align:center}.section-heading-title{color:hsl(var(--text-primary));font-family:var(--font-heading-en),var(--font-noto-sans-jp),system-ui,sans-serif;font-size:clamp(1.5rem,3.8vw + .35rem,2.25rem);font-weight:600;letter-spacing:var(--tracking-heading,-.03em);line-height:var(--leading-heading,1.25);margin-bottom:var(--heading-gap,1.5rem)}.section-heading-description{color:hsl(var(--text-secondary));font-size:clamp(1.0625rem,1.5vw + .5rem,1.3125rem);letter-spacing:var(--tracking-body,.015em);line-height:1.8;margin:0 auto .5rem;max-width:65ch}.section-heading-label{color:hsl(var(--text-secondary));font-size:clamp(.8125rem,.15vw + .75rem,.875rem);font-weight:500;letter-spacing:.18em;text-transform:uppercase}@media (min-width:768px){.section-heading-label{font-size:.875rem;letter-spacing:.2em}}.section-heading-left{margin-bottom:var(--section-gap-sm,clamp(3rem,6vw,5rem));text-align:left}.section-heading-left .section-heading-title{text-align:left}.section-heading-description-left,.section-heading-left .section-heading-description{margin-left:0;margin-right:0;text-align:left}.section-heading-title-strong{color:hsl(var(--text-primary));font-family:var(--font-heading-en),var(--font-noto-sans-jp),system-ui,sans-serif;font-size:clamp(1.75rem,3.5vw + .25rem,2.5rem);font-weight:600;letter-spacing:var(--tracking-heading,-.03em);line-height:var(--leading-heading,1.25);margin-bottom:1.25rem;max-width:36em;text-align:left}@media (min-width:768px){.section-heading-title-strong{font-size:clamp(2rem,4vw + .35rem,2.75rem)}}.heading-xl{font-size:clamp(1.25rem,.35vw + 1.1rem,1.5rem);letter-spacing:var(--tracking-heading,-.03em);line-height:var(--leading-heading,1.25)}.heading-lg,.heading-xl{color:hsl(var(--text-primary));font-weight:600}.heading-lg{font-size:clamp(1.125rem,.25vw + 1rem,1.3125rem);letter-spacing:var(--tracking-heading,-.02em);line-height:1.35}.related-section-title{color:hsl(var(--text-primary));font-size:1.25rem;font-weight:600;margin-bottom:1rem}.related-section-wrapper{border-top:1px solid hsl(var(--border));margin-top:3rem;padding-top:2rem}.related-links-list{color:hsl(var(--text-muted));display:flex;flex-wrap:wrap;gap:1rem}.gap-section-sm{padding-bottom:var(--section-gap-sm);padding-top:var(--section-gap-sm)}.gap-section-md{padding-bottom:var(--section-gap-md);padding-top:var(--section-gap-md)}.gap-section-lg{padding-bottom:var(--section-gap-lg);padding-top:var(--section-gap-lg)}.content-read{max-width:48rem}.content-max-4xl,.content-read{margin-left:auto;margin-right:auto}.content-max-4xl{max-width:56rem}.content-max-5xl{max-width:64rem}.content-max-5xl,.content-max-6xl{margin-left:auto;margin-right:auto}.content-max-6xl{max-width:72rem}.content-max-3xl{margin-left:auto;margin-right:auto;max-width:48rem}.content-container-padded{margin-left:auto;margin-right:auto;max-width:56rem;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.content-container-padded{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.content-container-padded{padding-left:2rem;padding-right:2rem}}.content-reading-padded{margin-left:auto;margin-right:auto;max-width:50rem;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.content-reading-padded{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.content-reading-padded{padding-left:2rem;padding-right:2rem}}.tools-page-container{margin-left:auto;margin-right:auto;max-width:72rem;padding:3rem 1rem}@media (min-width:640px){.tools-page-container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.tools-page-container{padding-left:2rem;padding-right:2rem}}.type-body{color:hsl(var(--text-secondary));line-height:1.75}.lead-primary{color:hsl(var(--text-primary));font-size:1.125rem;font-weight:600}@media (min-width:768px){.lead-primary{font-size:1.25rem}}.lead-secondary{color:hsl(var(--text-secondary));font-size:clamp(1.0625rem,.2vw + 1rem,1.25rem)}.lead-secondary,.type-body-large{letter-spacing:var(--tracking-body,.015em);line-height:1.8}.type-body-large{font-size:clamp(1.125rem,2vw,1.3125rem)}.type-caption{color:hsl(var(--text-muted));font-size:clamp(.9375rem,.2vw + .875rem,1rem);letter-spacing:var(--tracking-caption,.02em);line-height:1.65}.section-background-decoration{inset:0;overflow:hidden;pointer-events:none;position:absolute;z-index:1}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}:focus-visible{border-radius:var(--radius-md);outline:2px solid hsl(var(--primary));outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.info-box,.prose-highlight-box{background:hsl(var(--info-bg));border:1px solid hsl(var(--info-border));border-radius:var(--radius,.5rem);margin:2rem 0;padding:1.5rem}.warning-box{background:hsl(var(--warning-bg));border:1px solid hsl(var(--warning-border));border-radius:var(--radius,.5rem);margin:2rem 0;padding:1.5rem}.text-gradient-primary{background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--primary)/.75) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent}.blog-content{background:transparent;color:hsl(var(--blog-fg));font-weight:400;letter-spacing:var(--tracking-body,.015em);line-height:var(--leading-body,1.8);margin:0 auto;max-width:70ch}.blog-content p{color:hsl(var(--blog-fg));font-size:1.125rem;line-height:1.85;margin-bottom:1.6rem;text-align:left}.blog-content h1{border:none;color:hsl(var(--blog-heading));font-size:clamp(2.5rem,5vw,4rem);font-weight:600;letter-spacing:var(--tracking-heading,-.03em);line-height:1.15;margin-bottom:3rem;margin-top:5rem;padding:0;scroll-margin-top:4rem}.blog-content h1:before{display:none}.blog-content h2{background:none;border:none;color:hsl(var(--blog-heading));font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;letter-spacing:var(--tracking-heading,-.03em);line-height:1.25;margin-bottom:1.5rem;margin-top:4.25rem;padding:0;position:relative;scroll-margin-top:4rem}.blog-content h2:before{display:none}.blog-content h2:after{background:hsl(var(--primary));bottom:-1rem;content:"";height:1px;left:0;opacity:.45;position:absolute;width:60px}.blog-content h2+.case-study-box,.blog-content h2+.definition-box,.blog-content h2+.guide-section-marker,.blog-content h2+.role-card,.blog-content h2+.step-card,.blog-content h2+.summary-box,.blog-content h2+ol,.blog-content h2+p,.blog-content h2+ul{margin-top:.65rem}.blog-content h3{color:hsl(var(--blog-heading));font-size:clamp(1.5rem,2.5vw,2rem);letter-spacing:-.02em;line-height:1.35;margin-bottom:1.25rem;margin-top:3rem}.blog-content h3,.blog-content h4{font-weight:600;scroll-margin-top:3rem}.blog-content h4{color:hsl(var(--blog-fg-muted));font-size:clamp(1.25rem,2vw,1.5rem);letter-spacing:-.01em;margin-bottom:1rem;margin-top:2.25rem}.blog-content img{border-radius:0;display:block;margin:4rem auto;max-width:100%;opacity:.95;transition:opacity .2s ease}.blog-content img:hover{opacity:1}.blog-content a:not(.cta-button){border-bottom:1px solid hsl(var(--primary)/.35);color:hsl(var(--blog-link));font-weight:500;text-decoration:none;transition:color .2s ease,border-color .2s ease}.blog-content a:not(.cta-button):hover{border-bottom-color:hsl(var(--primary));border-bottom-width:2px;color:hsl(var(--primary)/.82)}.blog-content code{background:hsl(var(--blog-inline-code-bg));border:none;border-radius:0;color:hsl(var(--blog-inline-code-fg));font-family:SF Mono,Monaco,Consolas,Courier New,monospace;font-size:.9em;font-weight:400;letter-spacing:0;padding:.15rem .4rem}.blog-code-block,.blog-content pre{background:hsl(var(--blog-pre-bg));border:1px solid hsl(var(--border));border-radius:0;counter-reset:line;margin:4rem 0;overflow-x:auto;position:relative;scrollbar-color:hsl(var(--primary)/.5) transparent;scrollbar-width:thin}.blog-code-block:after,.blog-content pre:after{background:linear-gradient(to left,hsl(var(--blog-pre-bg)) 0,hsl(var(--blog-pre-bg)/.8) 50%,transparent 100%);bottom:0;content:"";opacity:.9;pointer-events:none;position:absolute;right:0;top:0;width:40px;z-index:1}.blog-code-block:before,.blog-content pre:before{display:none}.blog-code-block code,.blog-content pre code{background:transparent!important;border:none;color:hsl(var(--blog-pre-fg));display:block;font-family:SF Mono,Monaco,Consolas,Courier New,monospace;font-size:.875rem;font-weight:400;letter-spacing:.01em;line-height:1.8;overflow-x:auto;padding:2.5rem;white-space:pre}.blog-code-block code .line,.blog-content pre code .line{counter-increment:line;display:block;padding-left:3rem;position:relative}.blog-code-block code .line:before,.blog-content pre code .line:before{color:hsl(var(--blog-pre-line));content:counter(line);font-size:.75rem;left:0;padding-right:1rem;position:absolute;text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:2rem}.blog-content blockquote{background:transparent;border:none;border-left:2px solid hsl(var(--primary));border-radius:0;color:hsl(var(--blog-fg-muted));font-size:1.25rem;font-style:normal;font-weight:400;letter-spacing:var(--tracking-body,.015em);line-height:1.8;margin:4rem 0;padding:0 0 0 2rem;position:relative}.blog-content blockquote:before{display:none}.blog-content ol,.blog-content ul{list-style:none;margin:1.75rem 0;padding-left:1.5rem}.blog-content ol li,.blog-content ul li{color:hsl(var(--blog-fg));line-height:1.8;margin:1rem 0;padding-left:1.5rem;position:relative}.blog-content ul li:before{color:hsl(var(--primary));content:"—";font-weight:400;left:0;position:absolute}.blog-content ol{counter-reset:list-counter}.blog-content ol li{counter-increment:list-counter}.blog-content ol li:before{color:hsl(var(--primary));content:counter(list-counter) ".";font-weight:500;left:0;position:absolute}.blog-content table{border:none;border-collapse:collapse;border-radius:0;border-spacing:0;display:block;margin:4rem 0;overflow-x:auto;position:relative;scrollbar-color:hsl(var(--primary)/.5) transparent;scrollbar-width:thin;width:100%}.blog-content table:after{background:linear-gradient(to left,hsl(var(--background)) 0,hsl(var(--background)/.8) 50%,transparent 100%);bottom:0;content:"";opacity:.9;pointer-events:none;position:absolute;right:0;top:0;width:40px;z-index:1}.blog-content thead{display:table-header-group}.blog-content tbody{display:table-row-group}.blog-content tr{display:table-row}.blog-content th{background:transparent;border-bottom:1px solid hsl(var(--border));color:hsl(var(--blog-fg-muted));font-size:.875rem;font-weight:600;letter-spacing:.04em;padding:1rem 1.5rem;text-align:left}.blog-content td{border:none;border-bottom:1px solid hsl(var(--border));color:hsl(var(--blog-fg));padding:1rem 1.5rem}.blog-content tbody tr:nth-child(2n){background-color:hsl(var(--blog-table-stripe))}.blog-content hr{background:hsl(var(--border));border:none;height:1px;margin:5rem 0;width:60px}.blog-content strong{background:transparent;color:hsl(var(--blog-heading));font-weight:600}.blog-content .cta-button,.blog-content a.cta-button{background:hsl(var(--blog-cta-bg));border:2px solid hsl(var(--blog-cta-border));border-radius:var(--radius,.5rem);color:hsl(var(--blog-cta-fg));cursor:pointer;display:block;font-size:.9375rem;font-weight:600;letter-spacing:.08em;margin:4rem auto;max-width:600px;padding:1.25rem 3rem;text-align:center;text-decoration:none;text-transform:uppercase;transition:background-color .2s ease,border-color .2s ease}.blog-content .cta-button:hover,.blog-content a.cta-button:hover{background:hsl(var(--blog-cta-hover-bg));border-color:hsl(var(--blog-cta-hover-bg));color:hsl(var(--blog-cta-fg))}.blog-content details{border-radius:var(--radius,.5rem);margin:2.5rem 0;transition:border-color .2s ease,background-color .2s ease}.blog-content details[open]{background:hsl(var(--primary)/.05);border:1px solid hsl(var(--primary)/.2)}.blog-content details summary{align-items:center;border-radius:var(--radius,.5rem);color:hsl(var(--primary));cursor:pointer;display:flex;font-weight:500;gap:.75rem;list-style:none;margin:-1rem -1.25rem;padding:1rem 1.25rem;position:relative;transition:background-color .2s ease,color .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.blog-content details summary::-webkit-details-marker,.blog-content details summary::marker{display:none}.blog-content details summary:before{color:hsl(var(--primary));content:"▶";display:inline-block;flex-shrink:0;font-size:.75rem;line-height:1;transition:transform .2s ease}.blog-content details[open] summary:before{transform:rotate(90deg)}.blog-content details summary:hover{background:hsl(var(--primary)/.08)}.blog-content details summary:active{opacity:.9}.blog-content details[open]>:not(summary){margin:0;padding:1.5rem 1.25rem 1.25rem}.blog-content code details,.blog-content pre details{background:transparent;border:none;margin:0}.blog-content code details summary,.blog-content pre details summary{background:transparent;color:inherit;margin:0;padding:.5rem 0}.blog-content code details summary:hover,.blog-content pre details summary:hover{background:transparent;padding-left:0}.step-card{background:hsl(var(--blog-panel-bg));border:1px solid hsl(var(--blog-panel-border));border-left:3px solid hsl(var(--primary));margin:1.75rem 0;padding:1.5rem 1.75rem}.step-card,.step-warning{border-radius:var(--radius,.5rem)}.step-warning{background:hsl(var(--warning-bg));border-left:3px solid hsl(var(--warning-border));color:hsl(var(--warning-text));font-size:.9375rem;font-weight:500;margin:1.5rem 0;padding:1rem 1.25rem}.case-study-box{background:hsl(var(--blog-panel-bg));border:1px solid hsl(var(--blog-panel-border));border-radius:var(--radius-md,1rem);margin:2rem 0;padding:1.5rem;position:relative}.case-study-box:before{background:hsl(var(--primary));border-radius:var(--radius-md,1rem) 0 0 var(--radius-md,1rem);content:"";height:100%;left:0;position:absolute;top:0;width:4px}.definition-box{background:hsl(var(--info-bg));border:1px solid hsl(var(--info-border));border-radius:var(--radius,.5rem);margin:1.5rem 0;padding:1.2rem 1.35rem}.failure-pattern{background:hsl(var(--error-bg));border-left:3px solid hsl(var(--error-border));color:hsl(var(--error-text))}.failure-pattern,.success-pattern{border-radius:var(--radius,.5rem);margin:1.5rem 0;padding:1.25rem}.success-pattern{background:hsl(var(--success-bg));border-left:3px solid hsl(var(--success-border));color:hsl(var(--success-text))}.role-card{background:hsl(var(--blog-panel-bg));border:1px solid hsl(var(--blog-panel-border));border-radius:var(--radius,.5rem);margin:1.1rem 0;padding:1.2rem 1.35rem;transition:border-color .2s ease}.role-card:hover{border-color:hsl(var(--primary)/.35)}.glossary-section{background:hsl(var(--surface-1));border:1px solid hsl(var(--border));border-radius:var(--radius-md,1rem);margin:3rem 0;padding:2rem}.summary-box{background:hsl(var(--warning-bg));border:1px solid hsl(var(--warning-border));border-radius:var(--radius-md,1rem);color:hsl(var(--warning-text));margin:2.5rem 0;padding:1.5rem;position:relative}.guide-section-marker{border-top:1px solid hsl(var(--border));color:hsl(var(--text-muted));font-size:.8125rem;font-weight:600;letter-spacing:.12em;margin-bottom:.75rem;margin-top:2rem;padding-top:1rem;text-transform:uppercase}.blog-content>*{animation:none!important;opacity:1!important;transform:none!important}.blog-content .fade-in-on-scroll,.blog-content .fade-in-on-scroll.visible{animation:none!important;opacity:1!important;transform:none!important;transition:none!important}@media (prefers-reduced-motion:no-preference){.blog-content{scroll-behavior:smooth}}@media (max-width:768px){.blog-content{margin-left:auto;margin-right:auto;max-width:min(40rem,100%);padding:0 clamp(1rem,4vw,1.375rem)}.blog-content h1{font-size:2rem;margin-bottom:2rem;margin-top:3rem}.blog-content h2{font-size:1.65rem;line-height:1.22;margin-bottom:.9rem;margin-top:2.75rem}.blog-content h2:after{bottom:-.55rem;opacity:.5;width:48px}.blog-content h3{font-size:1.45rem;margin-bottom:1.1rem;margin-top:2.5rem}.blog-content p{font-size:1.0625rem;line-height:1.82;margin-bottom:1.5rem}.blog-content pre{margin:3rem 0;padding:1.5rem}.blog-content pre code{font-size:.8125rem;padding:0}.blog-content blockquote{font-size:1.125rem;margin:3rem 0;padding-left:1.5rem}.blog-content img{margin:3rem auto}.blog-content ol,.blog-content ul{margin:2.5rem 0;padding-left:1.25rem}.blog-content table{font-size:.875rem;margin:3rem 0}.blog-content .cta-button{font-size:.8125rem;padding:.875rem 2rem;width:100%}.blog-content .step-card{margin:1.25rem 0;padding:1.25rem 1.35rem}.blog-content .case-study-box{margin:1.5rem 0;padding:1.2rem}.blog-content .definition-box{margin:1.15rem 0;padding:1rem 1.1rem}.blog-content .guide-section-marker{margin-bottom:.55rem;margin-top:1.35rem;padding-top:.75rem}.blog-content .glossary-section{margin:2rem 0;padding:1.35rem}}