/* Source: assets/css/tw.css */
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Outfit,Noto Sans JP,ui-sans-serif,system-ui;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.left-0{left:0}.right-0{right:0}.top-0{top:0}.isolate{isolation:isolate}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.h-10{height:2.5rem}.h-12{height:3rem}.h-\[260px\]{height:260px}.h-\[68px\]{height:68px}.h-\[72px\]{height:72px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-12{width:3rem}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[700px\]{min-width:700px}.min-w-\[720px\]{min-width:720px}.min-w-\[760px\]{min-width:760px}.min-w-\[860px\]{min-width:860px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[190px\]{max-width:190px}.max-w-\[22rem\]{max-width:22rem}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-9{gap:2.25rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-2{row-gap:.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-\[16px\]{border-radius:16px}.rounded-\[20px\]{border-radius:20px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0}.border-y{border-top-width:1px;border-bottom-width:1px}.border-t{border-top-width:1px}.border-\[\#2DB7D8\]\/25{border-color:rgba(45,183,216,.25)}.border-\[\#2DB7D8\]\/35{border-color:rgba(45,183,216,.35)}.border-\[\#69BE6B\]\/45{border-color:rgba(105,190,107,.45)}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.bg-\[\#07111f\]{--tw-bg-opacity:1;background-color:rgb(7 17 31/var(--tw-bg-opacity,1))}.bg-\[\#07111f\]\/70{background-color:rgba(7,17,31,.7)}.bg-\[\#07111f\]\/75{background-color:rgba(7,17,31,.75)}.bg-\[\#07111f\]\/80{background-color:rgba(7,17,31,.8)}.bg-\[\#081322\]{--tw-bg-opacity:1;background-color:rgb(8 19 34/var(--tw-bg-opacity,1))}.bg-\[\#10213a\]{--tw-bg-opacity:1;background-color:rgb(16 33 58/var(--tw-bg-opacity,1))}.bg-\[\#2DB7D8\]\/10{background-color:rgba(45,183,216,.1)}.bg-\[\#69BE6B\]\/10{background-color:rgba(105,190,107,.1)}.bg-white\/5{background-color:hsla(0,0%,100%,.05)}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-\[\#10213a\]{--tw-gradient-from:#10213a var(--tw-gradient-from-position);--tw-gradient-to:rgba(16,33,58,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#2DB7D8\]{--tw-gradient-from:#2db7d8 var(--tw-gradient-from-position);--tw-gradient-to:rgba(45,183,216,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-\[\#0d1d31\]{--tw-gradient-to:#0d1d31 var(--tw-gradient-to-position)}.to-\[\#69BE6B\]{--tw-gradient-to:#69be6b var(--tw-gradient-to-position)}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-20{padding-bottom:5rem}.pb-4{padding-bottom:1rem}.pt-12{padding-top:3rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-\[1\.35rem\]{font-size:1.35rem}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-\[1\.05\]{line-height:1.05}.leading-tight{line-height:1.25}.text-\[\#07111f\]{--tw-text-opacity:1;color:rgb(7 17 31/var(--tw-text-opacity,1))}.text-\[\#2DB7D8\]{--tw-text-opacity:1;color:rgb(45 183 216/var(--tw-text-opacity,1))}.text-\[\#59d9f3\]{--tw-text-opacity:1;color:rgb(89 217 243/var(--tw-text-opacity,1))}.text-\[\#69BE6B\]{--tw-text-opacity:1;color:rgb(105 190 107/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/60{color:hsla(0,0%,100%,.6)}.text-white\/70{color:hsla(0,0%,100%,.7)}.accent-\[\#2DB7D8\]{accent-color:#2db7d8}.shadow-\[0_10px_30px_rgba\(45\2c 183\2c 216\2c \.22\)\]{--tw-shadow:0 10px 30px rgba(45,183,216,.22);--tw-shadow-colored:0 10px 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_18px_70px_rgba\(0\2c 0\2c 0\2c \.22\)\]{--tw-shadow:0 18px 70px rgba(0,0,0,.22);--tw-shadow-colored:0 18px 70px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_22px_90px_rgba\(45\2c 183\2c 216\2c \.12\)\]{--tw-shadow:0 22px 90px rgba(45,183,216,.12);--tw-shadow-colored:0 22px 90px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-white\/10{--tw-ring-color:hsla(0,0%,100%,.1)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:text-\[\#2DB7D8\]:hover{--tw-text-opacity:1;color:rgb(45 183 216/var(--tw-text-opacity,1))}.hover\:text-\[\#69BE6B\]:hover{--tw-text-opacity:1;color:rgb(105 190 107/var(--tw-text-opacity,1))}.hover\:shadow-\[0_14px_38px_rgba\(105\2c 190\2c 107\2c \.24\)\]:hover{--tw-shadow:0 14px 38px rgba(105,190,107,.24);--tw-shadow-colored:0 14px 38px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:border-\[\#2DB7D8\]:focus{--tw-border-opacity:1;border-color:rgb(45 183 216/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline:focus-visible{outline-style:solid}.focus-visible\:outline-2:focus-visible{outline-width:2px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.focus-visible\:outline-\[\#2DB7D8\]:focus-visible{outline-color:#2db7d8}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:max-w-\[300px\]{max-width:300px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-3{gap:.75rem}.sm\:text-\[11px\]{font-size:11px}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:leading-\[1\.15\]{line-height:1.15}}@media (min-width:768px){.md\:h-\[320px\]{height:320px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:p-12{padding:3rem}.md\:p-6{padding:1.5rem}.md\:p-7{padding:1.75rem}.md\:p-8{padding:2rem}.md\:pb-16{padding-bottom:4rem}.md\:pt-14{padding-top:3.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-24{top:6rem}.lg\:flex{display:flex}.lg\:inline-flex{display:inline-flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[\.78fr_1\.22fr\]{grid-template-columns:.78fr 1.22fr}.lg\:grid-cols-\[\.82fr_1\.18fr\]{grid-template-columns:.82fr 1.18fr}.lg\:grid-cols-\[\.85fr_1\.15fr\]{grid-template-columns:.85fr 1.15fr}.lg\:grid-cols-\[\.86fr_1\.14fr\]{grid-template-columns:.86fr 1.14fr}.lg\:grid-cols-\[\.92fr_1\.08fr\]{grid-template-columns:.92fr 1.08fr}.lg\:grid-cols-\[\.95fr_1\.05fr\]{grid-template-columns:.95fr 1.05fr}.lg\:grid-cols-\[\.96fr_1\.04fr\]{grid-template-columns:.96fr 1.04fr}.lg\:grid-cols-\[\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[1\.05fr_\.72fr\]{grid-template-columns:1.05fr .72fr}.lg\:grid-cols-\[1\.05fr_\.75fr\]{grid-template-columns:1.05fr .75fr}.lg\:grid-cols-\[1\.05fr_\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:grid-cols-\[1\.08fr_\.92fr\]{grid-template-columns:1.08fr .92fr}.lg\:grid-cols-\[1fr_\.7fr\]{grid-template-columns:1fr .7fr}.lg\:grid-cols-\[1fr_\.85fr\]{grid-template-columns:1fr .85fr}.lg\:grid-cols-\[1fr_\.8fr\]{grid-template-columns:1fr .8fr}.lg\:grid-cols-\[1fr_\.9fr\]{grid-template-columns:1fr .9fr}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:pl-4{padding-left:1rem}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* Source: assets/css/site.css */
/* =============================================================
   Axton Group LTD Japan — site.css (design system v12)
   Loads AFTER tw.css and any inline page styles.
   Owns: tokens, typography, header/nav/footer, buttons, cards,
   FAQ, team photos, reveal motion. Page-specific markup
   (hero slider, media panels) stays in each page.
   ============================================================= */

:root{
  --bg:#0A1220;
  --bg-deep:#070D18;
  --surface:rgba(16,27,46,.62);
  --surface-2:rgba(19,32,58,.5);
  --line:rgba(148,178,222,.14);
  --line-strong:rgba(148,178,222,.30);
  --aqua:#2DB7D8;
  --aqua-strong:#5BD2EC;
  --eco:#69BE6B;
  --text:#E9EFF6;
  --muted:#A9B6C9;
  --faint:#7C8BA3;
  --font-display:'Space Grotesk','Outfit','Noto Sans JP',ui-sans-serif,system-ui,sans-serif;
  --font-body:'Outfit','Noto Sans JP',ui-sans-serif,system-ui,sans-serif;
  --r-md:12px;
  --r-lg:18px;
  --wrap:72rem;
  color-scheme:dark;
}

/* ---------- base ---------- */
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--font-body);
  font-weight:400;
  line-height:1.65;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
::selection{background:rgba(45,183,216,.32);color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:2px solid var(--aqua);outline-offset:3px;border-radius:4px;
}
img{max-width:100%}
[id]{scroll-margin-top:5.5rem}
.grid > *{min-width:0}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{min-width:0;max-width:100%;width:100%}
.btn-primary,.btn-ghost{max-width:100%;text-align:center;overflow-wrap:anywhere}

h1,h2,h3,h4,.section-title{
  font-family:var(--font-display);
  font-weight:600;
  letter-spacing:-.015em;
  color:#fff;
}
.section-title{font-size:clamp(1.85rem,3.2vw,2.7rem);line-height:1.12}
.section-lead{color:var(--muted);font-size:1.05rem;line-height:1.75}
.eyebrow{
  color:var(--aqua);
  font-family:var(--font-display);
  font-size:.72rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.18em;
}

/* ---------- buttons ---------- */
.btn-primary,.btn-ghost{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  border-radius:10px;
  padding:.85rem 1.4rem;
  font-weight:600;font-size:.97rem;
  text-decoration:none;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
  min-height:44px;
}
.btn-primary{
  border:1px solid transparent;
  color:#04121C;
  background:var(--aqua);
}
.btn-primary:hover{
  background:var(--aqua-strong);
  color:#04121C;
  transform:translateY(-1px);
  box-shadow:0 10px 26px rgba(45,183,216,.18);
}
.btn-ghost{
  border:1px solid var(--line-strong);
  color:var(--text);
  background:transparent;
}
.btn-ghost:hover{
  border-color:rgba(45,183,216,.6);
  color:#fff;
  background:rgba(45,183,216,.07);
}

/* ---------- cards ---------- */
.card{
  border:1px solid var(--line);
  background:linear-gradient(180deg,var(--surface-2),var(--surface));
  border-radius:var(--r-lg);
  box-shadow:none;
}
.card-flat{
  border:1px solid var(--line);
  background:var(--surface);
  border-radius:var(--r-lg);
}
.hover-lift{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.hover-lift:hover{
  transform:translateY(-3px);
  border-color:rgba(45,183,216,.45);
  box-shadow:0 18px 44px rgba(2,8,18,.5);
}

/* ---------- header ---------- */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:rgba(8,14,25,.82);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.site-header__inner{
  max-width:var(--wrap);margin:0 auto;
  display:flex;align-items:center;gap:1.5rem;
  padding:.65rem 1.25rem;
  min-height:60px;
}
.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:#fff;min-width:0}
.brand img{width:38px;height:38px;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.14);flex:0 0 auto}
.brand__name{
  font-family:var(--font-display);
  font-weight:600;font-size:1.02rem;line-height:1.2;letter-spacing:-.01em;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.site-nav{display:flex;align-items:center;gap:1.35rem;margin-left:auto}
.site-nav a{
  color:rgba(233,239,246,.72);text-decoration:none;
  font-size:.92rem;font-weight:500;
  padding:.3rem 0;position:relative;white-space:nowrap;
  transition:color .15s ease;
}
.site-nav a:hover{color:#fff}
.site-nav a[aria-current]{color:var(--aqua-strong)}
.site-nav a[aria-current]::after{
  content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;
  background:var(--aqua);border-radius:2px;
}
.lang-switch{
  font-size:.78rem !important;
  border:1px solid var(--line-strong);
  border-radius:999px;
  padding:.28rem .75rem !important;
  color:rgba(233,239,246,.82) !important;
}
.lang-switch:hover{border-color:rgba(45,183,216,.6);color:#fff !important;background:rgba(45,183,216,.07)}
.header-cta{margin-left:.25rem}
.header-cta .btn-primary{padding:.55rem 1.1rem;min-height:38px;font-size:.88rem;border-radius:999px}

.menu-toggle{
  display:none;
  margin-left:auto;
  align-items:center;justify-content:center;
  width:44px;height:44px;flex:0 0 auto;
  border:1px solid var(--line-strong);
  border-radius:10px;
  background:transparent;color:var(--text);
  cursor:pointer;
}
.menu-toggle svg{width:20px;height:20px}
.menu-toggle .icon-close{display:none}
.menu-toggle[aria-expanded="true"] .icon-open{display:none}
.menu-toggle[aria-expanded="true"] .icon-close{display:block}

.mobile-menu{
  position:absolute;top:100%;left:0;right:0;
  max-height:calc(100vh - 64px);max-height:calc(100dvh - 64px);
  overflow-y:auto;overscroll-behavior:contain;
  border-top:1px solid var(--line);
  background:rgba(7,12,22,.98);
  box-shadow:0 24px 48px rgba(2,8,18,.45);
}
.mobile-menu__inner{
  max-width:var(--wrap);margin:0 auto;
  padding:.9rem 1.25rem 1.4rem;
  display:flex;flex-direction:column;
}
.mobile-menu a{
  color:rgba(233,239,246,.85);text-decoration:none;
  font-size:1rem;font-weight:500;
  padding:.8rem .1rem;
  border-bottom:1px solid rgba(148,178,222,.09);
}
.mobile-menu a:last-of-type{border-bottom:0}
.mobile-menu .mobile-cta{margin-top:.9rem}
.mobile-menu .mobile-cta .btn-primary{width:100%}
.mobile-menu.mobile-menu[hidden]{display:none}
.menu-backdrop{position:fixed;inset:0;z-index:90;border:0;background:rgba(2,8,18,.65);cursor:pointer}
.menu-backdrop[hidden]{display:none}
.mobile-menu a[aria-current]{color:var(--aqua-strong)}

@media (max-width:1199px){
  .site-nav,.header-cta{display:none}
  .site-header .menu-toggle{display:inline-flex;position:static}
}
@media (min-width:1200px){
  .mobile-menu{display:none !important}
}

/* ---------- FAQ ---------- */
.faq details{
  border:1px solid var(--line);
  background:var(--surface);
  border-radius:var(--r-md);
  overflow:hidden;
  transition:border-color .18s ease,background .18s ease;
}
.faq details[open],.faq details:hover{border-color:rgba(45,183,216,.38)}
.faq summary{
  cursor:pointer;list-style:none;
  padding:1.05rem 1.2rem;
  font-weight:600;color:#fff;
  font-family:var(--font-display);
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"";width:.5rem;height:.5rem;flex:0 0 auto;
  border-right:2px solid var(--aqua);border-bottom:2px solid var(--aqua);
  transform:rotate(45deg);transition:transform .18s ease;
}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq details p{padding:0 1.2rem 1.15rem;margin:0;color:var(--muted);line-height:1.7}

/* ---------- team photos ---------- */
.team-photo{
  width:150px;height:150px;
  border-radius:999px;object-fit:cover;object-position:center;
  box-shadow:0 0 0 1px rgba(255,255,255,.16),0 14px 40px rgba(2,8,18,.4);
}
.profile-photo{
  border-radius:var(--r-lg);
  box-shadow:0 0 0 1px rgba(255,255,255,.12),0 24px 70px rgba(2,8,18,.45);
}

/* ---------- footer ---------- */
.site-footer{border-top:1px solid var(--line);background:var(--bg-deep)}
.site-footer__grid{
  max-width:var(--wrap);margin:0 auto;
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2.5rem;
  padding:3.25rem 1.25rem 2.75rem;
}
.site-footer__grid > *{min-width:0}
.site-footer__contact a{overflow-wrap:anywhere}
.site-footer__brand img{flex:0 0 auto}
.site-footer h2{
  font-family:var(--font-display);
  font-size:.74rem;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--faint);margin:0 0 1rem;
}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.site-footer a{color:rgba(233,239,246,.72);text-decoration:none;font-size:.92rem;transition:color .15s ease}
.site-footer a:hover{color:var(--aqua-strong)}
.site-footer p{color:var(--muted);font-size:.92rem;line-height:1.7}
.site-footer__brand{display:flex;align-items:center;gap:.65rem;margin-bottom:1rem;text-decoration:none}
.site-footer__brand img{width:38px;height:38px;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.14)}
.site-footer__brand span{font-family:var(--font-display);font-weight:600;color:#fff;font-size:1.02rem}
.site-footer__contact li{color:var(--muted);font-size:.92rem}
.site-footer__legal{
  border-top:1px solid var(--line);
}
.site-footer__legal-inner{
  max-width:var(--wrap);margin:0 auto;
  padding:1.15rem 1.25rem;
  display:flex;flex-wrap:wrap;gap:.75rem 1.75rem;align-items:center;justify-content:space-between;
  color:var(--faint);font-size:.85rem;
}
.site-footer__legal a{color:var(--faint);font-size:.85rem}
.site-footer__legal a:hover{color:var(--aqua-strong)}
@media (max-width:980px){.site-footer__grid{grid-template-columns:1fr 1fr;gap:2rem}}
@media (max-width:560px){.site-footer__grid{grid-template-columns:1fr;gap:2rem}}

/* ---------- motion ---------- */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
html:not(.js-reveal) .reveal{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal,.hover-lift,.btn-primary,.btn-ghost{transition:none !important;transform:none !important;animation:none !important}
  .reveal{opacity:1}
}

/* Contain the existing hero slides and overlays within their section. */
.hero-bg{position:relative;isolation:isolate;overflow:hidden}
.hero-bg::before,.hero-bg::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1}
:where(.hero-bg)::before{background:linear-gradient(90deg,rgba(4,10,20,.98),rgba(7,17,31,.88) 60%,rgba(7,17,31,.55))}
.hero-bg > div:not([class*="slider"]){position:relative;z-index:2}
.hero-bg > div[class*="slider"]{position:absolute;inset:0;z-index:0;pointer-events:none}

/* Restore the IT page's existing slider and media components. */
.it-hero.hero-bg{background:#07111f;background-image:none;min-height:68vh;display:flex;align-items:center}
.it-hero-slide{position:absolute;inset:0;background-size:cover;background-position:center right;opacity:0;transform:scale(1.035);transition:opacity 1.2s ease,transform 6s ease}
.it-hero-slide.is-active{opacity:1;transform:scale(1.075)}
.it-hero-content{width:100%}
.it-hero-copy{max-width:820px}
.it-hero h1{font-size:clamp(2.2rem,4.5vw,3.65rem);line-height:1.12}
.it-media-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-deep)}
.it-media-card img{display:block;width:100%;height:auto}
.it-media-card__caption{padding:1rem 1.15rem;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem;line-height:1.6}
.it-split-panel{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.it-signal-list{list-style:disc;padding-left:1.25rem;color:var(--muted);display:grid;gap:.65rem}
.it-compact-proof{padding:1rem;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}
@media(max-width:640px){
  .ja-entry h1{font-size:clamp(1.35rem,6vw,2rem);line-height:1.4}
  .it-hero.hero-bg{min-height:auto;padding-top:3.25rem;padding-bottom:3.5rem}
  .it-hero h1{font-size:clamp(2.05rem,8vw,2.65rem)}
  .hero-content{width:100%!important;max-width:100%!important}
}
@media(prefers-reduced-motion:reduce){.it-hero-slide{transition:none;transform:none}.it-hero-slide:not(.is-active){display:none}}

/* Tables retain their header relationships and fit narrow screens as labelled rows. */
.responsive-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
.responsive-table th,.responsive-table td{overflow-wrap:anywhere}
@media(max-width:640px){
  .responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table tbody th,.responsive-table td{display:block;width:100%}
  .responsive-table tr{padding:.75rem 0;border-bottom:1px solid var(--line)}
  .responsive-table tbody th,.responsive-table td{border:0;padding:.5rem .75rem;overflow-wrap:anywhere}
  .responsive-table tbody th::before,.responsive-table td::before{content:attr(data-label);display:block;color:var(--aqua-strong);font-size:.78rem;font-weight:600;margin-bottom:.25rem}
}

.nav-shell{background:rgba(8,14,25,.82)}


/* Approved pre-deployment accessibility and supporting text. */
.skip-link{
  position:fixed;top:.75rem;left:1rem;z-index:110;
  max-width:calc(100% - 2rem);padding:.65rem 1rem;
  border:1px solid var(--aqua);border-radius:var(--r-md);
  background:var(--bg-deep);color:var(--text);
  font-weight:600;text-decoration:none;
  transform:translateY(calc(-100% - 1rem));
}
.skip-link:focus{transform:translateY(0);outline:2px solid var(--aqua);outline-offset:3px}
.booking-timezone{margin:0 0 .75rem;color:var(--muted);font-size:.875rem;line-height:1.65}
@media(max-width:1199px){
  .service-card-link{min-height:44px;align-items:center;padding-block:.5rem}
}

/* Source: assets/css/enterprise.css */
/* Enterprise content extends the established Axton design system. */
.enterprise-section{padding:4.5rem 1.5rem}
.enterprise-wrap{max-width:72rem;margin:0 auto;min-width:0}
.enterprise-band{background:rgba(7,13,24,.58);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.enterprise-heading{max-width:48rem;margin-bottom:2rem}
.enterprise-heading .eyebrow{margin:0 0 .65rem}
.enterprise-heading h2{font-size:clamp(1.85rem,3.2vw,2.7rem);line-height:1.18;margin:0 0 1rem}
.enterprise-heading p{margin:0}
.enterprise-main h1{font-size:clamp(2.3rem,4.4vw,3.6rem);line-height:1.15;margin:.8rem 0 1.25rem;overflow-wrap:break-word}
.enterprise-main h1,.enterprise-main h2,.enterprise-main h3{overflow-wrap:break-word;text-wrap:balance}
.enterprise-main .section-lead{font-size:1.1rem;line-height:1.8}
.enterprise-main .eyebrow{line-height:1.8}
.enterprise-grid{display:grid;gap:1.25rem}
.enterprise-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.enterprise-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.enterprise-grid>*{min-width:0}
.enterprise-card{padding:1.65rem;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.enterprise-card h3{font-size:1.35rem;line-height:1.35;margin:0 0 .8rem}
.enterprise-card p{color:var(--muted);margin:.65rem 0 0;line-height:1.8}
.enterprise-card .eyebrow{color:var(--aqua);margin:0 0 .65rem}
.enterprise-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.7rem}
.enterprise-note{font-size:.95rem;color:var(--muted);line-height:1.8;margin:1.25rem 0 0}
.enterprise-note a,.text-link,.article-link-list a{color:var(--aqua-strong);text-underline-offset:4px}
.text-link{display:inline-flex;align-items:center;min-height:44px;margin-top:.65rem}
.partner-marks{display:flex;align-items:center;gap:2.25rem;flex-wrap:wrap;margin:2rem 0 2.5rem;padding:1.5rem 0}
.partner-mark{display:flex;align-items:center;gap:1rem;min-width:0}
.partner-mark--axton img{width:68px;height:68px;object-fit:contain}
.partner-mark--axton span{font-family:var(--font-display);font-size:1.15rem;color:#fff;max-width:15rem;line-height:1.4}
.partner-join{color:var(--muted);font-size:1.75rem}
.partner-mark .fluyenta-logo{display:block;width:220px;height:auto;max-width:100%;object-fit:contain}
.capability-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.25rem}
.capability-card{grid-column:span 2;min-width:0}
.capability-card:nth-child(4){grid-column:2/span 2}
.capability-index{display:block;color:var(--aqua);font-family:var(--font-display);font-size:.85rem;margin-bottom:1.25rem}
.process-flow{list-style:none;counter-reset:process;margin:1.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.6rem}
.process-flow li{display:flex;flex-direction:column;gap:.35rem;min-width:0;border-top:2px solid rgba(45,183,216,.55);padding:.8rem .75rem;background:rgba(45,183,216,.035);font-size:.95rem;line-height:1.5;overflow-wrap:break-word}
.flow-number{font-family:var(--font-display);font-size:.72rem;color:var(--aqua)}
.example-card{display:flex;flex-direction:column}
.example-card .example-label{color:var(--aqua-strong);font-size:.74rem;line-height:1.6;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.06em}
.example-card .process-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
.example-card .example-outcome{border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem}
.example-card .text-link{margin-top:auto;padding-top:.85rem}
.enterprise-hero-grid{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:3.5rem;margin-top:2rem}
.enterprise-diagram{padding:2rem;border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--bg-deep);min-width:0}
.enterprise-diagram .process-flow{grid-template-columns:1fr;gap:.75rem}
.enterprise-diagram .process-flow li{flex-direction:row;align-items:center;gap:.9rem;border-top:0;border-left:2px solid var(--aqua);padding:.85rem 1rem}
.breadcrumb{display:flex;flex-wrap:wrap;gap:.65rem;font-size:.85rem;color:var(--muted)}
.breadcrumb a{color:var(--aqua-strong);text-underline-offset:4px}
.signal-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.signal-grid li{padding:1rem 1.25rem;border-left:2px solid var(--aqua);background:var(--surface);color:var(--muted);min-width:0}
.industry-priority{border-color:rgba(45,183,216,.5);background:rgba(45,183,216,.06)}
.enterprise-cta{padding:2.25rem;border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--surface)}
.enterprise-cta .enterprise-heading{margin-bottom:0}
.enterprise-faq{display:grid;gap:.8rem}
.enterprise-article-head{max-width:55rem}
.enterprise-article-head h1{font-size:clamp(2.2rem,4vw,3.4rem)}
.article-byline{color:var(--muted);font-size:.92rem;margin:1.5rem 0 0}
.article-layout{display:grid;grid-template-columns:minmax(0,46rem) minmax(0,20rem);gap:4rem;align-items:start}
.enterprise-prose{max-width:46rem;min-width:0}
.enterprise-prose section+section{margin-top:3rem}
.enterprise-prose h2{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.3;margin:0 0 1.2rem}
.enterprise-prose p{color:var(--muted);font-size:1.06rem;line-height:1.9;margin:0 0 1.2rem}
.enterprise-prose a{color:var(--aqua-strong);text-underline-offset:4px}
.enterprise-prose .partner-marks{gap:1.25rem}
.enterprise-prose .partner-mark--axton span{max-width:11rem;font-size:1rem}
.enterprise-prose .fluyenta-logo{width:180px}
.article-toc{padding:1.5rem;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}
.article-toc h2{font-size:1rem;margin:0 0 1rem}
.article-toc ol{padding:0 0 0 1.25rem;margin:0;display:grid;gap:.85rem;color:var(--muted);font-size:.95rem}
.article-toc a{color:var(--muted);text-decoration:none}
.article-toc a:hover{color:var(--aqua-strong);text-decoration:underline}
.article-references{border-top:1px solid var(--line);padding-top:2rem}
.article-references ul{padding-left:1.3rem;display:grid;gap:.7rem}
.insight-card{display:flex;flex-direction:column}
.insight-card h3 a{color:#fff;text-decoration:none}
.insight-card h3 a:hover{color:var(--aqua-strong)}
.insight-card .text-link{margin-top:auto;padding-top:1rem}
.article-link-list{list-style:none;padding:0;margin:0;display:grid;gap:.7rem}
.article-link-list li{padding:1rem 1.25rem;border:1px solid var(--line);border-radius:var(--r-md)}
html[lang="ja"] .enterprise-main h1{font-size:clamp(2rem,3.7vw,3rem);line-height:1.5}
html[lang="ja"] .enterprise-heading h2{line-height:1.5}
html[lang="ja"] .enterprise-card h3{line-height:1.5}
/* Keep the existing home slider, with room for the revised positioning. */
.enterprise-home-hero .hero-copy{max-width:850px}
.enterprise-home-hero h1{font-size:clamp(2.5rem,4.7vw,4rem);line-height:1.13}
@media(min-width:1024px){
 html[lang="ja"] .enterprise-home-hero h1{font-size:3.2rem!important;line-height:1.35!important}
 .ja-hero-phrase{display:inline-block}
}
@media(max-width:1000px){
 .enterprise-hero-grid{grid-template-columns:1fr;gap:2rem}
 .enterprise-diagram .process-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
 .enterprise-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}
 .article-layout{grid-template-columns:1fr;gap:2rem}
 .article-toc{grid-row:1}
 .enterprise-prose{max-width:100%}
}
@media(max-width:640px){
 .enterprise-section{padding:3rem 1.5rem}
 .enterprise-main h1,.enterprise-article-head h1{font-size:2.1rem;line-height:1.22}
 .enterprise-main .section-lead{font-size:1rem;line-height:1.85}
 .enterprise-heading h2{font-size:1.75rem}
 .enterprise-grid--two,.enterprise-grid--three,.signal-grid{grid-template-columns:1fr}
 .enterprise-card{padding:1.35rem}
 .capability-grid{grid-template-columns:1fr}
 .capability-card,.capability-card:nth-child(4){grid-column:auto}
 .capability-index{margin-bottom:.75rem}
 .partner-marks{gap:1.1rem;justify-content:flex-start;margin:1.5rem 0}
 .partner-mark--axton{width:100%}
 .partner-mark--axton img{width:56px;height:56px}
 .partner-mark--axton span{max-width:12rem;font-size:1.02rem}
 .partner-mark .fluyenta-logo{width:200px}
 .partner-join{font-size:1.4rem}
 .enterprise-actions{align-items:stretch;flex-direction:column}
 .enterprise-actions a{width:100%;padding:.85rem 1rem}
 .enterprise-cta{padding:1.5rem}
 .enterprise-diagram{padding:1.35rem}
 .enterprise-diagram .process-flow{grid-template-columns:1fr}
 .process-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
 .enterprise-prose p{font-size:1rem;line-height:1.95}
 .enterprise-prose section+section{margin-top:2.25rem}
 .enterprise-prose .partner-marks{gap:1rem}
 html[lang="ja"] .enterprise-main h1{font-size:1.85rem;line-height:1.6}
 html[lang="ja"] .enterprise-heading h2{font-size:1.6rem}
 html[lang="ja"] .enterprise-home-hero h1{font-size:2rem!important;line-height:1.5!important}
 .ja-hero-phrase{display:inline-block}
}

/* Source: assets/css/premium.css */
/* Premium corporate presentation. Loaded after existing page components so
   established responsive diagrams, tables and interaction contracts remain. */
:root {
  --ink:#0b1723; --navy:#172b3a; --paper:#f7f7f3; --white:#fff;
  --teal:#087680; --teal-bright:#67c4c9; --rule:#d5dddd;
  --bg:var(--paper); --bg-deep:#edf1ee; --base:var(--paper); --base2:#edf1ee;
  --surface:#fff; --surface-2:#eef2ef; --panel:#eef2ef;
  --line:var(--rule); --line-strong:#a9b9bd; --aqua:var(--teal); --aqua-strong:#076c75;
  --eco:#376b58; --text:var(--ink); --muted:#415360; --faint:#53616b;
  --font-display:Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,system-ui,sans-serif;
  --font-body:Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,system-ui,sans-serif;
  --r-md:3px; --r-lg:3px; --wrap:80rem;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-padding-top:6rem}
body.premium-site{padding-top:84px!important;background:var(--paper)!important;color:var(--ink)!important;font-family:var(--font-body)!important;font-size:16px;line-height:1.75;overflow-x:clip}
.premium-site h1,.premium-site h2,.premium-site h3,.premium-site h4{font-family:var(--font-display)!important;color:var(--ink);font-weight:500!important;letter-spacing:-.035em;word-break:normal}
.premium-site h1{font-size:clamp(2.15rem,4.2vw,3.9rem);line-height:1.13}
.premium-site h2{line-height:1.22}
.premium-site p{overflow-wrap:break-word}
.premium-site a{color:var(--teal);text-underline-offset:4px}
.premium-site :focus-visible{outline:3px solid var(--teal);outline-offset:5px}
::selection{background:#b9dedb;color:var(--ink)}
.premium-site .eyebrow{color:var(--teal);font:600 .77rem/1.7 var(--font-body);letter-spacing:.13em;text-transform:uppercase;margin:0 0 1rem}
.premium-site .section-title{font-size:clamp(1.75rem,3vw,2.8rem);line-height:1.22}
.premium-site .section-lead{color:var(--muted);font-size:1.1rem;font-weight:400;line-height:1.85;max-width:68ch}
.premium-site .btn-primary,.premium-site .btn-ghost{font:600 .95rem/1.45 var(--font-body);display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:48px;padding:.95rem 1.35rem;border-radius:2px;transition:background .15s,color .15s;border:1px solid var(--teal);box-shadow:none;transform:none;text-decoration:none;max-width:100%}
.premium-site .btn-primary{background:var(--teal);color:#fff}
.premium-site .btn-primary:hover{background:#05565e;border-color:#05565e;color:#fff;box-shadow:none;transform:none}
.premium-site .btn-ghost{background:transparent;border-color:var(--line-strong);color:var(--ink)}
.premium-site .btn-ghost:hover{background:#e3ebe8;color:var(--ink)}
.premium-site .text-link,.premium-site .inline-links a{font-size:1rem;font-weight:500;display:inline-flex;align-items:center;gap:1rem;min-height:44px;text-decoration:none;line-height:1.65;color:var(--teal)}
.premium-site .text-link:hover,.premium-site .inline-links a:hover{text-decoration:underline}
.inline-links{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin-top:1.5rem}
.premium-site .hover-lift:hover{transform:none;box-shadow:none;border-color:var(--teal)}
.premium-site .card,.premium-site .card-flat{background:#fff;border:1px solid var(--rule);border-radius:3px;box-shadow:none}
.premium-site .reveal{opacity:1;transform:none;transition:none}
.premium-site .motion-icon{animation:none;filter:none}
.premium-site svg{flex-shrink:0}
.premium-site .skip-link{background:var(--ink);color:#fff;border-color:var(--teal-bright);z-index:120}
/* Shared header: stable sizing, full logo visibility, comfortable touch targets. */
.premium-site .site-header{height:84px;background:#fff;border-bottom:1px solid var(--rule);backdrop-filter:none;-webkit-backdrop-filter:none;z-index:100}
.premium-site .site-header__inner{height:100%;max-width:84rem;padding:.65rem 2rem;gap:1.5rem}
.premium-site .brand{color:var(--ink);gap:.7rem;flex-shrink:0}
.premium-site .brand img{height:48px;width:48px;object-fit:contain;border-radius:0;box-shadow:none}
.premium-site .brand__name{font:600 1.08rem/1.2 var(--font-body);color:var(--ink);letter-spacing:-.025em}
.brand__name>span{display:block;font-size:.6rem;letter-spacing:.2em;margin-top:.35rem;font-weight:500}
.premium-site .site-nav{gap:1.5rem}
.premium-site .site-nav a{color:#41515d;font-size:.9rem;min-height:44px;display:inline-flex;align-items:center;font-weight:500}
.premium-site .site-nav a:hover,.premium-site .site-nav a[aria-current]{color:var(--teal)}
.premium-site .site-nav a[aria-current]::after{bottom:3px;height:1px;border-radius:0}
.premium-site .lang-switch{border:0;border-left:1px solid var(--rule);border-radius:0;padding:.3rem 0 .3rem 1.5rem!important;color:var(--ink)!important;font-size:.8rem!important;background:none}
.premium-site .header-cta .btn-primary{font-size:.83rem;padding:.75rem 1rem;min-height:44px;border-radius:2px;white-space:nowrap}
.premium-site .menu-toggle{background:#fff;color:var(--ink);border:1px solid var(--rule);border-radius:2px;width:44px;height:44px}
.premium-site .mobile-menu{background:#fff;border-top:1px solid var(--rule);max-height:calc(100dvh - 84px);box-shadow:none;z-index:101}
.premium-site .mobile-menu__inner{padding:1rem 1.5rem 1.5rem;gap:0}
.premium-site .mobile-menu a{font-size:1.15rem;color:var(--ink);padding:.9rem 0;border-color:var(--rule);min-height:48px}
.premium-site .mobile-menu a[aria-current]{color:var(--teal)}
.premium-site .mobile-menu .lang-switch{padding:.9rem 0!important;border-left:0}
.premium-site .mobile-menu .btn-primary{color:#fff;padding:1rem}
.premium-site .menu-backdrop{background:rgba(11,23,35,.6)}
/* Footer uses an intentionally dark surface, separate from reading content. */
.premium-site .site-footer{--text:#f3f6f5;--muted:#bac8cc;--faint:#bac8cc;--line:#324651;--aqua:#67c4c9;--aqua-strong:#8bd5d8;background:var(--ink);color:var(--text);border-color:var(--line)}
.premium-site .site-footer__grid{max-width:84rem;padding:4rem 2rem 3rem;grid-template-columns:1.4fr 1.3fr .8fr 1.2fr;gap:3rem}
.premium-site .site-footer h2{font:600 .75rem/1.8 var(--font-body);letter-spacing:.12em;color:#b7c9ce;margin-bottom:1rem}
.premium-site .site-footer a{color:#e0e9ea;font-size:.9rem}
.premium-site .site-footer a:hover{color:#8bd5d8}
.premium-site .site-footer p,.premium-site .site-footer__contact li{color:#bac8cc;font-size:.9rem}
.premium-site .site-footer__brand img{width:56px;height:56px;border-radius:0;object-fit:contain;box-shadow:none}
.premium-site .site-footer__brand span{color:#fff;font:500 1.1rem/1.3 var(--font-body)}
.premium-site .site-footer__brand small{font-size:.65rem;letter-spacing:.17em}
.premium-site .site-footer__legal-inner{max-width:84rem;padding:1.25rem 2rem;color:#bac8cc}
.site-footer__legal-inner>div{display:flex;gap:1.5rem}
/* New editorial patterns. */
.premium-wrap{width:min(100%,80rem);padding-inline:2rem;margin-inline:auto;min-width:0}
.premium-section{padding-block:5.5rem}
.premium-section-heading{margin-bottom:2.75rem;max-width:55rem}
.premium-section-heading h2{font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.18;margin:0;max-width:28ch}
.premium-section p{color:var(--muted);margin:0 0 1.25rem}
.premium-section .eyebrow{color:var(--teal)}
.measure{max-width:68ch}
.premium-soft{background:#edf1ee}
.premium-dark{--text:#f7f7f3;--muted:#c0cdd1;--line:#3e505d;--line-strong:#6b7e88;--surface:var(--navy);--bg-deep:var(--navy);--aqua:#8bd5d8;--aqua-strong:#8bd5d8;background:var(--ink);color:var(--text)}
.premium-site .premium-dark h1,.premium-site .premium-dark h2,.premium-site .premium-dark h3{color:var(--text)}
.premium-site .premium-dark p{color:var(--muted)}
.premium-site .premium-dark .eyebrow,.premium-site .premium-dark a:not(.btn-primary):not(.btn-ghost){color:#8bd5d8}
.premium-site .premium-dark .btn-primary{background:#a5d8d8;border-color:#a5d8d8;color:var(--ink)}
.premium-site .premium-dark .btn-primary:hover{background:#c3e7e6;border-color:#c3e7e6}
.premium-site .premium-dark .btn-ghost{color:#fff;border-color:#6b7e88}
.premium-site .premium-dark .btn-ghost:hover{background:#243a49;color:#fff}
.premium-site .premium-dark :focus-visible{outline-color:#8bd5d8}
.premium-home-hero{padding:5rem 0 4.5rem;position:relative;overflow:hidden}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,.65fr);gap:5rem;align-items:stretch}
.premium-home-hero h1{font-size:clamp(2.5rem,4.3vw,4.25rem);line-height:1.1;font-weight:400!important;letter-spacing:-.045em;margin:1.3rem 0 1.8rem;max-width:18ch;text-wrap:balance}
.premium-home-hero .hero-lead{font-size:1.09rem;line-height:1.8;max-width:67ch;margin-bottom:1rem}
.hero-support{font-size:.97rem;line-height:1.8;max-width:67ch;margin:0;color:var(--muted)}
.premium-home-hero .enterprise-actions{margin-top:2rem;gap:.8rem}
.architectural-mark{position:relative;min-height:380px;margin-top:2rem;align-self:stretch;opacity:.9;border-top:1px solid #46606a;border-bottom:1px solid #46606a;display:flex;flex-direction:column;justify-content:space-between;padding:1.25rem 0}
.architectural-lines{position:absolute;inset:15% 0 10%;background:repeating-linear-gradient(90deg,transparent,transparent calc(25% - 1px),#425b65 calc(25% - 1px),#425b65 25%),repeating-linear-gradient(0deg,transparent,transparent calc(25% - 1px),#425b65 calc(25% - 1px),#425b65 25%);border:1px solid #425b65;transform:skewY(-10deg);transform-origin:center}
.architectural-lines::after{content:'';position:absolute;inset:25% 25% 0 0;border:1px solid #95c2c5;background:var(--ink)}
.arch-index{font-size:.72rem;letter-spacing:.2em;color:#8bd5d8}
.arch-cross{position:absolute;right:24%;top:40%;width:40px;height:40px;border-top:1px solid #94bdc1;border-left:1px solid #94bdc1}
.arch-caption{font-size:.68rem;letter-spacing:.14em;line-height:1.9;align-self:flex-end;color:#b4c8ce;z-index:1;background:var(--ink);padding:1rem 0 0 1rem}
.credentials-strip{border-bottom:1px solid var(--rule);background:#fff}
.credentials-strip>.premium-wrap{display:grid;grid-template-columns:1fr 1.2fr 1.4fr;gap:3rem;padding-block:1.6rem}
.credentials-strip p{margin:0;border-right:1px solid var(--rule)}
.credentials-strip p:last-child{border:0}
.credentials-strip span{display:block;font-size:.74rem;color:var(--muted);margin-bottom:.4rem}
.credentials-strip strong{display:block;font-size:1rem;font-weight:500}
.expertise-list{border-top:1px solid #a9b9bd}
.expertise-row{display:grid;grid-template-columns:3rem minmax(0,1fr) minmax(0,1fr);gap:3rem;padding:2.4rem 0;border-bottom:1px solid var(--rule);align-items:start}
.expertise-number{font-size:.8rem;color:var(--teal);font-weight:500;letter-spacing:.06em;padding-top:.4rem}
.expertise-row h3{font-size:clamp(1.4rem,2.1vw,2rem);margin:0;max-width:25ch;line-height:1.25}
.expertise-row h3 a{color:var(--ink);text-decoration:none}
.expertise-row h3 a:hover{color:var(--teal)}
.expertise-row p{font-size:1rem;line-height:1.8;margin-bottom:.4rem}
.creative-line{display:flex;gap:2rem;justify-content:space-between;flex-wrap:wrap;padding-top:1.75rem;font-size:.95rem}
.creative-line>span{color:var(--muted)}
.creative-line a{text-decoration:none}
.editorial-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}
.editorial-columns article{border-top:1px solid #a9b9bd;padding-top:1.5rem;min-width:0}
.editorial-columns h3{font-size:1.5rem;line-height:1.35;margin:0 0 1rem}
.editorial-columns h3 a{color:var(--ink);text-decoration:none}
.editorial-columns p{font-size:1rem}
.editorial-columns--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.experience-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;margin-top:2.5rem}
.experience-list article{border-top:2px solid var(--teal);padding-top:1.5rem;min-width:0}
.experience-list .eyebrow{font-size:.68rem;letter-spacing:.07em}
.experience-list h3{font-size:1.55rem;line-height:1.35;margin:0 0 1rem}
.experience-list h3 a{color:var(--ink);text-decoration:none}
.premium-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5rem;align-items:start}
.premium-split>div{min-width:0}
.premium-split p{font-size:1.05rem}
.premium-site .partner-marks{background:var(--ink);padding:2rem;gap:1.5rem;border-radius:2px;align-items:center;justify-content:center;border:1px solid #385260}
.premium-site .partner-mark--axton{gap:.75rem}
.premium-site .partner-mark--axton span{color:#fff;max-width:8rem;font-size:1rem}
.premium-site .partner-mark--axton img{width:68px;height:68px;object-fit:contain}
.premium-site .partner-mark .fluyenta-logo{width:190px;object-fit:contain}
.premium-site .partner-join{color:#b8cdd1}
.partnership-feature .partner-marks{padding:0;border:0;justify-content:flex-start;margin:0 0 1.5rem}
.partnership-feature .partner-mark--axton span{max-width:8rem}
.partner-caption{font-size:.85rem!important;border-top:1px solid var(--line);padding-top:1.25rem}
.approach-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;gap:2.5rem;margin:0}
.approach-list li{border-top:1px solid #a9b9bd;padding-top:1rem}
.approach-list li>span{font-size:.8rem;color:var(--teal)}
.approach-list h3{font-size:1.35rem;margin:1.25rem 0 .8rem}
.approach-list p{font-size:.95rem;line-height:1.8;margin:0}
.leadership-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5rem;align-items:center}
.portrait-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;align-items:start}
.portrait-pair img{display:block;width:100%;height:300px;object-fit:contain;object-position:bottom;background:#e0e6e6;border-bottom:2px solid var(--teal)}
.portrait-pair img:last-child{margin-top:3rem}
.premium-cta>.premium-wrap{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.premium-cta .premium-section-heading{margin:0}
.premium-cta .cta-copy{min-width:0}
.home-contact-note{padding-block:1.25rem;font-size:.9rem}
.home-contact-note p{margin:0;overflow-wrap:anywhere}
.anchor-alias{display:block;scroll-margin-top:6rem}
.premium-page-hero{padding-block:4rem 4.5rem;background:#edf1ee;border-bottom:1px solid var(--rule)}
.premium-page-hero h1{font-size:clamp(2.5rem,4.7vw,4.3rem);line-height:1.13;font-weight:400!important;max-width:22ch;margin:1rem 0 1.5rem}
.premium-page-hero .hero-lead{font-size:1.15rem;line-height:1.85;max-width:64ch;margin:0;color:var(--muted)}
.expertise-detail{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:4rem}
.expertise-detail h2{font-size:clamp(2rem,3vw,2.8rem);margin:0 0 1.2rem}
.expertise-detail .section-lead{max-width:80ch}
.expertise-detail-section{border-bottom:1px solid var(--rule)}
.service-definition{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin:2.5rem 0 0}
.service-definition>div{border-top:1px solid var(--rule);padding-top:1rem}
.service-definition dt{font-size:.8rem;font-weight:600;color:var(--teal);margin-bottom:.75rem}
.service-definition dd{font-size:1rem;line-height:1.8;color:var(--muted);margin:0}
.large-copy{font-size:clamp(1.7rem,2.4vw,2.5rem)!important;line-height:1.5!important;color:var(--ink)!important;letter-spacing:-.025em}
.company-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 4rem;margin:0}
.company-facts>div{display:grid;grid-template-columns:1fr 2fr;gap:2rem;padding:1.25rem 0;border-top:1px solid #c5cfce}
.company-facts dt{font-size:.8rem;color:var(--muted)}
.company-facts dd{margin:0;font-size:1rem}
.leader-preview{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.leader-preview article{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:1.5rem;align-items:start}
.leader-preview img{width:100%;height:260px;object-fit:contain;background:#e0e6e6;object-position:bottom}
.leader-preview h3{font-size:1.6rem;margin:0 0 1rem}
.leader-preview p{font-size:.95rem}
/* Bridge older HTML utilities to the same paper/ink system. */
.premium-site main [class*="text-white"]:not([data-dark-panel] *){color:var(--muted)!important}
.premium-site main h1[class*="text-white"]:not([data-dark-panel] *),.premium-site main h2[class*="text-white"]:not([data-dark-panel] *),.premium-site main h3[class*="text-white"]:not([data-dark-panel] *),.premium-site main strong[class*="text-white"]:not([data-dark-panel] *){color:var(--ink)!important}
.premium-site main [class*="text-[#2DB7D8]"],.premium-site main [class*="text-[#69BE6B]"]{color:var(--teal)!important}
.premium-site main [class*="bg-[#0"],.premium-site main [class*="bg-white/"]{background:#edf1ee!important}
.premium-site main [class*="border-white/"]{border-color:var(--rule)!important}
.premium-site main [class*="shadow-"]{box-shadow:none!important}
.premium-site main figcaption{color:var(--ink)!important}
.premium-site .profile-signal{background:#e8efeb!important;border-color:var(--rule)!important}
.premium-site .profile-hero-card .profile-signal,.premium-site .profile-tag,.premium-site .metric-chip{background:#e8efeb!important;border-color:var(--rule)!important;color:var(--ink)!important;box-shadow:none!important;border-radius:2px!important}
.premium-site .profile-hero-card{background:#fff!important;border:0!important;border-radius:2px!important;box-shadow:none!important;padding:1.5rem!important}
.premium-site .breadcrumb-strip{background:#edf1ee!important;border-color:var(--rule)!important}
.premium-site .toc-panel{background:transparent!important;border:0!important;border-left:1px solid var(--rule)!important;border-radius:0!important}
.premium-site .toc-panel a{color:var(--muted)!important;font-size:.95rem!important}
.premium-site .article-panel{background:#fff!important;border-color:var(--rule)!important;box-shadow:none!important;border-radius:2px!important}
.premium-site .article-content{color:var(--muted)!important;font-size:1.05rem;line-height:1.9}
.premium-site .article-content h2:not([data-dark-panel] *),.premium-site .article-content h3:not([data-dark-panel] *){color:var(--ink)!important}
.premium-site .article-content a:not([data-dark-panel] *){color:var(--teal)!important}
.premium-site .article-content .btn-primary:not([data-dark-panel] *){color:#fff!important}
.premium-site .hero-meta,.premium-site .hero-meta span,.premium-site .trust-callout{color:var(--muted)!important}
.premium-site .trust-callout,.premium-site .sources-box{background:#edf3f0!important;border-color:var(--rule)!important;border-radius:2px!important}
.premium-site .legacy-diagram .legacy-systems li{background:#edf3f0!important}
.premium-site .legacy-systems li,.premium-site .legacy-core li{background:#edf3f0!important;color:var(--ink)!important}
.premium-site .rule-condition{color:var(--ink)!important}
.premium-article .article-layout:has(.toc-panel){grid-template-columns:minmax(0,18rem) minmax(0,49rem);gap:4rem}
.premium-article .article-panel{padding:0!important;border:0!important;background:transparent!important}
.premium-article .article-layout:has(.toc-panel) .article-panel{width:100%;max-width:none}
.premium-site main>.hero-bg{background:#edf1ee!important;background-image:none!important;min-height:0!important;padding-block:4rem!important;display:block}
.premium-site main>.hero-bg::before,.premium-site main>.hero-bg::after{display:none!important}
.premium-site main>.hero-bg [class*="hero-slider"],.premium-site main>.hero-bg [class*="hero-slide"]{display:none!important}
.premium-site .hero-content,.premium-site .construction-hero-copy,.premium-site .editing-hero-copy,.premium-site .it-hero-copy{max-width:55rem!important}
.premium-site main>.hero-bg h1{font-size:clamp(2.5rem,4.7vw,4.3rem)!important;line-height:1.16!important;margin-bottom:1.5rem;color:var(--ink)!important}
.premium-site main>.hero-bg p{color:var(--muted)!important;font-weight:400!important;line-height:1.85!important;font-size:1.1rem!important}
.premium-site .enterprise-wrap,.premium-site .cyber-wrap{max-width:76rem}
.premium-site .enterprise-section,.premium-site .cyber-section{padding:4.5rem 2rem}
.premium-site .enterprise-band,.premium-site .cyber-section:nth-of-type(even){background:#edf1ee}
.premium-site .enterprise-main>section:first-child,.premium-site .cyber-hero{background:#edf1ee;border-bottom:1px solid var(--rule)}
.premium-site .enterprise-main h1,.premium-site .cyber-main h1{font-size:clamp(2.4rem,4.3vw,4rem);font-weight:400!important;line-height:1.15;text-wrap:balance}
.premium-site .enterprise-card,.premium-site .cyber-capability{border-radius:0;box-shadow:none;background:transparent;border:0;border-top:1px solid #a9b9bd;padding:1.75rem 0}
.premium-site .enterprise-grid{gap:3rem}
.premium-site .capability-grid{gap:2rem}
.premium-site .enterprise-card h3{font-size:1.5rem}
.premium-site .enterprise-diagram,.premium-site .cyber-diagram{background:#fff;border-color:#b0c4c7;border-radius:3px}
.premium-site .enterprise-cta{border-radius:0;background:#edf1ee;border:0;border-left:2px solid var(--teal);padding:2rem}
.premium-site .cyber-capability-grid{gap:3rem}
.premium-site .cyber-evidence article,.premium-site .cyber-industries article{border:0;border-top:1px solid #a9b9bd;border-radius:0;background:transparent;padding:1.5rem 0}
.premium-site .cyber-evidence{gap:2rem}
.premium-site .cyber-hero{padding:3rem 2rem 4rem}
.premium-site .cyber-kicker{color:var(--teal)!important}
.premium-site .cyber-jump a{border:0;border-bottom:1px solid var(--rule);border-radius:0;padding:.5rem 0;margin-right:1.5rem}
.premium-site .cyber-flow li,.premium-site .cyber-boundary-map li{background:#f1f5f3;border-color:var(--rule);border-radius:2px}
.premium-site .cyber-boundary-center{background:#e1eeeb;border-radius:2px}
.premium-site .cyber-engagement li{border:0;border-top:1px solid #a9b9bd;background:none;border-radius:0;padding:1.5rem 0}
.premium-site #review-request .cyber-wrap{border:0;border-left:2px solid var(--teal);border-radius:0;background:#e6eeeb}
.premium-site .process-flow li{background:#eef5f2;border-color:#68a6a9;color:var(--ink)}
.premium-site .flow-number{color:var(--teal);font-size:.8rem}
.premium-site .faq details{background:transparent;border:0;border-bottom:1px solid var(--rule);border-radius:0}
.premium-site .faq summary{font:500 1.06rem/1.6 var(--font-body);color:var(--ink);padding:1.15rem 0}
.premium-site .faq details>p,.premium-site .faq details>div{padding-inline:0}
.premium-site .faq summary:hover,.premium-site .faq details[open] summary{background:none;color:var(--teal)}
.premium-site .faq details p{color:var(--muted);font-size:1rem;line-height:1.85}
/* Reading pages retain the full, published editorial substance. */
.premium-article .enterprise-article-head{max-width:65rem}
.premium-article .enterprise-article-head h1{max-width:25ch;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.16;text-wrap:balance}
.premium-article .enterprise-article-head .section-lead{max-width:80ch;font-size:1.08rem}
.premium-article .article-layout{grid-template-columns:minmax(0,49rem) minmax(0,19rem);gap:5rem;justify-content:space-between}
.premium-article .enterprise-prose{max-width:49rem}
.premium-article .enterprise-prose p,.premium-article .enterprise-prose ul:not([class]),.premium-article .enterprise-prose ol:not([class]){font-size:1.08rem;line-height:1.9;color:#354957}
.premium-article .enterprise-prose h2{font-size:clamp(1.6rem,2.5vw,2.2rem);margin-top:2rem;line-height:1.35;letter-spacing:-.025em}
.premium-article .enterprise-prose h3{font-size:1.3rem;line-height:1.5;letter-spacing:-.015em}
.premium-article .article-toc{background:transparent;border:0;border-left:1px solid var(--rule);border-radius:0;padding:0 0 0 1.75rem;max-height:none}
.premium-article .article-toc h2{font-size:.9rem;margin:0 0 1.2rem;font-weight:600!important}
.premium-article .article-toc a{color:var(--muted);font-size:.9rem;line-height:1.6;display:inline-block;padding:.25rem 0}
.premium-article .article-toc ol{gap:.5rem}
.premium-article .article-byline{font-size:.85rem;color:var(--muted);border-top:1px solid var(--rule);padding-top:1rem;max-width:49rem}
.premium-article .breadcrumb a{min-height:32px;display:inline-flex;align-items:center}
.premium-article .article-references a{font-size:1rem;line-height:1.8}
.premium-article .editorial-note,.premium-article .cyber-editorial-note{background:transparent!important;border:0!important;border-top:1px solid var(--rule)!important;border-radius:0!important;padding:1.75rem 0!important;color:var(--muted)!important}
.premium-article .editorial-note p,.premium-article .cyber-editorial-note p{font-size:1rem!important;color:var(--muted)!important;line-height:1.85}
.premium-article .article-link-list li{border:0;border-top:1px solid var(--rule);padding:1rem 0;border-radius:0}
.premium-site table{color:var(--ink)}
.premium-site table th,.premium-site table td{border-color:var(--rule)!important}
.premium-site table thead th{background:#e3eeeb!important;color:var(--ink)!important}
.premium-site table tbody th,.premium-site table tbody td{background:#fff!important;color:var(--muted)!important}
.premium-site table tbody th{color:var(--ink)!important}
.premium-site table caption{color:var(--ink)!important}
.premium-site .table-cell-label,.premium-site .cyber-cell-label{color:var(--teal)!important}
/* Scoped information graphics from the validated cybersecurity articles. */
.premium-site .cyber-article-prose :is(.cyber-article-diagram,.cyber-key-point,.cyber-article-stat,.cyber-stat-detail,.cyber-stat-grid>div,.cyber-action-plan,.cyber-checklist,.scs-diagram,.scs-table-wrap,.scs-callout,.ransom-data-detail,.ransom-diagram,.ransom-layer,.ransom-exercise,.ransom-readiness>div){background:#edf3f0!important;border-color:#a9bdbe!important;border-radius:3px!important}
.premium-site .cyber-article-prose :is(.cyber-article-flow li,.cyber-article-step,.scs-step,.scs-branch,.scs-phase,.ransom-step){background:#fff!important;border-color:#b0c4c7!important;border-radius:3px!important}
.premium-site .cyber-article-prose :is(p,li,dd){color:var(--muted)}
.premium-site .cyber-article-prose :is(strong,dt,figcaption,h2,h3,.cyber-key-point){color:var(--ink)!important}
.premium-site .cyber-article-prose :is(.cyber-article-number,.scs-number,.ransom-number){background:#d9eae4!important;color:#17594e!important}
.premium-site .cyber-article-prose .ransom-step::before{color:var(--teal)!important}
.premium-site .cyber-article-prose .ransom-layer .eyebrow,.premium-site .cyber-article-prose .ransom-exercise .eyebrow{color:var(--teal)!important}
.premium-site .ransom-current-notice,.premium-site .scs-current-notice,.premium-site .cyber-current-notice{color:var(--muted)}
/* Portraits are contained, never recropped into misleading staff images. */
.premium-site .team-photo{border-radius:2px;width:100%;height:260px;object-fit:contain;object-position:center;background:#e1e6e6;box-shadow:none;border:0}
.premium-team .card{text-align:left;border:0;border-top:1px solid var(--rule);padding:1.5rem 0;background:none}
.premium-team .card p{margin-inline:0;max-width:none}
.premium-site .profile-photo{object-fit:contain;border-radius:2px;box-shadow:none;background:#e1e6e6;max-height:500px}
/* Core contact / calendar. */
.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:5rem;align-items:start}
.contact-form{background:#fff;border:1px solid var(--rule);padding:2.5rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.form-field{display:grid;gap:.55rem;margin-bottom:1.25rem;min-width:0}
.form-field label{font-size:.88rem;font-weight:500;line-height:1.5}
.form-field label span{color:var(--muted);font-weight:400}
.premium-site .contact-form input:not([type='checkbox']):not([type='hidden']),.premium-site .contact-form select,.premium-site .contact-form textarea{display:block;min-height:48px;background:#f7f8f5;color:var(--ink);font:400 1rem/1.65 var(--font-body);padding:.75rem .85rem;border:1px solid #70828a;border-radius:2px}
.premium-site .contact-form input::placeholder,.premium-site .contact-form textarea::placeholder{color:#5a6870}
.form-consent{display:flex;align-items:flex-start;gap:.8rem;font-size:.85rem;line-height:1.75;margin:1.5rem 0}
.form-consent input{height:20px;width:20px;flex-shrink:0;accent-color:var(--teal);margin-top:.25rem}
.verification-area{margin:1.5rem 0;padding:1rem;background:#f0f4f0;border:1px solid var(--rule);min-width:0}
.verification-message{font-size:.88rem;line-height:1.75;color:var(--muted);margin:.5rem 0 0}
.verification-area button{font:500 .85rem var(--font-body);padding:.6rem .8rem;border:1px solid var(--teal);color:var(--teal);background:#fff;min-height:44px;margin-top:.75rem}
.contact-feedback{padding:1rem;border-left:3px solid var(--teal);background:#e4f0ec;color:#164e45;font-size:1rem;line-height:1.7;margin-top:1.25rem}
.contact-feedback[data-state='error']{border-color:#a43d30;color:#792b23;background:#fbefea}
.contact-feedback[hidden],.verification-area [hidden],.premium-site [hidden]{display:none!important}
.contact-form button[type='submit']{width:100%}
.contact-form button:disabled{opacity:.65;cursor:wait}
.contact-details h2{font-size:1.75rem;margin:0 0 1.5rem}
.contact-details dl{margin:0}
.contact-details dl>div{border-top:1px solid var(--rule);padding:1rem 0}
.contact-details dt{font-size:.78rem;color:var(--muted);margin-bottom:.4rem}
.contact-details dd{margin:0;font-size:1rem;overflow-wrap:anywhere}
.contact-route{border-top:1px solid var(--rule);margin-top:2rem;padding-top:1.5rem}
.map-frame{width:100%;height:360px;border:1px solid var(--rule);display:block;margin-top:2rem}
.premium-site .booking-timezone{font-size:1rem;color:var(--muted);background:#e8eeeb;border-left:2px solid var(--teal);padding:1rem;line-height:1.75}
.calendar-panel{background:#fff;border:1px solid var(--rule);padding:1.5rem}
.calendar-panel iframe{width:100%;border:0;min-height:720px;display:block}
/* Library: native buttons and non-script fallback show every article. */
.insights-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;border-top:1px solid #a9b9bd;padding-top:2rem}
.insights-feature h2{font-size:clamp(1.8rem,3vw,2.8rem);margin:0 0 1.5rem}
.insights-feature h2 a{color:var(--ink);text-decoration:none}
.insights-filters{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;border-bottom:1px solid var(--rule);margin-bottom:2.5rem;padding-bottom:.75rem}
.insights-filters button{font:500 .9rem/1.5 var(--font-body);color:var(--muted);background:none;border:0;border-bottom:2px solid transparent;padding:.6rem 0;cursor:pointer;min-height:44px}
.insights-filters button[aria-pressed='true']{color:var(--teal);border-color:var(--teal)}
.insights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}
.library-article{padding-top:1.5rem;border-top:1px solid var(--rule);display:flex;flex-direction:column;min-width:0}
.library-article h2{font-size:1.4rem;line-height:1.4;margin:0 0 1rem}
.library-article h2 a{color:var(--ink);text-decoration:none}
.library-article h2 a:hover{color:var(--teal)}
.library-article p{font-size:.98rem;color:var(--muted)}
.library-article .text-link{margin-top:auto}
.library-article .article-byline{font-size:.82rem;border:0;padding:0;margin:0 0 .8rem}
.library-count{font-size:.88rem;color:var(--muted);margin:0 0 1.5rem}
.insights-filters{display:none}
.insights-filters.is-ready{display:flex}
.service-top-actions{padding-block:1.5rem;border-bottom:1px solid var(--rule)}
.service-top-actions .enterprise-actions{margin:0}
.service-approach{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:2.5rem}
.environment-process{margin:0;padding:2.5rem;background:#fff;border:1px solid #b0c4c7}
.environment-process figcaption{font-size:1.1rem;font-weight:500;margin-bottom:2rem}
.environment-process ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;margin:0}
.environment-process li{border-top:2px solid var(--teal);padding-top:1rem;min-width:0}
.environment-process li>span{font-size:.8rem;color:var(--teal)}
.environment-process h3{font-size:1.2rem;line-height:1.5;margin:1rem 0}
.environment-process p{font-size:1rem;line-height:1.8}
.environment-process>p{border-top:1px solid var(--rule);padding-top:1.5rem;margin:2rem 0 0}
.editing-example{margin:0;max-width:60rem}
.editing-example img{display:block;width:100%;height:auto;border:1px solid var(--rule);object-fit:contain}
.editing-example figcaption{font-size:1rem;line-height:1.8;color:var(--muted);padding-top:1rem}
.legal-reading{max-width:54rem}
.legal-reading>section{margin-bottom:3rem}
.legal-reading h2{font-size:1.7rem;margin:0 0 1rem}
.legal-reading p{font-size:1.05rem;line-height:1.9;color:var(--muted)}
.booking-help{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap;border-top:1px solid var(--rule);padding-top:1.5rem;margin-top:2rem}
.booking-help p{color:var(--muted);margin:0;max-width:65ch}
.profile-hero-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:5rem;align-items:center}
.profile-portrait{display:block;width:100%;height:420px;object-fit:contain;object-position:center;background:#dfe5e5}
.profile-role{font-size:1rem;color:var(--teal);margin-bottom:1.5rem}
.profile-reading{max-width:52rem}
.profile-reading p,.profile-reading li{font-size:1.05rem;color:var(--muted);line-height:1.9}
.profile-reading ul{list-style:disc;padding-left:1.5rem}
.profile-reading li{margin:.65rem 0}
/* Japanese prose uses natural line breaking and generous leading. */
html[lang='ja'] .premium-site h1,html[lang='ja'] .premium-site h2,html[lang='ja'] .premium-site h3{letter-spacing:0;line-break:strict;overflow-wrap:break-word}
html[lang='ja'] .premium-site{--font-body:'Noto Sans JP',Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,system-ui,sans-serif;--font-display:var(--font-body)}
.premium-site:has(.title-line) main :is(p,li,dd,span){color:var(--muted)!important}
.premium-site:has(.title-line) main :is(.band,.dashboard,.mini-stat,.profile-panel,.quote-panel){background:#edf1ee!important;border-color:var(--rule)!important;box-shadow:none!important;border-radius:2px!important}
.premium-site:has(.title-line) main :is(.eyebrow,.title-line){color:var(--teal)!important}
.premium-site:has(.title-line) main .chip{background:#e3ece8!important;color:var(--ink)!important;border-color:var(--rule)!important}
.premium-site:has(.title-line) main strong{color:var(--ink)!important}
.premium-site:has(.title-line) main .tab-button{background:#fff!important;color:var(--muted)!important;border-color:var(--rule)!important}
.premium-site:has(.title-line) main .tab-button[aria-selected='true']{background:#dfebe6!important;color:var(--teal)!important;border-color:var(--teal)!important}
html[lang='ja'] .premium-home-hero h1{font-size:clamp(2rem,3.55vw,3.3rem);line-height:1.5;max-width:19ch;text-wrap:balance}
.hero-phrase{display:inline-block}
html[lang='ja'] .premium-section-heading h2{font-size:clamp(1.8rem,2.6vw,2.7rem);line-height:1.5}
html[lang='ja'] .premium-page-hero h1{font-size:clamp(2rem,3.5vw,3.3rem);line-height:1.5;max-width:24ch}
html[lang='ja'] .premium-site .enterprise-main h1,html[lang='ja'] .premium-site .cyber-main h1{font-size:clamp(1.9rem,3.4vw,3.1rem);line-height:1.5}
html[lang='ja'] .premium-site .enterprise-article-head h1{max-width:30ch}
html[lang='ja'] .premium-site .expertise-row h3,html[lang='ja'] .premium-site .experience-list h3{line-height:1.6}
html[lang='ja'] .premium-site .enterprise-prose p{line-height:2}
@media(max-width:1199px){
 .premium-article .article-layout:has(.toc-panel){grid-template-columns:1fr;gap:2rem}
 .premium-article .article-layout:has(.toc-panel) .toc-panel{position:static}
 .premium-site .site-nav,.premium-site .header-cta{display:none}
 .premium-site .menu-toggle{display:inline-flex}
 .home-hero-grid{grid-template-columns:1.65fr .5fr;gap:3rem}
 .architectural-mark{min-height:320px}
 .premium-split,.leadership-feature{gap:3rem}
 .premium-site .article-layout{grid-template-columns:1fr;gap:2.5rem}
 .premium-site .article-toc{grid-row:1;border-left:0;border-bottom:1px solid var(--rule);padding:0 0 1.5rem;max-height:none}
 .premium-site .article-toc ol{columns:2;display:block}
 .premium-site .article-toc li{break-inside:avoid;margin:.5rem 0}
 .premium-site .enterprise-prose{max-width:49rem;margin-inline:auto;width:100%}
 .premium-site .site-footer__grid{grid-template-columns:1fr 1fr;gap:2.5rem 4rem}
 .leader-preview{grid-template-columns:1fr}
 .leader-preview article{grid-template-columns:180px 1fr;max-width:50rem}
}
@media(max-width:900px){
 .profile-hero-grid{grid-template-columns:1fr;gap:2.5rem}
 .profile-portrait{max-width:360px;height:360px}
 .service-approach,.environment-process ol{grid-template-columns:repeat(2,minmax(0,1fr))}
 .architectural-mark{display:none}
 .home-hero-grid{grid-template-columns:1fr}
 .premium-home-hero h1{max-width:22ch}
 .expertise-row{grid-template-columns:2rem 1fr 1fr;gap:2rem}
 .experience-list,.editorial-columns,.insights-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem}
 .approach-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .premium-split,.leadership-feature,.premium-cta>.premium-wrap,.contact-layout,.insights-feature{grid-template-columns:1fr;gap:2.5rem}
 .portrait-pair{max-width:480px}
 .portrait-pair img{height:290px}
 .company-facts{grid-template-columns:1fr}
 .contact-form{max-width:48rem;width:100%}
 .contact-layout .contact-form{grid-row:1}
}
@media(max-width:640px){
 .service-approach,.environment-process ol{grid-template-columns:1fr}
 .environment-process{padding:1.25rem}
 body.premium-site{padding-top:74px!important}
 .premium-site .site-header{height:74px}
 .premium-site .site-header__inner{padding:.5rem 1.25rem;gap:.5rem}
 .premium-site .brand img{width:42px;height:42px}
 .premium-site .brand__name{font-size:1rem}
 .premium-site .brand__name>span{font-size:.55rem}
 .premium-site .mobile-menu{max-height:calc(100dvh - 74px)}
 .premium-wrap{padding-inline:1.25rem}
 .premium-section{padding-block:3.5rem}
 .premium-section-heading{margin-bottom:2rem}
 .premium-home-hero{padding-block:3rem 3.5rem}
 .premium-home-hero h1{font-size:clamp(2.2rem,9vw,2.8rem);line-height:1.13;letter-spacing:-.035em;max-width:21ch;margin:1.25rem 0 1.5rem}
 .premium-home-hero .eyebrow{font-size:.65rem;letter-spacing:.095em;max-width:30ch}
 .premium-home-hero .hero-lead{font-size:1rem;line-height:1.85}
 .hero-support{font-size:.95rem;line-height:1.85}
 .premium-home-hero .enterprise-actions{flex-direction:column;align-items:stretch}
 .premium-home-hero .enterprise-actions a{width:100%;font-size:.95rem}
 .credentials-strip>.premium-wrap{grid-template-columns:1fr;gap:.85rem;padding-block:1.5rem}
 .credentials-strip p{border:0;display:flex;align-items:baseline;gap:1rem;justify-content:space-between}
 .credentials-strip span{font-size:.7rem;margin:0;flex-shrink:0}
 .credentials-strip strong{font-size:.83rem;text-align:right}
 .premium-section-heading h2{font-size:2rem;line-height:1.2}
 .expertise-row{grid-template-columns:1.5rem 1fr;gap:.65rem 1rem;padding:1.75rem 0}
 .expertise-row>div{grid-column:2}
 .expertise-row h3{font-size:1.45rem;line-height:1.3}
 .expertise-number{font-size:.7rem}
 .expertise-row p{font-size:.95rem;line-height:1.85}
 .creative-line{gap:.5rem;font-size:.9rem}
 .experience-list,.editorial-columns,.insights-grid{grid-template-columns:1fr;gap:2rem}
 .experience-list .eyebrow{font-size:.68rem}
 .premium-site .partner-marks{gap:1.25rem;padding:1.5rem;justify-content:flex-start}
 .premium-site .partner-mark--axton{width:auto}
 .premium-site .partner-mark--axton img{width:56px;height:56px}
 .premium-site .partner-mark--axton span{font-size:.9rem;max-width:8rem}
 .premium-site .partner-mark .fluyenta-logo{width:180px}
 .premium-site .partnership-feature .partner-marks{padding:0;gap:1.25rem;flex-direction:column;align-items:flex-start}
 .partnership-feature .partner-mark--axton{width:auto}
 .premium-split p{font-size:1rem;line-height:1.9}
 .approach-list{grid-template-columns:1fr;gap:1.5rem}
 .approach-list li{display:grid;grid-template-columns:2rem 1fr;gap:.5rem 1rem;padding-top:1rem}
 .approach-list h3{font-size:1.2rem;margin:0}
 .approach-list p{grid-column:2;font-size:.95rem}
 .portrait-pair{gap:.8rem}
 .portrait-pair img{height:230px}
 .portrait-pair img:last-child{margin-top:2rem}
 .premium-cta .enterprise-actions{flex-direction:column}
 .premium-cta .enterprise-actions a{width:100%}
 .home-contact-note{font-size:.8rem;line-height:1.85}
 .premium-page-hero{padding-block:3rem}
 .premium-page-hero h1{font-size:2.3rem;line-height:1.18}
 .premium-page-hero .hero-lead{font-size:1rem}
 .expertise-detail{grid-template-columns:1fr;gap:.5rem}
 .expertise-detail .expertise-number{margin:0}
 .expertise-detail h2{font-size:1.8rem}
 .service-definition{grid-template-columns:1fr;gap:1.5rem}
 .company-facts>div{grid-template-columns:1fr;gap:.5rem}
 .leader-preview article{grid-template-columns:1fr;gap:1.5rem}
 .leader-preview img{max-width:240px;height:290px}
 .premium-site .enterprise-section,.premium-site .cyber-section{padding:3rem 1.25rem}
 .premium-site .cyber-hero{padding:2rem 1.25rem 3rem}
 .premium-site .enterprise-main h1,.premium-site .cyber-main h1{font-size:2.2rem;line-height:1.2}
 .premium-site .enterprise-grid{gap:1.5rem}
 .premium-site .enterprise-card h3{font-size:1.35rem}
 .premium-site .cyber-capability-grid{gap:0}
 .premium-article .enterprise-article-head h1{font-size:2.05rem;line-height:1.25;max-width:25ch}
 .premium-article .enterprise-prose p,.premium-article .enterprise-prose ul:not([class]),.premium-article .enterprise-prose ol:not([class]){font-size:1rem;line-height:1.9}
 .premium-article .article-toc ol{columns:1}
 .premium-article .article-toc a{font-size:.9rem;min-height:32px;padding:.4rem 0}
 .premium-site .cyber-evidence{gap:1.5rem}
 .premium-site table tbody tr{background:#fff!important;border-color:var(--rule)!important;border-radius:2px!important}
 .contact-form{padding:1.25rem}
 .form-grid{grid-template-columns:1fr;gap:0}
 .verification-area{padding:.75rem}
 .calendar-panel{padding:0;border:0}
 .premium-site .site-footer__grid{grid-template-columns:1fr;padding:3rem 1.25rem 2rem;gap:2rem}
 .premium-site .site-footer__legal-inner{padding:1rem 1.25rem}
 html[lang='ja'] .premium-home-hero h1{font-size:clamp(1.65rem,7.15vw,2rem);line-height:1.6;max-width:19ch}
 html[lang='ja'] .premium-section-heading h2{font-size:1.75rem;line-height:1.6}
 html[lang='ja'] .premium-page-hero h1{font-size:1.9rem;line-height:1.6}
 html[lang='ja'] .premium-site .enterprise-main h1,html[lang='ja'] .premium-site .cyber-main h1{font-size:1.8rem;line-height:1.6}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.premium-site *{animation:none!important;transition:none!important}}

/* Legacy-system labels remain legible on the editorial surface. */
.premium-site main .legacy-chips li{background:#edf1ee!important;color:var(--ink)!important;border-color:var(--rule)!important}
.premium-site .profile-stat,.premium-site .feature-card{background:#edf1ee!important;border-color:var(--rule)!important}
.premium-site .breadcrumb-strip span{color:var(--muted)!important}
.premium-site .tab-button{color:#065d65!important}
.premium-site .mobile-menu__inner a{display:flex!important;align-items:center;min-height:44px!important}
.premium-site:has(.title-line) main .tab-button[aria-selected='true']{color:#065d65!important}
.premium-article .prose strong,.premium-article .trust-callout p{color:var(--ink)!important}
.premium-article .article-figure figcaption,.premium-article .use-case-card figcaption{background:#edf1ee!important;color:var(--ink)!important}
.premium-article .article-content :is(p,strong,span,li):not([data-dark-panel] *){color:var(--ink)!important}
.premium-article .sources-panel{background:#edf1ee!important;border-color:var(--rule)!important}
@media(max-width:430px){html[lang='ja'] .premium-home-hero h1{max-width:none}}
.premium-article .sources-panel :is(p,li),.premium-article .quick-answer:not([data-dark-panel]) p{color:var(--ink)!important}
/* Wide explanatory diagrams get their own reading row, never the contents rail. */
.premium-article .article-layout:has(>.legacy-prose),.premium-article .article-layout:has(>.portal-prose){grid-template-columns:1fr;gap:2.5rem}
.premium-article .article-layout:has(>.legacy-prose)>.article-toc,.premium-article .article-layout:has(>.portal-prose)>.article-toc{grid-row:1;position:static;max-width:none;border-left:0;border-top:1px solid var(--rule);padding:1.5rem 0}
.premium-article .legacy-prose,.premium-article .portal-prose{max-width:none;width:100%;min-width:0}
.premium-article :is(.legacy-prose,.portal-prose)>:is(p,h2,h3,ul:not([class]),ol:not([class])){max-width:49rem}
.premium-article .legacy-roadmap,.premium-article #portal-diagram-3{width:100%;max-width:100%}
.contact-form h2{font-size:1.65rem;line-height:1.35;margin:0 0 .65rem}

.premium-article figcaption>h2{font-size:inherit;line-height:inherit;font-weight:600!important;letter-spacing:normal;margin:0!important}
.contact-layout>*{min-width:0}
.premium-site #contactVerification{width:100%;min-width:0;max-width:100%}
@media(max-width:1024px){.contact-layout{grid-template-columns:minmax(0,1fr)}}

/* Source: assets/css/recovery.css */
/* Editorial recovery: same components, richer media and deliberate interaction. */
@font-face{font-family:'Instrument Sans';src:url('../fonts/InstrumentSans.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:'Axton Noto Sans JP';src:url('../fonts/NotoSansJP.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--font-display:'Instrument Sans',Arial,sans-serif;--font-body:'Instrument Sans',Arial,sans-serif;--navy:#102535;--motion:cubic-bezier(.22,.65,.3,1)}
html[lang='ja'] .premium-site{--font-body:'Axton Noto Sans JP','Noto Sans JP','Yu Gothic',Meiryo,sans-serif;--font-display:var(--font-body)}
.premium-site h1{font-weight:500!important;letter-spacing:-.045em}
.premium-site h2{font-weight:500!important;letter-spacing:-.035em}
.premium-site h3{font-weight:550!important;letter-spacing:-.02em}
.premium-site .section-lead,.premium-site .hero-lead{line-height:1.8}
.premium-site .brand__name{font-family:'Instrument Sans',Arial,sans-serif;letter-spacing:-.025em}
.premium-site .btn-primary,.premium-site .btn-ghost{transition:background-color 220ms,border-color 220ms,color 220ms,transform 220ms var(--motion),box-shadow 220ms;letter-spacing:.01em;border-radius:3px}
.premium-site :is(.btn-primary,.btn-ghost):is(:hover,:focus-visible){transform:translateY(-2px);box-shadow:0 5px 15px #0b172315}
.premium-site :is(.text-link,.inline-links a){text-decoration:underline;text-decoration-color:transparent;text-underline-offset:7px;transition:color 220ms,text-decoration-color 220ms,text-underline-offset 220ms}
.premium-site :is(.text-link,.inline-links a):is(:hover,:focus-visible){text-decoration-color:currentColor;text-underline-offset:4px}
.premium-site a>span[aria-hidden='true']{transition:transform 220ms var(--motion)}
.premium-site a:is(:hover,:focus-visible)>span[aria-hidden='true']:last-child{transform:translate(2px,-2px)}
.premium-site .site-header{box-shadow:0 2px 18px #10253508}
.premium-site .site-nav{gap:1.35rem}
.premium-site .site-nav a{transition:color 180ms}
.services-menu{position:relative}
.services-menu summary{display:flex;align-items:center;gap:.55rem;min-height:44px;cursor:pointer;list-style:none;font-size:.9rem;font-weight:550;color:#41515d;user-select:none}
.services-menu summary::-webkit-details-marker{display:none}
.services-menu summary::marker{content:''}
.menu-chevron{font-family:Arial,sans-serif;transition:transform 180ms;font-size:1rem}
.services-menu[open] .menu-chevron{transform:rotate(180deg)}
.services-menu summary:is(:hover,:focus-visible),.services-menu:has(a[aria-current]) summary{color:var(--teal)}
.services-panel{background:#fff;border:1px solid var(--rule);border-top:3px solid var(--teal);padding:1.4rem 1.65rem;box-shadow:0 18px 40px #10253522}
.services-menu--desktop .services-panel{position:absolute;top:calc(100% + 12px);left:-5rem;width:580px;max-width:calc(100vw - 4rem);z-index:110;animation:menu-enter 180ms var(--motion)}
.services-menu--desktop::after{content:'';position:absolute;left:0;top:100%;height:16px;width:100%}
.menu-kicker{font-size:.75rem;letter-spacing:.1em;color:var(--teal);margin:0 0 .7rem}
.premium-site .services-panel>a{display:flex;gap:1rem;padding:.8rem .25rem;min-height:52px;color:var(--ink);border-bottom:1px solid var(--rule);text-decoration:none;font-size:1rem;transition:background 200ms,padding 200ms,color 200ms}
.services-panel>a>span:nth-child(2){flex:1}
.nav-service-number{color:var(--teal);font-size:.75rem;align-self:center}
.premium-site .services-panel>a:is(:hover,:focus-visible){background:#edf4f2;color:var(--teal);padding-inline:.65rem}
.services-panel-bottom{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;margin-top:.7rem}
.premium-site .services-panel-bottom a{font-size:.82rem;min-height:40px;color:var(--teal)}
.services-menu--mobile summary{font-size:1.15rem;padding:.9rem 0;justify-content:space-between;min-height:52px;border-bottom:1px solid var(--rule)}
.services-menu--mobile .services-panel{border:0;border-left:2px solid var(--teal);padding:.5rem 0 .5rem 1rem;box-shadow:none;animation:menu-enter 180ms}
.services-menu--mobile .menu-kicker{display:none}
.premium-site .services-menu--mobile .services-panel>a{font-size:.95rem;line-height:1.6;gap:.5rem}
.premium-site .services-menu--mobile .services-panel-bottom a{font-size:.85rem}
@keyframes menu-enter{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
/* Hero composition gives imagery real weight, without claiming documentary provenance. */
.premium-home-hero{background:#0b1c2b;padding:4.25rem 0 3rem}
.home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:3.5rem;align-items:center}
.premium-home-hero h1{font-size:clamp(2.7rem,4.35vw,4.35rem);font-weight:500!important;line-height:1.08;max-width:17ch;margin:1rem 0 1.6rem}
.premium-home-hero .hero-lead{max-width:49ch;font-size:1.07rem;line-height:1.85;color:#c8d3da}
.premium-home-hero .eyebrow{max-width:40ch;font-size:.7rem;letter-spacing:.13em}
.premium-home-hero .enterprise-actions{flex-wrap:wrap;margin-top:1.75rem}
.premium-home-hero .btn-primary{background:#9bd7d8;border-color:#9bd7d8;color:#082330}
.hero-visual{margin:0;position:relative;min-width:0}
.hero-visual img{width:100%;aspect-ratio:1.17;object-fit:cover;object-position:52% center;display:block;border:1px solid #385064}
.hero-visual figcaption{font-size:.75rem;line-height:1.7;color:#b9cad2;border-top:1px solid #385064;padding-top:.75rem;margin-top:.8rem}
.hero-visual::before{content:'';position:absolute;top:-12px;right:-12px;width:48px;height:48px;border-top:2px solid #68bbc0;border-right:2px solid #68bbc0;pointer-events:none}
.credentials-strip{background:#e8efed}
.credentials-strip strong{font-weight:550}
.expertise-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 3rem;border-top:0}
.expertise-row{position:relative;display:grid;grid-template-columns:2.5rem 1fr;padding:0 0 1.8rem;gap:.9rem 1rem;border-bottom:1px solid #9db2b5;transition:border-color 220ms,background 220ms}
.expertise-visual{grid-column:1/-1;margin:0 0 .6rem;overflow:hidden;position:relative;background:#0b1c2b}
.expertise-visual img{width:100%;aspect-ratio:2.5;object-fit:cover;object-position:right center;display:block;transition:transform 550ms var(--motion)}
.expertise-visual figcaption{color:#d2dfe3;font-size:.7rem;line-height:1.5;padding:.5rem .8rem;background:#102535}
.expertise-row h3{max-width:25ch;font-size:1.75rem;line-height:1.3}
.expertise-row>div{grid-column:2}
.expertise-number{font-size:.85rem;padding-top:.4rem;transition:color 220ms}
.expertise-row:is(:hover,:focus-within){border-color:var(--teal);background:#eaf0ed}
.expertise-row:is(:hover,:focus-within) .expertise-visual img{transform:scale(1.025)}
.expertise-row p{max-width:55ch}
.creative-line{align-items:center;border-top:0;padding-top:2.25rem;justify-content:flex-start}
.creative-line img{width:120px;height:76px;object-fit:cover;display:block}
.creative-line a{margin-left:auto;font-weight:550}
.challenge-section .premium-section-heading{max-width:64rem}
.challenge-section h2{max-width:30ch}
.challenge-section article{border-top:0;border-left:1px solid #a9b9bd;padding:0 0 0 1.75rem}
.challenge-index{font-size:1rem;color:var(--teal);display:block;margin-bottom:1.2rem}
.challenge-section h3{font-size:1.55rem;min-height:4rem}
.experience-list{gap:2rem}
.experience-list article{border-top:0;padding:0}
.solution-flow{margin:0 0 1.5rem;padding:1.25rem;background:#e8efed;min-height:210px;border-top:2px solid var(--teal)}
.solution-flow figcaption{font-size:.75rem;color:#395664;margin-bottom:1.2rem}
.solution-flow ol{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}
.solution-flow li{display:flex;gap:1rem;align-items:center;font-size:1rem;line-height:1.5}
.solution-flow li+li::before{content:'↓';color:var(--teal);font-size:.85rem}
.flow-step{color:var(--teal);font-size:.72rem}
.solution-flow li+li .flow-step{display:none}
.experience-list .eyebrow{margin-bottom:.7rem}
.partnership-grid{grid-template-columns:1fr 1.1fr;gap:3rem}
.partnership-grid>div:first-child{grid-column:1}
.partnership-grid>div:nth-child(2){grid-column:1}
.partner-flow{grid-column:2;grid-row:1/3;margin:0;border:1px solid #3f6574;padding:2rem;background:#142e3e;align-self:center}
.partner-flow figcaption{color:#bed3dc;font-size:.78rem;line-height:1.7;margin-bottom:1.5rem}
.partner-flow ol{list-style:none;margin:0;padding:0}
.partner-flow li{display:flex;gap:1rem;align-items:center;padding:.85rem 0;border-bottom:1px solid #365361;font-size:1.05rem;color:#f0f6f7}
.partner-flow .flow-step{color:#8bd5d8}
.premium-site .partnership-feature .partner-marks{justify-content:space-between;padding:1.5rem 0;border-block:1px solid #365361;gap:1rem}
.premium-site .partnership-feature .fluyenta-logo{width:200px;height:60px;object-fit:contain}
.premium-site .partnership-feature .partner-mark--axton img{width:64px;height:64px}
.partnership-grid .partner-caption{font-size:.86rem!important}
.approach-list{gap:1.6rem}
.approach-list li{position:relative;padding:1.5rem 1rem 0 0;border-top:2px solid #a9b9bd;transition:border-color 200ms}
.approach-list li:not(:last-child)::after{content:'→';position:absolute;right:-.8rem;top:-1.1rem;background:#edf1ee;padding:.2rem .5rem;color:var(--teal)}
.approach-list li>span{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid #98b9bb;border-radius:50%;background:#fff;font-size:.78rem}
.approach-list li:hover{border-color:var(--teal)}
.approach-list h3{font-size:1.32rem;margin-top:1.15rem}
.leadership-feature{grid-template-columns:1fr 1.08fr;gap:3rem;align-items:center}
.portrait-pair{gap:1.25rem;align-items:start;width:100%;max-width:none}
.portrait-pair figure{margin:0;min-width:0}
.portrait-frame{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/5;background:#e0e6e6;border:1px solid #c0cdcf;overflow:hidden}
.portrait-pair .portrait-frame img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:none;border:0;margin:0}
.portrait-pair figcaption{margin-top:1rem;font-size:1rem;line-height:1.5}
.portrait-pair figcaption a{color:var(--ink);font-weight:600;text-decoration:none}
.portrait-pair figcaption span{display:block;font-size:.78rem;color:var(--muted);margin-top:.4rem;line-height:1.7}
.premium-site .leader-preview img,.premium-site .profile-portrait{aspect-ratio:4/5;height:auto;object-fit:contain;object-position:center;background:#e0e6e6;border:1px solid #c0cdcf}
/* Editorial thumbnails use explanatory concepts, never fabricated news photography. */
.home-insights{border-top:1px solid var(--rule);background:#eef2ef}
.home-editorial-grid{grid-template-columns:1.35fr 1fr;gap:1.5rem 3rem}
.home-editorial-grid article{border:0;padding:0;min-width:0;position:relative}
.home-editorial-grid article:first-child{grid-row:1/3;border-right:1px solid #c4d2d3;padding-right:3rem}
.home-editorial-grid article:not(:first-child){display:grid;grid-template-columns:125px minmax(0,1fr);column-gap:1.25rem}
.home-editorial-grid article:not(:first-child)>:not(figure){grid-column:2}
.home-editorial-grid article:not(:first-child) .insight-visual{grid-column:1;grid-row:1/6;align-self:start}
.home-editorial-grid h3{font-size:1.35rem;line-height:1.4;margin:.5rem 0 .85rem}
.home-editorial-grid article:first-child h3{font-size:1.85rem}
.insight-visual,.library-visual{background:#102d3b;color:#e3eeef;border-top:2px solid #8ac4c5;padding:1.4rem;margin:0 0 1.2rem;overflow:hidden}
.insight-visual figcaption,.library-visual figcaption{font-size:.74rem;color:#bcd3dc;letter-spacing:.08em;margin-bottom:1.8rem;line-height:1.7}
.insight-visual ol,.library-visual ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;list-style:none;padding:0;margin:0}
.insight-visual li,.library-visual li{border:1px solid #476976;padding:.65rem;font-size:.9rem;line-height:1.5}
.insight-visual .flow-step,.library-visual .flow-step{display:none}
.home-editorial-grid article:first-child .insight-visual{min-height:230px;padding:2rem}
.home-editorial-grid article:not(:first-child) .insight-visual{padding:1rem .8rem;min-height:160px}
.home-editorial-grid article:not(:first-child) .insight-visual ol{grid-template-columns:1fr}
.home-editorial-grid article:not(:first-child) .insight-visual figcaption{margin-bottom:1rem;font-size:.68rem}
.home-editorial-grid article:not(:first-child) .insight-visual li{font-size:.8rem;padding:.4rem}
.home-editorial-grid .insight-excerpt{font-size:.93rem;line-height:1.8;margin-bottom:.5rem}
.home-editorial-grid .insight-date{font-size:.78rem;color:var(--muted);margin:0}
.library-visual{min-height:150px;margin:0 0 1.2rem;padding:1.2rem}
.library-visual ol{grid-template-columns:repeat(3,minmax(0,1fr))}
.library-visual figcaption{margin-bottom:1.1rem;font-size:.68rem}
.premium-site .insights-card{transition:border-color 220ms,transform 220ms;position:relative}
.premium-site .insights-card:is(:hover,:focus-within){border-color:var(--teal);transform:translateY(-2px)}
/* Inquiry surfaces and map are integrated, rather than separated by another CTA strip. */
.home-inquiry{background:#dfeae7;border-top:1px solid #bfd0cc}
.home-inquiry-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem;align-items:start}
.inquiry-intro h2{font-size:clamp(2rem,3.4vw,3.1rem);line-height:1.2;max-width:20ch;margin:.75rem 0 1.5rem}
.inquiry-intro>p{font-size:1.1rem;max-width:42ch}
.inquiry-intro dl{margin:2.5rem 0 0;border-top:1px solid #a7bfbb;padding-top:1.5rem}
.inquiry-intro dt{font-size:.75rem;color:var(--muted);margin-top:1rem}
.inquiry-intro dd{margin:0;font-size:.95rem;overflow-wrap:anywhere}
.contact-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:4rem}
.contact-form{max-width:none;padding:2.2rem;border:1px solid #c1d1d1;border-top:3px solid var(--teal);background:#fff;box-shadow:0 12px 30px #10253508;position:relative}
.contact-form h2{font-size:1.75rem;font-weight:550!important}
.premium-site .contact-form :is(input:not([type='checkbox']):not([type='hidden']),select,textarea){width:100%;background:#f8faf8;border-color:#70858a;border-radius:3px;transition:border-color 180ms,background 180ms,box-shadow 180ms}
.premium-site .contact-form :is(input,select,textarea):focus{background:#fff;border-color:var(--teal);box-shadow:0 0 0 3px #0876801a;outline:2px solid var(--teal);outline-offset:2px}
.contact-form :is(input,textarea,select):user-invalid{border-color:#a03636!important;background:#fff8f6!important}
.form-field{margin-bottom:1.25rem}
.form-field label{font-size:.9rem;font-weight:550;display:block;margin-bottom:.45rem}
.form-field small{font-size:.8rem;line-height:1.7;display:block;margin-top:.6rem}
.form-help{font-size:.85rem}
.verification-area{background:#edf4f1;border:1px solid #c1d1d1;padding:1rem;margin-block:.5rem 1.5rem}
.form-consent{line-height:1.8;margin-bottom:1.6rem;font-size:.87rem}
.contact-feedback{border-left:3px solid #a03636;background:#fff6f3;padding:1rem;font-size:.95rem}
.contact-feedback[data-state='success']{background:#eaf5ed;border-color:#376b58;color:#224b38}
.contact-form button[disabled]{cursor:progress}
.contact-details{padding-top:.35rem;min-width:0}
.contact-details h2{font-size:1.55rem;line-height:1.4}
.contact-corporate{font-size:1.1rem!important;font-weight:550;margin-top:.8rem}
.contact-details dl{margin-top:1.5rem}
.contact-route{padding:1.5rem;background:#e8efed;border-top:1px solid #a9b9bd;margin-top:1.8rem}
.contact-route h3{margin:0 0 .7rem;font-size:1.15rem}
.contact-route p{font-size:.95rem}
.contact-map{margin-top:2rem;border-top:1px solid var(--rule);padding-top:1.5rem}
.contact-map h3{font-size:1.15rem}
.contact-map .map-frame{height:260px;margin-top:1rem;border:1px solid #bbcdd0!important}
.contact-map .text-link{font-size:.85rem;margin-top:.65rem}
/* Inner pages carry the same image, type and framing language. */
.inner-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}
.inner-hero-grid>*{min-width:0}
.inner-hero-visual{margin:0;width:100%;min-width:0}
.inner-hero-visual img{width:100%;aspect-ratio:1.35;object-fit:cover;object-position:right center;display:block}
.inner-hero-visual figcaption{font-size:.75rem;line-height:1.8;color:var(--muted);margin-top:.85rem}
.premium-site .recovery-service-hero h1{font-size:clamp(2.2rem,3.8vw,3.6rem);line-height:1.13}
.premium-site .recovery-service-hero .enterprise-diagram{margin-bottom:2rem}
.premium-site .recovery-service-hero .enterprise-hero-grid{grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}
.site-footer__grid>div:first-child{border-right:1px solid #324c5a;padding-right:2rem}
.premium-site .site-footer{background:#0b1c2b}
.premium-site .site-footer__grid{padding-top:4.5rem;gap:2.5rem}
.premium-site .site-footer h2{font-size:.8rem;letter-spacing:.1em;color:#8bd5d8}
.premium-site .site-footer ul a{display:inline-block;padding:.2rem 0;text-decoration:underline;text-decoration-color:transparent;transition:color 200ms,text-decoration-color 200ms}
.premium-site .site-footer a:is(:hover,:focus-visible){text-decoration-color:currentColor}
.premium-site .site-footer .footer-subservice{border-left:1px solid #486270;padding-left:.8rem;margin:0 0 .8rem;font-size:.78rem}
.premium-site .site-footer .footer-subservice a{font-size:.78rem;color:#a8c4cd}
.premium-site .site-footer__legal{background:#081723}
@media(min-width:1200px){.premium-site .site-nav{display:flex}}
@media(max-width:1199px){.home-hero-grid{gap:2rem;grid-template-columns:1fr 1fr}.premium-home-hero h1{font-size:clamp(2.6rem,4.5vw,3.6rem)}.hero-visual img{aspect-ratio:.9}.home-inquiry-grid{gap:2.5rem}.partnership-grid{gap:2rem}.portrait-pair .portrait-frame img{height:100%}.premium-site .site-footer__grid{gap:2.5rem}}
@media(max-width:1024px){.contact-layout{grid-template-columns:1fr;gap:3rem}.contact-form{width:100%}.contact-details{display:grid;grid-template-columns:1fr 1fr;column-gap:2.5rem}.contact-details>h2,.contact-corporate{grid-column:1/-1}.contact-details dl{grid-column:1;grid-row:3/5}.contact-route{grid-column:2;grid-row:3;margin-top:1.5rem}.contact-map{grid-column:2;grid-row:4}.inner-hero-grid,.premium-site .recovery-service-hero .enterprise-hero-grid{gap:2rem}}
@media(max-width:900px){.home-hero-grid{grid-template-columns:1fr}.premium-home-hero h1{max-width:20ch;font-size:clamp(2.8rem,6vw,4rem)}.hero-visual img{aspect-ratio:1.8;object-position:center}.hero-visual{margin-top:1rem}.expertise-list{gap:2rem}.expertise-row h3{font-size:1.5rem}.partnership-grid{grid-template-columns:1fr}.partner-flow{grid-column:1;grid-row:auto}.leadership-feature{grid-template-columns:1fr}.portrait-pair{max-width:620px}.home-inquiry-grid{grid-template-columns:1fr}.home-editorial-grid{grid-template-columns:1fr}.home-editorial-grid article:first-child{grid-row:auto;border-right:0;border-bottom:1px solid #bdcbce;padding:0 0 1.5rem}.home-editorial-grid article:not(:first-child){grid-template-columns:180px minmax(0,1fr)}.inner-hero-grid,.premium-site .recovery-service-hero .enterprise-hero-grid{grid-template-columns:1fr}.inner-hero-visual img{aspect-ratio:2}.approach-list li:nth-child(2)::after{display:none}}
@media(max-width:640px){.premium-home-hero{padding:2.75rem 0 2rem}.premium-home-hero h1{font-size:clamp(2.25rem,10vw,2.9rem);max-width:17ch;line-height:1.09}.premium-home-hero .hero-lead{font-size:1rem}.home-hero-grid{gap:1.5rem}.hero-visual{margin:0}.hero-visual img{aspect-ratio:1.55}.hero-visual::before{right:-6px;top:-6px;width:30px;height:30px}.hero-visual figcaption{font-size:.72rem}.expertise-list{grid-template-columns:1fr;gap:2rem}.expertise-row{grid-template-columns:2rem 1fr;gap:.8rem 1rem}.expertise-visual img{aspect-ratio:2}.expertise-visual figcaption{font-size:.68rem}.expertise-row h3{font-size:1.5rem}.creative-line{gap:1rem}.creative-line img{width:85px;height:66px}.creative-line>span{flex:1}.creative-line a{width:100%;margin-left:0}.challenge-section article{padding-left:1.2rem}.challenge-section h3{min-height:0}.partnership-grid{gap:1.5rem}.premium-site .partnership-feature .partner-marks{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:1rem}.premium-site .partnership-feature .partner-mark--axton span{font-size:.82rem;max-width:7rem}.premium-site .partnership-feature .fluyenta-logo{width:165px;height:45px}.partner-flow{padding:1.25rem}.partner-flow li{font-size:.95rem}.approach-list li{padding-left:3.5rem;display:block;border-top:0;border-left:1px solid #9bb4b8;padding-top:0;min-height:130px;margin-left:1.2rem}.approach-list li>span{position:absolute;left:-20px;top:0}.approach-list li::after{display:none}.approach-list h3{margin:0 0 .65rem}.portrait-pair{gap:.85rem}.portrait-pair figcaption{font-size:.9rem}.portrait-pair figcaption span{font-size:.72rem}.home-editorial-grid article:not(:first-child){display:block}.home-editorial-grid article:not(:first-child) .insight-visual{min-height:150px}.home-editorial-grid article:not(:first-child) .insight-visual ol{grid-template-columns:repeat(3,minmax(0,1fr))}.home-editorial-grid article:first-child .insight-visual{min-height:180px;padding:1.5rem}.home-editorial-grid article:first-child h3{font-size:1.6rem}.inquiry-intro h2{font-size:2rem;max-width:22ch}.contact-form{padding:1.3rem}.contact-form h2{font-size:1.5rem}.contact-details{display:block}.contact-map .map-frame{height:250px}.inner-hero-visual img{aspect-ratio:1.6}.premium-site .recovery-service-hero h1{font-size:2.15rem}.site-footer__grid>div:first-child{border-right:0;border-bottom:1px solid #324c5a;padding:0 0 1.5rem}.premium-site .site-footer__grid{padding-top:3.5rem;gap:2rem}.library-visual li{font-size:.8rem;padding:.5rem}.library-visual{padding:1rem}.premium-site .services-panel-bottom a{min-height:44px}}
html[lang='ja'] .premium-home-hero h1{font-weight:500!important;font-size:clamp(2.2rem,3.4vw,3.25rem);line-height:1.55;max-width:none}
html[lang='ja'] .inquiry-intro h2{line-height:1.55;font-size:clamp(1.8rem,2.7vw,2.6rem)}
html[lang='ja'] .home-editorial-grid h3{line-height:1.7}
@media(max-width:640px){html[lang='ja'] .premium-home-hero h1{font-size:clamp(1.6rem,7vw,2rem);line-height:1.6}html[lang='ja'] .premium-home-hero .hero-phrase{display:inline-block}html[lang='ja'] .inquiry-intro h2{font-size:1.8rem}html[lang='ja'] .premium-site .recovery-service-hero h1{font-size:1.9rem;line-height:1.55}}
@media(prefers-reduced-motion:reduce){.premium-site *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.premium-site :is(.btn-primary,.btn-ghost,.insights-card):hover{transform:none}.expertise-row:hover .expertise-visual img{transform:none}}
.premium-site :is(.hero-visual,.expertise-visual,.insight-visual,.library-visual,.partner-flow) figcaption{color:#c7dce4!important}
.premium-site .solution-flow figcaption{color:#395664!important}
.premium-site .portrait-pair .portrait-frame img{object-fit:cover;object-position:center top}
.premium-home-hero h1{max-width:19ch}
.contact-details dl{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}
.contact-details dl>div{padding:.7rem 0!important;min-width:0}
.contact-details dl>div:nth-child(3),.contact-details dl>div:nth-child(4){grid-column:1/-1}
.contact-details dl a{overflow-wrap:anywhere}
.contact-details .contact-route{margin-top:1.3rem;padding:1.25rem}
.contact-details .contact-map{margin-top:1.5rem}
.overview-visual{grid-column:2;margin:2rem 0 0;max-width:55rem}
.overview-visual img{width:100%;aspect-ratio:2.5;object-fit:cover;display:block}
.overview-visual figcaption{font-size:.75rem;color:var(--muted)!important;margin-top:.75rem}
@media(max-width:640px){.overview-visual{grid-column:1}.overview-visual img{aspect-ratio:1.7}.contact-details dl{display:block}}
.premium-site .inquiry-intro :is(.eyebrow,a:not(.btn-ghost)){color:#065d65}
.premium-site main details>summary{transition:background-color 200ms,color 200ms}
.premium-site main details>summary:is(:hover,:focus-visible){background:#e3eeea;color:#065d65}
.premium-site .menu-toggle{transition:background-color 200ms,border-color 200ms}
.premium-site .menu-toggle:is(:hover,:focus-visible){background:#eaf1ee;border-color:var(--teal)}
.premium-site .hover-lift{transition:transform 220ms var(--motion),border-color 220ms,background-color 220ms}
.premium-site .hover-lift:is(:hover,:focus-within){transform:translateY(-2px);border-color:var(--teal)}
@media(prefers-reduced-motion:reduce){.premium-site .hover-lift:hover{transform:none}}
.premium-site :is(.hero-visual,.expertise-visual,.inner-hero-visual,.overview-visual,.insight-visual,.library-visual,.solution-flow,.partner-flow) figcaption{font-size:.75rem!important}
.home-inquiry-grid>*{min-width:0}
@media(max-width:900px){.home-inquiry-grid{grid-template-columns:minmax(0,1fr)}}
.premium-site .leader-preview img,.premium-site .profile-portrait{object-fit:cover;object-position:center top}
html[lang='ja'] .premium-home-hero h1{font-size:clamp(2rem,3vw,2.75rem)}
html[lang='ja'] .premium-home-hero .hero-phrase{white-space:nowrap}
@media(max-width:640px){html[lang='ja'] .premium-home-hero h1{font-size:clamp(1.6rem,7vw,2rem)}}
.premium-site .profile-photo{width:min(100%,420px);height:auto;aspect-ratio:4/5;max-height:none;object-fit:cover;object-position:center top;border:1px solid #c0cdcf;border-radius:0}
@media(min-width:901px) and (max-width:1199px){.hero-visual img{aspect-ratio:1.22}}

/* Source: assets/css/artdirection.css */
/* Art-direction refinement. Existing content, component contracts and routes remain. */
:root{--editorial-rule:#b9c9c9;--editorial-blue:#163c4b;--editorial-soft:#e7eeeb}
.premium-site .site-nav{gap:1.2rem}
.premium-site .site-nav a,.premium-site .services-menu summary{white-space:nowrap}
.premium-site .site-header__inner{max-width:88rem;padding-inline:2rem}
.premium-site .site-nav a{position:relative}
.premium-site .site-nav>a::before{content:'';position:absolute;bottom:5px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 200ms}
.premium-site .site-nav>a:is(:hover,:focus-visible)::before{transform:scaleX(1)}
.services-menu--desktop .services-panel{left:-3rem;border-top-width:2px;box-shadow:0 22px 40px #10253518}
/* A real structure, presented in its own landscape proportions. No image overlay. */
.premium-home-hero{background:#112b3b;padding:3.4rem 0 3.6rem}
.home-hero-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:3.75rem;align-items:center}
.premium-home-hero h1{font-size:clamp(2.75rem,3.65vw,3.65rem);line-height:1.12;letter-spacing:-.04em;max-width:19ch;margin:1rem 0 1.3rem}
.premium-home-hero .hero-lead{font-size:1rem;line-height:1.8;max-width:47ch;color:#d6e0e3}
.premium-home-hero .eyebrow{color:#b8d7d9;font-size:.72rem;letter-spacing:.12em}
.premium-home-hero .enterprise-actions{margin-top:1.6rem;gap:.75rem}
.premium-home-hero :is(.btn-primary,.btn-ghost){font-size:.89rem;padding:.85rem 1.05rem}
.hero-visual::before{display:none}
.hero-visual{box-shadow:20px 20px 0 #24424f;margin:0 20px 20px 0}
.hero-visual img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border:0;display:block;transition:filter 240ms}
.hero-visual:hover img{filter:contrast(1.025)}
.credentials-strip{background:#e7eeeb}
.credentials-strip .premium-wrap{padding-block:1.2rem}
.premium-site .premium-section-heading h2{font-size:clamp(1.85rem,2.65vw,2.65rem);letter-spacing:-.035em;max-width:31ch}
.premium-site .premium-section{padding-block:4.5rem}
/* Image-led editorial expertise; photos retain their subjects and natural detail. */
.expertise-list{gap:3.25rem 3rem}
.expertise-row{grid-template-columns:2rem 1fr;gap:.8rem 1rem;background:transparent!important;padding-bottom:1.7rem;border-color:#a6bcbd}
.expertise-visual{background:transparent;margin:0 0 .4rem}
.expertise-visual img{aspect-ratio:auto;height:auto;width:100%;object-fit:contain;transform:none;transition:filter 240ms}
.expertise-visual img[src$='.svg']{aspect-ratio:3/2}
.expertise-row h3{font-size:1.65rem;line-height:1.35;max-width:27ch}
.expertise-row p{font-size:1rem;line-height:1.8}
.expertise-number{font-size:.82rem;letter-spacing:.04em}
.expertise-row:is(:hover,:focus-within) .expertise-visual img{filter:contrast(1.025)}
.expertise-row:is(:hover,:focus-within) h3 a{color:var(--teal)}
.premium-site .inner-hero-visual{background:transparent;box-shadow:12px 12px 0 #d8e3df;margin:0 12px 12px 0}
.premium-site .inner-hero-visual img{height:auto;aspect-ratio:auto;width:100%;object-fit:contain;border:0}
.premium-site .recovery-service-hero h1{font-size:clamp(2.1rem,3.2vw,3.15rem);max-width:22ch;line-height:1.2}
.recovery-service-hero{padding-block:3.5rem}
.premium-site .service-hero h1{font-size:clamp(2.1rem,3.2vw,3.15rem)}
.premium-site .overview-visual img,.service-overview-card img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
/* A directory of real business questions, distinct from the expertise gallery. */
.challenge-directory{background:#e8efec}
.challenge-directory .premium-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:4rem;align-items:start}
.challenge-directory .editorial-columns{display:block}
.challenge-directory article{display:grid;grid-template-columns:2.2rem 1fr;gap:.25rem 1rem;padding:1.3rem 0;border-left:0;border-top:1px solid #a9bfc0}
.challenge-directory article:last-child{border-bottom:1px solid #a9bfc0}
.challenge-directory .challenge-index{grid-column:1;grid-row:1/4;margin:0;padding-top:.2rem;font-size:.85rem}
.challenge-directory h3,.challenge-directory p,.challenge-directory .text-link{grid-column:2;min-height:0}
.challenge-directory h3{font-size:1.4rem;line-height:1.4;margin:0}
.challenge-directory p{font-size:.96rem;line-height:1.8;margin:.5rem 0}
.challenge-directory .text-link{font-size:.94rem}
.experience-list{display:grid;grid-template-columns:1.25fr .75fr;gap:0 3.5rem}
.experience-feature{grid-row:1/3;border-right:1px solid #c4d0ce;padding-right:3.5rem!important}
.experience-feature h3{font-size:1.95rem;line-height:1.3}
.experience-feature .solution-flow{background:#e3eeea;padding:2rem;border-top:0;min-height:0}
.experience-feature .solution-flow ol{flex-direction:row;gap:1rem;align-items:stretch}
.experience-feature .solution-flow li{flex:1;display:block;font-size:1.03rem;line-height:1.6;position:relative;padding-top:1.2rem;border-top:1px solid #7b9fa3}
.experience-feature .solution-flow li+li::before{position:absolute;left:-1.1rem;top:-.95rem;content:'→';background:#e3eeea;padding:.1rem}
.experience-feature .solution-flow .flow-step{display:block!important;margin-bottom:.6rem}
.experience-support{padding:0 0 1.75rem!important}
.experience-support+.experience-support{border-top:1px solid #c4d0ce;padding-top:1.75rem!important}
.experience-support h3{font-size:1.4rem}
.supporting-flow{margin:0 0 .8rem}
.supporting-flow figcaption{font-size:.8rem;color:#3d5963;margin-bottom:.4rem}
.supporting-flow ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:0;font-size:.82rem;color:#3d5963}
.supporting-flow .flow-step{display:none}
.supporting-flow li+li::before{content:'→';margin-right:.4rem}
.experience-list p{font-size:1rem;line-height:1.8}
/* Existing partnership information forms a connected architecture, not six numbered cards. */
.partner-architecture{background:transparent;border:0;padding:1.5rem 0 1.5rem 2.5rem;border-left:1px solid #52717c}
.partner-architecture ol{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem}
.partner-architecture li{border:1px solid #67848e;position:relative;padding:1rem;min-height:88px;font-size:.95rem;line-height:1.55;display:flex;justify-content:center;text-align:center;align-items:center;background:#193b4b}
.partner-architecture .flow-step{display:none}
.partner-architecture li[data-stage='2']{grid-column:1/-1;grid-row:2;min-height:66px;background:#286475;color:#fff;font-size:1.12rem}
.partner-architecture li[data-stage='1']{grid-column:1;grid-row:1}
.partner-architecture li[data-stage='4']{grid-column:2;grid-row:1}
.partner-architecture li[data-stage='3']{grid-column:1;grid-row:3}
.partner-architecture li[data-stage='5']{grid-column:2;grid-row:3}
.partner-architecture li[data-stage='6']{grid-column:1/-1;grid-row:4;min-height:60px;background:transparent}
.partner-architecture li::after{content:'';position:absolute;height:1rem;width:1px;background:#92bec4;left:50%;bottom:calc(-1rem - 1px)}
.partner-architecture li[data-stage='2']::after,.partner-architecture li[data-stage='6']::after{display:none}
.approach-list li>span{border-radius:0;border:0;background:transparent;color:#376574;font-size:1.05rem;justify-content:start;width:auto}
.approach-list li{border-top-width:1px}
/* Original portraits, with individualized focal positions and quiet captions. */
.portrait-frame{border:0;background:#e3e8e5;aspect-ratio:4/5}
.premium-site .portrait-pair .portrait-frame img{object-fit:cover;object-position:50% 0}
.portrait-pair figure:first-child .portrait-frame img{object-position:48% top}
.portrait-pair figcaption{border-top:1px solid #b8c8c9;padding-top:.8rem;margin-top:1.1rem}
.portrait-pair figcaption span{font-size:.8rem;line-height:1.7;display:block;margin-top:.4rem;color:#415764}
.leadership-feature{grid-template-columns:1.15fr .85fr;align-items:center;gap:4rem}
.leadership-feature>div:last-child{font-size:1.05rem;line-height:1.9}
.editorial-team main>section:first-child{text-align:left;padding-block:3.5rem 2.5rem}
.editorial-team main>section:first-child>div{max-width:76rem}
.premium-site.editorial-team h1{font-size:clamp(2.15rem,3.3vw,3.1rem);line-height:1.25;letter-spacing:-.035em}
.editorial-team .section-lead{margin-left:0;font-size:1rem}
.premium-site .team-editorial-grid{gap:3.5rem 2.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}
.premium-site .team-editorial-card{background:transparent;border:0;border-top:1px solid #9bb5b9;padding:1.5rem 0 0;text-align:left;border-radius:0}
.premium-site .team-editorial-card .team-photo{height:320px;object-fit:contain;background:#e5e9e7;object-position:center top}
.premium-site .team-editorial-card h2{font-size:1.45rem}
.premium-site .team-editorial-card p{margin-inline:0!important;max-width:100%;line-height:1.8}
.premium-site .team-editorial-card a.absolute{border-radius:0}
/* Magazine hierarchy: one purposeful illustration; supporting articles are text-led. */
.editorial-meta{display:flex;gap:.35rem 1rem;align-items:baseline;flex-wrap:wrap;margin:0 0 .9rem;min-width:0}
.premium-site .editorial-meta .eyebrow{font-size:.72rem;letter-spacing:.08em;margin:0;line-height:1.8}
.premium-site .editorial-meta :is(.article-byline,.insight-date){font-size:.8rem;margin:0;padding:0;border:0;color:#425866;line-height:1.8}
.home-editorial-grid{grid-template-columns:1.15fr .85fr;gap:0 3rem}
.home-editorial-grid article{transition:color 200ms}
.home-editorial-grid article:first-child{border-right:1px solid #bdcdcd;padding:0 3rem 0 0;grid-row:1/3}
.home-editorial-grid article:not(:first-child){display:flex;flex-direction:column;gap:0;padding:0 0 1.5rem;border-bottom:1px solid #bdcdcd}
.home-editorial-grid article:last-child{padding:1.5rem 0 0;border-bottom:0}
.home-insight-cover{margin:0 0 1.5rem;overflow:hidden}
.home-insight-cover img{width:100%;height:auto;aspect-ratio:3/2}
.home-editorial-grid article:first-child h3{font-size:1.85rem;line-height:1.35;max-width:30ch}
.home-editorial-grid article:not(:first-child) h3{font-size:1.38rem;line-height:1.4;margin:.25rem 0 .9rem;max-width:38ch}
.home-editorial-grid .insight-excerpt{font-size:.96rem;line-height:1.85}
.premium-site [data-editorial-card] :is(h2,h3) a{transition:color 200ms;text-decoration:none}
.premium-site [data-editorial-card]:is(:hover,:focus-within) :is(h2,h3){color:var(--teal)}
.premium-site [data-editorial-card]:is(:hover,:focus-within) :is(h2,h3) a{color:var(--teal)}
/* The library masthead and featured perspective read as a publication, not a landing page. */
.editorial-library .premium-page-hero{background:var(--paper);padding-block:2.6rem 2rem;border-bottom:0}
.editorial-library .premium-page-hero>.premium-wrap{display:grid;grid-template-columns:1fr .85fr;gap:0 3rem;align-items:end}
.editorial-library .premium-page-hero .eyebrow{grid-column:1/-1;margin-bottom:.75rem}
.editorial-library .premium-page-hero h1{font-size:clamp(2rem,3vw,2.75rem);line-height:1.2;max-width:26ch;margin:0}
.editorial-library .premium-page-hero .hero-lead{font-size:.98rem;line-height:1.85;margin:0;max-width:58ch}
.editorial-library main>section:nth-child(2){padding-block:1.5rem 3.5rem}
.insights-feature{grid-template-columns:1.05fr 1fr;gap:0 3rem;padding:0;border:0;background:#e8efec;align-items:start}
.editorial-cover{grid-column:1;grid-row:1/3;margin:0;align-self:stretch;background:#e5eeeb;min-width:0;display:flex;align-items:center;overflow:hidden}
.editorial-cover img{display:block;width:100%;height:auto;aspect-ratio:3/2;transition:transform 240ms}
.insights-feature .feature-title{grid-column:2;padding:2rem 2rem 0 0}
.insights-feature>div:last-child{grid-column:2;padding:0 2rem 1.5rem 0}
.insights-feature h2{font-size:clamp(1.6rem,2.1vw,2.1rem);line-height:1.3;max-width:30ch;margin:1rem 0}
.insights-feature p{font-size:.96rem;line-height:1.85}
.insights-feature .article-byline{margin:0;font-size:.82rem}
.insights-feature .eyebrow{font-size:.72rem;letter-spacing:.09em;margin:0}
.insights-feature:is(:hover,:focus-within) .editorial-cover img{transform:scale(1.012)}
.editorial-library main>section:nth-child(3){background:var(--paper);padding-top:0}
.premium-site .insights-filters{gap:.5rem 1.5rem;border-block:1px solid #afc2c3;padding:.5rem 0}
.premium-site .insights-filters button{background:transparent;border:0;border-radius:0;font-size:.9rem;line-height:1.5;min-height:44px;padding:.5rem 0;color:#3f5661;position:relative}
.premium-site .insights-filters button[aria-pressed='true']{color:#075e68;background:transparent;font-weight:600;box-shadow:inset 0 -2px #087680}
.premium-site .insights-filters button:hover{color:#075e68;background:transparent}
.library-count{font-size:.8rem;color:#3f5661;margin:1rem 0 1.5rem}
.insights-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 3rem}
.library-article{position:relative;padding:1.4rem 0 0 2.6rem;border-top:1px solid #afc2c3;transition:border-color 200ms}
.library-article[hidden]{display:none!important}
.editorial-index{position:absolute;top:1.45rem;left:0;font-size:.83rem;letter-spacing:.04em;color:#3d6570}
.library-article h2{font-size:1.45rem;line-height:1.4;max-width:38ch;margin:0 0 .9rem}
.library-article>p{font-size:.95rem;line-height:1.85;margin:0 0 .8rem}
.library-article .text-link{font-size:.92rem}
.library-article:is(:hover,:focus-within){border-top-color:var(--teal)}
/* Article content remains intact. Only reading measures, hierarchy and surfaces change. */
.premium-article .enterprise-article-head{max-width:67rem;padding-bottom:2rem;border-bottom:1px solid #b8c8ca}
.premium-article .enterprise-article-head h1{font-size:clamp(2.15rem,3.2vw,3rem);line-height:1.18;max-width:30ch;letter-spacing:-.035em;text-wrap:pretty}
.premium-article .enterprise-article-head .section-lead{max-width:72ch;font-size:1.06rem;line-height:1.9;margin-top:1.5rem}
.premium-article .enterprise-article-head .eyebrow{font-size:.75rem;letter-spacing:.09em}
.premium-article .article-byline{font-size:.84rem;letter-spacing:.02em;margin-top:1.4rem;color:#435966}
.premium-article .enterprise-section:first-child{padding-top:2.75rem;padding-bottom:1rem}
.premium-article .article-layout{grid-template-columns:minmax(0,46rem) minmax(0,17rem);gap:4rem}
.premium-site .enterprise-prose{font-size:1.06rem;line-height:1.95;max-width:46rem}
.premium-site .enterprise-prose p{max-width:72ch;line-height:1.95;margin-bottom:1.35rem}
.premium-site .enterprise-prose h2{font-size:clamp(1.55rem,2.05vw,2rem);line-height:1.35;letter-spacing:-.025em;margin-top:3rem;margin-bottom:1.1rem}
.premium-site .enterprise-prose h3{font-size:1.25rem;line-height:1.5;letter-spacing:-.01em;margin-block:1.8rem .8rem}
.premium-site .article-toc{position:sticky;top:110px;max-height:calc(100vh - 140px);overflow:auto;padding-left:1.5rem;border-left:1px solid #b8c8ca;align-self:start;scrollbar-width:thin}
.premium-site .article-toc a{font-size:.86rem;line-height:1.6;padding:.3rem 0;transition:color 200ms}
.premium-site .article-toc a:hover{color:#075e68}
.premium-site .enterprise-prose :is(table,.article-table){font-size:.94rem;line-height:1.8}
.premium-site .enterprise-prose th{background:#e5eeeb!important;color:#173b49!important;font-weight:600;padding:1rem}
.premium-site .enterprise-prose td{padding:1rem;border-color:#bccdcc!important}
.premium-site .enterprise-prose tbody tr:nth-child(even){background:#f0f4ef}
.premium-site .enterprise-prose :is(.editorial-note,.source-notes){border-left:0;border-top:1px solid #c2cfca;background:transparent;font-size:.91rem;color:#415761;padding:1.25rem 0;line-height:1.85}
.premium-site main :is(.legacy-chips,.portal-chips,.architecture-chips){display:flex;flex-wrap:wrap;list-style:none;padding:0;gap:.5rem 1rem;border:0;background:transparent}
.premium-site main :is(.legacy-chips,.portal-chips,.architecture-chips) li{background:transparent!important;border:0!important;border-radius:0;padding:0!important;font-size:.88rem;line-height:1.8;color:#345967!important;box-shadow:none}
.premium-site main :is(.legacy-chips,.portal-chips,.architecture-chips) li+li::before{content:'·';margin-right:.8rem;color:#3f6670}
.editorial-caption-only{background:#e9f0eb;border:0!important;border-left:2px solid #8aada9!important;padding:1.2rem 1.5rem;margin-block:1.5rem}
.premium-site .editorial-caption-only figcaption{padding:0;margin:0;color:#365663!important;font-size:1rem!important;text-align:left;line-height:1.8}
.premium-site .hero-bg:not(:has(img)){background:#e8efec!important}
html{scroll-padding-top:100px}
.premium-site [id]{scroll-margin-top:12px}
.premium-article .hero-meta{gap:.6rem 1rem;justify-content:flex-start}
.premium-article .hero-meta span{border:0;background:none;border-radius:0;padding:0;font-size:.85rem;line-height:1.8}
.premium-article .hero-meta span+span::before{content:'·';margin-right:.75rem}
.premium-site :is(.home-inquiry,.contact-layout) input:focus,.premium-site :is(.home-inquiry,.contact-layout) textarea:focus{box-shadow:0 0 0 3px #b9dedb}
.photo-credits{position:relative;color:#c5d4d7;font-size:.8rem}
.photo-credits summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:.5rem;list-style:none}
.photo-credits summary::after{content:'+'}
.photo-credits[open] summary::after{content:'−'}
.photo-credits>div{position:absolute;right:0;bottom:100%;background:#173445;border:1px solid #446776;padding:1rem 1.25rem;width:330px;max-width:calc(100vw - 2.5rem);z-index:2;box-shadow:0 10px 25px #0002}
.premium-site .photo-credits a{display:block;font-size:.8rem;line-height:1.8;min-height:44px;color:#d8e8e8}
.premium-site .photo-credits p{font-size:.8rem;color:#d8e8e8;margin:0 0 .4rem}
.premium-site .site-footer__legal-inner{flex-wrap:wrap;gap:1rem 2rem;align-items:center}
html[lang='ja'] .premium-home-hero h1{font-size:clamp(2rem,2.8vw,2.5rem);line-height:1.6;letter-spacing:0;max-width:none}
html[lang='ja'] .premium-site :is(.enterprise-article-head h1,.premium-section-heading h2){letter-spacing:0;line-height:1.55}
html[lang='ja'] .premium-article .enterprise-article-head h1{font-size:clamp(1.9rem,2.6vw,2.6rem);max-width:32ch}
html[lang='ja'] .premium-site .enterprise-prose{font-size:1rem;line-height:2}
html[lang='ja'] .premium-site .enterprise-prose h2{line-height:1.6}
html[lang='ja'] .editorial-library .premium-page-hero h1{font-size:clamp(1.9rem,2.8vw,2.4rem);line-height:1.6}
html[lang='ja'] .library-article h2,html[lang='ja'] .home-editorial-grid h3{line-height:1.7;letter-spacing:0}
@media(max-width:1279px){
 .premium-site .site-nav,.premium-site .header-cta{display:none}
 .premium-site .menu-toggle{display:inline-flex}
 .premium-site .article-layout{grid-template-columns:1fr;gap:2rem}
 .premium-site .article-toc{position:static;grid-row:1;max-height:none;overflow:visible;border-left:0;border-block:1px solid #b8c8ca;padding:1.25rem 0}
 .premium-site .article-toc ol{columns:2;display:block;gap:1.5rem}
 .premium-site .article-toc li{break-inside:avoid;margin-bottom:.5rem}
 .home-hero-grid{gap:2.5rem;grid-template-columns:1fr 1.1fr}
 .premium-home-hero h1{font-size:clamp(2.7rem,4.4vw,3.4rem)}
 .hero-visual{box-shadow:12px 12px 0 #24424f;margin-right:12px}
 .challenge-directory .premium-wrap{gap:2.5rem}
 .premium-site .team-editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1280px){.premium-site .site-nav{display:flex}.premium-site .header-cta{display:block}.premium-site .menu-toggle{display:none}}
@media(max-width:900px){
 .home-hero-grid{grid-template-columns:1fr;gap:2rem}
 .premium-home-hero{padding-block:2.75rem 2.5rem}
 .premium-home-hero h1{max-width:23ch;font-size:clamp(2.6rem,5vw,3.4rem)}
 .premium-home-hero .hero-lead{max-width:70ch}
 .hero-visual{max-width:700px;margin-bottom:12px}
 .hero-visual img{aspect-ratio:3/2}
 .challenge-directory .premium-wrap{grid-template-columns:1fr;gap:1.5rem}
 .experience-list{grid-template-columns:1fr;gap:1.8rem}
 .experience-feature{grid-row:auto;border-right:0;padding-right:0!important}
 .experience-support{border-top:1px solid #bdcdcd;padding-top:1.5rem!important}
 .partner-architecture{border-left:0;border-top:1px solid #52717c;padding:1.5rem 0 0}
 .leadership-feature{grid-template-columns:1fr;gap:2.5rem}
 .home-editorial-grid{grid-template-columns:1fr;gap:1.8rem}
 .home-editorial-grid article:first-child{grid-row:auto;border-right:0;border-bottom:1px solid #bdcdcd;padding:0 0 1.8rem}
 .home-editorial-grid article:last-child{padding:0}
 .home-insight-cover{max-width:580px}
 .insights-feature{grid-template-columns:1fr 1fr;gap:0 1.5rem}
 .insights-feature .feature-title{padding:1.5rem 1.5rem 0 0}
 .insights-feature>div:last-child{padding:0 1.5rem 1rem 0}
 .editorial-library .premium-page-hero>.premium-wrap{grid-template-columns:1fr;gap:1.25rem}
 .premium-site .inner-hero-visual{max-width:700px}
}
@media(max-width:640px){
 .premium-site .site-header__inner{padding-inline:1.25rem}
 .premium-home-hero{padding-block:2.2rem 2rem}
 .premium-home-hero h1{font-size:clamp(2.35rem,8.7vw,2.8rem);max-width:20ch;line-height:1.14}
 .premium-home-hero .hero-lead{font-size:.96rem;line-height:1.8}
 .premium-home-hero .enterprise-actions{gap:.6rem;margin-top:1.25rem}
 .premium-home-hero :is(.btn-primary,.btn-ghost){font-size:.84rem;padding:.8rem .85rem}
 .hero-visual{box-shadow:8px 8px 0 #24424f;margin-right:8px;margin-bottom:8px}
 .premium-site .premium-section{padding-block:3.2rem}
 .premium-site .premium-section-heading h2{font-size:1.85rem;line-height:1.3}
 .expertise-list{grid-template-columns:1fr;gap:2.4rem}
 .expertise-row{grid-template-columns:1.5rem 1fr;gap:.75rem 1rem}
 .expertise-row h3{font-size:1.5rem}
 .experience-feature h3{font-size:1.65rem}
 .experience-feature .solution-flow{padding:1.4rem}
 .experience-feature .solution-flow ol{flex-direction:column;gap:1.1rem}
 .experience-feature .solution-flow li{padding-top:.75rem;font-size:1rem;min-height:60px}
 .experience-feature .solution-flow li+li::before{content:'↓';left:auto;right:0;top:-.65rem}
 .experience-feature .solution-flow .flow-step{display:inline!important;margin-right:1rem}
 .supporting-flow ol{display:block;font-size:.86rem}
 .supporting-flow li+li{margin-top:.25rem}
 .supporting-flow li+li::before{content:'↓'}
 .partner-architecture ol{gap:1rem .6rem}
 .partner-architecture li{font-size:.9rem;padding:.8rem;min-height:100px}
 .partner-architecture li[data-stage='2']{font-size:1rem}
 .portrait-pair{gap:1rem;max-width:none}
 .portrait-pair figcaption{font-size:.95rem}
 .portrait-pair figcaption span{font-size:.78rem}
 .premium-site .team-editorial-grid{grid-template-columns:1fr;gap:2.5rem}
 .premium-site .team-editorial-card .team-photo{height:350px;max-width:330px;margin-left:0}
 .home-editorial-grid article:first-child h3{font-size:1.6rem}
 .home-editorial-grid article:not(:first-child) h3{font-size:1.35rem}
 .home-insight-cover{max-width:none}
 .editorial-library .premium-page-hero{padding-block:2.3rem 1.5rem}
 .editorial-library .premium-page-hero h1{font-size:2rem}
 .editorial-library main>section:nth-child(2){padding-block:1rem 2.5rem}
 .insights-feature{grid-template-columns:1fr;gap:0}
 .editorial-cover{grid-column:1;grid-row:auto}
 .insights-feature .feature-title,.insights-feature>div:last-child{grid-column:1;padding:1.4rem 1.4rem 0}
 .insights-feature>div:last-child{padding:0 1.4rem 1.5rem}
 .insights-feature h2{font-size:1.55rem}
 .premium-site .insights-filters{gap:.25rem 1rem;justify-content:start}
 .premium-site .insights-filters button{font-size:.86rem}
 .insights-grid{grid-template-columns:1fr;gap:2rem}
 .library-article{padding-left:2.15rem}
 .library-article h2{font-size:1.3rem;line-height:1.45}
 .premium-article .enterprise-article-head h1{font-size:2rem;line-height:1.22;max-width:25ch}
 .premium-article .enterprise-article-head .section-lead{font-size:1rem;line-height:1.9}
 .premium-site .enterprise-prose{font-size:1rem;line-height:1.9}
 .premium-site .enterprise-prose h2{font-size:1.55rem;line-height:1.4}
 .premium-site .article-toc ol{columns:1}
 .premium-site .article-toc a{font-size:.9rem;min-height:36px}
 .photo-credits{width:100%}
 .photo-credits>div{left:0;right:auto}
 .premium-site .enterprise-prose :is(th,td){padding:.8rem;font-size:.9rem}
 html[lang='ja'] .premium-home-hero h1{font-size:clamp(1.6rem,6.7vw,1.9rem);line-height:1.65}
 html[lang='ja'] .premium-article .enterprise-article-head h1{font-size:1.8rem;line-height:1.6}
 html[lang='ja'] .editorial-library .premium-page-hero h1{font-size:1.8rem}
}
@media(prefers-reduced-motion:reduce){.premium-site .editorial-cover img,.premium-site .hero-visual img{transition:none;transform:none!important}.premium-site .site-nav>a::before{transition:none}}

/* Source: assets/css/cinematic.css */
/* Shared motion timings; content is never hidden by an initialization class. */
:root{--motion-fast:200ms;--motion-hover:380ms;--motion-entrance:560ms;--motion-crossfade:650ms;--motion-slide-hold:4500ms;--motion-ease:cubic-bezier(.22,1,.36,1);--motion-image-ease:cubic-bezier(.42,0,.58,1);--motion:var(--motion-ease)}
.premium-site .hero-carousel{margin:0 20px 20px 0;background:#112b3b;box-shadow:20px 20px 0 #24424f}
.hero-stage{position:relative;aspect-ratio:3/2;overflow:hidden;isolation:isolate;touch-action:pan-y}
.hero-slide{position:absolute;inset:0;opacity:0;z-index:0;pointer-events:none;transition:opacity var(--motion-crossfade) var(--motion-image-ease)}
.hero-slide.is-current{opacity:1;z-index:1}
.hero-slide.is-prepared{z-index:2;opacity:0}
.hero-slide.is-entering{opacity:1}
.premium-site .hero-stage :is(picture,img){display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none;filter:none;border:0;background:#112b3b}
.premium-site .hero-stage img{object-fit:cover}
.premium-site .hero-stage img[src*='water-treatment']{object-fit:contain;background:#173741}
.premium-site .hero-carousel .hero-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.65rem .75rem;color:#e6f3f0!important;background:#173741;font-size:.85rem!important;line-height:1.5;margin:0;height:66px;min-height:66px;box-sizing:border-box}
.hero-control-group[hidden]{display:none!important}
.hero-scene{min-width:0}
.hero-control-group{display:flex;gap:.2rem;align-items:center}
.hero-position{font-size:.72rem;letter-spacing:.08em;margin-right:.6rem;white-space:nowrap}
.hero-controls button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #6c919a;background:transparent;color:#f2f8f4;cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast)}
.hero-controls button:is(:hover,:focus-visible){background:#315866;border-color:#b4d5d7}
.hero-controls button:focus-visible{outline:2px solid #d3eee8;outline-offset:3px}
.hero-controls button:disabled{opacity:.65;cursor:default}
.hero-controls svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.hero-controls .play-icon{display:none}
.hero-controls [aria-pressed=true] .play-icon{display:block}
.hero-controls [aria-pressed=true] .pause-icon{display:none}
.premium-site .expertise-visual{overflow:hidden;background:#e7eeeb}
.premium-site .expertise-visual img{transition:transform var(--motion-hover) var(--motion-ease),filter var(--motion-hover);transform:scale(1);transform-origin:center}
.premium-site .expertise-row:is(:hover,:focus-within) .expertise-visual img{transform:scale(1.025);filter:contrast(1.025)}
.premium-site .expertise-row{transition:border-color var(--motion-fast)}
.premium-site .expertise-row:is(:hover,:focus-within){border-color:#0c7981}
.premium-site .expertise-row h3 a{transition:color var(--motion-fast)}
.service-arrow{display:inline-block;transition:transform var(--motion-fast) var(--motion-ease)}
.expertise-row:is(:hover,:focus-within) .service-arrow{transform:translate(3px,-2px)}
.premium-site .portrait-frame{position:relative;transition:box-shadow var(--motion-hover) var(--motion-ease),transform var(--motion-hover) var(--motion-ease)}
.premium-site .portrait-pair .portrait-frame img{transform-origin:center top;transition:transform var(--motion-hover) var(--motion-ease),filter var(--motion-hover)}
.portrait-frame::after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0c263570);opacity:.3;transition:opacity var(--motion-hover);pointer-events:none}
.portrait-profile{position:absolute;z-index:1;bottom:1rem;left:1rem;right:1rem;display:flex;align-items:center;justify-content:space-between;color:#fff;background:#123443e0;border:1px solid #97b7ba;padding:.6rem .75rem;font-size:.8rem;line-height:1.5;opacity:.9;transition:opacity var(--motion-hover),background var(--motion-hover)}
.portrait-profile span{display:inline-block;transition:transform var(--motion-hover) var(--motion-ease)}
.premium-site .portrait-frame:is(:hover,:focus-visible){transform:translateY(-2px);box-shadow:0 10px 24px #12344326}
.premium-site .portrait-frame:is(:hover,:focus-visible) img{transform:scale(1.025);filter:brightness(1.035) contrast(1.02)}
.portrait-frame:is(:hover,:focus-visible)::after{opacity:1}
.portrait-frame:is(:hover,:focus-visible) .portrait-profile{opacity:1;background:#123443}
.portrait-frame:is(:hover,:focus-visible) .portrait-profile span{transform:translate(3px,-2px)}
.portrait-frame:focus-visible{outline:3px solid #0c7981;outline-offset:5px}
.premium-site .home-insight-cover img{transition:filter var(--motion-hover)}
.premium-site .home-editorial-grid article:is(:hover,:focus-within) .home-insight-cover img{filter:contrast(1.03)}
.premium-site :is(.btn-primary,.btn-ghost){transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast) var(--motion-ease)}
.premium-site .services-menu .services-panel{animation-duration:var(--motion-fast);animation-timing-function:var(--motion-ease)}
.premium-site :is(.text-link,.inline-links a,.insights-card,.library-article){transition-duration:var(--motion-fast)}
.home-editorial-grid article:first-child .home-insight-cover{margin-top:1.2rem;margin-bottom:1.2rem}
.home-insight-secondary-cover{margin:.3rem 0 1.2rem;max-width:260px;overflow:hidden}
.home-insight-secondary-cover img{display:block;width:100%;height:auto;aspect-ratio:3/2}
@media(max-width:640px){.premium-site .hero-carousel{margin:0}.hero-controls .hero-position{display:none}.premium-site .hero-carousel .hero-controls{font-size:.8rem!important;padding:.5rem;gap:.4rem}.hero-controls button{width:44px;height:44px}.portrait-profile{left:.45rem;right:.45rem;bottom:.5rem;padding:.4rem;font-size:.7rem;gap:.25rem}}
@media(prefers-reduced-motion:reduce){.premium-site *{scroll-behavior:auto!important}.hero-slide{transition:none!important}.premium-site .expertise-row:is(:hover,:focus-within) img,.premium-site .portrait-frame:is(:hover,:focus-visible),.premium-site .portrait-frame:is(:hover,:focus-visible) img,.expertise-row:is(:hover,:focus-within) .service-arrow,.portrait-frame:is(:hover,:focus-visible) .portrait-profile span{transform:none!important}}

/* Source: assets/css/polish.css */
/* Finishing pass: explicit surface themes and a shared, restrained motion vocabulary. */
:root{--on-dark-heading:#f8fafc;--on-dark-body:#d8e4ec;--on-dark-muted:#b5c9d5;--motion-diagram:1120ms;--motion-chart:800ms;--motion-link:220ms}
.premium-site [data-dark-panel]{--muted:var(--on-dark-body);--faint:var(--on-dark-muted);--line-strong:#8aa5b3;color:var(--on-dark-body)}
.premium-site [data-dark-panel] :is(h1,h2,h3,h4){color:var(--on-dark-heading)}
.premium-site [data-dark-panel] :is(p,li){color:var(--on-dark-body)}
.premium-site [data-dark-panel] :is(.eyebrow,small){color:var(--on-dark-muted)}
.premium-site [data-dark-panel] a:not(.btn-primary):not(.btn-ghost){color:#a5d8d8}
.premium-site [data-dark-panel] .btn-primary{background:#a5d8d8;border-color:#a5d8d8;color:#112b3b}
.premium-site [data-dark-panel] .btn-primary:is(:hover,:focus-visible){background:#c3e7e6;border-color:#c3e7e6;color:#112b3b}
.premium-site [data-dark-panel] .btn-ghost{background:transparent;color:var(--on-dark-heading);border-color:#8aa5b3}
.premium-site [data-dark-panel] .btn-ghost:is(:hover,:focus-visible){background:#294453;color:var(--on-dark-heading);border-color:#b5c9d5}
.premium-site [data-dark-panel] :focus-visible{outline-color:#a5d8d8}
/* Explicit, reusable CTA surface; no translucent gradients depend on the page below. */
.premium-site .article-cta[data-dark-panel]{background:#112b3b;border:1px solid #557580;border-radius:3px;box-shadow:none;padding:clamp(1.25rem,3vw,2rem)}
.premium-site .article-cta[data-dark-panel] :is(h2,h3){color:var(--on-dark-heading)}
.premium-site .article-cta[data-dark-panel] :is(p,li){color:var(--on-dark-body)}
.premium-site .article-cta[data-dark-panel] a:not(.btn-primary):not(.btn-ghost){color:#a5d8d8;text-decoration:underline;text-underline-offset:4px}
.premium-site .reading-callout{background:#e7eeeb;border-color:#9db7b7}
.premium-site .check-dot,.premium-site .project-type{background:#dcebe2;color:#244e3e}
.premium-site .hero-stage img[src*='japan-water-reclamation']{object-fit:contain;background:#173741}
.premium-site .portrait-profile{transform:translateY(0);transition:transform var(--motion-hover) var(--motion-ease),opacity var(--motion-hover),background var(--motion-hover)}
.premium-site .portrait-frame:is(:hover,:focus-visible) .portrait-profile{transform:translateY(-3px)}
.premium-site .team-editorial-card:has(a[href]){position:relative}
.premium-site .team-editorial-card .team-photo{transition:transform var(--motion-hover) var(--motion-ease),filter var(--motion-hover);transform-origin:center top}
.premium-site .team-editorial-card:is(:hover,:focus-within):has(a[href]) .team-photo{transform:scale(1.025);filter:brightness(1.035) contrast(1.02)}
.team-profile-affordance{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-top:1px solid #a4b9bc;padding-top:.65rem;margin-top:1.25rem;font-size:.82rem;color:#075e68;pointer-events:none}
.team-profile-affordance span{display:inline-block;transition:transform var(--motion-link) var(--motion-ease)}
.team-editorial-card:is(:hover,:focus-within) .team-profile-affordance span{transform:translate(3px,-2px)}
.premium-site .site-nav>a[aria-current]::before{transform:scaleX(1)}
.premium-site .site-nav>a[aria-current]::after{display:none}
@supports(transition-behavior:allow-discrete){
 .premium-site .mobile-menu{opacity:1;transform:translateY(0);transition:opacity var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease),display var(--motion-fast) allow-discrete}
 .premium-site .mobile-menu[hidden]{opacity:0;transform:translateY(-6px);pointer-events:none}
 .premium-site .menu-backdrop{opacity:1;transition:opacity var(--motion-fast),display var(--motion-fast) allow-discrete}
 .premium-site .menu-backdrop[hidden]{opacity:0;pointer-events:none}
 @starting-style{.premium-site .mobile-menu:not([hidden]){opacity:0;transform:translateY(-6px)}.premium-site .menu-backdrop:not([hidden]){opacity:0}}
}
.premium-site :is(.text-link,.inline-links a,.site-footer a){text-decoration-thickness:1px;transition:color var(--motion-link),text-decoration-color var(--motion-link)}
.premium-site :is(.text-link,.inline-links a,.site-footer a):focus-visible{text-decoration:underline}
.premium-site :is(.btn-primary,.btn-ghost):active{transform:translateY(1px)}
.premium-site .library-article{transition:background var(--motion-fast),border-color var(--motion-fast)}
.premium-site .library-article:is(:hover,:focus-within){border-color:#709a9c;background:#eff3ef}
.premium-site .contact-form :is(input,select,textarea){transition:border-color var(--motion-fast),box-shadow var(--motion-fast),background-color var(--motion-fast)}
.premium-site .contact-form :is(input,select,textarea):focus-visible{box-shadow:0 0 0 3px #08768018}
.premium-site .diagram-vector{display:block;width:100%;height:auto;max-width:700px;margin:1.25rem auto;overflow:visible}
.premium-site .diagram-detail{border-block:1px solid #9db4b8;margin:1.25rem 0;padding:.5rem 0}
.premium-site .diagram-detail summary{min-height:44px;padding:.65rem 0;cursor:pointer;color:#075e68;font-size:1rem}
/* Progress belongs to the existing shape: no invented edges, values or hidden text. */
[data-diagram-motion] [data-motion-step]{position:relative}
.diagram-progress-line{position:absolute;left:0;right:0;bottom:0;height:2px;background:#328a91;transform-origin:left;pointer-events:none}
.premium-dark .diagram-progress-line{background:#a5d8d8}
@media(prefers-reduced-motion:reduce){.premium-site .portrait-frame:is(:hover,:focus-visible) .portrait-profile,.premium-site .team-editorial-card:is(:hover,:focus-within) .team-photo,.team-editorial-card:is(:hover,:focus-within) .team-profile-affordance span,.premium-site :is(.btn-primary,.btn-ghost):active{transform:none}.premium-site :is(.team-photo,.portrait-profile,.library-article,.contact-form input,.contact-form select,.contact-form textarea){transition:none}.diagram-progress-line{display:none}}

/* Source: assets/css/scroll-motion.css */
/* Scroll owns only connector progress and node emphasis. Copy never disappears. */
[data-scroll-motion]{position:relative;--scroll-accent:#087680;--scroll-paper:#edf1ee}
[data-scroll-motion] .scroll-track{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:1}
.scroll-track path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.scroll-track .scroll-base{stroke:#92aeb2;stroke-width:1;opacity:.55}
.scroll-track .scroll-ink{stroke:var(--scroll-accent);stroke-width:2}
.scroll-track circle{fill:var(--scroll-accent);stroke:var(--scroll-paper);stroke-width:1.5;vector-effect:non-scaling-stroke}
[data-scroll-motion] .scroll-node{--scroll-level:1;position:relative;outline:1px solid rgb(8 118 128 / calc(var(--scroll-level)*.65));outline-offset:3px}
[data-scroll-motion] .scroll-node :is(.flow-step,.step-number,.flow-number,.ransom-number){color:var(--scroll-label-color,#087680)}
.premium-site .partner-architecture[data-scroll-motion]{--scroll-accent:#a5d8d8;--scroll-paper:#193b4b}
.premium-site .partner-architecture[data-scroll-motion] .scroll-node{outline-color:rgb(165 216 216 / calc(var(--scroll-level)*.8));background-color:var(--scroll-node-fill,#193b4b)}
.premium-site .partner-architecture[data-scroll-live] li::after{display:none}
.premium-site .solution-flow[data-scroll-live] li::before{display:none}
.premium-site .solution-flow[data-scroll-motion] .scroll-node{outline:0;border-color:rgb(8 118 128 / calc(.25 + var(--scroll-level)*.75));background:rgb(8 118 128 / calc(var(--scroll-level)*.055))}
.premium-site .approach-list[data-scroll-motion] li{outline:0;border-top-color:#a9b9bd;transition:none}
.premium-site .approach-list[data-scroll-live] li::after{display:none}
.premium-site .approach-list[data-scroll-motion] li>span{color:var(--scroll-label-color,#087680)}
.premium-site .ransom-journey-cover{margin:0;min-width:0;background:#112b3b;overflow:hidden}
.premium-site .home-insight-secondary-cover.ransom-journey-cover{max-width:none;margin:.4rem 0 1.2rem}
.premium-site .ransom-journey-cover svg{display:block;width:100%;height:auto;aspect-ratio:3/2;overflow:hidden}
.ransom-journey-cover [data-node-halo]{opacity:.55}
.ransom-journey-cover text{font-family:Arial,'Noto Sans JP',sans-serif}
.ransom-journey-cover .journey-label{font-size:44px;fill:#e9f3f4}
.ransom-journey-cover .backup-label{font-size:42px;fill:#c1dbdc}
.ransom-journey-cover .journey-base{fill:none;stroke:#70949e;stroke-width:2.5}
.ransom-journey-cover .journey-ink{fill:none;stroke:#83cccc;stroke-width:4;stroke-linecap:round}
.ransom-journey-cover .journey-marker{fill:#bde5e4;stroke:#112b3b;stroke-width:2}
/* Ambient markers are a separate layer: never animate text, tables, or scroll ink. */
.ambient-layer{position:absolute;pointer-events:none;transform-origin:0 0;z-index:3}
.ambient-marker{display:block;position:absolute;left:0;top:0;border-radius:50%;background:var(--ambient-accent,var(--scroll-accent,#087680));border:1px solid var(--scroll-paper,#f2f6f2);offset-anchor:50% 50%;will-change:transform,opacity}
.premium-site :is(.part-svg,.ransom-journey-cover,.research-feature-desktop)[data-ambient-motion]{--ambient-accent:#bde5e4;--scroll-paper:#112b3b}
.premium-site .site-motion-preference{font:inherit;font-size:.875rem;line-height:1.6;min-height:44px;padding:.5rem .75rem;border:1px solid #6c919a;color:#d8e4ec;background:transparent;cursor:pointer;text-align:left}
.premium-site .site-motion-preference:hover,.premium-site .site-motion-preference[aria-pressed='true']{background:#294453;border-color:#b5c9d5}
.premium-site .site-motion-preference:focus-visible{outline:2px solid #a5d8d8;outline-offset:3px}
.premium-site .site-motion-preference:disabled{cursor:default}
.site-motion-preference[hidden]{display:none!important}
.ambient-status{position:absolute;right:.9rem;top:.9rem;width:8px;height:8px;pointer-events:none}
.ambient-status>span{display:block;width:100%;height:100%;border-radius:50%;background:#087680}
@media(prefers-reduced-motion:reduce){.ambient-layer,.ambient-status{display:none!important}}
/* A single-column timeline at tablet sizes avoids a misleading folded rail. */
@media(max-width:900px){
 .premium-site .approach-list[data-scroll-motion]{grid-template-columns:1fr;gap:1.5rem}
 .premium-site .approach-list[data-scroll-motion] li{padding:0 0 1.1rem 3.5rem;display:block;border:0;border-left:1px solid #a9b9bd;min-height:130px;margin-left:1.2rem}
 .premium-site .approach-list[data-scroll-motion] li>span{position:absolute;left:-20px;top:0;width:38px;background:var(--scroll-paper);text-align:center;justify-content:center;z-index:2}
 .premium-site .approach-list[data-scroll-motion] h3{margin:0 0 .65rem}
}
@media(prefers-reduced-motion:reduce){[data-scroll-motion] .scroll-track circle,.ransom-journey-cover .journey-marker{display:none}}

/* Source: assets/css/analytics.css */
/* Scoped optional-consent UI; no changes to site typography or motion. */
.axton-consent[hidden],.axton-analytics-preferences[hidden]{display:none!important}
.axton-consent{position:fixed;bottom:1rem;right:1rem;z-index:80;width:min(42rem,calc(100% - 2rem));max-height:calc(100dvh - 7rem);overflow:auto;padding:1.25rem 1.5rem;background:#f7f8f4;color:#17313d;border:1px solid #8fa7aa;box-shadow:0 8px 25px #0b1d2726;font-family:var(--font-body,sans-serif)}
.axton-consent-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.axton-consent h2{margin:0;font-size:1.15rem;line-height:1.5;color:#17313d}
.axton-consent p{margin:.75rem 0 1rem;font-size:.9rem;line-height:1.8;color:#284754}
.axton-consent button{font:inherit;border:1px solid #587a83;background:transparent;color:#17313d;min-height:44px;padding:.65rem .85rem;cursor:pointer;border-radius:2px}
.axton-consent-heading button{min-width:44px;font-size:1.3rem;padding:.3rem}
.axton-consent-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}
.axton-consent-actions button{flex:1;font-size:.9rem}
.axton-consent-actions a{color:#075965;font-size:.85rem;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:3px}
.axton-consent button:hover{background:#e3eeeb}
.axton-consent :is(a,button):focus-visible,.axton-analytics-preferences:focus-visible{outline:2px solid #087480;outline-offset:4px}
.axton-analytics-preferences{font:inherit;font-size:.85rem;color:inherit;background:none;border:0;padding:.5rem 0;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.axton-consent{padding:1rem;bottom:.6rem;right:.6rem;width:calc(100% - 1.2rem)}.axton-consent-actions a{width:100%}.axton-consent-actions button{padding:.7rem .5rem}}

.analytics-notice>h2{font-size:1.2rem;line-height:1.5;margin-bottom:.85rem}
.analytics-notice>p+p{margin-top:1rem}

/* Source: assets/css/research.css */
/* Insights only. Licensed, self-hosted Instrument Sans / Noto Sans JP. */
/* The article target margin owns the header offset; do not add the global padding again. */
html:has(body.research-article){scroll-padding-top:0}
.research-article,.research-hub{--research-display:'Instrument Sans',Arial,sans-serif;--research-body:'Instrument Sans',Arial,sans-serif;--research-rule:#c7d5d5;--research-accent:#066d76}
html[lang=ja] :is(.research-article,.research-hub){--research-display:'Axton Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;--research-body:var(--research-display)}
:is(.research-article,.research-hub) main{font-family:var(--research-body);font-synthesis:none}
.premium-site.research-article main :is(h1,h2,h3,h4),.premium-site.research-hub main :is(h1,h2,h3){font-family:var(--research-display)!important;font-synthesis:none}
.research-article main>section{padding-block:3.75rem}
.research-article .enterprise-wrap,.research-article .research-wide{max-width:76rem;margin-inline:auto;min-width:0}
.research-article .research-head{max-width:76rem;margin-inline:auto;padding:2.5rem 0 0}
.research-article .research-head .eyebrow{font-size:.75rem;letter-spacing:.1em;margin-bottom:1.25rem}
.premium-site.research-article .research-head h1{font-size:clamp(2.2rem,4.2vw,4rem);line-height:1.09;letter-spacing:-.045em;font-weight:550!important;max-width:25ch;margin:.75rem 0 1.5rem;text-wrap:balance;overflow-wrap:break-word}
.research-article .research-head .section-lead{max-width:68ch;font-size:clamp(1.08rem,1.4vw,1.3rem);line-height:1.7;color:#35525c;margin:0 0 1.75rem}
.research-article .article-byline,.research-article .hero-meta{border:0;padding:0;font-size:.85rem;line-height:1.8;color:#48616a;margin:0 0 1.2rem;max-width:none}
.research-article .research-head-tools{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--research-rule);padding-top:1rem;margin-top:1.5rem}
.research-head-tools .article-byline{margin:0}
.research-copy{font:500 .85rem var(--research-body);padding:.6rem .85rem;border:1px solid var(--research-rule);background:transparent;color:#163746;min-height:44px;cursor:pointer}
.research-copy:hover{border-color:var(--research-accent);background:#edf4f1}
.research-copy{margin-left:auto}
.research-copy-status:empty{display:none}
.research-article:has(.menu-toggle[aria-expanded=true]) .research-progress{display:none}
.research-copy-status{font-size:.85rem;color:#3b5860}
.research-copy-fallback{width:100%;padding:.75rem;font-size:1rem;background:white;color:#163746;border:1px solid #567880}
.research-article main :is(section[id],h2[id],h3[id]){scroll-margin-top:calc(var(--research-header-height,84px) + 24px)}
.research-article .breadcrumb,.research-article .breadcrumb-nav{font-size:.8rem;line-height:1.8;display:flex;flex-wrap:wrap;gap:.5rem;max-width:76rem;margin-inline:auto}
.research-article .breadcrumb-strip{padding-top:0!important;padding-bottom:1.5rem!important}
.research-article .breadcrumb-strip .max-w-5xl{max-width:76rem}
.research-progress{position:fixed;z-index:95;top:var(--research-header-height,84px);left:0;width:100%;height:3px;pointer-events:none;background:#dce6e3}
.research-progress span{display:block;width:100%;height:100%;background:#067680;transform:scaleX(var(--reading-progress,0));transform-origin:left}
.research-progress[hidden],.research-copy[hidden],.research-copy-fallback[hidden],.research-search[hidden]{display:none!important}
.premium-site.research-article .article-layout{display:grid!important;grid-template-columns:minmax(0,47rem) minmax(0,17rem)!important;gap:5rem!important;max-width:76rem;margin-inline:auto;align-items:start;justify-content:space-between}
.research-article .research-body{grid-column:1;grid-row:1;min-width:0;max-width:47rem!important;width:100%;container-type:inline-size}
.research-article .article-content{padding:0!important}
.premium-site.research-article .research-body :is(p,ul:not([class]),ol:not([class])){font-size:1.125rem;line-height:1.85}
.premium-site.research-article .research-body :is(p,ul:not([class]),ol:not([class])):not([data-dark-panel] *){color:#304955}
.research-article .research-body p{margin-bottom:1.35rem;max-width:66ch}
.research-article .research-body :is(h2,h3){text-wrap:balance;overflow-wrap:break-word}
.premium-site.research-article .research-body h2{font-size:clamp(1.6rem,2.1vw,2.2rem);line-height:1.25;font-weight:550!important;letter-spacing:-.03em;margin:3.25rem 0 1.25rem}
.premium-site.research-article .research-body h3{font-size:1.35rem;line-height:1.45;font-weight:550!important;letter-spacing:-.015em;margin:2rem 0 1rem}
.research-article .research-body section+section{margin-top:3.5rem}
.research-article .research-body :is(ul,ol){padding-left:1.3rem}
.research-article .research-body li+li{margin-top:.5rem}
.research-article .research-body blockquote{border:0;border-left:3px solid #167f85;background:#eaf1ee;padding:1.6rem 1.9rem;margin:2.75rem 0}
.research-article .research-body blockquote p{font-size:1.35rem!important;line-height:1.7!important;margin:0;max-width:42ch}
.research-article .research-body a:not([class]),.research-article .article-references a{text-underline-offset:4px;text-decoration-thickness:1px;transition:text-decoration-color .15s,color .15s}
.research-article .research-body a:not([data-dark-panel] *):hover{text-decoration-color:#0d7981;color:#065a63}
.research-article .research-contents{grid-column:2;grid-row:1;position:sticky!important;top:calc(var(--research-header-height,84px) + 24px);border:0!important;border-left:1px solid var(--research-rule)!important;padding:0 0 0 1.35rem!important;background:transparent!important;max-height:none!important;max-width:none!important}
.research-toc-disclosure{border:0!important;background:transparent!important;padding:0!important}
.research-toc-disclosure>summary{font:600 .8rem/1.5 var(--research-body);color:#21424c;padding:.6rem 0;min-height:44px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.research-toc-disclosure>summary::after{content:'+';font-size:1.3rem;font-weight:400}
.research-toc-disclosure[open]>summary::after{content:'−'}
.research-toc-disclosure>summary::-webkit-details-marker{display:none}
.research-toc-content{max-height:calc(100dvh - var(--research-header-height,84px) - 100px);overflow:auto;overscroll-behavior:contain;padding-right:.45rem;scrollbar-width:thin}
.research-contents :is(.toc-panel,.toc){padding:0!important;border:0!important;background:transparent!important;position:static!important}
.research-contents :is(h2,.eyebrow){display:none}
.research-contents ol{padding:0!important;list-style:none!important;display:block!important;columns:1!important;counter-reset:research-section}
.research-contents li{margin:0!important;counter-increment:research-section;border-top:1px solid #dfe7e4}
.premium-site.research-article .research-contents a{display:grid;grid-template-columns:1.2rem 1fr;gap:.65rem;font-size:.875rem!important;font-weight:500;line-height:1.55;min-height:44px;padding:.75rem .2rem!important;text-decoration:none;color:#4d636a!important;border-right:2px solid transparent}
.research-contents a::before{content:counter(research-section,decimal-leading-zero);font-size:.65rem;color:#6b868b;padding-top:.12rem}
.premium-site.research-article .research-contents a.is-current{color:#045d66!important;font-weight:500;border-right:2px solid #067680;background:#edf3ef}
.research-article .research-visual{max-width:76rem;margin:2.75rem auto 0;border:1px solid #bacdce;background:#f2f6f2;overflow:hidden}
.research-visual figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:2rem;padding:1.5rem 2rem 0;background:transparent!important;color:#183946!important;font-size:1rem!important;line-height:1.6}
.research-visual figcaption strong{font-size:1.1rem;font-weight:550}
.research-visual-kicker{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#486b73}
.research-map-desktop{position:relative;padding:0 1rem}
.research-map-desktop svg{display:block;width:100%;height:auto;aspect-ratio:1120/460;overflow:hidden}
.research-map-desktop text{font:500 25px var(--research-body);fill:#193c49}
.research-map-desktop .research-wire{fill:none;stroke:#9ab1b7;stroke-width:2;vector-effect:non-scaling-stroke}
.research-map-desktop .journey-base{fill:none;stroke:#97b1b6;stroke-width:1;vector-effect:non-scaling-stroke}
.research-map-desktop .journey-ink{fill:none;stroke:#077d84;stroke-width:2;vector-effect:non-scaling-stroke}
.research-map-desktop .journey-marker{fill:#075f6a;stroke:#f2f6f2;stroke-width:2}
.research-map-desktop [data-node-halo]{fill:#b6d7d2;stroke:#497f89;stroke-width:1.5}
.research-map-desktop .research-node-core [data-node-halo]{fill:#8fc6c2;stroke:#157c83;stroke-width:2}
.research-map-desktop .is-map-focused rect{stroke:#064e5c;stroke-width:3}
.research-map-desktop .research-map-number{font-size:14px;fill:#456b75;letter-spacing:.04em}
.research-map-mobile{display:none!important}
.research-map-links{list-style:none;margin:0;padding:1rem 2rem!important;border-top:1px solid #cbdad8;display:flex;gap:.25rem 1.25rem;flex-wrap:wrap}
.research-map-links li{margin:0!important}
.research-map-links a{display:inline-flex;gap:.5rem;align-items:center;min-height:44px;font-size:.85rem;color:#086975;text-decoration:none}
.research-map-links a::after{content:'↗';transition:transform .15s}
.research-map-links a:hover::after{transform:translate(2px,-2px)}
.research-visual-note{padding:0 2rem 1.2rem;margin:0!important;font-size:.8rem!important;line-height:1.7!important;color:#4b6670!important}
.research-article .research-table{max-width:100%;min-width:0;overflow:auto;margin:2.25rem 0;border:1px solid #bbcdd0;background:#fff;scrollbar-width:thin;scrollbar-color:#527e86 #eaf0ed}
.research-table-hint{display:none;margin:0!important;padding:.75rem 1rem;background:#e8f0ed;font-size:.8rem!important;line-height:1.7!important;color:#33555d!important}
.premium-site.research-article .research-table table{display:table!important;width:100%!important;min-width:0;max-width:none!important;border-collapse:collapse!important;margin:0!important;table-layout:auto!important;background:#fff!important}
.premium-site.research-article .research-table thead{display:table-header-group!important}
.premium-site.research-article .research-table tbody{display:table-row-group!important}
.premium-site.research-article .research-table tr{display:table-row!important;border:0!important;transform:none!important}
.premium-site.research-article .research-table :is(th,td){display:table-cell!important;padding:1.05rem 1.2rem!important;font-size:1rem!important;line-height:1.65!important;min-width:0!important;width:auto!important;vertical-align:top;white-space:normal!important;border:0!important;border-bottom:1px solid #d5e0de!important;overflow-wrap:break-word}
.premium-site.research-article .research-table thead th{background:#193b48!important;color:#f4f8f5!important;font-weight:550!important;text-align:left}
.premium-site.research-article .research-table thead th *{color:#f4f8f5!important}
.premium-site.research-article .research-table tbody tr:nth-child(even)>*{background:#f3f6f2!important}
.premium-site.research-article .research-table tbody tr:is(:hover,:focus-within,.is-reading-row)>*{background:#e3f0eb!important}
.premium-site.research-article .research-table tbody tr.is-reading-row>*:first-child{box-shadow:inset 3px 0 #157c83}
.research-table .table-cell-label{display:none!important}
.research-table caption{padding:1.2rem;text-align:left;font-size:.95rem;line-height:1.6;color:#23424e;background:#edf3ef;caption-side:top}
.research-article .article-link-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:0!important}
.research-article .article-link-list li{border:1px solid var(--research-rule)!important;background:#edf2ee;padding:1.2rem!important;margin:0!important;transition:border-color .15s,transform .15s}
.research-article .article-link-list li:hover{transform:translateY(-2px);border-color:#347f87!important}
.research-article .research-body .article-link-list a{font-size:1rem;line-height:1.6;text-decoration:none}
.research-article .research-body figcaption{font-size:.9rem!important;line-height:1.7!important}
.research-article .research-body :is(.enterprise-diagram,.construction-workflow,.legacy-roadmap,.portal-diagram){border-radius:0;max-width:100%}
.research-article .research-body summary{font-size:1.05rem;line-height:1.65;min-height:48px;padding:1rem .5rem}
.research-article .research-body :is(.editorial-note,.cyber-editorial-note){padding-top:2rem!important}
.research-article .research-body :is(.editorial-note,.cyber-editorial-note) p{font-size:.95rem!important;line-height:1.85}
:is(.research-article,.research-hub) main :is(a,button,summary,input):focus-visible{outline:2px solid #077984;outline-offset:4px}
.research-hub .premium-page-hero{border-bottom:1px solid #cad8d6;padding:3.5rem 2rem 3rem}
.research-hub .premium-page-hero h1{font-size:clamp(2.1rem,4.5vw,4rem)!important;line-height:1.13;max-width:23ch;letter-spacing:-.04em;font-weight:550!important}
.research-hub .premium-page-hero .hero-lead{font-size:1.15rem;line-height:1.8;max-width:65ch}
.research-hub .insights-feature{border:1px solid #c7d5d5;background:#e9f0ec}
.research-hub .insights-feature h2{font-size:clamp(1.65rem,2.4vw,2.6rem);line-height:1.2;font-weight:550!important}
.research-hub .insights-feature .editorial-cover{border:0}
.research-hub .ransom-journey-cover text{font-family:var(--research-body)}
.research-feature-mobile,.research-feature-backup{display:none}
.research-hub .research-library-tools{display:flex;justify-content:space-between;gap:2rem;align-items:center;flex-wrap:wrap;border-top:1px solid #bfd0d0;border-bottom:1px solid #bfd0d0;padding:1.5rem 0;margin:0 0 2.5rem}
.research-hub .insights-filters{margin:0!important;gap:1rem}
.research-hub .insights-filters button{font-size:.9rem;min-height:44px;position:relative;border-bottom:2px solid transparent}
.research-hub .insights-filters button[aria-pressed=true]{border-bottom-color:#076f78}
.research-search{display:flex;gap:.75rem;align-items:center;flex:1;max-width:28rem;min-width:0}
.research-search label{font-size:.8rem;font-weight:550;color:#294f5c;white-space:nowrap}
.research-search input{width:100%;min-width:0;height:48px;padding:.75rem 1rem;border:1px solid #99b0b4;background:#fff;color:#163744;font:inherit;border-radius:0}
.research-hub .insights-grid{gap:0 3.5rem}
.research-hub .library-article{padding:2.15rem 0 2rem 2.75rem!important;border-top:1px solid #bccdd0;position:relative;transition:background .15s}
.research-hub .library-article:hover{background:#edf3ef}
.research-hub .library-article h2{font-size:1.5rem;line-height:1.35;font-weight:550!important;letter-spacing:-.025em;max-width:32ch}
.research-hub .library-article p:not([class]){font-size:1rem;line-height:1.8}
.research-hub .editorial-index{top:2.4rem;font-size:.75rem;color:#537780}
.research-hub .editorial-meta{font-size:.75rem}
.research-language{font-size:.7rem;color:#4b6971;display:block;margin:.5rem 0;letter-spacing:.02em}
.research-search-empty{border:1px solid #bdcfd0;padding:1.5rem;color:#2f505a;font-size:1rem}
html[lang=ja] .research-article .research-head h1{font-size:clamp(1.9rem,3.4vw,3.2rem);line-height:1.55;letter-spacing:0;max-width:27ch;font-weight:500!important}
.research-ja-word{white-space:nowrap}
html[lang=ja] .research-article .research-head .section-lead{font-size:1.15rem;line-height:2;max-width:42em}
html[lang=ja] .research-article .research-body :is(p,ul:not([class]),ol:not([class])){line-height:2.05;font-size:1.09rem;letter-spacing:0}
html[lang=ja] .research-article .research-body p{max-width:40em}
html[lang=ja] .research-article .research-body :is(h2,h3){letter-spacing:0;line-height:1.6;font-weight:500!important}
html[lang=ja] .research-hub .premium-page-hero h1{font-size:clamp(1.85rem,3.5vw,3.25rem)!important;line-height:1.6;letter-spacing:0;font-weight:500!important}
html[lang=ja] .research-hub .library-article h2{line-height:1.65;letter-spacing:0;font-weight:500!important}
@media(max-width:1199px){.premium-site.research-article .article-layout{grid-template-columns:minmax(0,47rem)!important;max-width:47rem;gap:2.5rem!important;justify-content:center}.research-article .research-contents{position:static!important;grid-column:1;grid-row:1;border-left:0!important;border-block:1px solid var(--research-rule)!important;padding:.5rem 0!important;width:100%}.research-article .research-body{grid-row:2}.research-toc-content{max-height:24rem}.research-contents a{min-height:44px}.research-article main>section{padding-block:2.75rem}}
@media(max-width:767px){
 .research-article main>section{padding:2.25rem 1.25rem!important}.research-article .research-head{padding-top:1.25rem}
 .premium-site.research-article .research-head h1{font-size:clamp(1.8rem,6.5vw,2.45rem);line-height:1.19;letter-spacing:-.025em;max-width:24ch}
 .research-article .research-head .section-lead{font-size:1.05rem;line-height:1.85}
 .research-article .research-head-tools{margin-top:1rem}.research-article .research-body :is(p,ul:not([class]),ol:not([class])){font-size:1.05rem!important;line-height:1.9}
 .premium-site.research-article .research-body h2{font-size:1.55rem;line-height:1.4;margin-top:2.75rem}.research-article .research-body h3{font-size:1.25rem}
 .research-article .research-body blockquote{padding:1.2rem}.research-article .research-body blockquote p{font-size:1.15rem!important}
 .research-article .research-visual{margin-top:2rem}.research-visual figcaption{padding:1.2rem;display:block}.research-visual-kicker{display:block;margin-bottom:.4rem}
 .research-map-desktop{display:none}.research-map-mobile{display:grid!important;gap:1.25rem;list-style:none;padding:1.2rem!important;margin:0!important}
 .research-map-mobile>li{margin:0!important;border:1px solid #aac6c7;position:relative;padding:1rem;background:#e8f0eb;z-index:2;min-width:0;outline:0!important}
 .research-map-mobile .map-number{font-size:.7rem;color:#3e737a;display:block;margin-bottom:.35rem}
 .research-map-mobile a{font-size:1rem;line-height:1.7;color:#163d4a;text-decoration:none;min-height:44px;display:flex;align-items:center}
 .research-map-mobile>li:not(:last-of-type)::after{content:'↓';position:absolute;bottom:-1.25rem;left:calc(50% - .5rem);font-size:1rem;color:#217d83}
 .research-map-mobile[data-scroll-live]>li::after{display:none}
 .research-map-links{display:none}.research-visual-note{padding:0 1.2rem 1.2rem;font-size:.8rem!important}
 .research-table-hint{display:block}.premium-site.research-article .research-table table{min-width:40rem!important}.premium-site.research-article .research-table :is(th,td){padding:1rem!important;font-size:.95rem!important}
 .research-article .article-link-list{grid-template-columns:1fr}.research-article .research-body .article-link-list a{font-size:.98rem}
 .research-hub .premium-page-hero{padding:2.5rem 1.25rem}.research-hub .premium-page-hero h1{font-size:2.25rem!important}.research-hub .premium-page-hero .hero-lead{font-size:1rem}
 .research-hub .research-library-tools{gap:1rem;margin-bottom:1.5rem}.research-search{flex-basis:100%;max-width:none;align-items:start;flex-direction:column;gap:.45rem}
 .research-hub .insights-grid{grid-template-columns:1fr}.research-hub .library-article{padding:1.75rem 0 1.75rem 2.25rem!important}.research-hub .library-article h2{font-size:1.35rem}.research-hub .editorial-index{top:2rem}
 html[lang=ja] .research-article .research-head h1{font-size:clamp(1.65rem,5.6vw,2rem);line-height:1.65;letter-spacing:0;max-width:none}
 html[lang=ja] .research-article .research-head .section-lead{font-size:1.05rem;line-height:2}
 html[lang=ja] .research-article .research-body :is(p,ul:not([class]),ol:not([class])){font-size:1.03rem!important;line-height:2.05}
 html[lang=ja] .research-hub .premium-page-hero h1{font-size:1.85rem!important}
}
@container(max-width:600px){.research-body :is(.legacy-layer-grid,.portal-layer-grid,.construction-review-grid){grid-template-columns:1fr!important}}
@media(max-width:599px){
 .research-feature-desktop{display:none}
 .research-feature-mobile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding:1.5rem;list-style:none;margin:0;color:#edf5f2;counter-reset:feature-stage}
 .research-feature-mobile>li{padding:1rem .4rem;min-height:64px;border:1px solid #92b6b7;display:flex;justify-content:center;align-items:center;font-size:1rem;font-weight:500;background:#193b4b;position:relative;z-index:2;outline:0!important}
 .research-feature-mobile[data-scroll-live]>li{border-color:rgb(154 210 210 / calc(.45 + var(--scroll-level)*.55))}
 .research-feature-mobile>li{counter-increment:feature-stage;gap:.5rem}
 .research-feature-mobile>li::before{content:counter(feature-stage,decimal-leading-zero);font-size:.65rem;color:#bfd6d6}
 .research-feature-mobile{--scroll-accent:#a5d8d8;--scroll-paper:#112b3b}
 .research-feature-backup{display:block;color:#cadfdf!important;font-size:.9rem!important;line-height:1.8;margin:0;padding:0 1.5rem 1.5rem}
}
.research-map-mobile[data-map-branches]>li::after{display:none!important}
.research-map-mobile[data-map-branches]>.scroll-track{display:none}
.research-map-mobile .map-next{font-size:.85rem!important;line-height:1.8!important;margin:.5rem 0 0!important;color:#42666d!important}
.research-map-mobile[data-scroll-live]>li{border-color:rgb(8 118 128 / calc(.25 + var(--scroll-level)*.6));background:rgb(224 239 230 / calc(.45 + var(--scroll-level)*.35))}
.research-map-mobile .map-number{color:var(--scroll-label-color,#3e737a)}
.research-search[hidden]{display:none!important}
.research-article .research-head .breadcrumb-strip{padding:0;background:transparent;border:0;margin-bottom:2rem}
/* Environmental articles: copy and contextual media occupy separate grid cells. */
.premium-site.research-article .environment-article-hero{background:#edf1ee;padding-block:3rem;border-bottom:1px solid #c7d5d5}
.environment-article-hero .research-head{padding-top:0}
/* The remaining legacy article heroes also inherit the editorial scale, not
   the old site's oversized !important hero heading and paragraph utilities. */
.premium-site.research-article main>.hero-bg h1{font-size:clamp(2.2rem,4.2vw,4rem)!important;line-height:1.09!important;text-shadow:none}
.premium-site.research-article main>.hero-bg .eyebrow{font-size:.75rem!important;line-height:1.6!important;letter-spacing:.1em;color:#066d76!important}
.environment-article-hero .environment-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:3.5rem;align-items:start}
.environment-hero-copy{min-width:0}
.premium-site.research-article .environment-article-hero h1{font-size:clamp(2rem,3.15vw,3rem);line-height:1.17;max-width:none;text-shadow:none;letter-spacing:-.035em}
.environment-article-hero .research-head .eyebrow{color:#066d76;font-size:.75rem;line-height:1.6;letter-spacing:.1em}
.environment-article-hero .environment-hero-media{margin:0;min-width:0;border:1px solid #bacdce;background:#f7f8f4;overflow:hidden}
.environment-hero-media img{display:block;position:static;width:100%;height:auto;aspect-ratio:2/1;object-fit:contain;opacity:1}
.premium-site .environment-hero-media figcaption{padding:1.1rem 1.25rem;color:#3c5660!important;font-size:.85rem;line-height:1.8;border-top:1px solid #bacdce}
.environment-hero-media a{color:#06616b;text-decoration:underline;text-underline-offset:3px}
.environment-article-hero .hero-meta span,.environment-article-hero .hero-meta{color:#48616a}
.environment-article-hero .hero-meta span+span::before{content:'·';width:auto;height:auto;background:none;margin:0 .75rem 0 0}
.environment-article-hero .quick-answer{max-width:47rem;margin:2.5rem 0 0;box-shadow:none;border-radius:0;background:#e7eeeb}
.premium-site.research-article .research-body .article-cta h2{margin:0 0 1rem;padding:0;border:0;font-size:clamp(1.5rem,2.1vw,1.9rem);line-height:1.35}
.research-article .research-body .article-cta p{margin:0 0 1.5rem}
.research-article .research-body .article-cta .btn-primary{margin:0;white-space:normal;text-align:center}
.premium-site.research-article .research-table :is(th+th,td+td){border-left:1px solid #d5e0de!important}
@media(max-width:1199px){.environment-article-hero .environment-hero-grid{grid-template-columns:1fr;gap:2rem}.environment-hero-copy{max-width:47rem}.environment-article-hero .environment-hero-media{max-width:47rem}.premium-site.research-article .environment-article-hero h1{font-size:clamp(2rem,4vw,3rem)}}
@media(max-width:767px){.premium-site.research-article .environment-article-hero h1{font-size:clamp(1.8rem,6.5vw,2.45rem);line-height:1.22;letter-spacing:-.025em}.environment-hero-media figcaption{padding:1rem}.environment-article-hero .research-head-tools{gap:.75rem}.environment-article-hero .hero-meta span+span::before{display:none}.environment-article-hero .hero-meta span{display:block}.research-article .research-body .article-cta .btn-primary{width:100%}}
@media(max-width:767px){.premium-site.research-article main>.hero-bg h1{font-size:clamp(1.8rem,6.5vw,2.45rem)!important;line-height:1.19!important;max-width:24ch}}
@media(prefers-reduced-motion:reduce){:is(.research-article,.research-hub) main *{animation:none!important;transition:none!important}.research-progress span{transition:none}.research-map-desktop .journey-marker{display:none}.research-article .article-link-list li:hover{transform:none}}

/* Source: assets/css/ux-refinement.css */
/* Shared audit refinements. Icons are static, locally hosted Lucide symbols. */
.premium-site .axton-icon{display:inline-block;flex:none;width:20px;height:20px;max-width:none;overflow:visible;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.2em;pointer-events:none}
.premium-site .icon-heading{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:.65rem;min-width:0}
.premium-site .icon-heading>.axton-icon{width:24px;height:24px;margin-top:.13em;color:var(--teal)}
.premium-site .icon-heading-label{min-width:0}
.premium-site :is(.premium-dark,[data-dark-panel]) .icon-heading>.axton-icon{color:#a5d8d8}
.premium-site .icon-contact{display:inline-flex;align-items:center;gap:.65rem;max-width:100%;overflow-wrap:anywhere}
.premium-site :is(.btn-primary,.btn-ghost)>.axton-icon{transition:transform 180ms var(--motion-ease)}
.premium-site :is(.btn-primary,.btn-ghost):is(:hover,:focus-visible)>.axton-icon{transform:translateY(-1px)}
/* Links embedded in prose must have a non-color affordance in every template. */
.premium-site main :is(p,li,td) a:not(.btn-primary):not(.btn-ghost):not(.text-link):not(.icon-contact){text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.premium-site .part-jumps a>span{color:#4b626b;font-size:.8rem}
.premium-site .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* The retained personal resume has a different footer contract. Theme it explicitly. */
.premium-site footer:has(.footer-inner){background:#112b3b!important;color:#d8e4ec}
.premium-site .footer-inner p{color:#d8e4ec!important}
.premium-site .footer-inner a{color:#a5d8d8!important;text-decoration:underline}
/* The full desktop relationship graphic stays visible. The mobile equivalent is
   optional native disclosure rather than a long mandatory preamble. */
.research-map-disclosure{display:none}
.research-map-disclosure>summary{font-size:1rem;line-height:1.7;min-height:48px;padding:1rem 1.2rem;color:#075e68;cursor:pointer;border-top:1px solid #bacdce}
.research-map-disclosure>summary:hover{background:#e3efea}
.research-map-disclosure>summary:focus-visible{outline-offset:-4px}
.research-map-disclosure[open]>summary{border-bottom:1px solid #bacdce}
.research-map-disclosure .research-map-mobile{margin:0!important}
.research-visual figcaption>.icon-heading{font-size:inherit;margin:0}
.research-article .research-table:focus-visible{outline:3px solid #087680;outline-offset:4px}
.research-article .research-table{overscroll-behavior-inline:contain}
.research-table-hint{border-bottom:1px solid #bacdce}
.premium-site.research-article .research-table tbody tr:last-child>*{border-bottom:0!important}
.premium-site .stp-planning-media img{aspect-ratio:4/3;background:#fff}
.premium-site .stp-planning-media{max-width:38rem}
@media(max-width:767px){
 .research-map-disclosure{display:block}
 .premium-site.research-article .research-table table[data-table-columns='2']{min-width:30rem!important}
 .premium-site .icon-heading{gap:.55rem}
 .premium-site.research-article .research-visual figcaption>.icon-heading{margin-top:.5rem}
}
@media(prefers-reduced-motion:reduce){.premium-site :is(.btn-primary,.btn-ghost)>.axton-icon{transition:none;transform:none!important}}

/* Source: assets/css/journeys.css */
/* Decision paths reuse the established palette and native navigation/disclosure controls. */
.journey-start,.journey-brief,.journey-reading-section{padding:2rem 0;background:#f3f5f0;border-bottom:1px solid #c4d3cf}
.journey-start h2,.journey-reading-section h2,.journey-brief h2,.journey-library-title{font-size:clamp(1.2rem,2vw,1.65rem)!important;line-height:1.45!important;letter-spacing:-.015em!important;margin:0 0 1rem!important;color:#163744}
.journey-routes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.journey-route{display:grid;grid-template-columns:24px minmax(0,1fr) 12px;gap:.7rem;padding:1.2rem 1rem;background:#fff;border:1px solid #acbfbe;color:#163744;text-decoration:none;align-items:start;min-width:0;transition:border-color 180ms ease,background-color 180ms ease}
.journey-route>.axton-icon{width:24px!important;height:24px!important;color:#076c75;margin-top:.15rem}
.journey-route strong{display:block;font-size:1rem;line-height:1.6;font-weight:600}
.journey-route strong+span{display:block;font-size:.85rem;line-height:1.6;color:#385963;margin-top:.35rem}
.journey-route:hover{border-color:#087680;background:#eaf2ed}
.journey-secondary{font-size:.9rem!important;line-height:1.8!important;color:#385963;margin:1rem 0 0!important}
.journey-secondary a,.journey-brief-heading>a,.journey-reading a{color:#075e68;text-decoration:underline;text-underline-offset:.2em}
.journey-secondary a{display:inline-flex;align-items:center;min-height:44px}
.journey-brief{background:#fff}
.journey-brief-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.2rem}
.journey-brief-heading h2{margin:0!important}
.journey-brief-heading>a{font-size:.9rem;display:inline-flex;align-items:center;min-height:44px}
.journey-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;gap:1.5rem}
.journey-summary>div{border-left:2px solid #087680;padding-left:1rem;min-width:0}
.journey-summary dt{font-size:.85rem;font-weight:650;color:#075e68;margin-bottom:.5rem}
.journey-summary dd{margin:0;font-size:1rem;line-height:1.8;color:#294f5c}
.journey-scope{font-size:.9rem!important;line-height:1.8!important;color:#385963;max-width:72rem;margin:1.25rem 0 .75rem!important}
.journey-jumps{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
.journey-jumps a{display:inline-flex;align-items:center;gap:.3rem;min-height:44px;color:#075e68;font-size:.95rem;text-decoration:underline;text-underline-offset:.25em}
.journey-brief .enterprise-actions{margin-top:1rem}
.journey-reading-section>div>p{color:#385963;line-height:1.8;max-width:55rem;margin:0 0 1rem}
.research-hub .journey-reading-section{padding:1.5rem;margin:0 0 2rem;border:1px solid #c4d3cf}
.journey-reading-section[hidden],.journey-reading[hidden]{display:none!important}
.journey-reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}
.journey-reading{background:#fff;border:1px solid #acbfbe;min-width:0}
.journey-reading>summary{cursor:pointer;min-height:64px;list-style:none;display:grid;grid-template-columns:24px minmax(0,1fr) 18px;gap:.8rem;padding:1rem;font-size:1.05rem;line-height:1.65;color:#163744;font-weight:550}
.journey-reading>summary::-webkit-details-marker{display:none}
.journey-reading>summary::after{content:'+';font-size:1.3rem;color:#075e68}
.journey-reading[open]>summary::after{content:'−'}
.journey-reading>summary>.axton-icon{width:24px!important;height:24px!important;color:#076c75;margin-top:.15rem}
.journey-reading>summary:hover{background:#eaf2ed}
.journey-reading>div{padding:0 1rem 1rem;border-top:1px solid #c4d3cf}
.journey-reading ol{padding-left:1.6rem;margin:.6rem 0}
.journey-reading li::marker{color:#075e68;font-size:.9rem}
.journey-reading a{display:inline-flex;align-items:center;min-height:44px;line-height:1.7;font-size:1rem}
.journey-reading-service{margin-left:.2rem;font-weight:550}
.journey-reading-note{font-size:.9rem!important;line-height:1.8!important;color:#385963;margin-top:1rem}
.journey-search-clear{flex:none;border:1px solid #99b0b4;background:#fff;color:#075e68;font:inherit;font-size:.85rem;min-height:48px;padding:.5rem .7rem;cursor:pointer}
.journey-search-clear[hidden]{display:none!important}
.research-hub .research-search{max-width:36rem}
.research-hub #article-library{padding-top:2rem}
.research-hub .editorial-index{color:#385963}
.journey-feature-visual{min-width:0;margin:0}
.journey-feature-visual>summary{cursor:pointer;color:#075e68;background:#eef3ef;border:1px solid #acbfbe;padding:1rem;min-height:48px;font-size:1rem;line-height:1.6}
.journey-feature-visual figure{margin:0!important}
.journey-feature-visual[open]>summary{border-bottom:0}
.journey-start,.journey-brief,.journey-reading-section,#article-library{scroll-margin-top:105px}
.journey-route:focus-visible,.journey-jumps a:focus-visible,.journey-reading summary:focus-visible,.journey-reading a:focus-visible,.journey-search-clear:focus-visible,.journey-feature-visual>summary:focus-visible{outline:3px solid #087680;outline-offset:3px}
@media(min-width:768px){.journey-feature-visual>summary{display:none}}
@media(max-width:1023px){.journey-routes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
 .journey-start,.journey-brief,.journey-reading-section{padding:1.5rem 0}
 .journey-routes{gap:.65rem}.journey-route{grid-template-columns:minmax(0,1fr) 12px;padding:1rem .8rem;gap:.3rem}.journey-route>.axton-icon{grid-column:1}.journey-route>span:nth-child(2){grid-column:1;grid-row:2}.journey-route>span:last-child{grid-column:2;grid-row:1}.journey-route strong{font-size:.95rem}.journey-route strong+span{font-size:.8rem}
 .journey-summary{grid-template-columns:1fr;gap:1rem}.journey-summary>div{padding-left:.85rem}.journey-summary dt{margin-bottom:.15rem}.journey-summary dd{font-size:.95rem;line-height:1.75}
 .journey-reading-grid{grid-template-columns:1fr;gap:.65rem}.journey-reading>summary{font-size:1rem;padding:.85rem;min-height:64px}
 .research-hub .journey-reading-section{padding:1rem}
 .research-hub .research-search{flex-direction:row;flex-wrap:wrap;gap:.5rem}.research-hub .research-search label{flex-basis:100%}.research-hub .research-search input{flex:1;min-width:0;width:0}.journey-search-clear{font-size:.8rem}
}
@media(prefers-reduced-motion:reduce){.journey-route{transition:none}}
@media(max-width:359px){
 .journey-routes{grid-template-columns:1fr}
 .journey-route{grid-template-columns:24px minmax(0,1fr) 12px;gap:.7rem}
 .journey-route>span:nth-child(2){grid-column:2;grid-row:1}
 .journey-route>span:last-child{grid-column:3;grid-row:1}
}

/* Source: assets/css/visual-refinement.css */
/* Visual cues share the site's existing symbols; content remains readable without motion. */
.journey-route{grid-template-columns:48px minmax(0,1fr) 12px;align-items:start;transition:background-color 220ms ease,border-color 220ms ease,box-shadow 220ms ease}
.visual-cue{display:grid;place-items:center;width:48px;height:48px;flex:none;background:#e7f0ec;border:1px solid #bfd5d0;border-radius:12px;color:#076c75;transform-origin:center}
.visual-cue .axton-icon{width:26px!important;height:26px!important}
.journey-route:hover,.journey-route:focus-visible{box-shadow:0 5px 18px rgb(22 55 68 / 7%)}
.journey-route:hover .visual-cue,.journey-route:focus-visible .visual-cue{background:#d7e9e3;border-color:#7eaaa6}
.journey-reading>summary{grid-template-columns:48px minmax(0,1fr) 18px;align-items:center;transition:background-color 220ms ease}
.journey-summary dt{display:flex;align-items:center;gap:.65rem;font-size:.95rem}
.journey-summary dt>.axton-icon{width:24px!important;height:24px!important;flex:none}
.journey-summary>div{padding-top:.35rem;padding-bottom:.35rem}
.article-topic-visual{display:flex;align-items:center;justify-content:center;gap:clamp(1rem,4vw,2.5rem);height:108px;margin:1rem 0 1.25rem;background:linear-gradient(120deg,#e5efea,#f4f6f0);border:1px solid #c2d4cf;border-radius:3px;position:relative;isolation:isolate;overflow:hidden}
.article-topic-visual::before{content:'';position:absolute;left:calc(50% - 100px);right:calc(50% - 100px);top:50%;height:1px;background:#88aaa6;z-index:-1}
.topic-node{display:grid;place-items:center;width:50px;height:50px;background:#fff;border:1px solid #a3c3bd;border-radius:12px;color:#076c75;flex:none;transition:background-color 220ms ease,border-color 220ms ease}
.topic-node .axton-icon{width:27px!important;height:27px!important}
.topic-node:nth-child(2){background:#d6e8e3;border-color:#7da8a2}
.library-article:hover .topic-node,.library-article:focus-within .topic-node{border-color:#087680}
.research-hub .library-article[data-category=cybersecurity] .article-topic-visual{background:linear-gradient(120deg,#e2ebed,#f2f5f3)}
.research-hub .library-article[data-category=engineering] .article-topic-visual{background:linear-gradient(120deg,#e2efe7,#f3f5eb)}
.visual-motion-ready.visual-cue .axton-icon{animation:visual-cue-float 1.6s ease-in-out 3;animation-play-state:paused}
.visual-motion-ready .topic-node{animation:visual-cue-float 1.6s ease-in-out 3;animation-play-state:paused}
.visual-motion-ready .topic-node:nth-child(2){animation-delay:120ms}
.visual-motion-ready .topic-node:nth-child(3){animation-delay:240ms}
.visual-motion-running.visual-cue .axton-icon,.visual-motion-running .topic-node{animation-play-state:running}
@keyframes visual-cue-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media(max-width:767px){
 .journey-route{grid-template-columns:minmax(0,1fr) 12px;gap:.65rem}
 .journey-route>.visual-cue{grid-column:1;grid-row:1}
 .journey-route>span:nth-child(2){grid-column:1;grid-row:2}
 .journey-route>span:last-child{grid-column:2;grid-row:1}
 .journey-reading>summary{grid-template-columns:40px minmax(0,1fr) 18px;gap:.65rem}
 .journey-reading .visual-cue{width:40px;height:40px;border-radius:10px}
 .article-topic-visual{height:88px;margin:.85rem 0 1rem;gap:1.5rem}
 .topic-node{width:44px;height:44px;border-radius:10px}
}
@media(max-width:359px){
 .journey-route{grid-template-columns:40px minmax(0,1fr) 12px;gap:.65rem}
 .journey-route>.visual-cue{width:40px;height:40px}
 .journey-route>span:nth-child(2){grid-column:2;grid-row:1}
 .journey-route>span:last-child{grid-column:3;grid-row:1}
}
@media(prefers-reduced-motion:reduce){
 .visual-motion-ready.visual-cue .axton-icon,.visual-motion-ready .topic-node{animation:none!important}
 .journey-route,.journey-reading>summary,.topic-node{transition:none}
}

/* Source: assets/css/motion-finish.css */
/* Accent color supports the existing labels; no meaning depends on color alone. */
:root{--motion-entrance:640ms}
.journey-route:nth-child(1),.journey-reading:nth-child(1){--cue-ink:#365fbc;--cue-paper:#e9eefb;--cue-border:#b9c9ec}
.journey-route:nth-child(2),.journey-reading:nth-child(2){--cue-ink:#087680;--cue-paper:#e6f3f2;--cue-border:#a9d0cb}
.journey-route:nth-child(3),.journey-reading:nth-child(3){--cue-ink:#986013;--cue-paper:#faf0dd;--cue-border:#d9c49b}
.journey-route:nth-child(4),.journey-reading:nth-child(4){--cue-ink:#247354;--cue-paper:#e9f3e9;--cue-border:#b3d0bb}
.journey-route .visual-cue,.journey-reading .visual-cue{color:var(--cue-ink,#087680);background:var(--cue-paper,#e7f0ec);border-color:var(--cue-border,#bfd5d0);transition:background 240ms ease,border-color 240ms ease}
.journey-route:hover .visual-cue,.journey-route:focus-visible .visual-cue{background:var(--cue-paper,#e7f0ec);border-color:var(--cue-ink,#087680)}
.article-topic-visual .topic-node:nth-child(1){color:#365fbc;border-color:#b9c9ec;background:#eef2fb}
.article-topic-visual .topic-node:nth-child(2){color:#087680;border-color:#95c4bc;background:#dceee8}
.article-topic-visual .topic-node:nth-child(3){color:#986013;border-color:#d9c49b;background:#faf3e5}
[data-motion-step] :is(.flow-step,.cyber-step-number,.step-number){color:var(--motion-step-accent,#087680)!important}
.diagram-progress-line{transition:opacity 240ms ease}
[data-diagram-state=complete] .diagram-progress-line{transform:scaleX(1);opacity:.8}
.ambient-marker{box-shadow:0 0 7px rgb(101 212 198 / 35%)}
.scroll-track .scroll-ink{filter:none}
/* Native same-origin page fades: links, forms, URL/history and focus keep native behavior. */
@view-transition{navigation:auto}
.site-header{view-transition-name:axton-header}
::view-transition-group(root){animation-duration:380ms}
::view-transition-old(root){animation:none}
::view-transition-new(root){animation:axton-page-fade 380ms cubic-bezier(.22,1,.36,1) both;mix-blend-mode:normal}
::view-transition-old(axton-header),::view-transition-new(axton-header){animation:none}
@keyframes axton-page-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){
 @view-transition{navigation:none}
 ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
 .journey-route .visual-cue,.journey-reading .visual-cue,.diagram-progress-line{transition:none}
 .ambient-marker{box-shadow:none}
}

